Redux Framework - Version 4.3.12

Version Description

Updated: Vendor libraries. Updated: Extendify Library. Fixed: jQuery deprecation notices. Fixed: Filesystem class error. Fixed: Customizer not saving data for sections not shown in the customizer. Fixed: Fix deprecation errors in customizer. Fixed: Fix core deprecation notices in metaboxes. Release date: March 08, 2022

Download this release

Release Info

Developer dovyp
Plugin Icon 128x128 Redux Framework
Version 4.3.12
Comparing to
See all releases

Code changes from version 4.3.11 to 4.3.12

Files changed (83) hide show
  1. extendify-sdk/app/Admin.php +1 -0
  2. extendify-sdk/app/App.php +1 -1
  3. extendify-sdk/app/Controllers/UserController.php +11 -0
  4. extendify-sdk/loader.php +5 -2
  5. extendify-sdk/public/build/extendify.css +1 -1
  6. extendify-sdk/public/build/extendify.js +1 -1
  7. extendify-sdk/readme.txt +18 -3
  8. extendify-sdk/routes/api.php +1 -0
  9. extendify-sdk/src/ExtendifyLibrary.js +25 -18
  10. extendify-sdk/src/api/General.js +5 -1
  11. extendify-sdk/src/api/Templates.js +12 -5
  12. extendify-sdk/src/api/User.js +15 -2
  13. extendify-sdk/src/api/axios.js +4 -3
  14. extendify-sdk/src/app.css +8 -8
  15. extendify-sdk/src/app.js +7 -7
  16. extendify-sdk/src/blocks/block-category.js +14 -0
  17. extendify-sdk/src/blocks/blocks.js +1 -0
  18. extendify-sdk/src/blocks/library/block.js +105 -3
  19. extendify-sdk/src/blocks/library/block.json +4 -2
  20. extendify-sdk/src/buttons.js +8 -8
  21. extendify-sdk/src/components/DevHelpers.js +17 -12
  22. extendify-sdk/src/components/ImportCounter.js +28 -20
  23. extendify-sdk/src/components/ImportTemplateBlock.js +18 -14
  24. extendify-sdk/src/components/LibraryAccessModal.js +8 -9
  25. extendify-sdk/src/components/MainButtons.js +44 -23
  26. extendify-sdk/src/components/SidebarNotice.js +90 -0
  27. extendify-sdk/src/components/SiteTypeSelector.js +18 -18
  28. extendify-sdk/src/components/TaxonomySection.js +7 -7
  29. extendify-sdk/src/components/TypeSelect.js +4 -4
  30. extendify-sdk/src/components/modals/InstallStandaloneModal.js +12 -12
  31. extendify-sdk/src/components/modals/Modal.js +9 -9
  32. extendify-sdk/src/components/modals/NoImportModal.js +20 -11
  33. extendify-sdk/src/components/modals/ProModal.js +15 -6
  34. extendify-sdk/src/components/modals/SplitModal.js +7 -7
  35. extendify-sdk/src/components/modals/settings/DevSettings.js +88 -0
  36. extendify-sdk/src/components/{LoginInterface.js → modals/settings/LoginInterface.js} +51 -29
  37. extendify-sdk/src/components/modals/{SettingsModal.js → settings/SettingsModal.js} +7 -5
  38. extendify-sdk/src/components/notices/FeedbackNotice.js +13 -4
  39. extendify-sdk/src/components/notices/FooterNotice.js +13 -11
  40. extendify-sdk/src/components/notices/InstallStandaloneNotice.js +7 -7
  41. extendify-sdk/src/components/notices/PromotionNotice.js +12 -3
  42. extendify-sdk/src/components/notices/WelcomeNotice.js +15 -7
  43. extendify-sdk/src/components/popovers/NewImportsPopover.js +2 -2
  44. extendify-sdk/src/hooks/helpers.js +7 -3
  45. extendify-sdk/src/hooks/useModal.js +4 -4
  46. extendify-sdk/src/hooks/useTaxonomies.js +0 -27
  47. extendify-sdk/src/hooks/useTestGroup.js +22 -0
  48. extendify-sdk/src/listeners/index.js +2 -1
  49. extendify-sdk/src/listeners/softerror-encountered.js +2 -2
  50. extendify-sdk/src/listeners/template-inserted.js +2 -2
  51. extendify-sdk/src/middleware/NeedsPermissionModal.js +4 -4
  52. extendify-sdk/src/middleware/ReloadRequiredModal.js +2 -2
  53. extendify-sdk/src/middleware/hasPluginsActivated/ActivatePluginsModal.js +6 -6
  54. extendify-sdk/src/middleware/hasPluginsActivated/ActivatingModal.js +4 -4
  55. extendify-sdk/src/middleware/hasPluginsActivated/ErrorActivating.js +1 -1
  56. extendify-sdk/src/middleware/hasPluginsActivated/index.js +1 -1
  57. extendify-sdk/src/middleware/hasRequiredPlugins/ErrorInstalling.js +1 -1
  58. extendify-sdk/src/middleware/hasRequiredPlugins/InstallingModal.js +4 -4
  59. extendify-sdk/src/middleware/hasRequiredPlugins/RequiredPluginsModal.js +6 -6
  60. extendify-sdk/src/middleware/hasRequiredPlugins/index.js +1 -1
  61. extendify-sdk/src/middleware/helpers.js +8 -8
  62. extendify-sdk/src/middleware/index.js +1 -1
  63. extendify-sdk/src/pages/GridView.js +67 -23
  64. extendify-sdk/src/pages/MainWindow.js +20 -8
  65. extendify-sdk/src/pages/Sidebar.js +42 -17
  66. extendify-sdk/src/pages/layout/HasSidebar.js +8 -5
  67. extendify-sdk/src/pages/layout/Layout.js +17 -15
  68. extendify-sdk/src/pages/layout/Toolbar.js +10 -10
  69. extendify-sdk/src/state/GlobalState.js +32 -29
  70. extendify-sdk/src/state/SiteSettings.js +1 -1
  71. extendify-sdk/src/state/Taxonomies.js +13 -1
  72. extendify-sdk/src/state/Templates.js +114 -105
  73. extendify-sdk/src/state/User.js +51 -2
  74. extendify-sdk/src/util/general.js +2 -1
  75. extendify-sdk/src/utility-control/index.js +2 -3
  76. readme.txt +45 -35
  77. redux-core/assets/css/redux-fields.min.css +1 -1
  78. redux-core/assets/css/redux-fields.min.css.map +1 -1
  79. redux-core/assets/js/redux-vendors.js +685 -268
  80. redux-core/assets/js/redux-vendors.min.js +1 -1
  81. redux-core/assets/js/vendor/jquery.alphanum.js +268 -267
  82. redux-core/assets/js/vendor/jquery.typewatch.js +1 -1
  83. redux-core/assets/js/vendor/qtip/qtip.js +2 -2
extendify-sdk/app/Admin.php CHANGED
@@ -129,6 +129,7 @@ class Admin
129
  'sdk_partner' => \esc_attr(APP::$sdkPartner),
130
  'asset_path' => \esc_url(EXTENDIFY_URL . 'public/assets'),
131
  'standalone' => \esc_attr(APP::$standalone),
 
132
  ]
133
  );
134
  \wp_enqueue_script(App::$slug . '-scripts');
129
  'sdk_partner' => \esc_attr(APP::$sdkPartner),
130
  'asset_path' => \esc_url(EXTENDIFY_URL . 'public/assets'),
131
  'standalone' => \esc_attr(APP::$standalone),
132
+ 'devbuild' => \esc_attr(APP::$environment === 'DEVELOPMENT'),
133
  ]
134
  );
135
  \wp_enqueue_script(App::$slug . '-scripts');
extendify-sdk/app/App.php CHANGED
@@ -83,7 +83,7 @@ class App
83
  */
84
  public function __construct()
85
  {
86
- if (isset($GLOBALS['extendify_sdk_partner'])) {
87
  self::$sdkPartner = $GLOBALS['extendify_sdk_partner'];
88
  }
89
 
83
  */
84
  public function __construct()
85
  {
86
+ if (isset($GLOBALS['extendify_sdk_partner']) && $GLOBALS['extendify_sdk_partner']) {
87
  self::$sdkPartner = $GLOBALS['extendify_sdk_partner'];
88
  }
89
 
extendify-sdk/app/Controllers/UserController.php CHANGED
@@ -55,6 +55,17 @@ class UserController
55
  return new \WP_REST_Response(User::state());
56
  }
57
 
 
 
 
 
 
 
 
 
 
 
 
58
  /**
59
  * Sign up the user to the mailing list.
60
  *
55
  return new \WP_REST_Response(User::state());
56
  }
57
 
58
+ /**
59
+ * Delete the data
60
+ *
61
+ * @return array
62
+ */
63
+ public static function delete()
64
+ {
65
+ \delete_user_meta(\get_current_user_id(), 'extendifysdk_user_data');
66
+ return new \WP_REST_Response(User::state());
67
+ }
68
+
69
  /**
70
  * Sign up the user to the mailing list.
71
  *
extendify-sdk/loader.php CHANGED
@@ -21,7 +21,10 @@ if (!function_exists('extendifyCheckPluginInstalled')) {
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
  }
@@ -37,7 +40,7 @@ if ($extendifyPluginName) {
37
  // Remember, this file is only loaded by partner plugins.
38
  if (is_plugin_active($extendifyPluginName)) {
39
  // If the SDK is active then ignore the partner plugins.
40
- $GLOBALS['extendify_sdk_partner'] = '';
41
  return false;
42
  }
43
  }
21
  include_once ABSPATH . 'wp-admin/includes/plugin.php';
22
  }
23
 
24
+ $plugins = get_plugins();
25
+ // Don't cache plugins this early.
26
+ wp_cache_delete('plugins', 'plugins');
27
+ foreach ($plugins as $plugin => $data) {
28
  if ($data['TextDomain'] === $name) {
29
  return $plugin;
30
  }
40
  // Remember, this file is only loaded by partner plugins.
41
  if (is_plugin_active($extendifyPluginName)) {
42
  // If the SDK is active then ignore the partner plugins.
43
+ $GLOBALS['extendify_sdk_partner'] = 'standalone';
44
  return false;
45
  }
46
  }
extendify-sdk/public/build/extendify.css CHANGED
@@ -1 +1 @@
1
- div.extendify .sr-only{clip:rect(0,0,0,0)!important;border-width:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}div.extendify .focus\:not-sr-only:focus{clip:auto!important;height:auto!important;margin:0!important;overflow:visible!important;padding:0!important;position:static!important;white-space:normal!important;width:auto!important}div.extendify .pointer-events-none{pointer-events:none!important}div.extendify .invisible{visibility:hidden!important}div.extendify .group:focus .group-focus\:visible,div.extendify .group:hover .group-hover\:visible{visibility:visible!important}div.extendify .static{position:static!important}div.extendify .fixed{position:fixed!important}div.extendify .absolute{position:absolute!important}div.extendify .relative{position:relative!important}div.extendify .inset-0{bottom:0!important;left:0!important;right:0!important;top:0!important}div.extendify .top-0{top:0!important}div.extendify .top-2{top:.5rem!important}div.extendify .top-4{top:1rem!important}div.extendify .right-0{right:0!important}div.extendify .right-1{right:.25rem!important}div.extendify .right-2{right:.5rem!important}div.extendify .right-4{right:1rem!important}div.extendify .right-2\.5{right:.625rem!important}div.extendify .bottom-0{bottom:0!important}div.extendify .left-0{left:0!important}div.extendify .group:hover .group-hover\:-top-2{top:-.5rem!important}div.extendify .group:hover .group-hover\:-top-2\.5{top:-.625rem!important}div.extendify .group:focus .group-focus\:-top-2{top:-.5rem!important}div.extendify .group:focus .group-focus\:-top-2\.5{top:-.625rem!important}div.extendify .z-10{z-index:10!important}div.extendify .z-20{z-index:20!important}div.extendify .z-30{z-index:30!important}div.extendify .z-40{z-index:40!important}div.extendify .z-50{z-index:50!important}div.extendify .z-high{z-index:99999!important}div.extendify .m-0{margin:0!important}div.extendify .m-8{margin:2rem!important}div.extendify .m-auto{margin:auto!important}div.extendify .mx-6{margin-left:1.5rem!important;margin-right:1.5rem!important}div.extendify .mx-auto{margin-left:auto!important;margin-right:auto!important}div.extendify .my-0{margin-bottom:0!important;margin-top:0!important}div.extendify .my-2{margin-bottom:.5rem!important;margin-top:.5rem!important}div.extendify .my-20{margin-bottom:5rem!important;margin-top:5rem!important}div.extendify .mt-0{margin-top:0!important}div.extendify .mt-2{margin-top:.5rem!important}div.extendify .mt-4{margin-top:1rem!important}div.extendify .mt-px{margin-top:1px!important}div.extendify .-mt-2{margin-top:-.5rem!important}div.extendify .-mr-1{margin-right:-.25rem!important}div.extendify .-mr-1\.5{margin-right:-.375rem!important}div.extendify .mb-0{margin-bottom:0!important}div.extendify .mb-1{margin-bottom:.25rem!important}div.extendify .mb-2{margin-bottom:.5rem!important}div.extendify .mb-4{margin-bottom:1rem!important}div.extendify .mb-5{margin-bottom:1.25rem!important}div.extendify .mb-6{margin-bottom:1.5rem!important}div.extendify .mb-8{margin-bottom:2rem!important}div.extendify .mb-10{margin-bottom:2.5rem!important}div.extendify .ml-2{margin-left:.5rem!important}div.extendify .-ml-1{margin-left:-.25rem!important}div.extendify .-ml-2{margin-left:-.5rem!important}div.extendify .-ml-6{margin-left:-1.5rem!important}div.extendify .-ml-px{margin-left:-1px!important}div.extendify .-ml-1\.5{margin-left:-.375rem!important}div.extendify .block{display:block!important}div.extendify .inline-block{display:inline-block!important}div.extendify .flex{display:flex!important}div.extendify .inline-flex{display:inline-flex!important}div.extendify .table{display:table!important}div.extendify .grid{display:grid!important}div.extendify .hidden{display:none!important}div.extendify .h-0{height:0!important}div.extendify .h-20{height:5rem!important}div.extendify .h-auto{height:auto!important}div.extendify .h-full{height:100%!important}div.extendify .h-screen{height:100vh!important}div.extendify .max-h-96{max-height:24rem!important}div.extendify .min-h-screen{min-height:100vh!important}div.extendify .w-0{width:0!important}div.extendify .w-6{width:1.5rem!important}div.extendify .w-72{width:18rem!important}div.extendify .w-80{width:20rem!important}div.extendify .w-auto{width:auto!important}div.extendify .w-6\/12{width:50%!important}div.extendify .w-7\/12{width:58.333333%!important}div.extendify .w-full{width:100%!important}div.extendify .w-screen{width:100vw!important}div.extendify .min-w-sm{min-width:7rem!important}div.extendify .max-w-md{max-width:28rem!important}div.extendify .max-w-lg{max-width:32rem!important}div.extendify .max-w-xl{max-width:36rem!important}div.extendify .max-w-full{max-width:100%!important}div.extendify .max-w-screen-4xl{max-width:1920px!important}div.extendify .flex-1{flex:1 1 0%!important}div.extendify .flex-shrink-0{flex-shrink:0!important}div.extendify .flex-grow-0{flex-grow:0!important}div.extendify .flex-grow{flex-grow:1!important}div.extendify .transform{--tw-translate-x:0!important;--tw-translate-y:0!important;--tw-rotate:0!important;--tw-skew-x:0!important;--tw-skew-y:0!important;--tw-scale-x:1!important;--tw-scale-y:1!important;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}div.extendify .-translate-x-1{--tw-translate-x:-0.25rem!important}div.extendify .translate-y-0{--tw-translate-y:0px!important}div.extendify .translate-y-4{--tw-translate-y:1rem!important}div.extendify .-translate-y-full{--tw-translate-y:-100%!important}div.extendify .rotate-90{--tw-rotate:90deg!important}div.extendify .cursor-pointer{cursor:pointer!important}div.extendify .resize{resize:both!important}div.extendify .flex-col{flex-direction:column!important}div.extendify .items-end{align-items:flex-end!important}div.extendify .items-center{align-items:center!important}div.extendify .justify-end{justify-content:flex-end!important}div.extendify .justify-center{justify-content:center!important}div.extendify .justify-between{justify-content:space-between!important}div.extendify .gap-6{gap:1.5rem!important}div.extendify .space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0!important;margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))!important;margin-right:calc(.25rem*var(--tw-space-x-reverse))!important}div.extendify .space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0!important;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))!important;margin-right:calc(.5rem*var(--tw-space-x-reverse))!important}div.extendify .space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0!important;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))!important;margin-right:calc(.75rem*var(--tw-space-x-reverse))!important}div.extendify .space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0!important;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))!important;margin-right:calc(1rem*var(--tw-space-x-reverse))!important}div.extendify .space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0!important;margin-bottom:calc(.5rem*var(--tw-space-y-reverse))!important;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))!important}div.extendify .space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0!important;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))!important;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))!important}div.extendify .space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0!important;margin-bottom:calc(2rem*var(--tw-space-y-reverse))!important;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)))!important}div.extendify .overflow-hidden{overflow:hidden!important}div.extendify .overflow-y-auto{overflow-y:auto!important}div.extendify .whitespace-nowrap{white-space:nowrap!important}div.extendify .rounded-sm{border-radius:.125rem!important}div.extendify .rounded{border-radius:.25rem!important}div.extendify .rounded-md{border-radius:.375rem!important}div.extendify .rounded-tl-sm{border-top-left-radius:.125rem!important}div.extendify .rounded-tr-sm{border-top-right-radius:.125rem!important}div.extendify .rounded-br-sm{border-bottom-right-radius:.125rem!important}div.extendify .rounded-bl-sm{border-bottom-left-radius:.125rem!important}div.extendify .border-0{border-width:0!important}div.extendify .border-2{border-width:2px!important}div.extendify .border-8{border-width:8px!important}div.extendify .border{border-width:1px!important}div.extendify .border-r{border-right-width:1px!important}div.extendify .border-b-0{border-bottom-width:0!important}div.extendify .border-b{border-bottom-width:1px!important}div.extendify .border-solid{border-style:solid!important}div.extendify .border-none{border-style:none!important}div.extendify .border-transparent{border-color:transparent!important}div.extendify .border-black{--tw-border-opacity:1!important;border-color:rgba(0,0,0,var(--tw-border-opacity))!important}div.extendify .border-gray-900{--tw-border-opacity:1!important;border-color:rgba(30,30,30,var(--tw-border-opacity))!important}div.extendify .border-extendify-main{--tw-border-opacity:1!important;border-color:rgba(11,74,67,var(--tw-border-opacity))!important}div.extendify .border-extendify-transparent-black-100{border-color:rgba(0,0,0,.07)!important}div.extendify .border-wp-alert-red{--tw-border-opacity:1!important;border-color:rgba(204,24,24,var(--tw-border-opacity))!important}div.extendify .focus\:border-transparent:focus{border-color:transparent!important}div.extendify .bg-transparent{background-color:transparent!important}div.extendify .bg-black{--tw-bg-opacity:1!important;background-color:rgba(0,0,0,var(--tw-bg-opacity))!important}div.extendify .bg-white{--tw-bg-opacity:1!important;background-color:rgba(255,255,255,var(--tw-bg-opacity))!important}div.extendify .bg-gray-50{--tw-bg-opacity:1!important;background-color:rgba(251,251,251,var(--tw-bg-opacity))!important}div.extendify .bg-gray-100{--tw-bg-opacity:1!important;background-color:rgba(240,240,240,var(--tw-bg-opacity))!important}div.extendify .bg-gray-900{--tw-bg-opacity:1!important;background-color:rgba(30,30,30,var(--tw-bg-opacity))!important}div.extendify .bg-extendify-main{--tw-bg-opacity:1!important;background-color:rgba(11,74,67,var(--tw-bg-opacity))!important}div.extendify .bg-extendify-alert{--tw-bg-opacity:1!important;background-color:rgba(132,16,16,var(--tw-bg-opacity))!important}div.extendify .bg-extendify-secondary{--tw-bg-opacity:1!important;background-color:rgba(203,195,245,var(--tw-bg-opacity))!important}div.extendify .bg-extendify-transparent-white{background-color:hsla(0,0%,99%,.88)!important}div.extendify .bg-extendify-transparent-black{background-color:rgba(0,0,0,.05)!important}div.extendify .bg-wp-theme-500{background-color:var(--wp-admin-theme-color)!important}div.extendify .hover\:bg-extendify-main-dark:hover{--tw-bg-opacity:1!important;background-color:rgba(5,49,44,var(--tw-bg-opacity))!important}div.extendify .hover\:bg-extendify-transparent-black-100:hover{background-color:rgba(0,0,0,.07)!important}div.extendify .hover\:bg-wp-theme-600:hover{background-color:var(--wp-admin-theme-color-darker-10)!important}div.extendify .active\:bg-gray-900:active{--tw-bg-opacity:1!important;background-color:rgba(30,30,30,var(--tw-bg-opacity))!important}div.extendify .bg-opacity-40{--tw-bg-opacity:0.4!important}div.extendify .bg-cover{background-size:cover!important}div.extendify .bg-clip-padding{background-clip:padding-box!important}div.extendify .fill-current{fill:currentColor!important}div.extendify .stroke-current{stroke:currentColor!important}div.extendify .p-0{padding:0!important}div.extendify .p-1{padding:.25rem!important}div.extendify .p-2{padding:.5rem!important}div.extendify .p-3{padding:.75rem!important}div.extendify .p-4{padding:1rem!important}div.extendify .p-6{padding:1.5rem!important}div.extendify .p-10{padding:2.5rem!important}div.extendify .p-12{padding:3rem!important}div.extendify .p-1\.5{padding:.375rem!important}div.extendify .p-3\.5{padding:.875rem!important}div.extendify .px-0{padding-left:0!important;padding-right:0!important}div.extendify .px-2{padding-left:.5rem!important;padding-right:.5rem!important}div.extendify .px-3{padding-left:.75rem!important;padding-right:.75rem!important}div.extendify .px-4{padding-left:1rem!important;padding-right:1rem!important}div.extendify .px-5{padding-left:1.25rem!important;padding-right:1.25rem!important}div.extendify .px-6{padding-left:1.5rem!important;padding-right:1.5rem!important}div.extendify .px-0\.5{padding-left:.125rem!important;padding-right:.125rem!important}div.extendify .px-2\.5{padding-left:.625rem!important;padding-right:.625rem!important}div.extendify .py-0{padding-bottom:0!important;padding-top:0!important}div.extendify .py-1{padding-bottom:.25rem!important;padding-top:.25rem!important}div.extendify .py-2{padding-bottom:.5rem!important;padding-top:.5rem!important}div.extendify .py-3{padding-bottom:.75rem!important;padding-top:.75rem!important}div.extendify .py-4{padding-bottom:1rem!important;padding-top:1rem!important}div.extendify .py-6{padding-bottom:1.5rem!important;padding-top:1.5rem!important}div.extendify .py-2\.5{padding-bottom:.625rem!important;padding-top:.625rem!important}div.extendify .pt-0{padding-top:0!important}div.extendify .pt-2{padding-top:.5rem!important}div.extendify .pt-4{padding-top:1rem!important}div.extendify .pt-6{padding-top:1.5rem!important}div.extendify .pt-px{padding-top:1px!important}div.extendify .pt-0\.5{padding-top:.125rem!important}div.extendify .pr-3{padding-right:.75rem!important}div.extendify .pb-2{padding-bottom:.5rem!important}div.extendify .pb-4{padding-bottom:1rem!important}div.extendify .pb-6{padding-bottom:1.5rem!important}div.extendify .pb-20{padding-bottom:5rem!important}div.extendify .pb-32{padding-bottom:8rem!important}div.extendify .pb-40{padding-bottom:10rem!important}div.extendify .pl-0{padding-left:0!important}div.extendify .pl-2{padding-left:.5rem!important}div.extendify .pl-6{padding-left:1.5rem!important}div.extendify .pl-8{padding-left:2rem!important}div.extendify .text-left{text-align:left!important}div.extendify .text-center{text-align:center!important}div.extendify .text-xs{font-size:.75rem!important;line-height:1rem!important}div.extendify .text-sm{font-size:.875rem!important;line-height:1.25rem!important}div.extendify .text-base{font-size:1rem!important;line-height:1.5rem!important}div.extendify .text-lg{font-size:1.125rem!important;line-height:1.75rem!important}div.extendify .text-xl{font-size:1.25rem!important;line-height:1.75rem!important}div.extendify .text-xss{font-size:11px!important}div.extendify .font-light{font-weight:300!important}div.extendify .font-normal{font-weight:400!important}div.extendify .font-medium{font-weight:500!important}div.extendify .font-semibold{font-weight:600!important}div.extendify .font-bold{font-weight:700!important}div.extendify .uppercase{text-transform:uppercase!important}div.extendify .leading-none{line-height:1!important}div.extendify .leading-extra-tight{line-height:.5!important}div.extendify .text-black{--tw-text-opacity:1!important;color:rgba(0,0,0,var(--tw-text-opacity))!important}div.extendify .text-white{--tw-text-opacity:1!important;color:rgba(255,255,255,var(--tw-text-opacity))!important}div.extendify .text-gray-700{--tw-text-opacity:1!important;color:rgba(117,117,117,var(--tw-text-opacity))!important}div.extendify .text-gray-800{--tw-text-opacity:1!important;color:rgba(31,41,55,var(--tw-text-opacity))!important}div.extendify .text-gray-900{--tw-text-opacity:1!important;color:rgba(30,30,30,var(--tw-text-opacity))!important}div.extendify .text-extendify-main{--tw-text-opacity:1!important;color:rgba(11,74,67,var(--tw-text-opacity))!important}div.extendify .text-extendify-gray{--tw-text-opacity:1!important;color:rgba(95,95,95,var(--tw-text-opacity))!important}div.extendify .text-extendify-black{--tw-text-opacity:1!important;color:rgba(30,30,30,var(--tw-text-opacity))!important}div.extendify .text-wp-theme-500{color:var(--wp-admin-theme-color)!important}div.extendify .text-wp-alert-red{--tw-text-opacity:1!important;color:rgba(204,24,24,var(--tw-text-opacity))!important}div.extendify .hover\:text-white:hover{--tw-text-opacity:1!important;color:rgba(255,255,255,var(--tw-text-opacity))!important}div.extendify .hover\:text-wp-theme-500:hover{color:var(--wp-admin-theme-color)!important}div.extendify .focus\:text-white:focus{--tw-text-opacity:1!important;color:rgba(255,255,255,var(--tw-text-opacity))!important}div.extendify .focus\:text-blue-500:focus{--tw-text-opacity:1!important;color:rgba(59,130,246,var(--tw-text-opacity))!important}div.extendify .active\:text-white:active{--tw-text-opacity:1!important;color:rgba(255,255,255,var(--tw-text-opacity))!important}div.extendify .underline{text-decoration:underline!important}div.extendify .hover\:no-underline:hover,div.extendify .no-underline{text-decoration:none!important}div.extendify .opacity-0{opacity:0!important}div.extendify .opacity-30{opacity:.3!important}div.extendify .opacity-50{opacity:.5!important}div.extendify .opacity-75{opacity:.75!important}div.extendify .opacity-100{opacity:1!important}div.extendify .group:hover .group-hover\:opacity-90{opacity:.9!important}div.extendify .focus\:opacity-100:focus,div.extendify .group:focus .group-focus\:opacity-100,div.extendify .group:hover .group-hover\:opacity-100,div.extendify .hover\:opacity-100:hover{opacity:1!important}div.extendify .shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05)!important}div.extendify .shadow-md,div.extendify .shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}div.extendify .shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)!important}div.extendify .shadow-modal{--tw-shadow: 0 0 0 1px rgba(0,0,0,.1),0 3px 15px -3px rgba(0,0,0,.035),0 0 1px rgba(0,0,0,.05)!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}div.extendify .focus\:outline-none:focus,div.extendify .outline-none{outline:2px solid transparent!important;outline-offset:2px!important}div.extendify .focus\:ring-wp:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--wp-admin-border-width-focus) + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}div.extendify .focus\:ring-wp-theme-500:focus{--tw-ring-color:var(--wp-admin-theme-color)!important}div.extendify .filter{--tw-blur:var(--tw-empty,/*!*/ /*!*/)!important;--tw-brightness:var(--tw-empty,/*!*/ /*!*/)!important;--tw-contrast:var(--tw-empty,/*!*/ /*!*/)!important;--tw-grayscale:var(--tw-empty,/*!*/ /*!*/)!important;--tw-hue-rotate:var(--tw-empty,/*!*/ /*!*/)!important;--tw-invert:var(--tw-empty,/*!*/ /*!*/)!important;--tw-saturate:var(--tw-empty,/*!*/ /*!*/)!important;--tw-sepia:var(--tw-empty,/*!*/ /*!*/)!important;--tw-drop-shadow:var(--tw-empty,/*!*/ /*!*/)!important;filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}div.extendify .blur{--tw-blur:blur(8px)!important}div.extendify .invert{--tw-invert:invert(100%)!important}div.extendify .backdrop-filter{--tw-backdrop-blur:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-brightness:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-contrast:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-grayscale:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-hue-rotate:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-invert:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-opacity:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-saturate:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-sepia:var(--tw-empty,/*!*/ /*!*/)!important;-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)!important;backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)!important}div.extendify .backdrop-blur-xl{--tw-backdrop-blur:blur(24px)!important}div.extendify .backdrop-saturate-200{--tw-backdrop-saturate:saturate(2)!important}div.extendify .transition-all{transition-duration:.15s!important;transition-property:all!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}div.extendify .transition{transition-duration:.15s!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}div.extendify .transition-opacity{transition-duration:.15s!important;transition-property:opacity!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}div.extendify .delay-200{transition-delay:.2s!important}div.extendify .duration-200{transition-duration:.2s!important}div.extendify .duration-300{transition-duration:.3s!important}div.extendify .ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)!important}div.extendify .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)!important}.extendify{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/)!important;--tw-ring-offset-width:0px!important;--tw-ring-offset-color:transparent!important;--tw-ring-color:var(--wp-admin-theme-color)!important}.extendify *,.extendify :after,.extendify :before{border:0 solid #e5e7eb!important;box-sizing:border-box!important}.extendify .button-focus:focus{--tw-shadow:0 0 #0000!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.extendify .button-focus{outline:2px solid transparent!important;outline-offset:2px!important}.extendify .button-focus:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--wp-admin-border-width-focus) + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;--tw-ring-color:var(--wp-admin-theme-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}div.extendify button.extendify-skip-to-sr-link:focus{--tw-bg-opacity:1!important;background-color:rgba(255,255,255,var(--tw-bg-opacity))!important;padding:1rem!important;position:fixed!important;top:0!important;z-index:99999!important}.button-extendify-main{--tw-bg-opacity:1!important;background-color:rgba(11,74,67,var(--tw-bg-opacity))!important;border-radius:.25rem!important;cursor:pointer!important;white-space:nowrap!important}.button-extendify-main:hover{--tw-bg-opacity:1!important;background-color:rgba(5,49,44,var(--tw-bg-opacity))!important}.button-extendify-main:active{--tw-bg-opacity:1!important;background-color:rgba(30,30,30,var(--tw-bg-opacity))!important}.button-extendify-main{font-size:1rem!important;line-height:1.5rem!important;padding:.375rem .75rem!important}.button-extendify-main,.button-extendify-main:active,.button-extendify-main:focus,.button-extendify-main:hover{--tw-text-opacity:1!important;color:rgba(255,255,255,var(--tw-text-opacity))!important}.button-extendify-main{text-decoration:none!important;transition-duration:.15s!important;transition-duration:.2s!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}.extendify .button-extendify-main:focus{--tw-shadow:0 0 #0000!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.extendify .button-extendify-main{outline:2px solid transparent!important;outline-offset:2px!important}.extendify .button-extendify-main:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--wp-admin-border-width-focus) + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;--tw-ring-color:var(--wp-admin-theme-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}.extendify input.button-extendify-main:focus,.extendify input.button-focus:focus,.extendify select.button-extendify-main:focus,.extendify select.button-focus:focus{--tw-shadow:0 0 #0000!important;border-color:transparent!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important;outline:2px solid transparent!important;outline-offset:2px!important}#extendify-search-input:not(:-moz-placeholder-shown)~svg{display:none!important}#extendify-search-input:not(:-ms-input-placeholder)~svg{display:none!important}#extendify-search-input:focus~svg,#extendify-search-input:not(:placeholder-shown)~svg{display:none!important}#extendify-search-input::-webkit-textfield-decoration-container{margin-right:.75rem!important}.extendify .components-panel__body>.components-panel__body-title{background-color:transparent!important;border-bottom:1px solid #e0e0e0!important}.extendify .components-modal__header{--tw-border-opacity:1!important;border-bottom-width:1px!important;border-color:rgba(221,221,221,var(--tw-border-opacity))!important}.block-editor-block-preview__content .block-editor-block-list__layout.is-root-container>.ext{max-width:none!important}.block-editor-block-list__layout.is-root-container .ext.block-editor-block-list__block{max-width:100%!important}.block-editor-block-preview__content-iframe .block-editor-block-list__layout.is-root-container .ext.block-editor-block-list__block{max-width:none!important}.extendify .block-editor-block-preview__container{-webkit-animation:extendifyOpacityIn .2s cubic-bezier(.694,0,.335,1) 0ms forwards;animation:extendifyOpacityIn .2s cubic-bezier(.694,0,.335,1) 0ms forwards;opacity:0}.extendify .is-root-container>[data-align=full],.extendify .is-root-container>[data-align=full]>.wp-block,.extendify .is-root-container>[data-block]{margin-bottom:0!important;margin-top:0!important}.editor-styles-wrapper:not(.block-editor-writing-flow)>.is-root-container :where(.wp-block)[data-align=full]{margin-bottom:0!important;margin-top:0!important}@-webkit-keyframes extendifyOpacityIn{0%{opacity:0}to{opacity:1}}@keyframes extendifyOpacityIn{0%{opacity:0}to{opacity:1}}.extendify .with-light-shadow:after{--tw-shadow:inset 0 0 0 1px rgba(0,0,0,.1),0 3px 15px -3px rgba(0,0,0,.035),0 0 1px rgba(0,0,0,.025)!important;border-width:0!important;bottom:0!important;content:""!important;left:0!important;position:absolute!important;right:0!important;top:0!important}.extendify .with-light-shadow:after,.extendify .with-light-shadow:hover:after{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.extendify .with-light-shadow:hover:after{--tw-shadow:inset 0 0 0 1px rgba(0,0,0,.2),0 3px 15px -3px rgba(0,0,0,.025),0 0 1px rgba(0,0,0,.02)!important}@supports not (((-webkit-backdrop-filter:saturate(2) blur(24px)) or (backdrop-filter:saturate(2) blur(24px)))){div.extendify .bg-extendify-transparent-white{--tw-bg-opacity:1!important;background-color:rgba(240,240,240,var(--tw-bg-opacity))!important}}.components-panel__body.ext-type-control .components-panel__body-toggle{padding-left:0!important;padding-right:0!important}.components-panel__body.ext-type-control .components-panel__body-title{border-bottom-width:0!important;margin:0!important;padding-left:1.25rem!important;padding-right:1.25rem!important}.components-panel__body.ext-type-control .components-panel__body-title .components-button{--tw-text-opacity:1!important;border-bottom-width:0!important;color:rgba(95,95,95,var(--tw-text-opacity))!important;font-size:11px!important;font-weight:500!important;margin:0!important;padding-bottom:.5rem!important;padding-top:.5rem!important;text-transform:uppercase!important}.components-panel__body.ext-type-control .components-button .components-panel__arrow{--tw-text-opacity:1!important;color:rgba(95,95,95,var(--tw-text-opacity))!important;right:0!important}.extendify .animate-pulse{-webkit-animation:extendifyPulse 3s cubic-bezier(.4,0,.6,1) infinite;animation:extendifyPulse 3s cubic-bezier(.4,0,.6,1) infinite}@-webkit-keyframes extendifyPulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes extendifyPulse{0%,to{opacity:1}50%{opacity:.5}}.is-template--in-review:before,.is-template--inactive:before{--tw-border-opacity:1!important;border:8px solid rgba(203,195,245,var(--tw-border-opacity))!important;bottom:0!important;content:""!important;height:100%!important;left:0!important;position:absolute!important;right:0!important;top:0!important;width:100%!important;z-index:40!important}.is-template--inactive:before{border-color:#fdeab6!important}.extendify-tooltip-default:not(.is-without-arrow)[data-y-axis=bottom]:after{border-bottom-color:#1e1e1e!important}.extendify-tooltip-default:not(.is-without-arrow):before{border-color:transparent!important}.extendify-tooltip-default:not(.is-without-arrow) .components-popover__content{--tw-bg-opacity:1!important;--tw-text-opacity:1!important;background-color:rgba(30,30,30,var(--tw-bg-opacity))!important;border-color:transparent!important;color:rgba(255,255,255,var(--tw-text-opacity))!important;min-width:250px!important;padding:1rem!important}.extendify-bottom-arrow:after{--tw-translate-x:0!important;--tw-translate-y:0!important;--tw-rotate:0!important;--tw-skew-x:0!important;--tw-skew-y:0!important;--tw-scale-x:1!important;--tw-scale-y:1!important;--tw-translate-y:-1px!important;border-color:#1e1e1e transparent transparent!important;border-width:8px!important;bottom:-15px!important;content:""!important;display:inline-block!important;height:0!important;position:absolute!important;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important;width:0!important}@media (min-width:600px){div.extendify .sm\:mx-0{margin-left:0!important;margin-right:0!important}div.extendify .sm\:mt-0{margin-top:0!important}div.extendify .sm\:mb-8{margin-bottom:2rem!important}div.extendify .sm\:block{display:block!important}div.extendify .sm\:flex{display:flex!important}div.extendify .sm\:h-auto{height:auto!important}div.extendify .sm\:w-64{width:16rem!important}div.extendify .sm\:w-auto{width:auto!important}div.extendify .sm\:translate-y-5{--tw-translate-y:1.25rem!important}div.extendify .sm\:space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0!important;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))!important;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))!important}div.extendify .sm\:p-0{padding:0!important}div.extendify .sm\:py-0{padding-bottom:0!important;padding-top:0!important}div.extendify .sm\:py-5{padding-bottom:1.25rem!important;padding-top:1.25rem!important}div.extendify .sm\:pt-0{padding-top:0!important}}@media (min-width:782px){div.extendify .md\:m-0{margin:0!important}div.extendify .md\:-ml-8{margin-left:-2rem!important}div.extendify .md\:block{display:block!important}div.extendify .md\:flex{display:flex!important}div.extendify .md\:max-w-2xl{max-width:42rem!important}div.extendify .md\:gap-8{gap:2rem!important}div.extendify .md\:space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0!important;margin-bottom:calc(2rem*var(--tw-space-y-reverse))!important;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)))!important}div.extendify .md\:p-8{padding:2rem!important}div.extendify .md\:px-8{padding-right:2rem!important}div.extendify .md\:pl-8,div.extendify .md\:px-8{padding-left:2rem!important}}@media (min-width:1080px){div.extendify .lg\:absolute{position:absolute!important}div.extendify .lg\:block{display:block!important}div.extendify .lg\:flex{display:flex!important}div.extendify .lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}div.extendify .lg\:overflow-hidden{overflow:hidden!important}div.extendify .lg\:p-16{padding:4rem!important}}
1
+ div.extendify .sr-only{clip:rect(0,0,0,0)!important;border-width:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}div.extendify .focus\:not-sr-only:focus{clip:auto!important;height:auto!important;margin:0!important;overflow:visible!important;padding:0!important;position:static!important;white-space:normal!important;width:auto!important}div.extendify .pointer-events-none{pointer-events:none!important}div.extendify .invisible{visibility:hidden!important}div.extendify .group:focus .group-focus\:visible,div.extendify .group:hover .group-hover\:visible{visibility:visible!important}div.extendify .static{position:static!important}div.extendify .fixed{position:fixed!important}div.extendify .absolute{position:absolute!important}div.extendify .relative{position:relative!important}div.extendify .inset-0{bottom:0!important;left:0!important;right:0!important;top:0!important}div.extendify .top-0{top:0!important}div.extendify .top-2{top:.5rem!important}div.extendify .top-4{top:1rem!important}div.extendify .right-0{right:0!important}div.extendify .right-1{right:.25rem!important}div.extendify .right-2{right:.5rem!important}div.extendify .right-4{right:1rem!important}div.extendify .right-2\.5{right:.625rem!important}div.extendify .bottom-0{bottom:0!important}div.extendify .bottom-4{bottom:1rem!important}div.extendify .left-0{left:0!important}div.extendify .group:hover .group-hover\:-top-2{top:-.5rem!important}div.extendify .group:hover .group-hover\:-top-2\.5{top:-.625rem!important}div.extendify .group:focus .group-focus\:-top-2{top:-.5rem!important}div.extendify .group:focus .group-focus\:-top-2\.5{top:-.625rem!important}div.extendify .z-10{z-index:10!important}div.extendify .z-20{z-index:20!important}div.extendify .z-30{z-index:30!important}div.extendify .z-40{z-index:40!important}div.extendify .z-50{z-index:50!important}div.extendify .z-high{z-index:99999!important}div.extendify .m-0{margin:0!important}div.extendify .m-8{margin:2rem!important}div.extendify .m-auto{margin:auto!important}div.extendify .mx-1{margin-left:.25rem!important;margin-right:.25rem!important}div.extendify .mx-5{margin-left:1.25rem!important;margin-right:1.25rem!important}div.extendify .mx-6{margin-left:1.5rem!important;margin-right:1.5rem!important}div.extendify .mx-auto{margin-left:auto!important;margin-right:auto!important}div.extendify .my-0{margin-bottom:0!important;margin-top:0!important}div.extendify .my-2{margin-bottom:.5rem!important;margin-top:.5rem!important}div.extendify .my-20{margin-bottom:5rem!important;margin-top:5rem!important}div.extendify .mt-0{margin-top:0!important}div.extendify .mt-2{margin-top:.5rem!important}div.extendify .mt-4{margin-top:1rem!important}div.extendify .mt-px{margin-top:1px!important}div.extendify .-mt-2{margin-top:-.5rem!important}div.extendify .-mt-5{margin-top:-1.25rem!important}div.extendify .-mt-6{margin-top:-1.5rem!important}div.extendify .-mr-1{margin-right:-.25rem!important}div.extendify .-mr-1\.5{margin-right:-.375rem!important}div.extendify .mb-0{margin-bottom:0!important}div.extendify .mb-1{margin-bottom:.25rem!important}div.extendify .mb-2{margin-bottom:.5rem!important}div.extendify .mb-4{margin-bottom:1rem!important}div.extendify .mb-5{margin-bottom:1.25rem!important}div.extendify .mb-6{margin-bottom:1.5rem!important}div.extendify .mb-8{margin-bottom:2rem!important}div.extendify .mb-10{margin-bottom:2.5rem!important}div.extendify .mb-1\.5{margin-bottom:.375rem!important}div.extendify .ml-2{margin-left:.5rem!important}div.extendify .ml-4{margin-left:1rem!important}div.extendify .ml-6{margin-left:1.5rem!important}div.extendify .-ml-1{margin-left:-.25rem!important}div.extendify .-ml-2{margin-left:-.5rem!important}div.extendify .-ml-6{margin-left:-1.5rem!important}div.extendify .-ml-px{margin-left:-1px!important}div.extendify .-ml-1\.5{margin-left:-.375rem!important}div.extendify .block{display:block!important}div.extendify .inline-block{display:inline-block!important}div.extendify .flex{display:flex!important}div.extendify .inline-flex{display:inline-flex!important}div.extendify .table{display:table!important}div.extendify .grid{display:grid!important}div.extendify .hidden{display:none!important}div.extendify .h-0{height:0!important}div.extendify .h-20{height:5rem!important}div.extendify .h-auto{height:auto!important}div.extendify .h-full{height:100%!important}div.extendify .h-screen{height:100vh!important}div.extendify .max-h-96{max-height:24rem!important}div.extendify .min-h-screen{min-height:100vh!important}div.extendify .w-0{width:0!important}div.extendify .w-6{width:1.5rem!important}div.extendify .w-72{width:18rem!important}div.extendify .w-auto{width:auto!important}div.extendify .w-6\/12{width:50%!important}div.extendify .w-7\/12{width:58.333333%!important}div.extendify .w-full{width:100%!important}div.extendify .w-screen{width:100vw!important}div.extendify .min-w-sm{min-width:7rem!important}div.extendify .max-w-md{max-width:28rem!important}div.extendify .max-w-lg{max-width:32rem!important}div.extendify .max-w-xl{max-width:36rem!important}div.extendify .max-w-full{max-width:100%!important}div.extendify .max-w-screen-4xl{max-width:1920px!important}div.extendify .flex-1{flex:1 1 0%!important}div.extendify .flex-shrink-0{flex-shrink:0!important}div.extendify .flex-grow-0{flex-grow:0!important}div.extendify .flex-grow{flex-grow:1!important}div.extendify .transform{--tw-translate-x:0!important;--tw-translate-y:0!important;--tw-rotate:0!important;--tw-skew-x:0!important;--tw-skew-y:0!important;--tw-scale-x:1!important;--tw-scale-y:1!important;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}div.extendify .-translate-x-1{--tw-translate-x:-0.25rem!important}div.extendify .translate-y-0{--tw-translate-y:0px!important}div.extendify .translate-y-4{--tw-translate-y:1rem!important}div.extendify .-translate-y-px{--tw-translate-y:-1px!important}div.extendify .-translate-y-full{--tw-translate-y:-100%!important}div.extendify .rotate-90{--tw-rotate:90deg!important}div.extendify .cursor-pointer{cursor:pointer!important}div.extendify .resize{resize:both!important}div.extendify .flex-col{flex-direction:column!important}div.extendify .items-end{align-items:flex-end!important}div.extendify .items-center{align-items:center!important}div.extendify .justify-end{justify-content:flex-end!important}div.extendify .justify-center{justify-content:center!important}div.extendify .justify-between{justify-content:space-between!important}div.extendify .gap-6{gap:1.5rem!important}div.extendify .space-x-0>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0!important;margin-left:calc(0px*(1 - var(--tw-space-x-reverse)))!important;margin-right:calc(0px*var(--tw-space-x-reverse))!important}div.extendify .space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0!important;margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)))!important;margin-right:calc(.25rem*var(--tw-space-x-reverse))!important}div.extendify .space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0!important;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)))!important;margin-right:calc(.5rem*var(--tw-space-x-reverse))!important}div.extendify .space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0!important;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))!important;margin-right:calc(.75rem*var(--tw-space-x-reverse))!important}div.extendify .space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0!important;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))!important;margin-right:calc(1rem*var(--tw-space-x-reverse))!important}div.extendify .space-x-0\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0!important;margin-left:calc(.125rem*(1 - var(--tw-space-x-reverse)))!important;margin-right:calc(.125rem*var(--tw-space-x-reverse))!important}div.extendify .space-x-1\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0!important;margin-left:calc(.375rem*(1 - var(--tw-space-x-reverse)))!important;margin-right:calc(.375rem*var(--tw-space-x-reverse))!important}div.extendify .space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0!important;margin-bottom:calc(.5rem*var(--tw-space-y-reverse))!important;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))!important}div.extendify .space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0!important;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))!important;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))!important}div.extendify .divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0!important;border-bottom-width:calc(1px*var(--tw-divide-y-reverse))!important;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))!important}div.extendify .overflow-hidden{overflow:hidden!important}div.extendify .overflow-y-auto{overflow-y:auto!important}div.extendify .whitespace-nowrap{white-space:nowrap!important}div.extendify .rounded-sm{border-radius:.125rem!important}div.extendify .rounded{border-radius:.25rem!important}div.extendify .rounded-md{border-radius:.375rem!important}div.extendify .rounded-tl-sm{border-top-left-radius:.125rem!important}div.extendify .rounded-tr-sm{border-top-right-radius:.125rem!important}div.extendify .rounded-br-sm{border-bottom-right-radius:.125rem!important}div.extendify .rounded-bl-sm{border-bottom-left-radius:.125rem!important}div.extendify .border-0{border-width:0!important}div.extendify .border-2{border-width:2px!important}div.extendify .border-8{border-width:8px!important}div.extendify .border{border-width:1px!important}div.extendify .border-r{border-right-width:1px!important}div.extendify .border-b-0{border-bottom-width:0!important}div.extendify .border-b{border-bottom-width:1px!important}div.extendify .border-l-8{border-left-width:8px!important}div.extendify .border-solid{border-style:solid!important}div.extendify .border-none{border-style:none!important}div.extendify .border-transparent{border-color:transparent!important}div.extendify .border-black{--tw-border-opacity:1!important;border-color:rgba(0,0,0,var(--tw-border-opacity))!important}div.extendify .border-gray-200{--tw-border-opacity:1!important;border-color:rgba(224,224,224,var(--tw-border-opacity))!important}div.extendify .border-gray-900{--tw-border-opacity:1!important;border-color:rgba(30,30,30,var(--tw-border-opacity))!important}div.extendify .border-extendify-main{--tw-border-opacity:1!important;border-color:rgba(11,74,67,var(--tw-border-opacity))!important}div.extendify .border-extendify-secondary{--tw-border-opacity:1!important;border-color:rgba(203,195,245,var(--tw-border-opacity))!important}div.extendify .border-extendify-transparent-black-100{border-color:rgba(0,0,0,.07)!important}div.extendify .border-wp-alert-red{--tw-border-opacity:1!important;border-color:rgba(204,24,24,var(--tw-border-opacity))!important}div.extendify .focus\:border-transparent:focus{border-color:transparent!important}div.extendify .bg-transparent{background-color:transparent!important}div.extendify .bg-black{--tw-bg-opacity:1!important;background-color:rgba(0,0,0,var(--tw-bg-opacity))!important}div.extendify .bg-white{--tw-bg-opacity:1!important;background-color:rgba(255,255,255,var(--tw-bg-opacity))!important}div.extendify .bg-gray-50{--tw-bg-opacity:1!important;background-color:rgba(251,251,251,var(--tw-bg-opacity))!important}div.extendify .bg-gray-100{--tw-bg-opacity:1!important;background-color:rgba(240,240,240,var(--tw-bg-opacity))!important}div.extendify .bg-gray-900{--tw-bg-opacity:1!important;background-color:rgba(30,30,30,var(--tw-bg-opacity))!important}div.extendify .bg-extendify-main{--tw-bg-opacity:1!important;background-color:rgba(11,74,67,var(--tw-bg-opacity))!important}div.extendify .bg-extendify-alert{--tw-bg-opacity:1!important;background-color:rgba(132,16,16,var(--tw-bg-opacity))!important}div.extendify .bg-extendify-secondary{--tw-bg-opacity:1!important;background-color:rgba(203,195,245,var(--tw-bg-opacity))!important}div.extendify .bg-extendify-transparent-white{background-color:hsla(0,0%,99%,.88)!important}div.extendify .bg-extendify-transparent-black{background-color:rgba(0,0,0,.05)!important}div.extendify .bg-wp-theme-500{background-color:var(--wp-admin-theme-color)!important}div.extendify .hover\:bg-extendify-main-dark:hover{--tw-bg-opacity:1!important;background-color:rgba(5,49,44,var(--tw-bg-opacity))!important}div.extendify .hover\:bg-extendify-transparent-black-100:hover{background-color:rgba(0,0,0,.07)!important}div.extendify .hover\:bg-wp-theme-600:hover{background-color:var(--wp-admin-theme-color-darker-10)!important}div.extendify .active\:bg-gray-900:active{--tw-bg-opacity:1!important;background-color:rgba(30,30,30,var(--tw-bg-opacity))!important}div.extendify .bg-opacity-40{--tw-bg-opacity:0.4!important}div.extendify .bg-cover{background-size:cover!important}div.extendify .bg-clip-padding{background-clip:padding-box!important}div.extendify .fill-current{fill:currentColor!important}div.extendify .stroke-current{stroke:currentColor!important}div.extendify .p-0{padding:0!important}div.extendify .p-1{padding:.25rem!important}div.extendify .p-2{padding:.5rem!important}div.extendify .p-3{padding:.75rem!important}div.extendify .p-4{padding:1rem!important}div.extendify .p-6{padding:1.5rem!important}div.extendify .p-10{padding:2.5rem!important}div.extendify .p-12{padding:3rem!important}div.extendify .p-1\.5{padding:.375rem!important}div.extendify .p-3\.5{padding:.875rem!important}div.extendify .px-0{padding-left:0!important;padding-right:0!important}div.extendify .px-2{padding-left:.5rem!important;padding-right:.5rem!important}div.extendify .px-3{padding-left:.75rem!important;padding-right:.75rem!important}div.extendify .px-4{padding-left:1rem!important;padding-right:1rem!important}div.extendify .px-5{padding-left:1.25rem!important;padding-right:1.25rem!important}div.extendify .px-6{padding-left:1.5rem!important;padding-right:1.5rem!important}div.extendify .px-0\.5{padding-left:.125rem!important;padding-right:.125rem!important}div.extendify .px-2\.5{padding-left:.625rem!important;padding-right:.625rem!important}div.extendify .py-0{padding-bottom:0!important;padding-top:0!important}div.extendify .py-1{padding-bottom:.25rem!important;padding-top:.25rem!important}div.extendify .py-2{padding-bottom:.5rem!important;padding-top:.5rem!important}div.extendify .py-3{padding-bottom:.75rem!important;padding-top:.75rem!important}div.extendify .py-4{padding-bottom:1rem!important;padding-top:1rem!important}div.extendify .py-6{padding-bottom:1.5rem!important;padding-top:1.5rem!important}div.extendify .py-2\.5{padding-bottom:.625rem!important;padding-top:.625rem!important}div.extendify .pt-0{padding-top:0!important}div.extendify .pt-2{padding-top:.5rem!important}div.extendify .pt-4{padding-top:1rem!important}div.extendify .pt-6{padding-top:1.5rem!important}div.extendify .pt-px{padding-top:1px!important}div.extendify .pt-0\.5{padding-top:.125rem!important}div.extendify .pr-3{padding-right:.75rem!important}div.extendify .pb-20{padding-bottom:5rem!important}div.extendify .pb-36{padding-bottom:9rem!important}div.extendify .pb-40{padding-bottom:10rem!important}div.extendify .pl-0{padding-left:0!important}div.extendify .pl-2{padding-left:.5rem!important}div.extendify .pl-6{padding-left:1.5rem!important}div.extendify .text-left{text-align:left!important}div.extendify .text-center{text-align:center!important}div.extendify .text-xs{font-size:.75rem!important;line-height:1rem!important}div.extendify .text-sm{font-size:.875rem!important;line-height:1.25rem!important}div.extendify .text-base{font-size:1rem!important;line-height:1.5rem!important}div.extendify .text-lg{font-size:1.125rem!important;line-height:1.75rem!important}div.extendify .text-xl{font-size:1.25rem!important;line-height:1.75rem!important}div.extendify .text-xss{font-size:11px!important}div.extendify .font-light{font-weight:300!important}div.extendify .font-normal{font-weight:400!important}div.extendify .font-medium{font-weight:500!important}div.extendify .font-semibold{font-weight:600!important}div.extendify .font-bold{font-weight:700!important}div.extendify .uppercase{text-transform:uppercase!important}div.extendify .italic{font-style:italic!important}div.extendify .leading-none{line-height:1!important}div.extendify .text-black{--tw-text-opacity:1!important;color:rgba(0,0,0,var(--tw-text-opacity))!important}div.extendify .text-white{--tw-text-opacity:1!important;color:rgba(255,255,255,var(--tw-text-opacity))!important}div.extendify .text-gray-500{--tw-text-opacity:1!important;color:rgba(204,204,204,var(--tw-text-opacity))!important}div.extendify .text-gray-700{--tw-text-opacity:1!important;color:rgba(117,117,117,var(--tw-text-opacity))!important}div.extendify .text-gray-800{--tw-text-opacity:1!important;color:rgba(31,41,55,var(--tw-text-opacity))!important}div.extendify .text-gray-900{--tw-text-opacity:1!important;color:rgba(30,30,30,var(--tw-text-opacity))!important}div.extendify .text-red-500{--tw-text-opacity:1!important;color:rgba(239,68,68,var(--tw-text-opacity))!important}div.extendify .text-extendify-main{--tw-text-opacity:1!important;color:rgba(11,74,67,var(--tw-text-opacity))!important}div.extendify .text-extendify-gray{--tw-text-opacity:1!important;color:rgba(95,95,95,var(--tw-text-opacity))!important}div.extendify .text-extendify-black{--tw-text-opacity:1!important;color:rgba(30,30,30,var(--tw-text-opacity))!important}div.extendify .text-wp-theme-500{color:var(--wp-admin-theme-color)!important}div.extendify .text-wp-alert-red{--tw-text-opacity:1!important;color:rgba(204,24,24,var(--tw-text-opacity))!important}div.extendify .hover\:text-white:hover{--tw-text-opacity:1!important;color:rgba(255,255,255,var(--tw-text-opacity))!important}div.extendify .hover\:text-wp-theme-500:hover{color:var(--wp-admin-theme-color)!important}div.extendify .focus\:text-white:focus{--tw-text-opacity:1!important;color:rgba(255,255,255,var(--tw-text-opacity))!important}div.extendify .focus\:text-blue-500:focus{--tw-text-opacity:1!important;color:rgba(59,130,246,var(--tw-text-opacity))!important}div.extendify .underline{text-decoration:underline!important}div.extendify .no-underline{text-decoration:none!important}div.extendify .group:hover .group-hover\:underline{text-decoration:underline!important}div.extendify .hover\:no-underline:hover{text-decoration:none!important}div.extendify .opacity-0{opacity:0!important}div.extendify .opacity-30{opacity:.3!important}div.extendify .opacity-50{opacity:.5!important}div.extendify .opacity-75{opacity:.75!important}div.extendify .focus\:opacity-100:focus,div.extendify .group:focus .group-focus\:opacity-100,div.extendify .group:hover .group-hover\:opacity-100,div.extendify .hover\:opacity-100:hover,div.extendify .opacity-100{opacity:1!important}div.extendify .shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05)!important}div.extendify .shadow-md,div.extendify .shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}div.extendify .shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)!important}div.extendify .shadow-modal{--tw-shadow: 0 0 0 1px rgba(0,0,0,.1),0 3px 15px -3px rgba(0,0,0,.035),0 0 1px rgba(0,0,0,.05)!important}div.extendify .focus\:shadow-none:focus,div.extendify .shadow-modal{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}div.extendify .focus\:shadow-none:focus{--tw-shadow:0 0 #0000!important}div.extendify .focus\:outline-none:focus,div.extendify .outline-none{outline:2px solid transparent!important;outline-offset:2px!important}div.extendify .focus\:ring-wp:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--wp-admin-border-width-focus) + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}div.extendify .filter{--tw-blur:var(--tw-empty,/*!*/ /*!*/)!important;--tw-brightness:var(--tw-empty,/*!*/ /*!*/)!important;--tw-contrast:var(--tw-empty,/*!*/ /*!*/)!important;--tw-grayscale:var(--tw-empty,/*!*/ /*!*/)!important;--tw-hue-rotate:var(--tw-empty,/*!*/ /*!*/)!important;--tw-invert:var(--tw-empty,/*!*/ /*!*/)!important;--tw-saturate:var(--tw-empty,/*!*/ /*!*/)!important;--tw-sepia:var(--tw-empty,/*!*/ /*!*/)!important;--tw-drop-shadow:var(--tw-empty,/*!*/ /*!*/)!important;filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}div.extendify .blur{--tw-blur:blur(8px)!important}div.extendify .invert{--tw-invert:invert(100%)!important}div.extendify .backdrop-filter{--tw-backdrop-blur:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-brightness:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-contrast:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-grayscale:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-hue-rotate:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-invert:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-opacity:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-saturate:var(--tw-empty,/*!*/ /*!*/)!important;--tw-backdrop-sepia:var(--tw-empty,/*!*/ /*!*/)!important;-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)!important;backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)!important}div.extendify .backdrop-blur-xl{--tw-backdrop-blur:blur(24px)!important}div.extendify .backdrop-saturate-200{--tw-backdrop-saturate:saturate(2)!important}div.extendify .transition-all{transition-duration:.15s!important;transition-property:all!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}div.extendify .transition{transition-duration:.15s!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}div.extendify .transition-opacity{transition-duration:.15s!important;transition-property:opacity!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}div.extendify .delay-200{transition-delay:.2s!important}div.extendify .duration-100{transition-duration:.1s!important}div.extendify .duration-200{transition-duration:.2s!important}div.extendify .duration-300{transition-duration:.3s!important}div.extendify .ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)!important}div.extendify .ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)!important}.extendify{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/)!important;--tw-ring-offset-width:0px!important;--tw-ring-offset-color:transparent!important;--tw-ring-color:var(--wp-admin-theme-color)!important}.extendify *,.extendify :after,.extendify :before{border:0 solid #e5e7eb!important;box-sizing:border-box!important}.extendify .button-focus:focus{--tw-shadow:0 0 #0000!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.extendify .button-focus{outline:2px solid transparent!important;outline-offset:2px!important}.extendify .button-focus:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--wp-admin-border-width-focus) + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;--tw-ring-color:var(--wp-admin-theme-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}div.extendify button.extendify-skip-to-sr-link:focus{--tw-bg-opacity:1!important;background-color:rgba(255,255,255,var(--tw-bg-opacity))!important;padding:1rem!important;position:fixed!important;top:0!important;z-index:99999!important}.button-extendify-main{--tw-bg-opacity:1!important;background-color:rgba(11,74,67,var(--tw-bg-opacity))!important;border-radius:.25rem!important;cursor:pointer!important;white-space:nowrap!important}.button-extendify-main:hover{--tw-bg-opacity:1!important;background-color:rgba(5,49,44,var(--tw-bg-opacity))!important}.button-extendify-main:active{--tw-bg-opacity:1!important;background-color:rgba(30,30,30,var(--tw-bg-opacity))!important}.button-extendify-main{font-size:1rem!important;line-height:1.5rem!important;padding:.375rem .75rem!important}.button-extendify-main,.button-extendify-main:active,.button-extendify-main:focus,.button-extendify-main:hover{--tw-text-opacity:1!important;color:rgba(255,255,255,var(--tw-text-opacity))!important}.button-extendify-main{text-decoration:none!important;transition-duration:.15s!important;transition-duration:.2s!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter!important;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}.extendify .button-extendify-main:focus{--tw-shadow:0 0 #0000!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.extendify .button-extendify-main{outline:2px solid transparent!important;outline-offset:2px!important}.extendify .button-extendify-main:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)!important;--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--wp-admin-border-width-focus) + var(--tw-ring-offset-width)) var(--tw-ring-color)!important;--tw-ring-color:var(--wp-admin-theme-color)!important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)!important}.extendify input.button-extendify-main:focus,.extendify input.button-focus:focus,.extendify select.button-extendify-main:focus,.extendify select.button-focus:focus{--tw-shadow:0 0 #0000!important;border-color:transparent!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important;outline:2px solid transparent!important;outline-offset:2px!important}#extendify-search-input:not(:-moz-placeholder-shown)~svg{display:none!important}#extendify-search-input:not(:-ms-input-placeholder)~svg{display:none!important}#extendify-search-input:focus~svg,#extendify-search-input:not(:placeholder-shown)~svg{display:none!important}#extendify-search-input::-webkit-textfield-decoration-container{margin-right:.75rem!important}.extendify .components-panel__body>.components-panel__body-title{background-color:transparent!important;border-bottom:1px solid #e0e0e0!important}.extendify .components-modal__header{--tw-border-opacity:1!important;border-bottom-width:1px!important;border-color:rgba(221,221,221,var(--tw-border-opacity))!important}.block-editor-block-preview__content .block-editor-block-list__layout.is-root-container>.ext{max-width:none!important}.block-editor-block-list__layout.is-root-container .ext.block-editor-block-list__block{max-width:100%!important}.block-editor-block-preview__content-iframe .block-editor-block-list__layout.is-root-container .ext.block-editor-block-list__block{max-width:none!important}.extendify .block-editor-block-preview__container{-webkit-animation:extendifyOpacityIn .2s cubic-bezier(.694,0,.335,1) 0ms forwards;animation:extendifyOpacityIn .2s cubic-bezier(.694,0,.335,1) 0ms forwards;opacity:0}.extendify .is-root-container>[data-align=full],.extendify .is-root-container>[data-align=full]>.wp-block,.extendify .is-root-container>[data-block]{margin-bottom:0!important;margin-top:0!important}.editor-styles-wrapper:not(.block-editor-writing-flow)>.is-root-container :where(.wp-block)[data-align=full]{margin-bottom:0!important;margin-top:0!important}@-webkit-keyframes extendifyOpacityIn{0%{opacity:0}to{opacity:1}}@keyframes extendifyOpacityIn{0%{opacity:0}to{opacity:1}}.extendify .with-light-shadow:after{--tw-shadow:inset 0 0 0 1px rgba(0,0,0,.1),0 3px 15px -3px rgba(0,0,0,.035),0 0 1px rgba(0,0,0,.025)!important;border-width:0!important;bottom:0!important;content:""!important;left:0!important;position:absolute!important;right:0!important;top:0!important}.extendify .with-light-shadow:after,.extendify .with-light-shadow:hover:after{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.extendify .with-light-shadow:hover:after{--tw-shadow:inset 0 0 0 1px rgba(0,0,0,.2),0 3px 15px -3px rgba(0,0,0,.025),0 0 1px rgba(0,0,0,.02)!important}@supports not (((-webkit-backdrop-filter:saturate(2) blur(24px)) or (backdrop-filter:saturate(2) blur(24px)))){div.extendify .bg-extendify-transparent-white{--tw-bg-opacity:1!important;background-color:rgba(240,240,240,var(--tw-bg-opacity))!important}}.components-panel__body.ext-type-control .components-panel__body-toggle{padding-left:0!important;padding-right:0!important}.components-panel__body.ext-type-control .components-panel__body-title{border-bottom-width:0!important;margin:0!important;padding-left:1.25rem!important;padding-right:1.25rem!important}.components-panel__body.ext-type-control .components-panel__body-title .components-button{--tw-text-opacity:1!important;border-bottom-width:0!important;color:rgba(95,95,95,var(--tw-text-opacity))!important;font-size:11px!important;font-weight:500!important;margin:0!important;padding-bottom:.5rem!important;padding-top:.5rem!important;text-transform:uppercase!important}.components-panel__body.ext-type-control .components-button .components-panel__arrow{--tw-text-opacity:1!important;color:rgba(95,95,95,var(--tw-text-opacity))!important;right:0!important}.extendify .animate-pulse{-webkit-animation:extendifyPulse 3s cubic-bezier(.4,0,.6,1) infinite;animation:extendifyPulse 3s cubic-bezier(.4,0,.6,1) infinite}@-webkit-keyframes extendifyPulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes extendifyPulse{0%,to{opacity:1}50%{opacity:.5}}.is-template--in-review:before,.is-template--inactive:before{--tw-border-opacity:1!important;border:8px solid rgba(203,195,245,var(--tw-border-opacity))!important;bottom:0!important;content:""!important;height:100%!important;left:0!important;position:absolute!important;right:0!important;top:0!important;width:100%!important;z-index:40!important}.is-template--inactive:before{border-color:#fdeab6!important}.extendify-tooltip-default:not(.is-without-arrow)[data-y-axis=bottom]:after{border-bottom-color:#1e1e1e!important}.extendify-tooltip-default:not(.is-without-arrow):before{border-color:transparent!important}.extendify-tooltip-default:not(.is-without-arrow) .components-popover__content{--tw-bg-opacity:1!important;--tw-text-opacity:1!important;background-color:rgba(30,30,30,var(--tw-bg-opacity))!important;border-color:transparent!important;color:rgba(255,255,255,var(--tw-text-opacity))!important;min-width:250px!important;padding:1rem!important}.extendify-bottom-arrow:after{--tw-translate-x:0!important;--tw-translate-y:0!important;--tw-rotate:0!important;--tw-skew-x:0!important;--tw-skew-y:0!important;--tw-scale-x:1!important;--tw-scale-y:1!important;--tw-translate-y:-1px!important;border-color:#1e1e1e transparent transparent!important;border-width:8px!important;bottom:-15px!important;content:""!important;display:inline-block!important;height:0!important;position:absolute!important;transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important;width:0!important}@media (min-width:600px){div.extendify .sm\:mx-0{margin-left:0!important;margin-right:0!important}div.extendify .sm\:mt-0{margin-top:0!important}div.extendify .sm\:mb-8{margin-bottom:2rem!important}div.extendify .sm\:block{display:block!important}div.extendify .sm\:flex{display:flex!important}div.extendify .sm\:h-auto{height:auto!important}div.extendify .sm\:w-72{width:18rem!important}div.extendify .sm\:w-auto{width:auto!important}div.extendify .sm\:translate-y-5{--tw-translate-y:1.25rem!important}div.extendify .sm\:space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0!important;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))!important;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))!important}div.extendify .sm\:p-0{padding:0!important}div.extendify .sm\:py-0{padding-bottom:0!important;padding-top:0!important}div.extendify .sm\:py-5{padding-bottom:1.25rem!important;padding-top:1.25rem!important}div.extendify .sm\:pt-0{padding-top:0!important}}@media (min-width:782px){div.extendify .md\:m-0{margin:0!important}div.extendify .md\:-ml-8{margin-left:-2rem!important}div.extendify .md\:block{display:block!important}div.extendify .md\:flex{display:flex!important}div.extendify .md\:hidden{display:none!important}div.extendify .md\:max-w-2xl{max-width:42rem!important}div.extendify .md\:gap-8{gap:2rem!important}div.extendify .md\:space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0!important;margin-bottom:calc(2rem*var(--tw-space-y-reverse))!important;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)))!important}div.extendify .md\:p-8{padding:2rem!important}div.extendify .md\:px-8{padding-right:2rem!important}div.extendify .md\:pl-8,div.extendify .md\:px-8{padding-left:2rem!important}}@media (min-width:1080px){div.extendify .lg\:absolute{position:absolute!important}div.extendify .lg\:block{display:block!important}div.extendify .lg\:flex{display:flex!important}div.extendify .lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}div.extendify .lg\:overflow-hidden{overflow:hidden!important}div.extendify .lg\:p-16{padding:4rem!important}}
extendify-sdk/public/build/extendify.js CHANGED
@@ -1,2 +1,2 @@
1
  /*! For license information please see extendify.js.LICENSE.txt */
2
- (()=>{var e,t={135:(e,t,n)=>{e.exports=n(248)},206:(e,t,n)=>{e.exports=n(57)},387:(e,t,n)=>{"use strict";var r=n(485),o=n(570),i=n(940),a=n(581),s=n(574),l=n(845),c=n(338),u=n(524),d=n(141),f=n(132);e.exports=function(e){return new Promise((function(t,n){var p,h=e.data,m=e.headers,x=e.responseType;function y(){e.cancelToken&&e.cancelToken.unsubscribe(p),e.signal&&e.signal.removeEventListener("abort",p)}r.isFormData(h)&&delete m["Content-Type"];var v=new XMLHttpRequest;if(e.auth){var g=e.auth.username||"",b=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";m.Authorization="Basic "+btoa(g+":"+b)}var w=s(e.baseURL,e.url);function j(){if(v){var r="getAllResponseHeaders"in v?l(v.getAllResponseHeaders()):null,i={data:x&&"text"!==x&&"json"!==x?v.response:v.responseText,status:v.status,statusText:v.statusText,headers:r,config:e,request:v};o((function(e){t(e),y()}),(function(e){n(e),y()}),i),v=null}}if(v.open(e.method.toUpperCase(),a(w,e.params,e.paramsSerializer),!0),v.timeout=e.timeout,"onloadend"in v?v.onloadend=j:v.onreadystatechange=function(){v&&4===v.readyState&&(0!==v.status||v.responseURL&&0===v.responseURL.indexOf("file:"))&&setTimeout(j)},v.onabort=function(){v&&(n(u("Request aborted",e,"ECONNABORTED",v)),v=null)},v.onerror=function(){n(u("Network Error",e,null,v)),v=null},v.ontimeout=function(){var t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",r=e.transitional||d.transitional;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(u(t,e,r.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",v)),v=null},r.isStandardBrowserEnv()){var k=(e.withCredentials||c(w))&&e.xsrfCookieName?i.read(e.xsrfCookieName):void 0;k&&(m[e.xsrfHeaderName]=k)}"setRequestHeader"in v&&r.forEach(m,(function(e,t){void 0===h&&"content-type"===t.toLowerCase()?delete m[t]:v.setRequestHeader(t,e)})),r.isUndefined(e.withCredentials)||(v.withCredentials=!!e.withCredentials),x&&"json"!==x&&(v.responseType=e.responseType),"function"==typeof e.onDownloadProgress&&v.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&v.upload&&v.upload.addEventListener("progress",e.onUploadProgress),(e.cancelToken||e.signal)&&(p=function(e){v&&(n(!e||e&&e.type?new f("canceled"):e),v.abort(),v=null)},e.cancelToken&&e.cancelToken.subscribe(p),e.signal&&(e.signal.aborted?p():e.signal.addEventListener("abort",p))),h||(h=null),v.send(h)}))}},57:(e,t,n)=>{"use strict";var r=n(485),o=n(875),i=n(29),a=n(941);var s=function e(t){var n=new i(t),s=o(i.prototype.request,n);return r.extend(s,i.prototype,n),r.extend(s,n),s.create=function(n){return e(a(t,n))},s}(n(141));s.Axios=i,s.Cancel=n(132),s.CancelToken=n(603),s.isCancel=n(475),s.VERSION=n(345).version,s.all=function(e){return Promise.all(e)},s.spread=n(739),s.isAxiosError=n(835),e.exports=s,e.exports.default=s},132: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},603:(e,t,n)=>{"use strict";var r=n(132);function o(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var n=this;this.promise.then((function(e){if(n._listeners){var t,r=n._listeners.length;for(t=0;t<r;t++)n._listeners[t](e);n._listeners=null}})),this.promise.then=function(e){var t,r=new Promise((function(e){n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e){n.reason||(n.reason=new r(e),t(n.reason))}))}o.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},o.prototype.subscribe=function(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]},o.prototype.unsubscribe=function(e){if(this._listeners){var t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}},o.source=function(){var e;return{token:new o((function(t){e=t})),cancel:e}},e.exports=o},475:e=>{"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},29:(e,t,n)=>{"use strict";var r=n(485),o=n(581),i=n(96),a=n(9),s=n(941),l=n(144),c=l.validators;function u(e){this.defaults=e,this.interceptors={request:new i,response:new i}}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=e.transitional;void 0!==t&&l.assertOptions(t,{silentJSONParsing:c.transitional(c.boolean),forcedJSONParsing:c.transitional(c.boolean),clarifyTimeoutError:c.transitional(c.boolean)},!1);var n=[],r=!0;this.interceptors.request.forEach((function(t){"function"==typeof t.runWhen&&!1===t.runWhen(e)||(r=r&&t.synchronous,n.unshift(t.fulfilled,t.rejected))}));var o,i=[];if(this.interceptors.response.forEach((function(e){i.push(e.fulfilled,e.rejected)})),!r){var u=[a,void 0];for(Array.prototype.unshift.apply(u,n),u=u.concat(i),o=Promise.resolve(e);u.length;)o=o.then(u.shift(),u.shift());return o}for(var d=e;n.length;){var f=n.shift(),p=n.shift();try{d=f(d)}catch(e){p(e);break}}try{o=a(d)}catch(e){return Promise.reject(e)}for(;i.length;)o=o.then(i.shift(),i.shift());return o},u.prototype.getUri=function(e){return e=s(this.defaults,e),o(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function(e){u.prototype[e]=function(t,n){return this.request(s(n||{},{method:e,url:t,data:(n||{}).data}))}})),r.forEach(["post","put","patch"],(function(e){u.prototype[e]=function(t,n,r){return this.request(s(r||{},{method:e,url:t,data:n}))}})),e.exports=u},96:(e,t,n)=>{"use strict";var r=n(485);function o(){this.handlers=[]}o.prototype.use=function(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1},o.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},o.prototype.forEach=function(e){r.forEach(this.handlers,(function(t){null!==t&&e(t)}))},e.exports=o},574:(e,t,n)=>{"use strict";var r=n(642),o=n(288);e.exports=function(e,t){return e&&!r(t)?o(e,t):t}},524:(e,t,n)=>{"use strict";var r=n(953);e.exports=function(e,t,n,o,i){var a=new Error(e);return r(a,t,n,o,i)}},9:(e,t,n)=>{"use strict";var r=n(485),o=n(212),i=n(475),a=n(141),s=n(132);function l(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new s("canceled")}e.exports=function(e){return l(e),e.headers=e.headers||{},e.data=o.call(e,e.data,e.headers,e.transformRequest),e.headers=r.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]})),(e.adapter||a.adapter)(e).then((function(t){return l(e),t.data=o.call(e,t.data,t.headers,e.transformResponse),t}),(function(t){return i(t)||(l(e),t&&t.response&&(t.response.data=o.call(e,t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},953:e=>{"use strict";e.exports=function(e,t,n,r,o){return e.config=t,n&&(e.code=n),e.request=r,e.response=o,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,status:this.response&&this.response.status?this.response.status:null}},e}},941:(e,t,n)=>{"use strict";var r=n(485);e.exports=function(e,t){t=t||{};var n={};function o(e,t){return r.isPlainObject(e)&&r.isPlainObject(t)?r.merge(e,t):r.isPlainObject(t)?r.merge({},t):r.isArray(t)?t.slice():t}function i(n){return r.isUndefined(t[n])?r.isUndefined(e[n])?void 0:o(void 0,e[n]):o(e[n],t[n])}function a(e){if(!r.isUndefined(t[e]))return o(void 0,t[e])}function s(n){return r.isUndefined(t[n])?r.isUndefined(e[n])?void 0:o(void 0,e[n]):o(void 0,t[n])}function l(n){return n in t?o(e[n],t[n]):n in e?o(void 0,e[n]):void 0}var c={url:a,method:a,data:a,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:l};return r.forEach(Object.keys(e).concat(Object.keys(t)),(function(e){var t=c[e]||i,o=t(e);r.isUndefined(o)&&t!==l||(n[e]=o)})),n}},570:(e,t,n)=>{"use strict";var r=n(524);e.exports=function(e,t,n){var o=n.config.validateStatus;n.status&&o&&!o(n.status)?t(r("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}},212:(e,t,n)=>{"use strict";var r=n(485),o=n(141);e.exports=function(e,t,n){var i=this||o;return r.forEach(n,(function(n){e=n.call(i,e,t)})),e}},141:(e,t,n)=>{"use strict";var r=n(61),o=n(485),i=n(446),a=n(953),s={"Content-Type":"application/x-www-form-urlencoded"};function l(e,t){!o.isUndefined(e)&&o.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var c,u={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:(("undefined"!=typeof XMLHttpRequest||void 0!==r&&"[object process]"===Object.prototype.toString.call(r))&&(c=n(387)),c),transformRequest:[function(e,t){return i(t,"Accept"),i(t,"Content-Type"),o.isFormData(e)||o.isArrayBuffer(e)||o.isBuffer(e)||o.isStream(e)||o.isFile(e)||o.isBlob(e)?e:o.isArrayBufferView(e)?e.buffer:o.isURLSearchParams(e)?(l(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):o.isObject(e)||t&&"application/json"===t["Content-Type"]?(l(t,"application/json"),function(e,t,n){if(o.isString(e))try{return(t||JSON.parse)(e),o.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){var t=this.transitional||u.transitional,n=t&&t.silentJSONParsing,r=t&&t.forcedJSONParsing,i=!n&&"json"===this.responseType;if(i||r&&o.isString(e)&&e.length)try{return JSON.parse(e)}catch(e){if(i){if("SyntaxError"===e.name)throw a(e,this,"E_JSON_PARSE");throw 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, */*"}}};o.forEach(["delete","get","head"],(function(e){u.headers[e]={}})),o.forEach(["post","put","patch"],(function(e){u.headers[e]=o.merge(s)})),e.exports=u},345:e=>{e.exports={version:"0.24.0"}},875:e=>{"use strict";e.exports=function(e,t){return function(){for(var n=new Array(arguments.length),r=0;r<n.length;r++)n[r]=arguments[r];return e.apply(t,n)}}},581:(e,t,n)=>{"use strict";var r=n(485);function o(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,n){if(!t)return e;var i;if(n)i=n(t);else if(r.isURLSearchParams(t))i=t.toString();else{var a=[];r.forEach(t,(function(e,t){null!=e&&(r.isArray(e)?t+="[]":e=[e],r.forEach(e,(function(e){r.isDate(e)?e=e.toISOString():r.isObject(e)&&(e=JSON.stringify(e)),a.push(o(t)+"="+o(e))})))})),i=a.join("&")}if(i){var s=e.indexOf("#");-1!==s&&(e=e.slice(0,s)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}},288:e=>{"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},940:(e,t,n)=>{"use strict";var r=n(485);e.exports=r.isStandardBrowserEnv()?{write:function(e,t,n,o,i,a){var s=[];s.push(e+"="+encodeURIComponent(t)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(o)&&s.push("path="+o),r.isString(i)&&s.push("domain="+i),!0===a&&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(){}}},642:e=>{"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},835:e=>{"use strict";e.exports=function(e){return"object"==typeof e&&!0===e.isAxiosError}},338:(e,t,n)=>{"use strict";var r=n(485);e.exports=r.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function o(e){var r=e;return t&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=o(window.location.href),function(t){var n=r.isString(t)?o(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return!0}},446:(e,t,n)=>{"use strict";var r=n(485);e.exports=function(e,t){r.forEach(e,(function(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])}))}},845:(e,t,n)=>{"use strict";var r=n(485),o=["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,n,i,a={};return e?(r.forEach(e.split("\n"),(function(e){if(i=e.indexOf(":"),t=r.trim(e.substr(0,i)).toLowerCase(),n=r.trim(e.substr(i+1)),t){if(a[t]&&o.indexOf(t)>=0)return;a[t]="set-cookie"===t?(a[t]?a[t]:[]).concat([n]):a[t]?a[t]+", "+n:n}})),a):a}},739:e=>{"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},144:(e,t,n)=>{"use strict";var r=n(345).version,o={};["object","boolean","number","function","string","symbol"].forEach((function(e,t){o[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));var i={};o.transitional=function(e,t,n){function o(e,t){return"[Axios v"+r+"] Transitional option '"+e+"'"+t+(n?". "+n:"")}return function(n,r,a){if(!1===e)throw new Error(o(r," has been removed"+(t?" in "+t:"")));return t&&!i[r]&&(i[r]=!0,console.warn(o(r," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,r,a)}},e.exports={assertOptions:function(e,t,n){if("object"!=typeof e)throw new TypeError("options must be an object");for(var r=Object.keys(e),o=r.length;o-- >0;){var i=r[o],a=t[i];if(a){var s=e[i],l=void 0===s||a(s,i,e);if(!0!==l)throw new TypeError("option "+i+" must be "+l)}else if(!0!==n)throw Error("Unknown option "+i)}},validators:o}},485:(e,t,n)=>{"use strict";var r=n(875),o=Object.prototype.toString;function i(e){return"[object Array]"===o.call(e)}function a(e){return void 0===e}function s(e){return null!==e&&"object"==typeof e}function l(e){if("[object Object]"!==o.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function c(e){return"[object Function]"===o.call(e)}function u(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),i(e))for(var n=0,r=e.length;n<r;n++)t.call(null,e[n],n,e);else for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.call(null,e[o],o,e)}e.exports={isArray:i,isArrayBuffer:function(e){return"[object ArrayBuffer]"===o.call(e)},isBuffer:function(e){return null!==e&&!a(e)&&null!==e.constructor&&!a(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:l,isUndefined:a,isDate:function(e){return"[object Date]"===o.call(e)},isFile:function(e){return"[object File]"===o.call(e)},isBlob:function(e){return"[object Blob]"===o.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:u,merge:function e(){var t={};function n(n,r){l(t[r])&&l(n)?t[r]=e(t[r],n):l(n)?t[r]=e({},n):i(n)?t[r]=n.slice():t[r]=n}for(var r=0,o=arguments.length;r<o;r++)u(arguments[r],n);return t},extend:function(e,t,n){return u(t,(function(t,o){e[o]=n&&"function"==typeof t?r(t,n):t})),e},trim:function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")},stripBOM:function(e){return 65279===e.charCodeAt(0)&&(e=e.slice(1)),e}}},147:(e,t,n)=>{"use strict";const r=wp.element;var o=n(363),i=n.n(o);function a(e){let t;const n=new Set,r=(e,r)=>{const o="function"==typeof e?e(t):e;if(o!==t){const e=t;t=r?o:Object.assign({},t,o),n.forEach((n=>n(t,e)))}},o=()=>t,i={setState:r,getState:o,subscribe:(e,r,i)=>r||i?((e,r=o,i=Object.is)=>{console.warn("[DEPRECATED] Please use `subscribeWithSelector` middleware");let a=r(t);function s(){const n=r(t);if(!i(a,n)){const t=a;e(a=n,t)}}return n.add(s),()=>n.delete(s)})(e,r,i):(n.add(e),()=>n.delete(e)),destroy:()=>n.clear()};return t=e(r,o,i),i}const s="undefined"==typeof window||!window.navigator||/ServerSideRendering|^Deno\//.test(window.navigator.userAgent)?o.useEffect:o.useLayoutEffect;function l(e){const t="function"==typeof e?a(e):e,n=(e=t.getState,n=Object.is)=>{const[,r]=(0,o.useReducer)((e=>e+1),0),i=t.getState(),a=(0,o.useRef)(i),l=(0,o.useRef)(e),c=(0,o.useRef)(n),u=(0,o.useRef)(!1),d=(0,o.useRef)();let f;void 0===d.current&&(d.current=e(i));let p=!1;(a.current!==i||l.current!==e||c.current!==n||u.current)&&(f=e(i),p=!n(d.current,f)),s((()=>{p&&(d.current=f),a.current=i,l.current=e,c.current=n,u.current=!1}));const h=(0,o.useRef)(i);s((()=>{const e=()=>{try{const e=t.getState(),n=l.current(e);c.current(d.current,n)||(a.current=e,d.current=n,r())}catch(e){u.current=!0,r()}},n=t.subscribe(e);return t.getState()!==h.current&&e(),n}),[]);const m=p?f:d.current;return(0,o.useDebugValue)(m),m};return Object.assign(n,t),n[Symbol.iterator]=function(){console.warn("[useStore, api] = create() is deprecated and will be removed in v4");const e=[n,t];return{next(){const t=e.length<=0;return{value:e.shift(),done:t}}}},n}Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;var c=Object.defineProperty,u=Object.getOwnPropertySymbols,d=Object.prototype.hasOwnProperty,f=Object.prototype.propertyIsEnumerable,p=(e,t,n)=>t in e?c(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,h=(e,t)=>{for(var n in t||(t={}))d.call(t,n)&&p(e,n,t[n]);if(u)for(var n of u(t))f.call(t,n)&&p(e,n,t[n]);return e};const m=e=>t=>{try{const n=e(t);return n instanceof Promise?n:{then:e=>m(e)(n),catch(e){return this}}}catch(e){return{then(e){return this},catch:t=>m(t)(e)}}},x=(e,t)=>(n,r,o)=>{let i=h({getStorage:()=>localStorage,serialize:JSON.stringify,deserialize:JSON.parse,partialize:e=>e,version:0,merge:(e,t)=>h(h({},t),e)},t);(i.blacklist||i.whitelist)&&console.warn(`The ${i.blacklist?"blacklist":"whitelist"} option is deprecated and will be removed in the next version. Please use the 'partialize' option instead.`);let a=!1;const s=new Set,l=new Set;let c;try{c=i.getStorage()}catch(e){}if(!c)return e(((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${i.name}', the given storage is currently unavailable.`),n(...e)}),r,o);c.removeItem||console.warn(`[zustand persist middleware] The given storage for item '${i.name}' does not contain a 'removeItem' method, which will be required in v4.`);const u=m(i.serialize),d=()=>{const e=i.partialize(h({},r()));let t;i.whitelist&&Object.keys(e).forEach((t=>{var n;!(null==(n=i.whitelist)?void 0:n.includes(t))&&delete e[t]})),i.blacklist&&i.blacklist.forEach((t=>delete e[t]));const n=u({state:e,version:i.version}).then((e=>c.setItem(i.name,e))).catch((e=>{t=e}));if(t)throw t;return n},f=o.setState;o.setState=(e,t)=>{f(e,t),d()};const p=e(((...e)=>{n(...e),d()}),r,o);let x;const y=()=>{var e;if(!c)return;a=!1,s.forEach((e=>e(r())));const t=(null==(e=i.onRehydrateStorage)?void 0:e.call(i,r()))||void 0;return m(c.getItem.bind(c))(i.name).then((e=>{if(e)return i.deserialize(e)})).then((e=>{if(e){if("number"!=typeof e.version||e.version===i.version)return e.state;if(i.migrate)return i.migrate(e.state,e.version);console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}})).then((e=>(x=i.merge(e,p),n(x,!0),d()))).then((()=>{null==t||t(x,void 0),a=!0,l.forEach((e=>e(x)))})).catch((e=>{null==t||t(void 0,e)}))};return o.persist={setOptions:e=>{i=h(h({},i),e),e.getStorage&&(c=e.getStorage())},clearStorage:()=>{var e;null==(e=null==c?void 0:c.removeItem)||e.call(c,i.name)},rehydrate:()=>y(),hasHydrated:()=>a,onHydrate:e=>(s.add(e),()=>{s.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},y(),x||p};function y(e){return function(e){if(Array.isArray(e))return v(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return v(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return v(e,t)}(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 v(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var g=l(x((function(e,t){return{open:!1,metaData:{},currentTaxonomies:{},currentType:"pattern",modals:[],pushModal:function(n){return e({modals:[n].concat(y(t().modals))})},popModal:function(){return e({modals:t().modals.slice(1)})},removeAllModals:function(){return e({modals:[]})},updateCurrentTaxonomies:function(t){return e({currentTaxonomies:Object.assign({},t)})},updateCurrentType:function(t){return e({currentType:t})},setOpen:function(t){e({open:t})}}}),{name:"extendify-global-state",partialize:function(e){return delete e.modals,e}})),b=n(135),w=n.n(b),j=n(206),k=n.n(j)().create({baseURL:window.extendifyData.root,headers:{"X-WP-Nonce":window.extendifyData.nonce,"X-Requested-With":"XMLHttpRequest","X-Extendify":!0}});function C(e){return Object.prototype.hasOwnProperty.call(e,"data")?e.data:e}k.interceptors.response.use((function(e){return function(e){return Object.prototype.hasOwnProperty.call(e,"soft_error")&&window.dispatchEvent(new CustomEvent("extendify::softerror-encountered",{detail:e.soft_error,bubbles:!0})),e}(C(e))}),(function(e){return function(e){if(e.response)return console.error(e.response),Promise.reject(C(e.response))}(e)})),k.interceptors.request.use((function(e){return function(e){return e.headers["X-Extendify-Dev-Mode"]=window.location.search.indexOf("DEVMODE")>-1,e.headers["X-Extendify-Local-Mode"]=window.location.search.indexOf("LOCALMODE")>-1,e}(function(e){var t=z.getState(),n=t.apiKey?"unlimited":t.remainingImports();return e.data&&(e.data.remaining_imports=n,e.data.entry_point=z.getState().entryPoint,e.data.total_imports=z.getState().imports),e}(e))}),(function(e){return e}));var S=function(){return k.get("user")},O=function(e,t){var n=new FormData;return n.append("email",e),n.append("key",t),k.post("login",n,{headers:{"Content-Type":"multipart/form-data"}})},E=function(e){var t=new FormData;return t.append("data",JSON.stringify(e)),k.post("user",t,{headers:{"Content-Type":"multipart/form-data"}})},_=function(){return k.get("max-free-imports")};function N(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function A(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?N(Object(n),!0).forEach((function(t){P(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):N(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function P(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function T(e){return function(e){if(Array.isArray(e))return I(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return I(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return I(e,t)}(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 I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function L(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function M(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){L(i,r,o,a,s,"next",e)}function s(e){L(i,r,o,a,s,"throw",e)}a(void 0)}))}}var R,D,F={getItem:(D=M(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,S();case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),function(){return D.apply(this,arguments)}),setItem:(R=M(w().mark((function e(t,n){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,E(n);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),function(e,t){return R.apply(this,arguments)}),removeItem:function(){}},B=function(){var e,t,n;return null===window.extendifyData.sitesettings||(null===(e=window.extendifyData)||void 0===e||null===(t=e.sitesettings)||void 0===t||null===(n=t.state)||void 0===n?void 0:n.enabled)},z=l(x((function(e,t){return{firstLoadedOn:(new Date).toISOString(),email:"",apiKey:"",uuid:"",sdkPartner:"",noticesDismissedAt:{},modalNoticesDismissedAt:{},imports:0,runningImports:0,allowedImports:0,freebieImports:0,entryPoint:"not-set",enabled:B(),canInstallPlugins:!1,canActivatePlugins:!1,preferredOptions:{taxonomies:{},type:"",search:""},preferredOptionsHistory:{siteType:[]},incrementImports:function(){var n=Number(t().freebieImports)>0?Number(t().freebieImports)-1:Number(t().freebieImports),r=Number(t().runningImports)+ +(n<1);e({imports:Number(t().imports)+1,runningImports:r,freebieImports:n})},giveFreebieImports:function(n){e({freebieImports:t().freebieImports+n})},totalAvailableImports:function(){return Number(t().allowedImports)+Number(t().freebieImports)},hasAvailableImports:function(){return!!t().apiKey||Number(t().runningImports)<Number(t().totalAvailableImports())},remainingImports:function(){var e=Number(t().totalAvailableImports())-Number(t().runningImports);return t().allowedImports?e>0?e:0:null},updatePreferredSiteType:function(n){var r,o;if(t().updatePreferredOption("siteType",n),null!=n&&n.slug&&"unknown"!==n.slug){var i=null!==(r=null===(o=t().preferredOptionsHistory)||void 0===o?void 0:o.siteType)&&void 0!==r?r:[];if(!i.find((function(e){return e.slug===n.slug}))){var a=[n].concat(T(i));e({preferredOptionsHistory:Object.assign({},t().preferredOptionsHistory,{siteType:a.slice(0,3)})})}}},updatePreferredOption:function(n,r){var o,i;Object.prototype.hasOwnProperty.call(t().preferredOptions,n)||(r=Object.assign({},null!==(o=null===(i=t().preferredOptions)||void 0===i?void 0:i.taxonomies)&&void 0!==o?o:{},P({},n,r)),n="taxonomies");e({preferredOptions:A({},Object.assign({},t().preferredOptions,P({},n,r)))})},markNoticeSeen:function(n,r){e(P({},"".concat(r,"DismissedAt"),A(A({},t()["".concat(r,"DismissedAt")]),{},P({},n,(new Date).toISOString()))))}}}),{name:"extendify-user",getStorage:function(){return F}})),U=l(x((function(e){return{taxonomies:{},setTaxonomies:function(t){return e({taxonomies:t})}}}),{name:"extendify-taxonomies"}));function W(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function q(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?W(Object(n),!0).forEach((function(t){$(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):W(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function $(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function H(e){return function(e){if(Array.isArray(e))return V(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return V(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return V(e,t)}(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 V(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var G,J,K=l((function(e,t){return{templates:[],skipNextFetch:!1,fetchToken:null,taxonomyDefaultState:{},nextPage:"",searchParams:{taxonomies:{},type:"pattern"},initTemplateData:function(){e({activeTemplate:{}}),t().setupDefaultTaxonomies(),t().updateType(g.getState().currentType)},appendTemplates:function(n){return e({templates:H(new Map([].concat(H(t().templates),H(n)).map((function(e){return[e.id,e]}))).values())})},setupDefaultTaxonomies:function(){var n,r,o,i,a=U.getState().taxonomies,s=Object.entries(a).reduce((function(e,t){return e[t[0]]=function(e){return"siteType"===e?{slug:"",title:"Unknown"}:{slug:"",title:"Featured"}}(t[0]),e}),{}),l={},c=null!==(n=null===(r=z.getState().preferredOptions)||void 0===r?void 0:r.taxonomies)&&void 0!==n?n:{};c.tax_categories&&(c=t().getLegacySiteType(c,a)),s=Object.assign({},s,c,null!==(o=null===(i=g.getState())||void 0===i?void 0:i.currentTaxonomies)&&void 0!==o?o:{}),l.taxonomies=Object.assign({},s),e({taxonomyDefaultState:s,searchParams:q({},Object.assign(t().searchParams,l))})},updateTaxonomies:function(e){var n,r,o={};(o.taxonomies=Object.assign({},t().searchParams.taxonomies,e),null!=o&&null!==(n=o.taxonomies)&&void 0!==n&&n.siteType)&&z.getState().updatePreferredOption("siteType",null==o||null===(r=o.taxonomies)||void 0===r?void 0:r.siteType);g.getState().updateCurrentTaxonomies(null==o?void 0:o.taxonomies),t().updateSearchParams(o)},updateType:function(e){g.getState().updateCurrentType(e),t().updateSearchParams({type:e})},updateSearchParams:function(n){null!=n&&n.taxonomies&&!Object.keys(n.taxonomies).length&&(n.taxonomies=t().taxonomyDefaultState);var r=Object.assign({},t().searchParams,n);JSON.stringify(r)!==JSON.stringify(t().searchParams)&&e({templates:[],nextPage:"",searchParams:r})},resetTemplates:function(){return e({templates:[],nextPage:""})},getLegacySiteType:function(e,n){var r=n.siteType.find((function(t){return[t.slug,null==t?void 0:t.title].includes(e.tax_categories)}));return z.getState().updatePreferredSiteType(r),t().updateTaxonomies({siteType:r}),z.getState().updatePreferredOption("tax_categories",null),z.getState().preferredOptions.taxonomies}}}));function Z(){return Z=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Z.apply(this,arguments)}function X(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}function Y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Q(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return Y(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Y(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0;return function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function ee(e,t){if(e in t){for(var n=t[e],r=arguments.length,o=new Array(r>2?r-2:0),i=2;i<r;i++)o[i-2]=arguments[i];return"function"==typeof n?n.apply(void 0,o):n}var a=new Error('Tried to handle "'+e+'" but there is no handler defined. Only defined handlers are: '+Object.keys(t).map((function(e){return'"'+e+'"'})).join(", ")+".");throw Error.captureStackTrace&&Error.captureStackTrace(a,ee),a}function te(e){var t=e.props,n=e.slot,r=e.defaultTag,o=e.features,i=e.visible,a=void 0===i||i,s=e.name;if(a)return ne(t,n,r,s);var l=null!=o?o:G.None;if(l&G.Static){var c=t.static,u=void 0!==c&&c,d=X(t,["static"]);if(u)return ne(d,n,r,s)}if(l&G.RenderStrategy){var f,p=t.unmount,h=void 0===p||p,m=X(t,["unmount"]);return ee(h?J.Unmount:J.Hidden,((f={})[J.Unmount]=function(){return null},f[J.Hidden]=function(){return ne(Z({},m,{hidden:!0,style:{display:"none"}}),n,r,s)},f))}return ne(t,n,r,s)}function ne(e,t,n,r){var i;void 0===t&&(t={});var a=oe(e,["unmount","static"]),s=a.as,l=void 0===s?n:s,c=a.children,u=a.refName,d=void 0===u?"ref":u,f=X(a,["as","children","refName"]),p=void 0!==e.ref?((i={})[d]=e.ref,i):{},h="function"==typeof c?c(t):c;if(f.className&&"function"==typeof f.className&&(f.className=f.className(t)),l===o.Fragment&&Object.keys(f).length>0){if(!(0,o.isValidElement)(h)||Array.isArray(h)&&h.length>1)throw new Error(['Passing props on "Fragment"!',"","The current component <"+r+' /> is rendering a "Fragment".',"However we need to passthrough the following props:",Object.keys(f).map((function(e){return" - "+e})).join("\n"),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "Fragment".',"Render a single element as the child so that we can forward the props onto that element."].map((function(e){return" - "+e})).join("\n")].join("\n"));return(0,o.cloneElement)(h,Object.assign({},function(e,t,n){for(var r,o=Object.assign({},e),i=function(){var n,i=r.value;void 0!==e[i]&&void 0!==t[i]&&Object.assign(o,((n={})[i]=function(n){n.defaultPrevented||e[i](n),n.defaultPrevented||t[i](n)},n))},a=Q(n);!(r=a()).done;)i();return o}(function(e){var t=Object.assign({},e);for(var n in t)void 0===t[n]&&delete t[n];return t}(oe(f,["ref"])),h.props,["onClick"]),p))}return(0,o.createElement)(l,Object.assign({},oe(f,["ref"]),l!==o.Fragment&&p),h)}function re(e){var t;return Object.assign((0,o.forwardRef)(e),{displayName:null!=(t=e.displayName)?t:e.name})}function oe(e,t){void 0===t&&(t=[]);for(var n,r=Object.assign({},e),o=Q(t);!(n=o()).done;){var i=n.value;i in r&&delete r[i]}return r}!function(e){e[e.None=0]="None",e[e.RenderStrategy=1]="RenderStrategy",e[e.Static=2]="Static"}(G||(G={})),function(e){e[e.Unmount=0]="Unmount",e[e.Hidden=1]="Hidden"}(J||(J={}));var ie="undefined"!=typeof window?o.useLayoutEffect:o.useEffect,ae={serverHandoffComplete:!1};function se(){var e=(0,o.useState)(ae.serverHandoffComplete),t=e[0],n=e[1];return(0,o.useEffect)((function(){!0!==t&&n(!0)}),[t]),(0,o.useEffect)((function(){!1===ae.serverHandoffComplete&&(ae.serverHandoffComplete=!0)}),[]),t}var le=0;function ce(){return++le}function ue(){var e=se(),t=(0,o.useState)(e?ce:null),n=t[0],r=t[1];return ie((function(){null===n&&r(ce())}),[n]),null!=n?""+n:void 0}function de(){var e=(0,o.useRef)(!1);return(0,o.useEffect)((function(){return e.current=!0,function(){e.current=!1}}),[]),e}var fe,pe,he=(0,o.createContext)(null);function me(){return(0,o.useContext)(he)}function xe(e){var t=e.value,n=e.children;return i().createElement(he.Provider,{value:t},n)}function ye(){var e=[],t={requestAnimationFrame:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(){var e=requestAnimationFrame.apply(void 0,arguments);t.add((function(){return cancelAnimationFrame(e)}))})),nextFrame:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];t.requestAnimationFrame((function(){t.requestAnimationFrame.apply(t,n)}))},setTimeout:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(){var e=setTimeout.apply(void 0,arguments);t.add((function(){return clearTimeout(e)}))})),add:function(t){e.push(t)},dispose:function(){for(var t,n=Q(e.splice(0));!(t=n()).done;){var r=t.value;r()}}};return t}function ve(e){for(var t,n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];e&&r.length>0&&(t=e.classList).add.apply(t,r)}function ge(e){for(var t,n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];e&&r.length>0&&(t=e.classList).remove.apply(t,r)}function be(e,t,n,r,o,i){var a=ye(),s=void 0!==i?function(e){var t={called:!1};return function(){if(!t.called)return t.called=!0,e.apply(void 0,arguments)}}(i):function(){};return ge.apply(void 0,[e].concat(o)),ve.apply(void 0,[e].concat(t,n)),a.nextFrame((function(){ge.apply(void 0,[e].concat(n)),ve.apply(void 0,[e].concat(r)),a.add(function(e,t){var n=ye();if(!e)return n.dispose;var r=getComputedStyle(e),o=[r.transitionDuration,r.transitionDelay].map((function(e){var t=e.split(",").filter(Boolean).map((function(e){return e.includes("ms")?parseFloat(e):1e3*parseFloat(e)})).sort((function(e,t){return t-e}))[0];return void 0===t?0:t})),i=o[0],a=o[1];return 0!==i?n.setTimeout((function(){t(pe.Finished)}),i+a):t(pe.Finished),n.add((function(){return t(pe.Cancelled)})),n.dispose}(e,(function(n){return ge.apply(void 0,[e].concat(r,t)),ve.apply(void 0,[e].concat(o)),s(n)})))})),a.add((function(){return ge.apply(void 0,[e].concat(t,n,r,o))})),a.add((function(){return s(pe.Cancelled)})),a.dispose}function we(e){return void 0===e&&(e=""),(0,o.useMemo)((function(){return e.split(" ").filter((function(e){return e.trim().length>1}))}),[e])}he.displayName="OpenClosedContext",function(e){e[e.Open=0]="Open",e[e.Closed=1]="Closed"}(fe||(fe={})),function(e){e.Finished="finished",e.Cancelled="cancelled"}(pe||(pe={}));var je,ke=(0,o.createContext)(null);ke.displayName="TransitionContext",function(e){e.Visible="visible",e.Hidden="hidden"}(je||(je={}));var Ce=(0,o.createContext)(null);function Se(e){return"children"in e?Se(e.children):e.current.filter((function(e){return e.state===je.Visible})).length>0}function Oe(e){var t=(0,o.useRef)(e),n=(0,o.useRef)([]),r=de();(0,o.useEffect)((function(){t.current=e}),[e]);var i=(0,o.useCallback)((function(e,o){var i;void 0===o&&(o=J.Hidden);var a=n.current.findIndex((function(t){return t.id===e}));-1!==a&&(ee(o,((i={})[J.Unmount]=function(){n.current.splice(a,1)},i[J.Hidden]=function(){n.current[a].state=je.Hidden},i)),!Se(n)&&r.current&&(null==t.current||t.current()))}),[t,r,n]),a=(0,o.useCallback)((function(e){var t=n.current.find((function(t){return t.id===e}));return t?t.state!==je.Visible&&(t.state=je.Visible):n.current.push({id:e,state:je.Visible}),function(){return i(e,J.Unmount)}}),[n,i]);return(0,o.useMemo)((function(){return{children:n,register:a,unregister:i}}),[a,i,n])}function Ee(){}Ce.displayName="NestingContext";var _e=["beforeEnter","afterEnter","beforeLeave","afterLeave"];function Ne(e){for(var t,n={},r=Q(_e);!(t=r()).done;){var o,i=t.value;n[i]=null!=(o=e[i])?o:Ee}return n}var Ae,Pe=G.RenderStrategy;function Te(e){var t,n=e.beforeEnter,r=e.afterEnter,a=e.beforeLeave,s=e.afterLeave,l=e.enter,c=e.enterFrom,u=e.enterTo,d=e.entered,f=e.leave,p=e.leaveFrom,h=e.leaveTo,m=X(e,["beforeEnter","afterEnter","beforeLeave","afterLeave","enter","enterFrom","enterTo","entered","leave","leaveFrom","leaveTo"]),x=(0,o.useRef)(null),y=(0,o.useState)(je.Visible),v=y[0],g=y[1],b=m.unmount?J.Unmount:J.Hidden,w=function(){var e=(0,o.useContext)(ke);if(null===e)throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");return e}(),j=w.show,k=w.appear,C=w.initial,S=function(){var e=(0,o.useContext)(Ce);if(null===e)throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");return e}(),O=S.register,E=S.unregister,_=ue(),N=(0,o.useRef)(!1),A=Oe((function(){N.current||(g(je.Hidden),E(_),F.current.afterLeave())}));ie((function(){if(_)return O(_)}),[O,_]),ie((function(){var e;b===J.Hidden&&_&&(j&&v!==je.Visible?g(je.Visible):ee(v,((e={})[je.Hidden]=function(){return E(_)},e[je.Visible]=function(){return O(_)},e)))}),[v,_,O,E,j,b]);var P=we(l),T=we(c),I=we(u),L=we(d),M=we(f),R=we(p),D=we(h),F=function(e){var t=(0,o.useRef)(Ne(e));return(0,o.useEffect)((function(){t.current=Ne(e)}),[e]),t}({beforeEnter:n,afterEnter:r,beforeLeave:a,afterLeave:s}),B=se();(0,o.useEffect)((function(){if(B&&v===je.Visible&&null===x.current)throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?")}),[x,v,B]);var z=C&&!k;ie((function(){var e=x.current;if(e&&!z)return N.current=!0,j&&F.current.beforeEnter(),j||F.current.beforeLeave(),j?be(e,P,T,I,L,(function(e){N.current=!1,e===pe.Finished&&F.current.afterEnter()})):be(e,M,R,D,L,(function(e){N.current=!1,e===pe.Finished&&(Se(A)||(g(je.Hidden),E(_),F.current.afterLeave()))}))}),[F,_,N,E,A,x,z,j,P,T,I,M,R,D]);var U={ref:x},W=m;return i().createElement(Ce.Provider,{value:A},i().createElement(xe,{value:ee(v,(t={},t[je.Visible]=fe.Open,t[je.Hidden]=fe.Closed,t))},te({props:Z({},W,U),defaultTag:"div",features:Pe,visible:v===je.Visible,name:"Transition.Child"})))}function Ie(e){var t,n=e.show,r=e.appear,a=void 0!==r&&r,s=e.unmount,l=X(e,["show","appear","unmount"]),c=me();void 0===n&&null!==c&&(n=ee(c,((t={})[fe.Open]=!0,t[fe.Closed]=!1,t)));if(![!0,!1].includes(n))throw new Error("A <Transition /> is used but it is missing a `show={true | false}` prop.");var u=(0,o.useState)(n?je.Visible:je.Hidden),d=u[0],f=u[1],p=Oe((function(){f(je.Hidden)})),h=function(){var e=(0,o.useRef)(!0);return(0,o.useEffect)((function(){e.current=!1}),[]),e.current}(),m=(0,o.useMemo)((function(){return{show:n,appear:a||!h,initial:h}}),[n,a,h]);(0,o.useEffect)((function(){n?f(je.Visible):Se(p)||f(je.Hidden)}),[n,p]);var x={unmount:s};return i().createElement(Ce.Provider,{value:p},i().createElement(ke.Provider,{value:m},te({props:Z({},x,{as:o.Fragment,children:i().createElement(Te,Object.assign({},x,l))}),defaultTag:o.Fragment,features:Pe,visible:d===je.Visible,name:"Transition"})))}function Le(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=(0,o.useRef)(t);return(0,o.useEffect)((function(){r.current=t}),[t]),(0,o.useCallback)((function(e){for(var t,n=Q(r.current);!(t=n()).done;){var o=t.value;null!=o&&("function"==typeof o?o(e):o.current=e)}}),[r])}function Me(e){for(var t,n,r=e.parentElement,o=null;r&&!(r instanceof HTMLFieldSetElement);)r instanceof HTMLLegendElement&&(o=r),r=r.parentElement;var i=null!=(t=""===(null==(n=r)?void 0:n.getAttribute("disabled")))&&t;return(!i||!function(e){if(!e)return!1;var t=e.previousElementSibling;for(;null!==t;){if(t instanceof HTMLLegendElement)return!1;t=t.previousElementSibling}return!0}(o))&&i}function Re(e,t,n){var r=(0,o.useRef)(t);r.current=t,(0,o.useEffect)((function(){function t(e){r.current.call(window,e)}return window.addEventListener(e,t,n),function(){return window.removeEventListener(e,t,n)}}),[e,n])}Ie.Child=function(e){var t=null!==(0,o.useContext)(ke),n=null!==me();return!t&&n?i().createElement(Ie,Object.assign({},e)):i().createElement(Te,Object.assign({},e))},Ie.Root=Ie,function(e){e.Space=" ",e.Enter="Enter",e.Escape="Escape",e.Backspace="Backspace",e.ArrowLeft="ArrowLeft",e.ArrowUp="ArrowUp",e.ArrowRight="ArrowRight",e.ArrowDown="ArrowDown",e.Home="Home",e.End="End",e.PageUp="PageUp",e.PageDown="PageDown",e.Tab="Tab"}(Ae||(Ae={}));var De,Fe,Be,ze,Ue,We=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map((function(e){return e+":not([tabindex='-1'])"})).join(",");function qe(e){null==e||e.focus({preventScroll:!0})}function $e(e,t){var n=Array.isArray(e)?e:function(e){return void 0===e&&(e=document.body),null==e?[]:Array.from(e.querySelectorAll(We))}(e),r=document.activeElement,o=function(){if(t&(De.First|De.Next))return Be.Next;if(t&(De.Previous|De.Last))return Be.Previous;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")}(),i=function(){if(t&De.First)return 0;if(t&De.Previous)return Math.max(0,n.indexOf(r))-1;if(t&De.Next)return Math.max(0,n.indexOf(r))+1;if(t&De.Last)return n.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")}(),a=t&De.NoScroll?{preventScroll:!0}:{},s=0,l=n.length,c=void 0;do{var u;if(s>=l||s+l<=0)return Fe.Error;var d=i+s;if(t&De.WrapAround)d=(d+l)%l;else{if(d<0)return Fe.Underflow;if(d>=l)return Fe.Overflow}null==(u=c=n[d])||u.focus(a),s+=o}while(c!==document.activeElement);return c.hasAttribute("tabindex")||c.setAttribute("tabindex","0"),Fe.Success}function He(e,t,n){void 0===t&&(t=Ue.All);var r=void 0===n?{}:n,i=r.initialFocus,a=r.containers,s=(0,o.useRef)("undefined"!=typeof window?document.activeElement:null),l=(0,o.useRef)(null),c=de(),u=Boolean(t&Ue.RestoreFocus),d=Boolean(t&Ue.InitialFocus);(0,o.useEffect)((function(){u&&(s.current=document.activeElement)}),[u]),(0,o.useEffect)((function(){if(u)return function(){qe(s.current),s.current=null}}),[u]),(0,o.useEffect)((function(){if(d&&e.current){var t=document.activeElement;if(null==i?void 0:i.current){if((null==i?void 0:i.current)===t)return void(l.current=t)}else if(e.current.contains(t))return void(l.current=t);(null==i?void 0:i.current)?qe(i.current):$e(e.current,De.First)===Fe.Error&&console.warn("There are no focusable elements inside the <FocusTrap />"),l.current=document.activeElement}}),[e,i,d]),Re("keydown",(function(n){t&Ue.TabLock&&e.current&&n.key===Ae.Tab&&(n.preventDefault(),$e(e.current,(n.shiftKey?De.Previous:De.Next)|De.WrapAround)===Fe.Success&&(l.current=document.activeElement))})),Re("focus",(function(n){if(t&Ue.FocusLock){var r=new Set(null==a?void 0:a.current);if(r.add(e),r.size){var o=l.current;if(o&&c.current){var i=n.target;i&&i instanceof HTMLElement?!function(e,t){for(var n,r=Q(e);!(n=r()).done;){var o;if(null==(o=n.value.current)?void 0:o.contains(t))return!0}return!1}(r,i)?(n.preventDefault(),n.stopPropagation(),qe(o)):(l.current=i,qe(i)):qe(l.current)}}}}),!0)}!function(e){e[e.First=1]="First",e[e.Previous=2]="Previous",e[e.Next=4]="Next",e[e.Last=8]="Last",e[e.WrapAround=16]="WrapAround",e[e.NoScroll=32]="NoScroll"}(De||(De={})),function(e){e[e.Error=0]="Error",e[e.Overflow=1]="Overflow",e[e.Success=2]="Success",e[e.Underflow=3]="Underflow"}(Fe||(Fe={})),function(e){e[e.Previous=-1]="Previous",e[e.Next=1]="Next"}(Be||(Be={})),function(e){e[e.Strict=0]="Strict",e[e.Loose=1]="Loose"}(ze||(ze={})),function(e){e[e.None=1]="None",e[e.InitialFocus=2]="InitialFocus",e[e.TabLock=4]="TabLock",e[e.FocusLock=8]="FocusLock",e[e.RestoreFocus=16]="RestoreFocus",e[e.All=30]="All"}(Ue||(Ue={}));var Ve=new Set,Ge=new Map;function Je(e){e.setAttribute("aria-hidden","true"),e.inert=!0}function Ke(e){var t=Ge.get(e);t&&(null===t["aria-hidden"]?e.removeAttribute("aria-hidden"):e.setAttribute("aria-hidden",t["aria-hidden"]),e.inert=t.inert)}var Ze=(0,o.createContext)(!1);function Xe(e){return i().createElement(Ze.Provider,{value:e.force},e.children)}const Ye=ReactDOM;function Qe(){var e=(0,o.useContext)(Ze),t=(0,o.useContext)(rt),n=(0,o.useState)((function(){if(!e&&null!==t)return null;if("undefined"==typeof window)return null;var n=document.getElementById("headlessui-portal-root");if(n)return n;var r=document.createElement("div");return r.setAttribute("id","headlessui-portal-root"),document.body.appendChild(r)})),r=n[0],i=n[1];return(0,o.useEffect)((function(){e||null!==t&&i(t.current)}),[t,i,e]),r}var et=o.Fragment;function tt(e){var t=e,n=Qe(),r=(0,o.useState)((function(){return"undefined"==typeof window?null:document.createElement("div")}))[0],i=se();return ie((function(){if(n&&r)return n.appendChild(r),function(){var e;n&&(r&&(n.removeChild(r),n.childNodes.length<=0&&(null==(e=n.parentElement)||e.removeChild(n))))}}),[n,r]),i&&n&&r?(0,Ye.createPortal)(te({props:t,defaultTag:et,name:"Portal"}),r):null}var nt=o.Fragment,rt=(0,o.createContext)(null);tt.Group=function(e){var t=e.target,n=X(e,["target"]);return i().createElement(rt.Provider,{value:t},te({props:n,defaultTag:nt,name:"Popover.Group"}))};var ot=(0,o.createContext)(null);function it(){var e=(0,o.useContext)(ot);if(null===e){var t=new Error("You used a <Description /> component, but it is not inside a relevant parent.");throw Error.captureStackTrace&&Error.captureStackTrace(t,it),t}return e}var at,st,lt,ct,ut=(0,o.createContext)((function(){}));function dt(e){var t=e.children,n=e.onUpdate,r=e.type,a=e.element,s=(0,o.useContext)(ut),l=(0,o.useCallback)((function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];null==n||n.apply(void 0,t),s.apply(void 0,t)}),[s,n]);return ie((function(){return l(at.Add,r,a),function(){return l(at.Remove,r,a)}}),[l,r,a]),i().createElement(ut.Provider,{value:l},t)}ut.displayName="StackContext",function(e){e[e.Add=0]="Add",e[e.Remove=1]="Remove"}(at||(at={})),function(e){e[e.Open=0]="Open",e[e.Closed=1]="Closed"}(lt||(lt={})),function(e){e[e.SetTitleId=0]="SetTitleId"}(ct||(ct={}));var ft=((st={})[ct.SetTitleId]=function(e,t){return e.titleId===t.id?e:Z({},e,{titleId:t.id})},st),pt=(0,o.createContext)(null);function ht(e){var t=(0,o.useContext)(pt);if(null===t){var n=new Error("<"+e+" /> is missing a parent <"+gt.displayName+" /> component.");throw Error.captureStackTrace&&Error.captureStackTrace(n,ht),n}return t}function mt(e,t){return ee(t.type,ft,e,t)}pt.displayName="DialogContext";var xt=G.RenderStrategy|G.Static,yt=re((function(e,t){var n,r=e.open,a=e.onClose,s=e.initialFocus,l=X(e,["open","onClose","initialFocus"]),c=(0,o.useState)(0),u=c[0],d=c[1],f=me();void 0===r&&null!==f&&(r=ee(f,((n={})[fe.Open]=!0,n[fe.Closed]=!1,n)));var p=(0,o.useRef)(new Set),h=(0,o.useRef)(null),m=Le(h,t),x=e.hasOwnProperty("open")||null!==f,y=e.hasOwnProperty("onClose");if(!x&&!y)throw new Error("You have to provide an `open` and an `onClose` prop to the `Dialog` component.");if(!x)throw new Error("You provided an `onClose` prop to the `Dialog`, but forgot an `open` prop.");if(!y)throw new Error("You provided an `open` prop to the `Dialog`, but forgot an `onClose` prop.");if("boolean"!=typeof r)throw new Error("You provided an `open` prop to the `Dialog`, but the value is not a boolean. Received: "+r);if("function"!=typeof a)throw new Error("You provided an `onClose` prop to the `Dialog`, but the value is not a function. Received: "+a);var v=r?lt.Open:lt.Closed,g=null!==f?f===fe.Open:v===lt.Open,b=(0,o.useReducer)(mt,{titleId:null,descriptionId:null}),w=b[0],j=b[1],k=(0,o.useCallback)((function(){return a(!1)}),[a]),C=(0,o.useCallback)((function(e){return j({type:ct.SetTitleId,id:e})}),[j]),S=se()&&v===lt.Open,O=u>1,E=null!==(0,o.useContext)(pt);He(h,S?ee(O?"parent":"leaf",{parent:Ue.RestoreFocus,leaf:Ue.All}):Ue.None,{initialFocus:s,containers:p}),function(e,t){void 0===t&&(t=!0),ie((function(){if(t&&e.current){var n=e.current;Ve.add(n);for(var r,o=Q(Ge.keys());!(r=o()).done;){var i=r.value;i.contains(n)&&(Ke(i),Ge.delete(i))}return document.querySelectorAll("body > *").forEach((function(e){if(e instanceof HTMLElement){for(var t,n=Q(Ve);!(t=n()).done;){var r=t.value;if(e.contains(r))return}1===Ve.size&&(Ge.set(e,{"aria-hidden":e.getAttribute("aria-hidden"),inert:e.inert}),Je(e))}})),function(){if(Ve.delete(n),Ve.size>0)document.querySelectorAll("body > *").forEach((function(e){if(e instanceof HTMLElement&&!Ge.has(e)){for(var t,n=Q(Ve);!(t=n()).done;){var r=t.value;if(e.contains(r))return}Ge.set(e,{"aria-hidden":e.getAttribute("aria-hidden"),inert:e.inert}),Je(e)}}));else for(var e,t=Q(Ge.keys());!(e=t()).done;){var r=e.value;Ke(r),Ge.delete(r)}}}}),[t])}(h,!!O&&S),Re("mousedown",(function(e){var t,n=e.target;v===lt.Open&&(O||(null==(t=h.current)?void 0:t.contains(n))||k())})),Re("keydown",(function(e){e.key===Ae.Escape&&v===lt.Open&&(O||(e.preventDefault(),e.stopPropagation(),k()))})),(0,o.useEffect)((function(){if(v===lt.Open&&!E){var e=document.documentElement.style.overflow,t=document.documentElement.style.paddingRight,n=window.innerWidth-document.documentElement.clientWidth;return document.documentElement.style.overflow="hidden",document.documentElement.style.paddingRight=n+"px",function(){document.documentElement.style.overflow=e,document.documentElement.style.paddingRight=t}}}),[v,E]),(0,o.useEffect)((function(){if(v===lt.Open&&h.current){var e=new IntersectionObserver((function(e){for(var t,n=Q(e);!(t=n()).done;){var r=t.value;0===r.boundingClientRect.x&&0===r.boundingClientRect.y&&0===r.boundingClientRect.width&&0===r.boundingClientRect.height&&k()}}));return e.observe(h.current),function(){return e.disconnect()}}}),[v,h,k]);var _=function(){var e=(0,o.useState)([]),t=e[0],n=e[1];return[t.length>0?t.join(" "):void 0,(0,o.useMemo)((function(){return function(e){var t=(0,o.useCallback)((function(e){return n((function(t){return[].concat(t,[e])})),function(){return n((function(t){var n=t.slice(),r=n.indexOf(e);return-1!==r&&n.splice(r,1),n}))}}),[]),r=(0,o.useMemo)((function(){return{register:t,slot:e.slot,name:e.name,props:e.props}}),[t,e.slot,e.name,e.props]);return i().createElement(ot.Provider,{value:r},e.children)}}),[n])]}(),N=_[0],A=_[1],P="headlessui-dialog-"+ue(),T=(0,o.useMemo)((function(){return[{dialogState:v,close:k,setTitleId:C},w]}),[v,w,k,C]),I=(0,o.useMemo)((function(){return{open:v===lt.Open}}),[v]),L={ref:m,id:P,role:"dialog","aria-modal":v===lt.Open||void 0,"aria-labelledby":w.titleId,"aria-describedby":N,onClick:function(e){e.stopPropagation()}},M=l;return i().createElement(dt,{type:"Dialog",element:h,onUpdate:(0,o.useCallback)((function(e,t,n){var r;"Dialog"===t&&ee(e,((r={})[at.Add]=function(){p.current.add(n),d((function(e){return e+1}))},r[at.Remove]=function(){p.current.add(n),d((function(e){return e-1}))},r))}),[])},i().createElement(Xe,{force:!0},i().createElement(tt,null,i().createElement(pt.Provider,{value:T},i().createElement(tt.Group,{target:h},i().createElement(Xe,{force:!1},i().createElement(A,{slot:I,name:"Dialog.Description"},te({props:Z({},M,L),slot:I,defaultTag:"div",features:xt,visible:g,name:"Dialog"}))))))))})),vt=re((function e(t,n){var r=ht([gt.displayName,e.name].join("."))[0],i=r.dialogState,a=r.close,s=Le(n),l="headlessui-dialog-overlay-"+ue(),c=(0,o.useCallback)((function(e){if(e.target===e.currentTarget){if(Me(e.currentTarget))return e.preventDefault();e.preventDefault(),e.stopPropagation(),a()}}),[a]),u=(0,o.useMemo)((function(){return{open:i===lt.Open}}),[i]);return te({props:Z({},t,{ref:s,id:l,"aria-hidden":!0,onClick:c}),slot:u,defaultTag:"div",name:"Dialog.Overlay"})}));var gt=Object.assign(yt,{Overlay:vt,Title:function e(t){var n=ht([gt.displayName,e.name].join("."))[0],r=n.dialogState,i=n.setTitleId,a="headlessui-dialog-title-"+ue();(0,o.useEffect)((function(){return i(a),function(){return i(null)}}),[a,i]);var s=(0,o.useMemo)((function(){return{open:r===lt.Open}}),[r]);return te({props:Z({},t,{id:a}),slot:s,defaultTag:"h2",name:"Dialog.Title"})},Description:function(e){var t=it(),n="headlessui-description-"+ue();ie((function(){return t.register(n)}),[n,t.register]);var r=e,o=Z({},t.props,{id:n});return te({props:Z({},r,o),slot:t.slot||{},defaultTag:"p",name:t.name||"Description"})}});const bt=wp.i18n,wt=wp.components;var jt=n(42),kt=n.n(jt);const Ct=lodash;var St=function(e){return Ot(e,"open")};function Ot(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"broken-event",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"open";z.setState({entryPoint:e}),window.dispatchEvent(new CustomEvent("extendify::".concat(t,"-library"),{detail:e,bubbles:!0}))}function Et(e){switch(e){case"editorplus":return"Editor Plus";case"ml-slider":return"MetaSlider"}return e}function _t(e){switch(e){case"siteType":return"Site Type";case"patternType":return"Content";case"layoutType":return"Page Types"}}var Nt=n(246);function At(e){var t=e.taxType,n=e.taxonomies,r=K((function(e){return e.updateTaxonomies})),o=K((function(e){return e.searchParams}));return!(null!=n&&n.length)>0?null:(0,Nt.jsx)(wt.PanelBody,{title:_t(t),className:"ext-type-control p-0",initialOpen:!0,children:(0,Nt.jsx)(wt.PanelRow,{children:(0,Nt.jsx)("div",{className:"overflow-hidden w-full relative",children:(0,Nt.jsx)("ul",{className:"px-5 py-1 m-0 w-full",children:n.map((function(e){var n,i,a=(null==o||null===(n=o.taxonomies[t])||void 0===n?void 0:n.slug)===(null==e?void 0:e.slug);return(0,Nt.jsx)("li",{className:"m-0 w-full",children:(0,Nt.jsx)("button",{type:"button",className:"text-left text-sm cursor-pointer w-full flex justify-between items-center px-0 py-2 m-0 leading-none bg-transparent hover:text-wp-theme-500 transition duration-200 button-focus",onClick:function(){return r((i=e,(o=t)in(n={})?Object.defineProperty(n,o,{value:i,enumerable:!0,configurable:!0,writable:!0}):n[o]=i,n));var n,o,i},children:(0,Nt.jsx)("span",{className:kt()({"text-wp-theme-500":a}),children:null!==(i=null==e?void 0:e.title)&&void 0!==i?i:e.slug})})},e.slug)}))})})})})}function Pt(e){return Array.isArray?Array.isArray(e):"[object Array]"===Ft(e)}function Tt(e){return"string"==typeof e}function It(e){return"number"==typeof e}function Lt(e){return!0===e||!1===e||function(e){return Mt(e)&&null!==e}(e)&&"[object Boolean]"==Ft(e)}function Mt(e){return"object"==typeof e}function Rt(e){return null!=e}function Dt(e){return!e.trim().length}function Ft(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const Bt=Object.prototype.hasOwnProperty;class zt{constructor(e){this._keys=[],this._keyMap={};let t=0;e.forEach((e=>{let n=Ut(e);t+=n.weight,this._keys.push(n),this._keyMap[n.id]=n,t+=n.weight})),this._keys.forEach((e=>{e.weight/=t}))}get(e){return this._keyMap[e]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function Ut(e){let t=null,n=null,r=null,o=1;if(Tt(e)||Pt(e))r=e,t=Wt(e),n=qt(e);else{if(!Bt.call(e,"name"))throw new Error((e=>`Missing ${e} property in key`)("name"));const i=e.name;if(r=i,Bt.call(e,"weight")&&(o=e.weight,o<=0))throw new Error((e=>`Property 'weight' in key '${e}' must be a positive integer`)(i));t=Wt(i),n=qt(i)}return{path:t,id:n,weight:o,src:r}}function Wt(e){return Pt(e)?e:e.split(".")}function qt(e){return Pt(e)?e.join("."):e}var $t={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(e,t)=>e.score===t.score?e.idx<t.idx?-1:1:e.score<t.score?-1:1,includeMatches:!1,findAllMatches:!1,minMatchCharLength:1,location:0,threshold:.6,distance:100,...{useExtendedSearch:!1,getFn:function(e,t){let n=[],r=!1;const o=(e,t,i)=>{if(Rt(e))if(t[i]){const a=e[t[i]];if(!Rt(a))return;if(i===t.length-1&&(Tt(a)||It(a)||Lt(a)))n.push(function(e){return null==e?"":function(e){if("string"==typeof e)return e;let t=e+"";return"0"==t&&1/e==-1/0?"-0":t}(e)}(a));else if(Pt(a)){r=!0;for(let e=0,n=a.length;e<n;e+=1)o(a[e],t,i+1)}else t.length&&o(a,t,i+1)}else n.push(e)};return o(e,Tt(t)?t.split("."):t,0),r?n:n[0]},ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1}};const Ht=/[^ ]+/g;class Vt{constructor({getFn:e=$t.getFn,fieldNormWeight:t=$t.fieldNormWeight}={}){this.norm=function(e=1,t=3){const n=new Map,r=Math.pow(10,t);return{get(t){const o=t.match(Ht).length;if(n.has(o))return n.get(o);const i=1/Math.pow(o,.5*e),a=parseFloat(Math.round(i*r)/r);return n.set(o,a),a},clear(){n.clear()}}}(t,3),this.getFn=e,this.isCreated=!1,this.setIndexRecords()}setSources(e=[]){this.docs=e}setIndexRecords(e=[]){this.records=e}setKeys(e=[]){this.keys=e,this._keysMap={},e.forEach(((e,t)=>{this._keysMap[e.id]=t}))}create(){!this.isCreated&&this.docs.length&&(this.isCreated=!0,Tt(this.docs[0])?this.docs.forEach(((e,t)=>{this._addString(e,t)})):this.docs.forEach(((e,t)=>{this._addObject(e,t)})),this.norm.clear())}add(e){const t=this.size();Tt(e)?this._addString(e,t):this._addObject(e,t)}removeAt(e){this.records.splice(e,1);for(let t=e,n=this.size();t<n;t+=1)this.records[t].i-=1}getValueForItemAtKeyId(e,t){return e[this._keysMap[t]]}size(){return this.records.length}_addString(e,t){if(!Rt(e)||Dt(e))return;let n={v:e,i:t,n:this.norm.get(e)};this.records.push(n)}_addObject(e,t){let n={i:t,$:{}};this.keys.forEach(((t,r)=>{let o=this.getFn(e,t.path);if(Rt(o))if(Pt(o)){let e=[];const t=[{nestedArrIndex:-1,value:o}];for(;t.length;){const{nestedArrIndex:n,value:r}=t.pop();if(Rt(r))if(Tt(r)&&!Dt(r)){let t={v:r,i:n,n:this.norm.get(r)};e.push(t)}else Pt(r)&&r.forEach(((e,n)=>{t.push({nestedArrIndex:n,value:e})}))}n.$[r]=e}else if(!Dt(o)){let e={v:o,n:this.norm.get(o)};n.$[r]=e}})),this.records.push(n)}toJSON(){return{keys:this.keys,records:this.records}}}function Gt(e,t,{getFn:n=$t.getFn,fieldNormWeight:r=$t.fieldNormWeight}={}){const o=new Vt({getFn:n,fieldNormWeight:r});return o.setKeys(e.map(Ut)),o.setSources(t),o.create(),o}function Jt(e,{errors:t=0,currentLocation:n=0,expectedLocation:r=0,distance:o=$t.distance,ignoreLocation:i=$t.ignoreLocation}={}){const a=t/e.length;if(i)return a;const s=Math.abs(r-n);return o?a+s/o:s?1:a}const Kt=32;function Zt(e,t,n,{location:r=$t.location,distance:o=$t.distance,threshold:i=$t.threshold,findAllMatches:a=$t.findAllMatches,minMatchCharLength:s=$t.minMatchCharLength,includeMatches:l=$t.includeMatches,ignoreLocation:c=$t.ignoreLocation}={}){if(t.length>Kt)throw new Error(`Pattern length exceeds max of ${Kt}.`);const u=t.length,d=e.length,f=Math.max(0,Math.min(r,d));let p=i,h=f;const m=s>1||l,x=m?Array(d):[];let y;for(;(y=e.indexOf(t,h))>-1;){let e=Jt(t,{currentLocation:y,expectedLocation:f,distance:o,ignoreLocation:c});if(p=Math.min(e,p),h=y+u,m){let e=0;for(;e<u;)x[y+e]=1,e+=1}}h=-1;let v=[],g=1,b=u+d;const w=1<<u-1;for(let r=0;r<u;r+=1){let i=0,s=b;for(;i<s;){Jt(t,{errors:r,currentLocation:f+s,expectedLocation:f,distance:o,ignoreLocation:c})<=p?i=s:b=s,s=Math.floor((b-i)/2+i)}b=s;let l=Math.max(1,f-s+1),y=a?d:Math.min(f+s,d)+u,j=Array(y+2);j[y+1]=(1<<r)-1;for(let i=y;i>=l;i-=1){let a=i-1,s=n[e.charAt(a)];if(m&&(x[a]=+!!s),j[i]=(j[i+1]<<1|1)&s,r&&(j[i]|=(v[i+1]|v[i])<<1|1|v[i+1]),j[i]&w&&(g=Jt(t,{errors:r,currentLocation:a,expectedLocation:f,distance:o,ignoreLocation:c}),g<=p)){if(p=g,h=a,h<=f)break;l=Math.max(1,2*f-h)}}if(Jt(t,{errors:r+1,currentLocation:f,expectedLocation:f,distance:o,ignoreLocation:c})>p)break;v=j}const j={isMatch:h>=0,score:Math.max(.001,g)};if(m){const e=function(e=[],t=$t.minMatchCharLength){let n=[],r=-1,o=-1,i=0;for(let a=e.length;i<a;i+=1){let a=e[i];a&&-1===r?r=i:a||-1===r||(o=i-1,o-r+1>=t&&n.push([r,o]),r=-1)}return e[i-1]&&i-r>=t&&n.push([r,i-1]),n}(x,s);e.length?l&&(j.indices=e):j.isMatch=!1}return j}function Xt(e){let t={};for(let n=0,r=e.length;n<r;n+=1){const o=e.charAt(n);t[o]=(t[o]||0)|1<<r-n-1}return t}class Yt{constructor(e,{location:t=$t.location,threshold:n=$t.threshold,distance:r=$t.distance,includeMatches:o=$t.includeMatches,findAllMatches:i=$t.findAllMatches,minMatchCharLength:a=$t.minMatchCharLength,isCaseSensitive:s=$t.isCaseSensitive,ignoreLocation:l=$t.ignoreLocation}={}){if(this.options={location:t,threshold:n,distance:r,includeMatches:o,findAllMatches:i,minMatchCharLength:a,isCaseSensitive:s,ignoreLocation:l},this.pattern=s?e:e.toLowerCase(),this.chunks=[],!this.pattern.length)return;const c=(e,t)=>{this.chunks.push({pattern:e,alphabet:Xt(e),startIndex:t})},u=this.pattern.length;if(u>Kt){let e=0;const t=u%Kt,n=u-t;for(;e<n;)c(this.pattern.substr(e,Kt),e),e+=Kt;if(t){const e=u-Kt;c(this.pattern.substr(e),e)}}else c(this.pattern,0)}searchIn(e){const{isCaseSensitive:t,includeMatches:n}=this.options;if(t||(e=e.toLowerCase()),this.pattern===e){let t={isMatch:!0,score:0};return n&&(t.indices=[[0,e.length-1]]),t}const{location:r,distance:o,threshold:i,findAllMatches:a,minMatchCharLength:s,ignoreLocation:l}=this.options;let c=[],u=0,d=!1;this.chunks.forEach((({pattern:t,alphabet:f,startIndex:p})=>{const{isMatch:h,score:m,indices:x}=Zt(e,t,f,{location:r+p,distance:o,threshold:i,findAllMatches:a,minMatchCharLength:s,includeMatches:n,ignoreLocation:l});h&&(d=!0),u+=m,h&&x&&(c=[...c,...x])}));let f={isMatch:d,score:d?u/this.chunks.length:1};return d&&n&&(f.indices=c),f}}class Qt{constructor(e){this.pattern=e}static isMultiMatch(e){return en(e,this.multiRegex)}static isSingleMatch(e){return en(e,this.singleRegex)}search(){}}function en(e,t){const n=e.match(t);return n?n[1]:null}class tn extends Qt{constructor(e,{location:t=$t.location,threshold:n=$t.threshold,distance:r=$t.distance,includeMatches:o=$t.includeMatches,findAllMatches:i=$t.findAllMatches,minMatchCharLength:a=$t.minMatchCharLength,isCaseSensitive:s=$t.isCaseSensitive,ignoreLocation:l=$t.ignoreLocation}={}){super(e),this._bitapSearch=new Yt(e,{location:t,threshold:n,distance:r,includeMatches:o,findAllMatches:i,minMatchCharLength:a,isCaseSensitive:s,ignoreLocation:l})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(e){return this._bitapSearch.searchIn(e)}}class nn extends Qt{constructor(e){super(e)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(e){let t,n=0;const r=[],o=this.pattern.length;for(;(t=e.indexOf(this.pattern,n))>-1;)n=t+o,r.push([t,n-1]);const i=!!r.length;return{isMatch:i,score:i?0:1,indices:r}}}const rn=[class extends Qt{constructor(e){super(e)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(e){const t=e===this.pattern;return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}},nn,class extends Qt{constructor(e){super(e)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(e){const t=e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}},class extends Qt{constructor(e){super(e)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(e){const t=!e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},class extends Qt{constructor(e){super(e)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(e){const t=!e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},class extends Qt{constructor(e){super(e)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(e){const t=e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[e.length-this.pattern.length,e.length-1]}}},class extends Qt{constructor(e){super(e)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(e){const t=-1===e.indexOf(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},tn],on=rn.length,an=/ +(?=([^\"]*\"[^\"]*\")*[^\"]*$)/;const sn=new Set([tn.type,nn.type]);class ln{constructor(e,{isCaseSensitive:t=$t.isCaseSensitive,includeMatches:n=$t.includeMatches,minMatchCharLength:r=$t.minMatchCharLength,ignoreLocation:o=$t.ignoreLocation,findAllMatches:i=$t.findAllMatches,location:a=$t.location,threshold:s=$t.threshold,distance:l=$t.distance}={}){this.query=null,this.options={isCaseSensitive:t,includeMatches:n,minMatchCharLength:r,findAllMatches:i,ignoreLocation:o,location:a,threshold:s,distance:l},this.pattern=t?e:e.toLowerCase(),this.query=function(e,t={}){return e.split("|").map((e=>{let n=e.trim().split(an).filter((e=>e&&!!e.trim())),r=[];for(let e=0,o=n.length;e<o;e+=1){const o=n[e];let i=!1,a=-1;for(;!i&&++a<on;){const e=rn[a];let n=e.isMultiMatch(o);n&&(r.push(new e(n,t)),i=!0)}if(!i)for(a=-1;++a<on;){const e=rn[a];let n=e.isSingleMatch(o);if(n){r.push(new e(n,t));break}}}return r}))}(this.pattern,this.options)}static condition(e,t){return t.useExtendedSearch}searchIn(e){const t=this.query;if(!t)return{isMatch:!1,score:1};const{includeMatches:n,isCaseSensitive:r}=this.options;e=r?e:e.toLowerCase();let o=0,i=[],a=0;for(let r=0,s=t.length;r<s;r+=1){const s=t[r];i.length=0,o=0;for(let t=0,r=s.length;t<r;t+=1){const r=s[t],{isMatch:l,indices:c,score:u}=r.search(e);if(!l){a=0,o=0,i.length=0;break}if(o+=1,a+=u,n){const e=r.constructor.type;sn.has(e)?i=[...i,...c]:i.push(c)}}if(o){let e={isMatch:!0,score:a/o};return n&&(e.indices=i),e}}return{isMatch:!1,score:1}}}const cn=[];function un(e,t){for(let n=0,r=cn.length;n<r;n+=1){let r=cn[n];if(r.condition(e,t))return new r(e,t)}return new Yt(e,t)}const dn="$and",fn="$or",pn="$path",hn="$val",mn=e=>!(!e[dn]&&!e[fn]),xn=e=>({[dn]:Object.keys(e).map((t=>({[t]:e[t]})))});function yn(e,t,{auto:n=!0}={}){const r=e=>{let o=Object.keys(e);const i=(e=>!!e[pn])(e);if(!i&&o.length>1&&!mn(e))return r(xn(e));if((e=>!Pt(e)&&Mt(e)&&!mn(e))(e)){const r=i?e[pn]:o[0],a=i?e[hn]:e[r];if(!Tt(a))throw new Error((e=>`Invalid value for key ${e}`)(r));const s={keyId:qt(r),pattern:a};return n&&(s.searcher=un(a,t)),s}let a={children:[],operator:o[0]};return o.forEach((t=>{const n=e[t];Pt(n)&&n.forEach((e=>{a.children.push(r(e))}))})),a};return mn(e)||(e=xn(e)),r(e)}function vn(e,t){const n=e.matches;t.matches=[],Rt(n)&&n.forEach((e=>{if(!Rt(e.indices)||!e.indices.length)return;const{indices:n,value:r}=e;let o={indices:n,value:r};e.key&&(o.key=e.key.src),e.idx>-1&&(o.refIndex=e.idx),t.matches.push(o)}))}function gn(e,t){t.score=e.score}class bn{constructor(e,t={},n){this.options={...$t,...t},this.options.useExtendedSearch,this._keyStore=new zt(this.options.keys),this.setCollection(e,n)}setCollection(e,t){if(this._docs=e,t&&!(t instanceof Vt))throw new Error("Incorrect 'index' type");this._myIndex=t||Gt(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(e){Rt(e)&&(this._docs.push(e),this._myIndex.add(e))}remove(e=(()=>!1)){const t=[];for(let n=0,r=this._docs.length;n<r;n+=1){const o=this._docs[n];e(o,n)&&(this.removeAt(n),n-=1,r-=1,t.push(o))}return t}removeAt(e){this._docs.splice(e,1),this._myIndex.removeAt(e)}getIndex(){return this._myIndex}search(e,{limit:t=-1}={}){const{includeMatches:n,includeScore:r,shouldSort:o,sortFn:i,ignoreFieldNorm:a}=this.options;let s=Tt(e)?Tt(this._docs[0])?this._searchStringList(e):this._searchObjectList(e):this._searchLogical(e);return function(e,{ignoreFieldNorm:t=$t.ignoreFieldNorm}){e.forEach((e=>{let n=1;e.matches.forEach((({key:e,norm:r,score:o})=>{const i=e?e.weight:null;n*=Math.pow(0===o&&i?Number.EPSILON:o,(i||1)*(t?1:r))})),e.score=n}))}(s,{ignoreFieldNorm:a}),o&&s.sort(i),It(t)&&t>-1&&(s=s.slice(0,t)),function(e,t,{includeMatches:n=$t.includeMatches,includeScore:r=$t.includeScore}={}){const o=[];return n&&o.push(vn),r&&o.push(gn),e.map((e=>{const{idx:n}=e,r={item:t[n],refIndex:n};return o.length&&o.forEach((t=>{t(e,r)})),r}))}(s,this._docs,{includeMatches:n,includeScore:r})}_searchStringList(e){const t=un(e,this.options),{records:n}=this._myIndex,r=[];return n.forEach((({v:e,i:n,n:o})=>{if(!Rt(e))return;const{isMatch:i,score:a,indices:s}=t.searchIn(e);i&&r.push({item:e,idx:n,matches:[{score:a,value:e,norm:o,indices:s}]})})),r}_searchLogical(e){const t=yn(e,this.options),n=(e,t,r)=>{if(!e.children){const{keyId:n,searcher:o}=e,i=this._findMatches({key:this._keyStore.get(n),value:this._myIndex.getValueForItemAtKeyId(t,n),searcher:o});return i&&i.length?[{idx:r,item:t,matches:i}]:[]}const o=[];for(let i=0,a=e.children.length;i<a;i+=1){const a=e.children[i],s=n(a,t,r);if(s.length)o.push(...s);else if(e.operator===dn)return[]}return o},r=this._myIndex.records,o={},i=[];return r.forEach((({$:e,i:r})=>{if(Rt(e)){let a=n(t,e,r);a.length&&(o[r]||(o[r]={idx:r,item:e,matches:[]},i.push(o[r])),a.forEach((({matches:e})=>{o[r].matches.push(...e)})))}})),i}_searchObjectList(e){const t=un(e,this.options),{keys:n,records:r}=this._myIndex,o=[];return r.forEach((({$:e,i:r})=>{if(!Rt(e))return;let i=[];n.forEach(((n,r)=>{i.push(...this._findMatches({key:n,value:e[r],searcher:t}))})),i.length&&o.push({idx:r,item:e,matches:i})})),o}_findMatches({key:e,value:t,searcher:n}){if(!Rt(t))return[];let r=[];if(Pt(t))t.forEach((({v:t,i:o,n:i})=>{if(!Rt(t))return;const{isMatch:a,score:s,indices:l}=n.searchIn(t);a&&r.push({score:s,key:e,value:t,idx:o,norm:i,indices:l})}));else{const{v:o,n:i}=t,{isMatch:a,score:s,indices:l}=n.searchIn(o);a&&r.push({score:s,key:e,value:o,norm:i,indices:l})}return r}}function wn(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return jn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return jn(e,t)}(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 jn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}bn.version="6.5.3",bn.createIndex=Gt,bn.parseIndex=function(e,{getFn:t=$t.getFn,fieldNormWeight:n=$t.fieldNormWeight}={}){const{keys:r,records:o}=e,i=new Vt({getFn:t,fieldNormWeight:n});return i.setKeys(r),i.setIndexRecords(o),i},bn.config=$t,bn.parseQuery=yn,function(...e){cn.push(...e)}(ln);var kn=new Map,Cn=function(e){var t,n,o=e.value,i=e.setValue,a=e.terms,s=z((function(e){var t,n,r;return null!==(t=null===(n=e.preferredOptionsHistory)||void 0===n||null===(r=n.siteType)||void 0===r?void 0:r.filter((function(e){return e.slug})))&&void 0!==t?t:{}})),l=K((function(e){return e.searchParams})),c=wn((0,r.useState)(!1),2),u=c[0],d=c[1],f=(0,r.useRef)(),p=wn((0,r.useState)({}),2),h=p[0],m=p[1],x=wn((0,r.useState)(""),2),y=x[0],v=x[1],g=wn((0,r.useState)([]),2),b=g[0],w=g[1],j=(0,r.useMemo)((function(){return a.filter((function(e){return null==e?void 0:e.featured})).sort((function(e,t){return e.slug<t.slug?-1:e.slug>t.slug?1:0}))}),[a]),k=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";if(kn.has(e))w(kn.get(e));else{var t=h.search(e);kn.set(e,null!=t&&t.length?t.map((function(e){return e.item})):j),w(kn.get(e))}},C="unknown"===o.slug||!(null!=o&&o.slug);(0,r.useEffect)((function(){m(new bn(a,{keys:["slug","title","keywords"],minMatchCharLength:2,threshold:.3}))}),[a]),(0,r.useEffect)((function(){y.length||w(j)}),[j,y]),(0,r.useEffect)((function(){u&&f.current.focus()}),[u]);var S,O=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,bt.__)("Suggestions","extendify");return e===j&&(t=(0,bt.__)("Examples","extendify")),(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsx)("h4",{className:"mt-4 mb-2 text-left uppercase text-xss text-gray-700 font-medium",children:t}),(0,Nt.jsx)("ul",{className:"m-0",children:e.map((function(e){var t,n,r,o=null!==(t=null==e?void 0:e.title)&&void 0!==t?t:e.slug,a=(null==l||null===(n=l.taxonomies)||void 0===n||null===(r=n.siteType)||void 0===r?void 0:r.slug)===e.slug;return(0,Nt.jsx)("li",{className:"m-0 mb-1",children:(0,Nt.jsx)("button",{type:"button",className:kt()("w-full text-left text-sm bg-transparent hover:text-wp-theme-500 m-0 pl-0 cursor-pointer",{"text-gray-800":!a}),onClick:function(){d(!1),i(e)},children:o})},e.slug+(null==e?void 0:e.title))}))})]})};return(0,Nt.jsxs)("div",{className:"w-full bg-extendify-transparent-black rounded",children:[(0,Nt.jsx)("button",{type:"button",onClick:function(){return d((function(e){return!e}))},className:"flex items-center justify-between text-gray-800 button-focus w-full p-4 m-0 cursor-pointer bg-transparent hover:bg-extendify-transparent-black-100 rounded",children:(S=u?(0,bt.__)("What kind of site is this?","extendify"):null!==(t=null!==(n=null==o?void 0:o.title)&&void 0!==n?n:o.slug)&&void 0!==t?t:"Unknown",(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsxs)("span",{className:"flex flex-col text-left",children:[(0,Nt.jsx)("span",{className:"text-sm mb-1",children:(0,bt.__)("Site Type","extendify")}),(0,Nt.jsx)("span",{className:"font-light text-xs",children:S})]}),(0,Nt.jsxs)("span",{className:"flex items-center space-x-4",children:[C&&!u&&(0,Nt.jsxs)("svg",{className:"text-wp-alert-red","aria-hidden":"true",focusable:"false",width:"21",height:"21",viewBox:"0 0 21 21",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,Nt.jsx)("path",{className:"stroke-current",d:"M10.9982 4.05371C7.66149 4.05371 4.95654 6.75866 4.95654 10.0954C4.95654 13.4321 7.66149 16.137 10.9982 16.137C14.3349 16.137 17.0399 13.4321 17.0399 10.0954C17.0399 6.75866 14.3349 4.05371 10.9982 4.05371V4.05371Z",strokeWidth:"1.25"}),(0,Nt.jsx)("path",{className:"fill-current",d:"M10.0205 12.8717C10.0205 12.3287 10.4508 11.8881 10.9938 11.8881C11.5368 11.8881 11.9774 12.3287 11.9774 12.8717C11.9774 13.4147 11.5368 13.8451 10.9938 13.8451C10.4508 13.8451 10.0205 13.4147 10.0205 12.8717Z"}),(0,Nt.jsx)("path",{className:"fill-current",d:"M11.6495 10.2591C11.6086 10.6177 11.3524 10.9148 10.9938 10.9148C10.625 10.9148 10.3791 10.6074 10.3483 10.2591L10.0205 7.31855C9.95901 6.81652 10.4918 6.34521 10.9938 6.34521C11.4959 6.34521 12.0286 6.81652 11.9774 7.31855L11.6495 10.2591Z"})]}),(0,Nt.jsx)("svg",{className:kt()("text-gray-700 stroke-current",{"transform rotate-90 -translate-x-1":u}),"aria-hidden":"true",focusable:"false",width:"8",height:"13",viewBox:"0 0 8 13",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,Nt.jsx)("path",{d:"M1.24194 11.5952L6.24194 6.09519L1.24194 0.595215",strokeWidth:"1.5"})})]})]}))}),u&&(0,Nt.jsxs)("div",{className:"p-4 pt-0 overflow-y-auto max-h-96",children:[(0,Nt.jsxs)("div",{className:"relative my-2",children:[(0,Nt.jsx)("label",{htmlFor:"site-type-search",className:"sr-only",children:(0,bt.__)("Search","extendify")}),(0,Nt.jsx)("input",{ref:f,id:"site-type-search",value:null!=y?y:"",onChange:function(e){return t=e.target.value,v(t),void k(t);var t},type:"text",className:"button-focus bg-white border-0 m-0 p-3.5 py-2.5 rounded text-sm w-full",placeholder:(0,bt.__)("Search","extendify")}),(0,Nt.jsx)("svg",{className:"absolute top-2 right-2 hidden lg:block pointer-events-none",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"24",height:"24",role:"img","aria-hidden":"true",focusable:"false",children:(0,Nt.jsx)("path",{d:"M13.5 6C10.5 6 8 8.5 8 11.5c0 1.1.3 2.1.9 3l-3.4 3 1 1.1 3.4-2.9c1 .9 2.2 1.4 3.6 1.4 3 0 5.5-2.5 5.5-5.5C19 8.5 16.5 6 13.5 6zm0 9.5c-2.2 0-4-1.8-4-4s1.8-4 4-4 4 1.8 4 4-1.8 4-4 4z"})})]}),y.length>1&&b===j&&(0,Nt.jsx)("p",{className:"text-left",children:(0,bt.__)("Nothing found...","extendify")}),b===j&&Object.keys(s).length>0&&(0,Nt.jsx)("div",{className:"mb-8",children:O(s,(0,bt.__)("Recent","extendify"))}),b.length>0&&(0,Nt.jsx)("div",{children:O(b)}),C?null:(0,Nt.jsx)("button",{type:"button",className:"mt-4 w-full text-left text-sm bg-transparent hover:text-wp-theme-500 pl-0 cursor-pointer text-wp-theme-500",onClick:function(){d(!1),i("Unknown")},children:(0,bt.__)("Reset","extendify")})]})]})};const Sn=function(e){let{icon:t,size:n=24,...o}=e;return(0,r.cloneElement)(t,{width:n,height:n,...o})},On=e=>(0,r.createElement)("circle",e),En=e=>(0,r.createElement)("g",e),_n=e=>(0,r.createElement)("path",e),Nn=e=>(0,r.createElement)("rect",e),An=e=>{let{className:t,isPressed:n,...o}=e;const i={...o,className:kt()(t,{"is-pressed":n})||void 0,role:"img","aria-hidden":!0,focusable:!1};return(0,r.createElement)("svg",i)};const Pn=(0,Nt.jsxs)(An,{viewBox:"0 0 14 14",xmlns:"http://www.w3.org/2000/svg",children:[(0,Nt.jsx)(_n,{d:"M7.32457 0.907043C3.98785 0.907043 1.2829 3.61199 1.2829 6.94871C1.2829 10.2855 3.98785 12.9904 7.32457 12.9904C10.6613 12.9904 13.3663 10.2855 13.3663 6.94871C13.3663 3.61199 10.6613 0.907043 7.32457 0.907043V0.907043Z",stroke:"currentColor",strokeWidth:"1.25",fill:"none"}),(0,Nt.jsx)(_n,{d:"M6.34684 9.72526C6.34684 9.18224 6.77716 8.74168 7.32018 8.74168C7.8632 8.74168 8.30377 9.18224 8.30377 9.72526C8.30377 10.2683 7.8632 10.6986 7.32018 10.6986C6.77716 10.6986 6.34684 10.2683 6.34684 9.72526Z",fill:"currentColor"}),(0,Nt.jsx)(_n,{d:"M7.9759 7.11261C7.93492 7.47121 7.67878 7.76834 7.32018 7.76834C6.95134 7.76834 6.70544 7.46097 6.6747 7.11261L6.34684 4.1721C6.28537 3.67006 6.81814 3.19876 7.32018 3.19876C7.82222 3.19876 8.35499 3.67006 8.30377 4.1721L7.9759 7.11261Z",fill:"currentColor"})]});const Tn=(0,Nt.jsx)(An,{fill:"none",viewBox:"0 0 25 24",xmlns:"http://www.w3.org/2000/svg",children:(0,Nt.jsx)(_n,{clipRule:"evenodd",d:"m14.4063 2h4.1856c1.1856 0 1.6147.12701 2.0484.36409.4336.23802.7729.58706 1.0049 1.03111.2319.445.3548.8853.3548 2.10175v4.29475c0 1.2165-.1238 1.6567-.3548 2.1017-.232.445-.5722.7931-1.0049 1.0312-.1939.1064-.3873.1939-.6476.2567v3.4179c0 1.8788-.1912 2.5588-.5481 3.246-.3582.6873-.8836 1.2249-1.552 1.5925-.6697.3676-1.3325.5623-3.1634.5623h-6.46431c-1.83096 0-2.49367-.1962-3.16346-.5623-.6698-.3676-1.19374-.9067-1.552-1.5925s-.54943-1.3672-.54943-3.246v-6.63138c0-1.87871.19117-2.55871.54801-3.24597.35827-.68727.88362-1.22632 1.55342-1.59393.66837-.36615 1.3325-.56231 3.16346-.56231h2.76781c.0519-.55814.1602-.86269.3195-1.16946.232-.445.5721-.79404 1.0058-1.03206.4328-.23708.8628-.36409 2.0483-.36409zm-2.1512 2.73372c0-.79711.6298-1.4433 1.4067-1.4433h5.6737c.777 0 1.4068.64619 1.4068 1.4433v5.82118c0 .7971-.6298 1.4433-1.4068 1.4433h-5.6737c-.7769 0-1.4067-.6462-1.4067-1.4433z",fill:"currentColor",fillRule:"evenodd"})});const In=(0,Nt.jsx)(An,{fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:(0,Nt.jsx)(_n,{clipRule:"evenodd",d:"m13.505 4h3.3044c.936 0 1.2747.10161 1.6171.29127.3424.19042.6102.46965.7934.82489.1831.356.2801.70824.2801 1.6814v3.43584c0 .9731-.0977 1.3254-.2801 1.6814-.1832.356-.4517.6344-.7934.8248-.153.0852-.3057.1552-.5112.2054v2.7344c0 1.503-.151 2.047-.4327 2.5968-.2828.5498-.6976.9799-1.2252 1.274-.5288.294-1.052.4498-2.4975.4498h-5.10341c-1.44549 0-1.96869-.1569-2.49747-.4498-.52878-.2941-.94242-.7254-1.22526-1.274-.28284-.5487-.43376-1.0938-.43376-2.5968v-5.3051c0-1.50301.15092-2.04701.43264-2.59682.28284-.54981.6976-.98106 1.22638-1.27514.52767-.29293 1.05198-.44985 2.49747-.44985h2.18511c.041-.44652.1265-.69015.2522-.93557.1832-.356.4517-.63523.7941-.82565.3417-.18966.6812-.29127 1.6171-.29127zm-1.6984 2.18698c0-.63769.4973-1.15464 1.1106-1.15464h4.4793c.6133 0 1.1106.51695 1.1106 1.15464v4.65692c0 .6377-.4973 1.1547-1.1106 1.1547h-4.4793c-.6133 0-1.1106-.517-1.1106-1.1547z",fill:"currentColor",fillRule:"evenodd"})});const Ln=(0,Nt.jsx)(An,{fill:"none",width:"150",height:"30",viewBox:"0 0 2524 492",xmlns:"http://www.w3.org/2000/svg",children:(0,Nt.jsxs)(En,{fill:"currentColor",children:[(0,Nt.jsx)(_n,{d:"m609.404 378.5c-24.334 0-46-5.5-65-16.5-18.667-11.333-33.334-26.667-44-46-10.667-19.667-16-42.167-16-67.5 0-25.667 5.166-48.333 15.5-68 10.333-19.667 24.833-35 43.5-46 18.666-11.333 40-17 64-17 25 0 46.5 5.333 64.5 16 18 10.333 31.833 24.833 41.5 43.5 10 18.667 15 41 15 67v18.5l-212 .5 1-39h150.5c0-17-5.5-30.667-16.5-41-10.667-10.333-25.167-15.5-43.5-15.5-14.334 0-26.5 3-36.5 9-9.667 6-17 15-22 27s-7.5 26.667-7.5 44c0 26.667 5.666 46.833 17 60.5 11.666 13.667 28.833 20.5 51.5 20.5 16.666 0 30.333-3.167 41-9.5 11-6.333 18.166-15.333 21.5-27h56.5c-5.334 27-18.667 48.167-40 63.5-21 15.333-47.667 23-80 23z"}),(0,Nt.jsx)("path",{d:"m797.529 372h-69.5l85-121-85-126h71l54.5 84 52.5-84h68.5l-84 125.5 81.5 121.5h-70l-53-81.5z"}),(0,Nt.jsx)("path",{d:"m994.142 125h155.998v51h-155.998zm108.498 247h-61v-324h61z"}),(0,Nt.jsx)("path",{d:"m1278.62 378.5c-24.33 0-46-5.5-65-16.5-18.66-11.333-33.33-26.667-44-46-10.66-19.667-16-42.167-16-67.5 0-25.667 5.17-48.333 15.5-68 10.34-19.667 24.84-35 43.5-46 18.67-11.333 40-17 64-17 25 0 46.5 5.333 64.5 16 18 10.333 31.84 24.833 41.5 43.5 10 18.667 15 41 15 67v18.5l-212 .5 1-39h150.5c0-17-5.5-30.667-16.5-41-10.66-10.333-25.16-15.5-43.5-15.5-14.33 0-26.5 3-36.5 9-9.66 6-17 15-22 27s-7.5 26.667-7.5 44c0 26.667 5.67 46.833 17 60.5 11.67 13.667 28.84 20.5 51.5 20.5 16.67 0 30.34-3.167 41-9.5 11-6.333 18.17-15.333 21.5-27h56.5c-5.33 27-18.66 48.167-40 63.5-21 15.333-47.66 23-80 23z"}),(0,Nt.jsx)("path",{d:"m1484.44 372h-61v-247h56.5l5 32c7.67-12.333 18.5-22 32.5-29 14.34-7 29.84-10.5 46.5-10.5 31 0 54.34 9.167 70 27.5 16 18.333 24 43.333 24 75v152h-61v-137.5c0-20.667-4.66-36-14-46-9.33-10.333-22-15.5-38-15.5-19 0-33.83 6-44.5 18-10.66 12-16 28-16 48z"}),(0,Nt.jsx)("path",{d:"m1798.38 378.5c-24 0-44.67-5.333-62-16-17-11-30.34-26.167-40-45.5-9.34-19.333-14-41.833-14-67.5s4.66-48.333 14-68c9.66-20 23.5-35.667 41.5-47s39.33-17 64-17c17.33 0 33.16 3.5 47.5 10.5 14.33 6.667 25.33 16.167 33 28.5v-156.5h60.5v372h-56l-4-38.5c-7.34 14-18.67 25-34 33-15 8-31.84 12-50.5 12zm13.5-56c14.33 0 26.66-3 37-9 10.33-6.333 18.33-15.167 24-26.5 6-11.667 9-24.833 9-39.5 0-15-3-28-9-39-5.67-11.333-13.67-20.167-24-26.5-10.34-6.667-22.67-10-37-10-14 0-26.17 3.333-36.5 10-10.34 6.333-18.34 15.167-24 26.5-5.34 11.333-8 24.333-8 39s2.66 27.667 8 39c5.66 11.333 13.66 20.167 24 26.5 10.33 6.333 22.5 9.5 36.5 9.5z"}),(0,Nt.jsx)("path",{d:"m1996.45 372v-247h61v247zm30-296.5c-10.34 0-19.17-3.5-26.5-10.5-7-7.3333-10.5-16.1667-10.5-26.5s3.5-19 10.5-26c7.33-6.99999 16.16-10.49998 26.5-10.49998 10.33 0 19 3.49999 26 10.49998 7.33 7 11 15.6667 11 26s-3.67 19.1667-11 26.5c-7 7-15.67 10.5-26 10.5z"}),(0,Nt.jsx)("path",{d:"m2085.97 125h155v51h-155zm155.5-122.5v52c-3.33 0-6.83 0-10.5 0-3.33 0-6.83 0-10.5 0-15.33 0-25.67 3.6667-31 11-5 7.3333-7.5 17.1667-7.5 29.5v277h-60.5v-277c0-22.6667 3.67-40.8333 11-54.5 7.33-14 17.67-24.1667 31-30.5 13.33-6.66666 28.83-10 46.5-10 5 0 10.17.166671 15.5.5 5.67.333329 11 .99999 16 2z"}),(0,Nt.jsx)("path",{d:"m2330.4 125 80.5 228-33 62.5-112-290.5zm-58 361.5v-50.5h36.5c8 0 15-1 21-3 6-1.667 11.34-5 16-10 5-5 9.17-12.333 12.5-22l102.5-276h63l-121 302c-9 22.667-20.33 39.167-34 49.5-13.66 10.333-30.66 15.5-51 15.5-8.66 0-16.83-.5-24.5-1.5-7.33-.667-14.33-2-21-4z"}),(0,Nt.jsx)("path",{clipRule:"evenodd",d:"m226.926 25.1299h83.271c23.586 0 32.123 2.4639 40.751 7.0633 8.628 4.6176 15.378 11.389 19.993 20.0037 4.615 8.6329 7.059 17.1746 7.059 40.7738v83.3183c0 23.599-2.463 32.141-7.059 40.774-4.615 8.633-11.383 15.386-19.993 20.003-3.857 2.065-7.704 3.764-12.884 4.981v66.308c0 36.447-3.803 49.639-10.902 62.972-7.128 13.333-17.579 23.763-30.877 30.894-13.325 7.132-26.51 10.909-62.936 10.909h-128.605c-36.4268 0-49.6113-3.805-62.9367-10.909-13.3254-7.131-23.749-17.589-30.8765-30.894-7.12757-13.304-10.9308-26.525-10.9308-62.972v-128.649c0-36.447 3.80323-49.639 10.9026-62.972 7.1275-13.333 17.5793-23.7909 30.9047-30.9224 13.2972-7.1034 26.5099-10.9088 62.9367-10.9088h55.064c1.033-10.8281 3.188-16.7362 6.357-22.6877 4.615-8.6329 11.382-15.4043 20.01-20.0219 8.61-4.5994 17.165-7.0633 40.751-7.0633zm-42.798 53.0342c0-15.464 12.53-28 27.986-28h112.877c15.457 0 27.987 12.536 27.987 28v112.9319c0 15.464-12.53 28-27.987 28h-112.877c-15.456 0-27.986-12.536-27.986-28z",fillRule:"evenodd"})]})});const Mn=(0,Nt.jsx)(An,{fill:"none",height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",children:(0,Nt.jsx)("path",{d:"m11.9893 2.59931c-.1822.00285-.3558.07789-.4827.20864s-.1967.30653-.1941.48871v1.375c-.0013.0911.0156.18155.0495.26609.034.08454.0844.16149.1484.22637s.1402.11639.2242.15156c.0841.03516.1743.05327.2654.05327s.1813-.01811.2654-.05327c.084-.03517.1603-.08668.2242-.15156.064-.06488.1144-.14183.1484-.22637s.0508-.17499.0495-.26609v-1.375c.0013-.09202-.0158-.18337-.0505-.26863-.0346-.08526-.086-.1627-.1511-.22773s-.1426-.11633-.2279-.15085c-.0853-.03453-.1767-.05158-.2687-.05014zm-5.72562.46013c-.1251.00033-.24775.0348-.35471.09968-.10697.06488-.19421.15771-.25232.2685-.05812.1108-.0849.23534-.07747.36023.00744.12488.0488.24537.11964.34849l.91667 1.375c.04939.07667.11354.14274.18872.19437.07517.05164.15987.0878.24916.10639.08928.01858.18137.01922.27091.00187.08953-.01734.17472-.05233.2506-.10292.07589-.05059.14095-.11577.1914-.19174.05045-.07598.08528-.16123.10246-.2508.01719-.08956.01638-.18165-.00237-.2709s-.05507-.17388-.10684-.24897l-.91666-1.375c-.06252-.09667-.14831-.1761-.2495-.231-.1012-.0549-.21456-.08351-.32969-.0832zm11.45212 0c-.1117.00307-.2209.03329-.3182.08804-.0973.05474-.1798.13237-.2404.22616l-.9167 1.375c-.0518.07509-.0881.15972-.1068.24897-.0188.08925-.0196.18134-.0024.2709.0172.08957.052.17482.1024.2508.0505.07597.1156.14115.1914.19174.0759.05059.1611.08558.2506.10292.0896.01735.1817.01671.271-.00187.0892-.01859.1739-.05475.2491-.10639.0752-.05163.1393-.1177.1887-.19437l.9167-1.375c.0719-.10456.1135-.22698.1201-.3537s-.022-.25281-.0826-.36429c-.0606-.11149-.1508-.20403-.2608-.26738-.11-.06334-.2353-.09502-.3621-.09153zm-9.61162 3.67472c-.09573-.00001-.1904.01998-.27795.05867-.08756.03869-.16607.09524-.23052.16602l-4.58333 5.04165c-.11999.1319-.18407.3052-.17873.4834.00535.1782.0797.3473.20738.4718l8.47917 8.25c.1284.1251.3006.1951.4798.1951.1793 0 .3514-.07.4798-.1951l8.4792-8.25c.1277-.1245.202-.2936.2074-.4718.0053-.1782-.0588-.3515-.1788-.4834l-4.5833-5.04165c-.0644-.07078-.1429-.12733-.2305-.16602s-.1822-.05868-.278-.05867h-3.877zm.30436 1.375h2.21646l-2.61213 3.48314c-.04258.0557-.07639.1176-.10026.1835h-2.83773zm4.96646 0h2.2165l3.3336 3.66664h-2.8368c-.0241-.066-.0582-.1278-.1011-.1835zm-1.375.45833 2.4063 3.20831h-4.81254zm-6.78637 4.58331h2.70077c.00665.0188.01412.0374.02238.0555l2.11442 4.6505zm4.20826 0h5.15621l-2.5781 5.6719zm6.66371 0h2.7008l-4.8376 4.706 2.1144-4.6505c.0083-.0181.0158-.0367.0224-.0555z",fill:"#000"})});const Rn=(0,Nt.jsxs)(An,{viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,Nt.jsx)(_n,{d:"M7.32457 0.907043C3.98785 0.907043 1.2829 3.61199 1.2829 6.94871C1.2829 10.2855 3.98785 12.9904 7.32457 12.9904C10.6613 12.9904 13.3663 10.2855 13.3663 6.94871C13.3663 3.61199 10.6613 0.907043 7.32457 0.907043V0.907043Z",stroke:"white",strokeWidth:"1.25"}),(0,Nt.jsx)(_n,{d:"M7.32458 10.0998L4.82458 7.59977M7.32458 10.0998V3.79764V10.0998ZM7.32458 10.0998L9.82458 7.59977L7.32458 10.0998Z",stroke:"white",strokeWidth:"1.25"})]});const Dn=(0,Nt.jsxs)(An,{viewBox:"0 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,Nt.jsx)("path",{d:"M7.93298 20.2773L17.933 20.2773C18.1982 20.2773 18.4526 20.172 18.6401 19.9845C18.8276 19.7969 18.933 19.5426 18.933 19.2773C18.933 19.0121 18.8276 18.7578 18.6401 18.5702C18.4526 18.3827 18.1982 18.2773 17.933 18.2773L7.93298 18.2773C7.66777 18.2773 7.41341 18.3827 7.22588 18.5702C7.03834 18.7578 6.93298 19.0121 6.93298 19.2773C6.93298 19.5426 7.03834 19.7969 7.22588 19.9845C7.41341 20.172 7.66777 20.2773 7.93298 20.2773Z",fill:"white"}),(0,Nt.jsx)("path",{d:"M12.933 4.27734C12.6678 4.27734 12.4134 4.3827 12.2259 4.57024C12.0383 4.75777 11.933 5.01213 11.933 5.27734L11.933 12.8673L9.64298 10.5773C9.55333 10.4727 9.44301 10.3876 9.31895 10.3276C9.19488 10.2676 9.05975 10.2339 8.92203 10.2285C8.78431 10.2232 8.64698 10.2464 8.51865 10.2967C8.39033 10.347 8.27378 10.4232 8.17632 10.5207C8.07887 10.6181 8.00261 10.7347 7.95234 10.863C7.90206 10.9913 7.87886 11.1287 7.88418 11.2664C7.8895 11.4041 7.92323 11.5392 7.98325 11.6633C8.04327 11.7874 8.12829 11.8977 8.23297 11.9873L12.233 15.9873C12.3259 16.0811 12.4365 16.1555 12.5584 16.2062C12.6803 16.257 12.811 16.2831 12.943 16.2831C13.075 16.2831 13.2057 16.257 13.3276 16.2062C13.4494 16.1555 13.56 16.0811 13.653 15.9873L17.653 11.9873C17.8168 11.796 17.9024 11.55 17.8927 11.2983C17.883 11.0466 17.7786 10.8079 17.6005 10.6298C17.4224 10.4517 17.1837 10.3474 16.932 10.3376C16.6804 10.3279 16.4343 10.4135 16.243 10.5773L13.933 12.8673L13.933 5.27734C13.933 5.01213 13.8276 4.75777 13.6401 4.57024C13.4525 4.3827 13.1982 4.27734 12.933 4.27734Z",fill:"white"})]});const Fn=(0,Nt.jsxs)(An,{fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[(0,Nt.jsx)(_n,{d:"m11.2721 16.9866.6041 2.2795.6042-2.2795.6213-2.3445c.0001-.0002.0001-.0004.0002-.0006.2404-.9015.8073-1.5543 1.4638-1.8165.0005-.0002.0009-.0004.0013-.0006l1.9237-.7555 1.4811-.5818-1.4811-.5817-1.9264-.7566c0-.0001-.0001-.0001-.0001-.0001-.0001 0-.0001 0-.0001 0-.654-.25727-1.2213-.90816-1.4621-1.81563-.0001-.00006-.0001-.00011-.0001-.00017l-.6215-2.34519-.6042-2.27947-.6041 2.27947-.6216 2.34519v.00017c-.2409.90747-.80819 1.55836-1.46216 1.81563-.00002 0-.00003 0-.00005 0-.00006 0-.00011 0-.00017.0001l-1.92637.7566-1.48108.5817 1.48108.5818 1.92637.7566c.00007 0 .00015.0001.00022.0001.65397.2572 1.22126.9082 1.46216 1.8156v.0002z",stroke:"currentColor",strokeWidth:"1.25",fill:"none"}),(0,Nt.jsxs)(En,{fill:"currentColor",children:[(0,Nt.jsx)(_n,{d:"m18.1034 18.3982-.2787.8625-.2787-.8625c-.1314-.4077-.4511-.7275-.8589-.8589l-.8624-.2786.8624-.2787c.4078-.1314.7275-.4512.8589-.8589l.2787-.8624.2787.8624c.1314.4077.4511.7275.8589.8589l.8624.2787-.8624.2786c-.4078.1314-.7269.4512-.8589.8589z"}),(0,Nt.jsx)(_n,{d:"m6.33141 6.97291-.27868.86242-.27867-.86242c-.13142-.40775-.45116-.72749-.8589-.85891l-.86243-.27867.86243-.27868c.40774-.13141.72748-.45115.8589-.8589l.27867-.86242.27868.86242c.13142.40775.45116.72749.8589.8589l.86242.27868-.86242.27867c-.40774.13142-.7269.45116-.8589.85891z"})]})]});const Bn=(0,Nt.jsx)(An,{fill:"none",height:"25",viewBox:"0 0 25 25",width:"25",xmlns:"http://www.w3.org/2000/svg",children:(0,Nt.jsx)(_n,{d:"m16.2382 9.17969.7499.00645.0066-.75988-.7599.00344zm-5.5442.77506 5.5475-.02507-.0067-1.49998-5.5476.02506zm4.7942-.78152-.0476 5.52507 1.5.0129.0475-5.52506zm.2196-.52387-7.68099 7.68104 1.06066 1.0606 7.68103-7.68098z",fill:"currentColor"})});const zn=(0,Nt.jsx)(An,{fill:"none",height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",children:(0,Nt.jsxs)(En,{stroke:"currentColor",strokeWidth:"1.5",children:[(0,Nt.jsx)(_n,{d:"m6 4.75h12c.6904 0 1.25.55964 1.25 1.25v12c0 .6904-.5596 1.25-1.25 1.25h-12c-.69036 0-1.25-.5596-1.25-1.25v-12c0-.69036.55964-1.25 1.25-1.25z"}),(0,Nt.jsx)(_n,{d:"m9.25 19v-14"})]})});const Un=(0,Nt.jsxs)(An,{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,Nt.jsx)(_n,{fillRule:"evenodd",clipRule:"evenodd",d:"M7.49271 18.0092C6.97815 17.1176 7.28413 15.9755 8.17569 15.4609C9.06724 14.946 10.2094 15.252 10.7243 16.1435C11.2389 17.0355 10.9329 18.1772 10.0413 18.6922C9.14978 19.2071 8.00764 18.9011 7.49271 18.0092V18.0092Z",fill:"currentColor"}),(0,Nt.jsx)(_n,{fillRule:"evenodd",clipRule:"evenodd",d:"M16.5073 6.12747C17.0218 7.01903 16.7158 8.16117 15.8243 8.67573C14.9327 9.19066 13.7906 8.88467 13.2757 7.99312C12.7611 7.10119 13.0671 5.95942 13.9586 5.44449C14.8502 4.92956 15.9923 5.23555 16.5073 6.12747V6.12747Z",fill:"currentColor"}),(0,Nt.jsx)(_n,{fillRule:"evenodd",clipRule:"evenodd",d:"M4.60135 11.1355C5.11628 10.2439 6.25805 9.93793 7.14998 10.4525C8.04153 10.9674 8.34752 12.1096 7.83296 13.0011C7.31803 13.8927 6.17588 14.1987 5.28433 13.6841C4.39278 13.1692 4.08679 12.0274 4.60135 11.1355V11.1355Z",fill:"currentColor"}),(0,Nt.jsx)(_n,{fillRule:"evenodd",clipRule:"evenodd",d:"M19.3986 13.0011C18.8837 13.8927 17.7419 14.1987 16.85 13.6841C15.9584 13.1692 15.6525 12.027 16.167 11.1355C16.682 10.2439 17.8241 9.93793 18.7157 10.4525C19.6072 10.9674 19.9132 12.1092 19.3986 13.0011V13.0011Z",fill:"currentColor"}),(0,Nt.jsx)(_n,{d:"M9.10857 8.92594C10.1389 8.92594 10.9742 8.09066 10.9742 7.06029C10.9742 6.02992 10.1389 5.19464 9.10857 5.19464C8.0782 5.19464 7.24292 6.02992 7.24292 7.06029C7.24292 8.09066 8.0782 8.92594 9.10857 8.92594Z",fill:"currentColor"}),(0,Nt.jsx)(_n,{d:"M14.8913 18.942C15.9217 18.942 16.7569 18.1067 16.7569 17.0763C16.7569 16.046 15.9217 15.2107 14.8913 15.2107C13.8609 15.2107 13.0256 16.046 13.0256 17.0763C13.0256 18.1067 13.8609 18.942 14.8913 18.942Z",fill:"currentColor"}),(0,Nt.jsx)(_n,{fillRule:"evenodd",clipRule:"evenodd",d:"M10.3841 13.0011C9.86951 12.1096 10.1755 10.9674 11.067 10.4525C11.9586 9.93793 13.1007 10.2439 13.6157 11.1355C14.1302 12.0274 13.8242 13.1692 12.9327 13.6841C12.0411 14.1987 10.899 13.8927 10.3841 13.0011V13.0011Z",fill:"currentColor"})]});const Wn=(0,Nt.jsxs)(An,{fill:"none",viewBox:"0 0 151 148",width:"151",xmlns:"http://www.w3.org/2000/svg",children:[(0,Nt.jsx)(On,{cx:"65.6441",cy:"66.6114",fill:"#0b4a43",r:"65.3897"}),(0,Nt.jsxs)(En,{fill:"#cbc3f5",stroke:"#0b4a43",children:[(0,Nt.jsx)(_n,{d:"m61.73 11.3928 3.0825 8.3304.1197.3234.3234.1197 8.3304 3.0825-8.3304 3.0825-.3234.1197-.1197.3234-3.0825 8.3304-3.0825-8.3304-.1197-.3234-.3234-.1197-8.3304-3.0825 8.3304-3.0825.3234-.1197.1197-.3234z",strokeWidth:"1.5"}),(0,Nt.jsx)(_n,{d:"m84.3065 31.2718c0 5.9939-12.4614 22.323-18.6978 22.323h-17.8958v56.1522c3.5249.9 11.6535 0 17.8958 0h6.2364c11.2074 3.33 36.0089 7.991 45.5529 0l-9.294-62.1623c-2.267-1.7171-5.949-6.6968-2.55-12.8786 3.4-6.1817 2.55-18.0406 0-24.5756-1.871-4.79616-8.3289-8.90882-14.4482-8.90882s-7.0825 4.00668-6.7993 6.01003z",strokeWidth:"1.75"}),(0,Nt.jsx)(Nn,{height:"45.5077",rx:"9.13723",strokeWidth:"1.75",transform:"matrix(0 1 -1 0 191.5074 -96.0026)",width:"18.2745",x:"143.755",y:"47.7524"}),(0,Nt.jsx)(Nn,{height:"42.3038",rx:"8.73674",strokeWidth:"1.75",transform:"matrix(0 1 -1 0 241.97 -50.348)",width:"17.4735",x:"146.159",y:"95.811"}),(0,Nt.jsx)(Nn,{height:"55.9204",rx:"8.73674",strokeWidth:"1.75",transform:"matrix(0 1 -1 0 213.1347 -85.5913)",width:"17.4735",x:"149.363",y:"63.7717"}),(0,Nt.jsx)(Nn,{height:"51.1145",rx:"8.73674",strokeWidth:"1.75",transform:"matrix(0 1 -1 0 229.1545 -69.5715)",width:"17.4735",x:"149.363",y:"79.7915"}),(0,Nt.jsx)(_n,{d:"m75.7483 105.349c.9858-25.6313-19.2235-42.0514-32.8401-44.0538v12.0146c8.5438 1.068 24.8303 9.7642 24.8303 36.0442 0 23.228 19.4905 33.374 29.6362 33.641v-10.413s-22.6122-1.602-21.6264-27.233z",strokeWidth:"1.75"}),(0,Nt.jsx)(_n,{d:"m68.5388 109.354c.9858-25.6312-19.2234-42.0513-32.8401-44.0537v12.0147c8.5438 1.0679 24.8303 9.7641 24.8303 36.044 0 23.228 19.4905 33.374 29.6362 33.641v-10.413s-22.6122-1.602-21.6264-27.233z",strokeWidth:"1.75"})]})]});const qn=(0,Nt.jsxs)(An,{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,Nt.jsx)(On,{cx:"12",cy:"12",r:"7.25",stroke:"currentColor",strokeWidth:"1.5"}),(0,Nt.jsx)(On,{cx:"12",cy:"12",r:"4.25",stroke:"currentColor",strokeWidth:"1.5"}),(0,Nt.jsx)(On,{cx:"11.9999",cy:"12.2",r:"6",transform:"rotate(-45 11.9999 12.2)",stroke:"currentColor",strokeWidth:"3",strokeDasharray:"1.5 4"})]});const $n=(0,Nt.jsx)(An,{fill:"none",height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",children:(0,Nt.jsx)(_n,{d:"m11.7758 3.45425c.0917-.18582.3567-.18581.4484 0l2.3627 4.78731c.0364.07379.1068.12493.1882.13676l5.2831.76769c.2051.02979.287.28178.1386.42642l-3.8229 3.72637c-.0589.0575-.0858.1402-.0719.2213l.9024 5.2618c.0351.2042-.1793.36-.3627.2635l-4.7254-2.4842c-.0728-.0383-.1598-.0383-.2326 0l-4.7254 2.4842c-.18341.0965-.39776-.0593-.36274-.2635l.90247-5.2618c.01391-.0811-.01298-.1638-.0719-.2213l-3.8229-3.72637c-.14838-.14464-.0665-.39663.13855-.42642l5.28312-.76769c.08143-.01183.15182-.06297.18823-.13676z",fill:"currentColor"})});const Hn=(0,Nt.jsx)(An,{fill:"none",viewBox:"0 0 25 25",xmlns:"http://www.w3.org/2000/svg",children:(0,Nt.jsx)(_n,{clipRule:"evenodd",d:"m13 4c4.9545 0 9 4.04545 9 9 0 4.9545-4.0455 9-9 9-4.95455 0-9-4.0455-9-9 0-4.95455 4.04545-9 9-9zm5.0909 13.4545c-1.9545 3.8637-8.22726 3.8637-10.22726 0-.04546-.1818-.04546-.3636 0-.5454 2-3.8636 8.27276-3.8636 10.22726 0 .0909.1818.0909.3636 0 .5454zm-5.0909-8.90905c-1.2727 0-2.3182 1.04546-2.3182 2.31815 0 1.2728 1.0455 2.3182 2.3182 2.3182s2.3182-1.0454 2.3182-2.3182c0-1.27269-1.0455-2.31815-2.3182-2.31815z",fill:"currentColor",fillRule:"evenodd"})});function Vn(e){const{body:t}=document.implementation.createHTMLDocument("");t.innerHTML=e;const n=t.getElementsByTagName("*");let r=n.length;for(;r--;){const e=n[r];if("SCRIPT"===e.tagName)(o=e).parentNode,o.parentNode.removeChild(o);else{let t=e.attributes.length;for(;t--;){const{name:n}=e.attributes[t];n.startsWith("on")&&e.removeAttribute(n)}}}var o;return t.innerHTML}var Gn=(0,r.memo)((function(){var e=z((function(e){return e.remainingImports})),t=z((function(e){return e.allowedImports})),n=e(),o=n>0?"has-imports":"no-imports",i="has-imports"===o?"bg-extendify-main hover:bg-extendify-main-dark":"bg-extendify-alert",a="has-imports"===o?Rn:Pn,s=(0,r.useRef)();return(0,r.useEffect)((function(){if(t<1||!t){_().then((function(e){e=/^[1-9]\d*$/.test(e)?e:5,z.setState({allowedImports:e})})).catch((function(){return z.setState({allowedImports:5})}))}}),[t]),t?(0,Nt.jsxs)("div",{tabIndex:"0",className:"group relative",children:[(0,Nt.jsxs)("a",{target:"_blank",ref:s,rel:"noreferrer",className:kt()(i,"hidden sm:flex w-full no-underline button-focus text-sm justify-between py-3 px-4 text-white rounded"),href:"https://www.extendify.com/pricing/?utm_source=".concat(encodeURIComponent(window.extendifyData.sdk_partner),"&utm_medium=library&utm_campaign=import-counter&utm_content=get-more&utm_term=").concat(o),children:[(0,Nt.jsxs)("span",{className:"flex items-center space-x-2 no-underline text-xs",children:[(0,Nt.jsx)(Sn,{icon:a,size:14}),(0,Nt.jsx)("span",{children:(0,bt.sprintf)((0,bt._n)("%s Import","%s Imports",n,"extendify"),n)})]}),(0,Nt.jsxs)("span",{className:"text-white text-sm no-underline font-medium outline-none flex items-center",children:[(0,bt.__)("Get more","extendify"),(0,Nt.jsx)(Sn,{icon:Bn,size:24,className:"-mr-1.5"})]})]}),(0,Nt.jsx)("div",{className:"invisible opacity-0 -translate-y-full absolute duration-300 delay-200 ease-in-out group-hover:-top-2.5 group-hover:opacity-100 group-hover:visible group-focus:-top-2.5 group-focus:opacity-100 group-focus:visible top-0 transform transition-all w-full extendify-bottom-arrow shadow-md",tabIndex:"-1",children:(0,Nt.jsx)("a",{href:"https://www.extendify.com/pricing/?utm_source=".concat(encodeURIComponent(window.extendifyData.sdk_partner),"&utm_medium=library&utm_campaign=import-counter-tooltip&utm_content=get-50-off&utm_term=").concat(o),className:"block bg-gray-900 text-white p-4 no-underline rounded bg-cover",style:{backgroundImage:"url(".concat(window.extendifyData.asset_path,"/logo-tips.png)")},children:(0,Nt.jsx)("span",{dangerouslySetInnerHTML:{__html:Vn((0,bt.sprintf)((0,bt.__)("%1$sGet %2$s off%3$s Extendify Pro when you upgrade today!","extendify"),"<strong>","50%","</strong>"))}})})})]}):null}));var Jn=(0,r.memo)((function(){var e,t,n,r,o,i=U((function(e){return e.taxonomies})),a=K((function(e){return e.searchParams})),s=z((function(e){return e.updatePreferredSiteType})),l=K((function(e){return e.updateTaxonomies})),c=z((function(e){return e.apiKey})),u="pattern"===a.type?"patternType":"layoutType",d=!(null!=a&&null!==(e=a.taxonomies[u])&&void 0!==e&&null!==(t=e.slug)&&void 0!==t&&t.length);return(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsx)("div",{className:"hidden sm:flex px-5 -ml-1.5 text-extendify-black",children:(0,Nt.jsx)(Sn,{icon:In,size:40})}),(0,Nt.jsx)("div",{className:"px-5",children:(0,Nt.jsxs)("button",{onClick:function(){return l((n={slug:"",title:"Featured"},(t=u)in(e={})?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e));var e,t,n},className:kt()("text-left text-sm cursor-pointer w-full flex items-center px-0 py-2 m-0 leading-none bg-transparent hover:text-wp-theme-500 transition duration-200 button-focus space-x-1",{"text-wp-theme-500":d}),children:[(0,Nt.jsx)(Sn,{icon:Fn,size:24}),(0,Nt.jsx)("span",{className:"text-sm",children:(0,bt.__)("Featured","extendify")})]})}),(0,Nt.jsx)("div",{className:"sm:mb-8 mx-6 sm:mx-0 sm:mt-0 pt-0.5 px-5",children:Object.keys(null!==(n=null==i?void 0:i.siteType)&&void 0!==n?n:{}).length>0&&(0,Nt.jsx)(Cn,{value:null!==(r=null==a||null===(o=a.taxonomies)||void 0===o?void 0:o.siteType)&&void 0!==r?r:"",setValue:function(e){s(e),l({siteType:e})},terms:i.siteType})}),(0,Nt.jsx)("div",{className:"mt-px flex-grow hidden overflow-y-auto pb-32 pt-px sm:block",children:(0,Nt.jsx)(wt.Panel,{className:"bg-transparent",children:(0,Nt.jsx)(At,{taxType:u,taxonomies:i[u]})})}),!c.length&&(0,Nt.jsx)("div",{className:"px-5",children:(0,Nt.jsx)(Gn,{})})]})}));function Kn(e){var t=e.children;return(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsx)("aside",{className:"flex-shrink-0 py-0 sm:py-5 relative border-r border-extendify-transparent-black-100 bg-extendify-transparent-white backdrop-filter backdrop-blur-xl backdrop-saturate-200",children:(0,Nt.jsx)("div",{className:"flex flex-col h-full sm:w-64 py-6 sm:py-0 sm:space-y-6",children:t[0]})}),(0,Nt.jsx)("main",{id:"extendify-templates",className:"bg-gray-50 w-full pt-6 sm:pt-0 h-full overflow-hidden",children:t[1]})]})}const Zn=(0,r.createElement)(An,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},(0,r.createElement)(_n,{d:"M13 11.8l6.1-6.3-1-1-6.1 6.2-6.1-6.2-1 1 6.1 6.3-6.5 6.7 1 1 6.5-6.6 6.5 6.6 1-1z"}));var Xn=function(e){var t=e.className,n=K((function(e){return e.updateType})),r=g((function(e){var t;return null!==(t=null==e?void 0:e.currentType)&&void 0!==t?t:"pattern"}));return(0,Nt.jsxs)("div",{className:t,children:[(0,Nt.jsx)("h4",{className:"sr-only",children:(0,bt.__)("Type select","extendify")}),(0,Nt.jsx)("button",{type:"button",className:kt()({"cursor-pointer text-xs leading-none m-0 py-2.5 px-4 min-w-sm border rounded-tl-sm rounded-bl-sm border-black button-focus":!0,"bg-gray-900 text-white":"pattern"===r,"bg-transparent text-black":"pattern"!==r}),onClick:function(){return n("pattern")},children:(0,Nt.jsx)("span",{className:"",children:(0,bt.__)("Patterns","extendify")})}),(0,Nt.jsx)("button",{type:"button",className:kt()({"cursor-pointer text-xs leading-none m-0 py-2.5 px-4 min-w-sm items-center border rounded-tr-sm rounded-br-sm border-black outline-none -ml-px button-focus":!0,"bg-gray-900 text-white":"template"===r,"bg-transparent text-black":"template"!==r}),onClick:function(){return n("template")},children:(0,Nt.jsx)("span",{className:"",children:(0,bt.__)("Page Layouts","extendify")})})]})};function Yn(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Qn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Qn(e,t)}(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 Qn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function er(){var e=(0,r.useRef)(!1);return(0,r.useEffect)((function(){return e.current=!0,function(){return e.current=!1}})),e}var tr=function(){var e=Yn((0,r.useState)(!1),2),t=e[0],n=e[1],o=function(){n(window.location.search.indexOf("DEVMODE")>-1)};return(0,r.useEffect)((function(){return n(window.location.search.indexOf("DEVMODE")>-1),window.addEventListener("popstate",o),function(){window.removeEventListener("popstate",o)}}),[]),t};function nr(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function rr(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return or(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return or(e,t)}(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 or(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function ir(e){var t=e.actionCallback,n=e.initialFocus,o=z((function(e){return e.apiKey.length})),i=rr((0,r.useState)(""),2),a=i[0],s=i[1],l=rr((0,r.useState)(""),2),c=l[0],u=l[1],d=rr((0,r.useState)(""),2),f=d[0],p=d[1],h=rr((0,r.useState)("info"),2),m=h[0],x=h[1],y=rr((0,r.useState)(!1),2),v=y[0],g=y[1],b=rr((0,r.useState)(!1),2),j=b[0],k=b[1],C=(0,r.useRef)(null),S=(0,r.useRef)(null),E=tr();(0,r.useEffect)((function(){return s(z.getState().email),function(){return x("info")}}),[]),(0,r.useEffect)((function(){var e;j&&(null==C||null===(e=C.current)||void 0===e||e.focus())}),[j]);var _=function(){var e,t=(e=w().mark((function e(t){var n,r,o,i,s;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.preventDefault(),g(!0),p(""),e.next=5,O(a,c);case 5:if(n=e.sent,r=n.token,o=n.error,i=n.exception,void 0===(s=n.message)){e.next=15;break}return x("error"),g(!1),p(s.length?s:"Error: Are you interacting with the wrong server?"),e.abrupt("return");case 15:if(!o&&!i){e.next=20;break}return x("error"),g(!1),p(o.length?o:i),e.abrupt("return");case 20:if(r&&"string"==typeof r){e.next=25;break}return x("error"),g(!1),p((0,bt.__)("Something went wrong","extendify")),e.abrupt("return");case 25:x("success"),p("Success!"),k(!0),g(!1),z.setState({email:a,apiKey:r});case 30:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){nr(i,r,o,a,s,"next",e)}function s(e){nr(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}();return j?(0,Nt.jsxs)("section",{className:"w-80 space-y-8 text-center pt-2 pb-4",children:[(0,Nt.jsx)(Sn,{icon:Wn,size:148}),(0,Nt.jsx)("p",{className:"text-lg text-extendify-black text-center leading-extra-tight font-semibold",children:(0,bt.__)("You've signed in to Extendify","extendify")}),(0,Nt.jsx)(wt.Button,{ref:C,className:"px-4 p-2 cursor-pointer text-center rounded bg-extendify-main text-white",onClick:t,children:(0,bt.__)("View patterns","extendify")})]}):o?(0,Nt.jsxs)("section",{className:"space-y-8 w-full pb-2",children:[(0,Nt.jsx)("p",{className:"text-base text-extendify-black leading-extra-tight",children:(0,bt.__)("Account","extendify")}),(0,Nt.jsxs)("div",{className:"flex justify-between items-center",children:[(0,Nt.jsxs)("div",{className:"flex items-center space-x-2 -ml-2",children:[(0,Nt.jsx)(Sn,{icon:Hn,size:48}),(0,Nt.jsx)("p",{className:"text-extendify-black",children:null!=a&&a.length?a:(0,bt.__)("Logged In","extendify")})]}),E&&(0,Nt.jsx)(wt.Button,{className:"px-4 py-3 cursor-pointer text-center rounded bg-extendify-main hover:bg-extendify-main-dark text-white",onClick:function(){u(""),z.setState({apiKey:""}),setTimeout((function(){var e;null==S||null===(e=S.current)||void 0===e||e.focus()}),0)},children:(0,bt.__)("Sign out","extendify")})]})]}):(0,Nt.jsxs)("section",{className:"w-80 text-left space-y-8 pb-6",children:[(0,Nt.jsxs)("div",{children:[(0,Nt.jsx)("p",{className:"text-lg text-extendify-black text-center leading-extra-tight font-semibold",children:(0,bt.__)("Sign in to Extendify","extendify")}),(0,Nt.jsxs)("p",{className:"text-sm text-extendify-gray text-center space-x-1 leading-extra-tight",children:[(0,Nt.jsx)("span",{children:(0,bt.__)("Don't have an account?","extendify")}),(0,Nt.jsx)("a",{href:"https://extendify.com/pricing?utm_source=".concat(window.extendifyData.sdk_partner,"&utm_medium=library&utm_campaign=sign-in-form&utm_content=sign-up"),target:"_blank",className:"underline hover:no-underline text-extendify-gray",rel:"noreferrer",children:(0,bt.__)("Sign up","extendify")})]})]}),(0,Nt.jsxs)("form",{onSubmit:_,className:"space-y-2",children:[(0,Nt.jsxs)("div",{className:"flex items-center",children:[(0,Nt.jsx)("label",{className:"sr-only",htmlFor:"extendify-login-email",children:(0,bt.__)("Email address","extendify")}),(0,Nt.jsx)("input",{ref:n,id:"extendify-login-email",name:"extendify-login-email",type:"email",className:"border-2 p-2 w-full rounded",placeholder:(0,bt.__)("Email address","extendify"),value:a.length?a:"",onChange:function(e){return s(e.target.value)}})]}),(0,Nt.jsxs)("div",{className:"flex items-center",children:[(0,Nt.jsx)("label",{className:"sr-only",htmlFor:"extendify-login-license",children:(0,bt.__)("License key","extendify")}),(0,Nt.jsx)("input",{ref:S,id:"extendify-login-license",name:"extendify-login-license",type:"text",className:"border-2 p-2 w-full rounded",placeholder:(0,bt.__)("License key","extendify"),value:c,onChange:function(e){return u(e.target.value)}})]}),(0,Nt.jsx)("div",{className:"pt-2 flex justify-center",children:(0,Nt.jsxs)("button",{type:"submit",className:"relative p-2 py-3 w-72 max-w-full flex justify-center cursor-pointer text-center rounded bg-extendify-main hover:bg-extendify-main-dark text-base text-white ",children:[(0,Nt.jsx)("span",{children:(0,bt.__)("Sign In","extendify")}),v&&(0,Nt.jsx)("div",{className:"absolute right-2.5",children:(0,Nt.jsx)(wt.Spinner,{})})]})}),f&&(0,Nt.jsx)("div",{className:kt()({"border-gray-900 text-gray-900":"info"===m,"border-wp-alert-red text-wp-alert-red":"error"===m,"border-extendify-main text-extendify-main":"success"===m}),children:f}),(0,Nt.jsx)("div",{className:"text-center pt-4",children:(0,Nt.jsx)("a",{target:"_blank",rel:"noreferrer",href:"https://extendify.com/guides/sign-in?utm_source=".concat(window.extendifyData.sdk_partner,"&utm_medium=library&utm_campaign=sign-in-form&utm_content=need-help"),className:"underline hover:no-underline text-sm text-extendify-gray",children:(0,bt.__)("Need Help?","extendify")})})]})]})}function ar(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function sr(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ar(Object(n),!0).forEach((function(t){lr(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ar(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function lr(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var cr=(0,r.forwardRef)((function(e,t){var n,o=e.isOpen,i=e.heading,a=e.onClose,s=e.children,l=(0,r.useRef)(null),c=g((function(e){return e.removeAllModals}));return a=null!==(n=a)&&void 0!==n?n:c,(0,Nt.jsx)(Ie,{appear:!0,show:o,as:r.Fragment,className:"extendify",children:(0,Nt.jsx)(gt,{initialFocus:null!=t?t:l,onClose:a,children:(0,Nt.jsxs)("div",{className:"fixed z-high inset-0 flex",children:[(0,Nt.jsx)(Ie.Child,{as:r.Fragment,enter:"ease-out duration-200 transition",enterFrom:"opacity-0",enterTo:"opacity-100",children:(0,Nt.jsx)(gt.Overlay,{className:"fixed inset-0 bg-black bg-opacity-40"})}),(0,Nt.jsx)(Ie.Child,{as:r.Fragment,enter:"ease-out duration-300 translate transform",enterFrom:"opacity-0 translate-y-4 sm:translate-y-5",enterTo:"opacity-100 translate-y-0",children:(0,Nt.jsx)("div",{className:"m-auto relative w-full",children:(0,Nt.jsxs)("div",{className:"bg-white shadow-modal items-center justify-center m-auto max-w-lg relative rounded-sm w-full",children:[i?(0,Nt.jsxs)("div",{className:"border-b flex justify-between items-center leading-none pl-8 py-2 pr-3",children:[(0,Nt.jsx)("span",{className:"text-base text-extendify-black whitespace-nowrap",children:i}),(0,Nt.jsx)(ur,{onClick:a})]}):(0,Nt.jsx)("div",{className:"absolute block px-4 py-4 top-0 right-0 ",children:(0,Nt.jsx)(ur,{ref:l,onClick:a})}),(0,Nt.jsx)("div",{children:s})]})})})]})})})})),ur=(0,r.forwardRef)((function(e,t){return(0,Nt.jsx)(wt.Button,sr(sr({},e),{},{icon:(0,Nt.jsx)(Sn,{icon:Zn}),ref:t,className:"text-extendify-black opacity-75 hover:opacity-100",showTooltip:!1,label:(0,bt.__)("Close dialog","extendify")}))}));function dr(){var e=(0,r.useRef)(null),t=g((function(e){return e.removeAllModals}));return(0,Nt.jsx)(cr,{heading:(0,bt.__)("Settings","extendify"),isOpen:!0,ref:e,children:(0,Nt.jsx)("div",{className:"flex p-6 justify-center",children:(0,Nt.jsx)(ir,{initialFocus:e,actionCallback:t})})})}var fr=(0,r.memo)((function(e){var t=e.className,n=g((function(e){return e.setOpen})),r=g((function(e){return e.pushModal})),o=z((function(e){return e.apiKey.length}));return(0,Nt.jsx)("div",{className:t,children:(0,Nt.jsxs)("div",{className:"flex justify-between items-center h-full",children:[(0,Nt.jsx)("div",{className:"flex-1"}),(0,Nt.jsx)(Xn,{className:"flex-1 flex items-center justify-center"}),(0,Nt.jsxs)("div",{className:"flex-1 flex justify-end items-center",children:[(0,Nt.jsx)(wt.Button,{onClick:function(){return r((0,Nt.jsx)(dr,{}))},icon:(0,Nt.jsx)(Sn,{icon:Hn,size:24}),label:(0,bt.__)("Login and settings area","extendify"),children:o?"":(0,bt.__)("Sign in","extendify")}),(0,Nt.jsx)(wt.Button,{onClick:function(){return n(!1)},icon:(0,Nt.jsx)(Sn,{icon:Zn,size:24}),label:(0,bt.__)("Close library","extendify")})]})]})})}));function pr(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function hr(){return hr=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},hr.apply(this,arguments)}function mr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function xr(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?mr(Object(n),!0).forEach((function(t){yr(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):mr(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function yr(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const vr={breakpointCols:void 0,className:void 0,columnClassName:void 0,children:void 0,columnAttrs:void 0,column:void 0};class gr extends i().Component{constructor(e){let t;super(e),this.reCalculateColumnCount=this.reCalculateColumnCount.bind(this),this.reCalculateColumnCountDebounce=this.reCalculateColumnCountDebounce.bind(this),t=this.props.breakpointCols&&this.props.breakpointCols.default?this.props.breakpointCols.default:parseInt(this.props.breakpointCols)||2,this.state={columnCount:t}}componentDidMount(){this.reCalculateColumnCount(),window&&window.addEventListener("resize",this.reCalculateColumnCountDebounce)}componentDidUpdate(){this.reCalculateColumnCount()}componentWillUnmount(){window&&window.removeEventListener("resize",this.reCalculateColumnCountDebounce)}reCalculateColumnCountDebounce(){window&&window.requestAnimationFrame?(window.cancelAnimationFrame&&window.cancelAnimationFrame(this._lastRecalculateAnimationFrame),this._lastRecalculateAnimationFrame=window.requestAnimationFrame((()=>{this.reCalculateColumnCount()}))):this.reCalculateColumnCount()}reCalculateColumnCount(){const e=window&&window.innerWidth||1/0;let t=this.props.breakpointCols;"object"!=typeof t&&(t={default:parseInt(t)||2});let n=1/0,r=t.default||2;for(let o in t){const i=parseInt(o);i>0&&e<=i&&i<n&&(n=i,r=t[o])}r=Math.max(1,parseInt(r)||1),this.state.columnCount!==r&&this.setState({columnCount:r})}itemsInColumns(){const e=this.state.columnCount,t=new Array(e),n=i().Children.toArray(this.props.children);for(let r=0;r<n.length;r++){const o=r%e;t[o]||(t[o]=[]),t[o].push(n[r])}return t}renderColumns(){const{column:e,columnAttrs:t={},columnClassName:n}=this.props,r=this.itemsInColumns(),o=100/r.length+"%";let a=n;a&&"string"!=typeof a&&(this.logDeprecated('The property "columnClassName" requires a string'),void 0===a&&(a="my-masonry-grid_column"));const s=xr(xr(xr({},e),t),{},{style:xr(xr({},t.style),{},{width:o}),className:a});return r.map(((e,t)=>i().createElement("div",hr({},s,{key:t}),e)))}logDeprecated(e){console.error("[Masonry]",e)}render(){const e=this.props,{children:t,breakpointCols:n,columnClassName:r,columnAttrs:o,column:a,className:s}=e,l=pr(e,["children","breakpointCols","columnClassName","columnAttrs","column","className"]);let c=s;return"string"!=typeof s&&(this.logDeprecated('The property "className" requires a string'),void 0===s&&(c="my-masonry-grid")),i().createElement("div",hr({},l,{className:c}),this.renderColumns())}}gr.defaultProps=vr;const br=gr;function wr(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function jr(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){wr(i,r,o,a,s,"next",e)}function s(e){wr(i,r,o,a,s,"throw",e)}a(void 0)}))}}var kr=0,Cr=function(e){var t=arguments;return jr(w().mark((function n(){var r,o,i,a,s,l;return w().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return i=t.length>1&&void 0!==t[1]?t[1]:{},kr++,a="pattern"===e.type?"8":"4",s="pattern"===e.type?"patternType":"layoutType",l=Object.assign({filterByFormula:Er(e,s),pageSize:a,categories:e.taxonomies,search:e.search,type:e.type,offset:"",initial:1===kr,request_count:kr,sdk_partner:null!==(r=null===(o=z.getState())||void 0===o?void 0:o.sdkPartner)&&void 0!==r?r:""},i),n.next=7,k.post("templates",l);case 7:return n.abrupt("return",n.sent);case 8:case"end":return n.stop()}}),n)})))()},Sr=function(e){var t,n;return k.post("templates/".concat(e.id),{template_id:null==e?void 0:e.id,maybe_import:!0,type:null===(t=e.fields)||void 0===t?void 0:t.type,pageSize:"1",template_name:null===(n=e.fields)||void 0===n?void 0:n.title})},Or=function(e){var t,n,r,o,i;return k.post("templates/".concat(e.id),{template_id:e.id,imported:!0,basePattern:null!==(t=null!==(n=null===(r=e.fields)||void 0===r?void 0:r.basePattern)&&void 0!==n?n:null===(o=e.fields)||void 0===o?void 0:o.baseLayout)&&void 0!==t?t:"",type:e.fields.type,pageSize:"1",template_name:null===(i=e.fields)||void 0===i?void 0:i.title})},Er=function(e,t){var n,r,o,i=e.taxonomies,a=null!=i&&null!==(n=i.siteType)&&void 0!==n&&null!==(r=n.slug)&&void 0!==r&&r.length?i.siteType.slug:"default",s=['{type}="'.concat(t.replace("Type",""),'"'),'{siteType}="'.concat(a,'"')];return null!==(o=i[t])&&void 0!==o&&o.slug&&s.push("{".concat(t,'}="').concat(i[t].slug,'"')),"AND(".concat(s.join(", "),")").replace(/\r?\n|\r/g,"")};function _r(){return _r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},_r.apply(this,arguments)}function Nr(e,t){return Nr=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Nr(e,t)}var Ar=new Map,Pr=new WeakMap,Tr=0,Ir=void 0;function Lr(e){return Object.keys(e).sort().filter((function(t){return void 0!==e[t]})).map((function(t){return t+"_"+("root"===t?(n=e.root)?(Pr.has(n)||(Tr+=1,Pr.set(n,Tr.toString())),Pr.get(n)):"0":e[t]);var n})).toString()}function Mr(e,t,n,r){if(void 0===n&&(n={}),void 0===r&&(r=Ir),void 0===window.IntersectionObserver&&void 0!==r){var o=e.getBoundingClientRect();return t(r,{isIntersecting:r,target:e,intersectionRatio:"number"==typeof n.threshold?n.threshold:0,time:0,boundingClientRect:o,intersectionRect:o,rootBounds:o}),function(){}}var i=function(e){var t=Lr(e),n=Ar.get(t);if(!n){var r,o=new Map,i=new IntersectionObserver((function(t){t.forEach((function(t){var n,i=t.isIntersecting&&r.some((function(e){return t.intersectionRatio>=e}));e.trackVisibility&&void 0===t.isVisible&&(t.isVisible=i),null==(n=o.get(t.target))||n.forEach((function(e){e(i,t)}))}))}),e);r=i.thresholds||(Array.isArray(e.threshold)?e.threshold:[e.threshold||0]),n={id:t,observer:i,elements:o},Ar.set(t,n)}return n}(n),a=i.id,s=i.observer,l=i.elements,c=l.get(e)||[];return l.has(e)||l.set(e,c),c.push(t),s.observe(e),function(){c.splice(c.indexOf(t),1),0===c.length&&(l.delete(e),s.unobserve(e)),0===l.size&&(s.disconnect(),Ar.delete(a))}}var Rr=["children","as","tag","triggerOnce","threshold","root","rootMargin","onChange","skip","trackVisibility","delay","initialInView","fallbackInView"];function Dr(e){return"function"!=typeof e.children}var Fr=function(e){var t,n;function r(t){var n;return(n=e.call(this,t)||this).node=null,n._unobserveCb=null,n.handleNode=function(e){n.node&&(n.unobserve(),e||n.props.triggerOnce||n.props.skip||n.setState({inView:!!n.props.initialInView,entry:void 0})),n.node=e||null,n.observeNode()},n.handleChange=function(e,t){e&&n.props.triggerOnce&&n.unobserve(),Dr(n.props)||n.setState({inView:e,entry:t}),n.props.onChange&&n.props.onChange(e,t)},n.state={inView:!!t.initialInView,entry:void 0},n}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,Nr(t,n);var i=r.prototype;return i.componentDidUpdate=function(e){e.rootMargin===this.props.rootMargin&&e.root===this.props.root&&e.threshold===this.props.threshold&&e.skip===this.props.skip&&e.trackVisibility===this.props.trackVisibility&&e.delay===this.props.delay||(this.unobserve(),this.observeNode())},i.componentWillUnmount=function(){this.unobserve(),this.node=null},i.observeNode=function(){if(this.node&&!this.props.skip){var e=this.props,t=e.threshold,n=e.root,r=e.rootMargin,o=e.trackVisibility,i=e.delay,a=e.fallbackInView;this._unobserveCb=Mr(this.node,this.handleChange,{threshold:t,root:n,rootMargin:r,trackVisibility:o,delay:i},a)}},i.unobserve=function(){this._unobserveCb&&(this._unobserveCb(),this._unobserveCb=null)},i.render=function(){if(!Dr(this.props)){var e=this.state,t=e.inView,n=e.entry;return this.props.children({inView:t,entry:n,ref:this.handleNode})}var r=this.props,i=r.children,a=r.as,s=r.tag,l=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(r,Rr);return o.createElement(a||s||"div",_r({ref:this.handleNode},l),i)},r}(o.Component);Fr.displayName="InView",Fr.defaultProps={threshold:0,triggerOnce:!1,initialInView:!1};const Br=wp.blockEditor,zr=wp.blocks;var Ur=function(){return k.get("plugins")},Wr=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=new FormData;return t.append("plugins",JSON.stringify(e)),k.post("plugins",t,{headers:{"Content-Type":"multipart/form-data"}})},qr=function(){return k.get("active-plugins")};function $r(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Hr(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){$r(i,r,o,a,s,"next",e)}function s(e){$r(i,r,o,a,s,"throw",e)}a(void 0)}))}}var Vr=[],Gr=[];function Jr(e){return Kr.apply(this,arguments)}function Kr(){return(Kr=Hr(w().mark((function e(t){var n,r,o,i;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((o=(o=null!==(n=null==t||null===(r=t.fields)||void 0===r?void 0:r.required_plugins)&&void 0!==n?n:[]).filter((function(e){return"editorplus"!==e}))).length){e.next=4;break}return e.abrupt("return",!1);case 4:if(Vr.length){e.next=10;break}return e.t0=Object,e.next=8,Ur();case 8:e.t1=e.sent,Vr=e.t0.keys.call(e.t0,e.t1);case 10:return i=!!o.length&&o.filter((function(e){return!Vr.some((function(t){return t.includes(e)}))})),e.abrupt("return",i.length);case 12:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Zr(e){return Xr.apply(this,arguments)}function Xr(){return(Xr=Hr(w().mark((function e(t){var n,r,o,i;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((o=(o=null!==(n=null==t||null===(r=t.fields)||void 0===r?void 0:r.required_plugins)&&void 0!==n?n:[]).filter((function(e){return"editorplus"!==e}))).length){e.next=4;break}return e.abrupt("return",!1);case 4:if(Gr.length){e.next=10;break}return e.t0=Object,e.next=8,qr();case 8:e.t1=e.sent,Gr=e.t0.values.call(e.t0,e.t1);case 10:if(!(i=!!o.length&&o.filter((function(e){return!Gr.some((function(t){return t.includes(e)}))})))){e.next=16;break}return e.next=14,Jr(t);case 14:if(!e.sent){e.next=16;break}return e.abrupt("return",!1);case 16:return e.abrupt("return",i.length);case 17:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Yr=l(x((function(e){return{wantedTemplate:{},importOnLoad:!1,setWanted:function(t){return e({wantedTemplate:t})},removeWanted:function(){return e({wantedTemplate:{}})}}}),{name:"extendify-wanted-template"}));function Qr(e){var t=e.msg;return(0,Nt.jsxs)(wt.Modal,{style:{maxWidth:"500px"},title:(0,bt.__)("Error installing plugins","extendify"),isDismissible:!1,children:[(0,bt.__)("You have encountered an error that we cannot recover from. Please try again.","extendify"),(0,Nt.jsx)("br",{}),(0,Nt.jsx)(wt.Notice,{isDismissible:!1,status:"error",children:t}),(0,Nt.jsx)(wt.Button,{isPrimary:!0,onClick:function(){return(0,r.render)((0,Nt.jsx)(lo,{}),document.getElementById("extendify-root"))},children:(0,bt.__)("Go back","extendify")})]})}const eo=wp.data;function to(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return no(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return no(e,t)}(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 no(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function ro(){var e=to((0,r.useState)(!1),2),t=e[0],n=e[1],o=function(){};return(0,(0,eo.select)("core/editor").isEditedPostDirty)()?(0,Nt.jsxs)(wt.Modal,{title:(0,bt.__)("Reload required","extendify"),isDismissible:!1,children:[(0,Nt.jsx)("p",{style:{maxWidth:"400px"},children:(0,bt.__)("Just one more thing! We need to reload the page to continue.","extendify")}),(0,Nt.jsxs)(wt.ButtonGroup,{children:[(0,Nt.jsx)(wt.Button,{isPrimary:!0,onClick:o,disabled:t,children:(0,bt.__)("Reload page","extendify")}),(0,Nt.jsx)(wt.Button,{isSecondary:!0,onClick:function(){n(!0),(0,eo.dispatch)("core/editor").savePost(),n(!1)},isBusy:t,style:{margin:"0 4px"},children:(0,bt.__)("Save changes","extendify")})]})]}):null}function oo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return io(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return io(e,t)}(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 io(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function ao(e){var t,n=e.requiredPlugins,o=oo((0,r.useState)(""),2),i=o[0],a=o[1],s=Yr((function(e){return e.wantedTemplate})),l=null!=n?n:null==s||null===(t=s.fields)||void 0===t?void 0:t.required_plugins.filter((function(e){return"editorplus"!==e}));return Wr(l).then((function(){Yr.setState({importOnLoad:!0}),(0,r.render)((0,Nt.jsx)(ro,{}),document.getElementById("extendify-root"))})).catch((function(e){var t=e.message;a(t)})),i?(0,Nt.jsx)(Qr,{msg:i}):(0,Nt.jsx)(wt.Modal,{title:(0,bt.__)("Installing plugins","extendify"),isDismissible:!1,children:(0,Nt.jsx)(wt.Button,{style:{width:"100%"},disabled:!0,isPrimary:!0,isBusy:!0,onClick:function(){},children:(0,bt.__)("Installing...","extendify")})})}function so(){var e,t,n,o=Yr((function(e){return e.wantedTemplate})),i=(null==o||null===(e=o.fields)||void 0===e?void 0:e.required_plugins)||[];return(0,Nt.jsxs)(wt.Modal,{title:(0,bt.__)("Plugins required","extendify"),isDismissible:!1,children:[(0,Nt.jsx)("p",{style:{maxWidth:"400px"},children:(0,bt.sprintf)((0,bt.__)("In order to add this %s to your site, the following plugins are required to be installed and activated.","extendify"),null!==(t=null==o||null===(n=o.fields)||void 0===n?void 0:n.type)&&void 0!==t?t:"template")}),(0,Nt.jsx)("ul",{children:i.filter((function(e){return"editorplus"!==e})).map((function(e){return(0,Nt.jsx)("li",{children:Et(e)},e)}))}),(0,Nt.jsx)("p",{style:{maxWidth:"400px",fontWeight:"bold"},children:(0,bt.__)("Please contact a site admin for assistance in adding these plugins to your site.","extendify")}),(0,Nt.jsx)(wt.Button,{isPrimary:!0,onClick:function(){return(0,r.render)((0,Nt.jsx)(Di,{show:!0}),document.getElementById("extendify-root"))},style:{boxShadow:"none"},children:(0,bt.__)("Return to library","extendify")})]})}function lo(e){var t,n,o,i,a,s=e.forceOpen,l=e.buttonLabel,c=e.title,u=e.message,d=e.requiredPlugins,f=Yr((function(e){return e.wantedTemplate}));d=null!==(t=d)&&void 0!==t?t:null==f||null===(n=f.fields)||void 0===n?void 0:n.required_plugins;return null!==(o=z.getState())&&void 0!==o&&o.canInstallPlugins?(0,Nt.jsxs)(wt.Modal,{title:null!=c?c:(0,bt.__)("Install required plugins","extendify"),isDismissible:!1,children:[(0,Nt.jsx)("p",{style:{maxWidth:"400px"},children:null!=u?u:(0,bt.__)((0,bt.sprintf)("There is just one more step. This %s requires the following to be automatically installed and activated:",null!==(i=null==f||null===(a=f.fields)||void 0===a?void 0:a.type)&&void 0!==i?i:"template"),"extendify")}),(null==u?void 0:u.length)>0||(0,Nt.jsx)("ul",{children:d.filter((function(e){return"editorplus"!==e})).map((function(e){return(0,Nt.jsx)("li",{children:Et(e)},e)}))}),(0,Nt.jsxs)(wt.ButtonGroup,{children:[(0,Nt.jsx)(wt.Button,{isPrimary:!0,onClick:function(){return(0,r.render)((0,Nt.jsx)(ao,{requiredPlugins:d}),document.getElementById("extendify-root"))},children:null!=l?l:(0,bt.__)("Install Plugins","extendify")}),s||(0,Nt.jsx)(wt.Button,{isTertiary:!0,onClick:function(){s||(0,r.render)((0,Nt.jsx)(Di,{show:!0}),document.getElementById("extendify-root"))},style:{boxShadow:"none",margin:"0 4px"},children:(0,bt.__)("No thanks, take me back","extendify")})]})]}):(0,Nt.jsx)(so,{})}function co(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var uo=function(){var e,t=(e=w().mark((function e(t){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Jr(t);case 2:return e.t0=!e.sent,e.t1=function(){},e.t2=function(){return new Promise((function(){(0,r.render)((0,Nt.jsx)(lo,{}),document.getElementById("extendify-root"))}))},e.abrupt("return",{id:"hasRequiredPlugins",pass:e.t0,allow:e.t1,deny:e.t2});case 6:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){co(i,r,o,a,s,"next",e)}function s(e){co(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}();function fo(e){var t=e.msg;return(0,Nt.jsxs)(wt.Modal,{style:{maxWidth:"500px"},title:(0,bt.__)("Error Activating plugins","extendify"),isDismissible:!1,children:[(0,bt.__)("You have encountered an error that we cannot recover from. Please try again.","extendify"),(0,Nt.jsx)("br",{}),(0,Nt.jsx)(wt.Notice,{isDismissible:!1,status:"error",children:t}),(0,Nt.jsx)(wt.Button,{isPrimary:!0,onClick:function(){(0,r.render)((0,Nt.jsx)(vo,{}),document.getElementById("extendify-root"))},children:(0,bt.__)("Go back","extendify")})]})}function po(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function ho(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){po(i,r,o,a,s,"next",e)}function s(e){po(i,r,o,a,s,"throw",e)}a(void 0)}))}}function mo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return xo(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return xo(e,t)}(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 xo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function yo(){var e,t=mo((0,r.useState)(""),2),n=t[0],o=t[1],i=Yr((function(e){return e.wantedTemplate})),a=null==i||null===(e=i.fields)||void 0===e?void 0:e.required_plugins.filter((function(e){return"editorplus"!==e}));return Wr(a).then((function(){Yr.setState({importOnLoad:!0})})).then(ho(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,new Promise((function(e){return setTimeout(e,1e3)}));case 2:(0,r.render)((0,Nt.jsx)(ro,{}),document.getElementById("extendify-root"));case 3:case"end":return e.stop()}}),e)})))).catch((function(e){var t=e.response;o(t.data.message)})),n?(0,Nt.jsx)(fo,{msg:n}):(0,Nt.jsx)(wt.Modal,{title:(0,bt.__)("Activating plugins","extendify"),isDismissible:!1,children:(0,Nt.jsx)(wt.Button,{style:{width:"100%"},disabled:!0,isPrimary:!0,isBusy:!0,onClick:function(){},children:(0,bt.__)("Activating...","extendify")})})}function vo(e){var t,n,o,i,a,s=Yr((function(e){return e.wantedTemplate})),l=(null==s||null===(t=s.fields)||void 0===t?void 0:t.required_plugins)||[];return null!==(n=z.getState())&&void 0!==n&&n.canActivatePlugins?(0,Nt.jsx)(wt.Modal,{title:(0,bt.__)("Activate required plugins","extendify"),isDismissible:!1,children:(0,Nt.jsxs)("div",{children:[(0,Nt.jsx)("p",{style:{maxWidth:"400px"},children:null!==(o=e.message)&&void 0!==o?o:(0,bt.__)((0,bt.sprintf)("There is just one more step. This %s requires the following plugins to be installed and activated:",null!==(i=null==s||null===(a=s.fields)||void 0===a?void 0:a.type)&&void 0!==i?i:"template"),"extendify")}),(0,Nt.jsx)("ul",{children:l.filter((function(e){return"editorplus"!==e})).map((function(e){return(0,Nt.jsx)("li",{children:Et(e)},e)}))}),(0,Nt.jsxs)(wt.ButtonGroup,{children:[(0,Nt.jsx)(wt.Button,{isPrimary:!0,onClick:function(){return(0,r.render)((0,Nt.jsx)(yo,{}),document.getElementById("extendify-root"))},children:(0,bt.__)("Activate Plugins","extendify")}),e.showClose&&(0,Nt.jsx)(wt.Button,{isTertiary:!0,onClick:function(){return(0,r.render)((0,Nt.jsx)(Di,{show:!0}),document.getElementById("extendify-root"))},style:{boxShadow:"none",margin:"0 4px"},children:(0,bt.__)("No thanks, return to library","extendify")})]})]})}):(0,Nt.jsx)(so,{})}function go(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var bo=function(){var e,t=(e=w().mark((function e(t){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Zr(t);case 2:return e.t0=!e.sent,e.t1=function(){},e.t2=function(){return new Promise((function(){(0,r.render)((0,Nt.jsx)(vo,{showClose:!0}),document.getElementById("extendify-root"))}))},e.abrupt("return",{id:"hasPluginsActivated",pass:e.t0,allow:e.t1,deny:e.t2});case 6:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){go(i,r,o,a,s,"next",e)}function s(e){go(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}();function wo(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return jo(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return jo(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}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 i,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw i}}}}function jo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function ko(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Co(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){ko(i,r,o,a,s,"next",e)}function s(e){ko(i,r,o,a,s,"throw",e)}a(void 0)}))}}function So(e){return new _o(e)}function Oo(e){return function(){return new Eo(e.apply(this,arguments))}}function Eo(e){var t,n;function r(t,n){try{var i=e[t](n),a=i.value,s=a instanceof _o;Promise.resolve(s?a.wrapped:a).then((function(e){s?r("return"===t?"return":"next",e):o(i.done?"return":"normal",e)}),(function(e){r("throw",e)}))}catch(e){o("throw",e)}}function o(e,o){switch(e){case"return":t.resolve({value:o,done:!0});break;case"throw":t.reject(o);break;default:t.resolve({value:o,done:!1})}(t=t.next)?r(t.key,t.arg):n=null}this._invoke=function(e,o){return new Promise((function(i,a){var s={key:e,arg:o,resolve:i,reject:a,next:null};n?n=n.next=s:(t=n=s,r(e,o))}))},"function"!=typeof e.return&&(this.return=void 0)}function _o(e){this.wrapped=e}Eo.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},Eo.prototype.next=function(e){return this._invoke("next",e)},Eo.prototype.throw=function(e){return this._invoke("throw",e)},Eo.prototype.return=function(e){return this._invoke("return",e)};function No(e){return Ao.apply(this,arguments)}function Ao(){return(Ao=Co(w().mark((function e(t){var n,r;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=Po(t.stack);case 1:return r=void 0,e.prev=3,e.next=6,n.next();case 6:r=e.sent,e.next=13;break;case 9:throw e.prev=9,e.t0=e.catch(3),t.reset(),"Middleware exited";case 13:if(!r.done){e.next=15;break}return e.abrupt("break",17);case 15:e.next=1;break;case 17:case"end":return e.stop()}}),e,null,[[3,9]])})))).apply(this,arguments)}function Po(e){return To.apply(this,arguments)}function To(){return(To=Oo(w().mark((function e(t){var n,r,o;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=wo(t),e.prev=1,n.s();case 3:if((r=n.n()).done){e.next=11;break}return o=r.value,e.next=7,So(o());case 7:return e.next=9,e.sent;case 9:e.next=3;break;case 11:e.next=16;break;case 13:e.prev=13,e.t0=e.catch(1),n.e(e.t0);case 16:return e.prev=16,n.f(),e.finish(16);case 19:case"end":return e.stop()}}),e,null,[[1,13,16,19]])})))).apply(this,arguments)}function Io(e,t){var n=(0,eo.dispatch)("core/block-editor"),r=n.insertBlocks,o=n.replaceBlock,i=(0,eo.select)("core/block-editor"),a=i.getSelectedBlock,s=i.getBlockHierarchyRootClientId,l=i.getBlockIndex,c=i.getGlobalBlockCount,u=a()||{},d=u.clientId,f=u.name,p=u.attributes,h=d?s(d):"",m=(h?l(h):c())+1;return("core/paragraph"===f&&""===(null==p?void 0:p.content)?o(d,e):r(e,m)).then((function(){return window.dispatchEvent(new CustomEvent("extendify::template-inserted",{detail:{template:t},bubbles:!0}))}))}var Lo=n(306);function Mo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Ro(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Ro(e,t)}(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 Ro(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Do=function(e){var t=e.template,n=Mo((0,r.useState)(t.id),2),o=n[0],i=n[1];return(0,r.useEffect)((function(){o!==t.id&&setTimeout((function(){return i(t.id)}),1e3)}),[o,t.id]),(0,Nt.jsxs)("div",{className:"group-hover:opacity-90 opacity-0 flex space-x-2 items-center mb-2 ml-2 absolute bottom-0 left-0 transition duration-200 ease-in-out z-50",children:[(0,Nt.jsx)(Lo.CopyToClipboard,{text:t.id,onCopy:function(){return i((0,bt.__)("Copied...","extendify"))},children:(0,Nt.jsx)("button",{className:"bg-white border border-black p-2 rounded-md shadow-md cursor-pointer",children:o})}),(0,Nt.jsx)("a",{target:"_blank",className:"bg-white border font-semibold border-black p-2 rounded-md shadow-md no-underline text-black",href:"https://airtable.com/appn5PSl8wU6X70sG/tblviYevlV5fYAEH7/viwh0L1kHmXN7FIB9/".concat(t.id),rel:"noreferrer",children:(0,bt.__)("Edit","extendify")})]})},Fo=(0,r.forwardRef)((function(e,t){var n,o=e.onClose,i=e.isOpen,a=e.invertedButtonColor,s=e.children,l=e.leftContainerBgColor,c=void 0===l?"bg-white":l,u=e.rightContainerBgColor,d=void 0===u?"bg-gray-100":u,f=(0,r.useRef)(null),p=g((function(e){return e.removeAllModals}));return o=null!==(n=o)&&void 0!==n?n:p,(0,Nt.jsx)(Ie.Root,{appear:!0,show:!0,as:r.Fragment,children:(0,Nt.jsx)(gt,{as:"div",static:!0,open:i,className:"extendify",initialFocus:null!=t?t:f,onClose:o,children:(0,Nt.jsxs)("div",{className:"fixed z-high inset-0 flex",children:[(0,Nt.jsx)(Ie.Child,{as:r.Fragment,enter:"ease-out duration-50 transition",enterFrom:"opacity-0",enterTo:"opacity-100",children:(0,Nt.jsx)(gt.Overlay,{className:"fixed inset-0 bg-black bg-opacity-40 transition-opacity"})}),(0,Nt.jsx)(Ie.Child,{as:r.Fragment,enter:"ease-out duration-300 translate transform",enterFrom:"opacity-0 translate-y-4 sm:translate-y-5",enterTo:"opacity-100 translate-y-0",children:(0,Nt.jsx)("div",{className:"m-auto",children:(0,Nt.jsxs)("div",{className:"shadow-modal relative m-8 md:m-0 max-w-md rounded-sm md:flex justify-between md:max-w-2xl",children:[(0,Nt.jsxs)("button",{onClick:o,ref:f,className:"absolute bg-transparent block p-4 top-0 right-0 rounded-md cursor-pointer text-gray-700 opacity-30 hover:opacity-100",style:a&&{filter:"invert(1)"},children:[(0,Nt.jsx)("span",{className:"sr-only",children:(0,bt.__)("Close","extendify")}),(0,Nt.jsx)(Sn,{icon:Zn})]}),(0,Nt.jsx)("div",{className:"w-7/12 p-12 ".concat(c),children:s[0]}),(0,Nt.jsx)("div",{className:"w-6/12 hidden md:block ".concat(d),children:s[1]})]})})})]})})})})),Bo=function(){var e=g((function(e){return e.pushModal})),t=(0,r.useRef)(null);return(0,Nt.jsxs)(Fo,{isOpen:!0,ref:t,leftContainerBgColor:"bg-white",children:[(0,Nt.jsxs)("div",{children:[(0,Nt.jsx)("div",{className:"flex space-x-2 items-center mb-5 text-extendify-black",children:Ln}),(0,Nt.jsx)("h3",{className:"text-xl mt-0",children:(0,bt.__)("You're out of imports","extendify")}),(0,Nt.jsx)("p",{className:"text-sm text-black",children:(0,bt.__)("Sign up today and get unlimited access to our entire collection of patterns and page layouts.","extendify")}),(0,Nt.jsxs)("div",{children:[(0,Nt.jsxs)("a",{target:"_blank",ref:t,className:"button-extendify-main inline-flex mt-2 px-4 py-3 button-focus justify-center",style:{minWidth:"225px"},href:"https://extendify.com/pricing/?utm_source=".concat(window.extendifyData.sdk_partner,"&utm_medium=library&utm_campaign=no-imports-modal&utm_content=get-unlimited-imports"),rel:"noreferrer",children:[(0,bt.__)("Get Unlimited Imports","extendify"),(0,Nt.jsx)(wt.Icon,{icon:Bn,size:24,className:"-mr-1"})]}),(0,Nt.jsxs)("p",{className:"text-sm text-extendify-gray mb-0 text-left",children:[(0,bt.__)("Have an account?","extendify"),(0,Nt.jsx)(wt.Button,{onClick:function(){return e((0,Nt.jsx)(dr,{}))},className:"underline hover:no-underline text-sm text-extendify-gray pl-2",children:(0,bt.__)("Sign in","extendify")})]})]})]}),(0,Nt.jsxs)("div",{className:"space-y-2 flex flex-col justify-center p-10 text-black h-full",children:[(0,Nt.jsxs)("div",{className:"flex items-center space-x-3",children:[(0,Nt.jsx)(wt.Icon,{icon:Un,size:24}),(0,Nt.jsx)("span",{className:"text-sm leading-none",children:(0,bt.__)("Access to 100's of Patterns","extendify")})]}),(0,Nt.jsxs)("div",{className:"flex items-center space-x-3",children:[(0,Nt.jsx)(wt.Icon,{icon:Mn,size:24}),(0,Nt.jsx)("span",{className:"text-sm leading-none",children:(0,bt.__)('Access to "Pro" catalog',"extendify")})]}),(0,Nt.jsxs)("div",{className:"flex items-center space-x-3",children:[(0,Nt.jsx)(wt.Icon,{icon:zn,size:24}),(0,Nt.jsx)("span",{className:"text-sm leading-none",children:(0,bt.__)("Beautiful full page layouts","extendify")})]}),(0,Nt.jsxs)("div",{className:"flex items-center space-x-3",children:[(0,Nt.jsx)(wt.Icon,{icon:qn,size:24}),(0,Nt.jsx)("span",{className:"text-sm leading-none",children:(0,bt.__)("Fast and friendly support","extendify")})]}),(0,Nt.jsxs)("div",{className:"flex items-center space-x-3",children:[(0,Nt.jsx)(wt.Icon,{icon:$n,size:24}),(0,Nt.jsx)("span",{className:"text-sm leading-none",children:(0,bt.__)("14-Day guarantee","extendify")})]})]})]})},zo=function(){var e=(0,r.useRef)(null);return(0,Nt.jsxs)(Fo,{isOpen:!0,invertedButtonColor:!0,ref:e,children:[(0,Nt.jsxs)("div",{children:[(0,Nt.jsx)("div",{className:"flex space-x-2 items-center mb-5 text-extendify-black",children:Ln}),(0,Nt.jsx)("h3",{className:"text-xl mt-0",children:(0,bt.__)("Get unlimited access to all our Pro patterns & layouts","extendify")}),(0,Nt.jsx)("p",{className:"text-sm text-black",children:(0,bt.__)("Upgrade to Extendify Pro and use all the patterns and layouts you'd like, including our exclusive Pro catalog.","extendify")}),(0,Nt.jsx)("div",{children:(0,Nt.jsxs)("a",{target:"_blank",ref:e,className:"button-extendify-main inline-flex mt-2 px-4 py-3 button-focus justify-center",style:{minWidth:"225px"},href:"https://extendify.com/pricing/?utm_source=".concat(window.extendifyData.sdk_partner,"&utm_medium=library&utm_campaign=pro-modal&utm_content=upgrade-now"),rel:"noreferrer",children:[(0,bt.__)("Upgrade Now","extendify"),(0,Nt.jsx)(wt.Icon,{icon:Bn,size:24,className:"-mr-1"})]})})]}),(0,Nt.jsx)("div",{className:"w-full bg-black flex justify-endrounded-tr-sm rounded-br-sm",children:(0,Nt.jsx)("img",{alt:(0,bt.__)("Upgrade Now","extendify"),className:"max-w-full rounded-tr-sm rounded-br-sm",src:window.extendifyData.asset_path+"/modal-extendify-black.png"})})]})};function Uo(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Wo(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function qo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return $o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return $o(e,t)}(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 $o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Ho=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{hasRequiredPlugins:uo,hasPluginsActivated:bo,stack:[],check:function(t){var n=this;return Co(w().mark((function r(){var o,i,a,s;return w().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:o=wo(e),r.prev=1,o.s();case 3:if((i=o.n()).done){r.next=11;break}return a=i.value,r.next=7,n["".concat(a)](t);case 7:s=r.sent,n.stack.push(s.pass?s.allow:s.deny);case 9:r.next=3;break;case 11:r.next=16;break;case 13:r.prev=13,r.t0=r.catch(1),o.e(r.t0);case 16:return r.prev=16,o.f(),r.finish(16);case 19:case"end":return r.stop()}}),r,null,[[1,13,16,19]])})))()},reset:function(){this.stack=[]}}}(["hasRequiredPlugins","hasPluginsActivated"]);function Vo(e){var t,n,o,i,a=e.template,s=e.maxHeight,l=(0,r.useRef)(null),c=(0,r.useRef)(!1),u=z((function(e){return e.hasAvailableImports})),d=z((function(e){return e.apiKey.length})),f=g((function(e){return e.setOpen})),p=g((function(e){return e.pushModal})),h=g((function(e){return e.removeAllModals})),m=(0,r.useMemo)((function(){return(0,zr.rawHandler)({HTML:a.fields.code})}),[a.fields.code]),x=qo((0,r.useState)(!1),2),y=x[0],v=x[1],b=tr(),j=qo((0,r.useState)(0),2),k=j[0],C=j[1],S=function(){var e,t=(e=w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Ho.check(a);case 2:No(Ho).then((function(){setTimeout((function(){Io(m,a).then((function(){return h()})).then((function(){return f(!1)})).then((function(){return Ho.reset()}))}),100)})).catch((function(){}));case 3:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Wo(i,r,o,a,s,"next",e)}function s(e){Wo(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(){return t.apply(this,arguments)}}(),O=function(){var e;Sr(a),null==a||null===(e=a.fields)||void 0===e||!e.pro||d?u()?S():p((0,Nt.jsx)(Bo,{})):p((0,Nt.jsx)(zo,{}))};return(0,r.useEffect)((function(){var e,t,n,r,o=[],i=[];return e=window.requestAnimationFrame((function(){t=window.requestAnimationFrame((function(){l.current.querySelectorAll("iframe").forEach((function(e){var t=e.contentWindow.document.body,n=window.requestAnimationFrame((function(){var n=t.querySelector(".is-root-container");if(n){var o=null==n?void 0:n.offsetHeight;if(o){r=window.requestAnimationFrame((function(){e.style.height=o+"px"}));var a=window.setTimeout((function(){e.style.height=o+"px"}),2e3);i.push(a)}}e.contentWindow.dispatchEvent(new Event("resize"))}));o.push(n)})),n=window.requestAnimationFrame((function(){window.dispatchEvent(new Event("resize")),v(!0)}))}))})),function(){[].concat(o,[e,t,n,r]).forEach((function(e){return window.cancelAnimationFrame(e)})),i.forEach((function(e){return window.clearTimeout(e)}))}}),[]),(0,r.useEffect)((function(){if(Number.isInteger(s)){var e=l.current,t=function(){var t=e.offsetHeight;e.style.transitionDuration=1.5*t+"ms",C(-1*Math.abs(t-s))},n=function(){var t=e.offsetHeight;e.style.transitionDuration=t/1.5+"ms",C(0)};return e.addEventListener("focus",t),e.addEventListener("mouseenter",t),e.addEventListener("blur",n),e.addEventListener("mouseleave",n),function(){e.removeEventListener("focus",t),e.removeEventListener("mouseenter",t),e.removeEventListener("blur",n),e.removeEventListener("mouseleave",n)}}}),[s]),(0,Nt.jsxs)("div",{className:"relative group",children:[(0,Nt.jsx)("div",{role:"button",tabIndex:"0","aria-label":(0,bt.sprintf)((0,bt.__)("Press to import %s","extendify"),null==a||null===(t=a.fields)||void 0===t?void 0:t.type),style:{maxHeight:s},className:"m-0 cursor-pointer button-focus ease-in-out relative overflow-hidden bg-gray-100",onFocus:function(){c.current||(c.current=!0,Array.from(l.current.querySelectorAll('a, button, input, textarea, select, details, [tabindex]:not([tabindex="-1"])')).forEach((function(e){return e.setAttribute("tabIndex","-1")})))},onClick:O,onKeyDown:function(e){["Enter","Space"," "].includes(e.key)&&(e.stopPropagation(),e.preventDefault(),O())},children:(0,Nt.jsx)("div",{ref:l,style:{top:k,transitionProperty:"all"},className:kt()("with-light-shadow relative",(o={},Uo(o,"is-template--".concat(a.fields.status),(null==a||null===(n=a.fields)||void 0===n?void 0:n.status)&&b),Uo(o,"p-6 md:p-8",Number.isInteger(s)),o)),children:(0,Nt.jsx)(Br.BlockPreview,{blocks:m,live:!1,viewportWidth:1400})})}),b&&y&&(0,Nt.jsx)(Do,{template:a}),(null==a||null===(i=a.fields)||void 0===i?void 0:i.pro)&&(0,Nt.jsx)("div",{className:"bg-white bg-wp-theme-500 border font-medium border-none absolute z-20 top-4 right-4 py-1 px-2.5 rounded-md shadow-sm no-underline text-white pointer-events-none",children:(0,bt.__)("Pro","extendify")})]})}function Go(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Jo(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Jo(e,t)}(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 Jo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Ko=(0,r.memo)((function(){var e=er(),t=K((function(e){return e.templates})),n=K((function(e){return e.appendTemplates})),i=Go((0,r.useState)(""),2),a=i[0],s=i[1],l=Go((0,r.useState)(!1),2),c=l[0],u=l[1],d=Go((0,r.useState)(!1),2),f=d[0],p=d[1],h=function(e){var t=void 0===e?{}:e,n=t.threshold,r=t.delay,i=t.trackVisibility,a=t.rootMargin,s=t.root,l=t.triggerOnce,c=t.skip,u=t.initialInView,d=t.fallbackInView,f=o.useRef(),p=o.useState({inView:!!u}),h=p[0],m=p[1],x=o.useCallback((function(e){void 0!==f.current&&(f.current(),f.current=void 0),c||e&&(f.current=Mr(e,(function(e,t){m({inView:e,entry:t}),t.isIntersecting&&l&&f.current&&(f.current(),f.current=void 0)}),{root:s,rootMargin:a,threshold:n,trackVisibility:i,delay:r},d))}),[Array.isArray(n)?n.toString():n,s,a,l,c,i,d,r]);(0,o.useEffect)((function(){f.current||!h.entry||l||c||m({inView:!!u})}));var y=[x,h.inView,h.entry];return y.ref=y[0],y.inView=y[1],y.entry=y[2],y}(),m=Go(h,2),x=m[0],y=m[1],v=K((function(e){return e.searchParams})),b=g((function(e){return e.currentType})),w=K((function(e){return e.resetTemplates})),j=(0,r.useRef)(K.getState().nextPage),k=(0,r.useRef)(K.getState().searchParams),C="pattern"===k.current.type?"patternType":"layoutType",S=k.current.taxonomies[C];(0,r.useEffect)((function(){return K.subscribe((function(e){return j.current=e}),(function(e){return e.nextPage}))}),[]),(0,r.useEffect)((function(){return K.subscribe((function(e){return k.current=e}),(function(e){return e.searchParams}))}),[]);var O,E=(0,r.useCallback)((function(){s(""),u(!1);var t=(0,bt.__)("Unknown error occured. Check browser console or contact support.","extendify"),r={offset:j.current};Cr(k.current,r).then((function(t){var r,o,i;e.current&&(null!=t&&null!==(r=t.error)&&void 0!==r&&r.length?s(null==t?void 0:t.error):(null==t||null===(o=t.records)||void 0===o?void 0:o.length)<=0?u(!0):v===k.current&&null!=t&&t.records.length&&(K.setState({nextPage:null!==(i=null==t?void 0:t.offset)&&void 0!==i?i:""}),n(t.records),p(!1)))})).catch((function(n){e.current&&(console.error(n),s(t))}))}),[n,e,v]);return(0,r.useEffect)((function(){0!==t.length||p(!0)}),[t.length,v]),(0,r.useEffect)((function(){Object.keys(k.current.taxonomies).length&&(K.getState().skipNextFetch?K.setState({skipNextFetch:!1}):E())}),[E,k]),(0,r.useEffect)((function(){j.current&&y&&E()}),[y,E,t]),a.length?(0,Nt.jsxs)("div",{className:"text-left",children:[(0,Nt.jsx)("h2",{className:"text-left",children:(0,bt.__)("Server error","extendify")}),(0,Nt.jsx)("code",{className:"block max-w-xl p-4 mb-4",style:{minHeight:"10rem"},children:a}),(0,Nt.jsx)(wt.Button,{isTertiary:!0,onClick:function(){return w()&&E()},children:(0,bt.__)("Press here to reload")})]}):c?(0,Nt.jsx)("div",{className:"flex h-full items-center justify-center w-full -mt-2 sm:mt-0",children:(0,Nt.jsx)("h2",{className:"text-sm text-extendify-gray font-normal",children:(0,bt.sprintf)("template"===k.current.type?(0,bt.__)('We couldn\'t find any layouts in the "%s" category.',"extendify"):(0,bt.__)('We couldn\'t find any patterns in the "%s" category.',"extendify"),null!==(O=null==S?void 0:S.title)&&void 0!==O?O:S.slug)})}):(0,Nt.jsxs)(Nt.Fragment,{children:[f&&(0,Nt.jsx)("div",{className:"flex h-full items-center justify-center w-full -mt-2 sm:mt-0",children:(0,Nt.jsx)(wt.Spinner,{})}),(0,Nt.jsx)(Zo,{type:b,templates:t,children:t.map((function(e){return(0,Nt.jsx)(Vo,{maxHeight:"template"===b?520:"none",template:e},e.id)}))}),j.current&&(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsx)("div",{className:"my-20",children:(0,Nt.jsx)(wt.Spinner,{})}),(0,Nt.jsx)("div",{className:"-translate-y-full flex flex-col items-end justify-end relative transform",ref:x,style:{zIndex:-1,marginBottom:"-100%",height:"template"===b?"150vh":"75vh"}})]})]})})),Zo=function(e){var t=e.type,n=e.children,r="relative min-h-screen z-10 pb-40 pt-0.5";if("template"===t)return(0,Nt.jsx)("div",{className:"grid lg:grid-cols-2 gap-6 md:gap-8 ".concat(r),children:n});return(0,Nt.jsx)(br,{breakpointCols:{default:3,1600:2,860:1,599:2,400:1},className:"flex -ml-6 md:-ml-8 w-auto px-0.5 ".concat(r),columnClassName:"pl-6 md:pl-8 bg-clip-padding space-y-6 md:space-y-8",children:n})};function Xo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Yo(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Yo(e,t)}(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 Yo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Qo=function(e){var t=e.setOpen,n=(0,r.useRef)(),o=K((function(e){return e.searchParams})),i=Xo((0,r.useState)(!1),2),a=i[0],s=i[1],l=K((function(e){return e.resetTemplates})),c=function(e){var t=Yn((0,r.useState)(!0),2),n=t[0],o=t[1],i=Yn((0,r.useState)(!1),2),a=i[0],s=i[1],l=er(),c=(0,r.useRef)();return(0,r.useEffect)((function(){var e=function(){return o(!0)},t={passive:!0};return window.addEventListener("keydown",e,t),window.addEventListener("mousemove",e,t),window.addEventListener("touchmove",e,t),function(){window.removeEventListener("keydown",e),window.removeEventListener("mousemove",e),window.removeEventListener("touchmove",e)}}),[]),(0,r.useEffect)((function(){n&&(o(!1),s(!1),window.clearTimeout(c.current),c.current=window.setTimeout((function(){l.current&&s(!0)}),e))}),[n,e,l]),a}(6e5),u=(0,r.useCallback)((function(){s(!1),l()}),[l]);return(0,r.useEffect)((function(){c&&s(!0)}),[c]),(0,r.useEffect)((function(){s(!1)}),[o]),(0,r.useEffect)((function(){n.current.scrollTop=0}),[o]),(0,Nt.jsx)("div",{className:"h-full flex flex-col items-center relative max-w-screen-4xl mx-auto",children:(0,Nt.jsxs)("div",{className:"w-full flex-grow overflow-hidden",children:[(0,Nt.jsx)("button",{onClick:function(){return document.getElementById("extendify-templates").querySelector("button").focus()},className:"extendify-skip-to-sr-link sr-only focus:not-sr-only focus:text-blue-500",children:(0,bt.__)("Skip to templates","extendify")}),(0,Nt.jsx)("div",{className:"sm:flex relative mx-auto h-full",children:(0,Nt.jsxs)(Kn,{children:[(0,Nt.jsx)(Jn,{}),(0,Nt.jsxs)("div",{className:"relative h-full z-30 flex flex-col",children:[(0,Nt.jsx)(fr,{className:"hidden sm:block w-full h-20 flex-shrink-0 px-6 md:px-8",hideLibrary:function(){return t(!1)}}),(0,Nt.jsx)("div",{ref:n,className:"flex-grow z-20 overflow-y-auto px-6 md:px-8",children:a?(0,Nt.jsx)(ei,{callback:u}):(0,Nt.jsx)(Ko,{})})]})]})})]})})},ei=function(e){var t=e.callback;return(0,Nt.jsxs)("div",{className:"flex flex-col items-center justify-center h-full",children:[(0,Nt.jsx)("p",{className:"text-sm text-extendify-gray font-normal mb-6",children:(0,bt.__)("We've added new stuff while you were away.","extendify")}),(0,Nt.jsx)(wt.Button,{className:"components-button bg-wp-theme-500 hover:bg-wp-theme-600 border-color-wp-theme-500 text-white",onClick:t,children:(0,bt.__)("Reload")})]})};const ti=(0,r.createElement)(An,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},(0,r.createElement)(_n,{d:"M12 13.06l3.712 3.713 1.061-1.06L13.061 12l3.712-3.712-1.06-1.06L12 10.938 8.288 7.227l-1.061 1.06L10.939 12l-3.712 3.712 1.06 1.061L12 13.061z"}));var ni=function(){return k.get("meta-data")},ri=function(e){var t,n;return k.post("simple-ping",{action:e,sdk_partner:null!==(t=null===(n=z.getState())||void 0===n?void 0:n.sdkPartner)&&void 0!==t?t:""})};function oi(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function ii(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){oi(i,r,o,a,s,"next",e)}function s(e){oi(i,r,o,a,s,"throw",e)}a(void 0)}))}}function ai(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return si(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return si(e,t)}(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 si(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function li(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function ci(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return ui(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ui(e,t)}(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 ui(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var di={welcome:function(){var e=g((function(e){return e.setOpen}));return(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsx)("span",{className:"text-black",children:(0,bt.__)("Welcome to the Extendify Library","extendify")}),(0,Nt.jsx)("span",{className:"px-2 opacity-50","aria-hidden":"true",children:"|"}),(0,Nt.jsxs)("div",{className:"flex space-x-2 justify-center items-center",children:[(0,Nt.jsx)(wt.Button,{variant:"link",className:"text-black underline hover:no-underline p-0 h-auto",href:"https://extendify.com/welcome/?utm_source=".concat(window.extendifyData.sdk_partner,"&utm_medium=library&utm_campaign=welcome-notice&utm_content=tell-me-more"),target:"_blank",children:(0,bt.__)("Tell me more","extendify")}),window.extendifyData.standalone?null:(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsx)("span",{className:"font-bold","aria-hidden":"true",children:"•"}),(0,Nt.jsx)(wt.Button,{variant:"link",className:"text-black underline hover:no-underline p-0 h-auto",onClick:function(){document.getElementById("extendify-templates-inserter-btn").classList.add("invisible"),z.setState({enabled:!1}),e(!1)},children:(0,bt.__)("Turn off the library","extendify")})]})]})]})},promotion:function(e){var t,n=e.promotionData;return(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsx)("span",{className:"text-black",children:null!==(t=null==n?void 0:n.text)&&void 0!==t?t:""}),(0,Nt.jsx)("span",{className:"px-2 opacity-50","aria-hidden":"true",children:"|"}),(0,Nt.jsx)("div",{className:"flex space-x-2 justify-center items-center",children:(null==n?void 0:n.url)&&(0,Nt.jsx)(wt.Button,{variant:"link",className:"text-black underline hover:no-underline p-0 h-auto",href:"".concat(n.url,"&utm_source=").concat(window.extendifyData.sdk_partner),target:"_blank",children:null==n?void 0:n.button_text})})]})},feedback:function(){return(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsx)("span",{className:"text-black",children:(0,bt.__)("Tell us how to make the Extendify Library work better for you","extendify")}),(0,Nt.jsx)("span",{className:"px-2 opacity-50","aria-hidden":"true",children:"|"}),(0,Nt.jsx)("div",{className:"flex space-x-2 justify-center items-center",children:(0,Nt.jsx)(wt.Button,{variant:"link",className:"text-black underline hover:no-underline p-0 h-auto",href:"https://extendify.com/feedback/?utm_source=".concat(window.extendifyData.sdk_partner,"&utm_medium=library&utm_campaign=feedback-notice&utm_content=give-feedback"),target:"_blank",children:(0,bt.__)("Give feedback","extendify")})})]})},standalone:function(){var e=ai((0,r.useState)(""),2),t=e[0],n=e[1],o=z((function(e){return e.giveFreebieImports}));return(0,Nt.jsxs)("div",{children:[(0,Nt.jsx)("span",{className:"text-black",children:(0,bt.__)("Install the new Extendify Library plugin to get the latest we have to offer","extendify")}),(0,Nt.jsx)("span",{className:"px-2 opacity-50","aria-hidden":"true",children:"|"}),(0,Nt.jsxs)("div",{className:"inline-flex space-x-2 items-center relative",children:[(0,Nt.jsx)(wt.Button,{variant:"link",className:kt()("text-black underline hover:no-underline p-0 h-auto",{"opacity-0":t}),onClick:function(){n((0,bt.__)("Installing...","extendify")),Promise.all([ri("stln-footer-install"),Wr(["extendify"]),new Promise((function(e){return setTimeout(e,1e3)}))]).then(ii(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o(10),n((0,bt.__)("Success! Reloading...","extendify")),e.next=4,ri("stln-footer-success");case 4:window.location.reload();case 5:case"end":return e.stop()}}),e)})))).catch(function(){var e=ii(w().mark((function e(t){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.error(t),n((0,bt.__)("Error. See console.","extendify")),e.next=4,ri("stln-footer-fail");case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}())},children:(0,bt.__)("Install Extendify standalone plugin","extendify")}),t?(0,Nt.jsx)(wt.Button,{variant:"link",disabled:!0,className:"text-black underline hover:no-underline p-0 h-auto absolute left-0 opacity-100",onClick:function(){},children:t}):null]})]})}};function fi(){var e,t=ci((0,r.useState)(null),2),n=t[0],o=t[1],i=(0,r.useRef)(!1),a=g((function(e){var t,n;return null===(t=e.metaData)||void 0===t||null===(n=t.banners)||void 0===n?void 0:n.footer})),s=null!==(e=Object.keys(di).find((function(e){return"promotion"===e?(null==a?void 0:a.key)&&!z.getState().noticesDismissedAt[a.key]:"feedback"===e?(o=null!==(t=z.getState().imports)&&void 0!==t?t:0,i=null!==(n=null===(r=z.getState())||void 0===r?void 0:r.firstLoadedOn)&&void 0!==n?n:new Date,s=(new Date).getTime()-new Date(i).getTime(),o>=3&&s/864e5>3&&!z.getState().noticesDismissedAt[e]):"standalone"===e?!window.extendifyData.standalone&&!z.getState().noticesDismissedAt[e]:!z.getState().noticesDismissedAt[e];var t,n,r,o,i,s})))&&void 0!==e?e:null,l=di[s],c=function(){var e,t=(e=w().mark((function e(){var t;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o(!1),t="promotion"===s?a.key:s,z.getState().markNoticeSeen(t,"notices"),e.next=5,ri("footer-notice-x-".concat(t));case 5:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){li(i,r,o,a,s,"next",e)}function s(e){li(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(){return t.apply(this,arguments)}}();return(0,r.useEffect)((function(){di[s]&&!i.current&&(o(!0),i.current=!0)}),[s]),n?(0,Nt.jsxs)("div",{className:"bg-extendify-secondary hidden lg:flex space-x-4 py-3 px-5 justify-center items-center relative max-w-screen-4xl mx-auto",children:[(0,Nt.jsx)(l,{promotionData:a}),(0,Nt.jsx)("div",{className:"absolute right-1",children:(0,Nt.jsx)(wt.Button,{className:"opacity-50 hover:opacity-100 focus:opacity-100 text-extendify-black",icon:(0,Nt.jsx)(Sn,{icon:ti}),label:(0,bt.__)("Dismiss this notice","extendify"),onClick:c,showTooltip:!1})})]}):null}function pi(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function hi(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){pi(i,r,o,a,s,"next",e)}function s(e){pi(i,r,o,a,s,"throw",e)}a(void 0)}))}}function mi(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return xi(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return xi(e,t)}(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 xi(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var yi=function(){var e=mi((0,r.useState)((0,bt.__)("Install Extendify","extendify")),2),t=e[0],n=e[1],o=mi((0,r.useState)(!1),2),i=o[0],a=o[1],s=mi((0,r.useState)(!1),2),l=s[0],c=s[1],u=(0,r.useRef)(null),d=z((function(e){return e.markNoticeSeen})),f=z((function(e){return e.giveFreebieImports})),p=g((function(e){return e.removeAllModals})),h=function(){var e=hi(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return p(),d("standalone","modalNotices"),e.next=4,ri("stln-modal-x");case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,Nt.jsxs)(Fo,{ref:u,onClose:h,children:[(0,Nt.jsxs)("div",{children:[(0,Nt.jsx)("div",{className:"flex space-x-2 items-center mb-10 text-extendify-black",children:Ln}),(0,Nt.jsx)("h3",{className:"text-xl",children:(0,bt.__)("Get the brand new Extendify plugin today!","extendify")}),(0,Nt.jsx)("p",{className:"text-sm text-black",dangerouslySetInnerHTML:{__html:Vn((0,bt.sprintf)((0,bt.__)("Install the new Extendify Library plugin to get the latest we have to offer — right from WordPress.org. Plus, well send you %1$s10 more imports%2$s. Nice.","extendify"),"<strong>","</strong>"))}}),(0,Nt.jsx)("div",{children:(0,Nt.jsxs)("button",{onClick:function(){n((0,bt.__)("Installing...","extendify")),c(!0),Promise.all([ri("stln-modal-install"),Wr(["extendify"]),new Promise((function(e){return setTimeout(e,1e3)}))]).then(hi(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n((0,bt.__)("Success! Reloading...","extendify")),a(!0),f(10),e.next=5,ri("stln-modal-success");case 5:window.location.reload();case 6:case"end":return e.stop()}}),e)})))).catch(function(){var e=hi(w().mark((function e(t){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.error(t),n((0,bt.__)("Error. See console.","extendify")),e.next=4,ri("stln-modal-fail");case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}())},ref:u,disabled:l,className:"button-extendify-main inline-flex mt-2 px-4 py-3 button-focus justify-center",style:{minWidth:"225px"},children:[t,i||(0,Nt.jsx)(wt.Icon,{icon:Dn,size:24,className:"w-6 ml-2 flex-grow-0"})]})})]}),(0,Nt.jsx)("div",{className:"w-full bg-extendify-secondary flex justify-end rounded-tr-sm rounded-br-sm",children:(0,Nt.jsx)("img",{alt:(0,bt.__)("Upgrade Now","extendify"),className:"max-w-full rounded-tr-sm roudned-br-sm",src:window.extendifyData.asset_path+"/modal-extendify-purple.png"})})]})};function vi(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return gi(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return gi(e,t)}(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 gi(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function bi(){var e=(0,r.useRef)(null),t=g((function(e){return e.open})),n=g((function(e){return e.setOpen})),o=function(){var e=vi((0,r.useState)(null),2),t=e[0],n=e[1],o=g((function(e){return e.open})),i=g((function(e){return e.pushModal})),a=g((function(e){return e.removeAllModals}));return(0,r.useEffect)((function(){return g.subscribe((function(e){return n((null==e?void 0:e.length)>0?e[0]:null)}),(function(e){return e.modals}))}),[]),(0,r.useEffect)((function(){var e;if(o){var t={standalone:yi},n=t[null!==(e=Object.keys(t).find((function(e){return"standalone"===e?!window.extendifyData.standalone&&!z.getState().modalNoticesDismissedAt[e]:!z.getState().modalNoticesDismissedAt[e]})))&&void 0!==e?e:null];n&&i((0,Nt.jsx)(n,{}))}else a()}),[o,i,a]),t}();return(0,Nt.jsx)(Ie,{appear:!0,show:t,as:r.Fragment,children:(0,Nt.jsx)(gt,{as:"div",static:!0,className:"extendify",initialFocus:e,onClose:function(){return n(!1)},children:(0,Nt.jsx)("div",{className:"h-screen w-screen sm:h-auto m-auto sm:w-auto fixed z-high inset-0 overflow-y-auto",children:(0,Nt.jsxs)("div",{className:"flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0",children:[(0,Nt.jsx)(Ie.Child,{as:r.Fragment,enter:"ease-out duration-300",enterFrom:"opacity-0",enterTo:"opacity-100",children:(0,Nt.jsx)(gt.Overlay,{className:"fixed inset-0 bg-black bg-opacity-40 transition-opacity"})}),(0,Nt.jsx)(Ie.Child,{as:r.Fragment,enter:"ease-out duration-300",enterFrom:"opacity-0 translate-y-4 sm:translate-y-5",enterTo:"opacity-100 translate-y-0",children:(0,Nt.jsxs)("div",{ref:e,tabIndex:"0",onClick:function(e){return e.target===e.currentTarget&&n(!1)},className:"fixed lg:absolute inset-0 lg:overflow-hidden transform transition-all p-2 lg:p-16",children:[(0,Nt.jsx)(Qo,{}),(0,Nt.jsx)(fi,{}),o]})})]})})})})}const wi=wp.compose,ji=wp.hooks,ki=JSON.parse('{"t":["ext-absolute","ext-relative","ext-top-base","ext-top-lg","ext--top-base","ext--top-lg","ext-right-base","ext-right-lg","ext--right-base","ext--right-lg","ext-bottom-base","ext-bottom-lg","ext--bottom-base","ext--bottom-lg","ext-left-base","ext-left-lg","ext--left-base","ext--left-lg","ext-order-1","ext-order-2","ext-col-auto","ext-col-span-1","ext-col-span-2","ext-col-span-3","ext-col-span-4","ext-col-span-5","ext-col-span-6","ext-col-span-7","ext-col-span-8","ext-col-span-9","ext-col-span-10","ext-col-span-11","ext-col-span-12","ext-col-span-full","ext-col-start-1","ext-col-start-2","ext-col-start-3","ext-col-start-4","ext-col-start-5","ext-col-start-6","ext-col-start-7","ext-col-start-8","ext-col-start-9","ext-col-start-10","ext-col-start-11","ext-col-start-12","ext-col-start-13","ext-col-start-auto","ext-col-end-1","ext-col-end-2","ext-col-end-3","ext-col-end-4","ext-col-end-5","ext-col-end-6","ext-col-end-7","ext-col-end-8","ext-col-end-9","ext-col-end-10","ext-col-end-11","ext-col-end-12","ext-col-end-13","ext-col-end-auto","ext-row-auto","ext-row-span-1","ext-row-span-2","ext-row-span-3","ext-row-span-4","ext-row-span-5","ext-row-span-6","ext-row-span-full","ext-row-start-1","ext-row-start-2","ext-row-start-3","ext-row-start-4","ext-row-start-5","ext-row-start-6","ext-row-start-7","ext-row-start-auto","ext-row-end-1","ext-row-end-2","ext-row-end-3","ext-row-end-4","ext-row-end-5","ext-row-end-6","ext-row-end-7","ext-row-end-auto","ext-m-0","ext-m-auto","ext-m-base","ext-m-lg","ext--m-base","ext--m-lg","ext-mx-0","ext-mx-auto","ext-mx-base","ext-mx-lg","ext--mx-base","ext--mx-lg","ext-my-0","ext-my-auto","ext-my-base","ext-my-lg","ext--my-base","ext--my-lg","ext-mt-0","ext-mt-auto","ext-mt-base","ext-mt-lg","ext--mt-base","ext--mt-lg","ext-mr-0","ext-mr-auto","ext-mr-base","ext-mr-lg","ext--mr-base","ext--mr-lg","ext-mb-0","ext-mb-auto","ext-mb-base","ext-mb-lg","ext--mb-base","ext--mb-lg","ext-ml-0","ext-ml-auto","ext-ml-base","ext-ml-lg","ext--ml-base","ext--ml-lg","ext-block","ext-inline-block","ext-inline","ext-flex","ext-inline-flex","ext-grid","ext-inline-grid","ext-hidden","ext-w-auto","ext-w-full","ext-max-w-full","ext-flex-1","ext-flex-auto","ext-flex-initial","ext-flex-none","ext-flex-shrink-0","ext-flex-shrink","ext-flex-grow-0","ext-flex-grow","ext-list-none","ext-grid-cols-1","ext-grid-cols-2","ext-grid-cols-3","ext-grid-cols-4","ext-grid-cols-5","ext-grid-cols-6","ext-grid-cols-7","ext-grid-cols-8","ext-grid-cols-9","ext-grid-cols-10","ext-grid-cols-11","ext-grid-cols-12","ext-grid-cols-none","ext-grid-rows-1","ext-grid-rows-2","ext-grid-rows-3","ext-grid-rows-4","ext-grid-rows-5","ext-grid-rows-6","ext-grid-rows-none","ext-flex-row","ext-flex-row-reverse","ext-flex-col","ext-flex-col-reverse","ext-flex-wrap","ext-flex-wrap-reverse","ext-flex-nowrap","ext-items-start","ext-items-end","ext-items-center","ext-items-baseline","ext-items-stretch","ext-justify-start","ext-justify-end","ext-justify-center","ext-justify-between","ext-justify-around","ext-justify-evenly","ext-justify-items-start","ext-justify-items-end","ext-justify-items-center","ext-justify-items-stretch","ext-gap-0","ext-gap-base","ext-gap-lg","ext-gap-x-0","ext-gap-x-base","ext-gap-x-lg","ext-gap-y-0","ext-gap-y-base","ext-gap-y-lg","ext-justify-self-auto","ext-justify-self-start","ext-justify-self-end","ext-justify-self-center","ext-justify-self-stretch","ext-rounded-none","ext-rounded-full","ext-rounded-t-none","ext-rounded-t-full","ext-rounded-r-none","ext-rounded-r-full","ext-rounded-b-none","ext-rounded-b-full","ext-rounded-l-none","ext-rounded-l-full","ext-rounded-tl-none","ext-rounded-tl-full","ext-rounded-tr-none","ext-rounded-tr-full","ext-rounded-br-none","ext-rounded-br-full","ext-rounded-bl-none","ext-rounded-bl-full","ext-border-0","ext-border-t-0","ext-border-r-0","ext-border-b-0","ext-border-l-0","ext-p-0","ext-p-base","ext-p-lg","ext-px-0","ext-px-base","ext-px-lg","ext-py-0","ext-py-base","ext-py-lg","ext-pt-0","ext-pt-base","ext-pt-lg","ext-pr-0","ext-pr-base","ext-pr-lg","ext-pb-0","ext-pb-base","ext-pb-lg","ext-pl-0","ext-pl-base","ext-pl-lg","ext-text-left","ext-text-center","ext-text-right","ext-leading-none","ext-leading-tight","ext-leading-snug","ext-leading-normal","ext-leading-relaxed","ext-leading-loose","clip-path--rhombus","clip-path--diamond","clip-path--rhombus-alt","wp-block-columns[class*=\\"fullwidth-cols\\"]\\n","tablet\\\\:fullwidth-cols","desktop\\\\:fullwidth-cols","direction-rtl","direction-ltr","bring-to-front","text-stroke","text-stroke--primary","text-stroke--secondary","editor\\\\:no-caption","editor\\\\:no-inserter","editor\\\\:no-resize","editor\\\\:pointer-events-none","tablet\\\\:ext-absolute","tablet\\\\:ext-relative","tablet\\\\:ext-top-base","tablet\\\\:ext-top-lg","tablet\\\\:ext--top-base","tablet\\\\:ext--top-lg","tablet\\\\:ext-right-base","tablet\\\\:ext-right-lg","tablet\\\\:ext--right-base","tablet\\\\:ext--right-lg","tablet\\\\:ext-bottom-base","tablet\\\\:ext-bottom-lg","tablet\\\\:ext--bottom-base","tablet\\\\:ext--bottom-lg","tablet\\\\:ext-left-base","tablet\\\\:ext-left-lg","tablet\\\\:ext--left-base","tablet\\\\:ext--left-lg","tablet\\\\:ext-order-1","tablet\\\\:ext-order-2","tablet\\\\:ext-m-0","tablet\\\\:ext-m-auto","tablet\\\\:ext-m-base","tablet\\\\:ext-m-lg","tablet\\\\:ext--m-base","tablet\\\\:ext--m-lg","tablet\\\\:ext-mx-0","tablet\\\\:ext-mx-auto","tablet\\\\:ext-mx-base","tablet\\\\:ext-mx-lg","tablet\\\\:ext--mx-base","tablet\\\\:ext--mx-lg","tablet\\\\:ext-my-0","tablet\\\\:ext-my-auto","tablet\\\\:ext-my-base","tablet\\\\:ext-my-lg","tablet\\\\:ext--my-base","tablet\\\\:ext--my-lg","tablet\\\\:ext-mt-0","tablet\\\\:ext-mt-auto","tablet\\\\:ext-mt-base","tablet\\\\:ext-mt-lg","tablet\\\\:ext--mt-base","tablet\\\\:ext--mt-lg","tablet\\\\:ext-mr-0","tablet\\\\:ext-mr-auto","tablet\\\\:ext-mr-base","tablet\\\\:ext-mr-lg","tablet\\\\:ext--mr-base","tablet\\\\:ext--mr-lg","tablet\\\\:ext-mb-0","tablet\\\\:ext-mb-auto","tablet\\\\:ext-mb-base","tablet\\\\:ext-mb-lg","tablet\\\\:ext--mb-base","tablet\\\\:ext--mb-lg","tablet\\\\:ext-ml-0","tablet\\\\:ext-ml-auto","tablet\\\\:ext-ml-base","tablet\\\\:ext-ml-lg","tablet\\\\:ext--ml-base","tablet\\\\:ext--ml-lg","tablet\\\\:ext-block","tablet\\\\:ext-inline-block","tablet\\\\:ext-inline","tablet\\\\:ext-flex","tablet\\\\:ext-inline-flex","tablet\\\\:ext-grid","tablet\\\\:ext-inline-grid","tablet\\\\:ext-hidden","tablet\\\\:ext-w-auto","tablet\\\\:ext-w-full","tablet\\\\:ext-max-w-full","tablet\\\\:ext-flex-1","tablet\\\\:ext-flex-auto","tablet\\\\:ext-flex-initial","tablet\\\\:ext-flex-none","tablet\\\\:ext-flex-shrink-0","tablet\\\\:ext-flex-shrink","tablet\\\\:ext-flex-grow-0","tablet\\\\:ext-flex-grow","tablet\\\\:ext-list-none","tablet\\\\:ext-grid-cols-1","tablet\\\\:ext-grid-cols-2","tablet\\\\:ext-grid-cols-3","tablet\\\\:ext-grid-cols-4","tablet\\\\:ext-grid-cols-5","tablet\\\\:ext-grid-cols-6","tablet\\\\:ext-grid-cols-7","tablet\\\\:ext-grid-cols-8","tablet\\\\:ext-grid-cols-9","tablet\\\\:ext-grid-cols-10","tablet\\\\:ext-grid-cols-11","tablet\\\\:ext-grid-cols-12","tablet\\\\:ext-grid-cols-none","tablet\\\\:ext-flex-row","tablet\\\\:ext-flex-row-reverse","tablet\\\\:ext-flex-col","tablet\\\\:ext-flex-col-reverse","tablet\\\\:ext-flex-wrap","tablet\\\\:ext-flex-wrap-reverse","tablet\\\\:ext-flex-nowrap","tablet\\\\:ext-items-start","tablet\\\\:ext-items-end","tablet\\\\:ext-items-center","tablet\\\\:ext-items-baseline","tablet\\\\:ext-items-stretch","tablet\\\\:ext-justify-start","tablet\\\\:ext-justify-end","tablet\\\\:ext-justify-center","tablet\\\\:ext-justify-between","tablet\\\\:ext-justify-around","tablet\\\\:ext-justify-evenly","tablet\\\\:ext-justify-items-start","tablet\\\\:ext-justify-items-end","tablet\\\\:ext-justify-items-center","tablet\\\\:ext-justify-items-stretch","tablet\\\\:ext-justify-self-auto","tablet\\\\:ext-justify-self-start","tablet\\\\:ext-justify-self-end","tablet\\\\:ext-justify-self-center","tablet\\\\:ext-justify-self-stretch","tablet\\\\:ext-p-0","tablet\\\\:ext-p-base","tablet\\\\:ext-p-lg","tablet\\\\:ext-px-0","tablet\\\\:ext-px-base","tablet\\\\:ext-px-lg","tablet\\\\:ext-py-0","tablet\\\\:ext-py-base","tablet\\\\:ext-py-lg","tablet\\\\:ext-pt-0","tablet\\\\:ext-pt-base","tablet\\\\:ext-pt-lg","tablet\\\\:ext-pr-0","tablet\\\\:ext-pr-base","tablet\\\\:ext-pr-lg","tablet\\\\:ext-pb-0","tablet\\\\:ext-pb-base","tablet\\\\:ext-pb-lg","tablet\\\\:ext-pl-0","tablet\\\\:ext-pl-base","tablet\\\\:ext-pl-lg","tablet\\\\:ext-text-left","tablet\\\\:ext-text-center","tablet\\\\:ext-text-right","desktop\\\\:ext-absolute","desktop\\\\:ext-relative","desktop\\\\:ext-top-base","desktop\\\\:ext-top-lg","desktop\\\\:ext--top-base","desktop\\\\:ext--top-lg","desktop\\\\:ext-right-base","desktop\\\\:ext-right-lg","desktop\\\\:ext--right-base","desktop\\\\:ext--right-lg","desktop\\\\:ext-bottom-base","desktop\\\\:ext-bottom-lg","desktop\\\\:ext--bottom-base","desktop\\\\:ext--bottom-lg","desktop\\\\:ext-left-base","desktop\\\\:ext-left-lg","desktop\\\\:ext--left-base","desktop\\\\:ext--left-lg","desktop\\\\:ext-order-1","desktop\\\\:ext-order-2","desktop\\\\:ext-m-0","desktop\\\\:ext-m-auto","desktop\\\\:ext-m-base","desktop\\\\:ext-m-lg","desktop\\\\:ext--m-base","desktop\\\\:ext--m-lg","desktop\\\\:ext-mx-0","desktop\\\\:ext-mx-auto","desktop\\\\:ext-mx-base","desktop\\\\:ext-mx-lg","desktop\\\\:ext--mx-base","desktop\\\\:ext--mx-lg","desktop\\\\:ext-my-0","desktop\\\\:ext-my-auto","desktop\\\\:ext-my-base","desktop\\\\:ext-my-lg","desktop\\\\:ext--my-base","desktop\\\\:ext--my-lg","desktop\\\\:ext-mt-0","desktop\\\\:ext-mt-auto","desktop\\\\:ext-mt-base","desktop\\\\:ext-mt-lg","desktop\\\\:ext--mt-base","desktop\\\\:ext--mt-lg","desktop\\\\:ext-mr-0","desktop\\\\:ext-mr-auto","desktop\\\\:ext-mr-base","desktop\\\\:ext-mr-lg","desktop\\\\:ext--mr-base","desktop\\\\:ext--mr-lg","desktop\\\\:ext-mb-0","desktop\\\\:ext-mb-auto","desktop\\\\:ext-mb-base","desktop\\\\:ext-mb-lg","desktop\\\\:ext--mb-base","desktop\\\\:ext--mb-lg","desktop\\\\:ext-ml-0","desktop\\\\:ext-ml-auto","desktop\\\\:ext-ml-base","desktop\\\\:ext-ml-lg","desktop\\\\:ext--ml-base","desktop\\\\:ext--ml-lg","desktop\\\\:ext-block","desktop\\\\:ext-inline-block","desktop\\\\:ext-inline","desktop\\\\:ext-flex","desktop\\\\:ext-inline-flex","desktop\\\\:ext-grid","desktop\\\\:ext-inline-grid","desktop\\\\:ext-hidden","desktop\\\\:ext-w-auto","desktop\\\\:ext-w-full","desktop\\\\:ext-max-w-full","desktop\\\\:ext-flex-1","desktop\\\\:ext-flex-auto","desktop\\\\:ext-flex-initial","desktop\\\\:ext-flex-none","desktop\\\\:ext-flex-shrink-0","desktop\\\\:ext-flex-shrink","desktop\\\\:ext-flex-grow-0","desktop\\\\:ext-flex-grow","desktop\\\\:ext-list-none","desktop\\\\:ext-grid-cols-1","desktop\\\\:ext-grid-cols-2","desktop\\\\:ext-grid-cols-3","desktop\\\\:ext-grid-cols-4","desktop\\\\:ext-grid-cols-5","desktop\\\\:ext-grid-cols-6","desktop\\\\:ext-grid-cols-7","desktop\\\\:ext-grid-cols-8","desktop\\\\:ext-grid-cols-9","desktop\\\\:ext-grid-cols-10","desktop\\\\:ext-grid-cols-11","desktop\\\\:ext-grid-cols-12","desktop\\\\:ext-grid-cols-none","desktop\\\\:ext-flex-row","desktop\\\\:ext-flex-row-reverse","desktop\\\\:ext-flex-col","desktop\\\\:ext-flex-col-reverse","desktop\\\\:ext-flex-wrap","desktop\\\\:ext-flex-wrap-reverse","desktop\\\\:ext-flex-nowrap","desktop\\\\:ext-items-start","desktop\\\\:ext-items-end","desktop\\\\:ext-items-center","desktop\\\\:ext-items-baseline","desktop\\\\:ext-items-stretch","desktop\\\\:ext-justify-start","desktop\\\\:ext-justify-end","desktop\\\\:ext-justify-center","desktop\\\\:ext-justify-between","desktop\\\\:ext-justify-around","desktop\\\\:ext-justify-evenly","desktop\\\\:ext-justify-items-start","desktop\\\\:ext-justify-items-end","desktop\\\\:ext-justify-items-center","desktop\\\\:ext-justify-items-stretch","desktop\\\\:ext-justify-self-auto","desktop\\\\:ext-justify-self-start","desktop\\\\:ext-justify-self-end","desktop\\\\:ext-justify-self-center","desktop\\\\:ext-justify-self-stretch","desktop\\\\:ext-p-0","desktop\\\\:ext-p-base","desktop\\\\:ext-p-lg","desktop\\\\:ext-px-0","desktop\\\\:ext-px-base","desktop\\\\:ext-px-lg","desktop\\\\:ext-py-0","desktop\\\\:ext-py-base","desktop\\\\:ext-py-lg","desktop\\\\:ext-pt-0","desktop\\\\:ext-pt-base","desktop\\\\:ext-pt-lg","desktop\\\\:ext-pr-0","desktop\\\\:ext-pr-base","desktop\\\\:ext-pr-lg","desktop\\\\:ext-pb-0","desktop\\\\:ext-pb-base","desktop\\\\:ext-pb-lg","desktop\\\\:ext-pl-0","desktop\\\\:ext-pl-base","desktop\\\\:ext-pl-lg","desktop\\\\:ext-text-left","desktop\\\\:ext-text-center","desktop\\\\:ext-text-right"]}');function Ci(e){return function(e){if(Array.isArray(e))return Si(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return Si(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Si(e,t)}(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 Si(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Oi(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ei(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Oi(Object(n),!0).forEach((function(t){_i(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Oi(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Ni=(0,wi.createHigherOrderComponent)((function(e){return function(t){var n,r,o=null!==(n=null==t||null===(r=t.attributes)||void 0===r?void 0:r.extUtilities)&&void 0!==n?n:[],i=ki.t.map((function(e){return e.replace(".","").replace(new RegExp("\\\\","g"),"")}));return(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsx)(e,Ei({},t)),o&&(0,Nt.jsx)(Br.InspectorAdvancedControls,{children:(0,Nt.jsx)(wt.FormTokenField,{label:(0,bt.__)("Extendify Utilities","extendify"),tokenizeOnSpace:!0,value:o,suggestions:i,onChange:function(e){t.setAttributes({extUtilities:e})}})})]})}}),"utilityClassEdit");function Ai(e,t,n){var r,o,i,a=null!==(r=null==e?void 0:e.className)&&void 0!==r?r:[],s=null!==(o=null==n?void 0:n.extUtilities)&&void 0!==o?o:[],l=null!==(i=null==n?void 0:n.className)&&void 0!==i?i:[];if(!s||!Object.keys(s).length)return e;var c=function(e){switch(Object.prototype.toString.call(e)){case"[object String]":return e.split(" ");case"[object Array]":return e;default:return[]}},u=new Set([].concat(Ci(c(l)),Ci(c(a)),Ci(c(s))));return Object.assign({},e,{className:Ci(u).join(" ")})}function Pi(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}(0,ji.addFilter)("blocks.registerBlockType","extendify/utilities/attributes",(function(e){return Ei(Ei({},e),{},{attributes:Ei(Ei({},e.attributes),{},{extUtilities:{type:"array",default:[]}})})})),(0,ji.addFilter)("blocks.registerBlockType","extendify/utilities/addEditProps",(function(e){var t=e.getEditWrapperProps;return e.getEditWrapperProps=function(n){var r={};return t&&(r=t(n)),Ai(r,e,n)},e})),(0,ji.addFilter)("editor.BlockEdit","extendify/utilities/advancedClassControls",Ni),(0,ji.addFilter)("blocks.getSaveContent.extraProps","extendify/utilities/extra-props",Ai);var Ti=function(){return(e=w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,k.get("taxonomies");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Pi(i,r,o,a,s,"next",e)}function s(e){Pi(i,r,o,a,s,"throw",e)}a(void 0)}))})();var e};function Ii(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Li(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Ii(i,r,o,a,s,"next",e)}function s(e){Ii(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Mi(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Ri(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Ri(e,t)}(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 Ri(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Di(e){var t=e.show,n=void 0!==t&&t,o=g((function(e){return e.open})),i=g((function(e){return e.setOpen})),a=Mi((0,r.useState)(!1),2),s=a[0],l=a[1],c=(0,r.useCallback)((function(){return i(!0)}),[i]),u=(0,r.useCallback)((function(){return i(!1)}),[i]),d=K((function(e){return e.initTemplateData})),f=z((function(e){return e.uuid.length>0})),p=K((function(e){return Object.keys(e.taxonomyDefaultState).length>0}));return function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=K((function(e){return e.setupDefaultTaxonomies})),n=U((function(e){return e.setTaxonomies})),o=(0,r.useCallback)(Li(w().mark((function e(){var r,o;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Ti();case 2:if(o=e.sent,o=Object.keys(o).reduce((function(e,t){return e[t]=o[t],e}),{}),null!==(r=Object.keys(o))&&void 0!==r&&r.length){e.next=6;break}return e.abrupt("return");case 6:n(o),t();case 8:case"end":return e.stop()}}),e)}))),[n,t]);(0,r.useEffect)((function(){e&&o()}),[o,e])}(o),(0,r.useEffect)((function(){f&&p&&(d(),l(!0))}),[f,p,d]),(0,r.useEffect)((function(){n&&i(!0)}),[n,i]),(0,r.useEffect)((function(){ni().then((function(e){g.setState({metaData:e})}))}),[]),(0,r.useEffect)((function(){return window.addEventListener("extendify::open-library",c),window.addEventListener("extendify::close-library",u),function(){window.removeEventListener("extendify::open-library",c),window.removeEventListener("extendify::close-library",u)}}),[u,c]),s?(0,Nt.jsx)(bi,{}):null}const Fi=wp.plugins,Bi=wp.editPost;var zi=function(){return k.get("site-settings")},Ui=function(e){var t=new FormData;return t.append("data",JSON.stringify(e)),k.post("site-settings",t,{headers:{"Content-Type":"multipart/form-data"}})};function Wi(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function qi(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Wi(i,r,o,a,s,"next",e)}function s(e){Wi(i,r,o,a,s,"throw",e)}a(void 0)}))}}var $i={getItem:function(){var e=qi(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,zi();case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),setItem:function(){var e=qi(w().mark((function e(t,n){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Ui(n);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),removeItem:function(){}},Hi=l(x((function(){return{enabled:!0}}),{name:"extendify-sitesettings",getStorage:function(){return $i}}));function Vi(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Gi(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Vi(i,r,o,a,s,"next",e)}function s(e){Vi(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Ji(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Ki(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Ki(e,t)}(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 Ki(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}const Zi=function(){var e=(0,eo.useSelect)((function(e){return e("core").canUser("create","users")})),t=Ji((0,r.useState)(z((function(e){return e.enabled}))),2),n=t[0],o=t[1],i=Ji((0,r.useState)(Hi((function(e){return e.enabled}))),2),a=i[0],s=i[1];function l(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=document.getElementById("extendify-templates-inserter-btn");t&&(e?t.classList.add("invisible"):t.classList.remove("invisible"))}function c(e){return u.apply(this,arguments)}function u(){return(u=Gi(w().mark((function e(t){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,z.setState({enabled:t});case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function d(e){return f.apply(this,arguments)}function f(){return(f=Gi(w().mark((function e(t){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Hi.setState({enabled:t});case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function p(e,t){return h.apply(this,arguments)}function h(){return h=Gi(w().mark((function e(t,n){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("global"!==n){e.next=5;break}return e.next=3,d(t);case 3:e.next=7;break;case 5:return e.next=7,c(t);case 7:case"end":return e.stop()}}),e)}))),h.apply(this,arguments)}function m(e){"global"===e?s((function(t){return p(!t,e),!t})):o((function(t){return l(!t),p(!t,e),!t}))}return(0,r.useEffect)((function(){l(!n)}),[n]),(0,Nt.jsxs)(wt.Modal,{title:(0,bt.__)("Extendify Settings","extendify"),onRequestClose:function(){var e=document.getElementById("extendify-util");(0,r.unmountComponentAtNode)(e)},children:[(0,Nt.jsx)(wt.ToggleControl,{label:e?(0,bt.__)("Enable the library for myself","extendify"):(0,bt.__)("Enable the library","extendify"),help:(0,bt.__)("Publish with hundreds of patterns & page layouts","extendify"),checked:n,onChange:function(){return m("user")}}),e&&(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsx)("br",{}),(0,Nt.jsx)(wt.ToggleControl,{label:(0,bt.__)("Allow all users to publish with the library"),help:(0,bt.__)("Everyone publishes with patterns & page layouts","extendify"),checked:a,onChange:function(){return m("global")}})]})]})};var Xi=function(e){var t=e.anchorRef,n=e.onPressX,r=e.onClick,o=e.onClickOutside;return t.current?(0,Nt.jsx)(wt.Popover,{anchorRef:t.current,shouldAnchorIncludePadding:!0,className:"extendify-tooltip-default",focusOnMount:!1,onFocusOutside:o,onClick:r,position:"bottom center",noArrow:!1,children:(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"0.5rem"},children:[(0,Nt.jsx)("span",{style:{textTransform:"uppercase",color:"#8b8b8b"},children:(0,bt.__)("Monthly Imports","extendify")}),(0,Nt.jsx)(wt.Button,{style:{color:"white",position:"relative",right:"-5px",padding:"0",minWidth:"0",height:"20px",width:"20px"},onClick:function(e){e.stopPropagation(),n()},icon:(0,Nt.jsx)(Sn,{icon:Zn,size:12}),showTooltip:!1,label:(0,bt.__)("Close callout","extendify")})]}),(0,Nt.jsx)("div",{dangerouslySetInnerHTML:{__html:Vn((0,bt.sprintf)((0,bt.__)("%1$sGood news!%2$s We've added more imports to your library. Enjoy!","extendify"),"<strong>","</strong>"))}})]})}):null};function Yi(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Qi(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Yi(i,r,o,a,s,"next",e)}function s(e){Yi(i,r,o,a,s,"throw",e)}a(void 0)}))}}function ea(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return ta(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ta(e,t)}(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 ta(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var na,ra,oa=function(){var e=ea((0,r.useState)(!1),2),t=e[0],n=e[1],o=(0,r.useRef)(!1),i=(0,r.useRef)(),a=z((function(e){return e.apiKey.length})),s=z((function(e){return e.imports>0})),l=g((function(e){return e.open})),c=z((function(e){return 0===e.allowedImports})),u=function(){var e=Qi(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ri("mb-tooltip-closed");case 2:n(!1),z.setState({allowedImports:-1});case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,r.useEffect)((function(){l&&(n(!1),o.current=!0),!a&&c&&s&&(o.current||n(!0),o.current=!0)}),[a,c,s,l]),(0,Nt.jsxs)(Nt.Fragment,{children:[(0,Nt.jsx)(wt.Button,{isPrimary:!0,ref:i,style:{padding:"12px"},onClick:function(){return St("main-button")},id:"extendify-templates-inserter-btn",icon:(0,Nt.jsx)(Sn,{style:{marginRight:"4px"},icon:In,size:24}),children:(0,bt.__)("Library","extendify")}),t&&(0,Nt.jsx)(Xi,{anchorRef:i,onClick:Qi(w().mark((function e(){return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ri("mb-tooltip-pressed");case 2:St("main-button-tooltip");case 3:case"end":return e.stop()}}),e)}))),onPressX:u})]})},ia=function(){return(0,Nt.jsx)(wt.Button,{id:"extendify-cta-button",style:{margin:"1rem 1rem 0",width:"calc(100% - 2rem)",justifyContent:" center"},onClick:function(){return St("patterns-cta")},isSecondary:!0,children:(0,bt.__)("Discover patterns in Extendify Library","extendify")})},aa=null===(na=window.extendifyData)||void 0===na||null===(ra=na.user)||void 0===ra?void 0:ra.state,sa=function(){return null===window.extendifyData.user||(null==aa?void 0:aa.isAdmin)},la=function(){var e,t,n;return null===window.extendifyData.sitesettings||(null===(e=window.extendifyData)||void 0===e||null===(t=e.sitesettings)||void 0===t||null===(n=t.state)||void 0===n?void 0:n.enabled)};if(window._wpLoadBlockEditor)var ca=window.wp.data.subscribe((function(){requestAnimationFrame((function(){if((la()||sa())&&!document.getElementById("extendify-templates-inserter")&&document.querySelector(".edit-post-header-toolbar")){var e=Object.assign(document.createElement("div"),{id:"extendify-templates-inserter"});document.querySelector(".edit-post-header-toolbar").append(e),(0,r.render)((0,Nt.jsx)(oa,{}),e),(null===window.extendifyData.user?la():null==aa?void 0:aa.enabled)||document.getElementById("extendify-templates-inserter-btn").classList.add("invisible"),ca()}}))}));window._wpLoadBlockEditor&&window.wp.data.subscribe((function(){requestAnimationFrame((function(){if((la()||sa())&&document.querySelector("[id$=patterns-view]")&&!document.getElementById("extendify-cta-button")){var e=Object.assign(document.createElement("div"),{id:"extendify-cta-button-container"});document.querySelector("[id$=patterns-view]").prepend(e),(0,r.render)((0,Nt.jsx)(ia,{}),e)}}))}));window._wpLoadBlockEditor&&(0,Fi.registerPlugin)("extendify-settings-enable-disable",{render:function(){return(0,Nt.jsx)(Nt.Fragment,{children:(0,Nt.jsxs)(Bi.PluginSidebarMoreMenuItem,{onClick:function(){var e=document.getElementById("extendify-util");(0,r.render)((0,Nt.jsx)(Zi,{}),e)},icon:(0,Nt.jsx)(Sn,{icon:In,size:24}),children:[" ",(0,bt.__)("Extendify","extendify")]})})}}),[{register:function(){var e=(0,eo.dispatch)("core/notices").createNotice,t=z.getState().incrementImports;window.addEventListener("extendify::template-inserted",(function(n){e("info",(0,bt.__)("Page layout added"),{isDismissible:!0,type:"snackbar"}),setTimeout((function(){var e;t(),Or(null===(e=n.detail)||void 0===e?void 0:e.template)}),0)}))}},{register:function(){var e=this;window.addEventListener("extendify::softerror-encountered",(function(t){e[(0,Ct.camelCase)(t.detail.type)](t.detail)}))},versionOutdated:function(e){(0,r.render)((0,Nt.jsx)(lo,{title:e.data.title,requiredPlugins:["extendify"],message:e.data.message,buttonLabel:e.data.buttonLabel,forceOpen:!0}),document.getElementById("extendify-root"))}}].forEach((function(e){return e.register()}));const ua=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"extendify/library","title":"Pattern Library","category":"design","description":"Add block patterns and full page layouts with the Extendify Library.","keywords":["pattern","extendify","library","template","layouts"],"textdomain":"extendify","attributes":{"preview":{"type":"string"}}}');(0,zr.registerBlockType)(ua,{icon:Tn,example:{attributes:{preview:window.extendifyData.asset_path+"/preview.png"}},edit:function(e){var t=e.clientId,n=e.attributes,o=(0,eo.useDispatch)("core/block-editor").removeBlock;return(0,r.useEffect)((function(){n.preview||(Ot("library-block","open"),o(t))}),[t,n,o]),(0,Nt.jsx)("img",{style:{display:"block",maxWidth:"100%"},src:n.preview,alt:(0,bt.sprintf)((0,bt.__)("%s Pattern Library","extendify"),"Extendify")})}}),window._wpLoadBlockEditor&&window.wp.domReady((function(){var e=Object.assign(document.createElement("div"),{id:"extendify-root"});if(document.body.append(e),(0,r.render)((0,Nt.jsx)(Di,{}),e),e.parentNode.insertBefore(Object.assign(document.createElement("div"),{id:"extendify-util"}),e.nextSibling),Yr.getState().importOnLoad){var t=Yr.getState().wantedTemplate;setTimeout((function(){Io((0,zr.rawHandler)({HTML:t.fields.code}),t)}),0)}Yr.setState({importOnLoad:!1,wantedTemplate:{}})}))},42:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],t=0;t<arguments.length;t++){var n=arguments[t];if(n){var i=typeof n;if("string"===i||"number"===i)e.push(n);else if(Array.isArray(n)){if(n.length){var a=o.apply(null,n);a&&e.push(a)}}else if("object"===i)if(n.toString===Object.prototype.toString)for(var s in n)r.call(n,s)&&n[s]&&e.push(s);else e.push(n.toString())}}return e.join(" ")}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},12:(e,t,n)=>{"use strict";var r=n(185),o={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var n,i,a,s,l,c,u=!1;t||(t={}),n=t.debug||!1;try{if(a=r(),s=document.createRange(),l=document.getSelection(),(c=document.createElement("span")).textContent=e,c.style.all="unset",c.style.position="fixed",c.style.top=0,c.style.clip="rect(0, 0, 0, 0)",c.style.whiteSpace="pre",c.style.webkitUserSelect="text",c.style.MozUserSelect="text",c.style.msUserSelect="text",c.style.userSelect="text",c.addEventListener("copy",(function(r){if(r.stopPropagation(),t.format)if(r.preventDefault(),void 0===r.clipboardData){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var i=o[t.format]||o.default;window.clipboardData.setData(i,e)}else r.clipboardData.clearData(),r.clipboardData.setData(t.format,e);t.onCopy&&(r.preventDefault(),t.onCopy(r.clipboardData))})),document.body.appendChild(c),s.selectNodeContents(c),l.addRange(s),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");u=!0}catch(r){n&&console.error("unable to copy using execCommand: ",r),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),u=!0}catch(r){n&&console.error("unable to copy using clipboardData: ",r),n&&console.error("falling back to prompt"),i=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"⌘":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(i,e)}}finally{l&&("function"==typeof l.removeRange?l.removeRange(s):l.removeAllRanges()),c&&document.body.removeChild(c),a()}return u}},716:()=>{},965:()=>{},525:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function o(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,i){for(var a,s,l=o(e),c=1;c<arguments.length;c++){for(var u in a=Object(arguments[c]))n.call(a,u)&&(l[u]=a[u]);if(t){s=t(a);for(var d=0;d<s.length;d++)r.call(a,s[d])&&(l[s[d]]=a[s[d]])}}return l}},61:e=>{var t,n,r=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function a(e){if(t===setTimeout)return setTimeout(e,0);if((t===o||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(n){try{return t.call(null,e,0)}catch(n){return t.call(this,e,0)}}}!function(){try{t="function"==typeof setTimeout?setTimeout:o}catch(e){t=o}try{n="function"==typeof clearTimeout?clearTimeout:i}catch(e){n=i}}();var s,l=[],c=!1,u=-1;function d(){c&&s&&(c=!1,s.length?l=s.concat(l):u=-1,l.length&&f())}function f(){if(!c){var e=a(d);c=!0;for(var t=l.length;t;){for(s=l,l=[];++u<t;)s&&s[u].run();u=-1,t=l.length}s=null,c=!1,function(e){if(n===clearTimeout)return clearTimeout(e);if((n===i||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(e);try{n(e)}catch(t){try{return n.call(null,e)}catch(t){return n.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function h(){}r.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];l.push(new p(e,t)),1!==l.length||c||a(f)},p.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={},r.on=h,r.addListener=h,r.once=h,r.off=h,r.removeListener=h,r.removeAllListeners=h,r.emit=h,r.prependListener=h,r.prependOnceListener=h,r.listeners=function(e){return[]},r.binding=function(e){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(e){throw new Error("process.chdir is not supported")},r.umask=function(){return 0}},218:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var r=i(n(363)),o=i(n(12));function i(e){return e&&e.__esModule?e:{default:e}}function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function d(e,t){return!t||"object"!==a(t)&&"function"!=typeof t?p(e):t}function f(e){return f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},f(e)}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function h(e,t){return h=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},h(e,t)}function m(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var x=function(e){function t(){var e,n;c(this,t);for(var i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];return m(p(n=d(this,(e=f(t)).call.apply(e,[this].concat(a)))),"onClick",(function(e){var t=n.props,i=t.text,a=t.onCopy,s=t.children,l=t.options,c=r.default.Children.only(s),u=(0,o.default)(i,l);a&&a(i,u),c&&c.props&&"function"==typeof c.props.onClick&&c.props.onClick(e)})),n}var n,i,a;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&h(e,t)}(t,e),n=t,i=[{key:"render",value:function(){var e=this.props,t=(e.text,e.onCopy,e.options,e.children),n=l(e,["text","onCopy","options","children"]),o=r.default.Children.only(t);return r.default.cloneElement(o,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?s(n,!0).forEach((function(t){m(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):s(n).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({},n,{onClick:this.onClick}))}}],i&&u(n.prototype,i),a&&u(n,a),t}(r.default.PureComponent);t.CopyToClipboard=x,m(x,"defaultProps",{onCopy:void 0,options:void 0})},306:(e,t,n)=>{"use strict";var r=n(218).CopyToClipboard;r.CopyToClipboard=r,e.exports=r},426:(e,t,n)=>{"use strict";n(525);var r=n(363),o=60103;if(t.Fragment=60107,"function"==typeof Symbol&&Symbol.for){var i=Symbol.for;o=i("react.element"),t.Fragment=i("react.fragment")}var a=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s=Object.prototype.hasOwnProperty,l={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var r,i={},c=null,u=null;for(r in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)s.call(t,r)&&!l.hasOwnProperty(r)&&(i[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===i[r]&&(i[r]=t[r]);return{$$typeof:o,type:e,key:c,ref:u,props:i,_owner:a.current}}t.jsx=c,t.jsxs=c},246:(e,t,n)=>{"use strict";e.exports=n(426)},248:e=>{var t=function(e){"use strict";var t,n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,n){return e[t]=n}}function c(e,t,n,r){var o=t&&t.prototype instanceof x?t:x,i=Object.create(o.prototype),a=new _(r||[]);return i._invoke=function(e,t,n){var r=d;return function(o,i){if(r===p)throw new Error("Generator is already running");if(r===h){if("throw"===o)throw i;return A()}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=S(a,n);if(s){if(s===m)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===d)throw r=h,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=p;var l=u(e,t,n);if("normal"===l.type){if(r=n.done?h:f,l.arg===m)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r=h,n.method="throw",n.arg=l.arg)}}}(e,n,a),i}function u(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=c;var d="suspendedStart",f="suspendedYield",p="executing",h="completed",m={};function x(){}function y(){}function v(){}var g={};l(g,i,(function(){return this}));var b=Object.getPrototypeOf,w=b&&b(b(N([])));w&&w!==n&&r.call(w,i)&&(g=w);var j=v.prototype=x.prototype=Object.create(g);function k(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function n(o,i,a,s){var l=u(e[o],e,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==typeof d&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){n("next",e,a,s)}),(function(e){n("throw",e,a,s)})):t.resolve(d).then((function(e){c.value=e,a(c)}),(function(e){return n("throw",e,a,s)}))}s(l.arg)}var o;this._invoke=function(e,r){function i(){return new t((function(t,o){n(e,r,t,o)}))}return o=o?o.then(i,i):i()}}function S(e,n){var r=e.iterator[n.method];if(r===t){if(n.delegate=null,"throw"===n.method){if(e.iterator.return&&(n.method="return",n.arg=t,S(e,n),"throw"===n.method))return m;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return m}var o=u(r,e.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,m;var i=o.arg;return i?i.done?(n[e.resultName]=i.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,m):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,m)}function O(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function E(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function _(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(O,this),this.reset(!0)}function N(e){if(e){var n=e[i];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,a=function n(){for(;++o<e.length;)if(r.call(e,o))return n.value=e[o],n.done=!1,n;return n.value=t,n.done=!0,n};return a.next=a}}return{next:A}}function A(){return{value:t,done:!0}}return y.prototype=v,l(j,"constructor",v),l(v,"constructor",y),y.displayName=l(v,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===y||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,l(e,s,"GeneratorFunction")),e.prototype=Object.create(j),e},e.awrap=function(e){return{__await:e}},k(C.prototype),l(C.prototype,a,(function(){return this})),e.AsyncIterator=C,e.async=function(t,n,r,o,i){void 0===i&&(i=Promise);var a=new C(c(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},k(j),l(j,s,"Generator"),l(j,i,(function(){return this})),l(j,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},e.values=N,_.prototype={constructor:_,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(E),!e)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=t)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var n=this;function o(r,o){return s.type="throw",s.arg=e,n.next=r,o&&(n.method="next",n.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],s=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var l=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(l&&c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(l){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,m):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),m},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),E(n),m}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;E(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:N(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),m}},e}(e.exports);try{regeneratorRuntime=t}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=t:Function("r","regeneratorRuntime = r")(t)}},185:e=>{e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r<e.rangeCount;r++)n.push(e.getRangeAt(r));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null}return e.removeAllRanges(),function(){"Caret"===e.type&&e.removeAllRanges(),e.rangeCount||n.forEach((function(t){e.addRange(t)})),t&&t.focus()}}},363:e=>{"use strict";e.exports=React}},n={};function r(e){var o=n[e];if(void 0!==o)return o.exports;var i=n[e]={exports:{}};return t[e](i,i.exports,r),i.exports}r.m=t,e=[],r.O=(t,n,o,i)=>{if(!n){var a=1/0;for(u=0;u<e.length;u++){for(var[n,o,i]=e[u],s=!0,l=0;l<n.length;l++)(!1&i||a>=i)&&Object.keys(r.O).every((e=>r.O[e](n[l])))?n.splice(l--,1):(s=!1,i<a&&(a=i));if(s){e.splice(u--,1);var c=o();void 0!==c&&(t=c)}}return t}i=i||0;for(var u=e.length;u>0&&e[u-1][2]>i;u--)e[u]=e[u-1];e[u]=[n,o,i]},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),(()=>{var e={245:0,506:0,551:0};r.O.j=t=>0===e[t];var t=(t,n)=>{var o,i,[a,s,l]=n,c=0;if(a.some((t=>0!==e[t]))){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(l)var u=l(r)}for(t&&t(n);c<a.length;c++)i=a[c],r.o(e,i)&&e[i]&&e[i][0](),e[a[c]]=0;return r.O(u)},n=self.webpackChunk=self.webpackChunk||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),r.O(void 0,[506,551],(()=>r(147))),r.O(void 0,[506,551],(()=>r(716)));var o=r.O(void 0,[506,551],(()=>r(965)));o=r.O(o)})();
1
  /*! For license information please see extendify.js.LICENSE.txt */
2
+ (()=>{var e,t={135:(e,t,n)=>{e.exports=n(248)},206:(e,t,n)=>{e.exports=n(57)},387:(e,t,n)=>{"use strict";var r=n(485),o=n(570),i=n(940),a=n(581),s=n(574),l=n(845),c=n(338),u=n(524),d=n(141),f=n(132);e.exports=function(e){return new Promise((function(t,n){var p,h=e.data,m=e.headers,x=e.responseType;function y(){e.cancelToken&&e.cancelToken.unsubscribe(p),e.signal&&e.signal.removeEventListener("abort",p)}r.isFormData(h)&&delete m["Content-Type"];var v=new XMLHttpRequest;if(e.auth){var g=e.auth.username||"",b=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";m.Authorization="Basic "+btoa(g+":"+b)}var w=s(e.baseURL,e.url);function j(){if(v){var r="getAllResponseHeaders"in v?l(v.getAllResponseHeaders()):null,i={data:x&&"text"!==x&&"json"!==x?v.response:v.responseText,status:v.status,statusText:v.statusText,headers:r,config:e,request:v};o((function(e){t(e),y()}),(function(e){n(e),y()}),i),v=null}}if(v.open(e.method.toUpperCase(),a(w,e.params,e.paramsSerializer),!0),v.timeout=e.timeout,"onloadend"in v?v.onloadend=j:v.onreadystatechange=function(){v&&4===v.readyState&&(0!==v.status||v.responseURL&&0===v.responseURL.indexOf("file:"))&&setTimeout(j)},v.onabort=function(){v&&(n(u("Request aborted",e,"ECONNABORTED",v)),v=null)},v.onerror=function(){n(u("Network Error",e,null,v)),v=null},v.ontimeout=function(){var t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",r=e.transitional||d.transitional;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(u(t,e,r.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",v)),v=null},r.isStandardBrowserEnv()){var k=(e.withCredentials||c(w))&&e.xsrfCookieName?i.read(e.xsrfCookieName):void 0;k&&(m[e.xsrfHeaderName]=k)}"setRequestHeader"in v&&r.forEach(m,(function(e,t){void 0===h&&"content-type"===t.toLowerCase()?delete m[t]:v.setRequestHeader(t,e)})),r.isUndefined(e.withCredentials)||(v.withCredentials=!!e.withCredentials),x&&"json"!==x&&(v.responseType=e.responseType),"function"==typeof e.onDownloadProgress&&v.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&v.upload&&v.upload.addEventListener("progress",e.onUploadProgress),(e.cancelToken||e.signal)&&(p=function(e){v&&(n(!e||e&&e.type?new f("canceled"):e),v.abort(),v=null)},e.cancelToken&&e.cancelToken.subscribe(p),e.signal&&(e.signal.aborted?p():e.signal.addEventListener("abort",p))),h||(h=null),v.send(h)}))}},57:(e,t,n)=>{"use strict";var r=n(485),o=n(875),i=n(29),a=n(941);var s=function e(t){var n=new i(t),s=o(i.prototype.request,n);return r.extend(s,i.prototype,n),r.extend(s,n),s.create=function(n){return e(a(t,n))},s}(n(141));s.Axios=i,s.Cancel=n(132),s.CancelToken=n(603),s.isCancel=n(475),s.VERSION=n(345).version,s.all=function(e){return Promise.all(e)},s.spread=n(739),s.isAxiosError=n(835),e.exports=s,e.exports.default=s},132: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},603:(e,t,n)=>{"use strict";var r=n(132);function o(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var n=this;this.promise.then((function(e){if(n._listeners){var t,r=n._listeners.length;for(t=0;t<r;t++)n._listeners[t](e);n._listeners=null}})),this.promise.then=function(e){var t,r=new Promise((function(e){n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e){n.reason||(n.reason=new r(e),t(n.reason))}))}o.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},o.prototype.subscribe=function(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]},o.prototype.unsubscribe=function(e){if(this._listeners){var t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}},o.source=function(){var e;return{token:new o((function(t){e=t})),cancel:e}},e.exports=o},475:e=>{"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},29:(e,t,n)=>{"use strict";var r=n(485),o=n(581),i=n(96),a=n(9),s=n(941),l=n(144),c=l.validators;function u(e){this.defaults=e,this.interceptors={request:new i,response:new i}}u.prototype.request=function(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},(t=s(this.defaults,t)).method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var n=t.transitional;void 0!==n&&l.assertOptions(n,{silentJSONParsing:c.transitional(c.boolean),forcedJSONParsing:c.transitional(c.boolean),clarifyTimeoutError:c.transitional(c.boolean)},!1);var r=[],o=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(o=o&&e.synchronous,r.unshift(e.fulfilled,e.rejected))}));var i,u=[];if(this.interceptors.response.forEach((function(e){u.push(e.fulfilled,e.rejected)})),!o){var d=[a,void 0];for(Array.prototype.unshift.apply(d,r),d=d.concat(u),i=Promise.resolve(t);d.length;)i=i.then(d.shift(),d.shift());return i}for(var f=t;r.length;){var p=r.shift(),h=r.shift();try{f=p(f)}catch(e){h(e);break}}try{i=a(f)}catch(e){return Promise.reject(e)}for(;u.length;)i=i.then(u.shift(),u.shift());return i},u.prototype.getUri=function(e){return e=s(this.defaults,e),o(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function(e){u.prototype[e]=function(t,n){return this.request(s(n||{},{method:e,url:t,data:(n||{}).data}))}})),r.forEach(["post","put","patch"],(function(e){u.prototype[e]=function(t,n,r){return this.request(s(r||{},{method:e,url:t,data:n}))}})),e.exports=u},96:(e,t,n)=>{"use strict";var r=n(485);function o(){this.handlers=[]}o.prototype.use=function(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1},o.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},o.prototype.forEach=function(e){r.forEach(this.handlers,(function(t){null!==t&&e(t)}))},e.exports=o},574:(e,t,n)=>{"use strict";var r=n(642),o=n(288);e.exports=function(e,t){return e&&!r(t)?o(e,t):t}},524:(e,t,n)=>{"use strict";var r=n(953);e.exports=function(e,t,n,o,i){var a=new Error(e);return r(a,t,n,o,i)}},9:(e,t,n)=>{"use strict";var r=n(485),o=n(212),i=n(475),a=n(141),s=n(132);function l(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new s("canceled")}e.exports=function(e){return l(e),e.headers=e.headers||{},e.data=o.call(e,e.data,e.headers,e.transformRequest),e.headers=r.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]})),(e.adapter||a.adapter)(e).then((function(t){return l(e),t.data=o.call(e,t.data,t.headers,e.transformResponse),t}),(function(t){return i(t)||(l(e),t&&t.response&&(t.response.data=o.call(e,t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},953:e=>{"use strict";e.exports=function(e,t,n,r,o){return e.config=t,n&&(e.code=n),e.request=r,e.response=o,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,status:this.response&&this.response.status?this.response.status:null}},e}},941:(e,t,n)=>{"use strict";var r=n(485);e.exports=function(e,t){t=t||{};var n={};function o(e,t){return r.isPlainObject(e)&&r.isPlainObject(t)?r.merge(e,t):r.isPlainObject(t)?r.merge({},t):r.isArray(t)?t.slice():t}function i(n){return r.isUndefined(t[n])?r.isUndefined(e[n])?void 0:o(void 0,e[n]):o(e[n],t[n])}function a(e){if(!r.isUndefined(t[e]))return o(void 0,t[e])}function s(n){return r.isUndefined(t[n])?r.isUndefined(e[n])?void 0:o(void 0,e[n]):o(void 0,t[n])}function l(n){return n in t?o(e[n],t[n]):n in e?o(void 0,e[n]):void 0}var c={url:a,method:a,data:a,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:l};return r.forEach(Object.keys(e).concat(Object.keys(t)),(function(e){var t=c[e]||i,o=t(e);r.isUndefined(o)&&t!==l||(n[e]=o)})),n}},570:(e,t,n)=>{"use strict";var r=n(524);e.exports=function(e,t,n){var o=n.config.validateStatus;n.status&&o&&!o(n.status)?t(r("Request failed with status code "+n.status,n.config,null,n.request,n)):e(n)}},212:(e,t,n)=>{"use strict";var r=n(485),o=n(141);e.exports=function(e,t,n){var i=this||o;return r.forEach(n,(function(n){e=n.call(i,e,t)})),e}},141:(e,t,n)=>{"use strict";var r=n(61),o=n(485),i=n(446),a=n(953),s={"Content-Type":"application/x-www-form-urlencoded"};function l(e,t){!o.isUndefined(e)&&o.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var c,u={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:(("undefined"!=typeof XMLHttpRequest||void 0!==r&&"[object process]"===Object.prototype.toString.call(r))&&(c=n(387)),c),transformRequest:[function(e,t){return i(t,"Accept"),i(t,"Content-Type"),o.isFormData(e)||o.isArrayBuffer(e)||o.isBuffer(e)||o.isStream(e)||o.isFile(e)||o.isBlob(e)?e:o.isArrayBufferView(e)?e.buffer:o.isURLSearchParams(e)?(l(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):o.isObject(e)||t&&"application/json"===t["Content-Type"]?(l(t,"application/json"),function(e,t,n){if(o.isString(e))try{return(t||JSON.parse)(e),o.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){var t=this.transitional||u.transitional,n=t&&t.silentJSONParsing,r=t&&t.forcedJSONParsing,i=!n&&"json"===this.responseType;if(i||r&&o.isString(e)&&e.length)try{return JSON.parse(e)}catch(e){if(i){if("SyntaxError"===e.name)throw a(e,this,"E_JSON_PARSE");throw 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, */*"}}};o.forEach(["delete","get","head"],(function(e){u.headers[e]={}})),o.forEach(["post","put","patch"],(function(e){u.headers[e]=o.merge(s)})),e.exports=u},345:e=>{e.exports={version:"0.26.0"}},875:e=>{"use strict";e.exports=function(e,t){return function(){for(var n=new Array(arguments.length),r=0;r<n.length;r++)n[r]=arguments[r];return e.apply(t,n)}}},581:(e,t,n)=>{"use strict";var r=n(485);function o(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,n){if(!t)return e;var i;if(n)i=n(t);else if(r.isURLSearchParams(t))i=t.toString();else{var a=[];r.forEach(t,(function(e,t){null!=e&&(r.isArray(e)?t+="[]":e=[e],r.forEach(e,(function(e){r.isDate(e)?e=e.toISOString():r.isObject(e)&&(e=JSON.stringify(e)),a.push(o(t)+"="+o(e))})))})),i=a.join("&")}if(i){var s=e.indexOf("#");-1!==s&&(e=e.slice(0,s)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}},288:e=>{"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},940:(e,t,n)=>{"use strict";var r=n(485);e.exports=r.isStandardBrowserEnv()?{write:function(e,t,n,o,i,a){var s=[];s.push(e+"="+encodeURIComponent(t)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(o)&&s.push("path="+o),r.isString(i)&&s.push("domain="+i),!0===a&&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(){}}},642:e=>{"use strict";e.exports=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}},835:(e,t,n)=>{"use strict";var r=n(485);e.exports=function(e){return r.isObject(e)&&!0===e.isAxiosError}},338:(e,t,n)=>{"use strict";var r=n(485);e.exports=r.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function o(e){var r=e;return t&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return e=o(window.location.href),function(t){var n=r.isString(t)?o(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return!0}},446:(e,t,n)=>{"use strict";var r=n(485);e.exports=function(e,t){r.forEach(e,(function(n,r){r!==t&&r.toUpperCase()===t.toUpperCase()&&(e[t]=n,delete e[r])}))}},845:(e,t,n)=>{"use strict";var r=n(485),o=["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,n,i,a={};return e?(r.forEach(e.split("\n"),(function(e){if(i=e.indexOf(":"),t=r.trim(e.substr(0,i)).toLowerCase(),n=r.trim(e.substr(i+1)),t){if(a[t]&&o.indexOf(t)>=0)return;a[t]="set-cookie"===t?(a[t]?a[t]:[]).concat([n]):a[t]?a[t]+", "+n:n}})),a):a}},739:e=>{"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},144:(e,t,n)=>{"use strict";var r=n(345).version,o={};["object","boolean","number","function","string","symbol"].forEach((function(e,t){o[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));var i={};o.transitional=function(e,t,n){function o(e,t){return"[Axios v"+r+"] Transitional option '"+e+"'"+t+(n?". "+n:"")}return function(n,r,a){if(!1===e)throw new Error(o(r," has been removed"+(t?" in "+t:"")));return t&&!i[r]&&(i[r]=!0,console.warn(o(r," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,r,a)}},e.exports={assertOptions:function(e,t,n){if("object"!=typeof e)throw new TypeError("options must be an object");for(var r=Object.keys(e),o=r.length;o-- >0;){var i=r[o],a=t[i];if(a){var s=e[i],l=void 0===s||a(s,i,e);if(!0!==l)throw new TypeError("option "+i+" must be "+l)}else if(!0!==n)throw Error("Unknown option "+i)}},validators:o}},485:(e,t,n)=>{"use strict";var r=n(875),o=Object.prototype.toString;function i(e){return Array.isArray(e)}function a(e){return void 0===e}function s(e){return"[object ArrayBuffer]"===o.call(e)}function l(e){return null!==e&&"object"==typeof e}function c(e){if("[object Object]"!==o.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function u(e){return"[object Function]"===o.call(e)}function d(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),i(e))for(var n=0,r=e.length;n<r;n++)t.call(null,e[n],n,e);else for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.call(null,e[o],o,e)}e.exports={isArray:i,isArrayBuffer:s,isBuffer:function(e){return null!==e&&!a(e)&&null!==e.constructor&&!a(e.constructor)&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)},isFormData:function(e){return"[object FormData]"===o.call(e)},isArrayBufferView:function(e){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&s(e.buffer)},isString:function(e){return"string"==typeof e},isNumber:function(e){return"number"==typeof e},isObject:l,isPlainObject:c,isUndefined:a,isDate:function(e){return"[object Date]"===o.call(e)},isFile:function(e){return"[object File]"===o.call(e)},isBlob:function(e){return"[object Blob]"===o.call(e)},isFunction:u,isStream:function(e){return l(e)&&u(e.pipe)},isURLSearchParams:function(e){return"[object URLSearchParams]"===o.call(e)},isStandardBrowserEnv:function(){return("undefined"==typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!=typeof window&&"undefined"!=typeof document)},forEach:d,merge:function e(){var t={};function n(n,r){c(t[r])&&c(n)?t[r]=e(t[r],n):c(n)?t[r]=e({},n):i(n)?t[r]=n.slice():t[r]=n}for(var r=0,o=arguments.length;r<o;r++)d(arguments[r],n);return t},extend:function(e,t,n){return d(t,(function(t,o){e[o]=n&&"function"==typeof t?r(t,n):t})),e},trim:function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")},stripBOM:function(e){return 65279===e.charCodeAt(0)&&(e=e.slice(1)),e}}},364:(e,t,n)=>{"use strict";const r=wp.blocks,o=wp.element;var i=n(363),a=n.n(i);function s(e){let t;const n=new Set,r=(e,r)=>{const o="function"==typeof e?e(t):e;if(o!==t){const e=t;t=r?o:Object.assign({},t,o),n.forEach((n=>n(t,e)))}},o=()=>t,i={setState:r,getState:o,subscribe:(e,r,i)=>r||i?((e,r=o,i=Object.is)=>{console.warn("[DEPRECATED] Please use `subscribeWithSelector` middleware");let a=r(t);function s(){const n=r(t);if(!i(a,n)){const t=a;e(a=n,t)}}return n.add(s),()=>n.delete(s)})(e,r,i):(n.add(e),()=>n.delete(e)),destroy:()=>n.clear()};return t=e(r,o,i),i}const l="undefined"==typeof window||!window.navigator||/ServerSideRendering|^Deno\//.test(window.navigator.userAgent)?i.useEffect:i.useLayoutEffect;function c(e){const t="function"==typeof e?s(e):e,n=(e=t.getState,n=Object.is)=>{const[,r]=(0,i.useReducer)((e=>e+1),0),o=t.getState(),a=(0,i.useRef)(o),s=(0,i.useRef)(e),c=(0,i.useRef)(n),u=(0,i.useRef)(!1),d=(0,i.useRef)();let f;void 0===d.current&&(d.current=e(o));let p=!1;(a.current!==o||s.current!==e||c.current!==n||u.current)&&(f=e(o),p=!n(d.current,f)),l((()=>{p&&(d.current=f),a.current=o,s.current=e,c.current=n,u.current=!1}));const h=(0,i.useRef)(o);l((()=>{const e=()=>{try{const e=t.getState(),n=s.current(e);c.current(d.current,n)||(a.current=e,d.current=n,r())}catch(e){u.current=!0,r()}},n=t.subscribe(e);return t.getState()!==h.current&&e(),n}),[]);const m=p?f:d.current;return(0,i.useDebugValue)(m),m};return Object.assign(n,t),n[Symbol.iterator]=function(){console.warn("[useStore, api] = create() is deprecated and will be removed in v4");const e=[n,t];return{next(){const t=e.length<=0;return{value:e.shift(),done:t}}}},n}Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;const u=e=>(t,n,r)=>{const o=r.subscribe;r.subscribe=(e,t,n)=>{let i=e;if(t){const o=(null==n?void 0:n.equalityFn)||Object.is;let a=e(r.getState());i=n=>{const r=e(n);if(!o(a,r)){const e=a;t(a=r,e)}},(null==n?void 0:n.fireImmediately)&&t(a,a)}return o(i)};return e(t,n,r)};var d=Object.defineProperty,f=Object.getOwnPropertySymbols,p=Object.prototype.hasOwnProperty,h=Object.prototype.propertyIsEnumerable,m=(e,t,n)=>t in e?d(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,x=(e,t)=>{for(var n in t||(t={}))p.call(t,n)&&m(e,n,t[n]);if(f)for(var n of f(t))h.call(t,n)&&m(e,n,t[n]);return e};const y=e=>t=>{try{const n=e(t);return n instanceof Promise?n:{then:e=>y(e)(n),catch(e){return this}}}catch(e){return{then(e){return this},catch:t=>y(t)(e)}}},v=(e,t)=>(n,r,o)=>{let i=x({getStorage:()=>localStorage,serialize:JSON.stringify,deserialize:JSON.parse,partialize:e=>e,version:0,merge:(e,t)=>x(x({},t),e)},t);(i.blacklist||i.whitelist)&&console.warn(`The ${i.blacklist?"blacklist":"whitelist"} option is deprecated and will be removed in the next version. Please use the 'partialize' option instead.`);let a=!1;const s=new Set,l=new Set;let c;try{c=i.getStorage()}catch(e){}if(!c)return e(((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${i.name}', the given storage is currently unavailable.`),n(...e)}),r,o);c.removeItem||console.warn(`[zustand persist middleware] The given storage for item '${i.name}' does not contain a 'removeItem' method, which will be required in v4.`);const u=y(i.serialize),d=()=>{const e=i.partialize(x({},r()));let t;i.whitelist&&Object.keys(e).forEach((t=>{var n;!(null==(n=i.whitelist)?void 0:n.includes(t))&&delete e[t]})),i.blacklist&&i.blacklist.forEach((t=>delete e[t]));const n=u({state:e,version:i.version}).then((e=>c.setItem(i.name,e))).catch((e=>{t=e}));if(t)throw t;return n},f=o.setState;o.setState=(e,t)=>{f(e,t),d()};const p=e(((...e)=>{n(...e),d()}),r,o);let h;const m=()=>{var e;if(!c)return;a=!1,s.forEach((e=>e(r())));const t=(null==(e=i.onRehydrateStorage)?void 0:e.call(i,r()))||void 0;return y(c.getItem.bind(c))(i.name).then((e=>{if(e)return i.deserialize(e)})).then((e=>{if(e){if("number"!=typeof e.version||e.version===i.version)return e.state;if(i.migrate)return i.migrate(e.state,e.version);console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}})).then((e=>(h=i.merge(e,p),n(h,!0),d()))).then((()=>{null==t||t(h,void 0),a=!0,l.forEach((e=>e(h)))})).catch((e=>{null==t||t(void 0,e)}))};return o.persist={setOptions:e=>{i=x(x({},i),e),e.getStorage&&(c=e.getStorage())},clearStorage:()=>{var e;null==(e=null==c?void 0:c.removeItem)||e.call(c,i.name)},rehydrate:()=>m(),hasHydrated:()=>a,onHydrate:e=>(s.add(e),()=>{s.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},m(),h||p};function g(e){return function(e){if(Array.isArray(e))return b(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(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 b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var w=c(u(v((function(e,t){return{open:!1,ready:!1,metaData:{},currentTaxonomies:{},currentType:"pattern",modals:[],pushModal:function(n){return e({modals:[n].concat(g(t().modals))})},popModal:function(){return e({modals:t().modals.slice(1)})},removeAllModals:function(){return e({modals:[]})},updateCurrentTaxonomies:function(t){return e({currentTaxonomies:Object.assign({},t)})},updateCurrentType:function(t){return e({currentType:t})},setOpen:function(t){return e({open:t})},setReady:function(t){return e({ready:t})}}}),{name:"extendify-global-state",partialize:function(e){return delete e.modals,delete e.ready,e}}))),j=n(135),k=n.n(j),S=n(206),C=n.n(S);const _=lodash;function O(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var E,A=function(){return(e=k().mark((function e(){var t;return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,fetch("".concat(window.extendifyData.root,"/user"),{method:"GET",headers:{"X-WP-Nonce":window.extendifyData.nonce,"X-Requested-With":"XMLHttpRequest","X-Extendify":!0}});case 2:return t=e.sent,e.next=5,t.json();case 5:return e.abrupt("return",e.sent);case 6:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){O(i,r,o,a,s,"next",e)}function s(e){O(i,r,o,a,s,"throw",e)}a(void 0)}))})();var e},N=function(e,t){var n=new FormData;return n.append("email",e),n.append("key",t),X.post("login",n,{headers:{"Content-Type":"multipart/form-data"}})},P=function(e){var t=new FormData;return t.append("data",JSON.stringify(e)),X.post("user",t,{headers:{"Content-Type":"multipart/form-data"}})},T=function(){return X.post("clear-user")},I=function(){return X.get("max-free-imports")};function L(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function M(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?L(Object(n),!0).forEach((function(t){z(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):L(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function R(e){return function(e){if(Array.isArray(e))return B(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||F(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 D(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||F(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 F(e,t){if(e){if("string"==typeof e)return B(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?B(e,t):void 0}}function B(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function z(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function U(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function V(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){U(i,r,o,a,s,"next",e)}function s(e){U(i,r,o,a,s,"throw",e)}a(void 0)}))}}var H,W,q,$={getItem:(q=V(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,A();case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),function(){return q.apply(this,arguments)}),setItem:(W=V(k().mark((function e(t,n){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,P(n);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),function(e,t){return W.apply(this,arguments)}),removeItem:(H=V(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,T();case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),function(){return H.apply(this,arguments)})},G=function(){var e,t,n;return null===window.extendifyData.sitesettings||(null===(e=window.extendifyData)||void 0===e||null===(t=e.sitesettings)||void 0===t||null===(n=t.state)||void 0===n?void 0:n.enabled)},J=(z(E={},"notice-position","0001"),z(E,"main-button-text","0002"),z(E,"default-or-alt-sitetype","0004"),z(E,"import-counter-type","0005"),E),K=c(v((function(e,t){return{_hasHydrated:!1,firstLoadedOn:(new Date).toISOString(),email:"",apiKey:"",uuid:"",sdkPartner:"",noticesDismissedAt:{},modalNoticesDismissedAt:{},imports:0,runningImports:0,allowedImports:0,freebieImports:0,entryPoint:"not-set",enabled:G(),canInstallPlugins:!1,canActivatePlugins:!1,participatingTestsGroups:{},preferredOptions:{taxonomies:{},type:"",search:""},preferredOptionsHistory:{siteType:[]},incrementImports:function(){var n=Number(t().freebieImports)>0?Number(t().freebieImports)-1:Number(t().freebieImports),r=Number(t().runningImports)+ +(n<1);e({imports:Number(t().imports)+1,runningImports:r,freebieImports:n})},giveFreebieImports:function(n){e({freebieImports:t().freebieImports+n})},totalAvailableImports:function(){return Number(t().allowedImports)+Number(t().freebieImports)},testGroup:function(n,r){if(Object.keys(J).includes(n)){var o=t().participatingTestsGroups;return o[n]||e({participatingTestsGroups:Object.assign({},o,z({},n,(0,_.sample)(r)))}),(o=t().participatingTestsGroups)[n]}},activeTestGroups:function(){return Object.entries(t().participatingTestsGroups).filter((function(e){var t=D(e,1)[0];return Object.keys(J).includes(t)})).reduce((function(e,t){var n=D(t,2),r=n[0],o=n[1];return e[r]=o,e}),{})},activeTestGroupsUtmValue:function(){var e=Object.entries(t().activeTestGroups()).map((function(e){var t=D(e,2),n=t[0],r=t[1];return"".concat(J[n],"=").concat(r)}),"").join(":");return encodeURIComponent(e)},hasAvailableImports:function(){return!!t().apiKey||Number(t().runningImports)<Number(t().totalAvailableImports())},remainingImports:function(){var e=Number(t().totalAvailableImports())-Number(t().runningImports);return t().allowedImports?e>0?e:0:null},updatePreferredSiteType:function(n){var r,o;if(t().updatePreferredOption("siteType",n),null!=n&&n.slug&&"unknown"!==n.slug){var i=null!==(r=null===(o=t().preferredOptionsHistory)||void 0===o?void 0:o.siteType)&&void 0!==r?r:[];if(!i.find((function(e){return e.slug===n.slug}))){var a=[n].concat(R(i));e({preferredOptionsHistory:Object.assign({},t().preferredOptionsHistory,{siteType:a.slice(0,3)})})}}},updatePreferredOption:function(n,r){var o,i;Object.prototype.hasOwnProperty.call(t().preferredOptions,n)||(r=Object.assign({},null!==(o=null===(i=t().preferredOptions)||void 0===i?void 0:i.taxonomies)&&void 0!==o?o:{},z({},n,r)),n="taxonomies");e({preferredOptions:M({},Object.assign({},t().preferredOptions,z({},n,r)))})},markNoticeSeen:function(n,r){e(z({},"".concat(r,"DismissedAt"),M(M({},t()["".concat(r,"DismissedAt")]),{},z({},n,(new Date).toISOString()))))}}}),{name:"extendify-user",getStorage:function(){return $},onRehydrateStorage:function(){return function(){K.setState({_hasHydrated:!0})}},partialize:function(e){return delete e._hasHydrated,e}})),X=C().create({baseURL:window.extendifyData.root,headers:{"X-WP-Nonce":window.extendifyData.nonce,"X-Requested-With":"XMLHttpRequest","X-Extendify":!0}});function Z(e){return Object.prototype.hasOwnProperty.call(e,"data")?e.data:e}function Y(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}X.interceptors.response.use((function(e){return function(e){return Object.prototype.hasOwnProperty.call(e,"soft_error")&&window.dispatchEvent(new CustomEvent("extendify::softerror-encountered",{detail:e.soft_error,bubbles:!0})),e}(Z(e))}),(function(e){return function(e){if(e.response)return console.error(e.response),Promise.reject(Z(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.headers["X-Extendify-Local-Mode"]=window.location.search.indexOf("LOCALMODE")>-1,e}(function(e){var t=K.getState(),n=t.apiKey?"unlimited":t.remainingImports();return e.data&&(e.data.remaining_imports=n,e.data.entry_point=t.entryPoint,e.data.total_imports=t.imports,e.data.participating_tests=t.activeTestGroups()),e}(e))}),(function(e){return e}));var Q=function(){return(e=k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,X.get("taxonomies");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Y(i,r,o,a,s,"next",e)}function s(e){Y(i,r,o,a,s,"throw",e)}a(void 0)}))})();var e};function ee(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var te=c(v((function(e,t){return{taxonomies:{},setTaxonomies:function(t){return e({taxonomies:t})},fetchTaxonomies:(n=k().mark((function e(){var n,r;return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Q();case 2:if(r=e.sent,r=Object.keys(r).reduce((function(e,t){return e[t]=r[t],e}),{}),null!==(n=Object.keys(r))&&void 0!==n&&n.length){e.next=6;break}return e.abrupt("return");case 6:t().setTaxonomies(r);case 7:case"end":return e.stop()}}),e)})),r=function(){var e=this,t=arguments;return new Promise((function(r,o){var i=n.apply(e,t);function a(e){ee(i,r,o,a,s,"next",e)}function s(e){ee(i,r,o,a,s,"throw",e)}a(void 0)}))},function(){return r.apply(this,arguments)})};var n,r}),{name:"extendify-taxonomies"}));function ne(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function re(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ne(Object(n),!0).forEach((function(t){oe(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ne(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function oe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ie(e){return function(e){if(Array.isArray(e))return ae(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return ae(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ae(e,t)}(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 ae(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var se,le,ce=c(u((function(e,t){return{templates:[],skipNextFetch:!1,fetchToken:null,taxonomyDefaultState:{},nextPage:"",searchParams:{taxonomies:{},type:"pattern"},initTemplateData:function(){e({activeTemplate:{}}),t().setupDefaultTaxonomies(),t().updateType(w.getState().currentType)},appendTemplates:function(n){return e({templates:ie(new Map([].concat(ie(t().templates),ie(n)).map((function(e){return[e.id,e]}))).values())})},setupDefaultTaxonomies:function(){var n,r,o,i,a=te.getState().taxonomies,s=Object.entries(a).reduce((function(e,t){return e[t[0]]=function(e){return"siteType"===e?{slug:"",title:"Unknown"}:{slug:"",title:"Featured"}}(t[0]),e}),{}),l={},c=null!==(n=null===(r=K.getState().preferredOptions)||void 0===r?void 0:r.taxonomies)&&void 0!==n?n:{};c.tax_categories&&(c=t().getLegacySiteType(c,a)),s=Object.assign({},s,c,null!==(o=null===(i=w.getState())||void 0===i?void 0:i.currentTaxonomies)&&void 0!==o?o:{}),l.taxonomies=Object.assign({},s),e({taxonomyDefaultState:s,searchParams:re({},Object.assign(t().searchParams,l))})},updateTaxonomies:function(e){var n,r,o={};(o.taxonomies=Object.assign({},t().searchParams.taxonomies,e),null!=o&&null!==(n=o.taxonomies)&&void 0!==n&&n.siteType)&&K.getState().updatePreferredOption("siteType",null==o||null===(r=o.taxonomies)||void 0===r?void 0:r.siteType);w.getState().updateCurrentTaxonomies(null==o?void 0:o.taxonomies),t().updateSearchParams(o)},updateType:function(e){w.getState().updateCurrentType(e),t().updateSearchParams({type:e})},updateSearchParams:function(n){null!=n&&n.taxonomies&&!Object.keys(n.taxonomies).length&&(n.taxonomies=t().taxonomyDefaultState);var r=Object.assign({},t().searchParams,n);JSON.stringify(r)!==JSON.stringify(t().searchParams)&&e({templates:[],nextPage:"",searchParams:r})},resetTemplates:function(){return e({templates:[],nextPage:""})},getLegacySiteType:function(e,n){var r=n.siteType.find((function(t){return[t.slug,null==t?void 0:t.title].includes(e.tax_categories)}));return K.getState().updatePreferredSiteType(r),t().updateTaxonomies({siteType:r}),K.getState().updatePreferredOption("tax_categories",null),K.getState().preferredOptions.taxonomies}}}))),ue=function(){return X.get("meta-data")},de=function(e){var t,n,r,o,i,a=null!==(t=null===(n=ce.getState())||void 0===n||null===(r=n.searchParams)||void 0===r?void 0:r.taxonomies)&&void 0!==t?t:[];return X.post("simple-ping",{action:e,categories:a,sdk_partner:null!==(o=null===(i=K.getState())||void 0===i?void 0:i.sdkPartner)&&void 0!==o?o:""})};function fe(){return fe=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},fe.apply(this,arguments)}function pe(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}function he(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function me(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return he(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?he(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0;return function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}function xe(e,t){if(e in t){for(var n=t[e],r=arguments.length,o=new Array(r>2?r-2:0),i=2;i<r;i++)o[i-2]=arguments[i];return"function"==typeof n?n.apply(void 0,o):n}var a=new Error('Tried to handle "'+e+'" but there is no handler defined. Only defined handlers are: '+Object.keys(t).map((function(e){return'"'+e+'"'})).join(", ")+".");throw Error.captureStackTrace&&Error.captureStackTrace(a,xe),a}function ye(e){var t=e.props,n=e.slot,r=e.defaultTag,o=e.features,i=e.visible,a=void 0===i||i,s=e.name;if(a)return ve(t,n,r,s);var l=null!=o?o:se.None;if(l&se.Static){var c=t.static,u=void 0!==c&&c,d=pe(t,["static"]);if(u)return ve(d,n,r,s)}if(l&se.RenderStrategy){var f,p=t.unmount,h=void 0===p||p,m=pe(t,["unmount"]);return xe(h?le.Unmount:le.Hidden,((f={})[le.Unmount]=function(){return null},f[le.Hidden]=function(){return ve(fe({},m,{hidden:!0,style:{display:"none"}}),n,r,s)},f))}return ve(t,n,r,s)}function ve(e,t,n,r){var o;void 0===t&&(t={});var a=be(e,["unmount","static"]),s=a.as,l=void 0===s?n:s,c=a.children,u=a.refName,d=void 0===u?"ref":u,f=pe(a,["as","children","refName"]),p=void 0!==e.ref?((o={})[d]=e.ref,o):{},h="function"==typeof c?c(t):c;if(f.className&&"function"==typeof f.className&&(f.className=f.className(t)),l===i.Fragment&&Object.keys(f).length>0){if(!(0,i.isValidElement)(h)||Array.isArray(h)&&h.length>1)throw new Error(['Passing props on "Fragment"!',"","The current component <"+r+' /> is rendering a "Fragment".',"However we need to passthrough the following props:",Object.keys(f).map((function(e){return" - "+e})).join("\n"),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "Fragment".',"Render a single element as the child so that we can forward the props onto that element."].map((function(e){return" - "+e})).join("\n")].join("\n"));return(0,i.cloneElement)(h,Object.assign({},function(e,t,n){for(var r,o=Object.assign({},e),i=function(){var n,i=r.value;void 0!==e[i]&&void 0!==t[i]&&Object.assign(o,((n={})[i]=function(n){n.defaultPrevented||e[i](n),n.defaultPrevented||t[i](n)},n))},a=me(n);!(r=a()).done;)i();return o}(function(e){var t=Object.assign({},e);for(var n in t)void 0===t[n]&&delete t[n];return t}(be(f,["ref"])),h.props,["onClick"]),p))}return(0,i.createElement)(l,Object.assign({},be(f,["ref"]),l!==i.Fragment&&p),h)}function ge(e){var t;return Object.assign((0,i.forwardRef)(e),{displayName:null!=(t=e.displayName)?t:e.name})}function be(e,t){void 0===t&&(t=[]);for(var n,r=Object.assign({},e),o=me(t);!(n=o()).done;){var i=n.value;i in r&&delete r[i]}return r}!function(e){e[e.None=0]="None",e[e.RenderStrategy=1]="RenderStrategy",e[e.Static=2]="Static"}(se||(se={})),function(e){e[e.Unmount=0]="Unmount",e[e.Hidden=1]="Hidden"}(le||(le={}));var we="undefined"!=typeof window?i.useLayoutEffect:i.useEffect,je={serverHandoffComplete:!1};function ke(){var e=(0,i.useState)(je.serverHandoffComplete),t=e[0],n=e[1];return(0,i.useEffect)((function(){!0!==t&&n(!0)}),[t]),(0,i.useEffect)((function(){!1===je.serverHandoffComplete&&(je.serverHandoffComplete=!0)}),[]),t}var Se=0;function Ce(){return++Se}function _e(){var e=ke(),t=(0,i.useState)(e?Ce:null),n=t[0],r=t[1];return we((function(){null===n&&r(Ce())}),[n]),null!=n?""+n:void 0}function Oe(){var e=(0,i.useRef)(!1);return(0,i.useEffect)((function(){return e.current=!0,function(){e.current=!1}}),[]),e}var Ee,Ae,Ne=(0,i.createContext)(null);function Pe(){return(0,i.useContext)(Ne)}function Te(e){var t=e.value,n=e.children;return a().createElement(Ne.Provider,{value:t},n)}function Ie(){var e=[],t={requestAnimationFrame:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(){var e=requestAnimationFrame.apply(void 0,arguments);t.add((function(){return cancelAnimationFrame(e)}))})),nextFrame:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];t.requestAnimationFrame((function(){t.requestAnimationFrame.apply(t,n)}))},setTimeout:function(e){function t(){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(){var e=setTimeout.apply(void 0,arguments);t.add((function(){return clearTimeout(e)}))})),add:function(t){e.push(t)},dispose:function(){for(var t,n=me(e.splice(0));!(t=n()).done;){var r=t.value;r()}}};return t}function Le(e){for(var t,n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];e&&r.length>0&&(t=e.classList).add.apply(t,r)}function Me(e){for(var t,n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];e&&r.length>0&&(t=e.classList).remove.apply(t,r)}function Re(e,t,n,r,o,i){var a=Ie(),s=void 0!==i?function(e){var t={called:!1};return function(){if(!t.called)return t.called=!0,e.apply(void 0,arguments)}}(i):function(){};return Me.apply(void 0,[e].concat(o)),Le.apply(void 0,[e].concat(t,n)),a.nextFrame((function(){Me.apply(void 0,[e].concat(n)),Le.apply(void 0,[e].concat(r)),a.add(function(e,t){var n=Ie();if(!e)return n.dispose;var r=getComputedStyle(e),o=[r.transitionDuration,r.transitionDelay].map((function(e){var t=e.split(",").filter(Boolean).map((function(e){return e.includes("ms")?parseFloat(e):1e3*parseFloat(e)})).sort((function(e,t){return t-e}))[0];return void 0===t?0:t})),i=o[0],a=o[1];return 0!==i?n.setTimeout((function(){t(Ae.Finished)}),i+a):t(Ae.Finished),n.add((function(){return t(Ae.Cancelled)})),n.dispose}(e,(function(n){return Me.apply(void 0,[e].concat(r,t)),Le.apply(void 0,[e].concat(o)),s(n)})))})),a.add((function(){return Me.apply(void 0,[e].concat(t,n,r,o))})),a.add((function(){return s(Ae.Cancelled)})),a.dispose}function De(e){return void 0===e&&(e=""),(0,i.useMemo)((function(){return e.split(" ").filter((function(e){return e.trim().length>1}))}),[e])}Ne.displayName="OpenClosedContext",function(e){e[e.Open=0]="Open",e[e.Closed=1]="Closed"}(Ee||(Ee={})),function(e){e.Finished="finished",e.Cancelled="cancelled"}(Ae||(Ae={}));var Fe,Be=(0,i.createContext)(null);Be.displayName="TransitionContext",function(e){e.Visible="visible",e.Hidden="hidden"}(Fe||(Fe={}));var ze=(0,i.createContext)(null);function Ue(e){return"children"in e?Ue(e.children):e.current.filter((function(e){return e.state===Fe.Visible})).length>0}function Ve(e){var t=(0,i.useRef)(e),n=(0,i.useRef)([]),r=Oe();(0,i.useEffect)((function(){t.current=e}),[e]);var o=(0,i.useCallback)((function(e,o){var i;void 0===o&&(o=le.Hidden);var a=n.current.findIndex((function(t){return t.id===e}));-1!==a&&(xe(o,((i={})[le.Unmount]=function(){n.current.splice(a,1)},i[le.Hidden]=function(){n.current[a].state=Fe.Hidden},i)),!Ue(n)&&r.current&&(null==t.current||t.current()))}),[t,r,n]),a=(0,i.useCallback)((function(e){var t=n.current.find((function(t){return t.id===e}));return t?t.state!==Fe.Visible&&(t.state=Fe.Visible):n.current.push({id:e,state:Fe.Visible}),function(){return o(e,le.Unmount)}}),[n,o]);return(0,i.useMemo)((function(){return{children:n,register:a,unregister:o}}),[a,o,n])}function He(){}ze.displayName="NestingContext";var We=["beforeEnter","afterEnter","beforeLeave","afterLeave"];function qe(e){for(var t,n={},r=me(We);!(t=r()).done;){var o,i=t.value;n[i]=null!=(o=e[i])?o:He}return n}var $e,Ge=se.RenderStrategy;function Je(e){var t,n=e.beforeEnter,r=e.afterEnter,o=e.beforeLeave,s=e.afterLeave,l=e.enter,c=e.enterFrom,u=e.enterTo,d=e.entered,f=e.leave,p=e.leaveFrom,h=e.leaveTo,m=pe(e,["beforeEnter","afterEnter","beforeLeave","afterLeave","enter","enterFrom","enterTo","entered","leave","leaveFrom","leaveTo"]),x=(0,i.useRef)(null),y=(0,i.useState)(Fe.Visible),v=y[0],g=y[1],b=m.unmount?le.Unmount:le.Hidden,w=function(){var e=(0,i.useContext)(Be);if(null===e)throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");return e}(),j=w.show,k=w.appear,S=w.initial,C=function(){var e=(0,i.useContext)(ze);if(null===e)throw new Error("A <Transition.Child /> is used but it is missing a parent <Transition /> or <Transition.Root />.");return e}(),_=C.register,O=C.unregister,E=_e(),A=(0,i.useRef)(!1),N=Ve((function(){A.current||(g(Fe.Hidden),O(E),F.current.afterLeave())}));we((function(){if(E)return _(E)}),[_,E]),we((function(){var e;b===le.Hidden&&E&&(j&&v!==Fe.Visible?g(Fe.Visible):xe(v,((e={})[Fe.Hidden]=function(){return O(E)},e[Fe.Visible]=function(){return _(E)},e)))}),[v,E,_,O,j,b]);var P=De(l),T=De(c),I=De(u),L=De(d),M=De(f),R=De(p),D=De(h),F=function(e){var t=(0,i.useRef)(qe(e));return(0,i.useEffect)((function(){t.current=qe(e)}),[e]),t}({beforeEnter:n,afterEnter:r,beforeLeave:o,afterLeave:s}),B=ke();(0,i.useEffect)((function(){if(B&&v===Fe.Visible&&null===x.current)throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?")}),[x,v,B]);var z=S&&!k;we((function(){var e=x.current;if(e&&!z)return A.current=!0,j&&F.current.beforeEnter(),j||F.current.beforeLeave(),j?Re(e,P,T,I,L,(function(e){A.current=!1,e===Ae.Finished&&F.current.afterEnter()})):Re(e,M,R,D,L,(function(e){A.current=!1,e===Ae.Finished&&(Ue(N)||(g(Fe.Hidden),O(E),F.current.afterLeave()))}))}),[F,E,A,O,N,x,z,j,P,T,I,M,R,D]);var U={ref:x},V=m;return a().createElement(ze.Provider,{value:N},a().createElement(Te,{value:xe(v,(t={},t[Fe.Visible]=Ee.Open,t[Fe.Hidden]=Ee.Closed,t))},ye({props:fe({},V,U),defaultTag:"div",features:Ge,visible:v===Fe.Visible,name:"Transition.Child"})))}function Ke(e){var t,n=e.show,r=e.appear,o=void 0!==r&&r,s=e.unmount,l=pe(e,["show","appear","unmount"]),c=Pe();void 0===n&&null!==c&&(n=xe(c,((t={})[Ee.Open]=!0,t[Ee.Closed]=!1,t)));if(![!0,!1].includes(n))throw new Error("A <Transition /> is used but it is missing a `show={true | false}` prop.");var u=(0,i.useState)(n?Fe.Visible:Fe.Hidden),d=u[0],f=u[1],p=Ve((function(){f(Fe.Hidden)})),h=function(){var e=(0,i.useRef)(!0);return(0,i.useEffect)((function(){e.current=!1}),[]),e.current}(),m=(0,i.useMemo)((function(){return{show:n,appear:o||!h,initial:h}}),[n,o,h]);(0,i.useEffect)((function(){n?f(Fe.Visible):Ue(p)||f(Fe.Hidden)}),[n,p]);var x={unmount:s};return a().createElement(ze.Provider,{value:p},a().createElement(Be.Provider,{value:m},ye({props:fe({},x,{as:i.Fragment,children:a().createElement(Je,Object.assign({},x,l))}),defaultTag:i.Fragment,features:Ge,visible:d===Fe.Visible,name:"Transition"})))}function Xe(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=(0,i.useRef)(t);return(0,i.useEffect)((function(){r.current=t}),[t]),(0,i.useCallback)((function(e){for(var t,n=me(r.current);!(t=n()).done;){var o=t.value;null!=o&&("function"==typeof o?o(e):o.current=e)}}),[r])}function Ze(e){for(var t,n,r=e.parentElement,o=null;r&&!(r instanceof HTMLFieldSetElement);)r instanceof HTMLLegendElement&&(o=r),r=r.parentElement;var i=null!=(t=""===(null==(n=r)?void 0:n.getAttribute("disabled")))&&t;return(!i||!function(e){if(!e)return!1;var t=e.previousElementSibling;for(;null!==t;){if(t instanceof HTMLLegendElement)return!1;t=t.previousElementSibling}return!0}(o))&&i}function Ye(e,t,n){var r=(0,i.useRef)(t);r.current=t,(0,i.useEffect)((function(){function t(e){r.current.call(window,e)}return window.addEventListener(e,t,n),function(){return window.removeEventListener(e,t,n)}}),[e,n])}Ke.Child=function(e){var t=null!==(0,i.useContext)(Be),n=null!==Pe();return!t&&n?a().createElement(Ke,Object.assign({},e)):a().createElement(Je,Object.assign({},e))},Ke.Root=Ke,function(e){e.Space=" ",e.Enter="Enter",e.Escape="Escape",e.Backspace="Backspace",e.ArrowLeft="ArrowLeft",e.ArrowUp="ArrowUp",e.ArrowRight="ArrowRight",e.ArrowDown="ArrowDown",e.Home="Home",e.End="End",e.PageUp="PageUp",e.PageDown="PageDown",e.Tab="Tab"}($e||($e={}));var Qe,et,tt,nt,rt,ot=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map((function(e){return e+":not([tabindex='-1'])"})).join(",");function it(e){null==e||e.focus({preventScroll:!0})}function at(e,t){var n=Array.isArray(e)?e:function(e){return void 0===e&&(e=document.body),null==e?[]:Array.from(e.querySelectorAll(ot))}(e),r=document.activeElement,o=function(){if(t&(Qe.First|Qe.Next))return tt.Next;if(t&(Qe.Previous|Qe.Last))return tt.Previous;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")}(),i=function(){if(t&Qe.First)return 0;if(t&Qe.Previous)return Math.max(0,n.indexOf(r))-1;if(t&Qe.Next)return Math.max(0,n.indexOf(r))+1;if(t&Qe.Last)return n.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")}(),a=t&Qe.NoScroll?{preventScroll:!0}:{},s=0,l=n.length,c=void 0;do{var u;if(s>=l||s+l<=0)return et.Error;var d=i+s;if(t&Qe.WrapAround)d=(d+l)%l;else{if(d<0)return et.Underflow;if(d>=l)return et.Overflow}null==(u=c=n[d])||u.focus(a),s+=o}while(c!==document.activeElement);return c.hasAttribute("tabindex")||c.setAttribute("tabindex","0"),et.Success}function st(e,t,n){void 0===t&&(t=rt.All);var r=void 0===n?{}:n,o=r.initialFocus,a=r.containers,s=(0,i.useRef)("undefined"!=typeof window?document.activeElement:null),l=(0,i.useRef)(null),c=Oe(),u=Boolean(t&rt.RestoreFocus),d=Boolean(t&rt.InitialFocus);(0,i.useEffect)((function(){u&&(s.current=document.activeElement)}),[u]),(0,i.useEffect)((function(){if(u)return function(){it(s.current),s.current=null}}),[u]),(0,i.useEffect)((function(){if(d&&e.current){var t=document.activeElement;if(null==o?void 0:o.current){if((null==o?void 0:o.current)===t)return void(l.current=t)}else if(e.current.contains(t))return void(l.current=t);(null==o?void 0:o.current)?it(o.current):at(e.current,Qe.First)===et.Error&&console.warn("There are no focusable elements inside the <FocusTrap />"),l.current=document.activeElement}}),[e,o,d]),Ye("keydown",(function(n){t&rt.TabLock&&e.current&&n.key===$e.Tab&&(n.preventDefault(),at(e.current,(n.shiftKey?Qe.Previous:Qe.Next)|Qe.WrapAround)===et.Success&&(l.current=document.activeElement))})),Ye("focus",(function(n){if(t&rt.FocusLock){var r=new Set(null==a?void 0:a.current);if(r.add(e),r.size){var o=l.current;if(o&&c.current){var i=n.target;i&&i instanceof HTMLElement?!function(e,t){for(var n,r=me(e);!(n=r()).done;){var o;if(null==(o=n.value.current)?void 0:o.contains(t))return!0}return!1}(r,i)?(n.preventDefault(),n.stopPropagation(),it(o)):(l.current=i,it(i)):it(l.current)}}}}),!0)}!function(e){e[e.First=1]="First",e[e.Previous=2]="Previous",e[e.Next=4]="Next",e[e.Last=8]="Last",e[e.WrapAround=16]="WrapAround",e[e.NoScroll=32]="NoScroll"}(Qe||(Qe={})),function(e){e[e.Error=0]="Error",e[e.Overflow=1]="Overflow",e[e.Success=2]="Success",e[e.Underflow=3]="Underflow"}(et||(et={})),function(e){e[e.Previous=-1]="Previous",e[e.Next=1]="Next"}(tt||(tt={})),function(e){e[e.Strict=0]="Strict",e[e.Loose=1]="Loose"}(nt||(nt={})),function(e){e[e.None=1]="None",e[e.InitialFocus=2]="InitialFocus",e[e.TabLock=4]="TabLock",e[e.FocusLock=8]="FocusLock",e[e.RestoreFocus=16]="RestoreFocus",e[e.All=30]="All"}(rt||(rt={}));var lt=new Set,ct=new Map;function ut(e){e.setAttribute("aria-hidden","true"),e.inert=!0}function dt(e){var t=ct.get(e);t&&(null===t["aria-hidden"]?e.removeAttribute("aria-hidden"):e.setAttribute("aria-hidden",t["aria-hidden"]),e.inert=t.inert)}var ft=(0,i.createContext)(!1);function pt(e){return a().createElement(ft.Provider,{value:e.force},e.children)}const ht=ReactDOM;function mt(){var e=(0,i.useContext)(ft),t=(0,i.useContext)(gt),n=(0,i.useState)((function(){if(!e&&null!==t)return null;if("undefined"==typeof window)return null;var n=document.getElementById("headlessui-portal-root");if(n)return n;var r=document.createElement("div");return r.setAttribute("id","headlessui-portal-root"),document.body.appendChild(r)})),r=n[0],o=n[1];return(0,i.useEffect)((function(){e||null!==t&&o(t.current)}),[t,o,e]),r}var xt=i.Fragment;function yt(e){var t=e,n=mt(),r=(0,i.useState)((function(){return"undefined"==typeof window?null:document.createElement("div")}))[0],o=ke();return we((function(){if(n&&r)return n.appendChild(r),function(){var e;n&&(r&&(n.removeChild(r),n.childNodes.length<=0&&(null==(e=n.parentElement)||e.removeChild(n))))}}),[n,r]),o&&n&&r?(0,ht.createPortal)(ye({props:t,defaultTag:xt,name:"Portal"}),r):null}var vt=i.Fragment,gt=(0,i.createContext)(null);yt.Group=function(e){var t=e.target,n=pe(e,["target"]);return a().createElement(gt.Provider,{value:t},ye({props:n,defaultTag:vt,name:"Popover.Group"}))};var bt=(0,i.createContext)(null);function wt(){var e=(0,i.useContext)(bt);if(null===e){var t=new Error("You used a <Description /> component, but it is not inside a relevant parent.");throw Error.captureStackTrace&&Error.captureStackTrace(t,wt),t}return e}var jt,kt,St,Ct,_t=(0,i.createContext)((function(){}));function Ot(e){var t=e.children,n=e.onUpdate,r=e.type,o=e.element,s=(0,i.useContext)(_t),l=(0,i.useCallback)((function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];null==n||n.apply(void 0,t),s.apply(void 0,t)}),[s,n]);return we((function(){return l(jt.Add,r,o),function(){return l(jt.Remove,r,o)}}),[l,r,o]),a().createElement(_t.Provider,{value:l},t)}_t.displayName="StackContext",function(e){e[e.Add=0]="Add",e[e.Remove=1]="Remove"}(jt||(jt={})),function(e){e[e.Open=0]="Open",e[e.Closed=1]="Closed"}(St||(St={})),function(e){e[e.SetTitleId=0]="SetTitleId"}(Ct||(Ct={}));var Et=((kt={})[Ct.SetTitleId]=function(e,t){return e.titleId===t.id?e:fe({},e,{titleId:t.id})},kt),At=(0,i.createContext)(null);function Nt(e){var t=(0,i.useContext)(At);if(null===t){var n=new Error("<"+e+" /> is missing a parent <"+Mt.displayName+" /> component.");throw Error.captureStackTrace&&Error.captureStackTrace(n,Nt),n}return t}function Pt(e,t){return xe(t.type,Et,e,t)}At.displayName="DialogContext";var Tt=se.RenderStrategy|se.Static,It=ge((function(e,t){var n,r=e.open,o=e.onClose,s=e.initialFocus,l=pe(e,["open","onClose","initialFocus"]),c=(0,i.useState)(0),u=c[0],d=c[1],f=Pe();void 0===r&&null!==f&&(r=xe(f,((n={})[Ee.Open]=!0,n[Ee.Closed]=!1,n)));var p=(0,i.useRef)(new Set),h=(0,i.useRef)(null),m=Xe(h,t),x=e.hasOwnProperty("open")||null!==f,y=e.hasOwnProperty("onClose");if(!x&&!y)throw new Error("You have to provide an `open` and an `onClose` prop to the `Dialog` component.");if(!x)throw new Error("You provided an `onClose` prop to the `Dialog`, but forgot an `open` prop.");if(!y)throw new Error("You provided an `open` prop to the `Dialog`, but forgot an `onClose` prop.");if("boolean"!=typeof r)throw new Error("You provided an `open` prop to the `Dialog`, but the value is not a boolean. Received: "+r);if("function"!=typeof o)throw new Error("You provided an `onClose` prop to the `Dialog`, but the value is not a function. Received: "+o);var v=r?St.Open:St.Closed,g=null!==f?f===Ee.Open:v===St.Open,b=(0,i.useReducer)(Pt,{titleId:null,descriptionId:null}),w=b[0],j=b[1],k=(0,i.useCallback)((function(){return o(!1)}),[o]),S=(0,i.useCallback)((function(e){return j({type:Ct.SetTitleId,id:e})}),[j]),C=ke()&&v===St.Open,_=u>1,O=null!==(0,i.useContext)(At);st(h,C?xe(_?"parent":"leaf",{parent:rt.RestoreFocus,leaf:rt.All}):rt.None,{initialFocus:s,containers:p}),function(e,t){void 0===t&&(t=!0),we((function(){if(t&&e.current){var n=e.current;lt.add(n);for(var r,o=me(ct.keys());!(r=o()).done;){var i=r.value;i.contains(n)&&(dt(i),ct.delete(i))}return document.querySelectorAll("body > *").forEach((function(e){if(e instanceof HTMLElement){for(var t,n=me(lt);!(t=n()).done;){var r=t.value;if(e.contains(r))return}1===lt.size&&(ct.set(e,{"aria-hidden":e.getAttribute("aria-hidden"),inert:e.inert}),ut(e))}})),function(){if(lt.delete(n),lt.size>0)document.querySelectorAll("body > *").forEach((function(e){if(e instanceof HTMLElement&&!ct.has(e)){for(var t,n=me(lt);!(t=n()).done;){var r=t.value;if(e.contains(r))return}ct.set(e,{"aria-hidden":e.getAttribute("aria-hidden"),inert:e.inert}),ut(e)}}));else for(var e,t=me(ct.keys());!(e=t()).done;){var r=e.value;dt(r),ct.delete(r)}}}}),[t])}(h,!!_&&C),Ye("mousedown",(function(e){var t,n=e.target;v===St.Open&&(_||(null==(t=h.current)?void 0:t.contains(n))||k())})),Ye("keydown",(function(e){e.key===$e.Escape&&v===St.Open&&(_||(e.preventDefault(),e.stopPropagation(),k()))})),(0,i.useEffect)((function(){if(v===St.Open&&!O){var e=document.documentElement.style.overflow,t=document.documentElement.style.paddingRight,n=window.innerWidth-document.documentElement.clientWidth;return document.documentElement.style.overflow="hidden",document.documentElement.style.paddingRight=n+"px",function(){document.documentElement.style.overflow=e,document.documentElement.style.paddingRight=t}}}),[v,O]),(0,i.useEffect)((function(){if(v===St.Open&&h.current){var e=new IntersectionObserver((function(e){for(var t,n=me(e);!(t=n()).done;){var r=t.value;0===r.boundingClientRect.x&&0===r.boundingClientRect.y&&0===r.boundingClientRect.width&&0===r.boundingClientRect.height&&k()}}));return e.observe(h.current),function(){return e.disconnect()}}}),[v,h,k]);var E=function(){var e=(0,i.useState)([]),t=e[0],n=e[1];return[t.length>0?t.join(" "):void 0,(0,i.useMemo)((function(){return function(e){var t=(0,i.useCallback)((function(e){return n((function(t){return[].concat(t,[e])})),function(){return n((function(t){var n=t.slice(),r=n.indexOf(e);return-1!==r&&n.splice(r,1),n}))}}),[]),r=(0,i.useMemo)((function(){return{register:t,slot:e.slot,name:e.name,props:e.props}}),[t,e.slot,e.name,e.props]);return a().createElement(bt.Provider,{value:r},e.children)}}),[n])]}(),A=E[0],N=E[1],P="headlessui-dialog-"+_e(),T=(0,i.useMemo)((function(){return[{dialogState:v,close:k,setTitleId:S},w]}),[v,w,k,S]),I=(0,i.useMemo)((function(){return{open:v===St.Open}}),[v]),L={ref:m,id:P,role:"dialog","aria-modal":v===St.Open||void 0,"aria-labelledby":w.titleId,"aria-describedby":A,onClick:function(e){e.stopPropagation()}},M=l;return a().createElement(Ot,{type:"Dialog",element:h,onUpdate:(0,i.useCallback)((function(e,t,n){var r;"Dialog"===t&&xe(e,((r={})[jt.Add]=function(){p.current.add(n),d((function(e){return e+1}))},r[jt.Remove]=function(){p.current.add(n),d((function(e){return e-1}))},r))}),[])},a().createElement(pt,{force:!0},a().createElement(yt,null,a().createElement(At.Provider,{value:T},a().createElement(yt.Group,{target:h},a().createElement(pt,{force:!1},a().createElement(N,{slot:I,name:"Dialog.Description"},ye({props:fe({},M,L),slot:I,defaultTag:"div",features:Tt,visible:g,name:"Dialog"}))))))))})),Lt=ge((function e(t,n){var r=Nt([Mt.displayName,e.name].join("."))[0],o=r.dialogState,a=r.close,s=Xe(n),l="headlessui-dialog-overlay-"+_e(),c=(0,i.useCallback)((function(e){if(e.target===e.currentTarget){if(Ze(e.currentTarget))return e.preventDefault();e.preventDefault(),e.stopPropagation(),a()}}),[a]),u=(0,i.useMemo)((function(){return{open:o===St.Open}}),[o]);return ye({props:fe({},t,{ref:s,id:l,"aria-hidden":!0,onClick:c}),slot:u,defaultTag:"div",name:"Dialog.Overlay"})}));var Mt=Object.assign(It,{Overlay:Lt,Title:function e(t){var n=Nt([Mt.displayName,e.name].join("."))[0],r=n.dialogState,o=n.setTitleId,a="headlessui-dialog-title-"+_e();(0,i.useEffect)((function(){return o(a),function(){return o(null)}}),[a,o]);var s=(0,i.useMemo)((function(){return{open:r===St.Open}}),[r]);return ye({props:fe({},t,{id:a}),slot:s,defaultTag:"h2",name:"Dialog.Title"})},Description:function(e){var t=wt(),n="headlessui-description-"+_e();we((function(){return t.register(n)}),[n,t.register]);var r=e,o=fe({},t.props,{id:n});return ye({props:fe({},r,o),slot:t.slot||{},defaultTag:"p",name:t.name||"Description"})}});const Rt=wp.components,Dt=wp.i18n;const Ft=function(e){let{icon:t,size:n=24,...r}=e;return(0,o.cloneElement)(t,{width:n,height:n,...r})};var Bt=n(42),zt=n.n(Bt);const Ut=e=>(0,o.createElement)("circle",e),Vt=e=>(0,o.createElement)("g",e),Ht=e=>(0,o.createElement)("path",e),Wt=e=>(0,o.createElement)("rect",e),qt=e=>{let{className:t,isPressed:n,...r}=e;const i={...r,className:zt()(t,{"is-pressed":n})||void 0,role:"img","aria-hidden":!0,focusable:!1};return(0,o.createElement)("svg",i)},$t=(0,o.createElement)(qt,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},(0,o.createElement)(Ht,{d:"M12 13.06l3.712 3.713 1.061-1.06L13.061 12l3.712-3.712-1.06-1.06L12 10.938 8.288 7.227l-1.061 1.06L10.939 12l-3.712 3.712 1.06 1.061L12 13.061z"}));var Gt=n(246);function Jt(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Kt(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Jt(i,r,o,a,s,"next",e)}function s(e){Jt(i,r,o,a,s,"throw",e)}a(void 0)}))}}var Xt=function(){return X.get("plugins")},Zt=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"}})},Yt=function(){return X.get("active-plugins")};function Qt(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function en(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Qt(i,r,o,a,s,"next",e)}function s(e){Qt(i,r,o,a,s,"throw",e)}a(void 0)}))}}function tn(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return nn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return nn(e,t)}(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 nn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function rn(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function on(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){rn(i,r,o,a,s,"next",e)}function s(e){rn(i,r,o,a,s,"throw",e)}a(void 0)}))}}function an(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function sn(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return ln(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ln(e,t)}(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 ln(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var cn={promotion:function(e){var t,n=e.promotionData;return(0,Gt.jsxs)(Gt.Fragment,{children:[(0,Gt.jsx)("span",{className:"text-black",children:null!==(t=null==n?void 0:n.text)&&void 0!==t?t:""}),(0,Gt.jsx)("span",{className:"px-2 opacity-50","aria-hidden":"true",children:"|"}),(0,Gt.jsx)("div",{className:"flex items-center justify-center space-x-2",children:(null==n?void 0:n.url)&&(0,Gt.jsx)(Rt.Button,{variant:"link",className:"h-auto p-0 text-black underline hover:no-underline",href:"".concat(n.url,"&utm_source=").concat(window.extendifyData.sdk_partner,"&utm_group=").concat(K.getState().activeTestGroupsUtmValue()),onClick:on(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,de("promotion-notice-click");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),target:"_blank",children:null==n?void 0:n.button_text})})]})},feedback:function(){return(0,Gt.jsxs)(Gt.Fragment,{children:[(0,Gt.jsx)("span",{className:"text-black",children:(0,Dt.__)("Tell us how to make the Extendify Library work better for you","extendify")}),(0,Gt.jsx)("span",{className:"px-2 opacity-50","aria-hidden":"true",children:"|"}),(0,Gt.jsx)("div",{className:"flex items-center justify-center space-x-2",children:(0,Gt.jsx)(Rt.Button,{variant:"link",className:"h-auto p-0 text-black underline hover:no-underline",href:"https://extendify.com/feedback/?utm_source=".concat(window.extendifyData.sdk_partner,"&utm_medium=library&utm_campaign=feedback-notice&utm_content=give-feedback&utm_group=").concat(K.getState().activeTestGroupsUtmValue()),onClick:Kt(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,de("feedback-notice-click");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),target:"_blank",children:(0,Dt.__)("Give feedback","extendify")})})]})},standalone:function(){var e=tn((0,o.useState)(""),2),t=e[0],n=e[1],r=K((function(e){return e.giveFreebieImports}));return(0,Gt.jsxs)("div",{children:[(0,Gt.jsx)("span",{className:"text-black",children:(0,Dt.__)("Install the new Extendify Library plugin to get the latest we have to offer","extendify")}),(0,Gt.jsx)("span",{className:"px-2 opacity-50","aria-hidden":"true",children:"|"}),(0,Gt.jsxs)("div",{className:"relative inline-flex items-center space-x-2",children:[(0,Gt.jsx)(Rt.Button,{variant:"link",className:zt()("h-auto p-0 text-black underline hover:no-underline",{"opacity-0":t}),onClick:function(){n((0,Dt.__)("Installing...","extendify")),Promise.all([de("stln-footer-install"),Zt(["extendify"]),new Promise((function(e){return setTimeout(e,1e3)}))]).then(en(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r(10),n((0,Dt.__)("Success! Reloading...","extendify")),e.next=4,de("stln-footer-success");case 4:window.location.reload();case 5:case"end":return e.stop()}}),e)})))).catch(function(){var e=en(k().mark((function e(t){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.error(t),n((0,Dt.__)("Error. See console.","extendify")),e.next=4,de("stln-footer-fail");case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}())},children:(0,Dt.__)("Install Extendify standalone plugin","extendify")}),t?(0,Gt.jsx)(Rt.Button,{variant:"link",disabled:!0,className:"absolute left-0 h-auto p-0 text-black underline opacity-100 hover:no-underline",onClick:function(){},children:t}):null]})]})}};function un(e){var t,n=e.className,r=void 0===n?"":n,i=sn((0,o.useState)(null),2),a=i[0],s=i[1],l=(0,o.useRef)(!1),c=w((function(e){var t,n;return null===(t=e.metaData)||void 0===t||null===(n=t.banners)||void 0===n?void 0:n.footer})),u=null!==(t=Object.keys(cn).find((function(e){return"promotion"===e?(null==c?void 0:c.key)&&!K.getState().noticesDismissedAt[c.key]:"feedback"===e?(o=null!==(t=K.getState().imports)&&void 0!==t?t:0,i=null!==(n=null===(r=K.getState())||void 0===r?void 0:r.firstLoadedOn)&&void 0!==n?n:new Date,a=(new Date).getTime()-new Date(i).getTime(),o>=3&&a/864e5>3&&!K.getState().noticesDismissedAt[e]):"standalone"===e?!window.extendifyData.standalone&&!K.getState().noticesDismissedAt[e]:!K.getState().noticesDismissedAt[e];var t,n,r,o,i,a})))&&void 0!==t?t:null,d=cn[u],f=function(){var e,t=(e=k().mark((function e(){var t;return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s(!1),t="promotion"===u?c.key:u,K.getState().markNoticeSeen(t,"notices"),e.next=5,de("footer-notice-x-".concat(t));case 5:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){an(i,r,o,a,s,"next",e)}function s(e){an(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(){return t.apply(this,arguments)}}();return(0,o.useEffect)((function(){cn[u]&&!l.current&&(s(!0),l.current=!0)}),[u]),a?(0,Gt.jsxs)("div",{className:"".concat(r," relative mx-auto hidden max-w-screen-4xl items-center justify-center space-x-4 bg-extendify-secondary py-3 px-5 lg:flex"),children:[(0,Gt.jsx)(d,{promotionData:c}),(0,Gt.jsx)("div",{className:"absolute right-1",children:(0,Gt.jsx)(Rt.Button,{className:"text-extendify-black opacity-50 hover:opacity-100 focus:opacity-100",icon:(0,Gt.jsx)(Ft,{icon:$t}),label:(0,Dt.__)("Dismiss this notice","extendify"),onClick:f,showTooltip:!1})})]}):null}function dn(e){const{body:t}=document.implementation.createHTMLDocument("");t.innerHTML=e;const n=t.getElementsByTagName("*");let r=n.length;for(;r--;){const e=n[r];if("SCRIPT"===e.tagName)(o=e).parentNode,o.parentNode.removeChild(o);else{let t=e.attributes.length;for(;t--;){const{name:n}=e.attributes[t];n.startsWith("on")&&e.removeAttribute(n)}}}var o;return t.innerHTML}const fn=(0,Gt.jsxs)(qt,{viewBox:"0 0 14 14",xmlns:"http://www.w3.org/2000/svg",children:[(0,Gt.jsx)(Ht,{d:"M7.32457 0.907043C3.98785 0.907043 1.2829 3.61199 1.2829 6.94871C1.2829 10.2855 3.98785 12.9904 7.32457 12.9904C10.6613 12.9904 13.3663 10.2855 13.3663 6.94871C13.3663 3.61199 10.6613 0.907043 7.32457 0.907043V0.907043Z",stroke:"currentColor",strokeWidth:"1.25",fill:"none"}),(0,Gt.jsx)(Ht,{d:"M6.34684 9.72526C6.34684 9.18224 6.77716 8.74168 7.32018 8.74168C7.8632 8.74168 8.30377 9.18224 8.30377 9.72526C8.30377 10.2683 7.8632 10.6986 7.32018 10.6986C6.77716 10.6986 6.34684 10.2683 6.34684 9.72526Z",fill:"currentColor"}),(0,Gt.jsx)(Ht,{d:"M7.9759 7.11261C7.93492 7.47121 7.67878 7.76834 7.32018 7.76834C6.95134 7.76834 6.70544 7.46097 6.6747 7.11261L6.34684 4.1721C6.28537 3.67006 6.81814 3.19876 7.32018 3.19876C7.82222 3.19876 8.35499 3.67006 8.30377 4.1721L7.9759 7.11261Z",fill:"currentColor"})]});const pn=(0,Gt.jsx)(qt,{fill:"none",viewBox:"0 0 25 24",xmlns:"http://www.w3.org/2000/svg",children:(0,Gt.jsx)(Ht,{clipRule:"evenodd",d:"m14.4063 2h4.1856c1.1856 0 1.6147.12701 2.0484.36409.4336.23802.7729.58706 1.0049 1.03111.2319.445.3548.8853.3548 2.10175v4.29475c0 1.2165-.1238 1.6567-.3548 2.1017-.232.445-.5722.7931-1.0049 1.0312-.1939.1064-.3873.1939-.6476.2567v3.4179c0 1.8788-.1912 2.5588-.5481 3.246-.3582.6873-.8836 1.2249-1.552 1.5925-.6697.3676-1.3325.5623-3.1634.5623h-6.46431c-1.83096 0-2.49367-.1962-3.16346-.5623-.6698-.3676-1.19374-.9067-1.552-1.5925s-.54943-1.3672-.54943-3.246v-6.63138c0-1.87871.19117-2.55871.54801-3.24597.35827-.68727.88362-1.22632 1.55342-1.59393.66837-.36615 1.3325-.56231 3.16346-.56231h2.76781c.0519-.55814.1602-.86269.3195-1.16946.232-.445.5721-.79404 1.0058-1.03206.4328-.23708.8628-.36409 2.0483-.36409zm-2.1512 2.73372c0-.79711.6298-1.4433 1.4067-1.4433h5.6737c.777 0 1.4068.64619 1.4068 1.4433v5.82118c0 .7971-.6298 1.4433-1.4068 1.4433h-5.6737c-.7769 0-1.4067-.6462-1.4067-1.4433z",fill:"currentColor",fillRule:"evenodd"})});const hn=(0,Gt.jsx)(qt,{fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:(0,Gt.jsx)(Ht,{clipRule:"evenodd",d:"m13.505 4h3.3044c.936 0 1.2747.10161 1.6171.29127.3424.19042.6102.46965.7934.82489.1831.356.2801.70824.2801 1.6814v3.43584c0 .9731-.0977 1.3254-.2801 1.6814-.1832.356-.4517.6344-.7934.8248-.153.0852-.3057.1552-.5112.2054v2.7344c0 1.503-.151 2.047-.4327 2.5968-.2828.5498-.6976.9799-1.2252 1.274-.5288.294-1.052.4498-2.4975.4498h-5.10341c-1.44549 0-1.96869-.1569-2.49747-.4498-.52878-.2941-.94242-.7254-1.22526-1.274-.28284-.5487-.43376-1.0938-.43376-2.5968v-5.3051c0-1.50301.15092-2.04701.43264-2.59682.28284-.54981.6976-.98106 1.22638-1.27514.52767-.29293 1.05198-.44985 2.49747-.44985h2.18511c.041-.44652.1265-.69015.2522-.93557.1832-.356.4517-.63523.7941-.82565.3417-.18966.6812-.29127 1.6171-.29127zm-1.6984 2.18698c0-.63769.4973-1.15464 1.1106-1.15464h4.4793c.6133 0 1.1106.51695 1.1106 1.15464v4.65692c0 .6377-.4973 1.1547-1.1106 1.1547h-4.4793c-.6133 0-1.1106-.517-1.1106-1.1547z",fill:"currentColor",fillRule:"evenodd"})});const mn=(0,Gt.jsx)(qt,{fill:"none",width:"150",height:"30",viewBox:"0 0 2524 492",xmlns:"http://www.w3.org/2000/svg",children:(0,Gt.jsxs)(Vt,{fill:"currentColor",children:[(0,Gt.jsx)(Ht,{d:"m609.404 378.5c-24.334 0-46-5.5-65-16.5-18.667-11.333-33.334-26.667-44-46-10.667-19.667-16-42.167-16-67.5 0-25.667 5.166-48.333 15.5-68 10.333-19.667 24.833-35 43.5-46 18.666-11.333 40-17 64-17 25 0 46.5 5.333 64.5 16 18 10.333 31.833 24.833 41.5 43.5 10 18.667 15 41 15 67v18.5l-212 .5 1-39h150.5c0-17-5.5-30.667-16.5-41-10.667-10.333-25.167-15.5-43.5-15.5-14.334 0-26.5 3-36.5 9-9.667 6-17 15-22 27s-7.5 26.667-7.5 44c0 26.667 5.666 46.833 17 60.5 11.666 13.667 28.833 20.5 51.5 20.5 16.666 0 30.333-3.167 41-9.5 11-6.333 18.166-15.333 21.5-27h56.5c-5.334 27-18.667 48.167-40 63.5-21 15.333-47.667 23-80 23z"}),(0,Gt.jsx)("path",{d:"m797.529 372h-69.5l85-121-85-126h71l54.5 84 52.5-84h68.5l-84 125.5 81.5 121.5h-70l-53-81.5z"}),(0,Gt.jsx)("path",{d:"m994.142 125h155.998v51h-155.998zm108.498 247h-61v-324h61z"}),(0,Gt.jsx)("path",{d:"m1278.62 378.5c-24.33 0-46-5.5-65-16.5-18.66-11.333-33.33-26.667-44-46-10.66-19.667-16-42.167-16-67.5 0-25.667 5.17-48.333 15.5-68 10.34-19.667 24.84-35 43.5-46 18.67-11.333 40-17 64-17 25 0 46.5 5.333 64.5 16 18 10.333 31.84 24.833 41.5 43.5 10 18.667 15 41 15 67v18.5l-212 .5 1-39h150.5c0-17-5.5-30.667-16.5-41-10.66-10.333-25.16-15.5-43.5-15.5-14.33 0-26.5 3-36.5 9-9.66 6-17 15-22 27s-7.5 26.667-7.5 44c0 26.667 5.67 46.833 17 60.5 11.67 13.667 28.84 20.5 51.5 20.5 16.67 0 30.34-3.167 41-9.5 11-6.333 18.17-15.333 21.5-27h56.5c-5.33 27-18.66 48.167-40 63.5-21 15.333-47.66 23-80 23z"}),(0,Gt.jsx)("path",{d:"m1484.44 372h-61v-247h56.5l5 32c7.67-12.333 18.5-22 32.5-29 14.34-7 29.84-10.5 46.5-10.5 31 0 54.34 9.167 70 27.5 16 18.333 24 43.333 24 75v152h-61v-137.5c0-20.667-4.66-36-14-46-9.33-10.333-22-15.5-38-15.5-19 0-33.83 6-44.5 18-10.66 12-16 28-16 48z"}),(0,Gt.jsx)("path",{d:"m1798.38 378.5c-24 0-44.67-5.333-62-16-17-11-30.34-26.167-40-45.5-9.34-19.333-14-41.833-14-67.5s4.66-48.333 14-68c9.66-20 23.5-35.667 41.5-47s39.33-17 64-17c17.33 0 33.16 3.5 47.5 10.5 14.33 6.667 25.33 16.167 33 28.5v-156.5h60.5v372h-56l-4-38.5c-7.34 14-18.67 25-34 33-15 8-31.84 12-50.5 12zm13.5-56c14.33 0 26.66-3 37-9 10.33-6.333 18.33-15.167 24-26.5 6-11.667 9-24.833 9-39.5 0-15-3-28-9-39-5.67-11.333-13.67-20.167-24-26.5-10.34-6.667-22.67-10-37-10-14 0-26.17 3.333-36.5 10-10.34 6.333-18.34 15.167-24 26.5-5.34 11.333-8 24.333-8 39s2.66 27.667 8 39c5.66 11.333 13.66 20.167 24 26.5 10.33 6.333 22.5 9.5 36.5 9.5z"}),(0,Gt.jsx)("path",{d:"m1996.45 372v-247h61v247zm30-296.5c-10.34 0-19.17-3.5-26.5-10.5-7-7.3333-10.5-16.1667-10.5-26.5s3.5-19 10.5-26c7.33-6.99999 16.16-10.49998 26.5-10.49998 10.33 0 19 3.49999 26 10.49998 7.33 7 11 15.6667 11 26s-3.67 19.1667-11 26.5c-7 7-15.67 10.5-26 10.5z"}),(0,Gt.jsx)("path",{d:"m2085.97 125h155v51h-155zm155.5-122.5v52c-3.33 0-6.83 0-10.5 0-3.33 0-6.83 0-10.5 0-15.33 0-25.67 3.6667-31 11-5 7.3333-7.5 17.1667-7.5 29.5v277h-60.5v-277c0-22.6667 3.67-40.8333 11-54.5 7.33-14 17.67-24.1667 31-30.5 13.33-6.66666 28.83-10 46.5-10 5 0 10.17.166671 15.5.5 5.67.333329 11 .99999 16 2z"}),(0,Gt.jsx)("path",{d:"m2330.4 125 80.5 228-33 62.5-112-290.5zm-58 361.5v-50.5h36.5c8 0 15-1 21-3 6-1.667 11.34-5 16-10 5-5 9.17-12.333 12.5-22l102.5-276h63l-121 302c-9 22.667-20.33 39.167-34 49.5-13.66 10.333-30.66 15.5-51 15.5-8.66 0-16.83-.5-24.5-1.5-7.33-.667-14.33-2-21-4z"}),(0,Gt.jsx)("path",{clipRule:"evenodd",d:"m226.926 25.1299h83.271c23.586 0 32.123 2.4639 40.751 7.0633 8.628 4.6176 15.378 11.389 19.993 20.0037 4.615 8.6329 7.059 17.1746 7.059 40.7738v83.3183c0 23.599-2.463 32.141-7.059 40.774-4.615 8.633-11.383 15.386-19.993 20.003-3.857 2.065-7.704 3.764-12.884 4.981v66.308c0 36.447-3.803 49.639-10.902 62.972-7.128 13.333-17.579 23.763-30.877 30.894-13.325 7.132-26.51 10.909-62.936 10.909h-128.605c-36.4268 0-49.6113-3.805-62.9367-10.909-13.3254-7.131-23.749-17.589-30.8765-30.894-7.12757-13.304-10.9308-26.525-10.9308-62.972v-128.649c0-36.447 3.80323-49.639 10.9026-62.972 7.1275-13.333 17.5793-23.7909 30.9047-30.9224 13.2972-7.1034 26.5099-10.9088 62.9367-10.9088h55.064c1.033-10.8281 3.188-16.7362 6.357-22.6877 4.615-8.6329 11.382-15.4043 20.01-20.0219 8.61-4.5994 17.165-7.0633 40.751-7.0633zm-42.798 53.0342c0-15.464 12.53-28 27.986-28h112.877c15.457 0 27.987 12.536 27.987 28v112.9319c0 15.464-12.53 28-27.987 28h-112.877c-15.456 0-27.986-12.536-27.986-28z",fillRule:"evenodd"})]})});const xn=(0,Gt.jsx)(qt,{fill:"none",height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",children:(0,Gt.jsx)("path",{d:"m11.9893 2.59931c-.1822.00285-.3558.07789-.4827.20864s-.1967.30653-.1941.48871v1.375c-.0013.0911.0156.18155.0495.26609.034.08454.0844.16149.1484.22637s.1402.11639.2242.15156c.0841.03516.1743.05327.2654.05327s.1813-.01811.2654-.05327c.084-.03517.1603-.08668.2242-.15156.064-.06488.1144-.14183.1484-.22637s.0508-.17499.0495-.26609v-1.375c.0013-.09202-.0158-.18337-.0505-.26863-.0346-.08526-.086-.1627-.1511-.22773s-.1426-.11633-.2279-.15085c-.0853-.03453-.1767-.05158-.2687-.05014zm-5.72562.46013c-.1251.00033-.24775.0348-.35471.09968-.10697.06488-.19421.15771-.25232.2685-.05812.1108-.0849.23534-.07747.36023.00744.12488.0488.24537.11964.34849l.91667 1.375c.04939.07667.11354.14274.18872.19437.07517.05164.15987.0878.24916.10639.08928.01858.18137.01922.27091.00187.08953-.01734.17472-.05233.2506-.10292.07589-.05059.14095-.11577.1914-.19174.05045-.07598.08528-.16123.10246-.2508.01719-.08956.01638-.18165-.00237-.2709s-.05507-.17388-.10684-.24897l-.91666-1.375c-.06252-.09667-.14831-.1761-.2495-.231-.1012-.0549-.21456-.08351-.32969-.0832zm11.45212 0c-.1117.00307-.2209.03329-.3182.08804-.0973.05474-.1798.13237-.2404.22616l-.9167 1.375c-.0518.07509-.0881.15972-.1068.24897-.0188.08925-.0196.18134-.0024.2709.0172.08957.052.17482.1024.2508.0505.07597.1156.14115.1914.19174.0759.05059.1611.08558.2506.10292.0896.01735.1817.01671.271-.00187.0892-.01859.1739-.05475.2491-.10639.0752-.05163.1393-.1177.1887-.19437l.9167-1.375c.0719-.10456.1135-.22698.1201-.3537s-.022-.25281-.0826-.36429c-.0606-.11149-.1508-.20403-.2608-.26738-.11-.06334-.2353-.09502-.3621-.09153zm-9.61162 3.67472c-.09573-.00001-.1904.01998-.27795.05867-.08756.03869-.16607.09524-.23052.16602l-4.58333 5.04165c-.11999.1319-.18407.3052-.17873.4834.00535.1782.0797.3473.20738.4718l8.47917 8.25c.1284.1251.3006.1951.4798.1951.1793 0 .3514-.07.4798-.1951l8.4792-8.25c.1277-.1245.202-.2936.2074-.4718.0053-.1782-.0588-.3515-.1788-.4834l-4.5833-5.04165c-.0644-.07078-.1429-.12733-.2305-.16602s-.1822-.05868-.278-.05867h-3.877zm.30436 1.375h2.21646l-2.61213 3.48314c-.04258.0557-.07639.1176-.10026.1835h-2.83773zm4.96646 0h2.2165l3.3336 3.66664h-2.8368c-.0241-.066-.0582-.1278-.1011-.1835zm-1.375.45833 2.4063 3.20831h-4.81254zm-6.78637 4.58331h2.70077c.00665.0188.01412.0374.02238.0555l2.11442 4.6505zm4.20826 0h5.15621l-2.5781 5.6719zm6.66371 0h2.7008l-4.8376 4.706 2.1144-4.6505c.0083-.0181.0158-.0367.0224-.0555z",fill:"#000"})});const yn=(0,Gt.jsxs)(qt,{viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,Gt.jsx)(Ht,{d:"M7.32457 0.907043C3.98785 0.907043 1.2829 3.61199 1.2829 6.94871C1.2829 10.2855 3.98785 12.9904 7.32457 12.9904C10.6613 12.9904 13.3663 10.2855 13.3663 6.94871C13.3663 3.61199 10.6613 0.907043 7.32457 0.907043V0.907043Z",stroke:"white",strokeWidth:"1.25"}),(0,Gt.jsx)(Ht,{d:"M7.32458 10.0998L4.82458 7.59977M7.32458 10.0998V3.79764V10.0998ZM7.32458 10.0998L9.82458 7.59977L7.32458 10.0998Z",stroke:"white",strokeWidth:"1.25"})]});const vn=(0,Gt.jsxs)(qt,{viewBox:"0 0 25 25",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,Gt.jsx)("path",{d:"M7.93298 20.2773L17.933 20.2773C18.1982 20.2773 18.4526 20.172 18.6401 19.9845C18.8276 19.7969 18.933 19.5426 18.933 19.2773C18.933 19.0121 18.8276 18.7578 18.6401 18.5702C18.4526 18.3827 18.1982 18.2773 17.933 18.2773L7.93298 18.2773C7.66777 18.2773 7.41341 18.3827 7.22588 18.5702C7.03834 18.7578 6.93298 19.0121 6.93298 19.2773C6.93298 19.5426 7.03834 19.7969 7.22588 19.9845C7.41341 20.172 7.66777 20.2773 7.93298 20.2773Z",fill:"white"}),(0,Gt.jsx)("path",{d:"M12.933 4.27734C12.6678 4.27734 12.4134 4.3827 12.2259 4.57024C12.0383 4.75777 11.933 5.01213 11.933 5.27734L11.933 12.8673L9.64298 10.5773C9.55333 10.4727 9.44301 10.3876 9.31895 10.3276C9.19488 10.2676 9.05975 10.2339 8.92203 10.2285C8.78431 10.2232 8.64698 10.2464 8.51865 10.2967C8.39033 10.347 8.27378 10.4232 8.17632 10.5207C8.07887 10.6181 8.00261 10.7347 7.95234 10.863C7.90206 10.9913 7.87886 11.1287 7.88418 11.2664C7.8895 11.4041 7.92323 11.5392 7.98325 11.6633C8.04327 11.7874 8.12829 11.8977 8.23297 11.9873L12.233 15.9873C12.3259 16.0811 12.4365 16.1555 12.5584 16.2062C12.6803 16.257 12.811 16.2831 12.943 16.2831C13.075 16.2831 13.2057 16.257 13.3276 16.2062C13.4494 16.1555 13.56 16.0811 13.653 15.9873L17.653 11.9873C17.8168 11.796 17.9024 11.55 17.8927 11.2983C17.883 11.0466 17.7786 10.8079 17.6005 10.6298C17.4224 10.4517 17.1837 10.3474 16.932 10.3376C16.6804 10.3279 16.4343 10.4135 16.243 10.5773L13.933 12.8673L13.933 5.27734C13.933 5.01213 13.8276 4.75777 13.6401 4.57024C13.4525 4.3827 13.1982 4.27734 12.933 4.27734Z",fill:"white"})]});const gn=(0,Gt.jsxs)(qt,{fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:[(0,Gt.jsx)(Ht,{d:"m11.2721 16.9866.6041 2.2795.6042-2.2795.6213-2.3445c.0001-.0002.0001-.0004.0002-.0006.2404-.9015.8073-1.5543 1.4638-1.8165.0005-.0002.0009-.0004.0013-.0006l1.9237-.7555 1.4811-.5818-1.4811-.5817-1.9264-.7566c0-.0001-.0001-.0001-.0001-.0001-.0001 0-.0001 0-.0001 0-.654-.25727-1.2213-.90816-1.4621-1.81563-.0001-.00006-.0001-.00011-.0001-.00017l-.6215-2.34519-.6042-2.27947-.6041 2.27947-.6216 2.34519v.00017c-.2409.90747-.80819 1.55836-1.46216 1.81563-.00002 0-.00003 0-.00005 0-.00006 0-.00011 0-.00017.0001l-1.92637.7566-1.48108.5817 1.48108.5818 1.92637.7566c.00007 0 .00015.0001.00022.0001.65397.2572 1.22126.9082 1.46216 1.8156v.0002z",stroke:"currentColor",strokeWidth:"1.25",fill:"none"}),(0,Gt.jsxs)(Vt,{fill:"currentColor",children:[(0,Gt.jsx)(Ht,{d:"m18.1034 18.3982-.2787.8625-.2787-.8625c-.1314-.4077-.4511-.7275-.8589-.8589l-.8624-.2786.8624-.2787c.4078-.1314.7275-.4512.8589-.8589l.2787-.8624.2787.8624c.1314.4077.4511.7275.8589.8589l.8624.2787-.8624.2786c-.4078.1314-.7269.4512-.8589.8589z"}),(0,Gt.jsx)(Ht,{d:"m6.33141 6.97291-.27868.86242-.27867-.86242c-.13142-.40775-.45116-.72749-.8589-.85891l-.86243-.27867.86243-.27868c.40774-.13141.72748-.45115.8589-.8589l.27867-.86242.27868.86242c.13142.40775.45116.72749.8589.8589l.86242.27868-.86242.27867c-.40774.13142-.7269.45116-.8589.85891z"})]})]});const bn=(0,Gt.jsx)(qt,{fill:"none",height:"25",viewBox:"0 0 25 25",width:"25",xmlns:"http://www.w3.org/2000/svg",children:(0,Gt.jsx)(Ht,{d:"m16.2382 9.17969.7499.00645.0066-.75988-.7599.00344zm-5.5442.77506 5.5475-.02507-.0067-1.49998-5.5476.02506zm4.7942-.78152-.0476 5.52507 1.5.0129.0475-5.52506zm.2196-.52387-7.68099 7.68104 1.06066 1.0606 7.68103-7.68098z",fill:"currentColor"})});const wn=(0,Gt.jsx)(qt,{fill:"none",height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",children:(0,Gt.jsxs)(Vt,{stroke:"currentColor",strokeWidth:"1.5",children:[(0,Gt.jsx)(Ht,{d:"m6 4.75h12c.6904 0 1.25.55964 1.25 1.25v12c0 .6904-.5596 1.25-1.25 1.25h-12c-.69036 0-1.25-.5596-1.25-1.25v-12c0-.69036.55964-1.25 1.25-1.25z"}),(0,Gt.jsx)(Ht,{d:"m9.25 19v-14"})]})});const jn=(0,Gt.jsxs)(qt,{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,Gt.jsx)(Ht,{fillRule:"evenodd",clipRule:"evenodd",d:"M7.49271 18.0092C6.97815 17.1176 7.28413 15.9755 8.17569 15.4609C9.06724 14.946 10.2094 15.252 10.7243 16.1435C11.2389 17.0355 10.9329 18.1772 10.0413 18.6922C9.14978 19.2071 8.00764 18.9011 7.49271 18.0092V18.0092Z",fill:"currentColor"}),(0,Gt.jsx)(Ht,{fillRule:"evenodd",clipRule:"evenodd",d:"M16.5073 6.12747C17.0218 7.01903 16.7158 8.16117 15.8243 8.67573C14.9327 9.19066 13.7906 8.88467 13.2757 7.99312C12.7611 7.10119 13.0671 5.95942 13.9586 5.44449C14.8502 4.92956 15.9923 5.23555 16.5073 6.12747V6.12747Z",fill:"currentColor"}),(0,Gt.jsx)(Ht,{fillRule:"evenodd",clipRule:"evenodd",d:"M4.60135 11.1355C5.11628 10.2439 6.25805 9.93793 7.14998 10.4525C8.04153 10.9674 8.34752 12.1096 7.83296 13.0011C7.31803 13.8927 6.17588 14.1987 5.28433 13.6841C4.39278 13.1692 4.08679 12.0274 4.60135 11.1355V11.1355Z",fill:"currentColor"}),(0,Gt.jsx)(Ht,{fillRule:"evenodd",clipRule:"evenodd",d:"M19.3986 13.0011C18.8837 13.8927 17.7419 14.1987 16.85 13.6841C15.9584 13.1692 15.6525 12.027 16.167 11.1355C16.682 10.2439 17.8241 9.93793 18.7157 10.4525C19.6072 10.9674 19.9132 12.1092 19.3986 13.0011V13.0011Z",fill:"currentColor"}),(0,Gt.jsx)(Ht,{d:"M9.10857 8.92594C10.1389 8.92594 10.9742 8.09066 10.9742 7.06029C10.9742 6.02992 10.1389 5.19464 9.10857 5.19464C8.0782 5.19464 7.24292 6.02992 7.24292 7.06029C7.24292 8.09066 8.0782 8.92594 9.10857 8.92594Z",fill:"currentColor"}),(0,Gt.jsx)(Ht,{d:"M14.8913 18.942C15.9217 18.942 16.7569 18.1067 16.7569 17.0763C16.7569 16.046 15.9217 15.2107 14.8913 15.2107C13.8609 15.2107 13.0256 16.046 13.0256 17.0763C13.0256 18.1067 13.8609 18.942 14.8913 18.942Z",fill:"currentColor"}),(0,Gt.jsx)(Ht,{fillRule:"evenodd",clipRule:"evenodd",d:"M10.3841 13.0011C9.86951 12.1096 10.1755 10.9674 11.067 10.4525C11.9586 9.93793 13.1007 10.2439 13.6157 11.1355C14.1302 12.0274 13.8242 13.1692 12.9327 13.6841C12.0411 14.1987 10.899 13.8927 10.3841 13.0011V13.0011Z",fill:"currentColor"})]});const kn=(0,Gt.jsxs)(qt,{fill:"none",viewBox:"0 0 151 148",width:"151",xmlns:"http://www.w3.org/2000/svg",children:[(0,Gt.jsx)(Ut,{cx:"65.6441",cy:"66.6114",fill:"#0b4a43",r:"65.3897"}),(0,Gt.jsxs)(Vt,{fill:"#cbc3f5",stroke:"#0b4a43",children:[(0,Gt.jsx)(Ht,{d:"m61.73 11.3928 3.0825 8.3304.1197.3234.3234.1197 8.3304 3.0825-8.3304 3.0825-.3234.1197-.1197.3234-3.0825 8.3304-3.0825-8.3304-.1197-.3234-.3234-.1197-8.3304-3.0825 8.3304-3.0825.3234-.1197.1197-.3234z",strokeWidth:"1.5"}),(0,Gt.jsx)(Ht,{d:"m84.3065 31.2718c0 5.9939-12.4614 22.323-18.6978 22.323h-17.8958v56.1522c3.5249.9 11.6535 0 17.8958 0h6.2364c11.2074 3.33 36.0089 7.991 45.5529 0l-9.294-62.1623c-2.267-1.7171-5.949-6.6968-2.55-12.8786 3.4-6.1817 2.55-18.0406 0-24.5756-1.871-4.79616-8.3289-8.90882-14.4482-8.90882s-7.0825 4.00668-6.7993 6.01003z",strokeWidth:"1.75"}),(0,Gt.jsx)(Wt,{height:"45.5077",rx:"9.13723",strokeWidth:"1.75",transform:"matrix(0 1 -1 0 191.5074 -96.0026)",width:"18.2745",x:"143.755",y:"47.7524"}),(0,Gt.jsx)(Wt,{height:"42.3038",rx:"8.73674",strokeWidth:"1.75",transform:"matrix(0 1 -1 0 241.97 -50.348)",width:"17.4735",x:"146.159",y:"95.811"}),(0,Gt.jsx)(Wt,{height:"55.9204",rx:"8.73674",strokeWidth:"1.75",transform:"matrix(0 1 -1 0 213.1347 -85.5913)",width:"17.4735",x:"149.363",y:"63.7717"}),(0,Gt.jsx)(Wt,{height:"51.1145",rx:"8.73674",strokeWidth:"1.75",transform:"matrix(0 1 -1 0 229.1545 -69.5715)",width:"17.4735",x:"149.363",y:"79.7915"}),(0,Gt.jsx)(Ht,{d:"m75.7483 105.349c.9858-25.6313-19.2235-42.0514-32.8401-44.0538v12.0146c8.5438 1.068 24.8303 9.7642 24.8303 36.0442 0 23.228 19.4905 33.374 29.6362 33.641v-10.413s-22.6122-1.602-21.6264-27.233z",strokeWidth:"1.75"}),(0,Gt.jsx)(Ht,{d:"m68.5388 109.354c.9858-25.6312-19.2234-42.0513-32.8401-44.0537v12.0147c8.5438 1.0679 24.8303 9.7641 24.8303 36.044 0 23.228 19.4905 33.374 29.6362 33.641v-10.413s-22.6122-1.602-21.6264-27.233z",strokeWidth:"1.75"})]})]});const Sn=(0,Gt.jsxs)(qt,{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,Gt.jsx)(Ut,{cx:"12",cy:"12",r:"7.25",stroke:"currentColor",strokeWidth:"1.5"}),(0,Gt.jsx)(Ut,{cx:"12",cy:"12",r:"4.25",stroke:"currentColor",strokeWidth:"1.5"}),(0,Gt.jsx)(Ut,{cx:"11.9999",cy:"12.2",r:"6",transform:"rotate(-45 11.9999 12.2)",stroke:"currentColor",strokeWidth:"3",strokeDasharray:"1.5 4"})]});const Cn=(0,Gt.jsx)(qt,{fill:"none",height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",children:(0,Gt.jsx)(Ht,{d:"m11.7758 3.45425c.0917-.18582.3567-.18581.4484 0l2.3627 4.78731c.0364.07379.1068.12493.1882.13676l5.2831.76769c.2051.02979.287.28178.1386.42642l-3.8229 3.72637c-.0589.0575-.0858.1402-.0719.2213l.9024 5.2618c.0351.2042-.1793.36-.3627.2635l-4.7254-2.4842c-.0728-.0383-.1598-.0383-.2326 0l-4.7254 2.4842c-.18341.0965-.39776-.0593-.36274-.2635l.90247-5.2618c.01391-.0811-.01298-.1638-.0719-.2213l-3.8229-3.72637c-.14838-.14464-.0665-.39663.13855-.42642l5.28312-.76769c.08143-.01183.15182-.06297.18823-.13676z",fill:"currentColor"})});const _n=(0,Gt.jsx)(qt,{fill:"none",viewBox:"0 0 25 25",xmlns:"http://www.w3.org/2000/svg",children:(0,Gt.jsx)(Ht,{clipRule:"evenodd",d:"m13 4c4.9545 0 9 4.04545 9 9 0 4.9545-4.0455 9-9 9-4.95455 0-9-4.0455-9-9 0-4.95455 4.04545-9 9-9zm5.0909 13.4545c-1.9545 3.8637-8.22726 3.8637-10.22726 0-.04546-.1818-.04546-.3636 0-.5454 2-3.8636 8.27276-3.8636 10.22726 0 .0909.1818.0909.3636 0 .5454zm-5.0909-8.90905c-1.2727 0-2.3182 1.04546-2.3182 2.31815 0 1.2728 1.0455 2.3182 2.3182 2.3182s2.3182-1.0454 2.3182-2.3182c0-1.27269-1.0455-2.31815-2.3182-2.31815z",fill:"currentColor",fillRule:"evenodd"})}),On=(0,o.createElement)(qt,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},(0,o.createElement)(Ht,{d:"M13 11.8l6.1-6.3-1-1-6.1 6.2-6.1-6.2-1 1 6.1 6.3-6.5 6.7 1 1 6.5-6.6 6.5 6.6 1-1z"}));var En=(0,o.forwardRef)((function(e,t){var n,r=e.onClose,i=e.isOpen,a=e.invertedButtonColor,s=e.children,l=e.leftContainerBgColor,c=void 0===l?"bg-white":l,u=e.rightContainerBgColor,d=void 0===u?"bg-gray-100":u,f=(0,o.useRef)(null),p=w((function(e){return e.removeAllModals}));return r=null!==(n=r)&&void 0!==n?n:p,(0,Gt.jsx)(Ke.Root,{appear:!0,show:!0,as:o.Fragment,children:(0,Gt.jsx)(Mt,{as:"div",static:!0,open:i,className:"extendify",initialFocus:null!=t?t:f,onClose:r,children:(0,Gt.jsxs)("div",{className:"fixed inset-0 z-high flex",children:[(0,Gt.jsx)(Ke.Child,{as:o.Fragment,enter:"ease-out duration-50 transition",enterFrom:"opacity-0",enterTo:"opacity-100",children:(0,Gt.jsx)(Mt.Overlay,{className:"fixed inset-0 bg-black bg-opacity-40 transition-opacity"})}),(0,Gt.jsx)(Ke.Child,{as:o.Fragment,enter:"ease-out duration-300 translate transform",enterFrom:"opacity-0 translate-y-4 sm:translate-y-5",enterTo:"opacity-100 translate-y-0",children:(0,Gt.jsx)("div",{className:"m-auto",children:(0,Gt.jsxs)("div",{className:"relative m-8 max-w-md justify-between rounded-sm shadow-modal md:m-0 md:flex md:max-w-2xl",children:[(0,Gt.jsxs)("button",{onClick:r,ref:f,className:"absolute top-0 right-0 block cursor-pointer rounded-md bg-transparent p-4 text-gray-700 opacity-30 hover:opacity-100",style:a&&{filter:"invert(1)"},children:[(0,Gt.jsx)("span",{className:"sr-only",children:(0,Dt.__)("Close","extendify")}),(0,Gt.jsx)(Ft,{icon:On})]}),(0,Gt.jsx)("div",{className:"w-7/12 p-12 ".concat(c),children:s[0]}),(0,Gt.jsx)("div",{className:"hidden w-6/12 md:block ".concat(d),children:s[1]})]})})})]})})})}));function An(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Nn(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){An(i,r,o,a,s,"next",e)}function s(e){An(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Pn(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Tn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Tn(e,t)}(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 Tn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var In=function(){var e=Pn((0,o.useState)((0,Dt.__)("Install Extendify","extendify")),2),t=e[0],n=e[1],r=Pn((0,o.useState)(!1),2),i=r[0],a=r[1],s=Pn((0,o.useState)(!1),2),l=s[0],c=s[1],u=(0,o.useRef)(null),d=K((function(e){return e.markNoticeSeen})),f=K((function(e){return e.giveFreebieImports})),p=w((function(e){return e.removeAllModals})),h=function(){var e=Nn(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return p(),d("standalone","modalNotices"),e.next=4,de("stln-modal-x");case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,Gt.jsxs)(En,{ref:u,onClose:h,children:[(0,Gt.jsxs)("div",{children:[(0,Gt.jsx)("div",{className:"mb-10 flex items-center space-x-2 text-extendify-black",children:mn}),(0,Gt.jsx)("h3",{className:"text-xl",children:(0,Dt.__)("Get the brand new Extendify plugin today!","extendify")}),(0,Gt.jsx)("p",{className:"text-sm text-black",dangerouslySetInnerHTML:{__html:dn((0,Dt.sprintf)((0,Dt.__)("Install the new Extendify Library plugin to get the latest we have to offer — right from WordPress.org. Plus, well send you %1$s10 more imports%2$s. Nice.","extendify"),"<strong>","</strong>"))}}),(0,Gt.jsx)("div",{children:(0,Gt.jsxs)("button",{onClick:function(){n((0,Dt.__)("Installing...","extendify")),c(!0),Promise.all([de("stln-modal-install"),Zt(["extendify"]),new Promise((function(e){return setTimeout(e,1e3)}))]).then(Nn(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n((0,Dt.__)("Success! Reloading...","extendify")),a(!0),f(10),e.next=5,de("stln-modal-success");case 5:window.location.reload();case 6:case"end":return e.stop()}}),e)})))).catch(function(){var e=Nn(k().mark((function e(t){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.error(t),n((0,Dt.__)("Error. See console.","extendify")),e.next=4,de("stln-modal-fail");case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}())},ref:u,disabled:l,className:"button-extendify-main button-focus mt-2 inline-flex justify-center px-4 py-3",style:{minWidth:"225px"},children:[t,i||(0,Gt.jsx)(Rt.Icon,{icon:vn,size:24,className:"ml-2 w-6 flex-grow-0"})]})})]}),(0,Gt.jsx)("div",{className:"flex w-full justify-end rounded-tr-sm rounded-br-sm bg-extendify-secondary",children:(0,Gt.jsx)("img",{alt:(0,Dt.__)("Upgrade Now","extendify"),className:"roudned-br-sm max-w-full rounded-tr-sm",src:window.extendifyData.asset_path+"/modal-extendify-purple.png"})})]})};function Ln(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Mn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Mn(e,t)}(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 Mn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Rn(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Dn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Dn(e,t)}(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 Dn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Fn=function(e,t,n){var r=Rn((0,o.useState)(),2),i=r[0],a=r[1],s=w((function(e){return e.ready}));return(0,o.useLayoutEffect)((function(){if(n||s&&!i||window.extendifyData._canRehydrate){var r=K.getState().testGroup(e,t);a(r)}}),[e,t,i,s,n]),i};function Bn(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return zn(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return zn(e,t)}(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 zn(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Un(){var e=(0,o.useRef)(!1);return(0,o.useEffect)((function(){return e.current=!0,function(){return e.current=!1}})),e}var Vn=function(){var e=Bn((0,o.useState)(!1),2),t=e[0],n=e[1];return(0,o.useEffect)((function(){var e=function(){return n(window.location.search.indexOf("DEVMODE")>-1||window.location.search.indexOf("LOCALMODE")>-1)};return e(),window.addEventListener("popstate",e),function(){window.removeEventListener("popstate",e)}}),[]),t};function Hn(){return Hn=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Hn.apply(this,arguments)}function Wn(e,t){return Wn=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Wn(e,t)}var qn=new Map,$n=new WeakMap,Gn=0,Jn=void 0;function Kn(e){return Object.keys(e).sort().filter((function(t){return void 0!==e[t]})).map((function(t){return t+"_"+("root"===t?(n=e.root)?($n.has(n)||(Gn+=1,$n.set(n,Gn.toString())),$n.get(n)):"0":e[t]);var n})).toString()}function Xn(e,t,n,r){if(void 0===n&&(n={}),void 0===r&&(r=Jn),void 0===window.IntersectionObserver&&void 0!==r){var o=e.getBoundingClientRect();return t(r,{isIntersecting:r,target:e,intersectionRatio:"number"==typeof n.threshold?n.threshold:0,time:0,boundingClientRect:o,intersectionRect:o,rootBounds:o}),function(){}}var i=function(e){var t=Kn(e),n=qn.get(t);if(!n){var r,o=new Map,i=new IntersectionObserver((function(t){t.forEach((function(t){var n,i=t.isIntersecting&&r.some((function(e){return t.intersectionRatio>=e}));e.trackVisibility&&void 0===t.isVisible&&(t.isVisible=i),null==(n=o.get(t.target))||n.forEach((function(e){e(i,t)}))}))}),e);r=i.thresholds||(Array.isArray(e.threshold)?e.threshold:[e.threshold||0]),n={id:t,observer:i,elements:o},qn.set(t,n)}return n}(n),a=i.id,s=i.observer,l=i.elements,c=l.get(e)||[];return l.has(e)||l.set(e,c),c.push(t),s.observe(e),function(){c.splice(c.indexOf(t),1),0===c.length&&(l.delete(e),s.unobserve(e)),0===l.size&&(s.disconnect(),qn.delete(a))}}var Zn=["children","as","tag","triggerOnce","threshold","root","rootMargin","onChange","skip","trackVisibility","delay","initialInView","fallbackInView"];function Yn(e){return"function"!=typeof e.children}var Qn=function(e){var t,n;function r(t){var n;return(n=e.call(this,t)||this).node=null,n._unobserveCb=null,n.handleNode=function(e){n.node&&(n.unobserve(),e||n.props.triggerOnce||n.props.skip||n.setState({inView:!!n.props.initialInView,entry:void 0})),n.node=e||null,n.observeNode()},n.handleChange=function(e,t){e&&n.props.triggerOnce&&n.unobserve(),Yn(n.props)||n.setState({inView:e,entry:t}),n.props.onChange&&n.props.onChange(e,t)},n.state={inView:!!t.initialInView,entry:void 0},n}n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,Wn(t,n);var o=r.prototype;return o.componentDidUpdate=function(e){e.rootMargin===this.props.rootMargin&&e.root===this.props.root&&e.threshold===this.props.threshold&&e.skip===this.props.skip&&e.trackVisibility===this.props.trackVisibility&&e.delay===this.props.delay||(this.unobserve(),this.observeNode())},o.componentWillUnmount=function(){this.unobserve(),this.node=null},o.observeNode=function(){if(this.node&&!this.props.skip){var e=this.props,t=e.threshold,n=e.root,r=e.rootMargin,o=e.trackVisibility,i=e.delay,a=e.fallbackInView;this._unobserveCb=Xn(this.node,this.handleChange,{threshold:t,root:n,rootMargin:r,trackVisibility:o,delay:i},a)}},o.unobserve=function(){this._unobserveCb&&(this._unobserveCb(),this._unobserveCb=null)},o.render=function(){if(!Yn(this.props)){var e=this.state,t=e.inView,n=e.entry;return this.props.children({inView:t,entry:n,ref:this.handleNode})}var r=this.props,o=r.children,a=r.as,s=r.tag,l=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(r,Zn);return i.createElement(a||s||"div",Hn({ref:this.handleNode},l),o)},r}(i.Component);function er(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function tr(){return tr=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},tr.apply(this,arguments)}function nr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function rr(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?nr(Object(n),!0).forEach((function(t){or(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):nr(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function or(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}Qn.displayName="InView",Qn.defaultProps={threshold:0,triggerOnce:!1,initialInView:!1};const ir={breakpointCols:void 0,className:void 0,columnClassName:void 0,children:void 0,columnAttrs:void 0,column:void 0};class ar extends a().Component{constructor(e){let t;super(e),this.reCalculateColumnCount=this.reCalculateColumnCount.bind(this),this.reCalculateColumnCountDebounce=this.reCalculateColumnCountDebounce.bind(this),t=this.props.breakpointCols&&this.props.breakpointCols.default?this.props.breakpointCols.default:parseInt(this.props.breakpointCols)||2,this.state={columnCount:t}}componentDidMount(){this.reCalculateColumnCount(),window&&window.addEventListener("resize",this.reCalculateColumnCountDebounce)}componentDidUpdate(){this.reCalculateColumnCount()}componentWillUnmount(){window&&window.removeEventListener("resize",this.reCalculateColumnCountDebounce)}reCalculateColumnCountDebounce(){window&&window.requestAnimationFrame?(window.cancelAnimationFrame&&window.cancelAnimationFrame(this._lastRecalculateAnimationFrame),this._lastRecalculateAnimationFrame=window.requestAnimationFrame((()=>{this.reCalculateColumnCount()}))):this.reCalculateColumnCount()}reCalculateColumnCount(){const e=window&&window.innerWidth||1/0;let t=this.props.breakpointCols;"object"!=typeof t&&(t={default:parseInt(t)||2});let n=1/0,r=t.default||2;for(let o in t){const i=parseInt(o);i>0&&e<=i&&i<n&&(n=i,r=t[o])}r=Math.max(1,parseInt(r)||1),this.state.columnCount!==r&&this.setState({columnCount:r})}itemsInColumns(){const e=this.state.columnCount,t=new Array(e),n=a().Children.toArray(this.props.children);for(let r=0;r<n.length;r++){const o=r%e;t[o]||(t[o]=[]),t[o].push(n[r])}return t}renderColumns(){const{column:e,columnAttrs:t={},columnClassName:n}=this.props,r=this.itemsInColumns(),o=100/r.length+"%";let i=n;i&&"string"!=typeof i&&(this.logDeprecated('The property "columnClassName" requires a string'),void 0===i&&(i="my-masonry-grid_column"));const s=rr(rr(rr({},e),t),{},{style:rr(rr({},t.style),{},{width:o}),className:i});return r.map(((e,t)=>a().createElement("div",tr({},s,{key:t}),e)))}logDeprecated(e){console.error("[Masonry]",e)}render(){const e=this.props,{children:t,breakpointCols:n,columnClassName:r,columnAttrs:o,column:i,className:s}=e,l=er(e,["children","breakpointCols","columnClassName","columnAttrs","column","className"]);let c=s;return"string"!=typeof s&&(this.logDeprecated('The property "className" requires a string'),void 0===s&&(c="my-masonry-grid")),a().createElement("div",tr({},l,{className:c}),this.renderColumns())}}ar.defaultProps=ir;const sr=ar;function lr(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function cr(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){lr(i,r,o,a,s,"next",e)}function s(e){lr(i,r,o,a,s,"throw",e)}a(void 0)}))}}var ur=0,dr=function(e){var t=arguments;return cr(k().mark((function n(){var r,o,i,a,s;return k().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return o=t.length>1&&void 0!==t[1]?t[1]:{},ur++,i="pattern"===e.type?"8":"4",a="pattern"===e.type?"patternType":"layoutType",s=Object.assign({filterByFormula:hr(e,a),pageSize:i,categories:e.taxonomies,search:e.search,type:e.type,offset:"",initial:1===ur,request_count:ur,sdk_partner:null!==(r=K.getState().sdkPartner)&&void 0!==r?r:""},o),n.next=7,X.post("templates",s);case 7:return n.abrupt("return",n.sent);case 8:case"end":return n.stop()}}),n)})))()},fr=function(e){var t,n,r,o,i,a,s=null!==(t=null===(n=ce.getState())||void 0===n||null===(r=n.searchParams)||void 0===r?void 0:r.taxonomies)&&void 0!==t?t:[];return X.post("templates/".concat(e.id),{template_id:null==e?void 0:e.id,categories:s,maybe_import:!0,type:null===(o=e.fields)||void 0===o?void 0:o.type,sdk_partner:null!==(i=K.getState().sdkPartner)&&void 0!==i?i:"",pageSize:"1",template_name:null===(a=e.fields)||void 0===a?void 0:a.title})},pr=function(e){var t,n,r,o,i,a,s,l,c,u=null!==(t=null===(n=ce.getState())||void 0===n||null===(r=n.searchParams)||void 0===r?void 0:r.taxonomies)&&void 0!==t?t:[];return X.post("templates/".concat(e.id),{template_id:e.id,categories:u,imported:!0,basePattern:null!==(o=null!==(i=null===(a=e.fields)||void 0===a?void 0:a.basePattern)&&void 0!==i?i:null===(s=e.fields)||void 0===s?void 0:s.baseLayout)&&void 0!==o?o:"",type:e.fields.type,sdk_partner:null!==(l=K.getState().sdkPartner)&&void 0!==l?l:"",pageSize:"1",template_name:null===(c=e.fields)||void 0===c?void 0:c.title})},hr=function(e,t){var n,r,o=e.taxonomies,i=null==o||null===(n=o.siteType)||void 0===n?void 0:n.slug,a=['{type}="'.concat(t.replace("Type",""),'"'),'{siteType}="'.concat(i,'"')];return null!==(r=o[t])&&void 0!==r&&r.slug&&a.push("{".concat(t,'}="').concat(o[t].slug,'"')),"AND(".concat(a.join(", "),")").replace(/\r?\n|\r/g,"")};const mr=wp.blockEditor;function xr(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function yr(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){xr(i,r,o,a,s,"next",e)}function s(e){xr(i,r,o,a,s,"throw",e)}a(void 0)}))}}var vr=[],gr=[];function br(e){return wr.apply(this,arguments)}function wr(){return(wr=yr(k().mark((function e(t){var n,r,o,i,a,s,l;return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(s=(s=null!==(n=null==t||null===(r=t.fields)||void 0===r?void 0:r.required_plugins)&&void 0!==n?n:[]).filter((function(e){return"editorplus"!==e})),null!==(o=s)&&void 0!==o&&o.length){e.next=4;break}return e.abrupt("return",!1);case 4:if(null!==(i=vr)&&void 0!==i&&i.length){e.next=10;break}return e.t0=Object,e.next=8,Xt();case 8:e.t1=e.sent,vr=e.t0.keys.call(e.t0,e.t1);case 10:return l=!(null===(a=s)||void 0===a||!a.length)&&s.filter((function(e){return!vr.some((function(t){return t.includes(e)}))})),e.abrupt("return",l.length);case 12:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function jr(e){return kr.apply(this,arguments)}function kr(){return(kr=yr(k().mark((function e(t){var n,r,o,i,a,s,l;return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(s=(s=null!==(n=null==t||null===(r=t.fields)||void 0===r?void 0:r.required_plugins)&&void 0!==n?n:[]).filter((function(e){return"editorplus"!==e})),null!==(o=s)&&void 0!==o&&o.length){e.next=4;break}return e.abrupt("return",!1);case 4:if(null!==(i=gr)&&void 0!==i&&i.length){e.next=10;break}return e.t0=Object,e.next=8,Yt();case 8:e.t1=e.sent,gr=e.t0.values.call(e.t0,e.t1);case 10:if(!(l=!(null===(a=s)||void 0===a||!a.length)&&s.filter((function(e){return!gr.some((function(t){return t.includes(e)}))})))){e.next=16;break}return e.next=14,br(t);case 14:if(!e.sent){e.next=16;break}return e.abrupt("return",!1);case 16:return e.abrupt("return",null==l?void 0:l.length);case 17:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Sr=c(v((function(e){return{wantedTemplate:{},importOnLoad:!1,setWanted:function(t){return e({wantedTemplate:t})},removeWanted:function(){return e({wantedTemplate:{}})}}}),{name:"extendify-wanted-template"}));var Cr=function(e){return _r(e,"open")};function _r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"broken-event",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"open";K.setState({entryPoint:e}),window.dispatchEvent(new CustomEvent("extendify::".concat(t,"-library"),{detail:e,bubbles:!0}))}function Or(e){switch(e){case"editorplus":return"Editor Plus";case"ml-slider":return"MetaSlider"}return e}function Er(e){switch(e){case"siteType":return"Site Type";case"patternType":return"Content";case"layoutType":return"Page Types"}return e}function Ar(){var e,t,n,r=Sr((function(e){return e.wantedTemplate})),i=(null==r||null===(e=r.fields)||void 0===e?void 0:e.required_plugins)||[];return(0,Gt.jsxs)(Rt.Modal,{title:(0,Dt.__)("Plugins required","extendify"),isDismissible:!1,children:[(0,Gt.jsx)("p",{style:{maxWidth:"400px"},children:(0,Dt.sprintf)((0,Dt.__)("In order to add this %s to your site, the following plugins are required to be installed and activated.","extendify"),null!==(t=null==r||null===(n=r.fields)||void 0===n?void 0:n.type)&&void 0!==t?t:"template")}),(0,Gt.jsx)("ul",{children:i.filter((function(e){return"editorplus"!==e})).map((function(e){return(0,Gt.jsx)("li",{children:Or(e)},e)}))}),(0,Gt.jsx)("p",{style:{maxWidth:"400px",fontWeight:"bold"},children:(0,Dt.__)("Please contact a site admin for assistance in adding these plugins to your site.","extendify")}),(0,Gt.jsx)(Rt.Button,{isPrimary:!0,onClick:function(){return(0,o.render)((0,Gt.jsx)(da,{show:!0}),document.getElementById("extendify-root"))},style:{boxShadow:"none"},children:(0,Dt.__)("Return to library","extendify")})]})}const Nr=wp.data;function Pr(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Tr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Tr(e,t)}(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 Tr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Ir(){var e=Pr((0,o.useState)(!1),2),t=e[0],n=e[1],r=function(){};return(0,(0,Nr.select)("core/editor").isEditedPostDirty)()?(0,Gt.jsxs)(Rt.Modal,{title:(0,Dt.__)("Reload required","extendify"),isDismissible:!1,children:[(0,Gt.jsx)("p",{style:{maxWidth:"400px"},children:(0,Dt.__)("Just one more thing! We need to reload the page to continue.","extendify")}),(0,Gt.jsxs)(Rt.ButtonGroup,{children:[(0,Gt.jsx)(Rt.Button,{isPrimary:!0,onClick:r,disabled:t,children:(0,Dt.__)("Reload page","extendify")}),(0,Gt.jsx)(Rt.Button,{isSecondary:!0,onClick:function(){n(!0),(0,Nr.dispatch)("core/editor").savePost(),n(!1)},isBusy:t,style:{margin:"0 4px"},children:(0,Dt.__)("Save changes","extendify")})]})]}):null}function Lr(e){var t=e.msg;return(0,Gt.jsxs)(Rt.Modal,{style:{maxWidth:"500px"},title:(0,Dt.__)("Error Activating plugins","extendify"),isDismissible:!1,children:[(0,Dt.__)("You have encountered an error that we cannot recover from. Please try again.","extendify"),(0,Gt.jsx)("br",{}),(0,Gt.jsx)(Rt.Notice,{isDismissible:!1,status:"error",children:t}),(0,Gt.jsx)(Rt.Button,{isPrimary:!0,onClick:function(){(0,o.render)((0,Gt.jsx)(zr,{}),document.getElementById("extendify-root"))},children:(0,Dt.__)("Go back","extendify")})]})}function Mr(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Rr(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Mr(i,r,o,a,s,"next",e)}function s(e){Mr(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Dr(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Fr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Fr(e,t)}(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 Fr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Br(){var e,t=Dr((0,o.useState)(""),2),n=t[0],r=t[1],i=Sr((function(e){return e.wantedTemplate})),a=null==i||null===(e=i.fields)||void 0===e?void 0:e.required_plugins.filter((function(e){return"editorplus"!==e}));return Zt(a).then((function(){Sr.setState({importOnLoad:!0})})).then(Rr(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,new Promise((function(e){return setTimeout(e,1e3)}));case 2:(0,o.render)((0,Gt.jsx)(Ir,{}),document.getElementById("extendify-root"));case 3:case"end":return e.stop()}}),e)})))).catch((function(e){var t=e.response;r(t.data.message)})),n?(0,Gt.jsx)(Lr,{msg:n}):(0,Gt.jsx)(Rt.Modal,{title:(0,Dt.__)("Activating plugins","extendify"),isDismissible:!1,children:(0,Gt.jsx)(Rt.Button,{style:{width:"100%"},disabled:!0,isPrimary:!0,isBusy:!0,onClick:function(){},children:(0,Dt.__)("Activating...","extendify")})})}function zr(e){var t,n,r,i,a,s=Sr((function(e){return e.wantedTemplate})),l=(null==s||null===(t=s.fields)||void 0===t?void 0:t.required_plugins)||[];return null!==(n=K.getState())&&void 0!==n&&n.canActivatePlugins?(0,Gt.jsx)(Rt.Modal,{title:(0,Dt.__)("Activate required plugins","extendify"),isDismissible:!1,children:(0,Gt.jsxs)("div",{children:[(0,Gt.jsx)("p",{style:{maxWidth:"400px"},children:null!==(r=e.message)&&void 0!==r?r:(0,Dt.__)((0,Dt.sprintf)("There is just one more step. This %s requires the following plugins to be installed and activated:",null!==(i=null==s||null===(a=s.fields)||void 0===a?void 0:a.type)&&void 0!==i?i:"template"),"extendify")}),(0,Gt.jsx)("ul",{children:l.filter((function(e){return"editorplus"!==e})).map((function(e){return(0,Gt.jsx)("li",{children:Or(e)},e)}))}),(0,Gt.jsxs)(Rt.ButtonGroup,{children:[(0,Gt.jsx)(Rt.Button,{isPrimary:!0,onClick:function(){return(0,o.render)((0,Gt.jsx)(Br,{}),document.getElementById("extendify-root"))},children:(0,Dt.__)("Activate Plugins","extendify")}),e.showClose&&(0,Gt.jsx)(Rt.Button,{isTertiary:!0,onClick:function(){return(0,o.render)((0,Gt.jsx)(da,{show:!0}),document.getElementById("extendify-root"))},style:{boxShadow:"none",margin:"0 4px"},children:(0,Dt.__)("No thanks, return to library","extendify")})]})]})}):(0,Gt.jsx)(Ar,{})}function Ur(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var Vr=function(){var e,t=(e=k().mark((function e(t){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,jr(t);case 2:return e.t0=!e.sent,e.t1=function(){},e.t2=function(){return new Promise((function(){(0,o.render)((0,Gt.jsx)(zr,{showClose:!0}),document.getElementById("extendify-root"))}))},e.abrupt("return",{id:"hasPluginsActivated",pass:e.t0,allow:e.t1,deny:e.t2});case 6:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Ur(i,r,o,a,s,"next",e)}function s(e){Ur(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}();function Hr(e){var t=e.msg;return(0,Gt.jsxs)(Rt.Modal,{style:{maxWidth:"500px"},title:(0,Dt.__)("Error installing plugins","extendify"),isDismissible:!1,children:[(0,Dt.__)("You have encountered an error that we cannot recover from. Please try again.","extendify"),(0,Gt.jsx)("br",{}),(0,Gt.jsx)(Rt.Notice,{isDismissible:!1,status:"error",children:t}),(0,Gt.jsx)(Rt.Button,{isPrimary:!0,onClick:function(){return(0,o.render)((0,Gt.jsx)(Gr,{}),document.getElementById("extendify-root"))},children:(0,Dt.__)("Go back","extendify")})]})}function Wr(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return qr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return qr(e,t)}(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 qr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function $r(e){var t,n=e.requiredPlugins,r=Wr((0,o.useState)(""),2),i=r[0],a=r[1],s=Sr((function(e){return e.wantedTemplate})),l=null!=n?n:null==s||null===(t=s.fields)||void 0===t?void 0:t.required_plugins.filter((function(e){return"editorplus"!==e}));return Zt(l).then((function(){Sr.setState({importOnLoad:!0}),(0,o.render)((0,Gt.jsx)(Ir,{}),document.getElementById("extendify-root"))})).catch((function(e){var t=e.message;a(t)})),i?(0,Gt.jsx)(Hr,{msg:i}):(0,Gt.jsx)(Rt.Modal,{title:(0,Dt.__)("Installing plugins","extendify"),isDismissible:!1,children:(0,Gt.jsx)(Rt.Button,{style:{width:"100%"},disabled:!0,isPrimary:!0,isBusy:!0,onClick:function(){},children:(0,Dt.__)("Installing...","extendify")})})}function Gr(e){var t,n,r,i,a,s=e.forceOpen,l=e.buttonLabel,c=e.title,u=e.message,d=e.requiredPlugins,f=Sr((function(e){return e.wantedTemplate}));d=null!==(t=d)&&void 0!==t?t:null==f||null===(n=f.fields)||void 0===n?void 0:n.required_plugins;return null!==(r=K.getState())&&void 0!==r&&r.canInstallPlugins?(0,Gt.jsxs)(Rt.Modal,{title:null!=c?c:(0,Dt.__)("Install required plugins","extendify"),isDismissible:!1,children:[(0,Gt.jsx)("p",{style:{maxWidth:"400px"},children:null!=u?u:(0,Dt.__)((0,Dt.sprintf)("There is just one more step. This %s requires the following to be automatically installed and activated:",null!==(i=null==f||null===(a=f.fields)||void 0===a?void 0:a.type)&&void 0!==i?i:"template"),"extendify")}),(null==u?void 0:u.length)>0||(0,Gt.jsx)("ul",{children:d.filter((function(e){return"editorplus"!==e})).map((function(e){return(0,Gt.jsx)("li",{children:Or(e)},e)}))}),(0,Gt.jsxs)(Rt.ButtonGroup,{children:[(0,Gt.jsx)(Rt.Button,{isPrimary:!0,onClick:function(){return(0,o.render)((0,Gt.jsx)($r,{requiredPlugins:d}),document.getElementById("extendify-root"))},children:null!=l?l:(0,Dt.__)("Install Plugins","extendify")}),s||(0,Gt.jsx)(Rt.Button,{isTertiary:!0,onClick:function(){s||(0,o.render)((0,Gt.jsx)(da,{show:!0}),document.getElementById("extendify-root"))},style:{boxShadow:"none",margin:"0 4px"},children:(0,Dt.__)("No thanks, take me back","extendify")})]})]}):(0,Gt.jsx)(Ar,{})}function Jr(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}var Kr=function(){var e,t=(e=k().mark((function e(t){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,br(t);case 2:return e.t0=!e.sent,e.t1=function(){},e.t2=function(){return new Promise((function(){(0,o.render)((0,Gt.jsx)(Gr,{}),document.getElementById("extendify-root"))}))},e.abrupt("return",{id:"hasRequiredPlugins",pass:e.t0,allow:e.t1,deny:e.t2});case 6:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Jr(i,r,o,a,s,"next",e)}function s(e){Jr(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}();function Xr(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return Zr(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Zr(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}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 i,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw i}}}}function Zr(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Yr(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Qr(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Yr(i,r,o,a,s,"next",e)}function s(e){Yr(i,r,o,a,s,"throw",e)}a(void 0)}))}}function eo(e){return new ro(e)}function to(e){return function(){return new no(e.apply(this,arguments))}}function no(e){var t,n;function r(t,n){try{var i=e[t](n),a=i.value,s=a instanceof ro;Promise.resolve(s?a.wrapped:a).then((function(e){s?r("return"===t?"return":"next",e):o(i.done?"return":"normal",e)}),(function(e){r("throw",e)}))}catch(e){o("throw",e)}}function o(e,o){switch(e){case"return":t.resolve({value:o,done:!0});break;case"throw":t.reject(o);break;default:t.resolve({value:o,done:!1})}(t=t.next)?r(t.key,t.arg):n=null}this._invoke=function(e,o){return new Promise((function(i,a){var s={key:e,arg:o,resolve:i,reject:a,next:null};n?n=n.next=s:(t=n=s,r(e,o))}))},"function"!=typeof e.return&&(this.return=void 0)}function ro(e){this.wrapped=e}no.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},no.prototype.next=function(e){return this._invoke("next",e)},no.prototype.throw=function(e){return this._invoke("throw",e)},no.prototype.return=function(e){return this._invoke("return",e)};function oo(e){return io.apply(this,arguments)}function io(){return(io=Qr(k().mark((function e(t){var n,r;return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=ao(t.stack);case 1:return r=void 0,e.prev=3,e.next=6,n.next();case 6:r=e.sent,e.next=13;break;case 9:throw e.prev=9,e.t0=e.catch(3),t.reset(),"Middleware exited";case 13:if(!r.done){e.next=15;break}return e.abrupt("break",17);case 15:e.next=1;break;case 17:case"end":return e.stop()}}),e,null,[[3,9]])})))).apply(this,arguments)}function ao(e){return so.apply(this,arguments)}function so(){return(so=to(k().mark((function e(t){var n,r,o;return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=Xr(t),e.prev=1,n.s();case 3:if((r=n.n()).done){e.next=11;break}return o=r.value,e.next=7,eo(o());case 7:return e.next=9,e.sent;case 9:e.next=3;break;case 11:e.next=16;break;case 13:e.prev=13,e.t0=e.catch(1),n.e(e.t0);case 16:return e.prev=16,n.f(),e.finish(16);case 19:case"end":return e.stop()}}),e,null,[[1,13,16,19]])})))).apply(this,arguments)}function lo(e,t){var n=(0,Nr.dispatch)("core/block-editor"),r=n.insertBlocks,o=n.replaceBlock,i=(0,Nr.select)("core/block-editor"),a=i.getSelectedBlock,s=i.getBlockHierarchyRootClientId,l=i.getBlockIndex,c=i.getGlobalBlockCount,u=a()||{},d=u.clientId,f=u.name,p=u.attributes,h=d?s(d):"",m=(h?l(h):c())+1;return("core/paragraph"===f&&""===(null==p?void 0:p.content)?o(d,e):r(e,m)).then((function(){return window.dispatchEvent(new CustomEvent("extendify::template-inserted",{detail:{template:t},bubbles:!0}))}))}var co=n(306);function uo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return fo(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return fo(e,t)}(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 fo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var po=function(e){var t,n,r,i,a,s=e.template,l=null!=s&&null!==(t=s.fields)&&void 0!==t&&null!==(n=t.basePattern)&&void 0!==n&&n.length?null==s||null===(r=s.fields)||void 0===r?void 0:r.basePattern[0]:"",c=uo((0,o.useState)(l),2),u=c[0],d=c[1];return(0,o.useEffect)((function(){null!=l&&l.length&&u!==l&&setTimeout((function(){return d(l)}),1e3)}),[u,l]),l?(0,Gt.jsxs)("div",{className:"absolute bottom-0 left-0 z-50 mb-4 ml-4 flex items-center space-x-2 opacity-0 transition duration-100 group-hover:opacity-100 space-x-0.5",children:[(0,Gt.jsx)(co.CopyToClipboard,{text:null==s||null===(i=s.fields)||void 0===i?void 0:i.basePattern,onCopy:function(){return d((0,Dt.__)("Copied!","extendify"))},children:(0,Gt.jsx)("button",{className:"text-sm rounded-md border border-black bg-white py-1 px-2.5 font-medium text-black no-underline m-0 cursor-pointer",children:(0,Dt.sprintf)((0,Dt.__)("Base: %s","extendify"),u)})}),(0,Gt.jsx)("a",{target:"_blank",className:"text-sm rounded-md border border-black bg-white py-1 px-2.5 font-medium text-black no-underline m-0",href:null==s||null===(a=s.fields)||void 0===a?void 0:a.editURL,rel:"noreferrer",children:(0,Dt.__)("Edit","extendify")})]}):null};function ho(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function mo(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ho(Object(n),!0).forEach((function(t){xo(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ho(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function xo(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var yo=(0,o.forwardRef)((function(e,t){var n,r=e.isOpen,i=e.heading,a=e.onClose,s=e.children,l=(0,o.useRef)(null),c=w((function(e){return e.removeAllModals}));return a=null!==(n=a)&&void 0!==n?n:c,(0,Gt.jsx)(Ke,{appear:!0,show:r,as:o.Fragment,className:"extendify",children:(0,Gt.jsx)(Mt,{initialFocus:null!=t?t:l,onClose:a,children:(0,Gt.jsxs)("div",{className:"fixed inset-0 z-high flex",children:[(0,Gt.jsx)(Ke.Child,{as:o.Fragment,enter:"ease-out duration-200 transition",enterFrom:"opacity-0",enterTo:"opacity-100",children:(0,Gt.jsx)(Mt.Overlay,{className:"fixed inset-0 bg-black bg-opacity-40"})}),(0,Gt.jsx)(Ke.Child,{as:o.Fragment,enter:"ease-out duration-300 translate transform",enterFrom:"opacity-0 translate-y-4 sm:translate-y-5",enterTo:"opacity-100 translate-y-0",children:(0,Gt.jsx)("div",{className:"relative m-auto w-full",children:(0,Gt.jsxs)("div",{className:"relative m-auto w-full max-w-lg items-center justify-center rounded-sm bg-white shadow-modal",children:[i?(0,Gt.jsxs)("div",{className:"flex items-center justify-between border-b py-2 pl-6 pr-3 leading-none",children:[(0,Gt.jsx)("span",{className:"whitespace-nowrap text-base text-extendify-black",children:i}),(0,Gt.jsx)(vo,{onClick:a})]}):(0,Gt.jsx)("div",{className:"absolute top-0 right-0 block px-4 py-4 ",children:(0,Gt.jsx)(vo,{ref:l,onClick:a})}),(0,Gt.jsx)("div",{children:s})]})})})]})})})})),vo=(0,o.forwardRef)((function(e,t){return(0,Gt.jsx)(Rt.Button,mo(mo({},e),{},{icon:(0,Gt.jsx)(Ft,{icon:On}),ref:t,className:"text-extendify-black opacity-75 hover:opacity-100",showTooltip:!1,label:(0,Dt.__)("Close dialog","extendify")}))}));function go(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function bo(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){go(i,r,o,a,s,"next",e)}function s(e){go(i,r,o,a,s,"throw",e)}a(void 0)}))}}function wo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return jo(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return jo(e,t)}(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 jo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var ko=function(){var e=wo((0,o.useState)(!1),2),t=e[0],n=e[1],r=wo((0,o.useState)(!1),2),i=r[0],a=r[1],s=Vn(),l=function(){var e=bo(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t){e.next=2;break}return e.abrupt("return");case 2:if(n(!0),!i){e.next=11;break}return a(!1),K.setState({participatingTestsGroups:[]}),e.next=8,K.persist.rehydrate();case 8:return window.extendifyData._canRehydrate=!1,n(!1),e.abrupt("return");case 11:return K.persist.clearStorage(),e.next=14,new Promise((function(e){return setTimeout(e,1e3)}));case 14:window.extendifyData._canRehydrate=!0,a(!0),n(!1);case 17:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),c=function(){var e=bo(k().mark((function e(){var t;return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return(t=new URLSearchParams(window.location.search)).delete("LOCALMODE",1),t[t.has("DEVMODE")||s?"delete":"append"]("DEVMODE",1),window.history.replaceState(null,null,window.location.pathname+"?"+t.toString()),e.next=6,new Promise((function(e){return setTimeout(e,500)}));case 6:window.dispatchEvent(new Event("popstate")),ce.getState().resetTemplates(),ce.getState().updateSearchParams({}),te.persist.clearStorage(),te.persist.rehydrate(),ce.setState({taxonomyDefaultState:{}}),te.getState().fetchTaxonomies().then((function(){ce.getState().setupDefaultTaxonomies()}));case 13:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return window.extendifyData.devbuild?(0,Gt.jsxs)("section",{className:"p-6 flex flex-col space-y-6 border-l-8 border-extendify-secondary",children:[(0,Gt.jsxs)("div",{children:[(0,Gt.jsx)("p",{className:"text-base m-0 text-extendify-black",children:"Development Settings"}),(0,Gt.jsx)("p",{className:"text-sm italic m-0 text-gray-500",children:"Only available on dev builds"})]}),(0,Gt.jsxs)("div",{className:"flex space-x-2",children:[(0,Gt.jsxs)(Rt.Button,{isSecondary:!0,onClick:c,children:["Switch to ",s?"Live":"Dev"," Server"]}),(0,Gt.jsx)(Rt.Button,{isSecondary:!0,onClick:l,children:t?"Processing...":i?"OK! Press to rehydrate app":"Reset User Data"})]})]}):null};function So(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Co(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){So(i,r,o,a,s,"next",e)}function s(e){So(i,r,o,a,s,"throw",e)}a(void 0)}))}}function _o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Oo(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Oo(e,t)}(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 Oo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Eo(e){var t=e.actionCallback,n=e.initialFocus,r=K((function(e){return e.apiKey.length})),i=_o((0,o.useState)(""),2),a=i[0],s=i[1],l=_o((0,o.useState)(""),2),c=l[0],u=l[1],d=_o((0,o.useState)(""),2),f=d[0],p=d[1],h=_o((0,o.useState)("info"),2),m=h[0],x=h[1],y=_o((0,o.useState)(!1),2),v=y[0],g=y[1],b=_o((0,o.useState)(!1),2),w=b[0],j=b[1],S=(0,o.useRef)(null),C=(0,o.useRef)(null),_=Vn();(0,o.useEffect)((function(){return s(K.getState().email),function(){return x("info")}}),[]),(0,o.useEffect)((function(){var e;w&&(null==S||null===(e=S.current)||void 0===e||e.focus())}),[w]);var O=function(){var e=Co(k().mark((function e(t){var n,r,o,i,s;return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.preventDefault(),g(!0),p(""),e.next=5,N(a,c);case 5:if(n=e.sent,r=n.token,o=n.error,i=n.exception,void 0===(s=n.message)){e.next=15;break}return x("error"),g(!1),p(null!=s&&s.length?s:"Error: Are you interacting with the wrong server?"),e.abrupt("return");case 15:if(!o&&!i){e.next=20;break}return x("error"),g(!1),p(null!=o&&o.length?o:i),e.abrupt("return");case 20:if(r&&"string"==typeof r){e.next=25;break}return x("error"),g(!1),p((0,Dt.__)("Something went wrong","extendify")),e.abrupt("return");case 25:x("success"),p("Success!"),j(!0),g(!1),K.setState({email:a,apiKey:r});case 30:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return w?(0,Gt.jsxs)("section",{className:"space-y-6 p-6 text-center flex flex-col items-center",children:[(0,Gt.jsx)(Ft,{icon:kn,size:148}),(0,Gt.jsx)("p",{className:"text-center text-lg font-semibold m-0 text-extendify-black",children:(0,Dt.__)("You've signed in to Extendify","extendify")}),(0,Gt.jsx)(Rt.Button,{ref:S,className:"cursor-pointer rounded bg-extendify-main p-2 px-4 text-center text-white",onClick:t,children:(0,Dt.__)("View patterns","extendify")})]}):r?(0,Gt.jsxs)("section",{className:"w-full space-y-6 p-6",children:[(0,Gt.jsx)("p",{className:"text-base m-0 text-extendify-black",children:(0,Dt.__)("Account","extendify")}),(0,Gt.jsxs)("div",{className:"flex items-center justify-between",children:[(0,Gt.jsxs)("div",{className:"-ml-2 flex items-center space-x-2",children:[(0,Gt.jsx)(Ft,{icon:_n,size:48}),(0,Gt.jsx)("p",{className:"text-extendify-black",children:null!=a&&a.length?a:(0,Dt.__)("Logged In","extendify")})]}),_&&(0,Gt.jsx)(Rt.Button,{className:"cursor-pointer rounded bg-extendify-main px-4 py-3 text-center text-white hover:bg-extendify-main-dark",onClick:function(){u(""),K.setState({apiKey:""}),setTimeout((function(){var e;null==C||null===(e=C.current)||void 0===e||e.focus()}),0)},children:(0,Dt.__)("Sign out","extendify")})]})]}):(0,Gt.jsxs)("section",{className:"space-y-6 p-6 text-left",children:[(0,Gt.jsxs)("div",{children:[(0,Gt.jsx)("p",{className:"text-center text-lg font-semibold m-0 text-extendify-black",children:(0,Dt.__)("Sign in to Extendify","extendify")}),(0,Gt.jsxs)("p",{className:"space-x-1 text-center text-sm m-0 text-extendify-gray",children:[(0,Gt.jsx)("span",{children:(0,Dt.__)("Don't have an account?","extendify")}),(0,Gt.jsx)("a",{href:"https://extendify.com/pricing?utm_source=".concat(window.extendifyData.sdk_partner,"&utm_medium=library&utm_campaign=sign-in-form&utm_content=sign-up&utm_group=").concat(K.getState().activeTestGroupsUtmValue()),target:"_blank",onClick:Co(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,de("sign-up-link-from-login-modal-click");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),className:"underline hover:no-underline text-extendify-gray",rel:"noreferrer",children:(0,Dt.__)("Sign up","extendify")})]})]}),(0,Gt.jsxs)("form",{onSubmit:O,className:"flex flex-col items-center justify-center space-y-2",children:[(0,Gt.jsxs)("div",{className:"flex items-center",children:[(0,Gt.jsx)("label",{className:"sr-only",htmlFor:"extendify-login-email",children:(0,Dt.__)("Email address","extendify")}),(0,Gt.jsx)("input",{ref:n,id:"extendify-login-email",name:"extendify-login-email",style:{minWidth:"320px"},type:"email",className:"w-full rounded border-2 p-2",placeholder:(0,Dt.__)("Email address","extendify"),value:a.length?a:"",onChange:function(e){return s(e.target.value)}})]}),(0,Gt.jsxs)("div",{className:"flex items-center",children:[(0,Gt.jsx)("label",{className:"sr-only",htmlFor:"extendify-login-license",children:(0,Dt.__)("License key","extendify")}),(0,Gt.jsx)("input",{ref:C,id:"extendify-login-license",name:"extendify-login-license",style:{minWidth:"320px"},type:"text",className:"w-full rounded border-2 p-2",placeholder:(0,Dt.__)("License key","extendify"),value:c,onChange:function(e){return u(e.target.value)}})]}),(0,Gt.jsx)("div",{className:"flex justify-center pt-2",children:(0,Gt.jsxs)("button",{type:"submit",className:"relative flex w-72 max-w-full cursor-pointer justify-center rounded bg-extendify-main p-2 py-3 text-center text-base text-white hover:bg-extendify-main-dark ",children:[(0,Gt.jsx)("span",{children:(0,Dt.__)("Sign In","extendify")}),v&&(0,Gt.jsx)("div",{className:"absolute right-2.5",children:(0,Gt.jsx)(Rt.Spinner,{})})]})}),f&&(0,Gt.jsx)("div",{className:zt()({"border-gray-900 text-gray-900":"info"===m,"border-wp-alert-red text-wp-alert-red":"error"===m,"border-extendify-main text-extendify-main":"success"===m}),children:f}),(0,Gt.jsx)("div",{className:"pt-4 text-center",children:(0,Gt.jsx)("a",{target:"_blank",rel:"noreferrer",href:"https://extendify.com/guides/sign-in?utm_source=".concat(window.extendifyData.sdk_partner,"&utm_medium=library&utm_campaign=sign-in-form&utm_content=need-help&utm_group=").concat(K.getState().activeTestGroupsUtmValue()),onClick:Co(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,de("need-help-link-from-login-modal-click");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),className:"underline hover:no-underline text-sm text-extendify-gray",children:(0,Dt.__)("Need Help?","extendify")})})]})]})}var Ao=function(){var e=(0,o.useRef)(null),t=w((function(e){return e.removeAllModals}));return(0,Gt.jsx)(yo,{heading:(0,Dt.__)("Settings","extendify"),isOpen:!0,ref:e,children:(0,Gt.jsxs)("div",{className:"flex justify-center flex-col divide-y",children:[(0,Gt.jsx)(ko,{}),(0,Gt.jsx)(Eo,{initialFocus:e,actionCallback:t})]})})};function No(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Po(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){No(i,r,o,a,s,"next",e)}function s(e){No(i,r,o,a,s,"throw",e)}a(void 0)}))}}var To=function(){var e=w((function(e){return e.pushModal})),t=(0,o.useRef)(null);return(0,Gt.jsxs)(En,{isOpen:!0,ref:t,leftContainerBgColor:"bg-white",children:[(0,Gt.jsxs)("div",{children:[(0,Gt.jsx)("div",{className:"mb-5 flex items-center space-x-2 text-extendify-black",children:mn}),(0,Gt.jsx)("h3",{className:"mt-0 text-xl",children:(0,Dt.__)("You're out of imports","extendify")}),(0,Gt.jsx)("p",{className:"text-sm text-black",children:(0,Dt.__)("Sign up today and get unlimited access to our entire collection of patterns and page layouts.","extendify")}),(0,Gt.jsxs)("div",{children:[(0,Gt.jsxs)("a",{target:"_blank",ref:t,className:"button-extendify-main button-focus mt-2 inline-flex justify-center px-4 py-3",style:{minWidth:"225px"},href:"https://extendify.com/pricing/?utm_source=".concat(window.extendifyData.sdk_partner,"&utm_medium=library&utm_campaign=no-imports-modal&utm_content=get-unlimited-imports&utm_group=").concat(K.getState().activeTestGroupsUtmValue()),onClick:Po(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,de("no-imports-modal-click");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),rel:"noreferrer",children:[(0,Dt.__)("Get Unlimited Imports","extendify"),(0,Gt.jsx)(Rt.Icon,{icon:bn,size:24,className:"-mr-1"})]}),(0,Gt.jsxs)("p",{className:"mb-0 text-left text-sm text-extendify-gray",children:[(0,Dt.__)("Have an account?","extendify"),(0,Gt.jsx)(Rt.Button,{onClick:function(){return e((0,Gt.jsx)(Ao,{}))},className:"pl-2 text-sm text-extendify-gray underline hover:no-underline",children:(0,Dt.__)("Sign in","extendify")})]})]})]}),(0,Gt.jsxs)("div",{className:"flex h-full flex-col justify-center space-y-2 p-10 text-black",children:[(0,Gt.jsxs)("div",{className:"flex items-center space-x-3",children:[(0,Gt.jsx)(Rt.Icon,{icon:jn,size:24}),(0,Gt.jsx)("span",{className:"text-sm leading-none",children:(0,Dt.__)("Access to 100's of Patterns","extendify")})]}),(0,Gt.jsxs)("div",{className:"flex items-center space-x-3",children:[(0,Gt.jsx)(Rt.Icon,{icon:xn,size:24}),(0,Gt.jsx)("span",{className:"text-sm leading-none",children:(0,Dt.__)('Access to "Pro" catalog',"extendify")})]}),(0,Gt.jsxs)("div",{className:"flex items-center space-x-3",children:[(0,Gt.jsx)(Rt.Icon,{icon:wn,size:24}),(0,Gt.jsx)("span",{className:"text-sm leading-none",children:(0,Dt.__)("Beautiful full page layouts","extendify")})]}),(0,Gt.jsxs)("div",{className:"flex items-center space-x-3",children:[(0,Gt.jsx)(Rt.Icon,{icon:Sn,size:24}),(0,Gt.jsx)("span",{className:"text-sm leading-none",children:(0,Dt.__)("Fast and friendly support","extendify")})]}),(0,Gt.jsxs)("div",{className:"flex items-center space-x-3",children:[(0,Gt.jsx)(Rt.Icon,{icon:Cn,size:24}),(0,Gt.jsx)("span",{className:"text-sm leading-none",children:(0,Dt.__)("14-Day guarantee","extendify")})]})]})]})};function Io(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Lo(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Io(i,r,o,a,s,"next",e)}function s(e){Io(i,r,o,a,s,"throw",e)}a(void 0)}))}}var Mo=function(){var e=(0,o.useRef)(null);return(0,Gt.jsxs)(En,{isOpen:!0,invertedButtonColor:!0,ref:e,children:[(0,Gt.jsxs)("div",{children:[(0,Gt.jsx)("div",{className:"mb-5 flex items-center space-x-2 text-extendify-black",children:mn}),(0,Gt.jsx)("h3",{className:"mt-0 text-xl",children:(0,Dt.__)("Get unlimited access to all our Pro patterns & layouts","extendify")}),(0,Gt.jsx)("p",{className:"text-sm text-black",children:(0,Dt.__)("Upgrade to Extendify Pro and use all the patterns and layouts you'd like, including our exclusive Pro catalog.","extendify")}),(0,Gt.jsx)("div",{children:(0,Gt.jsxs)("a",{target:"_blank",ref:e,className:"button-extendify-main button-focus mt-2 inline-flex justify-center px-4 py-3",style:{minWidth:"225px"},href:"https://extendify.com/pricing/?utm_source=".concat(window.extendifyData.sdk_partner,"&utm_medium=library&utm_campaign=pro-modal&utm_content=upgrade-now&utm_group=").concat(K.getState().activeTestGroupsUtmValue()),onClick:Lo(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,de("pro-modal-click");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),rel:"noreferrer",children:[(0,Dt.__)("Upgrade Now","extendify"),(0,Gt.jsx)(Rt.Icon,{icon:bn,size:24,className:"-mr-1"})]})})]}),(0,Gt.jsx)("div",{className:"justify-endrounded-tr-sm flex w-full rounded-br-sm bg-black",children:(0,Gt.jsx)("img",{alt:(0,Dt.__)("Upgrade Now","extendify"),className:"max-w-full rounded-tr-sm rounded-br-sm",src:window.extendifyData.asset_path+"/modal-extendify-black.png"})})]})};function Ro(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Do(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Fo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Bo(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Bo(e,t)}(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 Bo(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var zo=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{hasRequiredPlugins:Kr,hasPluginsActivated:Vr,stack:[],check:function(t){var n=this;return Qr(k().mark((function r(){var o,i,a,s;return k().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:o=Xr(e),r.prev=1,o.s();case 3:if((i=o.n()).done){r.next=11;break}return a=i.value,r.next=7,n["".concat(a)](t);case 7:s=r.sent,n.stack.push(s.pass?s.allow:s.deny);case 9:r.next=3;break;case 11:r.next=16;break;case 13:r.prev=13,r.t0=r.catch(1),o.e(r.t0);case 16:return r.prev=16,o.f(),r.finish(16);case 19:case"end":return r.stop()}}),r,null,[[1,13,16,19]])})))()},reset:function(){this.stack=[]}}}(["hasRequiredPlugins","hasPluginsActivated"]);function Uo(e){var t,n,i,a,s=e.template,l=e.maxHeight,c=(0,o.useRef)(null),u=(0,o.useRef)(!1),d=K((function(e){return e.hasAvailableImports})),f=K((function(e){return e.apiKey.length})),p=w((function(e){return e.setOpen})),h=w((function(e){return e.pushModal})),m=w((function(e){return e.removeAllModals})),x=(0,o.useMemo)((function(){return(0,r.rawHandler)({HTML:s.fields.code})}),[s.fields.code]),y=Fo((0,o.useState)(!1),2),v=y[0],g=y[1],b=Vn(),j=Fo((0,o.useState)(0),2),S=j[0],C=j[1],_=function(){var e,t=(e=k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,zo.check(s);case 2:oo(zo).then((function(){setTimeout((function(){lo(x,s).then((function(){return m()})).then((function(){return p(!1)})).then((function(){return zo.reset()}))}),100)})).catch((function(){}));case 3:case"end":return e.stop()}}),e)})),function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Do(i,r,o,a,s,"next",e)}function s(e){Do(i,r,o,a,s,"throw",e)}a(void 0)}))});return function(){return t.apply(this,arguments)}}(),O=function(){var e;fr(s),null==s||null===(e=s.fields)||void 0===e||!e.pro||f?d()?_():h((0,Gt.jsx)(To,{})):h((0,Gt.jsx)(Mo,{}))};return(0,o.useEffect)((function(){var e,t,n,r,o=[],i=[];return e=window.requestAnimationFrame((function(){t=window.requestAnimationFrame((function(){c.current.querySelectorAll("iframe").forEach((function(e){var t=e.contentWindow.document.body,n=window.requestAnimationFrame((function(){var n=t.querySelector(".is-root-container");if(n&&(null==n?void 0:n.offsetHeight)){r=window.requestAnimationFrame((function(){e.contentWindow.dispatchEvent(new Event("resize"))}));var o=window.setTimeout((function(){e.contentWindow.dispatchEvent(new Event("resize"))}),2e3);i.push(o)}e.contentWindow.dispatchEvent(new Event("resize"))}));o.push(n)})),n=window.requestAnimationFrame((function(){window.dispatchEvent(new Event("resize")),g(!0)}))}))})),function(){[].concat(o,[e,t,n,r]).forEach((function(e){return window.cancelAnimationFrame(e)})),i.forEach((function(e){return window.clearTimeout(e)}))}}),[]),(0,o.useEffect)((function(){if(Number.isInteger(l)){var e=c.current,t=function(){var t=e.offsetHeight;e.style.transitionDuration=1.5*t+"ms",C(-1*Math.abs(t-l))},n=function(){var t=e.offsetHeight;e.style.transitionDuration=t/1.5+"ms",C(0)};return e.addEventListener("focus",t),e.addEventListener("mouseenter",t),e.addEventListener("blur",n),e.addEventListener("mouseleave",n),function(){e.removeEventListener("focus",t),e.removeEventListener("mouseenter",t),e.removeEventListener("blur",n),e.removeEventListener("mouseleave",n)}}}),[l]),(0,Gt.jsxs)("div",{className:"group relative",children:[(0,Gt.jsx)("div",{role:"button",tabIndex:"0","aria-label":(0,Dt.sprintf)((0,Dt.__)("Press to import %s","extendify"),null==s||null===(t=s.fields)||void 0===t?void 0:t.type),style:{maxHeight:l},className:"button-focus relative m-0 cursor-pointer overflow-hidden bg-gray-100 ease-in-out",onFocus:function(){u.current||(u.current=!0,Array.from(c.current.querySelectorAll('a, button, input, textarea, select, details, [tabindex]:not([tabindex="-1"])')).forEach((function(e){return e.setAttribute("tabIndex","-1")})))},onClick:O,onKeyDown:function(e){["Enter","Space"," "].includes(e.key)&&(e.stopPropagation(),e.preventDefault(),O())},children:(0,Gt.jsx)("div",{ref:c,style:{top:S,transitionProperty:"all"},className:zt()("with-light-shadow relative",(i={},Ro(i,"is-template--".concat(s.fields.status),(null==s||null===(n=s.fields)||void 0===n?void 0:n.status)&&b),Ro(i,"p-6 md:p-8",Number.isInteger(l)),i)),children:(0,Gt.jsx)(mr.BlockPreview,{blocks:x,live:!1,viewportWidth:1400})})}),b&&v&&(0,Gt.jsx)(po,{template:s}),(null==s||null===(a=s.fields)||void 0===a?void 0:a.pro)&&(0,Gt.jsx)("div",{className:"pointer-events-none absolute top-4 right-4 z-20 rounded-md border border-none bg-white bg-wp-theme-500 py-1 px-2.5 font-medium text-white no-underline shadow-sm",children:(0,Dt.__)("Pro","extendify")})]})}function Vo(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Ho(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Ho(e,t)}(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 Ho(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Wo=(0,o.memo)((function(){var e=Un(),t=ce((function(e){return e.templates})),n=ce((function(e){return e.appendTemplates})),r=Vo((0,o.useState)(""),2),a=r[0],s=r[1],l=Vo((0,o.useState)(!1),2),c=l[0],u=l[1],d=Vo((0,o.useState)(!1),2),f=d[0],p=d[1],h=function(e){var t=void 0===e?{}:e,n=t.threshold,r=t.delay,o=t.trackVisibility,a=t.rootMargin,s=t.root,l=t.triggerOnce,c=t.skip,u=t.initialInView,d=t.fallbackInView,f=i.useRef(),p=i.useState({inView:!!u}),h=p[0],m=p[1],x=i.useCallback((function(e){void 0!==f.current&&(f.current(),f.current=void 0),c||e&&(f.current=Xn(e,(function(e,t){m({inView:e,entry:t}),t.isIntersecting&&l&&f.current&&(f.current(),f.current=void 0)}),{root:s,rootMargin:a,threshold:n,trackVisibility:o,delay:r},d))}),[Array.isArray(n)?n.toString():n,s,a,l,c,o,d,r]);(0,i.useEffect)((function(){f.current||!h.entry||l||c||m({inView:!!u})}));var y=[x,h.inView,h.entry];return y.ref=y[0],y.inView=y[1],y.entry=y[2],y}(),m=Vo(h,2),x=m[0],y=m[1],v=ce((function(e){return e.searchParams})),g=w((function(e){return e.currentType})),b=ce((function(e){return e.resetTemplates})),j=w((function(e){return e.open})),k=te((function(e){return e.taxonomies})),S=ce((function(e){return e.updateType})),C=ce((function(e){return e.updateTaxonomies})),O=(0,o.useRef)(ce.getState().nextPage),E=(0,o.useRef)(ce.getState().searchParams),A="pattern"===E.current.type?"patternType":"layoutType",N=E.current.taxonomies[A],P=Fn("default-or-alt-sitetype",["A","B"]);(0,o.useEffect)((function(){return ce.subscribe((function(e){return e.nextPage}),(function(e){return O.current=e}))}),[]),(0,o.useEffect)((function(){return ce.subscribe((function(e){return e.searchParams}),(function(e){return E.current=e}))}),[]);var T,I=(0,o.useCallback)((function(){var t,r,o;if(P){s(""),u(!1);var i=(0,Dt.__)("Unknown error occured. Check browser console or contact support.","extendify"),a={offset:O.current},l="A"===P?{slug:"default"}:{slug:"defaultAlt"},c=null!==(t=E.current.taxonomies)&&void 0!==t&&null!==(r=t.siteType)&&void 0!==r&&null!==(o=r.slug)&&void 0!==o&&o.length?E.current.taxonomies.siteType:l,d=(0,_.cloneDeep)(E.current);d.taxonomies.siteType=c,dr(d,a).then((function(t){var r,o,i,a;e.current&&(null!=t&&null!==(r=t.error)&&void 0!==r&&r.length?s(null==t?void 0:t.error):(null==t||null===(o=t.records)||void 0===o?void 0:o.length)<=0?u(!0):v===E.current&&null!=t&&null!==(i=t.records)&&void 0!==i&&i.length&&(ce.setState({nextPage:null!==(a=null==t?void 0:t.offset)&&void 0!==a?a:""}),n(t.records),p(!1)))})).catch((function(t){e.current&&(console.error(t),s(i))}))}}),[n,e,v,P]);return(0,o.useEffect)((function(){0!==(null==t?void 0:t.length)||p(!0)}),[null==t?void 0:t.length,v]),(0,o.useEffect)((function(){var e;if(j&&null!=k&&null!==(e=k.patternType)&&void 0!==e&&e.length){var t=new URLSearchParams(window.location.search);if(t.has("ext-patternType")){var n=t.get("ext-patternType");t.delete("ext-patternType"),window.history.replaceState(null,null,window.location.pathname+"?"+t.toString());var r=k.patternType.find((function(e){return e.slug===n}));r&&(C({patternType:r}),S("pattern"))}}}),[j,k,S,C]),(0,o.useEffect)((function(){var e,t;if(null!==(e=Object.keys(null===(t=E.current)||void 0===t?void 0:t.taxonomies))&&void 0!==e&&e.length){if(!ce.getState().skipNextFetch)return I(),function(){return b()};ce.setState({skipNextFetch:!1})}}),[I,E,b]),(0,o.useEffect)((function(){O.current&&y&&I()}),[y,I,t]),a.length?(0,Gt.jsxs)("div",{className:"text-left",children:[(0,Gt.jsx)("h2",{className:"text-left",children:(0,Dt.__)("Server error","extendify")}),(0,Gt.jsx)("code",{className:"mb-4 block max-w-xl p-4",style:{minHeight:"10rem"},children:a}),(0,Gt.jsx)(Rt.Button,{isTertiary:!0,onClick:function(){return b()&&I()},children:(0,Dt.__)("Press here to reload")})]}):c?(0,Gt.jsx)("div",{className:"-mt-2 flex h-full w-full items-center justify-center sm:mt-0",children:(0,Gt.jsx)("h2",{className:"text-sm font-normal text-extendify-gray",children:(0,Dt.sprintf)("template"===E.current.type?(0,Dt.__)('We couldn\'t find any layouts in the "%s" category.',"extendify"):(0,Dt.__)('We couldn\'t find any patterns in the "%s" category.',"extendify"),null!==(T=null==N?void 0:N.title)&&void 0!==T?T:N.slug)})}):(0,Gt.jsxs)(Gt.Fragment,{children:[f&&(0,Gt.jsx)("div",{className:"-mt-2 flex h-full w-full items-center justify-center sm:mt-0",children:(0,Gt.jsx)(Rt.Spinner,{})}),(0,Gt.jsx)(qo,{type:g,templates:t,children:t.map((function(e){return(0,Gt.jsx)(Uo,{maxHeight:"template"===g?520:"none",template:e},e.id)}))}),O.current&&(0,Gt.jsxs)(Gt.Fragment,{children:[(0,Gt.jsx)("div",{className:"my-20",children:(0,Gt.jsx)(Rt.Spinner,{})}),(0,Gt.jsx)("div",{className:"relative flex -translate-y-full transform flex-col items-end justify-end",ref:x,style:{zIndex:-1,marginBottom:"-100%",height:"template"===g?"150vh":"75vh"}})]})]})})),qo=function(e){var t=e.type,n=e.children,r="relative min-h-screen z-10 pb-40 pt-0.5";if("template"===t)return(0,Gt.jsx)("div",{className:"grid gap-6 md:gap-8 lg:grid-cols-2 ".concat(r),children:n});return(0,Gt.jsx)(sr,{breakpointCols:{default:3,1600:2,860:1,599:2,400:1},className:"-ml-6 flex w-auto px-0.5 md:-ml-8 ".concat(r),columnClassName:"pl-6 md:pl-8 bg-clip-padding space-y-6 md:space-y-8",children:n})};function $o(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Go(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){$o(i,r,o,a,s,"next",e)}function s(e){$o(i,r,o,a,s,"throw",e)}a(void 0)}))}}var Jo=(0,o.memo)((function(){var e=K((function(e){return e.remainingImports})),t=K((function(e){return e.allowedImports})),n=e(),r=n>0?"has-imports":"no-imports",i=(0,o.useRef)();return(0,o.useEffect)((function(){if(t<1||!t){I().then((function(e){e=/^[1-9]\d*$/.test(e)?e:5,K.setState({allowedImports:e})})).catch((function(){return K.setState({allowedImports:5})}))}}),[t]),t?(0,Gt.jsxs)("div",{tabIndex:"0",className:"group relative",children:[(0,Gt.jsxs)("a",{target:"_blank",ref:i,rel:"noreferrer",className:zt()("button-focus hidden w-full justify-between rounded py-3 px-4 text-sm text-white no-underline sm:flex",{"bg-wp-theme-500 hover:bg-wp-theme-600":n>0,"bg-extendify-alert":!n}),onClick:Go(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,de("import-counter-click");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),href:"https://www.extendify.com/pricing/?utm_source=".concat(encodeURIComponent(window.extendifyData.sdk_partner),"&utm_medium=library&utm_campaign=import-counter&utm_content=get-more&utm_term=").concat(r,"&utm_group=").concat(K.getState().activeTestGroupsUtmValue()),children:[(0,Gt.jsxs)("span",{className:"flex items-center space-x-2 text-xs no-underline",children:[(0,Gt.jsx)(Ft,{icon:n>0?yn:fn,size:14}),(0,Gt.jsx)("span",{children:(0,Dt.sprintf)((0,Dt._n)("%s Import","%s Imports",n,"extendify"),n)})]}),(0,Gt.jsxs)("span",{className:"outline-none flex items-center text-sm font-medium text-white no-underline",children:[(0,Dt.__)("Get more","extendify"),(0,Gt.jsx)(Ft,{icon:bn,size:24,className:"-mr-1.5"})]})]}),(0,Gt.jsx)("div",{className:"extendify-bottom-arrow invisible absolute top-0 w-full -translate-y-full transform opacity-0 shadow-md transition-all delay-200 duration-300 ease-in-out group-hover:visible group-hover:-top-2.5 group-hover:opacity-100 group-focus:visible group-focus:-top-2.5 group-focus:opacity-100",tabIndex:"-1",children:(0,Gt.jsx)("a",{href:"https://www.extendify.com/pricing/?utm_source=".concat(encodeURIComponent(window.extendifyData.sdk_partner),"&utm_medium=library&utm_campaign=import-counter-tooltip&utm_content=get-50-off&utm_term=").concat(r,"&utm_group=").concat(K.getState().activeTestGroupsUtmValue()),className:"block bg-gray-900 text-white p-4 no-underline rounded bg-cover",onClick:Go(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,de("import-counter-tooltip-click");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),style:{backgroundImage:"url(".concat(window.extendifyData.asset_path,"/logo-tips.png)"),backgroundSize:"100% 100%"},children:(0,Gt.jsx)("span",{dangerouslySetInnerHTML:{__html:dn((0,Dt.sprintf)((0,Dt.__)("%1$sGet %2$s off%3$s Extendify Pro when you upgrade today!","extendify"),"<strong>","50%","</strong>"))}})})})]}):null}));function Ko(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Xo(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Ko(i,r,o,a,s,"next",e)}function s(e){Ko(i,r,o,a,s,"throw",e)}a(void 0)}))}}var Zo=(0,o.memo)((function(){var e=K((function(e){return e.remainingImports})),t=K((function(e){return e.allowedImports})),n=e(),r="https://www.extendify.com/pricing/?utm_source=".concat(encodeURIComponent(window.extendifyData.sdk_partner),"&utm_medium=library&utm_campaign=import-counter&utm_content=get-more&utm_term=").concat(n>0?"has-imports":"no-imports","&utm_group=").concat(K.getState().activeTestGroupsUtmValue());return(0,o.useEffect)((function(){if(t<1||!t){I().then((function(e){e=/^[1-9]\d*$/.test(e)?e:5,K.setState({allowedImports:e})})).catch((function(){return K.setState({allowedImports:5})}))}}),[t]),t?(0,Gt.jsxs)("a",{target:"_blank",className:"absolute bottom-4 left-0 mx-5 block bg-white rounded border-solid border border-gray-200 p-4 text-left no-underline group button-focus",rel:"noreferrer",onClick:Xo(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,de("fp-sb-click");case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)}))),href:r,children:[(0,Gt.jsxs)("span",{className:"flex -ml-1.5 space-x-1.5",children:[(0,Gt.jsx)(Ft,{icon:hn}),(0,Gt.jsx)("span",{className:"mb-1 text-gray-800 font-medium text-sm",children:(0,Dt.__)("Free Plan","extendify")})]}),(0,Gt.jsx)("span",{className:"text-gray-700 block ml-6 mb-1.5",children:(0,Dt.sprintf)((0,Dt._n)("You have %s free pattern and layout import remaining this month.","You have %s free pattern and layout imports remaining this month.",n,"extendify"),n)}),(0,Gt.jsx)("span",{className:zt()("block font-semibold ml-6 text-sm group-hover:underline",{"text-red-500":n<2,"text-wp-theme-500":n>1}),dangerouslySetInnerHTML:{__html:dn((0,Dt.sprintf)((0,Dt._x)("Upgrade today %s","The replacement string is a right arrow and context is not lost if removed.","extendify"),'<span class="text-base">\n '.concat(String.fromCharCode(8250),"\n </span>")))}})]}):null}));function Yo(e){return Array.isArray?Array.isArray(e):"[object Array]"===ii(e)}function Qo(e){return"string"==typeof e}function ei(e){return"number"==typeof e}function ti(e){return!0===e||!1===e||function(e){return ni(e)&&null!==e}(e)&&"[object Boolean]"==ii(e)}function ni(e){return"object"==typeof e}function ri(e){return null!=e}function oi(e){return!e.trim().length}function ii(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const ai=Object.prototype.hasOwnProperty;class si{constructor(e){this._keys=[],this._keyMap={};let t=0;e.forEach((e=>{let n=li(e);t+=n.weight,this._keys.push(n),this._keyMap[n.id]=n,t+=n.weight})),this._keys.forEach((e=>{e.weight/=t}))}get(e){return this._keyMap[e]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function li(e){let t=null,n=null,r=null,o=1;if(Qo(e)||Yo(e))r=e,t=ci(e),n=ui(e);else{if(!ai.call(e,"name"))throw new Error((e=>`Missing ${e} property in key`)("name"));const i=e.name;if(r=i,ai.call(e,"weight")&&(o=e.weight,o<=0))throw new Error((e=>`Property 'weight' in key '${e}' must be a positive integer`)(i));t=ci(i),n=ui(i)}return{path:t,id:n,weight:o,src:r}}function ci(e){return Yo(e)?e:e.split(".")}function ui(e){return Yo(e)?e.join("."):e}var di={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(e,t)=>e.score===t.score?e.idx<t.idx?-1:1:e.score<t.score?-1:1,includeMatches:!1,findAllMatches:!1,minMatchCharLength:1,location:0,threshold:.6,distance:100,...{useExtendedSearch:!1,getFn:function(e,t){let n=[],r=!1;const o=(e,t,i)=>{if(ri(e))if(t[i]){const a=e[t[i]];if(!ri(a))return;if(i===t.length-1&&(Qo(a)||ei(a)||ti(a)))n.push(function(e){return null==e?"":function(e){if("string"==typeof e)return e;let t=e+"";return"0"==t&&1/e==-1/0?"-0":t}(e)}(a));else if(Yo(a)){r=!0;for(let e=0,n=a.length;e<n;e+=1)o(a[e],t,i+1)}else t.length&&o(a,t,i+1)}else n.push(e)};return o(e,Qo(t)?t.split("."):t,0),r?n:n[0]},ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1}};const fi=/[^ ]+/g;class pi{constructor({getFn:e=di.getFn,fieldNormWeight:t=di.fieldNormWeight}={}){this.norm=function(e=1,t=3){const n=new Map,r=Math.pow(10,t);return{get(t){const o=t.match(fi).length;if(n.has(o))return n.get(o);const i=1/Math.pow(o,.5*e),a=parseFloat(Math.round(i*r)/r);return n.set(o,a),a},clear(){n.clear()}}}(t,3),this.getFn=e,this.isCreated=!1,this.setIndexRecords()}setSources(e=[]){this.docs=e}setIndexRecords(e=[]){this.records=e}setKeys(e=[]){this.keys=e,this._keysMap={},e.forEach(((e,t)=>{this._keysMap[e.id]=t}))}create(){!this.isCreated&&this.docs.length&&(this.isCreated=!0,Qo(this.docs[0])?this.docs.forEach(((e,t)=>{this._addString(e,t)})):this.docs.forEach(((e,t)=>{this._addObject(e,t)})),this.norm.clear())}add(e){const t=this.size();Qo(e)?this._addString(e,t):this._addObject(e,t)}removeAt(e){this.records.splice(e,1);for(let t=e,n=this.size();t<n;t+=1)this.records[t].i-=1}getValueForItemAtKeyId(e,t){return e[this._keysMap[t]]}size(){return this.records.length}_addString(e,t){if(!ri(e)||oi(e))return;let n={v:e,i:t,n:this.norm.get(e)};this.records.push(n)}_addObject(e,t){let n={i:t,$:{}};this.keys.forEach(((t,r)=>{let o=this.getFn(e,t.path);if(ri(o))if(Yo(o)){let e=[];const t=[{nestedArrIndex:-1,value:o}];for(;t.length;){const{nestedArrIndex:n,value:r}=t.pop();if(ri(r))if(Qo(r)&&!oi(r)){let t={v:r,i:n,n:this.norm.get(r)};e.push(t)}else Yo(r)&&r.forEach(((e,n)=>{t.push({nestedArrIndex:n,value:e})}))}n.$[r]=e}else if(!oi(o)){let e={v:o,n:this.norm.get(o)};n.$[r]=e}})),this.records.push(n)}toJSON(){return{keys:this.keys,records:this.records}}}function hi(e,t,{getFn:n=di.getFn,fieldNormWeight:r=di.fieldNormWeight}={}){const o=new pi({getFn:n,fieldNormWeight:r});return o.setKeys(e.map(li)),o.setSources(t),o.create(),o}function mi(e,{errors:t=0,currentLocation:n=0,expectedLocation:r=0,distance:o=di.distance,ignoreLocation:i=di.ignoreLocation}={}){const a=t/e.length;if(i)return a;const s=Math.abs(r-n);return o?a+s/o:s?1:a}const xi=32;function yi(e,t,n,{location:r=di.location,distance:o=di.distance,threshold:i=di.threshold,findAllMatches:a=di.findAllMatches,minMatchCharLength:s=di.minMatchCharLength,includeMatches:l=di.includeMatches,ignoreLocation:c=di.ignoreLocation}={}){if(t.length>xi)throw new Error(`Pattern length exceeds max of ${xi}.`);const u=t.length,d=e.length,f=Math.max(0,Math.min(r,d));let p=i,h=f;const m=s>1||l,x=m?Array(d):[];let y;for(;(y=e.indexOf(t,h))>-1;){let e=mi(t,{currentLocation:y,expectedLocation:f,distance:o,ignoreLocation:c});if(p=Math.min(e,p),h=y+u,m){let e=0;for(;e<u;)x[y+e]=1,e+=1}}h=-1;let v=[],g=1,b=u+d;const w=1<<u-1;for(let r=0;r<u;r+=1){let i=0,s=b;for(;i<s;){mi(t,{errors:r,currentLocation:f+s,expectedLocation:f,distance:o,ignoreLocation:c})<=p?i=s:b=s,s=Math.floor((b-i)/2+i)}b=s;let l=Math.max(1,f-s+1),y=a?d:Math.min(f+s,d)+u,j=Array(y+2);j[y+1]=(1<<r)-1;for(let i=y;i>=l;i-=1){let a=i-1,s=n[e.charAt(a)];if(m&&(x[a]=+!!s),j[i]=(j[i+1]<<1|1)&s,r&&(j[i]|=(v[i+1]|v[i])<<1|1|v[i+1]),j[i]&w&&(g=mi(t,{errors:r,currentLocation:a,expectedLocation:f,distance:o,ignoreLocation:c}),g<=p)){if(p=g,h=a,h<=f)break;l=Math.max(1,2*f-h)}}if(mi(t,{errors:r+1,currentLocation:f,expectedLocation:f,distance:o,ignoreLocation:c})>p)break;v=j}const j={isMatch:h>=0,score:Math.max(.001,g)};if(m){const e=function(e=[],t=di.minMatchCharLength){let n=[],r=-1,o=-1,i=0;for(let a=e.length;i<a;i+=1){let a=e[i];a&&-1===r?r=i:a||-1===r||(o=i-1,o-r+1>=t&&n.push([r,o]),r=-1)}return e[i-1]&&i-r>=t&&n.push([r,i-1]),n}(x,s);e.length?l&&(j.indices=e):j.isMatch=!1}return j}function vi(e){let t={};for(let n=0,r=e.length;n<r;n+=1){const o=e.charAt(n);t[o]=(t[o]||0)|1<<r-n-1}return t}class gi{constructor(e,{location:t=di.location,threshold:n=di.threshold,distance:r=di.distance,includeMatches:o=di.includeMatches,findAllMatches:i=di.findAllMatches,minMatchCharLength:a=di.minMatchCharLength,isCaseSensitive:s=di.isCaseSensitive,ignoreLocation:l=di.ignoreLocation}={}){if(this.options={location:t,threshold:n,distance:r,includeMatches:o,findAllMatches:i,minMatchCharLength:a,isCaseSensitive:s,ignoreLocation:l},this.pattern=s?e:e.toLowerCase(),this.chunks=[],!this.pattern.length)return;const c=(e,t)=>{this.chunks.push({pattern:e,alphabet:vi(e),startIndex:t})},u=this.pattern.length;if(u>xi){let e=0;const t=u%xi,n=u-t;for(;e<n;)c(this.pattern.substr(e,xi),e),e+=xi;if(t){const e=u-xi;c(this.pattern.substr(e),e)}}else c(this.pattern,0)}searchIn(e){const{isCaseSensitive:t,includeMatches:n}=this.options;if(t||(e=e.toLowerCase()),this.pattern===e){let t={isMatch:!0,score:0};return n&&(t.indices=[[0,e.length-1]]),t}const{location:r,distance:o,threshold:i,findAllMatches:a,minMatchCharLength:s,ignoreLocation:l}=this.options;let c=[],u=0,d=!1;this.chunks.forEach((({pattern:t,alphabet:f,startIndex:p})=>{const{isMatch:h,score:m,indices:x}=yi(e,t,f,{location:r+p,distance:o,threshold:i,findAllMatches:a,minMatchCharLength:s,includeMatches:n,ignoreLocation:l});h&&(d=!0),u+=m,h&&x&&(c=[...c,...x])}));let f={isMatch:d,score:d?u/this.chunks.length:1};return d&&n&&(f.indices=c),f}}class bi{constructor(e){this.pattern=e}static isMultiMatch(e){return wi(e,this.multiRegex)}static isSingleMatch(e){return wi(e,this.singleRegex)}search(){}}function wi(e,t){const n=e.match(t);return n?n[1]:null}class ji extends bi{constructor(e,{location:t=di.location,threshold:n=di.threshold,distance:r=di.distance,includeMatches:o=di.includeMatches,findAllMatches:i=di.findAllMatches,minMatchCharLength:a=di.minMatchCharLength,isCaseSensitive:s=di.isCaseSensitive,ignoreLocation:l=di.ignoreLocation}={}){super(e),this._bitapSearch=new gi(e,{location:t,threshold:n,distance:r,includeMatches:o,findAllMatches:i,minMatchCharLength:a,isCaseSensitive:s,ignoreLocation:l})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(e){return this._bitapSearch.searchIn(e)}}class ki extends bi{constructor(e){super(e)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(e){let t,n=0;const r=[],o=this.pattern.length;for(;(t=e.indexOf(this.pattern,n))>-1;)n=t+o,r.push([t,n-1]);const i=!!r.length;return{isMatch:i,score:i?0:1,indices:r}}}const Si=[class extends bi{constructor(e){super(e)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(e){const t=e===this.pattern;return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}},ki,class extends bi{constructor(e){super(e)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(e){const t=e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}},class extends bi{constructor(e){super(e)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(e){const t=!e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},class extends bi{constructor(e){super(e)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(e){const t=!e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},class extends bi{constructor(e){super(e)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(e){const t=e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[e.length-this.pattern.length,e.length-1]}}},class extends bi{constructor(e){super(e)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(e){const t=-1===e.indexOf(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},ji],Ci=Si.length,_i=/ +(?=([^\"]*\"[^\"]*\")*[^\"]*$)/;const Oi=new Set([ji.type,ki.type]);class Ei{constructor(e,{isCaseSensitive:t=di.isCaseSensitive,includeMatches:n=di.includeMatches,minMatchCharLength:r=di.minMatchCharLength,ignoreLocation:o=di.ignoreLocation,findAllMatches:i=di.findAllMatches,location:a=di.location,threshold:s=di.threshold,distance:l=di.distance}={}){this.query=null,this.options={isCaseSensitive:t,includeMatches:n,minMatchCharLength:r,findAllMatches:i,ignoreLocation:o,location:a,threshold:s,distance:l},this.pattern=t?e:e.toLowerCase(),this.query=function(e,t={}){return e.split("|").map((e=>{let n=e.trim().split(_i).filter((e=>e&&!!e.trim())),r=[];for(let e=0,o=n.length;e<o;e+=1){const o=n[e];let i=!1,a=-1;for(;!i&&++a<Ci;){const e=Si[a];let n=e.isMultiMatch(o);n&&(r.push(new e(n,t)),i=!0)}if(!i)for(a=-1;++a<Ci;){const e=Si[a];let n=e.isSingleMatch(o);if(n){r.push(new e(n,t));break}}}return r}))}(this.pattern,this.options)}static condition(e,t){return t.useExtendedSearch}searchIn(e){const t=this.query;if(!t)return{isMatch:!1,score:1};const{includeMatches:n,isCaseSensitive:r}=this.options;e=r?e:e.toLowerCase();let o=0,i=[],a=0;for(let r=0,s=t.length;r<s;r+=1){const s=t[r];i.length=0,o=0;for(let t=0,r=s.length;t<r;t+=1){const r=s[t],{isMatch:l,indices:c,score:u}=r.search(e);if(!l){a=0,o=0,i.length=0;break}if(o+=1,a+=u,n){const e=r.constructor.type;Oi.has(e)?i=[...i,...c]:i.push(c)}}if(o){let e={isMatch:!0,score:a/o};return n&&(e.indices=i),e}}return{isMatch:!1,score:1}}}const Ai=[];function Ni(e,t){for(let n=0,r=Ai.length;n<r;n+=1){let r=Ai[n];if(r.condition(e,t))return new r(e,t)}return new gi(e,t)}const Pi="$and",Ti="$or",Ii="$path",Li="$val",Mi=e=>!(!e[Pi]&&!e[Ti]),Ri=e=>({[Pi]:Object.keys(e).map((t=>({[t]:e[t]})))});function Di(e,t,{auto:n=!0}={}){const r=e=>{let o=Object.keys(e);const i=(e=>!!e[Ii])(e);if(!i&&o.length>1&&!Mi(e))return r(Ri(e));if((e=>!Yo(e)&&ni(e)&&!Mi(e))(e)){const r=i?e[Ii]:o[0],a=i?e[Li]:e[r];if(!Qo(a))throw new Error((e=>`Invalid value for key ${e}`)(r));const s={keyId:ui(r),pattern:a};return n&&(s.searcher=Ni(a,t)),s}let a={children:[],operator:o[0]};return o.forEach((t=>{const n=e[t];Yo(n)&&n.forEach((e=>{a.children.push(r(e))}))})),a};return Mi(e)||(e=Ri(e)),r(e)}function Fi(e,t){const n=e.matches;t.matches=[],ri(n)&&n.forEach((e=>{if(!ri(e.indices)||!e.indices.length)return;const{indices:n,value:r}=e;let o={indices:n,value:r};e.key&&(o.key=e.key.src),e.idx>-1&&(o.refIndex=e.idx),t.matches.push(o)}))}function Bi(e,t){t.score=e.score}class zi{constructor(e,t={},n){this.options={...di,...t},this.options.useExtendedSearch,this._keyStore=new si(this.options.keys),this.setCollection(e,n)}setCollection(e,t){if(this._docs=e,t&&!(t instanceof pi))throw new Error("Incorrect 'index' type");this._myIndex=t||hi(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(e){ri(e)&&(this._docs.push(e),this._myIndex.add(e))}remove(e=(()=>!1)){const t=[];for(let n=0,r=this._docs.length;n<r;n+=1){const o=this._docs[n];e(o,n)&&(this.removeAt(n),n-=1,r-=1,t.push(o))}return t}removeAt(e){this._docs.splice(e,1),this._myIndex.removeAt(e)}getIndex(){return this._myIndex}search(e,{limit:t=-1}={}){const{includeMatches:n,includeScore:r,shouldSort:o,sortFn:i,ignoreFieldNorm:a}=this.options;let s=Qo(e)?Qo(this._docs[0])?this._searchStringList(e):this._searchObjectList(e):this._searchLogical(e);return function(e,{ignoreFieldNorm:t=di.ignoreFieldNorm}){e.forEach((e=>{let n=1;e.matches.forEach((({key:e,norm:r,score:o})=>{const i=e?e.weight:null;n*=Math.pow(0===o&&i?Number.EPSILON:o,(i||1)*(t?1:r))})),e.score=n}))}(s,{ignoreFieldNorm:a}),o&&s.sort(i),ei(t)&&t>-1&&(s=s.slice(0,t)),function(e,t,{includeMatches:n=di.includeMatches,includeScore:r=di.includeScore}={}){const o=[];return n&&o.push(Fi),r&&o.push(Bi),e.map((e=>{const{idx:n}=e,r={item:t[n],refIndex:n};return o.length&&o.forEach((t=>{t(e,r)})),r}))}(s,this._docs,{includeMatches:n,includeScore:r})}_searchStringList(e){const t=Ni(e,this.options),{records:n}=this._myIndex,r=[];return n.forEach((({v:e,i:n,n:o})=>{if(!ri(e))return;const{isMatch:i,score:a,indices:s}=t.searchIn(e);i&&r.push({item:e,idx:n,matches:[{score:a,value:e,norm:o,indices:s}]})})),r}_searchLogical(e){const t=Di(e,this.options),n=(e,t,r)=>{if(!e.children){const{keyId:n,searcher:o}=e,i=this._findMatches({key:this._keyStore.get(n),value:this._myIndex.getValueForItemAtKeyId(t,n),searcher:o});return i&&i.length?[{idx:r,item:t,matches:i}]:[]}const o=[];for(let i=0,a=e.children.length;i<a;i+=1){const a=e.children[i],s=n(a,t,r);if(s.length)o.push(...s);else if(e.operator===Pi)return[]}return o},r=this._myIndex.records,o={},i=[];return r.forEach((({$:e,i:r})=>{if(ri(e)){let a=n(t,e,r);a.length&&(o[r]||(o[r]={idx:r,item:e,matches:[]},i.push(o[r])),a.forEach((({matches:e})=>{o[r].matches.push(...e)})))}})),i}_searchObjectList(e){const t=Ni(e,this.options),{keys:n,records:r}=this._myIndex,o=[];return r.forEach((({$:e,i:r})=>{if(!ri(e))return;let i=[];n.forEach(((n,r)=>{i.push(...this._findMatches({key:n,value:e[r],searcher:t}))})),i.length&&o.push({idx:r,item:e,matches:i})})),o}_findMatches({key:e,value:t,searcher:n}){if(!ri(t))return[];let r=[];if(Yo(t))t.forEach((({v:t,i:o,n:i})=>{if(!ri(t))return;const{isMatch:a,score:s,indices:l}=n.searchIn(t);a&&r.push({score:s,key:e,value:t,idx:o,norm:i,indices:l})}));else{const{v:o,n:i}=t,{isMatch:a,score:s,indices:l}=n.searchIn(o);a&&r.push({score:s,key:e,value:o,norm:i,indices:l})}return r}}function Ui(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Vi(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Vi(e,t)}(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 Vi(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}zi.version="6.5.3",zi.createIndex=hi,zi.parseIndex=function(e,{getFn:t=di.getFn,fieldNormWeight:n=di.fieldNormWeight}={}){const{keys:r,records:o}=e,i=new pi({getFn:t,fieldNormWeight:n});return i.setKeys(r),i.setIndexRecords(o),i},zi.config=di,zi.parseQuery=Di,function(...e){Ai.push(...e)}(Ei);var Hi=new Map,Wi=function(e){var t,n,r=e.value,i=e.setValue,a=e.terms,s=K((function(e){var t,n,r;return null!==(t=null===(n=e.preferredOptionsHistory)||void 0===n||null===(r=n.siteType)||void 0===r?void 0:r.filter((function(e){return e.slug})))&&void 0!==t?t:{}})),l=ce((function(e){return e.searchParams})),c=Ui((0,o.useState)(!1),2),u=c[0],d=c[1],f=(0,o.useRef)(),p=Ui((0,o.useState)({}),2),h=p[0],m=p[1],x=Ui((0,o.useState)(""),2),y=x[0],v=x[1],g=Ui((0,o.useState)([]),2),b=g[0],w=g[1],j=(0,o.useMemo)((function(){return a.filter((function(e){return null==e?void 0:e.featured})).sort((function(e,t){return e.slug<t.slug?-1:e.slug>t.slug?1:0}))}),[a]),k=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";if(Hi.has(e))w(Hi.get(e));else{var t=h.search(e);Hi.set(e,null!=t&&t.length?t.map((function(e){return e.item})):j),w(Hi.get(e))}},S="unknown"===r.slug||!(null!=r&&r.slug);(0,o.useEffect)((function(){m(new zi(a,{keys:["slug","title","keywords"],minMatchCharLength:2,threshold:.3}))}),[a]),(0,o.useEffect)((function(){null!=y&&y.length||w(j)}),[j,y]),(0,o.useEffect)((function(){u&&f.current.focus()}),[u]);var C,_=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,Dt.__)("Suggestions","extendify");return e===j&&(t=(0,Dt.__)("Examples","extendify")),(0,Gt.jsxs)(Gt.Fragment,{children:[(0,Gt.jsx)("h4",{className:"mt-4 mb-2 text-left text-xss font-medium uppercase text-gray-700",children:t}),(0,Gt.jsx)("ul",{className:"m-0",children:e.map((function(e){var t,n,r,o=null!==(t=null==e?void 0:e.title)&&void 0!==t?t:e.slug,a=(null==l||null===(n=l.taxonomies)||void 0===n||null===(r=n.siteType)||void 0===r?void 0:r.slug)===e.slug;return(0,Gt.jsx)("li",{className:"m-0 mb-1",children:(0,Gt.jsx)("button",{type:"button",className:zt()("m-0 w-full cursor-pointer bg-transparent pl-0 text-left text-sm hover:text-wp-theme-500",{"text-gray-800":!a}),onClick:function(){d(!1),i(e)},children:o})},e.slug+(null==e?void 0:e.title))}))})]})};return(0,Gt.jsxs)("div",{className:"w-full rounded bg-extendify-transparent-black",children:[(0,Gt.jsx)("button",{type:"button",onClick:function(){return d((function(e){return!e}))},className:"button-focus m-0 flex w-full cursor-pointer items-center justify-between rounded bg-transparent p-4 text-gray-800 hover:bg-extendify-transparent-black-100",children:(C=u?(0,Dt.__)("What kind of site is this?","extendify"):null!==(t=null!==(n=null==r?void 0:r.title)&&void 0!==n?n:r.slug)&&void 0!==t?t:"Unknown",(0,Gt.jsxs)(Gt.Fragment,{children:[(0,Gt.jsxs)("span",{className:"flex flex-col text-left",children:[(0,Gt.jsx)("span",{className:"mb-1 text-sm",children:(0,Dt.__)("Site Type","extendify")}),(0,Gt.jsx)("span",{className:"text-xs font-light",children:C})]}),(0,Gt.jsxs)("span",{className:"flex items-center space-x-4",children:[S&&!u&&(0,Gt.jsxs)("svg",{className:"text-wp-alert-red","aria-hidden":"true",focusable:"false",width:"21",height:"21",viewBox:"0 0 21 21",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,Gt.jsx)("path",{className:"stroke-current",d:"M10.9982 4.05371C7.66149 4.05371 4.95654 6.75866 4.95654 10.0954C4.95654 13.4321 7.66149 16.137 10.9982 16.137C14.3349 16.137 17.0399 13.4321 17.0399 10.0954C17.0399 6.75866 14.3349 4.05371 10.9982 4.05371V4.05371Z",strokeWidth:"1.25"}),(0,Gt.jsx)("path",{className:"fill-current",d:"M10.0205 12.8717C10.0205 12.3287 10.4508 11.8881 10.9938 11.8881C11.5368 11.8881 11.9774 12.3287 11.9774 12.8717C11.9774 13.4147 11.5368 13.8451 10.9938 13.8451C10.4508 13.8451 10.0205 13.4147 10.0205 12.8717Z"}),(0,Gt.jsx)("path",{className:"fill-current",d:"M11.6495 10.2591C11.6086 10.6177 11.3524 10.9148 10.9938 10.9148C10.625 10.9148 10.3791 10.6074 10.3483 10.2591L10.0205 7.31855C9.95901 6.81652 10.4918 6.34521 10.9938 6.34521C11.4959 6.34521 12.0286 6.81652 11.9774 7.31855L11.6495 10.2591Z"})]}),(0,Gt.jsx)("svg",{className:zt()("stroke-current text-gray-700",{"-translate-x-1 rotate-90 transform":u}),"aria-hidden":"true",focusable:"false",width:"8",height:"13",viewBox:"0 0 8 13",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,Gt.jsx)("path",{d:"M1.24194 11.5952L6.24194 6.09519L1.24194 0.595215",strokeWidth:"1.5"})})]})]}))}),u&&(0,Gt.jsxs)("div",{className:"max-h-96 overflow-y-auto p-4 pt-0",children:[(0,Gt.jsxs)("div",{className:"relative my-2",children:[(0,Gt.jsx)("label",{htmlFor:"site-type-search",className:"sr-only",children:(0,Dt.__)("Search","extendify")}),(0,Gt.jsx)("input",{ref:f,id:"site-type-search",value:null!=y?y:"",onChange:function(e){return t=e.target.value,v(t),void k(t);var t},type:"text",className:"button-focus m-0 w-full rounded border-0 bg-white p-3.5 py-2.5 text-sm",placeholder:(0,Dt.__)("Search","extendify")}),(0,Gt.jsx)("svg",{className:"pointer-events-none absolute top-2 right-2 hidden lg:block",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"24",height:"24",role:"img","aria-hidden":"true",focusable:"false",children:(0,Gt.jsx)("path",{d:"M13.5 6C10.5 6 8 8.5 8 11.5c0 1.1.3 2.1.9 3l-3.4 3 1 1.1 3.4-2.9c1 .9 2.2 1.4 3.6 1.4 3 0 5.5-2.5 5.5-5.5C19 8.5 16.5 6 13.5 6zm0 9.5c-2.2 0-4-1.8-4-4s1.8-4 4-4 4 1.8 4 4-1.8 4-4 4z"})})]}),(null==y?void 0:y.length)>1&&b===j&&(0,Gt.jsx)("p",{className:"text-left",children:(0,Dt.__)("Nothing found...","extendify")}),b===j&&Object.keys(s).length>0&&(0,Gt.jsx)("div",{className:"mb-8",children:_(s,(0,Dt.__)("Recent","extendify"))}),(null==b?void 0:b.length)>0&&(0,Gt.jsx)("div",{children:_(b)}),S?null:(0,Gt.jsx)("button",{type:"button",className:"mt-4 w-full cursor-pointer bg-transparent pl-0 text-left text-sm text-wp-theme-500 hover:text-wp-theme-500",onClick:function(){d(!1),i({slug:"",title:"Unknown"})},children:(0,Dt.__)("Reset","extendify")})]})]})};function qi(e){var t=e.taxType,n=e.taxonomies,r=e.taxLabel,o=ce((function(e){return e.updateTaxonomies})),i=ce((function(e){return e.searchParams}));return!(null!=n&&n.length)>0?null:(0,Gt.jsx)(Rt.PanelBody,{title:Er(null!=r?r:t),className:"ext-type-control p-0",initialOpen:!0,children:(0,Gt.jsx)(Rt.PanelRow,{children:(0,Gt.jsx)("div",{className:"relative w-full overflow-hidden",children:(0,Gt.jsx)("ul",{className:"m-0 w-full px-5 py-1",children:n.map((function(e){var n,r,a=(null==i||null===(n=i.taxonomies[t])||void 0===n?void 0:n.slug)===(null==e?void 0:e.slug);return(0,Gt.jsx)("li",{className:"m-0 w-full",children:(0,Gt.jsx)("button",{type:"button",className:"button-focus m-0 flex w-full cursor-pointer items-center justify-between bg-transparent px-0 py-2 text-left text-sm leading-none transition duration-200 hover:text-wp-theme-500",onClick:function(){return o((i=e,(r=t)in(n={})?Object.defineProperty(n,r,{value:i,enumerable:!0,configurable:!0,writable:!0}):n[r]=i,n));var n,r,i},children:(0,Gt.jsx)("span",{className:zt()({"text-wp-theme-500":a}),children:null!==(r=null==e?void 0:e.title)&&void 0!==r?r:e.slug})})},e.slug)}))})})})})}var $i=(0,o.memo)((function(){var e,t,n,r,o,i,a,s=te((function(e){return e.taxonomies})),l=ce((function(e){return e.searchParams})),c=K((function(e){return e.updatePreferredSiteType})),u=ce((function(e){return e.updateTaxonomies})),d=K((function(e){return e.apiKey})),f="pattern"===l.type?"patternType":"layoutType",p=!(null!=l&&null!==(e=l.taxonomies[f])&&void 0!==e&&null!==(t=e.slug)&&void 0!==t&&t.length),h=w((function(e){return e.setOpen})),m=Fn("import-counter-type",["A","B"]);return(0,Gt.jsxs)(Gt.Fragment,{children:[(0,Gt.jsx)("div",{className:"-ml-1.5 hidden px-5 text-extendify-black sm:flex",children:(0,Gt.jsx)(Ft,{icon:hn,size:40})}),(0,Gt.jsx)("div",{className:"flex md:hidden items-center justify-end -mt-5 mx-1",children:(0,Gt.jsx)(Rt.Button,{onClick:function(){return h(!1)},icon:(0,Gt.jsx)(Ft,{icon:On,size:24}),label:(0,Dt.__)("Close library","extendify")})}),(0,Gt.jsx)("div",{className:"px-5 hidden md:block",children:(0,Gt.jsxs)("button",{onClick:function(){return u((n={slug:"",title:"Featured"},(t=f)in(e={})?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e));var e,t,n},className:zt()("button-focus m-0 flex w-full cursor-pointer items-center space-x-1 bg-transparent px-0 py-2 text-left text-sm leading-none transition duration-200 hover:text-wp-theme-500",{"text-wp-theme-500":p}),children:[(0,Gt.jsx)(Ft,{icon:gn,size:24}),(0,Gt.jsx)("span",{className:"text-sm",children:(0,Dt.__)("Featured","extendify")})]})}),(0,Gt.jsx)("div",{className:"mx-6 px-5 pt-0.5 sm:mx-0 sm:mb-8 sm:mt-0",children:Object.keys(null!==(n=null==s?void 0:s.siteType)&&void 0!==n?n:{}).length>0&&(0,Gt.jsx)(Wi,{value:null!==(r=null==l||null===(o=l.taxonomies)||void 0===o?void 0:o.siteType)&&void 0!==r?r:"",setValue:function(e){c(e),u({siteType:e})},terms:s.siteType})}),(0,Gt.jsxs)("div",{className:"mt-px hidden flex-grow overflow-y-auto pb-36 pt-px sm:block space-y-6",children:[(0,Gt.jsx)(Rt.Panel,{className:"bg-transparent",children:(0,Gt.jsx)(qi,{taxType:f,taxonomies:null===(i=s[f])||void 0===i?void 0:i.filter((function(e){return!(null!=e&&e.designType)}))})}),(0,Gt.jsx)(Rt.Panel,{className:"bg-transparent",children:(0,Gt.jsx)(qi,{taxLabel:(0,Dt.__)("Design","extendify"),taxType:f,taxonomies:null===(a=s[f])||void 0===a?void 0:a.filter((function(e){return Boolean(null==e?void 0:e.designType)}))})})]}),!d.length&&(0,Gt.jsxs)("div",{className:"px-5",children:["A"===m?(0,Gt.jsx)(Jo,{}):null,"B"===m?(0,Gt.jsx)(Zo,{}):null]})]})}));function Gi(e){var t=e.children,n=w((function(e){return e.ready}));return(0,Gt.jsxs)(Gt.Fragment,{children:[(0,Gt.jsx)("aside",{className:"relative flex-shrink-0 border-r border-extendify-transparent-black-100 bg-extendify-transparent-white py-0 backdrop-blur-xl backdrop-saturate-200 backdrop-filter sm:py-5",children:(0,Gt.jsx)("div",{className:"flex h-full flex-col py-6 sm:w-72 sm:space-y-6 sm:py-0",children:n?t[0]:null})}),(0,Gt.jsx)("main",{id:"extendify-templates",className:"h-full w-full overflow-hidden bg-gray-50 pt-6 sm:pt-0",children:n?t[1]:null})]})}var Ji=function(e){var t=e.className,n=ce((function(e){return e.updateType})),r=w((function(e){var t;return null!==(t=null==e?void 0:e.currentType)&&void 0!==t?t:"pattern"}));return(0,Gt.jsxs)("div",{className:t,children:[(0,Gt.jsx)("h4",{className:"sr-only",children:(0,Dt.__)("Type select","extendify")}),(0,Gt.jsx)("button",{type:"button",className:zt()({"button-focus m-0 min-w-sm cursor-pointer rounded-tl-sm rounded-bl-sm border border-black py-2.5 px-4 text-xs leading-none":!0,"bg-gray-900 text-white":"pattern"===r,"bg-transparent text-black":"pattern"!==r}),onClick:function(){return n("pattern")},children:(0,Gt.jsx)("span",{className:"",children:(0,Dt.__)("Patterns","extendify")})}),(0,Gt.jsx)("button",{type:"button",className:zt()({"outline-none button-focus m-0 -ml-px min-w-sm cursor-pointer items-center rounded-tr-sm rounded-br-sm border border-black py-2.5 px-4 text-xs leading-none":!0,"bg-gray-900 text-white":"template"===r,"bg-transparent text-black":"template"!==r}),onClick:function(){return n("template")},children:(0,Gt.jsx)("span",{className:"",children:(0,Dt.__)("Page Layouts","extendify")})})]})},Ki=(0,o.memo)((function(e){var t=e.className,n=w((function(e){return e.setOpen})),r=w((function(e){return e.pushModal})),o=K((function(e){return e.apiKey.length}));return(0,Gt.jsx)("div",{className:t,children:(0,Gt.jsxs)("div",{className:"flex h-full items-center justify-between",children:[(0,Gt.jsx)("div",{className:"flex-1"}),(0,Gt.jsx)(Ji,{className:"flex flex-1 items-center justify-center"}),(0,Gt.jsxs)("div",{className:"flex flex-1 items-center justify-end",children:[(0,Gt.jsx)(Rt.Button,{onClick:function(){return r((0,Gt.jsx)(Ao,{}))},icon:(0,Gt.jsx)(Ft,{icon:_n,size:24}),label:(0,Dt.__)("Login and settings area","extendify"),children:o?"":(0,Dt.__)("Sign in","extendify")}),(0,Gt.jsx)(Rt.Button,{onClick:function(){return n(!1)},icon:(0,Gt.jsx)(Ft,{icon:On,size:24}),label:(0,Dt.__)("Close library","extendify")})]})]})})}));function Xi(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Zi(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Zi(e,t)}(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 Zi(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Yi=function(e){var t=e.setOpen,n=(0,o.useRef)(),r=ce((function(e){return e.searchParams})),i=Xi((0,o.useState)(!1),2),a=i[0],s=i[1],l=ce((function(e){return e.resetTemplates})),c=function(e){var t=Bn((0,o.useState)(!0),2),n=t[0],r=t[1],i=Bn((0,o.useState)(!1),2),a=i[0],s=i[1],l=Un(),c=(0,o.useRef)();return(0,o.useEffect)((function(){var e=function(){return r(!0)},t={passive:!0};return window.addEventListener("keydown",e,t),window.addEventListener("mousemove",e,t),window.addEventListener("touchmove",e,t),function(){window.removeEventListener("keydown",e),window.removeEventListener("mousemove",e),window.removeEventListener("touchmove",e)}}),[]),(0,o.useEffect)((function(){n&&(r(!1),s(!1),window.clearTimeout(c.current),c.current=window.setTimeout((function(){l.current&&s(!0)}),e))}),[n,e,l]),a}(3e5),u=(0,o.useCallback)((function(){s(!1),l()}),[l]);return(0,o.useEffect)((function(){c&&s(!0)}),[c]),(0,o.useEffect)((function(){s(!1)}),[r]),(0,o.useEffect)((function(){n.current&&(n.current.scrollTop=0)}),[r]),(0,Gt.jsx)("div",{className:"relative mx-auto flex h-full max-w-screen-4xl flex-col items-center",children:(0,Gt.jsxs)("div",{className:"w-full flex-grow overflow-hidden",children:[(0,Gt.jsx)("button",{onClick:function(){return document.getElementById("extendify-templates").querySelector("button").focus()},className:"extendify-skip-to-sr-link sr-only focus:not-sr-only focus:text-blue-500",children:(0,Dt.__)("Skip to templates","extendify")}),(0,Gt.jsx)("div",{className:"relative mx-auto h-full sm:flex",children:(0,Gt.jsxs)(Gi,{children:[(0,Gt.jsx)($i,{}),(0,Gt.jsxs)("div",{className:"relative z-30 flex h-full flex-col",children:[(0,Gt.jsx)(Ki,{className:"hidden h-20 w-full flex-shrink-0 px-6 sm:block md:px-8",hideLibrary:function(){return t(!1)}}),(0,Gt.jsx)("div",{ref:n,className:"z-20 flex-grow overflow-y-auto px-6 md:px-8",children:a?(0,Gt.jsx)(Qi,{callback:u}):(0,Gt.jsx)(Wo,{})})]})]})})]})})},Qi=function(e){var t=e.callback;return(0,Gt.jsxs)("div",{className:"flex h-full flex-col items-center justify-center",children:[(0,Gt.jsx)("p",{className:"mb-6 text-sm font-normal text-extendify-gray",children:(0,Dt.__)("We've added new stuff while you were away.","extendify")}),(0,Gt.jsx)(Rt.Button,{className:"components-button border-color-wp-theme-500 bg-wp-theme-500 text-white hover:bg-wp-theme-600",onClick:t,children:(0,Dt.__)("Reload")})]})};function ea(){var e=(0,o.useRef)(null),t=w((function(e){return e.open})),n=w((function(e){return e.setOpen})),r=function(){var e=Ln((0,o.useState)(null),2),t=e[0],n=e[1],r=w((function(e){return e.open})),i=w((function(e){return e.pushModal})),a=w((function(e){return e.removeAllModals}));return(0,o.useEffect)((function(){return w.subscribe((function(e){return e.modals}),(function(e){return n((null==e?void 0:e.length)>0?e[0]:null)}))}),[]),(0,o.useEffect)((function(){var e;if(r){var t={standalone:In},n=t[null!==(e=Object.keys(t).find((function(e){return"standalone"===e?!window.extendifyData.standalone&&!K.getState().modalNoticesDismissedAt[e]:!K.getState().modalNoticesDismissedAt[e]})))&&void 0!==e?e:null];n&&i((0,Gt.jsx)(n,{}))}else a()}),[r,i,a]),t}(),i=w((function(e){return e.ready})),a=Fn("notice-position",["A","B"]);return(0,Gt.jsx)(Ke,{appear:!0,show:t,as:o.Fragment,children:(0,Gt.jsx)(Mt,{as:"div",static:!0,className:"extendify",initialFocus:e,onClose:function(){return n(!1)},children:(0,Gt.jsx)("div",{className:"fixed inset-0 z-high m-auto h-screen w-screen overflow-y-auto sm:h-auto sm:w-auto",children:(0,Gt.jsxs)("div",{className:"flex min-h-screen items-end justify-center px-4 pt-4 pb-20 text-center sm:block sm:p-0",children:[(0,Gt.jsx)(Ke.Child,{as:o.Fragment,enter:"ease-out duration-300",enterFrom:"opacity-0",enterTo:"opacity-100",children:(0,Gt.jsx)(Mt.Overlay,{className:"fixed inset-0 bg-black bg-opacity-40 transition-opacity"})}),(0,Gt.jsx)(Ke.Child,{as:o.Fragment,enter:"ease-out duration-300",enterFrom:"opacity-0 translate-y-4 sm:translate-y-5",enterTo:"opacity-100 translate-y-0",children:(0,Gt.jsxs)("div",{ref:e,tabIndex:"0",onClick:function(e){return e.target===e.currentTarget&&n(!1)},className:"fixed inset-0 transform p-2 transition-all lg:absolute lg:overflow-hidden lg:p-16",children:["B"===a&&(0,Gt.jsx)(un,{className:"-mt-6"}),(0,Gt.jsx)(Yi,{}),i?(0,Gt.jsxs)(Gt.Fragment,{children:["A"===a&&(0,Gt.jsx)(un,{}),r]}):null]})})]})})})})}const ta=wp.compose,na=wp.hooks,ra=JSON.parse('{"t":["ext-absolute","ext-relative","ext-top-base","ext-top-lg","ext--top-base","ext--top-lg","ext-right-base","ext-right-lg","ext--right-base","ext--right-lg","ext-bottom-base","ext-bottom-lg","ext--bottom-base","ext--bottom-lg","ext-left-base","ext-left-lg","ext--left-base","ext--left-lg","ext-order-1","ext-order-2","ext-col-auto","ext-col-span-1","ext-col-span-2","ext-col-span-3","ext-col-span-4","ext-col-span-5","ext-col-span-6","ext-col-span-7","ext-col-span-8","ext-col-span-9","ext-col-span-10","ext-col-span-11","ext-col-span-12","ext-col-span-full","ext-col-start-1","ext-col-start-2","ext-col-start-3","ext-col-start-4","ext-col-start-5","ext-col-start-6","ext-col-start-7","ext-col-start-8","ext-col-start-9","ext-col-start-10","ext-col-start-11","ext-col-start-12","ext-col-start-13","ext-col-start-auto","ext-col-end-1","ext-col-end-2","ext-col-end-3","ext-col-end-4","ext-col-end-5","ext-col-end-6","ext-col-end-7","ext-col-end-8","ext-col-end-9","ext-col-end-10","ext-col-end-11","ext-col-end-12","ext-col-end-13","ext-col-end-auto","ext-row-auto","ext-row-span-1","ext-row-span-2","ext-row-span-3","ext-row-span-4","ext-row-span-5","ext-row-span-6","ext-row-span-full","ext-row-start-1","ext-row-start-2","ext-row-start-3","ext-row-start-4","ext-row-start-5","ext-row-start-6","ext-row-start-7","ext-row-start-auto","ext-row-end-1","ext-row-end-2","ext-row-end-3","ext-row-end-4","ext-row-end-5","ext-row-end-6","ext-row-end-7","ext-row-end-auto","ext-m-0","ext-m-auto","ext-m-base","ext-m-lg","ext--m-base","ext--m-lg","ext-mx-0","ext-mx-auto","ext-mx-base","ext-mx-lg","ext--mx-base","ext--mx-lg","ext-my-0","ext-my-auto","ext-my-base","ext-my-lg","ext--my-base","ext--my-lg","ext-mt-0","ext-mt-auto","ext-mt-base","ext-mt-lg","ext--mt-base","ext--mt-lg","ext-mr-0","ext-mr-auto","ext-mr-base","ext-mr-lg","ext--mr-base","ext--mr-lg","ext-mb-0","ext-mb-auto","ext-mb-base","ext-mb-lg","ext--mb-base","ext--mb-lg","ext-ml-0","ext-ml-auto","ext-ml-base","ext-ml-lg","ext--ml-base","ext--ml-lg","ext-block","ext-inline-block","ext-inline","ext-flex","ext-inline-flex","ext-grid","ext-inline-grid","ext-hidden","ext-w-auto","ext-w-full","ext-max-w-full","ext-flex-1","ext-flex-auto","ext-flex-initial","ext-flex-none","ext-flex-shrink-0","ext-flex-shrink","ext-flex-grow-0","ext-flex-grow","ext-list-none","ext-grid-cols-1","ext-grid-cols-2","ext-grid-cols-3","ext-grid-cols-4","ext-grid-cols-5","ext-grid-cols-6","ext-grid-cols-7","ext-grid-cols-8","ext-grid-cols-9","ext-grid-cols-10","ext-grid-cols-11","ext-grid-cols-12","ext-grid-cols-none","ext-grid-rows-1","ext-grid-rows-2","ext-grid-rows-3","ext-grid-rows-4","ext-grid-rows-5","ext-grid-rows-6","ext-grid-rows-none","ext-flex-row","ext-flex-row-reverse","ext-flex-col","ext-flex-col-reverse","ext-flex-wrap","ext-flex-wrap-reverse","ext-flex-nowrap","ext-items-start","ext-items-end","ext-items-center","ext-items-baseline","ext-items-stretch","ext-justify-start","ext-justify-end","ext-justify-center","ext-justify-between","ext-justify-around","ext-justify-evenly","ext-justify-items-start","ext-justify-items-end","ext-justify-items-center","ext-justify-items-stretch","ext-gap-0","ext-gap-base","ext-gap-lg","ext-gap-x-0","ext-gap-x-base","ext-gap-x-lg","ext-gap-y-0","ext-gap-y-base","ext-gap-y-lg","ext-justify-self-auto","ext-justify-self-start","ext-justify-self-end","ext-justify-self-center","ext-justify-self-stretch","ext-rounded-none","ext-rounded-full","ext-rounded-t-none","ext-rounded-t-full","ext-rounded-r-none","ext-rounded-r-full","ext-rounded-b-none","ext-rounded-b-full","ext-rounded-l-none","ext-rounded-l-full","ext-rounded-tl-none","ext-rounded-tl-full","ext-rounded-tr-none","ext-rounded-tr-full","ext-rounded-br-none","ext-rounded-br-full","ext-rounded-bl-none","ext-rounded-bl-full","ext-border-0","ext-border-t-0","ext-border-r-0","ext-border-b-0","ext-border-l-0","ext-p-0","ext-p-base","ext-p-lg","ext-px-0","ext-px-base","ext-px-lg","ext-py-0","ext-py-base","ext-py-lg","ext-pt-0","ext-pt-base","ext-pt-lg","ext-pr-0","ext-pr-base","ext-pr-lg","ext-pb-0","ext-pb-base","ext-pb-lg","ext-pl-0","ext-pl-base","ext-pl-lg","ext-text-left","ext-text-center","ext-text-right","ext-leading-none","ext-leading-tight","ext-leading-snug","ext-leading-normal","ext-leading-relaxed","ext-leading-loose","clip-path--rhombus","clip-path--diamond","clip-path--rhombus-alt","wp-block-columns[class*=\\"fullwidth-cols\\"]\\n","tablet\\\\:fullwidth-cols","desktop\\\\:fullwidth-cols","direction-rtl","direction-ltr","bring-to-front","text-stroke","text-stroke--primary","text-stroke--secondary","editor\\\\:no-caption","editor\\\\:no-inserter","editor\\\\:no-resize","editor\\\\:pointer-events-none","tablet\\\\:ext-absolute","tablet\\\\:ext-relative","tablet\\\\:ext-top-base","tablet\\\\:ext-top-lg","tablet\\\\:ext--top-base","tablet\\\\:ext--top-lg","tablet\\\\:ext-right-base","tablet\\\\:ext-right-lg","tablet\\\\:ext--right-base","tablet\\\\:ext--right-lg","tablet\\\\:ext-bottom-base","tablet\\\\:ext-bottom-lg","tablet\\\\:ext--bottom-base","tablet\\\\:ext--bottom-lg","tablet\\\\:ext-left-base","tablet\\\\:ext-left-lg","tablet\\\\:ext--left-base","tablet\\\\:ext--left-lg","tablet\\\\:ext-order-1","tablet\\\\:ext-order-2","tablet\\\\:ext-m-0","tablet\\\\:ext-m-auto","tablet\\\\:ext-m-base","tablet\\\\:ext-m-lg","tablet\\\\:ext--m-base","tablet\\\\:ext--m-lg","tablet\\\\:ext-mx-0","tablet\\\\:ext-mx-auto","tablet\\\\:ext-mx-base","tablet\\\\:ext-mx-lg","tablet\\\\:ext--mx-base","tablet\\\\:ext--mx-lg","tablet\\\\:ext-my-0","tablet\\\\:ext-my-auto","tablet\\\\:ext-my-base","tablet\\\\:ext-my-lg","tablet\\\\:ext--my-base","tablet\\\\:ext--my-lg","tablet\\\\:ext-mt-0","tablet\\\\:ext-mt-auto","tablet\\\\:ext-mt-base","tablet\\\\:ext-mt-lg","tablet\\\\:ext--mt-base","tablet\\\\:ext--mt-lg","tablet\\\\:ext-mr-0","tablet\\\\:ext-mr-auto","tablet\\\\:ext-mr-base","tablet\\\\:ext-mr-lg","tablet\\\\:ext--mr-base","tablet\\\\:ext--mr-lg","tablet\\\\:ext-mb-0","tablet\\\\:ext-mb-auto","tablet\\\\:ext-mb-base","tablet\\\\:ext-mb-lg","tablet\\\\:ext--mb-base","tablet\\\\:ext--mb-lg","tablet\\\\:ext-ml-0","tablet\\\\:ext-ml-auto","tablet\\\\:ext-ml-base","tablet\\\\:ext-ml-lg","tablet\\\\:ext--ml-base","tablet\\\\:ext--ml-lg","tablet\\\\:ext-block","tablet\\\\:ext-inline-block","tablet\\\\:ext-inline","tablet\\\\:ext-flex","tablet\\\\:ext-inline-flex","tablet\\\\:ext-grid","tablet\\\\:ext-inline-grid","tablet\\\\:ext-hidden","tablet\\\\:ext-w-auto","tablet\\\\:ext-w-full","tablet\\\\:ext-max-w-full","tablet\\\\:ext-flex-1","tablet\\\\:ext-flex-auto","tablet\\\\:ext-flex-initial","tablet\\\\:ext-flex-none","tablet\\\\:ext-flex-shrink-0","tablet\\\\:ext-flex-shrink","tablet\\\\:ext-flex-grow-0","tablet\\\\:ext-flex-grow","tablet\\\\:ext-list-none","tablet\\\\:ext-grid-cols-1","tablet\\\\:ext-grid-cols-2","tablet\\\\:ext-grid-cols-3","tablet\\\\:ext-grid-cols-4","tablet\\\\:ext-grid-cols-5","tablet\\\\:ext-grid-cols-6","tablet\\\\:ext-grid-cols-7","tablet\\\\:ext-grid-cols-8","tablet\\\\:ext-grid-cols-9","tablet\\\\:ext-grid-cols-10","tablet\\\\:ext-grid-cols-11","tablet\\\\:ext-grid-cols-12","tablet\\\\:ext-grid-cols-none","tablet\\\\:ext-flex-row","tablet\\\\:ext-flex-row-reverse","tablet\\\\:ext-flex-col","tablet\\\\:ext-flex-col-reverse","tablet\\\\:ext-flex-wrap","tablet\\\\:ext-flex-wrap-reverse","tablet\\\\:ext-flex-nowrap","tablet\\\\:ext-items-start","tablet\\\\:ext-items-end","tablet\\\\:ext-items-center","tablet\\\\:ext-items-baseline","tablet\\\\:ext-items-stretch","tablet\\\\:ext-justify-start","tablet\\\\:ext-justify-end","tablet\\\\:ext-justify-center","tablet\\\\:ext-justify-between","tablet\\\\:ext-justify-around","tablet\\\\:ext-justify-evenly","tablet\\\\:ext-justify-items-start","tablet\\\\:ext-justify-items-end","tablet\\\\:ext-justify-items-center","tablet\\\\:ext-justify-items-stretch","tablet\\\\:ext-justify-self-auto","tablet\\\\:ext-justify-self-start","tablet\\\\:ext-justify-self-end","tablet\\\\:ext-justify-self-center","tablet\\\\:ext-justify-self-stretch","tablet\\\\:ext-p-0","tablet\\\\:ext-p-base","tablet\\\\:ext-p-lg","tablet\\\\:ext-px-0","tablet\\\\:ext-px-base","tablet\\\\:ext-px-lg","tablet\\\\:ext-py-0","tablet\\\\:ext-py-base","tablet\\\\:ext-py-lg","tablet\\\\:ext-pt-0","tablet\\\\:ext-pt-base","tablet\\\\:ext-pt-lg","tablet\\\\:ext-pr-0","tablet\\\\:ext-pr-base","tablet\\\\:ext-pr-lg","tablet\\\\:ext-pb-0","tablet\\\\:ext-pb-base","tablet\\\\:ext-pb-lg","tablet\\\\:ext-pl-0","tablet\\\\:ext-pl-base","tablet\\\\:ext-pl-lg","tablet\\\\:ext-text-left","tablet\\\\:ext-text-center","tablet\\\\:ext-text-right","desktop\\\\:ext-absolute","desktop\\\\:ext-relative","desktop\\\\:ext-top-base","desktop\\\\:ext-top-lg","desktop\\\\:ext--top-base","desktop\\\\:ext--top-lg","desktop\\\\:ext-right-base","desktop\\\\:ext-right-lg","desktop\\\\:ext--right-base","desktop\\\\:ext--right-lg","desktop\\\\:ext-bottom-base","desktop\\\\:ext-bottom-lg","desktop\\\\:ext--bottom-base","desktop\\\\:ext--bottom-lg","desktop\\\\:ext-left-base","desktop\\\\:ext-left-lg","desktop\\\\:ext--left-base","desktop\\\\:ext--left-lg","desktop\\\\:ext-order-1","desktop\\\\:ext-order-2","desktop\\\\:ext-m-0","desktop\\\\:ext-m-auto","desktop\\\\:ext-m-base","desktop\\\\:ext-m-lg","desktop\\\\:ext--m-base","desktop\\\\:ext--m-lg","desktop\\\\:ext-mx-0","desktop\\\\:ext-mx-auto","desktop\\\\:ext-mx-base","desktop\\\\:ext-mx-lg","desktop\\\\:ext--mx-base","desktop\\\\:ext--mx-lg","desktop\\\\:ext-my-0","desktop\\\\:ext-my-auto","desktop\\\\:ext-my-base","desktop\\\\:ext-my-lg","desktop\\\\:ext--my-base","desktop\\\\:ext--my-lg","desktop\\\\:ext-mt-0","desktop\\\\:ext-mt-auto","desktop\\\\:ext-mt-base","desktop\\\\:ext-mt-lg","desktop\\\\:ext--mt-base","desktop\\\\:ext--mt-lg","desktop\\\\:ext-mr-0","desktop\\\\:ext-mr-auto","desktop\\\\:ext-mr-base","desktop\\\\:ext-mr-lg","desktop\\\\:ext--mr-base","desktop\\\\:ext--mr-lg","desktop\\\\:ext-mb-0","desktop\\\\:ext-mb-auto","desktop\\\\:ext-mb-base","desktop\\\\:ext-mb-lg","desktop\\\\:ext--mb-base","desktop\\\\:ext--mb-lg","desktop\\\\:ext-ml-0","desktop\\\\:ext-ml-auto","desktop\\\\:ext-ml-base","desktop\\\\:ext-ml-lg","desktop\\\\:ext--ml-base","desktop\\\\:ext--ml-lg","desktop\\\\:ext-block","desktop\\\\:ext-inline-block","desktop\\\\:ext-inline","desktop\\\\:ext-flex","desktop\\\\:ext-inline-flex","desktop\\\\:ext-grid","desktop\\\\:ext-inline-grid","desktop\\\\:ext-hidden","desktop\\\\:ext-w-auto","desktop\\\\:ext-w-full","desktop\\\\:ext-max-w-full","desktop\\\\:ext-flex-1","desktop\\\\:ext-flex-auto","desktop\\\\:ext-flex-initial","desktop\\\\:ext-flex-none","desktop\\\\:ext-flex-shrink-0","desktop\\\\:ext-flex-shrink","desktop\\\\:ext-flex-grow-0","desktop\\\\:ext-flex-grow","desktop\\\\:ext-list-none","desktop\\\\:ext-grid-cols-1","desktop\\\\:ext-grid-cols-2","desktop\\\\:ext-grid-cols-3","desktop\\\\:ext-grid-cols-4","desktop\\\\:ext-grid-cols-5","desktop\\\\:ext-grid-cols-6","desktop\\\\:ext-grid-cols-7","desktop\\\\:ext-grid-cols-8","desktop\\\\:ext-grid-cols-9","desktop\\\\:ext-grid-cols-10","desktop\\\\:ext-grid-cols-11","desktop\\\\:ext-grid-cols-12","desktop\\\\:ext-grid-cols-none","desktop\\\\:ext-flex-row","desktop\\\\:ext-flex-row-reverse","desktop\\\\:ext-flex-col","desktop\\\\:ext-flex-col-reverse","desktop\\\\:ext-flex-wrap","desktop\\\\:ext-flex-wrap-reverse","desktop\\\\:ext-flex-nowrap","desktop\\\\:ext-items-start","desktop\\\\:ext-items-end","desktop\\\\:ext-items-center","desktop\\\\:ext-items-baseline","desktop\\\\:ext-items-stretch","desktop\\\\:ext-justify-start","desktop\\\\:ext-justify-end","desktop\\\\:ext-justify-center","desktop\\\\:ext-justify-between","desktop\\\\:ext-justify-around","desktop\\\\:ext-justify-evenly","desktop\\\\:ext-justify-items-start","desktop\\\\:ext-justify-items-end","desktop\\\\:ext-justify-items-center","desktop\\\\:ext-justify-items-stretch","desktop\\\\:ext-justify-self-auto","desktop\\\\:ext-justify-self-start","desktop\\\\:ext-justify-self-end","desktop\\\\:ext-justify-self-center","desktop\\\\:ext-justify-self-stretch","desktop\\\\:ext-p-0","desktop\\\\:ext-p-base","desktop\\\\:ext-p-lg","desktop\\\\:ext-px-0","desktop\\\\:ext-px-base","desktop\\\\:ext-px-lg","desktop\\\\:ext-py-0","desktop\\\\:ext-py-base","desktop\\\\:ext-py-lg","desktop\\\\:ext-pt-0","desktop\\\\:ext-pt-base","desktop\\\\:ext-pt-lg","desktop\\\\:ext-pr-0","desktop\\\\:ext-pr-base","desktop\\\\:ext-pr-lg","desktop\\\\:ext-pb-0","desktop\\\\:ext-pb-base","desktop\\\\:ext-pb-lg","desktop\\\\:ext-pl-0","desktop\\\\:ext-pl-base","desktop\\\\:ext-pl-lg","desktop\\\\:ext-text-left","desktop\\\\:ext-text-center","desktop\\\\:ext-text-right"]}');function oa(e){return function(e){if(Array.isArray(e))return ia(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return ia(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ia(e,t)}(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 ia(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function aa(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function sa(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?aa(Object(n),!0).forEach((function(t){la(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):aa(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function la(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var ca=(0,ta.createHigherOrderComponent)((function(e){return function(t){var n,r,o=null!==(n=null==t||null===(r=t.attributes)||void 0===r?void 0:r.extUtilities)&&void 0!==n?n:[],i=ra.t.map((function(e){return e.replace(".","").replace(new RegExp("\\\\","g"),"")}));return(0,Gt.jsxs)(Gt.Fragment,{children:[(0,Gt.jsx)(e,sa({},t)),o&&(0,Gt.jsx)(mr.InspectorAdvancedControls,{children:(0,Gt.jsx)(Rt.FormTokenField,{label:(0,Dt.__)("Extendify Utilities","extendify"),tokenizeOnSpace:!0,value:o,suggestions:i,onChange:function(e){t.setAttributes({extUtilities:e})}})})]})}}),"utilityClassEdit");function ua(e,t,n){var r,o,i,a=null!==(r=null==e?void 0:e.className)&&void 0!==r?r:[],s=null!==(o=null==n?void 0:n.extUtilities)&&void 0!==o?o:[],l=null!==(i=null==n?void 0:n.className)&&void 0!==i?i:[];if(!s||!Object.keys(s).length)return e;var c=function(e){switch(Object.prototype.toString.call(e)){case"[object String]":return e.split(" ");case"[object Array]":return e;default:return[]}},u=new Set([].concat(oa(c(l)),oa(c(a)),oa(c(s))));return Object.assign({},e,{className:oa(u).join(" ")})}function da(e){var t=e.show,n=void 0!==t&&t,r=w((function(e){return e.open})),i=w((function(e){return e.setReady})),a=w((function(e){return e.setOpen})),s=(0,o.useCallback)((function(){return a(!0)}),[a]),l=(0,o.useCallback)((function(){return a(!1)}),[a]),c=ce((function(e){return e.initTemplateData})),u=te((function(e){return e.fetchTaxonomies})),d=K((function(e){return e._hasHydrated})),f=ce((function(e){return Object.keys(e.taxonomyDefaultState).length>0}));return(0,o.useEffect)((function(){r&&u().then((function(){ce.getState().setupDefaultTaxonomies()}))}),[r,u]),(0,o.useEffect)((function(){d&&f&&(c(),i(!0))}),[d,f,c,i]),(0,o.useEffect)((function(){var e=new URLSearchParams(window.location.search);(n||e.has("ext-open"))&&a(!0)}),[n,a]),(0,o.useEffect)((function(){ue().then((function(e){w.setState({metaData:e})}))}),[]),(0,o.useEffect)((function(){return window.addEventListener("extendify::open-library",s),window.addEventListener("extendify::close-library",l),function(){window.removeEventListener("extendify::open-library",s),window.removeEventListener("extendify::close-library",l)}}),[l,s]),(0,Gt.jsx)(ea,{})}(0,na.addFilter)("blocks.registerBlockType","extendify/utilities/attributes",(function(e){return sa(sa({},e),{},{attributes:sa(sa({},e.attributes),{},{extUtilities:{type:"array",default:[]}})})})),(0,na.addFilter)("blocks.registerBlockType","extendify/utilities/addEditProps",(function(e){var t=e.getEditWrapperProps;return e.getEditWrapperProps=function(n){var r={};return t&&(r=t(n)),ua(r,e,n)},e})),(0,na.addFilter)("editor.BlockEdit","extendify/utilities/advancedClassControls",ca),(0,na.addFilter)("blocks.getSaveContent.extraProps","extendify/utilities/extra-props",ua),(0,r.registerBlockCollection)("extendify",{title:"Extendify",icon:(0,Gt.jsx)(Rt.Icon,{icon:pn})});const fa=(0,o.createElement)(qt,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},(0,o.createElement)(Ht,{d:"M20.2 8v11c0 .7-.6 1.2-1.2 1.2H6v1.5h13c1.5 0 2.7-1.2 2.7-2.8V8h-1.5zM18 16.4V4.6c0-.9-.7-1.6-1.6-1.6H4.6C3.7 3 3 3.7 3 4.6v11.8c0 .9.7 1.6 1.6 1.6h11.8c.9 0 1.6-.7 1.6-1.6zM4.5 4.6c0-.1.1-.1.1-.1h11.8c.1 0 .1.1.1.1V12l-2.3-1.7c-.3-.2-.6-.2-.9 0l-2.9 2.1L8 11.3c-.2-.1-.5-.1-.7 0l-2.9 1.5V4.6zm0 11.8v-1.8l3.2-1.7 2.4 1.2c.2.1.5.1.8-.1l2.8-2 2.8 2v2.5c0 .1-.1.1-.1.1H4.6c0-.1-.1-.2-.1-.2z"})),pa=(0,o.createElement)(qt,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},(0,o.createElement)(Ht,{d:"M10 4.5a1 1 0 11-2 0 1 1 0 012 0zm1.5 0a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0zm2.25 7.5v-1A2.75 2.75 0 0011 8.25H7A2.75 2.75 0 004.25 11v1h1.5v-1c0-.69.56-1.25 1.25-1.25h4c.69 0 1.25.56 1.25 1.25v1h1.5zM4 20h9v-1.5H4V20zm16-4H4v-1.5h16V16z",fillRule:"evenodd",clipRule:"evenodd"})),ha=(0,o.createElement)(qt,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},(0,o.createElement)(Ht,{d:"M18.7 3H5.3C4 3 3 4 3 5.3v13.4C3 20 4 21 5.3 21h13.4c1.3 0 2.3-1 2.3-2.3V5.3C21 4 20 3 18.7 3zm.8 15.7c0 .4-.4.8-.8.8H5.3c-.4 0-.8-.4-.8-.8V5.3c0-.4.4-.8.8-.8h6.2v8.9l2.5-3.1 2.5 3.1V4.5h2.2c.4 0 .8.4.8.8v13.4z"})),ma=(0,o.createElement)(qt,{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24"},(0,o.createElement)(Ht,{d:"M18 4H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12-9.8c.4 0 .8-.3.9-.7l1.1-3h3.6l.5 1.7h1.9L13 9h-2.2l-3.4 9.5H6c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v12H20V6c0-1.1-.9-2-2-2zm-6 7l1.4 3.9h-2.7L12 11z"})),xa=(0,o.createElement)(qt,{xmlns:"https://www.w3.org/2000/svg",viewBox:"0 0 24 24"},(0,o.createElement)(Ht,{d:"M12 9c-.8 0-1.5.7-1.5 1.5S11.2 12 12 12s1.5-.7 1.5-1.5S12.8 9 12 9zm0-5c-3.6 0-6.5 2.8-6.5 6.2 0 .8.3 1.8.9 3.1.5 1.1 1.2 2.3 2 3.6.7 1 3 3.8 3.2 3.9l.4.5.4-.5c.2-.2 2.6-2.9 3.2-3.9.8-1.2 1.5-2.5 2-3.6.6-1.3.9-2.3.9-3.1C18.5 6.8 15.6 4 12 4zm4.3 8.7c-.5 1-1.1 2.2-1.9 3.4-.5.7-1.7 2.2-2.4 3-.7-.8-1.9-2.3-2.4-3-.8-1.2-1.4-2.3-1.9-3.3-.6-1.4-.7-2.2-.7-2.5 0-2.6 2.2-4.7 5-4.7s5 2.1 5 4.7c0 .2-.1 1-.7 2.4z"})),ya=(0,o.createElement)(qt,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},(0,o.createElement)(Ht,{d:"M19 6.5H5c-1.1 0-2 .9-2 2v7c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-7c0-1.1-.9-2-2-2zm.5 9c0 .3-.2.5-.5.5H5c-.3 0-.5-.2-.5-.5v-7c0-.3.2-.5.5-.5h14c.3 0 .5.2.5.5v7zM8 12.8h8v-1.5H8v1.5z"})),va=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"extendify/library","title":"Pattern Library","description":"Add block patterns and full page layouts with the Extendify Library.","keywords":["template","layouts"],"textdomain":"extendify","attributes":{"preview":{"type":"string"},"search":{"type":"string"}}}');(0,r.registerBlockType)(va,{icon:pn,category:"extendify",example:{attributes:{preview:window.extendifyData.asset_path+"/preview.png"}},variations:[{name:"gallery",icon:(0,Gt.jsx)(Ft,{icon:fa}),category:"extendify",attributes:{search:"gallery"},title:(0,Dt.__)("Gallery Patterns","extendify"),description:(0,Dt.__)("Add gallery patterns and layouts.","extendify"),keywords:[(0,Dt.__)("slideshow","extendify"),(0,Dt.__)("images","extendify")]},{name:"team",icon:(0,Gt.jsx)(Ft,{icon:pa}),category:"extendify",attributes:{search:"team"},title:(0,Dt.__)("Team Patterns","extendify"),description:(0,Dt.__)("Add team patterns and layouts.","extendify"),keywords:[(0,Dt._x)("crew","As in team","extendify"),(0,Dt.__)("colleagues","extendify"),(0,Dt.__)("members","extendify")]},{name:"hero",icon:(0,Gt.jsx)(Ft,{icon:ha}),category:"extendify",attributes:{search:"hero"},title:(0,Dt._x)("Hero Patterns","Hero being a hero/top section of a webpage","extendify"),description:(0,Dt.__)("Add hero patterns and layouts.","extendify"),keywords:[(0,Dt.__)("heading","extendify"),(0,Dt.__)("headline","extendify")]},{name:"text",icon:(0,Gt.jsx)(Ft,{icon:ma}),category:"extendify",attributes:{search:"text"},title:(0,Dt._x)("Text Patterns","Relating to patterns that feature text only","extendify"),description:(0,Dt.__)("Add text patterns and layouts.","extendify"),keywords:[(0,Dt.__)("simple","extendify"),(0,Dt.__)("paragraph","extendify")]},{name:"about",icon:(0,Gt.jsx)(Ft,{icon:xa}),category:"extendify",attributes:{search:"about"},title:(0,Dt._x)("About Page Patterns","Add patterns relating to an about us page","extendify"),description:(0,Dt.__)("About patterns and layouts.","extendify"),keywords:[(0,Dt.__)("who we are","extendify"),(0,Dt.__)("team","extendify")]},{name:"call-to-action",icon:(0,Gt.jsx)(Ft,{icon:ya}),category:"extendify",attributes:{search:"call-to-action"},title:(0,Dt.__)("Call to Action Patterns","extendify"),description:(0,Dt.__)("Add call to action patterns and layouts.","extendify"),keywords:[(0,Dt._x)("cta","Initialism for call to action","extendify"),(0,Dt.__)("callout","extendify"),(0,Dt.__)("buttons","extendify")]}],edit:function(e){var t=e.clientId,n=e.attributes,r=(0,Nr.useDispatch)("core/block-editor").removeBlock;return(0,o.useEffect)((function(){n.preview||(n.search&&ga(n.search),_r("library-block","open"),r(t))}),[t,n,r]),(0,Gt.jsx)("img",{style:{display:"block",maxWidth:"100%"},src:n.preview,alt:(0,Dt.sprintf)((0,Dt.__)("%s Pattern Library","extendify"),"Extendify")})}});var ga=function(e){var t=new URLSearchParams(window.location.search);t.append("ext-patternType",e),window.history.replaceState(null,null,window.location.pathname+"?"+t.toString())};const ba=wp.editPost,wa=wp.plugins;var ja=function(){return X.get("site-settings")},ka=function(e){var t=new FormData;return t.append("data",JSON.stringify(e)),X.post("site-settings",t,{headers:{"Content-Type":"multipart/form-data"}})};function Sa(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Ca(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Sa(i,r,o,a,s,"next",e)}function s(e){Sa(i,r,o,a,s,"throw",e)}a(void 0)}))}}var _a={getItem:function(){var e=Ca(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ja();case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),setItem:function(){var e=Ca(k().mark((function e(t,n){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ka(n);case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),removeItem:function(){}},Oa=c(v((function(){return{enabled:!0}}),{name:"extendify-sitesettings",getStorage:function(){return _a}}));function Ea(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Aa(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){Ea(i,r,o,a,s,"next",e)}function s(e){Ea(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Na(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Pa(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Pa(e,t)}(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 Pa(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}const Ta=function(){var e=(0,Nr.useSelect)((function(e){return e("core").canUser("create","users")})),t=Na((0,o.useState)(K.getState().enabled),2),n=t[0],r=t[1],i=Na((0,o.useState)(Oa.getState().enabled),2),a=i[0],s=i[1];function l(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=document.getElementById("extendify-templates-inserter-btn");t&&(e?t.classList.add("hidden"):t.classList.remove("hidden"))}function c(e){return u.apply(this,arguments)}function u(){return(u=Aa(k().mark((function e(t){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,K.setState({enabled:t});case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function d(e){return f.apply(this,arguments)}function f(){return(f=Aa(k().mark((function e(t){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Oa.setState({enabled:t});case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function p(e,t){return h.apply(this,arguments)}function h(){return h=Aa(k().mark((function e(t,n){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("global"!==n){e.next=5;break}return e.next=3,d(t);case 3:e.next=7;break;case 5:return e.next=7,c(t);case 7:case"end":return e.stop()}}),e)}))),h.apply(this,arguments)}function m(e){"global"===e?s((function(t){return p(!t,e),!t})):r((function(t){return l(!t),p(!t,e),!t}))}return(0,o.useEffect)((function(){l(!n)}),[n]),(0,Gt.jsxs)(Rt.Modal,{title:(0,Dt.__)("Extendify Settings","extendify"),onRequestClose:function(){var e=document.getElementById("extendify-util");(0,o.unmountComponentAtNode)(e)},children:[(0,Gt.jsx)(Rt.ToggleControl,{label:e?(0,Dt.__)("Enable the library for myself","extendify"):(0,Dt.__)("Enable the library","extendify"),help:(0,Dt.__)("Publish with hundreds of patterns & page layouts","extendify"),checked:n,onChange:function(){return m("user")}}),e&&(0,Gt.jsxs)(Gt.Fragment,{children:[(0,Gt.jsx)("br",{}),(0,Gt.jsx)(Rt.ToggleControl,{label:(0,Dt.__)("Allow all users to publish with the library"),help:(0,Dt.__)("Everyone publishes with patterns & page layouts","extendify"),checked:a,onChange:function(){return m("global")}})]})]})};var Ia=function(e){var t=e.anchorRef,n=e.onPressX,r=e.onClick,o=e.onClickOutside;return t.current?(0,Gt.jsx)(Rt.Popover,{anchorRef:t.current,shouldAnchorIncludePadding:!0,className:"extendify-tooltip-default",focusOnMount:!1,onFocusOutside:o,onClick:r,position:"bottom center",noArrow:!1,children:(0,Gt.jsxs)(Gt.Fragment,{children:[(0,Gt.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"0.5rem"},children:[(0,Gt.jsx)("span",{style:{textTransform:"uppercase",color:"#8b8b8b"},children:(0,Dt.__)("Monthly Imports","extendify")}),(0,Gt.jsx)(Rt.Button,{style:{color:"white",position:"relative",right:"-5px",padding:"0",minWidth:"0",height:"20px",width:"20px"},onClick:function(e){e.stopPropagation(),n()},icon:(0,Gt.jsx)(Ft,{icon:On,size:12}),showTooltip:!1,label:(0,Dt.__)("Close callout","extendify")})]}),(0,Gt.jsx)("div",{dangerouslySetInnerHTML:{__html:dn((0,Dt.sprintf)((0,Dt.__)("%1$sGood news!%2$s We've added more imports to your library. Enjoy!","extendify"),"<strong>","</strong>"))}})]})}):null};function La(e,t,n,r,o,i,a){try{var s=e[i](a),l=s.value}catch(e){return void n(e)}s.done?t(l):Promise.resolve(l).then(r,o)}function Ma(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){La(i,r,o,a,s,"next",e)}function s(e){La(i,r,o,a,s,"throw",e)}a(void 0)}))}}function Ra(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,o,i=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);a=!0);}catch(e){s=!0,o=e}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return Da(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Da(e,t)}(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 Da(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Fa,Ba,za=function(){var e=Ra((0,o.useState)(!1),2),t=e[0],n=e[1],r=(0,o.useRef)(!1),i=(0,o.useRef)(),a=K((function(e){return e.apiKey.length})),s=K((function(e){return e.imports>0})),l=w((function(e){return e.open})),c=K((function(e){return 0===e.allowedImports})),u=K((function(e){return e.uuid})),d=Fn("main-button-text",["A","B","C"],!0),f=Ra((0,o.useState)(),2),p=f[0],h=f[1],m=function(){var e=Ma(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,de("mb-tooltip-closed");case 2:n(!1),K.setState({allowedImports:-1});case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,o.useEffect)((function(){if(u){h(function(){switch(d){case"A":return(0,Dt.__)("Library","extendify");case"B":return(0,Dt.__)("Add section","extendify");case"C":return(0,Dt.__)("Add template","extendify")}}())}}),[d,u]),(0,o.useEffect)((function(){l&&(n(!1),r.current=!0),!a&&c&&s&&(r.current||n(!0),r.current=!0)}),[a,c,s,l]),(0,Gt.jsxs)(Gt.Fragment,{children:[(0,Gt.jsx)(Ua,{buttonRef:i,text:p}),t&&(0,Gt.jsx)(Ia,{anchorRef:i,onClick:Ma(k().mark((function e(){return k().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,de("mb-tooltip-pressed");case 2:Cr("main-button-tooltip");case 3:case"end":return e.stop()}}),e)}))),onPressX:m})]})},Ua=function(e){var t=e.buttonRef,n=e.text;return(0,Gt.jsx)(Rt.Button,{isPrimary:!0,ref:t,style:{padding:"12px"},onClick:function(){return Cr("main-button")},id:"extendify-templates-inserter-btn",icon:(0,Gt.jsx)(Ft,{style:{marginRight:"4px"},icon:hn,size:24}),children:n})},Va=function(){return(0,Gt.jsx)(Rt.Button,{id:"extendify-cta-button",style:{margin:"1rem 1rem 0",width:"calc(100% - 2rem)",justifyContent:" center"},onClick:function(){return Cr("patterns-cta")},isSecondary:!0,children:(0,Dt.__)("Discover patterns in Extendify Library","extendify")})},Ha=null===(Fa=window.extendifyData)||void 0===Fa||null===(Ba=Fa.user)||void 0===Ba?void 0:Ba.state,Wa=function(){return null===window.extendifyData.user||(null==Ha?void 0:Ha.isAdmin)},qa=function(){var e,t,n;return null===window.extendifyData.sitesettings||(null===(e=window.extendifyData)||void 0===e||null===(t=e.sitesettings)||void 0===t||null===(n=t.state)||void 0===n?void 0:n.enabled)};if(window._wpLoadBlockEditor)var $a=window.wp.data.subscribe((function(){requestAnimationFrame((function(){if((qa()||Wa())&&!document.getElementById("extendify-templates-inserter")&&document.querySelector(".edit-post-header-toolbar")){var e=Object.assign(document.createElement("div"),{id:"extendify-templates-inserter"});document.querySelector(".edit-post-header-toolbar").append(e),(0,o.render)((0,Gt.jsx)(za,{}),e),(null===window.extendifyData.user?qa():null==Ha?void 0:Ha.enabled)||document.getElementById("extendify-templates-inserter-btn").classList.add("hidden"),$a()}}))}));window._wpLoadBlockEditor&&window.wp.data.subscribe((function(){requestAnimationFrame((function(){if((qa()||Wa())&&document.querySelector("[id$=patterns-view]")&&!document.getElementById("extendify-cta-button")){var e=Object.assign(document.createElement("div"),{id:"extendify-cta-button-container"});document.querySelector("[id$=patterns-view]").prepend(e),(0,o.render)((0,Gt.jsx)(Va,{}),e)}}))}));window._wpLoadBlockEditor&&(0,wa.registerPlugin)("extendify-settings-enable-disable",{render:function(){return(0,Gt.jsx)(Gt.Fragment,{children:(0,Gt.jsxs)(ba.PluginSidebarMoreMenuItem,{onClick:function(){var e=document.getElementById("extendify-util");(0,o.render)((0,Gt.jsx)(Ta,{}),e)},icon:(0,Gt.jsx)(Ft,{icon:hn,size:24}),children:[" ",(0,Dt.__)("Extendify","extendify")]})})}}),[{register:function(){var e=(0,Nr.dispatch)("core/notices").createNotice,t=K.getState().incrementImports;window.addEventListener("extendify::template-inserted",(function(n){e("info",(0,Dt.__)("Page layout added"),{isDismissible:!0,type:"snackbar"}),setTimeout((function(){var e;t(),pr(null===(e=n.detail)||void 0===e?void 0:e.template)}),0)}))}},{register:function(){var e=this;window.addEventListener("extendify::softerror-encountered",(function(t){e[(0,_.camelCase)(t.detail.type)](t.detail)}))},versionOutdated:function(e){(0,o.render)((0,Gt.jsx)(Gr,{title:e.data.title,requiredPlugins:["extendify"],message:e.data.message,buttonLabel:e.data.buttonLabel,forceOpen:!0}),document.getElementById("extendify-root"))}}].forEach((function(e){return e.register()})),window._wpLoadBlockEditor&&window.wp.domReady((function(){var e=Object.assign(document.createElement("div"),{id:"extendify-root"});if(document.body.append(e),(0,o.render)((0,Gt.jsx)(da,{}),e),e.parentNode.insertBefore(Object.assign(document.createElement("div"),{id:"extendify-util"}),e.nextSibling),Sr.getState().importOnLoad){var t=Sr.getState().wantedTemplate;setTimeout((function(){lo((0,r.rawHandler)({HTML:t.fields.code}),t)}),0)}Sr.setState({importOnLoad:!1,wantedTemplate:{}})}))},42:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],t=0;t<arguments.length;t++){var n=arguments[t];if(n){var i=typeof n;if("string"===i||"number"===i)e.push(n);else if(Array.isArray(n)){if(n.length){var a=o.apply(null,n);a&&e.push(a)}}else if("object"===i)if(n.toString===Object.prototype.toString)for(var s in n)r.call(n,s)&&n[s]&&e.push(s);else e.push(n.toString())}}return e.join(" ")}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},12:(e,t,n)=>{"use strict";var r=n(185),o={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var n,i,a,s,l,c,u=!1;t||(t={}),n=t.debug||!1;try{if(a=r(),s=document.createRange(),l=document.getSelection(),(c=document.createElement("span")).textContent=e,c.style.all="unset",c.style.position="fixed",c.style.top=0,c.style.clip="rect(0, 0, 0, 0)",c.style.whiteSpace="pre",c.style.webkitUserSelect="text",c.style.MozUserSelect="text",c.style.msUserSelect="text",c.style.userSelect="text",c.addEventListener("copy",(function(r){if(r.stopPropagation(),t.format)if(r.preventDefault(),void 0===r.clipboardData){n&&console.warn("unable to use e.clipboardData"),n&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var i=o[t.format]||o.default;window.clipboardData.setData(i,e)}else r.clipboardData.clearData(),r.clipboardData.setData(t.format,e);t.onCopy&&(r.preventDefault(),t.onCopy(r.clipboardData))})),document.body.appendChild(c),s.selectNodeContents(c),l.addRange(s),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");u=!0}catch(r){n&&console.error("unable to copy using execCommand: ",r),n&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),u=!0}catch(r){n&&console.error("unable to copy using clipboardData: ",r),n&&console.error("falling back to prompt"),i=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"⌘":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(i,e)}}finally{l&&("function"==typeof l.removeRange?l.removeRange(s):l.removeAllRanges()),c&&document.body.removeChild(c),a()}return u}},716:()=>{},965:()=>{},525:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function o(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(e){return!1}}()?Object.assign:function(e,i){for(var a,s,l=o(e),c=1;c<arguments.length;c++){for(var u in a=Object(arguments[c]))n.call(a,u)&&(l[u]=a[u]);if(t){s=t(a);for(var d=0;d<s.length;d++)r.call(a,s[d])&&(l[s[d]]=a[s[d]])}}return l}},61:e=>{var t,n,r=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function a(e){if(t===setTimeout)return setTimeout(e,0);if((t===o||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(n){try{return t.call(null,e,0)}catch(n){return t.call(this,e,0)}}}!function(){try{t="function"==typeof setTimeout?setTimeout:o}catch(e){t=o}try{n="function"==typeof clearTimeout?clearTimeout:i}catch(e){n=i}}();var s,l=[],c=!1,u=-1;function d(){c&&s&&(c=!1,s.length?l=s.concat(l):u=-1,l.length&&f())}function f(){if(!c){var e=a(d);c=!0;for(var t=l.length;t;){for(s=l,l=[];++u<t;)s&&s[u].run();u=-1,t=l.length}s=null,c=!1,function(e){if(n===clearTimeout)return clearTimeout(e);if((n===i||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(e);try{n(e)}catch(t){try{return n.call(null,e)}catch(t){return n.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function h(){}r.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];l.push(new p(e,t)),1!==l.length||c||a(f)},p.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={},r.on=h,r.addListener=h,r.once=h,r.off=h,r.removeListener=h,r.removeAllListeners=h,r.emit=h,r.prependListener=h,r.prependOnceListener=h,r.listeners=function(e){return[]},r.binding=function(e){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(e){throw new Error("process.chdir is not supported")},r.umask=function(){return 0}},218:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var r=i(n(363)),o=i(n(12));function i(e){return e&&e.__esModule?e:{default:e}}function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function d(e,t){return!t||"object"!==a(t)&&"function"!=typeof t?p(e):t}function f(e){return f=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},f(e)}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function h(e,t){return h=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},h(e,t)}function m(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var x=function(e){function t(){var e,n;c(this,t);for(var i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];return m(p(n=d(this,(e=f(t)).call.apply(e,[this].concat(a)))),"onClick",(function(e){var t=n.props,i=t.text,a=t.onCopy,s=t.children,l=t.options,c=r.default.Children.only(s),u=(0,o.default)(i,l);a&&a(i,u),c&&c.props&&"function"==typeof c.props.onClick&&c.props.onClick(e)})),n}var n,i,a;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&h(e,t)}(t,e),n=t,i=[{key:"render",value:function(){var e=this.props,t=(e.text,e.onCopy,e.options,e.children),n=l(e,["text","onCopy","options","children"]),o=r.default.Children.only(t);return r.default.cloneElement(o,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?s(n,!0).forEach((function(t){m(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):s(n).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({},n,{onClick:this.onClick}))}}],i&&u(n.prototype,i),a&&u(n,a),t}(r.default.PureComponent);t.CopyToClipboard=x,m(x,"defaultProps",{onCopy:void 0,options:void 0})},306:(e,t,n)=>{"use strict";var r=n(218).CopyToClipboard;r.CopyToClipboard=r,e.exports=r},426:(e,t,n)=>{"use strict";n(525);var r=n(363),o=60103;if(t.Fragment=60107,"function"==typeof Symbol&&Symbol.for){var i=Symbol.for;o=i("react.element"),t.Fragment=i("react.fragment")}var a=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s=Object.prototype.hasOwnProperty,l={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var r,i={},c=null,u=null;for(r in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)s.call(t,r)&&!l.hasOwnProperty(r)&&(i[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===i[r]&&(i[r]=t[r]);return{$$typeof:o,type:e,key:c,ref:u,props:i,_owner:a.current}}t.jsx=c,t.jsxs=c},246:(e,t,n)=>{"use strict";e.exports=n(426)},248:e=>{var t=function(e){"use strict";var t,n=Object.prototype,r=n.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,n){return e[t]=n}}function c(e,t,n,r){var o=t&&t.prototype instanceof x?t:x,i=Object.create(o.prototype),a=new E(r||[]);return i._invoke=function(e,t,n){var r=d;return function(o,i){if(r===p)throw new Error("Generator is already running");if(r===h){if("throw"===o)throw i;return N()}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var s=C(a,n);if(s){if(s===m)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(r===d)throw r=h,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r=p;var l=u(e,t,n);if("normal"===l.type){if(r=n.done?h:f,l.arg===m)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(r=h,n.method="throw",n.arg=l.arg)}}}(e,n,a),i}function u(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}e.wrap=c;var d="suspendedStart",f="suspendedYield",p="executing",h="completed",m={};function x(){}function y(){}function v(){}var g={};l(g,i,(function(){return this}));var b=Object.getPrototypeOf,w=b&&b(b(A([])));w&&w!==n&&r.call(w,i)&&(g=w);var j=v.prototype=x.prototype=Object.create(g);function k(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function S(e,t){function n(o,i,a,s){var l=u(e[o],e,i);if("throw"!==l.type){var c=l.arg,d=c.value;return d&&"object"==typeof d&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){n("next",e,a,s)}),(function(e){n("throw",e,a,s)})):t.resolve(d).then((function(e){c.value=e,a(c)}),(function(e){return n("throw",e,a,s)}))}s(l.arg)}var o;this._invoke=function(e,r){function i(){return new t((function(t,o){n(e,r,t,o)}))}return o=o?o.then(i,i):i()}}function C(e,n){var r=e.iterator[n.method];if(r===t){if(n.delegate=null,"throw"===n.method){if(e.iterator.return&&(n.method="return",n.arg=t,C(e,n),"throw"===n.method))return m;n.method="throw",n.arg=new TypeError("The iterator does not provide a 'throw' method")}return m}var o=u(r,e.iterator,n.arg);if("throw"===o.type)return n.method="throw",n.arg=o.arg,n.delegate=null,m;var i=o.arg;return i?i.done?(n[e.resultName]=i.value,n.next=e.nextLoc,"return"!==n.method&&(n.method="next",n.arg=t),n.delegate=null,m):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,m)}function _(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function O(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function E(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(_,this),this.reset(!0)}function A(e){if(e){var n=e[i];if(n)return n.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,a=function n(){for(;++o<e.length;)if(r.call(e,o))return n.value=e[o],n.done=!1,n;return n.value=t,n.done=!0,n};return a.next=a}}return{next:N}}function N(){return{value:t,done:!0}}return y.prototype=v,l(j,"constructor",v),l(v,"constructor",y),y.displayName=l(v,s,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===y||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,l(e,s,"GeneratorFunction")),e.prototype=Object.create(j),e},e.awrap=function(e){return{__await:e}},k(S.prototype),l(S.prototype,a,(function(){return this})),e.AsyncIterator=S,e.async=function(t,n,r,o,i){void 0===i&&(i=Promise);var a=new S(c(t,n,r,o),i);return e.isGeneratorFunction(n)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},k(j),l(j,s,"Generator"),l(j,i,(function(){return this})),l(j,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var n in e)t.push(n);return t.reverse(),function n(){for(;t.length;){var r=t.pop();if(r in e)return n.value=r,n.done=!1,n}return n.done=!0,n}},e.values=A,E.prototype={constructor:E,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(O),!e)for(var n in this)"t"===n.charAt(0)&&r.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=t)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var n=this;function o(r,o){return s.type="throw",s.arg=e,n.next=r,o&&(n.method="next",n.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],s=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var l=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(l&&c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(l){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,m):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),m},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),O(n),m}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var r=n.completion;if("throw"===r.type){var o=r.arg;O(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,n,r){return this.delegate={iterator:A(e),resultName:n,nextLoc:r},"next"===this.method&&(this.arg=t),m}},e}(e.exports);try{regeneratorRuntime=t}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=t:Function("r","regeneratorRuntime = r")(t)}},185:e=>{e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],r=0;r<e.rangeCount;r++)n.push(e.getRangeAt(r));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null}return e.removeAllRanges(),function(){"Caret"===e.type&&e.removeAllRanges(),e.rangeCount||n.forEach((function(t){e.addRange(t)})),t&&t.focus()}}},363:e=>{"use strict";e.exports=React}},n={};function r(e){var o=n[e];if(void 0!==o)return o.exports;var i=n[e]={exports:{}};return t[e](i,i.exports,r),i.exports}r.m=t,e=[],r.O=(t,n,o,i)=>{if(!n){var a=1/0;for(u=0;u<e.length;u++){for(var[n,o,i]=e[u],s=!0,l=0;l<n.length;l++)(!1&i||a>=i)&&Object.keys(r.O).every((e=>r.O[e](n[l])))?n.splice(l--,1):(s=!1,i<a&&(a=i));if(s){e.splice(u--,1);var c=o();void 0!==c&&(t=c)}}return t}i=i||0;for(var u=e.length;u>0&&e[u-1][2]>i;u--)e[u]=e[u-1];e[u]=[n,o,i]},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),(()=>{var e={245:0,506:0,551:0};r.O.j=t=>0===e[t];var t=(t,n)=>{var o,i,[a,s,l]=n,c=0;if(a.some((t=>0!==e[t]))){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(l)var u=l(r)}for(t&&t(n);c<a.length;c++)i=a[c],r.o(e,i)&&e[i]&&e[i][0](),e[a[c]]=0;return r.O(u)},n=self.webpackChunk=self.webpackChunk||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),r.O(void 0,[506,551],(()=>r(364))),r.O(void 0,[506,551],(()=>r(716)));var o=r.O(void 0,[506,551],(()=>r(965)));o=r.O(o)})();
extendify-sdk/readme.txt CHANGED
@@ -1,13 +1,17 @@
1
- === Extendify ===
2
  Contributors: extendify, richtabor, kbat82, clubkert, arturgrabo
3
- Tags: page builder, editor, patterns, drag-and-drop, blocks, visual editor, wysiwyg, design, website builder, landing page builder, front-end builder
4
  Requires at least: 5.4
5
  Tested up to: 5.9.0
6
- Stable tag: 0.4.0
7
  Requires PHP: 5.6
8
  License: GPLv2
9
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
10
 
 
 
 
 
11
  Extendify is the platform of site design and creation tools for people that want to build a beautiful WordPress website with a library of patterns and full page layouts for the Gutenberg block editor.
12
 
13
  Make a beautiful WordPress website easier and faster than ever before with Extendify's library of Gutenberg block patterns, templates, and page layouts for Gutenberg.
@@ -120,6 +124,17 @@ Nope! Extendify imports lightweight block-based content that is served directly
120
 
121
  == Changelog ==
122
 
 
 
 
 
 
 
 
 
 
 
 
123
  = 0.4.0 - 2022-02-08 =
124
  - Enhance layout view with autoscroll
125
  - Improve modal layout design consistency
1
+ === Extendify — Gutenberg Patterns and Templates ===
2
  Contributors: extendify, richtabor, kbat82, clubkert, arturgrabo
3
+ Tags: templates, patterns, layouts, blocks, gutenberg
4
  Requires at least: 5.4
5
  Tested up to: 5.9.0
6
+ Stable tag: 0.6.0
7
  Requires PHP: 5.6
8
  License: GPLv2
9
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
10
 
11
+ The best WordPress templates, pattern, and layout library with 1,000+ designs built for the Gutenberg block editor.
12
+
13
+ == Description ==
14
+
15
  Extendify is the platform of site design and creation tools for people that want to build a beautiful WordPress website with a library of patterns and full page layouts for the Gutenberg block editor.
16
 
17
  Make a beautiful WordPress website easier and faster than ever before with Extendify's library of Gutenberg block patterns, templates, and page layouts for Gutenberg.
124
 
125
  == Changelog ==
126
 
127
+ = 0.6.0 - 2022-03-08 =
128
+ - Add new design categories
129
+ - Add ability to open library via search param
130
+ - Tweak get_plugins call to not cache results
131
+ - Improve toolbar on mobile
132
+
133
+ = 0.5.0 - 2022-02-22 =
134
+ - Add support for inverted style patterns
135
+ - Improve library loading time
136
+ - Add pattern library variants to open the library
137
+
138
  = 0.4.0 - 2022-02-08 =
139
  - Enhance layout view with autoscroll
140
  - Improve modal layout design consistency
extendify-sdk/routes/api.php CHANGED
@@ -31,6 +31,7 @@ use Extendify\Library\Controllers\TemplateController;
31
 
32
  ApiRouter::get('/user', [UserController::class, 'show']);
33
  ApiRouter::post('/user', [UserController::class, 'store']);
 
34
  ApiRouter::get('/user-meta', [UserController::class, 'meta']);
35
  ApiRouter::get('/max-free-imports', [UserController::class, 'maxImports']);
36
 
31
 
32
  ApiRouter::get('/user', [UserController::class, 'show']);
33
  ApiRouter::post('/user', [UserController::class, 'store']);
34
+ ApiRouter::post('/clear-user', [UserController::class, 'delete']);
35
  ApiRouter::get('/user-meta', [UserController::class, 'meta']);
36
  ApiRouter::get('/max-free-imports', [UserController::class, 'maxImports']);
37
 
extendify-sdk/src/ExtendifyLibrary.js CHANGED
@@ -1,40 +1,50 @@
1
- import { useEffect, useCallback, useState } from '@wordpress/element'
2
- import { useGlobalStore } from './state/GlobalState'
3
- import { useUserStore } from './state/User'
4
- import { useTemplatesStore } from './state/Templates'
5
- import MainWindow from './pages/MainWindow'
6
- import './utility-control'
7
- import useTaxonomies from './hooks/useTaxonomies'
8
- import { General as GeneralApi } from './api/General'
9
 
10
  export default function ExtendifyLibrary({ show = false }) {
11
  const open = useGlobalStore((state) => state.open)
 
12
  const setOpen = useGlobalStore((state) => state.setOpen)
13
- const [ready, setReady] = useState(false)
14
  const showLibrary = useCallback(() => setOpen(true), [setOpen])
15
  const hideLibrary = useCallback(() => setOpen(false), [setOpen])
16
  const initTemplateData = useTemplatesStore(
17
  (state) => state.initTemplateData,
18
  )
 
19
 
20
  // When the uuid of the user comes back from the database, we can
21
  // assume that the state object is ready. This is important to check
22
  // as the library may be "open" when loaded, but not ready.
23
- const userStoreReady = useUserStore((state) => state.uuid.length > 0)
24
- const templatesStoreReady = useTemplatesStore(
25
  (state) => Object.keys(state.taxonomyDefaultState).length > 0,
26
  )
27
- useTaxonomies(open)
28
 
29
  useEffect(() => {
30
- if (userStoreReady && templatesStoreReady) {
 
 
 
 
 
 
 
31
  initTemplateData()
32
  setReady(true)
33
  }
34
- }, [userStoreReady, templatesStoreReady, initTemplateData])
35
 
36
  useEffect(() => {
37
- show && setOpen(true)
 
 
 
38
  }, [show, setOpen])
39
 
40
  useEffect(() => {
@@ -55,8 +65,5 @@ export default function ExtendifyLibrary({ show = false }) {
55
  }
56
  }, [hideLibrary, showLibrary])
57
 
58
- if (!ready) {
59
- return null
60
- }
61
  return <MainWindow />
62
  }
1
+ import { useEffect, useCallback } from '@wordpress/element'
2
+ import { General as GeneralApi } from '@extendify/api/General'
3
+ import MainWindow from '@extendify/pages/MainWindow'
4
+ import { useGlobalStore } from '@extendify/state/GlobalState'
5
+ import { useTemplatesStore } from '@extendify/state/Templates'
6
+ import { useUserStore } from '@extendify/state/User'
7
+ import '@extendify/utility-control'
8
+ import { useTaxonomyStore } from './state/Taxonomies'
9
 
10
  export default function ExtendifyLibrary({ show = false }) {
11
  const open = useGlobalStore((state) => state.open)
12
+ const setReady = useGlobalStore((state) => state.setReady)
13
  const setOpen = useGlobalStore((state) => state.setOpen)
 
14
  const showLibrary = useCallback(() => setOpen(true), [setOpen])
15
  const hideLibrary = useCallback(() => setOpen(false), [setOpen])
16
  const initTemplateData = useTemplatesStore(
17
  (state) => state.initTemplateData,
18
  )
19
+ const fetchTaxonomies = useTaxonomyStore((state) => state.fetchTaxonomies)
20
 
21
  // When the uuid of the user comes back from the database, we can
22
  // assume that the state object is ready. This is important to check
23
  // as the library may be "open" when loaded, but not ready.
24
+ const userHasHydrated = useUserStore((state) => state._hasHydrated)
25
+ const taxonomiesReady = useTemplatesStore(
26
  (state) => Object.keys(state.taxonomyDefaultState).length > 0,
27
  )
 
28
 
29
  useEffect(() => {
30
+ if (!open) return
31
+ fetchTaxonomies().then(() => {
32
+ useTemplatesStore.getState().setupDefaultTaxonomies()
33
+ })
34
+ }, [open, fetchTaxonomies])
35
+
36
+ useEffect(() => {
37
+ if (userHasHydrated && taxonomiesReady) {
38
  initTemplateData()
39
  setReady(true)
40
  }
41
+ }, [userHasHydrated, taxonomiesReady, initTemplateData, setReady])
42
 
43
  useEffect(() => {
44
+ const search = new URLSearchParams(window.location.search)
45
+ if (show || search.has('ext-open')) {
46
+ setOpen(true)
47
+ }
48
  }, [show, setOpen])
49
 
50
  useEffect(() => {
65
  }
66
  }, [hideLibrary, showLibrary])
67
 
 
 
 
68
  return <MainWindow />
69
  }
extendify-sdk/src/api/General.js CHANGED
@@ -1,4 +1,5 @@
1
- import { useUserStore } from '../state/User'
 
2
  import { Axios as api } from './axios'
3
 
4
  export const General = {
@@ -6,8 +7,11 @@ export const General = {
6
  return api.get('meta-data')
7
  },
8
  ping(action) {
 
 
9
  return api.post('simple-ping', {
10
  action,
 
11
  sdk_partner: useUserStore.getState()?.sdkPartner ?? '',
12
  })
13
  },
1
+ import { useTemplatesStore } from '@extendify/state/Templates'
2
+ import { useUserStore } from '@extendify/state/User'
3
  import { Axios as api } from './axios'
4
 
5
  export const General = {
7
  return api.get('meta-data')
8
  },
9
  ping(action) {
10
+ const categories =
11
+ useTemplatesStore.getState()?.searchParams?.taxonomies ?? []
12
  return api.post('simple-ping', {
13
  action,
14
+ categories,
15
  sdk_partner: useUserStore.getState()?.sdkPartner ?? '',
16
  })
17
  },
extendify-sdk/src/api/Templates.js CHANGED
@@ -1,5 +1,6 @@
 
 
1
  import { Axios as api } from './axios'
2
- import { useUserStore } from '../state/User'
3
 
4
  let count = 0
5
 
@@ -22,7 +23,7 @@ export const Templates = {
22
  offset: '',
23
  initial: count === 1,
24
  request_count: count,
25
- sdk_partner: useUserStore.getState()?.sdkPartner ?? '',
26
  },
27
  options,
28
  )
@@ -31,23 +32,31 @@ export const Templates = {
31
 
32
  // TODO: Refactor this later to combine the following three
33
  maybeImport(template) {
 
 
34
  return api.post(`templates/${template.id}`, {
35
  template_id: template?.id,
 
36
  maybe_import: true,
37
  type: template.fields?.type,
 
38
  pageSize: '1',
39
  template_name: template.fields?.title,
40
  })
41
  },
42
  import(template) {
 
 
43
  return api.post(`templates/${template.id}`, {
44
  template_id: template.id,
 
45
  imported: true,
46
  basePattern:
47
  template.fields?.basePattern ??
48
  template.fields?.baseLayout ??
49
  '',
50
  type: template.fields.type,
 
51
  pageSize: '1',
52
  template_name: template.fields?.title,
53
  })
@@ -55,9 +64,7 @@ export const Templates = {
55
  }
56
 
57
  const prepareFilterFormula = ({ taxonomies }, type) => {
58
- const siteType = taxonomies?.siteType?.slug?.length
59
- ? taxonomies.siteType.slug
60
- : 'default'
61
  const formula = [
62
  `{type}="${type.replace('Type', '')}"`,
63
  `{siteType}="${siteType}"`,
1
+ import { useTemplatesStore } from '@extendify/state/Templates'
2
+ import { useUserStore } from '@extendify/state/User'
3
  import { Axios as api } from './axios'
 
4
 
5
  let count = 0
6
 
23
  offset: '',
24
  initial: count === 1,
25
  request_count: count,
26
+ sdk_partner: useUserStore.getState().sdkPartner ?? '',
27
  },
28
  options,
29
  )
32
 
33
  // TODO: Refactor this later to combine the following three
34
  maybeImport(template) {
35
+ const categories =
36
+ useTemplatesStore.getState()?.searchParams?.taxonomies ?? []
37
  return api.post(`templates/${template.id}`, {
38
  template_id: template?.id,
39
+ categories,
40
  maybe_import: true,
41
  type: template.fields?.type,
42
+ sdk_partner: useUserStore.getState().sdkPartner ?? '',
43
  pageSize: '1',
44
  template_name: template.fields?.title,
45
  })
46
  },
47
  import(template) {
48
+ const categories =
49
+ useTemplatesStore.getState()?.searchParams?.taxonomies ?? []
50
  return api.post(`templates/${template.id}`, {
51
  template_id: template.id,
52
+ categories,
53
  imported: true,
54
  basePattern:
55
  template.fields?.basePattern ??
56
  template.fields?.baseLayout ??
57
  '',
58
  type: template.fields.type,
59
+ sdk_partner: useUserStore.getState().sdkPartner ?? '',
60
  pageSize: '1',
61
  template_name: template.fields?.title,
62
  })
64
  }
65
 
66
  const prepareFilterFormula = ({ taxonomies }, type) => {
67
+ const siteType = taxonomies?.siteType?.slug
 
 
68
  const formula = [
69
  `{type}="${type.replace('Type', '')}"`,
70
  `{siteType}="${siteType}"`,
extendify-sdk/src/api/User.js CHANGED
@@ -1,8 +1,18 @@
1
  import { Axios as api } from './axios'
2
 
3
  export const User = {
4
- getData() {
5
- return api.get('user')
 
 
 
 
 
 
 
 
 
 
6
  },
7
  getMeta(key) {
8
  return api.get('user-meta', {
@@ -39,6 +49,9 @@ export const User = {
39
  },
40
  })
41
  },
 
 
 
42
  registerMailingList(email) {
43
  const formData = new FormData()
44
  formData.append('email', email)
1
  import { Axios as api } from './axios'
2
 
3
  export const User = {
4
+ async getData() {
5
+ // Zustand changed their persist middleware to bind to the store
6
+ // so api was undefined here. That's why using fetch for this one request.
7
+ const data = await fetch(`${window.extendifyData.root}/user`, {
8
+ method: 'GET',
9
+ headers: {
10
+ 'X-WP-Nonce': window.extendifyData.nonce,
11
+ 'X-Requested-With': 'XMLHttpRequest',
12
+ 'X-Extendify': true,
13
+ },
14
+ })
15
+ return await data.json()
16
  },
17
  getMeta(key) {
18
  return api.get('user-meta', {
49
  },
50
  })
51
  },
52
+ deleteData() {
53
+ return api.post('clear-user')
54
+ },
55
  registerMailingList(email) {
56
  const formData = new FormData()
57
  formData.append('email', email)
extendify-sdk/src/api/axios.js CHANGED
@@ -1,5 +1,5 @@
1
  import axios from 'axios'
2
- import { useUserStore } from '../state/User'
3
 
4
  const Axios = axios.create({
5
  baseURL: window.extendifyData.root,
@@ -32,8 +32,9 @@ function addDefaults(request) {
32
  : userState.remainingImports()
33
  if (request.data) {
34
  request.data.remaining_imports = remainingImports
35
- request.data.entry_point = useUserStore.getState().entryPoint
36
- request.data.total_imports = useUserStore.getState().imports
 
37
  }
38
  return request
39
  }
1
  import axios from 'axios'
2
+ import { useUserStore } from '@extendify/state/User'
3
 
4
  const Axios = axios.create({
5
  baseURL: window.extendifyData.root,
32
  : userState.remainingImports()
33
  if (request.data) {
34
  request.data.remaining_imports = remainingImports
35
+ request.data.entry_point = userState.entryPoint
36
+ request.data.total_imports = userState.imports
37
+ request.data.participating_tests = userState.activeTestGroups()
38
  }
39
  return request
40
  }
extendify-sdk/src/app.css CHANGED
@@ -17,19 +17,19 @@
17
  border: 0 solid #e5e7eb;
18
  }
19
  .extendify .button-focus {
20
- @apply focus:ring-wp focus:ring-wp-theme-500 outline-none focus:shadow-none;
21
  }
22
  .extendify select.button-focus,
23
  .extendify input.button-focus {
24
- @apply focus:border-transparent focus:outline-none focus:shadow-none;
25
  }
26
 
27
  div.extendify button.extendify-skip-to-sr-link:focus {
28
- @apply fixed z-high top-0 bg-white p-4;
29
  }
30
 
31
  .button-extendify-main {
32
- @apply bg-extendify-main button-focus cursor-pointer transition duration-200 p-1.5 px-3 text-white hover:text-white no-underline hover:bg-extendify-main-dark active:bg-gray-900 active:text-white focus:text-white whitespace-nowrap rounded text-base;
33
  }
34
  #extendify-search-input:focus ~ svg,
35
  #extendify-search-input:not(:placeholder-shown) ~ svg {
@@ -128,7 +128,7 @@ div.extendify button.extendify-skip-to-sr-link:focus {
128
  .components-panel__body.ext-type-control
129
  .components-panel__body-title
130
  .components-button {
131
- @apply m-0 border-b-0 text-extendify-gray py-2 uppercase font-medium text-xss;
132
  }
133
 
134
  .components-panel__body.ext-type-control
@@ -154,7 +154,7 @@ div.extendify button.extendify-skip-to-sr-link:focus {
154
  .is-template--inactive::before,
155
  .is-template--in-review::before {
156
  content: "";
157
- @apply absolute w-full h-full top-0 left-0 bottom-0 right-0 z-40 border-solid border-8 border-extendify-secondary;
158
  }
159
 
160
  .is-template--inactive::before {
@@ -169,11 +169,11 @@ div.extendify button.extendify-skip-to-sr-link:focus {
169
  }
170
  .extendify-tooltip-default:not(.is-without-arrow) .components-popover__content {
171
  min-width: 250px;
172
- @apply border-transparent bg-gray-900 text-white p-4;
173
  }
174
  .extendify-bottom-arrow::after {
175
  content: "";
176
  bottom: -15px;
177
- @apply border-8 border-transparent w-0 h-0 inline-block absolute transform -translate-y-px;
178
  border-top-color: #1e1e1e !important;
179
  }
17
  border: 0 solid #e5e7eb;
18
  }
19
  .extendify .button-focus {
20
+ @apply outline-none focus:shadow-none focus:ring-wp focus:ring-wp-theme-500;
21
  }
22
  .extendify select.button-focus,
23
  .extendify input.button-focus {
24
+ @apply focus:outline-none focus:border-transparent focus:shadow-none;
25
  }
26
 
27
  div.extendify button.extendify-skip-to-sr-link:focus {
28
+ @apply fixed top-0 z-high bg-white p-4;
29
  }
30
 
31
  .button-extendify-main {
32
+ @apply button-focus cursor-pointer whitespace-nowrap rounded bg-extendify-main p-1.5 px-3 text-base text-white no-underline transition duration-200 hover:bg-extendify-main-dark hover:text-white focus:text-white active:bg-gray-900 active:text-white;
33
  }
34
  #extendify-search-input:focus ~ svg,
35
  #extendify-search-input:not(:placeholder-shown) ~ svg {
128
  .components-panel__body.ext-type-control
129
  .components-panel__body-title
130
  .components-button {
131
+ @apply m-0 border-b-0 py-2 text-xss font-medium uppercase text-extendify-gray;
132
  }
133
 
134
  .components-panel__body.ext-type-control
154
  .is-template--inactive::before,
155
  .is-template--in-review::before {
156
  content: "";
157
+ @apply absolute top-0 left-0 bottom-0 right-0 z-40 h-full w-full border-8 border-solid border-extendify-secondary;
158
  }
159
 
160
  .is-template--inactive::before {
169
  }
170
  .extendify-tooltip-default:not(.is-without-arrow) .components-popover__content {
171
  min-width: 250px;
172
+ @apply border-transparent bg-gray-900 p-4 text-white;
173
  }
174
  .extendify-bottom-arrow::after {
175
  content: "";
176
  bottom: -15px;
177
+ @apply absolute inline-block h-0 w-0 -translate-y-px transform border-8 border-transparent;
178
  border-top-color: #1e1e1e !important;
179
  }
extendify-sdk/src/app.js CHANGED
@@ -1,11 +1,11 @@
1
- import ExtendifyLibrary from './ExtendifyLibrary'
2
- import { render } from '@wordpress/element'
3
- import { useWantedTemplateStore } from './state/Importing'
4
- import { injectTemplateBlocks } from './util/templateInjection'
5
  import { rawHandler } from '@wordpress/blocks'
6
- import './buttons'
7
- import './listeners'
8
- import './blocks/blocks'
 
 
 
 
9
 
10
  window._wpLoadBlockEditor &&
11
  window.wp.domReady(() => {
 
 
 
 
1
  import { rawHandler } from '@wordpress/blocks'
2
+ import { render } from '@wordpress/element'
3
+ import ExtendifyLibrary from '@extendify/ExtendifyLibrary'
4
+ import '@extendify/blocks/blocks'
5
+ import '@extendify/buttons'
6
+ import '@extendify/listeners'
7
+ import { useWantedTemplateStore } from '@extendify/state/Importing'
8
+ import { injectTemplateBlocks } from '@extendify/util/templateInjection'
9
 
10
  window._wpLoadBlockEditor &&
11
  window.wp.domReady(() => {
extendify-sdk/src/blocks/block-category.js ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { registerBlockCollection } from '@wordpress/blocks'
5
+ import { Icon } from '@wordpress/components'
6
+ import { brandBlockIcon } from '@extendify/components/icons'
7
+
8
+ /**
9
+ * Function to register a block collection for our block(s).
10
+ */
11
+ registerBlockCollection('extendify', {
12
+ title: 'Extendify',
13
+ icon: <Icon icon={brandBlockIcon} />,
14
+ })
extendify-sdk/src/blocks/blocks.js CHANGED
@@ -1 +1,2 @@
 
1
  import './library/block.js'
1
+ import './block-category.js'
2
  import './library/block.js'
extendify-sdk/src/blocks/library/block.js CHANGED
@@ -1,26 +1,118 @@
1
- import { __, sprintf } from '@wordpress/i18n'
2
  import { registerBlockType } from '@wordpress/blocks'
3
  import { useDispatch } from '@wordpress/data'
4
  import { useEffect } from '@wordpress/element'
5
- import { brandBlockIcon } from '../../components/icons'
6
- import { setModalVisibility } from '../../util/general'
 
 
 
 
 
 
 
 
 
 
7
  import metadata from './block.json'
8
 
9
  export const openModal = (source) => setModalVisibility(source, 'open')
10
 
11
  registerBlockType(metadata, {
12
  icon: brandBlockIcon,
 
13
  example: {
14
  attributes: {
15
  preview: window.extendifyData.asset_path + '/preview.png',
16
  },
17
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
  edit: function Edit({ clientId, attributes }) {
19
  const { removeBlock } = useDispatch('core/block-editor')
20
  useEffect(() => {
21
  if (attributes.preview) {
22
  return
23
  }
 
 
 
24
  openModal('library-block')
25
  removeBlock(clientId)
26
  }, [clientId, attributes, removeBlock])
@@ -36,3 +128,13 @@ registerBlockType(metadata, {
36
  )
37
  },
38
  })
 
 
 
 
 
 
 
 
 
 
 
1
  import { registerBlockType } from '@wordpress/blocks'
2
  import { useDispatch } from '@wordpress/data'
3
  import { useEffect } from '@wordpress/element'
4
+ import { __, _x, sprintf } from '@wordpress/i18n'
5
+ import {
6
+ Icon,
7
+ gallery,
8
+ postAuthor,
9
+ mapMarker,
10
+ button,
11
+ cover,
12
+ overlayText,
13
+ } from '@wordpress/icons'
14
+ import { brandBlockIcon } from '@extendify/components/icons'
15
+ import { setModalVisibility } from '@extendify/util/general'
16
  import metadata from './block.json'
17
 
18
  export const openModal = (source) => setModalVisibility(source, 'open')
19
 
20
  registerBlockType(metadata, {
21
  icon: brandBlockIcon,
22
+ category: 'extendify',
23
  example: {
24
  attributes: {
25
  preview: window.extendifyData.asset_path + '/preview.png',
26
  },
27
  },
28
+ variations: [
29
+ {
30
+ name: 'gallery',
31
+ icon: <Icon icon={gallery} />,
32
+ category: 'extendify',
33
+ attributes: { search: 'gallery' },
34
+ title: __('Gallery Patterns', 'extendify'),
35
+ description: __('Add gallery patterns and layouts.', 'extendify'),
36
+ keywords: [__('slideshow', 'extendify'), __('images', 'extendify')],
37
+ },
38
+ {
39
+ name: 'team',
40
+ icon: <Icon icon={postAuthor} />,
41
+ category: 'extendify',
42
+ attributes: { search: 'team' },
43
+ title: __('Team Patterns', 'extendify'),
44
+ description: __('Add team patterns and layouts.', 'extendify'),
45
+ keywords: [
46
+ _x('crew', 'As in team', 'extendify'),
47
+ __('colleagues', 'extendify'),
48
+ __('members', 'extendify'),
49
+ ],
50
+ },
51
+ {
52
+ name: 'hero',
53
+ icon: <Icon icon={cover} />,
54
+ category: 'extendify',
55
+ attributes: { search: 'hero' },
56
+ title: _x(
57
+ 'Hero Patterns',
58
+ 'Hero being a hero/top section of a webpage',
59
+ 'extendify',
60
+ ),
61
+ description: __('Add hero patterns and layouts.', 'extendify'),
62
+ keywords: [__('heading', 'extendify'), __('headline', 'extendify')],
63
+ },
64
+ {
65
+ name: 'text',
66
+ icon: <Icon icon={overlayText} />,
67
+ category: 'extendify',
68
+ attributes: { search: 'text' },
69
+ title: _x(
70
+ 'Text Patterns',
71
+ 'Relating to patterns that feature text only',
72
+ 'extendify',
73
+ ),
74
+ description: __('Add text patterns and layouts.', 'extendify'),
75
+ keywords: [__('simple', 'extendify'), __('paragraph', 'extendify')],
76
+ },
77
+ {
78
+ name: 'about',
79
+ icon: <Icon icon={mapMarker} />,
80
+ category: 'extendify',
81
+ attributes: { search: 'about' },
82
+ title: _x(
83
+ 'About Page Patterns',
84
+ 'Add patterns relating to an about us page',
85
+ 'extendify',
86
+ ),
87
+ description: __('About patterns and layouts.', 'extendify'),
88
+ keywords: [__('who we are', 'extendify'), __('team', 'extendify')],
89
+ },
90
+ {
91
+ name: 'call-to-action',
92
+ icon: <Icon icon={button} />,
93
+ category: 'extendify',
94
+ attributes: { search: 'call-to-action' },
95
+ title: __('Call to Action Patterns', 'extendify'),
96
+ description: __(
97
+ 'Add call to action patterns and layouts.',
98
+ 'extendify',
99
+ ),
100
+ keywords: [
101
+ _x('cta', 'Initialism for call to action', 'extendify'),
102
+ __('callout', 'extendify'),
103
+ __('buttons', 'extendify'),
104
+ ],
105
+ },
106
+ ],
107
  edit: function Edit({ clientId, attributes }) {
108
  const { removeBlock } = useDispatch('core/block-editor')
109
  useEffect(() => {
110
  if (attributes.preview) {
111
  return
112
  }
113
+ if (attributes.search) {
114
+ addTermToSearchParams(attributes.search)
115
+ }
116
  openModal('library-block')
117
  removeBlock(clientId)
118
  }, [clientId, attributes, removeBlock])
128
  )
129
  },
130
  })
131
+
132
+ const addTermToSearchParams = (term) => {
133
+ const params = new URLSearchParams(window.location.search)
134
+ params.append('ext-patternType', term)
135
+ window.history.replaceState(
136
+ null,
137
+ null,
138
+ window.location.pathname + '?' + params.toString(),
139
+ )
140
+ }
extendify-sdk/src/blocks/library/block.json CHANGED
@@ -3,13 +3,15 @@
3
  "apiVersion": 2,
4
  "name": "extendify/library",
5
  "title": "Pattern Library",
6
- "category": "design",
7
  "description": "Add block patterns and full page layouts with the Extendify Library.",
8
- "keywords": ["pattern", "extendify", "library", "template", "layouts"],
9
  "textdomain": "extendify",
10
  "attributes": {
11
  "preview": {
12
  "type": "string"
 
 
 
13
  }
14
  }
15
  }
3
  "apiVersion": 2,
4
  "name": "extendify/library",
5
  "title": "Pattern Library",
 
6
  "description": "Add block patterns and full page layouts with the Extendify Library.",
7
+ "keywords": ["template", "layouts"],
8
  "textdomain": "extendify",
9
  "attributes": {
10
  "preview": {
11
  "type": "string"
12
+ },
13
+ "search": {
14
+ "type": "string"
15
  }
16
  }
17
  }
extendify-sdk/src/buttons.js CHANGED
@@ -1,11 +1,11 @@
1
- import { __ } from '@wordpress/i18n'
2
- import { render } from '@wordpress/element'
3
- import { registerPlugin } from '@wordpress/plugins'
4
  import { PluginSidebarMoreMenuItem } from '@wordpress/edit-post'
 
 
5
  import { Icon } from '@wordpress/icons'
6
- import { brandMark } from './components/icons/'
7
- import LibraryAccessModal from './components/LibraryAccessModal'
8
- import { CtaButton, MainButton } from './components/MainButtons'
 
9
 
10
  const userState = window.extendifyData?.user?.state
11
  const isAdmin = () => window.extendifyData.user === null || userState?.isAdmin
@@ -37,12 +37,12 @@ if (window._wpLoadBlockEditor) {
37
  document
38
  .querySelector('.edit-post-header-toolbar')
39
  .append(buttonContainer)
40
- render(<MainButton />, buttonContainer)
41
 
42
  if (!isLibraryEnabled()) {
43
  document
44
  .getElementById('extendify-templates-inserter-btn')
45
- .classList.add('invisible')
46
  }
47
  finish()
48
  })
 
 
 
1
  import { PluginSidebarMoreMenuItem } from '@wordpress/edit-post'
2
+ import { render } from '@wordpress/element'
3
+ import { __ } from '@wordpress/i18n'
4
  import { Icon } from '@wordpress/icons'
5
+ import { registerPlugin } from '@wordpress/plugins'
6
+ import LibraryAccessModal from '@extendify/components/LibraryAccessModal'
7
+ import { CtaButton, MainButtonWrapper } from '@extendify/components/MainButtons'
8
+ import { brandMark } from '@extendify/components/icons/'
9
 
10
  const userState = window.extendifyData?.user?.state
11
  const isAdmin = () => window.extendifyData.user === null || userState?.isAdmin
37
  document
38
  .querySelector('.edit-post-header-toolbar')
39
  .append(buttonContainer)
40
+ render(<MainButtonWrapper />, buttonContainer)
41
 
42
  if (!isLibraryEnabled()) {
43
  document
44
  .getElementById('extendify-templates-inserter-btn')
45
+ .classList.add('hidden')
46
  }
47
  finish()
48
  })
extendify-sdk/src/components/DevHelpers.js CHANGED
@@ -1,29 +1,34 @@
1
  import { useEffect, useState } from '@wordpress/element'
 
2
  import { CopyToClipboard } from 'react-copy-to-clipboard'
3
- import { __ } from '@wordpress/i18n'
4
 
5
  /** Overlay for pattern import button */
6
  export const DevButtonOverlay = ({ template }) => {
7
- const [idText, setIdText] = useState(template.id)
 
 
 
8
 
9
  useEffect(() => {
10
- if (idText === template.id) return
11
- setTimeout(() => setIdText(template.id), 1000)
12
- }, [idText, template.id])
 
 
13
 
14
  return (
15
- <div className="group-hover:opacity-90 opacity-0 flex space-x-2 items-center mb-2 ml-2 absolute bottom-0 left-0 transition duration-200 ease-in-out z-50">
16
  <CopyToClipboard
17
- text={template.id}
18
- onCopy={() => setIdText(__('Copied...', 'extendify'))}>
19
- <button className="bg-white border border-black p-2 rounded-md shadow-md cursor-pointer">
20
- {idText}
21
  </button>
22
  </CopyToClipboard>
23
  <a
24
  target="_blank"
25
- className="bg-white border font-semibold border-black p-2 rounded-md shadow-md no-underline text-black"
26
- href={`https://airtable.com/appn5PSl8wU6X70sG/tblviYevlV5fYAEH7/viwh0L1kHmXN7FIB9/${template.id}`}
27
  rel="noreferrer">
28
  {__('Edit', 'extendify')}
29
  </a>
1
  import { useEffect, useState } from '@wordpress/element'
2
+ import { __, sprintf } from '@wordpress/i18n'
3
  import { CopyToClipboard } from 'react-copy-to-clipboard'
 
4
 
5
  /** Overlay for pattern import button */
6
  export const DevButtonOverlay = ({ template }) => {
7
+ const basePatternId = template?.fields?.basePattern?.length
8
+ ? template?.fields?.basePattern[0]
9
+ : ''
10
+ const [idText, setIdText] = useState(basePatternId)
11
 
12
  useEffect(() => {
13
+ if (!basePatternId?.length || idText === basePatternId) return
14
+ setTimeout(() => setIdText(basePatternId), 1000)
15
+ }, [idText, basePatternId])
16
+
17
+ if (!basePatternId) return null
18
 
19
  return (
20
+ <div className="absolute bottom-0 left-0 z-50 mb-4 ml-4 flex items-center space-x-2 opacity-0 transition duration-100 group-hover:opacity-100 space-x-0.5">
21
  <CopyToClipboard
22
+ text={template?.fields?.basePattern}
23
+ onCopy={() => setIdText(__('Copied!', 'extendify'))}>
24
+ <button className="text-sm rounded-md border border-black bg-white py-1 px-2.5 font-medium text-black no-underline m-0 cursor-pointer">
25
+ {sprintf(__('Base: %s', 'extendify'), idText)}
26
  </button>
27
  </CopyToClipboard>
28
  <a
29
  target="_blank"
30
+ className="text-sm rounded-md border border-black bg-white py-1 px-2.5 font-medium text-black no-underline m-0"
31
+ href={template?.fields?.editURL}
32
  rel="noreferrer">
33
  {__('Edit', 'extendify')}
34
  </a>
extendify-sdk/src/components/ImportCounter.js CHANGED
@@ -1,23 +1,19 @@
1
- import classnames from 'classnames'
2
- import { Icon } from '@wordpress/icons'
3
- import { __, _n, sprintf } from '@wordpress/i18n'
4
  import { useEffect, memo, useRef } from '@wordpress/element'
5
- import { alert, download } from './icons/'
6
- import { useUserStore } from '../state/User'
7
- import { User as UserApi } from '../api/User'
 
 
 
8
  import { growthArrow } from './icons'
9
- import { safeHTML } from '@wordpress/dom'
10
 
11
  export const ImportCounter = memo(function ImportCounter() {
12
  const remainingImports = useUserStore((state) => state.remainingImports)
13
  const allowedImports = useUserStore((state) => state.allowedImports)
14
  const count = remainingImports()
15
  const status = count > 0 ? 'has-imports' : 'no-imports'
16
- const backgroundColor =
17
- status === 'has-imports'
18
- ? 'bg-extendify-main hover:bg-extendify-main-dark'
19
- : 'bg-extendify-alert'
20
- const icon = status === 'has-imports' ? download : alert
21
  const buttonRef = useRef()
22
 
23
  useEffect(() => {
@@ -48,14 +44,20 @@ export const ImportCounter = memo(function ImportCounter() {
48
  ref={buttonRef}
49
  rel="noreferrer"
50
  className={classnames(
51
- backgroundColor,
52
- 'hidden sm:flex w-full no-underline button-focus text-sm justify-between py-3 px-4 text-white rounded',
 
 
 
53
  )}
 
54
  href={`https://www.extendify.com/pricing/?utm_source=${encodeURIComponent(
55
  window.extendifyData.sdk_partner,
56
- )}&utm_medium=library&utm_campaign=import-counter&utm_content=get-more&utm_term=${status}`}>
57
- <span className="flex items-center space-x-2 no-underline text-xs">
58
- <Icon icon={icon} size={14} />
 
 
59
  <span>
60
  {sprintf(
61
  _n('%s Import', '%s Imports', count, 'extendify'),
@@ -63,21 +65,27 @@ export const ImportCounter = memo(function ImportCounter() {
63
  )}
64
  </span>
65
  </span>
66
- <span className="text-white text-sm no-underline font-medium outline-none flex items-center">
67
  {__('Get more', 'extendify')}
68
  <Icon icon={growthArrow} size={24} className="-mr-1.5" />
69
  </span>
70
  </a>
71
  <div
72
- className="invisible opacity-0 -translate-y-full absolute duration-300 delay-200 ease-in-out group-hover:-top-2.5 group-hover:opacity-100 group-hover:visible group-focus:-top-2.5 group-focus:opacity-100 group-focus:visible top-0 transform transition-all w-full extendify-bottom-arrow shadow-md"
73
  tabIndex="-1">
74
  <a
75
  href={`https://www.extendify.com/pricing/?utm_source=${encodeURIComponent(
76
  window.extendifyData.sdk_partner,
77
- )}&utm_medium=library&utm_campaign=import-counter-tooltip&utm_content=get-50-off&utm_term=${status}`}
 
 
78
  className="block bg-gray-900 text-white p-4 no-underline rounded bg-cover"
 
 
 
79
  style={{
80
  backgroundImage: `url(${window.extendifyData.asset_path}/logo-tips.png)`,
 
81
  }}>
82
  <span
83
  dangerouslySetInnerHTML={{
1
+ import { safeHTML } from '@wordpress/dom'
 
 
2
  import { useEffect, memo, useRef } from '@wordpress/element'
3
+ import { __, _n, sprintf } from '@wordpress/i18n'
4
+ import { Icon } from '@wordpress/icons'
5
+ import classnames from 'classnames'
6
+ import { General } from '@extendify/api/General'
7
+ import { User as UserApi } from '@extendify/api/User'
8
+ import { useUserStore } from '@extendify/state/User'
9
  import { growthArrow } from './icons'
10
+ import { alert, download } from './icons/'
11
 
12
  export const ImportCounter = memo(function ImportCounter() {
13
  const remainingImports = useUserStore((state) => state.remainingImports)
14
  const allowedImports = useUserStore((state) => state.allowedImports)
15
  const count = remainingImports()
16
  const status = count > 0 ? 'has-imports' : 'no-imports'
 
 
 
 
 
17
  const buttonRef = useRef()
18
 
19
  useEffect(() => {
44
  ref={buttonRef}
45
  rel="noreferrer"
46
  className={classnames(
47
+ 'button-focus hidden w-full justify-between rounded py-3 px-4 text-sm text-white no-underline sm:flex',
48
+ {
49
+ 'bg-wp-theme-500 hover:bg-wp-theme-600': count > 0,
50
+ 'bg-extendify-alert': !count,
51
+ },
52
  )}
53
+ onClick={async () => await General.ping('import-counter-click')}
54
  href={`https://www.extendify.com/pricing/?utm_source=${encodeURIComponent(
55
  window.extendifyData.sdk_partner,
56
+ )}&utm_medium=library&utm_campaign=import-counter&utm_content=get-more&utm_term=${status}&utm_group=${useUserStore
57
+ .getState()
58
+ .activeTestGroupsUtmValue()}`}>
59
+ <span className="flex items-center space-x-2 text-xs no-underline">
60
+ <Icon icon={count > 0 ? download : alert} size={14} />
61
  <span>
62
  {sprintf(
63
  _n('%s Import', '%s Imports', count, 'extendify'),
65
  )}
66
  </span>
67
  </span>
68
+ <span className="outline-none flex items-center text-sm font-medium text-white no-underline">
69
  {__('Get more', 'extendify')}
70
  <Icon icon={growthArrow} size={24} className="-mr-1.5" />
71
  </span>
72
  </a>
73
  <div
74
+ className="extendify-bottom-arrow invisible absolute top-0 w-full -translate-y-full transform opacity-0 shadow-md transition-all delay-200 duration-300 ease-in-out group-hover:visible group-hover:-top-2.5 group-hover:opacity-100 group-focus:visible group-focus:-top-2.5 group-focus:opacity-100"
75
  tabIndex="-1">
76
  <a
77
  href={`https://www.extendify.com/pricing/?utm_source=${encodeURIComponent(
78
  window.extendifyData.sdk_partner,
79
+ )}&utm_medium=library&utm_campaign=import-counter-tooltip&utm_content=get-50-off&utm_term=${status}&utm_group=${useUserStore
80
+ .getState()
81
+ .activeTestGroupsUtmValue()}`}
82
  className="block bg-gray-900 text-white p-4 no-underline rounded bg-cover"
83
+ onClick={async () =>
84
+ await General.ping('import-counter-tooltip-click')
85
+ }
86
  style={{
87
  backgroundImage: `url(${window.extendifyData.asset_path}/logo-tips.png)`,
88
+ backgroundSize: '100% 100%',
89
  }}>
90
  <span
91
  dangerouslySetInnerHTML={{
extendify-sdk/src/components/ImportTemplateBlock.js CHANGED
@@ -1,14 +1,14 @@
1
- import classNames from 'classnames'
2
- import { useEffect, useState, useRef, useMemo } from '@wordpress/element'
3
- import { __, sprintf } from '@wordpress/i18n'
4
  import { BlockPreview } from '@wordpress/block-editor'
5
  import { rawHandler } from '@wordpress/blocks'
6
- import { AuthorizationCheck, Middleware } from '../middleware'
7
- import { injectTemplateBlocks } from '../util/templateInjection'
8
- import { useUserStore } from '../state/User'
9
- import { useGlobalStore } from '../state/GlobalState'
10
- import { Templates as TemplatesApi } from '../api/Templates'
11
- import { useIsDevMode } from '../hooks/helpers'
 
 
 
12
  import { DevButtonOverlay } from './DevHelpers'
13
  import { NoImportModal } from './modals/NoImportModal'
14
  import { ProModal } from './modals/ProModal'
@@ -105,11 +105,15 @@ export function ImportTemplateBlock({ template, maxHeight }) {
105
  if (height) {
106
  rafId4 = window.requestAnimationFrame(
107
  () => {
108
- frame.style.height = height + 'px'
 
 
109
  },
110
  )
111
  const id = window.setTimeout(() => {
112
- frame.style.height = height + 'px'
 
 
113
  }, 2000)
114
  timeouts.push(id)
115
  }
@@ -161,7 +165,7 @@ export function ImportTemplateBlock({ template, maxHeight }) {
161
  }, [maxHeight])
162
 
163
  return (
164
- <div className="relative group">
165
  <div
166
  role="button"
167
  tabIndex="0"
@@ -170,7 +174,7 @@ export function ImportTemplateBlock({ template, maxHeight }) {
170
  template?.fields?.type,
171
  )}
172
  style={{ maxHeight }}
173
- className="m-0 cursor-pointer button-focus ease-in-out relative overflow-hidden bg-gray-100"
174
  onFocus={focusTrapInnerBlocks}
175
  onClick={importTemplate}
176
  onKeyDown={handleKeyDown}>
@@ -192,7 +196,7 @@ export function ImportTemplateBlock({ template, maxHeight }) {
192
  {/* Show dev info after the preview is loaded to trigger observer */}
193
  {devMode && loaded && <DevButtonOverlay template={template} />}
194
  {template?.fields?.pro && (
195
- <div className="bg-white bg-wp-theme-500 border font-medium border-none absolute z-20 top-4 right-4 py-1 px-2.5 rounded-md shadow-sm no-underline text-white pointer-events-none">
196
  {__('Pro', 'extendify')}
197
  </div>
198
  )}
 
 
 
1
  import { BlockPreview } from '@wordpress/block-editor'
2
  import { rawHandler } from '@wordpress/blocks'
3
+ import { useEffect, useState, useRef, useMemo } from '@wordpress/element'
4
+ import { __, sprintf } from '@wordpress/i18n'
5
+ import classNames from 'classnames'
6
+ import { Templates as TemplatesApi } from '@extendify/api/Templates'
7
+ import { useIsDevMode } from '@extendify/hooks/helpers'
8
+ import { AuthorizationCheck, Middleware } from '@extendify/middleware'
9
+ import { useGlobalStore } from '@extendify/state/GlobalState'
10
+ import { useUserStore } from '@extendify/state/User'
11
+ import { injectTemplateBlocks } from '@extendify/util/templateInjection'
12
  import { DevButtonOverlay } from './DevHelpers'
13
  import { NoImportModal } from './modals/NoImportModal'
14
  import { ProModal } from './modals/ProModal'
105
  if (height) {
106
  rafId4 = window.requestAnimationFrame(
107
  () => {
108
+ frame.contentWindow.dispatchEvent(
109
+ new Event('resize'),
110
+ )
111
  },
112
  )
113
  const id = window.setTimeout(() => {
114
+ frame.contentWindow.dispatchEvent(
115
+ new Event('resize'),
116
+ )
117
  }, 2000)
118
  timeouts.push(id)
119
  }
165
  }, [maxHeight])
166
 
167
  return (
168
+ <div className="group relative">
169
  <div
170
  role="button"
171
  tabIndex="0"
174
  template?.fields?.type,
175
  )}
176
  style={{ maxHeight }}
177
+ className="button-focus relative m-0 cursor-pointer overflow-hidden bg-gray-100 ease-in-out"
178
  onFocus={focusTrapInnerBlocks}
179
  onClick={importTemplate}
180
  onKeyDown={handleKeyDown}>
196
  {/* Show dev info after the preview is loaded to trigger observer */}
197
  {devMode && loaded && <DevButtonOverlay template={template} />}
198
  {template?.fields?.pro && (
199
+ <div className="pointer-events-none absolute top-4 right-4 z-20 rounded-md border border-none bg-white bg-wp-theme-500 py-1 px-2.5 font-medium text-white no-underline shadow-sm">
200
  {__('Pro', 'extendify')}
201
  </div>
202
  )}
extendify-sdk/src/components/LibraryAccessModal.js CHANGED
@@ -1,11 +1,10 @@
1
  import { Modal } from '@wordpress/components'
2
- import { unmountComponentAtNode, useState, useEffect } from '@wordpress/element'
3
  import { ToggleControl } from '@wordpress/components'
4
- import { __ } from '@wordpress/i18n'
5
  import { useSelect } from '@wordpress/data'
6
-
7
- import { useUserStore } from '../state/User'
8
- import { useSiteSettingsStore } from '../state/SiteSettings'
 
9
 
10
  const LibraryAccessModal = () => {
11
  const isAdmin = useSelect((select) =>
@@ -13,10 +12,10 @@ const LibraryAccessModal = () => {
13
  )
14
 
15
  const [libraryforMyself, setLibraryforMyself] = useState(
16
- useUserStore((store) => store.enabled),
17
  )
18
  const [libraryforEveryone, setLibraryforEveryone] = useState(
19
- useSiteSettingsStore((store) => store.enabled),
20
  )
21
 
22
  const closeModal = () => {
@@ -34,9 +33,9 @@ const LibraryAccessModal = () => {
34
  )
35
  if (!button) return
36
  if (state) {
37
- button.classList.add('invisible')
38
  } else {
39
- button.classList.remove('invisible')
40
  }
41
  }
42
 
1
  import { Modal } from '@wordpress/components'
 
2
  import { ToggleControl } from '@wordpress/components'
 
3
  import { useSelect } from '@wordpress/data'
4
+ import { unmountComponentAtNode, useState, useEffect } from '@wordpress/element'
5
+ import { __ } from '@wordpress/i18n'
6
+ import { useSiteSettingsStore } from '@extendify/state/SiteSettings'
7
+ import { useUserStore } from '@extendify/state/User'
8
 
9
  const LibraryAccessModal = () => {
10
  const isAdmin = useSelect((select) =>
12
  )
13
 
14
  const [libraryforMyself, setLibraryforMyself] = useState(
15
+ useUserStore.getState().enabled,
16
  )
17
  const [libraryforEveryone, setLibraryforEveryone] = useState(
18
+ useSiteSettingsStore.getState().enabled,
19
  )
20
 
21
  const closeModal = () => {
33
  )
34
  if (!button) return
35
  if (state) {
36
+ button.classList.add('hidden')
37
  } else {
38
+ button.classList.remove('hidden')
39
  }
40
  }
41
 
extendify-sdk/src/components/MainButtons.js CHANGED
@@ -1,15 +1,16 @@
1
  import { Button } from '@wordpress/components'
2
  import { useState, useEffect, useRef } from '@wordpress/element'
 
3
  import { Icon } from '@wordpress/icons'
 
 
 
 
 
4
  import { brandMark } from './icons'
5
- import { __ } from '@wordpress/i18n'
6
- import { openModal } from '../util/general'
7
- import { useUserStore } from '../state/User'
8
- import { useGlobalStore } from '../state/GlobalState'
9
- import { General } from '../api/General'
10
  import { NewImportsPopover } from './popovers/NewImportsPopover'
11
 
12
- export const MainButton = () => {
13
  const [showTooltip, setShowTooltip] = useState(false)
14
  const once = useRef(false)
15
  const buttonRef = useRef()
@@ -19,6 +20,9 @@ export const MainButton = () => {
19
  const hasPendingNewImports = useUserStore(
20
  (state) => state.allowedImports === 0,
21
  )
 
 
 
22
 
23
  const handleTooltipClose = async () => {
24
  await General.ping('mb-tooltip-closed')
@@ -30,6 +34,20 @@ export const MainButton = () => {
30
  allowedImports: -1,
31
  })
32
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33
 
34
  useEffect(() => {
35
  if (open) {
@@ -44,22 +62,7 @@ export const MainButton = () => {
44
 
45
  return (
46
  <>
47
- <Button
48
- isPrimary
49
- ref={buttonRef}
50
- style={{ padding: '12px' }}
51
- onClick={() => openModal('main-button')}
52
- id="extendify-templates-inserter-btn"
53
- icon={
54
- <Icon
55
- style={{ marginRight: '4px' }}
56
- icon={brandMark}
57
- size={24}
58
- />
59
- }>
60
- {__('Library', 'extendify')}
61
- </Button>
62
-
63
  {showTooltip && (
64
  <NewImportsPopover
65
  anchorRef={buttonRef}
@@ -73,7 +76,25 @@ export const MainButton = () => {
73
  </>
74
  )
75
  }
76
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
77
  export const CtaButton = () => {
78
  return (
79
  <Button
1
  import { Button } from '@wordpress/components'
2
  import { useState, useEffect, useRef } from '@wordpress/element'
3
+ import { __ } from '@wordpress/i18n'
4
  import { Icon } from '@wordpress/icons'
5
+ import { General } from '@extendify/api/General'
6
+ import { useTestGroup } from '@extendify/hooks/useTestGroup'
7
+ import { useGlobalStore } from '@extendify/state/GlobalState'
8
+ import { useUserStore } from '@extendify/state/User'
9
+ import { openModal } from '@extendify/util/general'
10
  import { brandMark } from './icons'
 
 
 
 
 
11
  import { NewImportsPopover } from './popovers/NewImportsPopover'
12
 
13
+ export const MainButtonWrapper = () => {
14
  const [showTooltip, setShowTooltip] = useState(false)
15
  const once = useRef(false)
16
  const buttonRef = useRef()
20
  const hasPendingNewImports = useUserStore(
21
  (state) => state.allowedImports === 0,
22
  )
23
+ const uuid = useUserStore((state) => state.uuid)
24
+ const buttonText = useTestGroup('main-button-text', ['A', 'B', 'C'], true)
25
+ const [libraryButtonText, setLibraryButtonText] = useState()
26
 
27
  const handleTooltipClose = async () => {
28
  await General.ping('mb-tooltip-closed')
34
  allowedImports: -1,
35
  })
36
  }
37
+ useEffect(() => {
38
+ if (!uuid) return
39
+ const text = () => {
40
+ switch (buttonText) {
41
+ case 'A':
42
+ return __('Library', 'extendify')
43
+ case 'B':
44
+ return __('Add section', 'extendify')
45
+ case 'C':
46
+ return __('Add template', 'extendify')
47
+ }
48
+ }
49
+ setLibraryButtonText(text())
50
+ }, [buttonText, uuid])
51
 
52
  useEffect(() => {
53
  if (open) {
62
 
63
  return (
64
  <>
65
+ <MainButton buttonRef={buttonRef} text={libraryButtonText} />
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
66
  {showTooltip && (
67
  <NewImportsPopover
68
  anchorRef={buttonRef}
76
  </>
77
  )
78
  }
79
+ const MainButton = ({ buttonRef, text }) => {
80
+ return (
81
+ <Button
82
+ isPrimary
83
+ ref={buttonRef}
84
+ style={{ padding: '12px' }}
85
+ onClick={() => openModal('main-button')}
86
+ id="extendify-templates-inserter-btn"
87
+ icon={
88
+ <Icon
89
+ style={{ marginRight: '4px' }}
90
+ icon={brandMark}
91
+ size={24}
92
+ />
93
+ }>
94
+ {text}
95
+ </Button>
96
+ )
97
+ }
98
  export const CtaButton = () => {
99
  return (
100
  <Button
extendify-sdk/src/components/SidebarNotice.js ADDED
@@ -0,0 +1,90 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { safeHTML } from '@wordpress/dom'
2
+ import { useEffect, memo } from '@wordpress/element'
3
+ import { __, _n, _x, sprintf } from '@wordpress/i18n'
4
+ import { Icon } from '@wordpress/icons'
5
+ import classNames from 'classnames'
6
+ import { General } from '@extendify/api/General'
7
+ import { User as UserApi } from '@extendify/api/User'
8
+ import { useUserStore } from '@extendify/state/User'
9
+ import { brandMark } from './icons'
10
+
11
+ export const SidebarNotice = memo(function SidebarNotice() {
12
+ const remainingImports = useUserStore((state) => state.remainingImports)
13
+ const allowedImports = useUserStore((state) => state.allowedImports)
14
+ const count = remainingImports()
15
+ const link = `https://www.extendify.com/pricing/?utm_source=${encodeURIComponent(
16
+ window.extendifyData.sdk_partner,
17
+ )}&utm_medium=library&utm_campaign=import-counter&utm_content=get-more&utm_term=${
18
+ count > 0 ? 'has-imports' : 'no-imports'
19
+ }&utm_group=${useUserStore.getState().activeTestGroupsUtmValue()}`
20
+
21
+ useEffect(() => {
22
+ if (allowedImports < 1 || !allowedImports) {
23
+ const fallback = 5
24
+ UserApi.allowedImports()
25
+ .then((allowedImports) => {
26
+ allowedImports = /^[1-9]\d*$/.test(allowedImports)
27
+ ? allowedImports
28
+ : fallback
29
+ useUserStore.setState({ allowedImports })
30
+ })
31
+ .catch(() =>
32
+ useUserStore.setState({ allowedImports: fallback }),
33
+ )
34
+ }
35
+ }, [allowedImports])
36
+
37
+ if (!allowedImports) {
38
+ return null
39
+ }
40
+
41
+ return (
42
+ <a
43
+ target="_blank"
44
+ className="absolute bottom-4 left-0 mx-5 block bg-white rounded border-solid border border-gray-200 p-4 text-left no-underline group button-focus"
45
+ rel="noreferrer"
46
+ onClick={async () => await General.ping('fp-sb-click')}
47
+ href={link}>
48
+ <span className="flex -ml-1.5 space-x-1.5">
49
+ <Icon icon={brandMark} />
50
+ <span className="mb-1 text-gray-800 font-medium text-sm">
51
+ {__('Free Plan', 'extendify')}
52
+ </span>
53
+ </span>
54
+ <span className="text-gray-700 block ml-6 mb-1.5">
55
+ {sprintf(
56
+ _n(
57
+ 'You have %s free pattern and layout import remaining this month.',
58
+ 'You have %s free pattern and layout imports remaining this month.',
59
+ count,
60
+ 'extendify',
61
+ ),
62
+ count,
63
+ )}
64
+ </span>
65
+ <span
66
+ className={classNames(
67
+ 'block font-semibold ml-6 text-sm group-hover:underline',
68
+ {
69
+ 'text-red-500': count < 2,
70
+ 'text-wp-theme-500': count > 1,
71
+ },
72
+ )}
73
+ dangerouslySetInnerHTML={{
74
+ __html: safeHTML(
75
+ sprintf(
76
+ _x(
77
+ 'Upgrade today %s',
78
+ 'The replacement string is a right arrow and context is not lost if removed.',
79
+ 'extendify',
80
+ ),
81
+ `<span class="text-base">
82
+ ${String.fromCharCode(8250)}
83
+ </span>`,
84
+ ),
85
+ ),
86
+ }}
87
+ />
88
+ </a>
89
+ )
90
+ })
extendify-sdk/src/components/SiteTypeSelector.js CHANGED
@@ -2,8 +2,8 @@ import { useEffect, useState, useRef, useMemo } from '@wordpress/element'
2
  import { __ } from '@wordpress/i18n'
3
  import classNames from 'classnames'
4
  import Fuse from 'fuse.js'
5
- import { useTemplatesStore } from '../state/Templates'
6
- import { useUserStore } from '../state/User'
7
 
8
  const searchMemo = new Map()
9
 
@@ -64,7 +64,7 @@ export const SiteTypeSelector = ({ value, setValue, terms }) => {
64
  }, [terms])
65
 
66
  useEffect(() => {
67
- if (!tempValue.length) setVisibleChoices(examples)
68
  }, [examples, tempValue])
69
 
70
  useEffect(() => {
@@ -75,10 +75,10 @@ export const SiteTypeSelector = ({ value, setValue, terms }) => {
75
  return (
76
  <>
77
  <span className="flex flex-col text-left">
78
- <span className="text-sm mb-1">
79
  {__('Site Type', 'extendify')}
80
  </span>
81
- <span className="font-light text-xs">{description}</span>
82
  </span>
83
  <span className="flex items-center space-x-4">
84
  {unknown && !expanded && (
@@ -107,8 +107,8 @@ export const SiteTypeSelector = ({ value, setValue, terms }) => {
107
  </svg>
108
  )}
109
  <svg
110
- className={classNames('text-gray-700 stroke-current', {
111
- 'transform rotate-90 -translate-x-1': expanded,
112
  })}
113
  aria-hidden="true"
114
  focusable="false"
@@ -133,7 +133,7 @@ export const SiteTypeSelector = ({ value, setValue, terms }) => {
133
  }
134
  return (
135
  <>
136
- <h4 className="mt-4 mb-2 text-left uppercase text-xss text-gray-700 font-medium">
137
  {title}
138
  </h4>
139
  <ul className="m-0">
@@ -149,7 +149,7 @@ export const SiteTypeSelector = ({ value, setValue, terms }) => {
149
  <button
150
  type="button"
151
  className={classNames(
152
- 'w-full text-left text-sm bg-transparent hover:text-wp-theme-500 m-0 pl-0 cursor-pointer',
153
  { 'text-gray-800': !current },
154
  )}
155
  onClick={() => {
@@ -167,11 +167,11 @@ export const SiteTypeSelector = ({ value, setValue, terms }) => {
167
  }
168
 
169
  return (
170
- <div className="w-full bg-extendify-transparent-black rounded">
171
  <button
172
  type="button"
173
  onClick={() => setExpanded((expanded) => !expanded)}
174
- className="flex items-center justify-between text-gray-800 button-focus w-full p-4 m-0 cursor-pointer bg-transparent hover:bg-extendify-transparent-black-100 rounded">
175
  {contentHeader(
176
  expanded
177
  ? __('What kind of site is this?', 'extendify')
@@ -179,7 +179,7 @@ export const SiteTypeSelector = ({ value, setValue, terms }) => {
179
  )}
180
  </button>
181
  {expanded && (
182
- <div className="p-4 pt-0 overflow-y-auto max-h-96">
183
  <div className="relative my-2">
184
  <label htmlFor="site-type-search" className="sr-only">
185
  {__('Search', 'extendify')}
@@ -192,11 +192,11 @@ export const SiteTypeSelector = ({ value, setValue, terms }) => {
192
  updateSearch(event.target.value)
193
  }
194
  type="text"
195
- className="button-focus bg-white border-0 m-0 p-3.5 py-2.5 rounded text-sm w-full"
196
  placeholder={__('Search', 'extendify')}
197
  />
198
  <svg
199
- className="absolute top-2 right-2 hidden lg:block pointer-events-none"
200
  xmlns="http://www.w3.org/2000/svg"
201
  viewBox="0 0 24 24"
202
  width="24"
@@ -207,7 +207,7 @@ export const SiteTypeSelector = ({ value, setValue, terms }) => {
207
  <path d="M13.5 6C10.5 6 8 8.5 8 11.5c0 1.1.3 2.1.9 3l-3.4 3 1 1.1 3.4-2.9c1 .9 2.2 1.4 3.6 1.4 3 0 5.5-2.5 5.5-5.5C19 8.5 16.5 6 13.5 6zm0 9.5c-2.2 0-4-1.8-4-4s1.8-4 4-4 4 1.8 4 4-1.8 4-4 4z"></path>
208
  </svg>
209
  </div>
210
- {tempValue.length > 1 && visibleChoices === examples && (
211
  <p className="text-left">
212
  {__('Nothing found...', 'extendify')}
213
  </p>
@@ -220,16 +220,16 @@ export const SiteTypeSelector = ({ value, setValue, terms }) => {
220
  )}
221
  </div>
222
  )}
223
- {visibleChoices.length > 0 && (
224
  <div>{choicesList(visibleChoices)}</div>
225
  )}
226
  {unknown ? null : (
227
  <button
228
  type="button"
229
- className="mt-4 w-full text-left text-sm bg-transparent hover:text-wp-theme-500 pl-0 cursor-pointer text-wp-theme-500"
230
  onClick={() => {
231
  setExpanded(false)
232
- setValue('Unknown')
233
  }}>
234
  {__('Reset', 'extendify')}
235
  </button>
2
  import { __ } from '@wordpress/i18n'
3
  import classNames from 'classnames'
4
  import Fuse from 'fuse.js'
5
+ import { useTemplatesStore } from '@extendify/state/Templates'
6
+ import { useUserStore } from '@extendify/state/User'
7
 
8
  const searchMemo = new Map()
9
 
64
  }, [terms])
65
 
66
  useEffect(() => {
67
+ if (!tempValue?.length) setVisibleChoices(examples)
68
  }, [examples, tempValue])
69
 
70
  useEffect(() => {
75
  return (
76
  <>
77
  <span className="flex flex-col text-left">
78
+ <span className="mb-1 text-sm">
79
  {__('Site Type', 'extendify')}
80
  </span>
81
+ <span className="text-xs font-light">{description}</span>
82
  </span>
83
  <span className="flex items-center space-x-4">
84
  {unknown && !expanded && (
107
  </svg>
108
  )}
109
  <svg
110
+ className={classNames('stroke-current text-gray-700', {
111
+ '-translate-x-1 rotate-90 transform': expanded,
112
  })}
113
  aria-hidden="true"
114
  focusable="false"
133
  }
134
  return (
135
  <>
136
+ <h4 className="mt-4 mb-2 text-left text-xss font-medium uppercase text-gray-700">
137
  {title}
138
  </h4>
139
  <ul className="m-0">
149
  <button
150
  type="button"
151
  className={classNames(
152
+ 'm-0 w-full cursor-pointer bg-transparent pl-0 text-left text-sm hover:text-wp-theme-500',
153
  { 'text-gray-800': !current },
154
  )}
155
  onClick={() => {
167
  }
168
 
169
  return (
170
+ <div className="w-full rounded bg-extendify-transparent-black">
171
  <button
172
  type="button"
173
  onClick={() => setExpanded((expanded) => !expanded)}
174
+ className="button-focus m-0 flex w-full cursor-pointer items-center justify-between rounded bg-transparent p-4 text-gray-800 hover:bg-extendify-transparent-black-100">
175
  {contentHeader(
176
  expanded
177
  ? __('What kind of site is this?', 'extendify')
179
  )}
180
  </button>
181
  {expanded && (
182
+ <div className="max-h-96 overflow-y-auto p-4 pt-0">
183
  <div className="relative my-2">
184
  <label htmlFor="site-type-search" className="sr-only">
185
  {__('Search', 'extendify')}
192
  updateSearch(event.target.value)
193
  }
194
  type="text"
195
+ className="button-focus m-0 w-full rounded border-0 bg-white p-3.5 py-2.5 text-sm"
196
  placeholder={__('Search', 'extendify')}
197
  />
198
  <svg
199
+ className="pointer-events-none absolute top-2 right-2 hidden lg:block"
200
  xmlns="http://www.w3.org/2000/svg"
201
  viewBox="0 0 24 24"
202
  width="24"
207
  <path d="M13.5 6C10.5 6 8 8.5 8 11.5c0 1.1.3 2.1.9 3l-3.4 3 1 1.1 3.4-2.9c1 .9 2.2 1.4 3.6 1.4 3 0 5.5-2.5 5.5-5.5C19 8.5 16.5 6 13.5 6zm0 9.5c-2.2 0-4-1.8-4-4s1.8-4 4-4 4 1.8 4 4-1.8 4-4 4z"></path>
208
  </svg>
209
  </div>
210
+ {tempValue?.length > 1 && visibleChoices === examples && (
211
  <p className="text-left">
212
  {__('Nothing found...', 'extendify')}
213
  </p>
220
  )}
221
  </div>
222
  )}
223
+ {visibleChoices?.length > 0 && (
224
  <div>{choicesList(visibleChoices)}</div>
225
  )}
226
  {unknown ? null : (
227
  <button
228
  type="button"
229
+ className="mt-4 w-full cursor-pointer bg-transparent pl-0 text-left text-sm text-wp-theme-500 hover:text-wp-theme-500"
230
  onClick={() => {
231
  setExpanded(false)
232
+ setValue({ slug: '', title: 'Unknown' })
233
  }}>
234
  {__('Reset', 'extendify')}
235
  </button>
extendify-sdk/src/components/TaxonomySection.js CHANGED
@@ -1,9 +1,9 @@
1
  import { PanelBody, PanelRow } from '@wordpress/components'
2
  import classNames from 'classnames'
3
- import { useTemplatesStore } from '../state/Templates'
4
- import { getTaxonomyName } from '../util/general'
5
 
6
- export default function TaxonomySection({ taxType, taxonomies }) {
7
  const updateTaxonomies = useTemplatesStore(
8
  (state) => state.updateTaxonomies,
9
  )
@@ -12,12 +12,12 @@ export default function TaxonomySection({ taxType, taxonomies }) {
12
  if (!taxonomies?.length > 0) return null
13
  return (
14
  <PanelBody
15
- title={getTaxonomyName(taxType)}
16
  className="ext-type-control p-0"
17
  initialOpen={true}>
18
  <PanelRow>
19
- <div className="overflow-hidden w-full relative">
20
- <ul className="px-5 py-1 m-0 w-full">
21
  {taxonomies.map((tax) => {
22
  const isCurrentTax =
23
  searchParams?.taxonomies[taxType]?.slug ===
@@ -26,7 +26,7 @@ export default function TaxonomySection({ taxType, taxonomies }) {
26
  <li className="m-0 w-full" key={tax.slug}>
27
  <button
28
  type="button"
29
- className="text-left text-sm cursor-pointer w-full flex justify-between items-center px-0 py-2 m-0 leading-none bg-transparent hover:text-wp-theme-500 transition duration-200 button-focus"
30
  onClick={() =>
31
  updateTaxonomies({ [taxType]: tax })
32
  }>
1
  import { PanelBody, PanelRow } from '@wordpress/components'
2
  import classNames from 'classnames'
3
+ import { useTemplatesStore } from '@extendify/state/Templates'
4
+ import { getTaxonomyName } from '@extendify/util/general'
5
 
6
+ export default function TaxonomySection({ taxType, taxonomies, taxLabel }) {
7
  const updateTaxonomies = useTemplatesStore(
8
  (state) => state.updateTaxonomies,
9
  )
12
  if (!taxonomies?.length > 0) return null
13
  return (
14
  <PanelBody
15
+ title={getTaxonomyName(taxLabel ?? taxType)}
16
  className="ext-type-control p-0"
17
  initialOpen={true}>
18
  <PanelRow>
19
+ <div className="relative w-full overflow-hidden">
20
+ <ul className="m-0 w-full px-5 py-1">
21
  {taxonomies.map((tax) => {
22
  const isCurrentTax =
23
  searchParams?.taxonomies[taxType]?.slug ===
26
  <li className="m-0 w-full" key={tax.slug}>
27
  <button
28
  type="button"
29
+ className="button-focus m-0 flex w-full cursor-pointer items-center justify-between bg-transparent px-0 py-2 text-left text-sm leading-none transition duration-200 hover:text-wp-theme-500"
30
  onClick={() =>
31
  updateTaxonomies({ [taxType]: tax })
32
  }>
extendify-sdk/src/components/TypeSelect.js CHANGED
@@ -1,7 +1,7 @@
1
  import { __ } from '@wordpress/i18n'
2
- import { useTemplatesStore } from '../state/Templates'
3
  import classNames from 'classnames'
4
- import { useGlobalStore } from '../state/GlobalState'
 
5
 
6
  export const TypeSelect = ({ className }) => {
7
  const updateType = useTemplatesStore((state) => state.updateType)
@@ -15,7 +15,7 @@ export const TypeSelect = ({ className }) => {
15
  <button
16
  type="button"
17
  className={classNames({
18
- 'cursor-pointer text-xs leading-none m-0 py-2.5 px-4 min-w-sm border rounded-tl-sm rounded-bl-sm border-black button-focus': true,
19
  'bg-gray-900 text-white': currentType === 'pattern',
20
  'bg-transparent text-black': currentType !== 'pattern',
21
  })}
@@ -25,7 +25,7 @@ export const TypeSelect = ({ className }) => {
25
  <button
26
  type="button"
27
  className={classNames({
28
- 'cursor-pointer text-xs leading-none m-0 py-2.5 px-4 min-w-sm items-center border rounded-tr-sm rounded-br-sm border-black outline-none -ml-px button-focus': true,
29
  'bg-gray-900 text-white': currentType === 'template',
30
  'bg-transparent text-black': currentType !== 'template',
31
  })}
1
  import { __ } from '@wordpress/i18n'
 
2
  import classNames from 'classnames'
3
+ import { useGlobalStore } from '@extendify/state/GlobalState'
4
+ import { useTemplatesStore } from '@extendify/state/Templates'
5
 
6
  export const TypeSelect = ({ className }) => {
7
  const updateType = useTemplatesStore((state) => state.updateType)
15
  <button
16
  type="button"
17
  className={classNames({
18
+ 'button-focus m-0 min-w-sm cursor-pointer rounded-tl-sm rounded-bl-sm border border-black py-2.5 px-4 text-xs leading-none': true,
19
  'bg-gray-900 text-white': currentType === 'pattern',
20
  'bg-transparent text-black': currentType !== 'pattern',
21
  })}
25
  <button
26
  type="button"
27
  className={classNames({
28
+ 'outline-none button-focus m-0 -ml-px min-w-sm cursor-pointer items-center rounded-tr-sm rounded-br-sm border border-black py-2.5 px-4 text-xs leading-none': true,
29
  'bg-gray-900 text-white': currentType === 'template',
30
  'bg-transparent text-black': currentType !== 'template',
31
  })}
extendify-sdk/src/components/modals/InstallStandaloneModal.js CHANGED
@@ -1,13 +1,13 @@
1
- import { useState, useRef } from '@wordpress/element'
2
  import { Icon } from '@wordpress/components'
 
 
3
  import { __, sprintf } from '@wordpress/i18n'
 
 
 
 
 
4
  import { SplitModal } from './SplitModal'
5
- import { download2, brandLogo } from '../icons'
6
- import { Plugins } from '../../api/Plugins'
7
- import { General } from '../../api/General'
8
- import { useUserStore } from '../../state/User'
9
- import { safeHTML } from '@wordpress/dom'
10
- import { useGlobalStore } from '../../state/GlobalState'
11
 
12
  export const InstallStandaloneModal = () => {
13
  const [text, setText] = useState(__('Install Extendify', 'extendify'))
@@ -48,7 +48,7 @@ export const InstallStandaloneModal = () => {
48
  return (
49
  <SplitModal ref={initialFocus} onClose={dismiss}>
50
  <div>
51
- <div className="flex space-x-2 items-center mb-10 text-extendify-black">
52
  {brandLogo}
53
  </div>
54
  <h3 className="text-xl">
@@ -77,23 +77,23 @@ export const InstallStandaloneModal = () => {
77
  onClick={installAndActivate}
78
  ref={initialFocus}
79
  disabled={disabled}
80
- className="button-extendify-main inline-flex mt-2 px-4 py-3 button-focus justify-center"
81
  style={{ minWidth: '225px' }}>
82
  {text}
83
  {success || (
84
  <Icon
85
  icon={download2}
86
  size={24}
87
- className="w-6 ml-2 flex-grow-0"
88
  />
89
  )}
90
  </button>
91
  </div>
92
  </div>
93
- <div className="w-full bg-extendify-secondary flex justify-end rounded-tr-sm rounded-br-sm">
94
  <img
95
  alt={__('Upgrade Now', 'extendify')}
96
- className="max-w-full rounded-tr-sm roudned-br-sm"
97
  src={
98
  window.extendifyData.asset_path +
99
  '/modal-extendify-purple.png'
 
1
  import { Icon } from '@wordpress/components'
2
+ import { safeHTML } from '@wordpress/dom'
3
+ import { useState, useRef } from '@wordpress/element'
4
  import { __, sprintf } from '@wordpress/i18n'
5
+ import { General } from '@extendify/api/General'
6
+ import { Plugins } from '@extendify/api/Plugins'
7
+ import { download2, brandLogo } from '@extendify/components/icons'
8
+ import { useGlobalStore } from '@extendify/state/GlobalState'
9
+ import { useUserStore } from '@extendify/state/User'
10
  import { SplitModal } from './SplitModal'
 
 
 
 
 
 
11
 
12
  export const InstallStandaloneModal = () => {
13
  const [text, setText] = useState(__('Install Extendify', 'extendify'))
48
  return (
49
  <SplitModal ref={initialFocus} onClose={dismiss}>
50
  <div>
51
+ <div className="mb-10 flex items-center space-x-2 text-extendify-black">
52
  {brandLogo}
53
  </div>
54
  <h3 className="text-xl">
77
  onClick={installAndActivate}
78
  ref={initialFocus}
79
  disabled={disabled}
80
+ className="button-extendify-main button-focus mt-2 inline-flex justify-center px-4 py-3"
81
  style={{ minWidth: '225px' }}>
82
  {text}
83
  {success || (
84
  <Icon
85
  icon={download2}
86
  size={24}
87
+ className="ml-2 w-6 flex-grow-0"
88
  />
89
  )}
90
  </button>
91
  </div>
92
  </div>
93
+ <div className="flex w-full justify-end rounded-tr-sm rounded-br-sm bg-extendify-secondary">
94
  <img
95
  alt={__('Upgrade Now', 'extendify')}
96
+ className="roudned-br-sm max-w-full rounded-tr-sm"
97
  src={
98
  window.extendifyData.asset_path +
99
  '/modal-extendify-purple.png'
extendify-sdk/src/components/modals/Modal.js CHANGED
@@ -1,9 +1,9 @@
1
- import { Dialog, Transition } from '@headlessui/react'
2
  import { Fragment, useRef, forwardRef } from '@wordpress/element'
3
  import { __ } from '@wordpress/i18n'
4
  import { Icon, close } from '@wordpress/icons'
5
- import { Button } from '@wordpress/components'
6
- import { useGlobalStore } from '../../state/GlobalState'
7
 
8
  export const Modal = forwardRef(
9
  ({ isOpen, heading, onClose, children }, initialFocus) => {
@@ -20,7 +20,7 @@ export const Modal = forwardRef(
20
  <Dialog
21
  initialFocus={initialFocus ?? focusBackup}
22
  onClose={onClose}>
23
- <div className="fixed z-high inset-0 flex">
24
  <Transition.Child
25
  as={Fragment}
26
  enter="ease-out duration-200 transition"
@@ -33,17 +33,17 @@ export const Modal = forwardRef(
33
  enter="ease-out duration-300 translate transform"
34
  enterFrom="opacity-0 translate-y-4 sm:translate-y-5"
35
  enterTo="opacity-100 translate-y-0">
36
- <div className="m-auto relative w-full">
37
- <div className="bg-white shadow-modal items-center justify-center m-auto max-w-lg relative rounded-sm w-full">
38
  {heading ? (
39
- <div className="border-b flex justify-between items-center leading-none pl-8 py-2 pr-3">
40
- <span className="text-base text-extendify-black whitespace-nowrap">
41
  {heading}
42
  </span>
43
  <CloseButton onClick={onClose} />
44
  </div>
45
  ) : (
46
- <div className="absolute block px-4 py-4 top-0 right-0 ">
47
  <CloseButton
48
  ref={focusBackup}
49
  onClick={onClose}
1
+ import { Button } from '@wordpress/components'
2
  import { Fragment, useRef, forwardRef } from '@wordpress/element'
3
  import { __ } from '@wordpress/i18n'
4
  import { Icon, close } from '@wordpress/icons'
5
+ import { Dialog, Transition } from '@headlessui/react'
6
+ import { useGlobalStore } from '@extendify/state/GlobalState'
7
 
8
  export const Modal = forwardRef(
9
  ({ isOpen, heading, onClose, children }, initialFocus) => {
20
  <Dialog
21
  initialFocus={initialFocus ?? focusBackup}
22
  onClose={onClose}>
23
+ <div className="fixed inset-0 z-high flex">
24
  <Transition.Child
25
  as={Fragment}
26
  enter="ease-out duration-200 transition"
33
  enter="ease-out duration-300 translate transform"
34
  enterFrom="opacity-0 translate-y-4 sm:translate-y-5"
35
  enterTo="opacity-100 translate-y-0">
36
+ <div className="relative m-auto w-full">
37
+ <div className="relative m-auto w-full max-w-lg items-center justify-center rounded-sm bg-white shadow-modal">
38
  {heading ? (
39
+ <div className="flex items-center justify-between border-b py-2 pl-6 pr-3 leading-none">
40
+ <span className="whitespace-nowrap text-base text-extendify-black">
41
  {heading}
42
  </span>
43
  <CloseButton onClick={onClose} />
44
  </div>
45
  ) : (
46
+ <div className="absolute top-0 right-0 block px-4 py-4 ">
47
  <CloseButton
48
  ref={focusBackup}
49
  onClick={onClose}
extendify-sdk/src/components/modals/NoImportModal.js CHANGED
@@ -1,9 +1,10 @@
1
  import { Icon } from '@wordpress/components'
2
  import { Button } from '@wordpress/components'
3
- import { __ } from '@wordpress/i18n'
4
  import { useRef } from '@wordpress/element'
5
- import { SplitModal } from './SplitModal'
6
- import SettingsModal from './SettingsModal'
 
 
7
  import {
8
  growthArrow,
9
  patterns,
@@ -13,7 +14,8 @@ import {
13
  brandLogo,
14
  diamond,
15
  } from '../icons'
16
- import { useGlobalStore } from '../../state/GlobalState'
 
17
 
18
  export const NoImportModal = () => {
19
  const pushModal = useGlobalStore((state) => state.pushModal)
@@ -24,11 +26,11 @@ export const NoImportModal = () => {
24
  ref={initialFocus}
25
  leftContainerBgColor="bg-white">
26
  <div>
27
- <div className="flex space-x-2 items-center mb-5 text-extendify-black">
28
  {brandLogo}
29
  </div>
30
 
31
- <h3 className="text-xl mt-0">
32
  {__("You're out of imports", 'extendify')}
33
  </h3>
34
  <p className="text-sm text-black">
@@ -41,24 +43,31 @@ export const NoImportModal = () => {
41
  <a
42
  target="_blank"
43
  ref={initialFocus}
44
- className="button-extendify-main inline-flex mt-2 px-4 py-3 button-focus justify-center"
45
  style={{ minWidth: '225px' }}
46
- href={`https://extendify.com/pricing/?utm_source=${window.extendifyData.sdk_partner}&utm_medium=library&utm_campaign=no-imports-modal&utm_content=get-unlimited-imports`}
 
 
 
 
 
 
 
47
  rel="noreferrer">
48
  {__('Get Unlimited Imports', 'extendify')}
49
  <Icon icon={growthArrow} size={24} className="-mr-1" />
50
  </a>
51
- <p className="text-sm text-extendify-gray mb-0 text-left">
52
  {__('Have an account?', 'extendify')}
53
  <Button
54
  onClick={() => pushModal(<SettingsModal />)}
55
- className="underline hover:no-underline text-sm text-extendify-gray pl-2">
56
  {__('Sign in', 'extendify')}
57
  </Button>
58
  </p>
59
  </div>
60
  </div>
61
- <div className="space-y-2 flex flex-col justify-center p-10 text-black h-full">
62
  <div className="flex items-center space-x-3">
63
  <Icon icon={patterns} size={24} />
64
  <span className="text-sm leading-none">
1
  import { Icon } from '@wordpress/components'
2
  import { Button } from '@wordpress/components'
 
3
  import { useRef } from '@wordpress/element'
4
+ import { __ } from '@wordpress/i18n'
5
+ import { General } from '@extendify/api/General'
6
+ import { useGlobalStore } from '@extendify/state/GlobalState'
7
+ import { useUserStore } from '@extendify/state/User'
8
  import {
9
  growthArrow,
10
  patterns,
14
  brandLogo,
15
  diamond,
16
  } from '../icons'
17
+ import { SplitModal } from './SplitModal'
18
+ import { SettingsModal } from './settings/SettingsModal'
19
 
20
  export const NoImportModal = () => {
21
  const pushModal = useGlobalStore((state) => state.pushModal)
26
  ref={initialFocus}
27
  leftContainerBgColor="bg-white">
28
  <div>
29
+ <div className="mb-5 flex items-center space-x-2 text-extendify-black">
30
  {brandLogo}
31
  </div>
32
 
33
+ <h3 className="mt-0 text-xl">
34
  {__("You're out of imports", 'extendify')}
35
  </h3>
36
  <p className="text-sm text-black">
43
  <a
44
  target="_blank"
45
  ref={initialFocus}
46
+ className="button-extendify-main button-focus mt-2 inline-flex justify-center px-4 py-3"
47
  style={{ minWidth: '225px' }}
48
+ href={`https://extendify.com/pricing/?utm_source=${
49
+ window.extendifyData.sdk_partner
50
+ }&utm_medium=library&utm_campaign=no-imports-modal&utm_content=get-unlimited-imports&utm_group=${useUserStore
51
+ .getState()
52
+ .activeTestGroupsUtmValue()}`}
53
+ onClick={async () =>
54
+ await General.ping('no-imports-modal-click')
55
+ }
56
  rel="noreferrer">
57
  {__('Get Unlimited Imports', 'extendify')}
58
  <Icon icon={growthArrow} size={24} className="-mr-1" />
59
  </a>
60
+ <p className="mb-0 text-left text-sm text-extendify-gray">
61
  {__('Have an account?', 'extendify')}
62
  <Button
63
  onClick={() => pushModal(<SettingsModal />)}
64
+ className="pl-2 text-sm text-extendify-gray underline hover:no-underline">
65
  {__('Sign in', 'extendify')}
66
  </Button>
67
  </p>
68
  </div>
69
  </div>
70
+ <div className="flex h-full flex-col justify-center space-y-2 p-10 text-black">
71
  <div className="flex items-center space-x-3">
72
  <Icon icon={patterns} size={24} />
73
  <span className="text-sm leading-none">
extendify-sdk/src/components/modals/ProModal.js CHANGED
@@ -1,18 +1,20 @@
1
  import { Icon } from '@wordpress/components'
2
  import { useRef } from '@wordpress/element'
3
  import { __ } from '@wordpress/i18n'
 
 
 
4
  import { SplitModal } from './SplitModal'
5
- import { growthArrow, brandLogo } from '../icons'
6
 
7
  export const ProModal = () => {
8
  const initialFocus = useRef(null)
9
  return (
10
  <SplitModal isOpen={true} invertedButtonColor={true} ref={initialFocus}>
11
  <div>
12
- <div className="flex space-x-2 items-center mb-5 text-extendify-black">
13
  {brandLogo}
14
  </div>
15
- <h3 className="text-xl mt-0">
16
  {__(
17
  'Get unlimited access to all our Pro patterns & layouts',
18
  'extendify',
@@ -28,16 +30,23 @@ export const ProModal = () => {
28
  <a
29
  target="_blank"
30
  ref={initialFocus}
31
- className="button-extendify-main inline-flex mt-2 px-4 py-3 button-focus justify-center"
32
  style={{ minWidth: '225px' }}
33
- href={`https://extendify.com/pricing/?utm_source=${window.extendifyData.sdk_partner}&utm_medium=library&utm_campaign=pro-modal&utm_content=upgrade-now`}
 
 
 
 
 
 
 
34
  rel="noreferrer">
35
  {__('Upgrade Now', 'extendify')}
36
  <Icon icon={growthArrow} size={24} className="-mr-1" />
37
  </a>
38
  </div>
39
  </div>
40
- <div className="w-full bg-black flex justify-endrounded-tr-sm rounded-br-sm">
41
  <img
42
  alt={__('Upgrade Now', 'extendify')}
43
  className="max-w-full rounded-tr-sm rounded-br-sm"
1
  import { Icon } from '@wordpress/components'
2
  import { useRef } from '@wordpress/element'
3
  import { __ } from '@wordpress/i18n'
4
+ import { General } from '@extendify/api/General'
5
+ import { growthArrow, brandLogo } from '@extendify/components/icons'
6
+ import { useUserStore } from '@extendify/state/User'
7
  import { SplitModal } from './SplitModal'
 
8
 
9
  export const ProModal = () => {
10
  const initialFocus = useRef(null)
11
  return (
12
  <SplitModal isOpen={true} invertedButtonColor={true} ref={initialFocus}>
13
  <div>
14
+ <div className="mb-5 flex items-center space-x-2 text-extendify-black">
15
  {brandLogo}
16
  </div>
17
+ <h3 className="mt-0 text-xl">
18
  {__(
19
  'Get unlimited access to all our Pro patterns & layouts',
20
  'extendify',
30
  <a
31
  target="_blank"
32
  ref={initialFocus}
33
+ className="button-extendify-main button-focus mt-2 inline-flex justify-center px-4 py-3"
34
  style={{ minWidth: '225px' }}
35
+ href={`https://extendify.com/pricing/?utm_source=${
36
+ window.extendifyData.sdk_partner
37
+ }&utm_medium=library&utm_campaign=pro-modal&utm_content=upgrade-now&utm_group=${useUserStore
38
+ .getState()
39
+ .activeTestGroupsUtmValue()}`}
40
+ onClick={async () =>
41
+ await General.ping('pro-modal-click')
42
+ }
43
  rel="noreferrer">
44
  {__('Upgrade Now', 'extendify')}
45
  <Icon icon={growthArrow} size={24} className="-mr-1" />
46
  </a>
47
  </div>
48
  </div>
49
+ <div className="justify-endrounded-tr-sm flex w-full rounded-br-sm bg-black">
50
  <img
51
  alt={__('Upgrade Now', 'extendify')}
52
  className="max-w-full rounded-tr-sm rounded-br-sm"
extendify-sdk/src/components/modals/SplitModal.js CHANGED
@@ -1,8 +1,8 @@
1
- import { Icon, close } from '@wordpress/icons'
2
  import { __ } from '@wordpress/i18n'
 
3
  import { Dialog, Transition } from '@headlessui/react'
4
- import { Fragment, forwardRef, useRef } from '@wordpress/element'
5
- import { useGlobalStore } from '../../state/GlobalState'
6
 
7
  export const SplitModal = forwardRef(
8
  (
@@ -29,7 +29,7 @@ export const SplitModal = forwardRef(
29
  className="extendify"
30
  initialFocus={initialFocus ?? focusBackup}
31
  onClose={onClose}>
32
- <div className="fixed z-high inset-0 flex">
33
  <Transition.Child
34
  as={Fragment}
35
  enter="ease-out duration-50 transition"
@@ -43,11 +43,11 @@ export const SplitModal = forwardRef(
43
  enterFrom="opacity-0 translate-y-4 sm:translate-y-5"
44
  enterTo="opacity-100 translate-y-0">
45
  <div className="m-auto">
46
- <div className="shadow-modal relative m-8 md:m-0 max-w-md rounded-sm md:flex justify-between md:max-w-2xl">
47
  <button
48
  onClick={onClose}
49
  ref={focusBackup}
50
- className="absolute bg-transparent block p-4 top-0 right-0 rounded-md cursor-pointer text-gray-700 opacity-30 hover:opacity-100"
51
  style={
52
  invertedButtonColor && {
53
  filter: 'invert(1)',
@@ -63,7 +63,7 @@ export const SplitModal = forwardRef(
63
  {children[0]}
64
  </div>
65
  <div
66
- className={`w-6/12 hidden md:block ${rightContainerBgColor}`}>
67
  {children[1]}
68
  </div>
69
  </div>
1
+ import { Fragment, forwardRef, useRef } from '@wordpress/element'
2
  import { __ } from '@wordpress/i18n'
3
+ import { Icon, close } from '@wordpress/icons'
4
  import { Dialog, Transition } from '@headlessui/react'
5
+ import { useGlobalStore } from '@extendify/state/GlobalState'
 
6
 
7
  export const SplitModal = forwardRef(
8
  (
29
  className="extendify"
30
  initialFocus={initialFocus ?? focusBackup}
31
  onClose={onClose}>
32
+ <div className="fixed inset-0 z-high flex">
33
  <Transition.Child
34
  as={Fragment}
35
  enter="ease-out duration-50 transition"
43
  enterFrom="opacity-0 translate-y-4 sm:translate-y-5"
44
  enterTo="opacity-100 translate-y-0">
45
  <div className="m-auto">
46
+ <div className="relative m-8 max-w-md justify-between rounded-sm shadow-modal md:m-0 md:flex md:max-w-2xl">
47
  <button
48
  onClick={onClose}
49
  ref={focusBackup}
50
+ className="absolute top-0 right-0 block cursor-pointer rounded-md bg-transparent p-4 text-gray-700 opacity-30 hover:opacity-100"
51
  style={
52
  invertedButtonColor && {
53
  filter: 'invert(1)',
63
  {children[0]}
64
  </div>
65
  <div
66
+ className={`hidden w-6/12 md:block ${rightContainerBgColor}`}>
67
  {children[1]}
68
  </div>
69
  </div>
extendify-sdk/src/components/modals/settings/DevSettings.js ADDED
@@ -0,0 +1,88 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { Button } from '@wordpress/components'
2
+ import { useState } from '@wordpress/element'
3
+ import { useIsDevMode } from '@extendify/hooks/helpers'
4
+ import { useTaxonomyStore } from '@extendify/state/Taxonomies'
5
+ import { useTemplatesStore } from '@extendify/state/Templates'
6
+ import { useUserStore } from '@extendify/state/User'
7
+
8
+ export const DevSettings = () => {
9
+ const [processing, setProcessing] = useState(false)
10
+ const [canHydrate, setCanHydrate] = useState(false)
11
+ const devMode = useIsDevMode()
12
+
13
+ const handleReset = async () => {
14
+ if (processing) return
15
+ setProcessing(true)
16
+ if (canHydrate) {
17
+ setCanHydrate(false)
18
+ useUserStore.setState({
19
+ participatingTestsGroups: [],
20
+ })
21
+ await useUserStore.persist.rehydrate()
22
+ window.extendifyData._canRehydrate = false
23
+ setProcessing(false)
24
+ return
25
+ }
26
+ useUserStore.persist.clearStorage()
27
+ await new Promise((resolve) => setTimeout(resolve, 1000))
28
+ window.extendifyData._canRehydrate = true
29
+ setCanHydrate(true)
30
+ setProcessing(false)
31
+ }
32
+
33
+ const handleServerSwitch = async () => {
34
+ const params = new URLSearchParams(window.location.search)
35
+ params.delete('LOCALMODE', 1)
36
+ params[params.has('DEVMODE') || devMode ? 'delete' : 'append'](
37
+ 'DEVMODE',
38
+ 1,
39
+ )
40
+ window.history.replaceState(
41
+ null,
42
+ null,
43
+ window.location.pathname + '?' + params.toString(),
44
+ )
45
+ await new Promise((resolve) => setTimeout(resolve, 500))
46
+ window.dispatchEvent(new Event('popstate'))
47
+ useTemplatesStore.getState().resetTemplates()
48
+ useTemplatesStore.getState().updateSearchParams({})
49
+ useTaxonomyStore.persist.clearStorage()
50
+ useTaxonomyStore.persist.rehydrate()
51
+ useTemplatesStore.setState({
52
+ taxonomyDefaultState: {},
53
+ })
54
+ useTaxonomyStore
55
+ .getState()
56
+ .fetchTaxonomies()
57
+ .then(() => {
58
+ useTemplatesStore.getState().setupDefaultTaxonomies()
59
+ })
60
+ }
61
+
62
+ if (!window.extendifyData.devbuild) return null
63
+
64
+ return (
65
+ <section className="p-6 flex flex-col space-y-6 border-l-8 border-extendify-secondary">
66
+ <div>
67
+ <p className="text-base m-0 text-extendify-black">
68
+ Development Settings
69
+ </p>
70
+ <p className="text-sm italic m-0 text-gray-500">
71
+ Only available on dev builds
72
+ </p>
73
+ </div>
74
+ <div className="flex space-x-2">
75
+ <Button isSecondary onClick={handleServerSwitch}>
76
+ Switch to {devMode ? 'Live' : 'Dev'} Server
77
+ </Button>
78
+ <Button isSecondary onClick={handleReset}>
79
+ {processing
80
+ ? 'Processing...'
81
+ : canHydrate
82
+ ? 'OK! Press to rehydrate app'
83
+ : 'Reset User Data'}
84
+ </Button>
85
+ </div>
86
+ </section>
87
+ )
88
+ }
extendify-sdk/src/components/{LoginInterface.js → modals/settings/LoginInterface.js} RENAMED
@@ -1,14 +1,14 @@
1
- import { useUserStore } from '../state/User'
2
  import { useState, useEffect, useRef } from '@wordpress/element'
3
- import { User as UserApi } from '../api/User'
4
  import { __ } from '@wordpress/i18n'
5
- import classNames from 'classnames'
6
- import { Spinner, Button } from '@wordpress/components'
7
-
8
  import { Icon } from '@wordpress/icons'
9
- import { user } from './icons/'
10
- import { success as successIcon } from './icons/'
11
- import { useIsDevMode } from '../hooks/helpers'
 
 
 
 
12
 
13
  export default function LoginInterface({ actionCallback, initialFocus }) {
14
  const loggedIn = useUserStore((state) => state.apiKey.length)
@@ -53,7 +53,7 @@ export default function LoginInterface({ actionCallback, initialFocus }) {
53
  setFeedbackType('error')
54
  setIsWorking(false)
55
  setFeedback(
56
- message.length
57
  ? message
58
  : 'Error: Are you interacting with the wrong server?',
59
  )
@@ -63,7 +63,7 @@ export default function LoginInterface({ actionCallback, initialFocus }) {
63
  if (error || exception) {
64
  setFeedbackType('error')
65
  setIsWorking(false)
66
- setFeedback(error.length ? error : exception)
67
  return
68
  }
69
 
@@ -86,14 +86,14 @@ export default function LoginInterface({ actionCallback, initialFocus }) {
86
 
87
  if (success) {
88
  return (
89
- <section className="w-80 space-y-8 text-center pt-2 pb-4">
90
  <Icon icon={successIcon} size={148} />
91
- <p className="text-lg text-extendify-black text-center leading-extra-tight font-semibold">
92
  {__("You've signed in to Extendify", 'extendify')}
93
  </p>
94
  <Button
95
  ref={viewPatternsButtonRef}
96
- className="px-4 p-2 cursor-pointer text-center rounded bg-extendify-main text-white"
97
  onClick={actionCallback}>
98
  {__('View patterns', 'extendify')}
99
  </Button>
@@ -103,12 +103,12 @@ export default function LoginInterface({ actionCallback, initialFocus }) {
103
 
104
  if (loggedIn) {
105
  return (
106
- <section className="space-y-8 w-full pb-2">
107
- <p className="text-base text-extendify-black leading-extra-tight">
108
  {__('Account', 'extendify')}
109
  </p>
110
- <div className="flex justify-between items-center">
111
- <div className="flex items-center space-x-2 -ml-2">
112
  <Icon icon={user} size={48} />
113
  <p className="text-extendify-black">
114
  {email?.length
@@ -118,7 +118,7 @@ export default function LoginInterface({ actionCallback, initialFocus }) {
118
  </div>
119
  {devMode && (
120
  <Button
121
- className="px-4 py-3 cursor-pointer text-center rounded bg-extendify-main hover:bg-extendify-main-dark text-white"
122
  onClick={logout}>
123
  {__('Sign out', 'extendify')}
124
  </Button>
@@ -129,23 +129,34 @@ export default function LoginInterface({ actionCallback, initialFocus }) {
129
  }
130
 
131
  return (
132
- <section className="w-80 text-left space-y-8 pb-6">
133
  <div>
134
- <p className="text-lg text-extendify-black text-center leading-extra-tight font-semibold">
135
  {__('Sign in to Extendify', 'extendify')}
136
  </p>
137
- <p className="text-sm text-extendify-gray text-center space-x-1 leading-extra-tight">
138
  <span>{__("Don't have an account?", 'extendify')}</span>
139
  <a
140
- href={`https://extendify.com/pricing?utm_source=${window.extendifyData.sdk_partner}&utm_medium=library&utm_campaign=sign-in-form&utm_content=sign-up`}
 
 
 
 
141
  target="_blank"
 
 
 
 
 
142
  className="underline hover:no-underline text-extendify-gray"
143
  rel="noreferrer">
144
  {__('Sign up', 'extendify')}
145
  </a>
146
  </p>
147
  </div>
148
- <form onSubmit={confirmKey} className="space-y-2">
 
 
149
  <div className="flex items-center">
150
  <label className="sr-only" htmlFor="extendify-login-email">
151
  {__('Email address', 'extendify')}
@@ -154,8 +165,9 @@ export default function LoginInterface({ actionCallback, initialFocus }) {
154
  ref={initialFocus}
155
  id="extendify-login-email"
156
  name="extendify-login-email"
 
157
  type="email"
158
- className="border-2 p-2 w-full rounded"
159
  placeholder={__('Email address', 'extendify')}
160
  value={email.length ? email : ''}
161
  onChange={(event) => setEmail(event.target.value)}
@@ -171,17 +183,18 @@ export default function LoginInterface({ actionCallback, initialFocus }) {
171
  ref={licenseKeyRef}
172
  id="extendify-login-license"
173
  name="extendify-login-license"
 
174
  type="text"
175
- className="border-2 p-2 w-full rounded"
176
  placeholder={__('License key', 'extendify')}
177
  value={apiKey}
178
  onChange={(event) => setApiKey(event.target.value)}
179
  />
180
  </div>
181
- <div className="pt-2 flex justify-center">
182
  <button
183
  type="submit"
184
- className="relative p-2 py-3 w-72 max-w-full flex justify-center cursor-pointer text-center rounded bg-extendify-main hover:bg-extendify-main-dark text-base text-white ">
185
  <span>{__('Sign In', 'extendify')}</span>
186
  {isWorking && (
187
  <div className="absolute right-2.5">
@@ -203,11 +216,20 @@ export default function LoginInterface({ actionCallback, initialFocus }) {
203
  {feedback}
204
  </div>
205
  )}
206
- <div className="text-center pt-4">
207
  <a
208
  target="_blank"
209
  rel="noreferrer"
210
- href={`https://extendify.com/guides/sign-in?utm_source=${window.extendifyData.sdk_partner}&utm_medium=library&utm_campaign=sign-in-form&utm_content=need-help`}
 
 
 
 
 
 
 
 
 
211
  className="underline hover:no-underline text-sm text-extendify-gray">
212
  {__('Need Help?', 'extendify')}
213
  </a>
1
+ import { Spinner, Button } from '@wordpress/components'
2
  import { useState, useEffect, useRef } from '@wordpress/element'
 
3
  import { __ } from '@wordpress/i18n'
 
 
 
4
  import { Icon } from '@wordpress/icons'
5
+ import classNames from 'classnames'
6
+ import { General } from '@extendify/api/General'
7
+ import { User as UserApi } from '@extendify/api/User'
8
+ import { useIsDevMode } from '@extendify/hooks/helpers'
9
+ import { useUserStore } from '@extendify/state/User'
10
+ import { user } from '../../icons'
11
+ import { success as successIcon } from '../../icons'
12
 
13
  export default function LoginInterface({ actionCallback, initialFocus }) {
14
  const loggedIn = useUserStore((state) => state.apiKey.length)
53
  setFeedbackType('error')
54
  setIsWorking(false)
55
  setFeedback(
56
+ message?.length
57
  ? message
58
  : 'Error: Are you interacting with the wrong server?',
59
  )
63
  if (error || exception) {
64
  setFeedbackType('error')
65
  setIsWorking(false)
66
+ setFeedback(error?.length ? error : exception)
67
  return
68
  }
69
 
86
 
87
  if (success) {
88
  return (
89
+ <section className="space-y-6 p-6 text-center flex flex-col items-center">
90
  <Icon icon={successIcon} size={148} />
91
+ <p className="text-center text-lg font-semibold m-0 text-extendify-black">
92
  {__("You've signed in to Extendify", 'extendify')}
93
  </p>
94
  <Button
95
  ref={viewPatternsButtonRef}
96
+ className="cursor-pointer rounded bg-extendify-main p-2 px-4 text-center text-white"
97
  onClick={actionCallback}>
98
  {__('View patterns', 'extendify')}
99
  </Button>
103
 
104
  if (loggedIn) {
105
  return (
106
+ <section className="w-full space-y-6 p-6">
107
+ <p className="text-base m-0 text-extendify-black">
108
  {__('Account', 'extendify')}
109
  </p>
110
+ <div className="flex items-center justify-between">
111
+ <div className="-ml-2 flex items-center space-x-2">
112
  <Icon icon={user} size={48} />
113
  <p className="text-extendify-black">
114
  {email?.length
118
  </div>
119
  {devMode && (
120
  <Button
121
+ className="cursor-pointer rounded bg-extendify-main px-4 py-3 text-center text-white hover:bg-extendify-main-dark"
122
  onClick={logout}>
123
  {__('Sign out', 'extendify')}
124
  </Button>
129
  }
130
 
131
  return (
132
+ <section className="space-y-6 p-6 text-left">
133
  <div>
134
+ <p className="text-center text-lg font-semibold m-0 text-extendify-black">
135
  {__('Sign in to Extendify', 'extendify')}
136
  </p>
137
+ <p className="space-x-1 text-center text-sm m-0 text-extendify-gray">
138
  <span>{__("Don't have an account?", 'extendify')}</span>
139
  <a
140
+ href={`https://extendify.com/pricing?utm_source=${
141
+ window.extendifyData.sdk_partner
142
+ }&utm_medium=library&utm_campaign=sign-in-form&utm_content=sign-up&utm_group=${useUserStore
143
+ .getState()
144
+ .activeTestGroupsUtmValue()}`}
145
  target="_blank"
146
+ onClick={async () =>
147
+ await General.ping(
148
+ 'sign-up-link-from-login-modal-click',
149
+ )
150
+ }
151
  className="underline hover:no-underline text-extendify-gray"
152
  rel="noreferrer">
153
  {__('Sign up', 'extendify')}
154
  </a>
155
  </p>
156
  </div>
157
+ <form
158
+ onSubmit={confirmKey}
159
+ className="flex flex-col items-center justify-center space-y-2">
160
  <div className="flex items-center">
161
  <label className="sr-only" htmlFor="extendify-login-email">
162
  {__('Email address', 'extendify')}
165
  ref={initialFocus}
166
  id="extendify-login-email"
167
  name="extendify-login-email"
168
+ style={{ minWidth: '320px' }}
169
  type="email"
170
+ className="w-full rounded border-2 p-2"
171
  placeholder={__('Email address', 'extendify')}
172
  value={email.length ? email : ''}
173
  onChange={(event) => setEmail(event.target.value)}
183
  ref={licenseKeyRef}
184
  id="extendify-login-license"
185
  name="extendify-login-license"
186
+ style={{ minWidth: '320px' }}
187
  type="text"
188
+ className="w-full rounded border-2 p-2"
189
  placeholder={__('License key', 'extendify')}
190
  value={apiKey}
191
  onChange={(event) => setApiKey(event.target.value)}
192
  />
193
  </div>
194
+ <div className="flex justify-center pt-2">
195
  <button
196
  type="submit"
197
+ className="relative flex w-72 max-w-full cursor-pointer justify-center rounded bg-extendify-main p-2 py-3 text-center text-base text-white hover:bg-extendify-main-dark ">
198
  <span>{__('Sign In', 'extendify')}</span>
199
  {isWorking && (
200
  <div className="absolute right-2.5">
216
  {feedback}
217
  </div>
218
  )}
219
+ <div className="pt-4 text-center">
220
  <a
221
  target="_blank"
222
  rel="noreferrer"
223
+ href={`https://extendify.com/guides/sign-in?utm_source=${
224
+ window.extendifyData.sdk_partner
225
+ }&utm_medium=library&utm_campaign=sign-in-form&utm_content=need-help&utm_group=${useUserStore
226
+ .getState()
227
+ .activeTestGroupsUtmValue()}`}
228
+ onClick={async () =>
229
+ await General.ping(
230
+ 'need-help-link-from-login-modal-click',
231
+ )
232
+ }
233
  className="underline hover:no-underline text-sm text-extendify-gray">
234
  {__('Need Help?', 'extendify')}
235
  </a>
extendify-sdk/src/components/modals/{SettingsModal.js → settings/SettingsModal.js} RENAMED
@@ -1,10 +1,11 @@
1
  import { useRef } from '@wordpress/element'
2
  import { __ } from '@wordpress/i18n'
3
- import { useGlobalStore } from '../../state/GlobalState'
4
- import LoginInterface from '../LoginInterface'
5
- import { Modal } from './Modal'
 
6
 
7
- export default function SettingsModal() {
8
  const initialFocus = useRef(null)
9
  const actionCallback = useGlobalStore((state) => state.removeAllModals)
10
 
@@ -13,7 +14,8 @@ export default function SettingsModal() {
13
  heading={__('Settings', 'extendify')}
14
  isOpen={true}
15
  ref={initialFocus}>
16
- <div className="flex p-6 justify-center">
 
17
  <LoginInterface
18
  initialFocus={initialFocus}
19
  actionCallback={actionCallback}
1
  import { useRef } from '@wordpress/element'
2
  import { __ } from '@wordpress/i18n'
3
+ import { useGlobalStore } from '@extendify/state/GlobalState'
4
+ import { Modal } from '../Modal'
5
+ import { DevSettings } from './DevSettings'
6
+ import LoginInterface from './LoginInterface'
7
 
8
+ export const SettingsModal = () => {
9
  const initialFocus = useRef(null)
10
  const actionCallback = useGlobalStore((state) => state.removeAllModals)
11
 
14
  heading={__('Settings', 'extendify')}
15
  isOpen={true}
16
  ref={initialFocus}>
17
+ <div className="flex justify-center flex-col divide-y">
18
+ <DevSettings />
19
  <LoginInterface
20
  initialFocus={initialFocus}
21
  actionCallback={actionCallback}
extendify-sdk/src/components/notices/FeedbackNotice.js CHANGED
@@ -1,5 +1,7 @@
1
- import { __ } from '@wordpress/i18n'
2
  import { Button } from '@wordpress/components'
 
 
 
3
 
4
  export default function FeedbackNotice() {
5
  return (
@@ -13,11 +15,18 @@ export default function FeedbackNotice() {
13
  <span className="px-2 opacity-50" aria-hidden="true">
14
  &#124;
15
  </span>
16
- <div className="flex space-x-2 justify-center items-center">
17
  <Button
18
  variant="link"
19
- className="text-black underline hover:no-underline p-0 h-auto"
20
- href={`https://extendify.com/feedback/?utm_source=${window.extendifyData.sdk_partner}&utm_medium=library&utm_campaign=feedback-notice&utm_content=give-feedback`}
 
 
 
 
 
 
 
21
  target="_blank">
22
  {__('Give feedback', 'extendify')}
23
  </Button>
 
1
  import { Button } from '@wordpress/components'
2
+ import { __ } from '@wordpress/i18n'
3
+ import { General } from '@extendify/api/General'
4
+ import { useUserStore } from '@extendify/state/User'
5
 
6
  export default function FeedbackNotice() {
7
  return (
15
  <span className="px-2 opacity-50" aria-hidden="true">
16
  &#124;
17
  </span>
18
+ <div className="flex items-center justify-center space-x-2">
19
  <Button
20
  variant="link"
21
+ className="h-auto p-0 text-black underline hover:no-underline"
22
+ href={`https://extendify.com/feedback/?utm_source=${
23
+ window.extendifyData.sdk_partner
24
+ }&utm_medium=library&utm_campaign=feedback-notice&utm_content=give-feedback&utm_group=${useUserStore
25
+ .getState()
26
+ .activeTestGroupsUtmValue()}`}
27
+ onClick={async () =>
28
+ await General.ping('feedback-notice-click')
29
+ }
30
  target="_blank">
31
  {__('Give feedback', 'extendify')}
32
  </Button>
extendify-sdk/src/components/notices/FooterNotice.js CHANGED
@@ -1,23 +1,24 @@
 
 
1
  import { __ } from '@wordpress/i18n'
2
  import { Icon, closeSmall } from '@wordpress/icons'
3
- import { Button } from '@wordpress/components'
4
- import WelcomeNotice from './WelcomeNotice'
5
- import PromotionNotice from './PromotionNotice'
6
  import FeedbackNotice from './FeedbackNotice'
7
- import { useUserStore } from '../../state/User'
8
- import { useGlobalStore } from '../../state/GlobalState'
9
- import { useState, useEffect, useRef } from '@wordpress/element'
10
  import { InstallStandaloneNotice } from './InstallStandaloneNotice'
11
- import { General } from '../../api/General'
 
 
12
 
13
  const NoticesByPriority = {
14
- welcome: WelcomeNotice,
15
  promotion: PromotionNotice,
16
  feedback: FeedbackNotice,
17
  standalone: InstallStandaloneNotice,
18
  }
19
 
20
- export default function FooterNotice() {
21
  const [hasNotice, setHasNotice] = useState(null)
22
  const once = useRef(false)
23
  const promotionData = useGlobalStore(
@@ -90,12 +91,13 @@ export default function FooterNotice() {
90
  return null
91
  }
92
  return (
93
- <div className="bg-extendify-secondary hidden lg:flex space-x-4 py-3 px-5 justify-center items-center relative max-w-screen-4xl mx-auto">
 
94
  {/* Pass all data to all components and let them decide what they use */}
95
  <Notice promotionData={promotionData} />
96
  <div className="absolute right-1">
97
  <Button
98
- className="opacity-50 hover:opacity-100 focus:opacity-100 text-extendify-black"
99
  icon={<Icon icon={closeSmall} />}
100
  label={__('Dismiss this notice', 'extendify')}
101
  onClick={dismiss}
1
+ import { Button } from '@wordpress/components'
2
+ import { useState, useEffect, useRef } from '@wordpress/element'
3
  import { __ } from '@wordpress/i18n'
4
  import { Icon, closeSmall } from '@wordpress/icons'
5
+ import { General } from '@extendify/api/General'
6
+ import { useGlobalStore } from '@extendify/state/GlobalState'
7
+ import { useUserStore } from '@extendify/state/User'
8
  import FeedbackNotice from './FeedbackNotice'
 
 
 
9
  import { InstallStandaloneNotice } from './InstallStandaloneNotice'
10
+ import PromotionNotice from './PromotionNotice'
11
+
12
+ // import WelcomeNotice from './WelcomeNotice'
13
 
14
  const NoticesByPriority = {
15
+ // welcome: WelcomeNotice,
16
  promotion: PromotionNotice,
17
  feedback: FeedbackNotice,
18
  standalone: InstallStandaloneNotice,
19
  }
20
 
21
+ export default function FooterNotice({ className = '' }) {
22
  const [hasNotice, setHasNotice] = useState(null)
23
  const once = useRef(false)
24
  const promotionData = useGlobalStore(
91
  return null
92
  }
93
  return (
94
+ <div
95
+ className={`${className} relative mx-auto hidden max-w-screen-4xl items-center justify-center space-x-4 bg-extendify-secondary py-3 px-5 lg:flex`}>
96
  {/* Pass all data to all components and let them decide what they use */}
97
  <Notice promotionData={promotionData} />
98
  <div className="absolute right-1">
99
  <Button
100
+ className="text-extendify-black opacity-50 hover:opacity-100 focus:opacity-100"
101
  icon={<Icon icon={closeSmall} />}
102
  label={__('Dismiss this notice', 'extendify')}
103
  onClick={dismiss}
extendify-sdk/src/components/notices/InstallStandaloneNotice.js CHANGED
@@ -1,10 +1,10 @@
1
- import { __ } from '@wordpress/i18n'
2
  import { Button } from '@wordpress/components'
3
  import { useState } from '@wordpress/element'
4
- import { Plugins } from '../../api/Plugins'
5
  import classNames from 'classnames'
6
- import { General } from '../../api/General'
7
- import { useUserStore } from '../../state/User'
 
8
 
9
  export const InstallStandaloneNotice = () => {
10
  const [text, setText] = useState('')
@@ -40,11 +40,11 @@ export const InstallStandaloneNotice = () => {
40
  <span className="px-2 opacity-50" aria-hidden="true">
41
  &#124;
42
  </span>
43
- <div className="inline-flex space-x-2 items-center relative">
44
  <Button
45
  variant="link"
46
  className={classNames(
47
- 'text-black underline hover:no-underline p-0 h-auto',
48
  { 'opacity-0': text },
49
  )}
50
  onClick={installAndActivate}>
@@ -55,7 +55,7 @@ export const InstallStandaloneNotice = () => {
55
  <Button
56
  variant="link"
57
  disabled={true}
58
- className="text-black underline hover:no-underline p-0 h-auto absolute left-0 opacity-100"
59
  onClick={() => {}}>
60
  {text}
61
  </Button>
 
1
  import { Button } from '@wordpress/components'
2
  import { useState } from '@wordpress/element'
3
+ import { __ } from '@wordpress/i18n'
4
  import classNames from 'classnames'
5
+ import { General } from '@extendify/api/General'
6
+ import { Plugins } from '@extendify/api/Plugins'
7
+ import { useUserStore } from '@extendify/state/User'
8
 
9
  export const InstallStandaloneNotice = () => {
10
  const [text, setText] = useState('')
40
  <span className="px-2 opacity-50" aria-hidden="true">
41
  &#124;
42
  </span>
43
+ <div className="relative inline-flex items-center space-x-2">
44
  <Button
45
  variant="link"
46
  className={classNames(
47
+ 'h-auto p-0 text-black underline hover:no-underline',
48
  { 'opacity-0': text },
49
  )}
50
  onClick={installAndActivate}>
55
  <Button
56
  variant="link"
57
  disabled={true}
58
+ className="absolute left-0 h-auto p-0 text-black underline opacity-100 hover:no-underline"
59
  onClick={() => {}}>
60
  {text}
61
  </Button>
extendify-sdk/src/components/notices/PromotionNotice.js CHANGED
@@ -1,4 +1,6 @@
1
  import { Button } from '@wordpress/components'
 
 
2
 
3
  export default function PromotionNotice({ promotionData }) {
4
  return (
@@ -7,12 +9,19 @@ export default function PromotionNotice({ promotionData }) {
7
  <span className="px-2 opacity-50" aria-hidden="true">
8
  &#124;
9
  </span>
10
- <div className="flex space-x-2 justify-center items-center">
11
  {promotionData?.url && (
12
  <Button
13
  variant="link"
14
- className="text-black underline hover:no-underline p-0 h-auto"
15
- href={`${promotionData.url}&utm_source=${window.extendifyData.sdk_partner}`}
 
 
 
 
 
 
 
16
  target="_blank">
17
  {promotionData?.button_text}
18
  </Button>
1
  import { Button } from '@wordpress/components'
2
+ import { useUserStore } from '@extendify/state/User'
3
+ import { General } from '../../api/General'
4
 
5
  export default function PromotionNotice({ promotionData }) {
6
  return (
9
  <span className="px-2 opacity-50" aria-hidden="true">
10
  &#124;
11
  </span>
12
+ <div className="flex items-center justify-center space-x-2">
13
  {promotionData?.url && (
14
  <Button
15
  variant="link"
16
+ className="h-auto p-0 text-black underline hover:no-underline"
17
+ href={`${promotionData.url}&utm_source=${
18
+ window.extendifyData.sdk_partner
19
+ }&utm_group=${useUserStore
20
+ .getState()
21
+ .activeTestGroupsUtmValue()}`}
22
+ onClick={async () =>
23
+ await General.ping('promotion-notice-click')
24
+ }
25
  target="_blank">
26
  {promotionData?.button_text}
27
  </Button>
extendify-sdk/src/components/notices/WelcomeNotice.js CHANGED
@@ -1,7 +1,8 @@
1
- import { __ } from '@wordpress/i18n'
2
  import { Button } from '@wordpress/components'
3
- import { useUserStore } from '../../state/User'
4
- import { useGlobalStore } from '../../state/GlobalState'
 
 
5
 
6
  export default function WelcomeNotice() {
7
  const setOpen = useGlobalStore((state) => state.setOpen)
@@ -23,11 +24,18 @@ export default function WelcomeNotice() {
23
  <span className="px-2 opacity-50" aria-hidden="true">
24
  &#124;
25
  </span>
26
- <div className="flex space-x-2 justify-center items-center">
27
  <Button
28
  variant="link"
29
- className="text-black underline hover:no-underline p-0 h-auto"
30
- href={`https://extendify.com/welcome/?utm_source=${window.extendifyData.sdk_partner}&utm_medium=library&utm_campaign=welcome-notice&utm_content=tell-me-more`}
 
 
 
 
 
 
 
31
  target="_blank">
32
  {__('Tell me more', 'extendify')}
33
  </Button>
@@ -38,7 +46,7 @@ export default function WelcomeNotice() {
38
  </span>
39
  <Button
40
  variant="link"
41
- className="text-black underline hover:no-underline p-0 h-auto"
42
  onClick={disableLibrary}>
43
  {__('Turn off the library', 'extendify')}
44
  </Button>
 
1
  import { Button } from '@wordpress/components'
2
+ import { __ } from '@wordpress/i18n'
3
+ import { General } from '@extendify/api/General'
4
+ import { useGlobalStore } from '@extendify/state/GlobalState'
5
+ import { useUserStore } from '@extendify/state/User'
6
 
7
  export default function WelcomeNotice() {
8
  const setOpen = useGlobalStore((state) => state.setOpen)
24
  <span className="px-2 opacity-50" aria-hidden="true">
25
  &#124;
26
  </span>
27
+ <div className="flex items-center justify-center space-x-2">
28
  <Button
29
  variant="link"
30
+ className="h-auto p-0 text-black underline hover:no-underline"
31
+ href={`https://extendify.com/welcome/?utm_source=${
32
+ window.extendifyData.sdk_partner
33
+ }&utm_medium=library&utm_campaign=welcome-notice&utm_content=tell-me-more&utm_group=${useUserStore
34
+ .getState()
35
+ .activeTestGroupsUtmValue()}`}
36
+ onClick={async () =>
37
+ await General.ping('welcome-notice-tell-me-more-click')
38
+ }
39
  target="_blank">
40
  {__('Tell me more', 'extendify')}
41
  </Button>
46
  </span>
47
  <Button
48
  variant="link"
49
+ className="h-auto p-0 text-black underline hover:no-underline"
50
  onClick={disableLibrary}>
51
  {__('Turn off the library', 'extendify')}
52
  </Button>
extendify-sdk/src/components/popovers/NewImportsPopover.js CHANGED
@@ -1,7 +1,7 @@
1
  import { Button, Popover } from '@wordpress/components'
2
- import { Icon, close } from '@wordpress/icons'
3
- import { __, sprintf } from '@wordpress/i18n'
4
  import { safeHTML } from '@wordpress/dom'
 
 
5
 
6
  export const NewImportsPopover = ({
7
  anchorRef,
1
  import { Button, Popover } from '@wordpress/components'
 
 
2
  import { safeHTML } from '@wordpress/dom'
3
+ import { __, sprintf } from '@wordpress/i18n'
4
+ import { Icon, close } from '@wordpress/icons'
5
 
6
  export const NewImportsPopover = ({
7
  anchorRef,
extendify-sdk/src/hooks/helpers.js CHANGED
@@ -12,11 +12,15 @@ export function useIsMounted() {
12
 
13
  export const useIsDevMode = () => {
14
  const [devMode, setDevMode] = useState(false)
15
- const handle = () => {
16
- setDevMode(window.location.search.indexOf('DEVMODE') > -1)
 
 
 
17
  }
18
  useEffect(() => {
19
- setDevMode(window.location.search.indexOf('DEVMODE') > -1)
 
20
  window.addEventListener('popstate', handle)
21
  return () => {
22
  window.removeEventListener('popstate', handle)
12
 
13
  export const useIsDevMode = () => {
14
  const [devMode, setDevMode] = useState(false)
15
+ const check = () => {
16
+ return (
17
+ window.location.search.indexOf('DEVMODE') > -1 ||
18
+ window.location.search.indexOf('LOCALMODE') > -1
19
+ )
20
  }
21
  useEffect(() => {
22
+ const handle = () => setDevMode(check())
23
+ handle()
24
  window.addEventListener('popstate', handle)
25
  return () => {
26
  window.removeEventListener('popstate', handle)
extendify-sdk/src/hooks/useModal.js CHANGED
@@ -1,7 +1,7 @@
1
  import { useEffect, useState } from '@wordpress/element'
2
- import { InstallStandaloneModal } from '../components/modals/InstallStandaloneModal'
3
- import { useGlobalStore } from '../state/GlobalState'
4
- import { useUserStore } from '../state/User'
5
 
6
  /** Return any pending modals and check if any need to show */
7
  export const useModal = () => {
@@ -14,8 +14,8 @@ export const useModal = () => {
14
  useEffect(
15
  () =>
16
  useGlobalStore.subscribe(
17
- (value) => setModal(value?.length > 0 ? value[0] : null),
18
  (state) => state.modals,
 
19
  ),
20
  [],
21
  )
1
  import { useEffect, useState } from '@wordpress/element'
2
+ import { InstallStandaloneModal } from '@extendify/components/modals/InstallStandaloneModal'
3
+ import { useGlobalStore } from '@extendify/state/GlobalState'
4
+ import { useUserStore } from '@extendify/state/User'
5
 
6
  /** Return any pending modals and check if any need to show */
7
  export const useModal = () => {
14
  useEffect(
15
  () =>
16
  useGlobalStore.subscribe(
 
17
  (state) => state.modals,
18
+ (value) => setModal(value?.length > 0 ? value[0] : null),
19
  ),
20
  [],
21
  )
extendify-sdk/src/hooks/useTaxonomies.js DELETED
@@ -1,27 +0,0 @@
1
- import { useEffect, useCallback } from '@wordpress/element'
2
- import { Taxonomies as TaxonomiesApi } from '../api/Taxonomies'
3
- import { useTaxonomyStore } from '../state/Taxonomies'
4
- import { useTemplatesStore } from '../state/Templates'
5
-
6
- export default function useTaxonomies(fetchImmediately = false) {
7
- const setupDefaultTaxonomies = useTemplatesStore(
8
- (state) => state.setupDefaultTaxonomies,
9
- )
10
- const setTaxonomies = useTaxonomyStore((state) => state.setTaxonomies)
11
- const fetchTaxonomies = useCallback(async () => {
12
- let tax = await TaxonomiesApi.get()
13
- tax = Object.keys(tax).reduce((taxFiltered, key) => {
14
- taxFiltered[key] = tax[key]
15
- return taxFiltered
16
- }, {})
17
- if (!Object.keys(tax)?.length) {
18
- return
19
- }
20
- setTaxonomies(tax)
21
- setupDefaultTaxonomies()
22
- }, [setTaxonomies, setupDefaultTaxonomies])
23
-
24
- useEffect(() => {
25
- fetchImmediately && fetchTaxonomies()
26
- }, [fetchTaxonomies, fetchImmediately])
27
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
extendify-sdk/src/hooks/useTestGroup.js ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { useState, useLayoutEffect } from '@wordpress/element'
2
+ import { useGlobalStore } from '@extendify/state/GlobalState'
3
+ import { useUserStore as user } from '@extendify/state/User'
4
+
5
+ export const useTestGroup = (key, options, override) => {
6
+ const [group, setGroup] = useState()
7
+ const ready = useGlobalStore((state) => state.ready)
8
+
9
+ useLayoutEffect(() => {
10
+ if (
11
+ override ||
12
+ (ready && !group) ||
13
+ // Let the devbuild reset this
14
+ window.extendifyData._canRehydrate
15
+ ) {
16
+ const testGroup = user.getState().testGroup(key, options)
17
+ setGroup(testGroup)
18
+ }
19
+ }, [key, options, group, ready, override])
20
+
21
+ return group
22
+ }
extendify-sdk/src/listeners/index.js CHANGED
@@ -1,3 +1,4 @@
1
- import { templateHandler } from './template-inserted'
2
  import { softErrorHandler } from './softerror-encountered'
 
 
3
  ;[templateHandler, softErrorHandler].forEach((listener) => listener.register())
 
1
  import { softErrorHandler } from './softerror-encountered'
2
+ import { templateHandler } from './template-inserted'
3
+
4
  ;[templateHandler, softErrorHandler].forEach((listener) => listener.register())
extendify-sdk/src/listeners/softerror-encountered.js CHANGED
@@ -1,6 +1,6 @@
1
- import { camelCase } from 'lodash'
2
  import { render } from '@wordpress/element'
3
- import RequiredPluginsModal from '../middleware/hasRequiredPlugins/RequiredPluginsModal'
 
4
 
5
  // use this to trigger an error from outside the application
6
  export const softErrorHandler = {
 
1
  import { render } from '@wordpress/element'
2
+ import { camelCase } from 'lodash'
3
+ import RequiredPluginsModal from '@extendify/middleware/hasRequiredPlugins/RequiredPluginsModal'
4
 
5
  // use this to trigger an error from outside the application
6
  export const softErrorHandler = {
extendify-sdk/src/listeners/template-inserted.js CHANGED
@@ -1,7 +1,7 @@
1
- import { Templates } from '../api/Templates'
2
- import { useUserStore } from '../state/User'
3
  import { dispatch } from '@wordpress/data'
4
  import { __ } from '@wordpress/i18n'
 
 
5
 
6
  // This fires after a template is inserted
7
  export const templateHandler = {
 
 
1
  import { dispatch } from '@wordpress/data'
2
  import { __ } from '@wordpress/i18n'
3
+ import { Templates } from '@extendify/api/Templates'
4
+ import { useUserStore } from '@extendify/state/User'
5
 
6
  // This fires after a template is inserted
7
  export const templateHandler = {
extendify-sdk/src/middleware/NeedsPermissionModal.js CHANGED
@@ -1,9 +1,9 @@
1
- import { __, sprintf } from '@wordpress/i18n'
2
  import { Modal, Button } from '@wordpress/components'
3
  import { render } from '@wordpress/element'
4
- import ExtendifyLibrary from '../ExtendifyLibrary'
5
- import { useWantedTemplateStore } from '../state/Importing'
6
- import { getPluginDescription } from '../util/general'
 
7
 
8
  export default function NeedsPermissionModal() {
9
  const wantedTemplate = useWantedTemplateStore(
 
1
  import { Modal, Button } from '@wordpress/components'
2
  import { render } from '@wordpress/element'
3
+ import { __, sprintf } from '@wordpress/i18n'
4
+ import ExtendifyLibrary from '@extendify/ExtendifyLibrary'
5
+ import { useWantedTemplateStore } from '@extendify/state/Importing'
6
+ import { getPluginDescription } from '@extendify/util/general'
7
 
8
  export default function NeedsPermissionModal() {
9
  const wantedTemplate = useWantedTemplateStore(
extendify-sdk/src/middleware/ReloadRequiredModal.js CHANGED
@@ -1,7 +1,7 @@
1
- import { __ } from '@wordpress/i18n'
2
  import { Modal, Button, ButtonGroup } from '@wordpress/components'
3
- import { useState } from '@wordpress/element'
4
  import { dispatch, select } from '@wordpress/data'
 
 
5
 
6
  export default function ReloadRequiredModal() {
7
  const [isSaving, setSaving] = useState(false)
 
1
  import { Modal, Button, ButtonGroup } from '@wordpress/components'
 
2
  import { dispatch, select } from '@wordpress/data'
3
+ import { useState } from '@wordpress/element'
4
+ import { __ } from '@wordpress/i18n'
5
 
6
  export default function ReloadRequiredModal() {
7
  const [isSaving, setSaving] = useState(false)
extendify-sdk/src/middleware/hasPluginsActivated/ActivatePluginsModal.js CHANGED
@@ -1,12 +1,12 @@
1
- import { __, sprintf } from '@wordpress/i18n'
2
  import { Modal, Button, ButtonGroup } from '@wordpress/components'
3
  import { render } from '@wordpress/element'
4
- import ActivatingModal from './ActivatingModal'
5
- import ExtendifyLibrary from '../../ExtendifyLibrary'
6
- import { useWantedTemplateStore } from '../../state/Importing'
7
- import { getPluginDescription } from '../../util/general'
8
- import { useUserStore } from '../../state/User'
9
  import NeedsPermissionModal from '../NeedsPermissionModal'
 
10
 
11
  export default function ActivatePluginsModal(props) {
12
  const wantedTemplate = useWantedTemplateStore(
 
1
  import { Modal, Button, ButtonGroup } from '@wordpress/components'
2
  import { render } from '@wordpress/element'
3
+ import { __, sprintf } from '@wordpress/i18n'
4
+ import ExtendifyLibrary from '@extendify/ExtendifyLibrary'
5
+ import { useWantedTemplateStore } from '@extendify/state/Importing'
6
+ import { useUserStore } from '@extendify/state/User'
7
+ import { getPluginDescription } from '@extendify/util/general'
8
  import NeedsPermissionModal from '../NeedsPermissionModal'
9
+ import ActivatingModal from './ActivatingModal'
10
 
11
  export default function ActivatePluginsModal(props) {
12
  const wantedTemplate = useWantedTemplateStore(
extendify-sdk/src/middleware/hasPluginsActivated/ActivatingModal.js CHANGED
@@ -1,10 +1,10 @@
1
- import { __ } from '@wordpress/i18n'
2
  import { Modal, Button } from '@wordpress/components'
3
  import { useState, render } from '@wordpress/element'
4
- import { Plugins } from '../../api/Plugins'
5
- import { useWantedTemplateStore } from '../../state/Importing'
6
- import ErrorActivating from './ErrorActivating'
7
  import ReloadRequiredModal from '../ReloadRequiredModal'
 
8
 
9
  export default function ActivatingModal() {
10
  const [errorMessage, setErrorMessage] = useState('')
 
1
  import { Modal, Button } from '@wordpress/components'
2
  import { useState, render } from '@wordpress/element'
3
+ import { __ } from '@wordpress/i18n'
4
+ import { Plugins } from '@extendify/api/Plugins'
5
+ import { useWantedTemplateStore } from '@extendify/state/Importing'
6
  import ReloadRequiredModal from '../ReloadRequiredModal'
7
+ import ErrorActivating from './ErrorActivating'
8
 
9
  export default function ActivatingModal() {
10
  const [errorMessage, setErrorMessage] = useState('')
extendify-sdk/src/middleware/hasPluginsActivated/ErrorActivating.js CHANGED
@@ -1,6 +1,6 @@
1
- import { __ } from '@wordpress/i18n'
2
  import { Modal, Button, Notice } from '@wordpress/components'
3
  import { render } from '@wordpress/element'
 
4
  import ActivatePluginsModal from './ActivatePluginsModal'
5
 
6
  export default function ErrorActivating({ msg }) {
 
1
  import { Modal, Button, Notice } from '@wordpress/components'
2
  import { render } from '@wordpress/element'
3
+ import { __ } from '@wordpress/i18n'
4
  import ActivatePluginsModal from './ActivatePluginsModal'
5
 
6
  export default function ErrorActivating({ msg }) {
extendify-sdk/src/middleware/hasPluginsActivated/index.js CHANGED
@@ -1,6 +1,6 @@
 
1
  import { checkIfUserNeedsToActivatePlugins } from '../helpers'
2
  import ActivatePluginsModal from './ActivatePluginsModal'
3
- import { render } from '@wordpress/element'
4
 
5
  export const hasPluginsActivated = async (template) => {
6
  return {
1
+ import { render } from '@wordpress/element'
2
  import { checkIfUserNeedsToActivatePlugins } from '../helpers'
3
  import ActivatePluginsModal from './ActivatePluginsModal'
 
4
 
5
  export const hasPluginsActivated = async (template) => {
6
  return {
extendify-sdk/src/middleware/hasRequiredPlugins/ErrorInstalling.js CHANGED
@@ -1,6 +1,6 @@
1
- import { __ } from '@wordpress/i18n'
2
  import { Modal, Button, Notice } from '@wordpress/components'
3
  import { render } from '@wordpress/element'
 
4
  import RequiredPluginsModal from './RequiredPluginsModal'
5
 
6
  export default function ErrorInstalling({ msg }) {
 
1
  import { Modal, Button, Notice } from '@wordpress/components'
2
  import { render } from '@wordpress/element'
3
+ import { __ } from '@wordpress/i18n'
4
  import RequiredPluginsModal from './RequiredPluginsModal'
5
 
6
  export default function ErrorInstalling({ msg }) {
extendify-sdk/src/middleware/hasRequiredPlugins/InstallingModal.js CHANGED
@@ -1,10 +1,10 @@
1
- import { __ } from '@wordpress/i18n'
2
  import { Modal, Button } from '@wordpress/components'
3
  import { useState, render } from '@wordpress/element'
4
- import { Plugins } from '../../api/Plugins'
5
- import { useWantedTemplateStore } from '../../state/Importing'
6
- import ErrorInstalling from './ErrorInstalling'
7
  import ReloadRequiredModal from '../ReloadRequiredModal'
 
8
 
9
  export default function InstallingModal({ requiredPlugins }) {
10
  const [errorMessage, setErrorMessage] = useState('')
 
1
  import { Modal, Button } from '@wordpress/components'
2
  import { useState, render } from '@wordpress/element'
3
+ import { __ } from '@wordpress/i18n'
4
+ import { Plugins } from '@extendify/api/Plugins'
5
+ import { useWantedTemplateStore } from '@extendify/state/Importing'
6
  import ReloadRequiredModal from '../ReloadRequiredModal'
7
+ import ErrorInstalling from './ErrorInstalling'
8
 
9
  export default function InstallingModal({ requiredPlugins }) {
10
  const [errorMessage, setErrorMessage] = useState('')
extendify-sdk/src/middleware/hasRequiredPlugins/RequiredPluginsModal.js CHANGED
@@ -1,12 +1,12 @@
1
- import { __, sprintf } from '@wordpress/i18n'
2
- import ExtendifyLibrary from '../../ExtendifyLibrary'
3
  import { Modal, Button, ButtonGroup } from '@wordpress/components'
4
  import { render } from '@wordpress/element'
5
- import InstallingModal from './InstallingModal'
6
- import { useWantedTemplateStore } from '../../state/Importing'
7
- import { getPluginDescription } from '../../util/general'
8
- import { useUserStore } from '../../state/User'
 
9
  import NeedsPermissionModal from '../NeedsPermissionModal'
 
10
 
11
  export default function RequiredPluginsModal({
12
  forceOpen,
 
 
1
  import { Modal, Button, ButtonGroup } from '@wordpress/components'
2
  import { render } from '@wordpress/element'
3
+ import { __, sprintf } from '@wordpress/i18n'
4
+ import ExtendifyLibrary from '@extendify/ExtendifyLibrary'
5
+ import { useWantedTemplateStore } from '@extendify/state/Importing'
6
+ import { useUserStore } from '@extendify/state/User'
7
+ import { getPluginDescription } from '@extendify/util/general'
8
  import NeedsPermissionModal from '../NeedsPermissionModal'
9
+ import InstallingModal from './InstallingModal'
10
 
11
  export default function RequiredPluginsModal({
12
  forceOpen,
extendify-sdk/src/middleware/hasRequiredPlugins/index.js CHANGED
@@ -1,6 +1,6 @@
 
1
  import { checkIfUserNeedsToInstallPlugins } from '../helpers'
2
  import RequiredPluginsModal from './RequiredPluginsModal'
3
- import { render } from '@wordpress/element'
4
 
5
  export const hasRequiredPlugins = async (template) => {
6
  return {
1
+ import { render } from '@wordpress/element'
2
  import { checkIfUserNeedsToInstallPlugins } from '../helpers'
3
  import RequiredPluginsModal from './RequiredPluginsModal'
 
4
 
5
  export const hasRequiredPlugins = async (template) => {
6
  return {
extendify-sdk/src/middleware/helpers.js CHANGED
@@ -1,4 +1,4 @@
1
- import { Plugins } from '../api/Plugins'
2
 
3
  let installedPlugins = []
4
  let activatedPlugins = []
@@ -7,15 +7,15 @@ export async function checkIfUserNeedsToInstallPlugins(template) {
7
  let required = template?.fields?.required_plugins ?? []
8
  // Hardcoded temporarily to not force EP install
9
  required = required.filter((p) => p !== 'editorplus')
10
- if (!required.length) {
11
  return false
12
  }
13
 
14
- if (!installedPlugins.length) {
15
  installedPlugins = Object.keys(await Plugins.getInstalled())
16
  }
17
  // if no dependencies are required, then this will be false automatically
18
- const weNeedInstalls = required.length
19
  ? required.filter((plugin) => {
20
  // TODO: if we have better data to work with this can be more literal
21
  return !installedPlugins.some((k) => {
@@ -32,16 +32,16 @@ export async function checkIfUserNeedsToActivatePlugins(template) {
32
 
33
  // Hardcoded temporarily to not force EP install
34
  required = required.filter((p) => p !== 'editorplus')
35
- if (!required.length) {
36
  return false
37
  }
38
 
39
- if (!activatedPlugins.length) {
40
  activatedPlugins = Object.values(await Plugins.getActivated())
41
  }
42
 
43
  // if no dependencies are required, then this will be false automatically
44
- const weNeedActivations = required.length
45
  ? required.filter((plugin) => {
46
  // TODO: if we have better data to work with this can be more literal
47
  return !activatedPlugins.some((k) => {
@@ -57,5 +57,5 @@ export async function checkIfUserNeedsToActivatePlugins(template) {
57
  return false
58
  }
59
  }
60
- return weNeedActivations.length
61
  }
1
+ import { Plugins } from '@extendify/api/Plugins'
2
 
3
  let installedPlugins = []
4
  let activatedPlugins = []
7
  let required = template?.fields?.required_plugins ?? []
8
  // Hardcoded temporarily to not force EP install
9
  required = required.filter((p) => p !== 'editorplus')
10
+ if (!required?.length) {
11
  return false
12
  }
13
 
14
+ if (!installedPlugins?.length) {
15
  installedPlugins = Object.keys(await Plugins.getInstalled())
16
  }
17
  // if no dependencies are required, then this will be false automatically
18
+ const weNeedInstalls = required?.length
19
  ? required.filter((plugin) => {
20
  // TODO: if we have better data to work with this can be more literal
21
  return !installedPlugins.some((k) => {
32
 
33
  // Hardcoded temporarily to not force EP install
34
  required = required.filter((p) => p !== 'editorplus')
35
+ if (!required?.length) {
36
  return false
37
  }
38
 
39
+ if (!activatedPlugins?.length) {
40
  activatedPlugins = Object.values(await Plugins.getActivated())
41
  }
42
 
43
  // if no dependencies are required, then this will be false automatically
44
+ const weNeedActivations = required?.length
45
  ? required.filter((plugin) => {
46
  // TODO: if we have better data to work with this can be more literal
47
  return !activatedPlugins.some((k) => {
57
  return false
58
  }
59
  }
60
+ return weNeedActivations?.length
61
  }
extendify-sdk/src/middleware/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import { hasRequiredPlugins } from './hasRequiredPlugins'
2
  import { hasPluginsActivated } from './hasPluginsActivated'
 
3
 
4
  export const Middleware = (middleware = []) => {
5
  return {
 
1
  import { hasPluginsActivated } from './hasPluginsActivated'
2
+ import { hasRequiredPlugins } from './hasRequiredPlugins'
3
 
4
  export const Middleware = (middleware = []) => {
5
  return {
extendify-sdk/src/pages/GridView.js CHANGED
@@ -1,4 +1,4 @@
1
- import Masonry from 'react-masonry-css'
2
  import {
3
  useEffect,
4
  useState,
@@ -6,14 +6,17 @@ import {
6
  useRef,
7
  memo,
8
  } from '@wordpress/element'
9
- import { Spinner, Button } from '@wordpress/components'
10
  import { __, sprintf } from '@wordpress/i18n'
11
- import { useTemplatesStore } from '../state/Templates'
12
- import { Templates as TemplatesApi } from '../api/Templates'
13
  import { useInView } from 'react-intersection-observer'
14
- import { useIsMounted } from '../hooks/helpers'
15
- import { ImportTemplateBlock } from '../components/ImportTemplateBlock'
16
- import { useGlobalStore } from '../state/GlobalState'
 
 
 
 
 
17
 
18
  export const GridView = memo(function GridView() {
19
  const isMounted = useIsMounted()
@@ -26,6 +29,12 @@ export const GridView = memo(function GridView() {
26
  const searchParamsRaw = useTemplatesStore((state) => state.searchParams)
27
  const currentType = useGlobalStore((state) => state.currentType)
28
  const resetTemplates = useTemplatesStore((state) => state.resetTemplates)
 
 
 
 
 
 
29
 
30
  // Store the next page in case we have pagination
31
  const nextPage = useRef(useTemplatesStore.getState().nextPage)
@@ -33,23 +42,27 @@ export const GridView = memo(function GridView() {
33
  const taxonomyType =
34
  searchParams.current.type === 'pattern' ? 'patternType' : 'layoutType'
35
  const currentTax = searchParams.current.taxonomies[taxonomyType]
 
36
 
37
  // Subscribing to the store will keep these values updates synchronously
38
  useEffect(() => {
39
  return useTemplatesStore.subscribe(
40
- (n) => (nextPage.current = n),
41
  (state) => state.nextPage,
 
42
  )
43
  }, [])
44
  useEffect(() => {
45
  return useTemplatesStore.subscribe(
46
- (s) => (searchParams.current = s),
47
  (state) => state.searchParams,
 
48
  )
49
  }, [])
50
 
51
  // Fetch the templates then add them to the current state
52
  const fetchTemplates = useCallback(() => {
 
 
 
53
  setServerError('')
54
  setNothingFound(false)
55
  const defaultError = __(
@@ -57,7 +70,16 @@ export const GridView = memo(function GridView() {
57
  'extendify',
58
  )
59
  const args = { offset: nextPage.current }
60
- TemplatesApi.get(searchParams.current, args)
 
 
 
 
 
 
 
 
 
61
  .then((response) => {
62
  if (!isMounted.current) return
63
  if (response?.error?.length) {
@@ -70,7 +92,7 @@ export const GridView = memo(function GridView() {
70
  }
71
  if (
72
  searchParamsRaw === searchParams.current &&
73
- response?.records.length
74
  ) {
75
  useTemplatesStore.setState({
76
  nextPage: response?.offset ?? '',
@@ -84,20 +106,41 @@ export const GridView = memo(function GridView() {
84
  console.error(error)
85
  setServerError(defaultError)
86
  })
87
- }, [appendTemplates, isMounted, searchParamsRaw])
88
 
89
  useEffect(() => {
90
- if (templates.length === 0) {
91
  setLoading(true)
92
  return
93
  }
94
- }, [templates.length, searchParamsRaw])
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
95
 
96
  // This is the main driver for loading templates
97
  // This loads the initial batch of templates. But if we don't yet have taxonomies.
98
  // There's also an option to skip loading on first mount
99
  useEffect(() => {
100
- if (!Object.keys(searchParams.current.taxonomies).length) {
101
  return
102
  }
103
 
@@ -111,7 +154,8 @@ export const GridView = memo(function GridView() {
111
  return
112
  }
113
  fetchTemplates()
114
- }, [fetchTemplates, searchParams])
 
115
 
116
  // Fetches when the load more is in view
117
  useEffect(() => {
@@ -123,7 +167,7 @@ export const GridView = memo(function GridView() {
123
  <div className="text-left">
124
  <h2 className="text-left">{__('Server error', 'extendify')}</h2>
125
  <code
126
- className="block max-w-xl p-4 mb-4"
127
  style={{ minHeight: '10rem' }}>
128
  {serverError}
129
  </code>
@@ -138,8 +182,8 @@ export const GridView = memo(function GridView() {
138
 
139
  if (nothingFound) {
140
  return (
141
- <div className="flex h-full items-center justify-center w-full -mt-2 sm:mt-0">
142
- <h2 className="text-sm text-extendify-gray font-normal">
143
  {sprintf(
144
  searchParams.current.type === 'template'
145
  ? __(
@@ -160,7 +204,7 @@ export const GridView = memo(function GridView() {
160
  return (
161
  <>
162
  {loading && (
163
- <div className="flex h-full items-center justify-center w-full -mt-2 sm:mt-0">
164
  <Spinner />
165
  </div>
166
  )}
@@ -186,7 +230,7 @@ export const GridView = memo(function GridView() {
186
  </div>
187
  {/* This is a large div that, when in view, will trigger more patterns to load */}
188
  <div
189
- className="-translate-y-full flex flex-col items-end justify-end relative transform"
190
  ref={loadMoreRef}
191
  style={{
192
  zIndex: -1,
@@ -207,7 +251,7 @@ const Grid = ({ type, children }) => {
207
  case 'template':
208
  return (
209
  <div
210
- className={`grid lg:grid-cols-2 gap-6 md:gap-8 ${sharedClasses}`}>
211
  {children}
212
  </div>
213
  )
@@ -222,7 +266,7 @@ const Grid = ({ type, children }) => {
222
  return (
223
  <Masonry
224
  breakpointCols={breakpointColumnsObj}
225
- className={`flex -ml-6 md:-ml-8 w-auto px-0.5 ${sharedClasses}`}
226
  columnClassName="pl-6 md:pl-8 bg-clip-padding space-y-6 md:space-y-8">
227
  {children}
228
  </Masonry>
1
+ import { Spinner, Button } from '@wordpress/components'
2
  import {
3
  useEffect,
4
  useState,
6
  useRef,
7
  memo,
8
  } from '@wordpress/element'
 
9
  import { __, sprintf } from '@wordpress/i18n'
10
+ import { cloneDeep } from 'lodash'
 
11
  import { useInView } from 'react-intersection-observer'
12
+ import Masonry from 'react-masonry-css'
13
+ import { Templates as TemplatesApi } from '@extendify/api/Templates'
14
+ import { ImportTemplateBlock } from '@extendify/components/ImportTemplateBlock'
15
+ import { useIsMounted } from '@extendify/hooks/helpers'
16
+ import { useTestGroup } from '@extendify/hooks/useTestGroup'
17
+ import { useGlobalStore } from '@extendify/state/GlobalState'
18
+ import { useTaxonomyStore } from '@extendify/state/Taxonomies'
19
+ import { useTemplatesStore } from '@extendify/state/Templates'
20
 
21
  export const GridView = memo(function GridView() {
22
  const isMounted = useIsMounted()
29
  const searchParamsRaw = useTemplatesStore((state) => state.searchParams)
30
  const currentType = useGlobalStore((state) => state.currentType)
31
  const resetTemplates = useTemplatesStore((state) => state.resetTemplates)
32
+ const open = useGlobalStore((state) => state.open)
33
+ const taxonomies = useTaxonomyStore((state) => state.taxonomies)
34
+ const updateType = useTemplatesStore((state) => state.updateType)
35
+ const updateTaxonomies = useTemplatesStore(
36
+ (state) => state.updateTaxonomies,
37
+ )
38
 
39
  // Store the next page in case we have pagination
40
  const nextPage = useRef(useTemplatesStore.getState().nextPage)
42
  const taxonomyType =
43
  searchParams.current.type === 'pattern' ? 'patternType' : 'layoutType'
44
  const currentTax = searchParams.current.taxonomies[taxonomyType]
45
+ const defaultOrAlt = useTestGroup('default-or-alt-sitetype', ['A', 'B'])
46
 
47
  // Subscribing to the store will keep these values updates synchronously
48
  useEffect(() => {
49
  return useTemplatesStore.subscribe(
 
50
  (state) => state.nextPage,
51
+ (n) => (nextPage.current = n),
52
  )
53
  }, [])
54
  useEffect(() => {
55
  return useTemplatesStore.subscribe(
 
56
  (state) => state.searchParams,
57
+ (s) => (searchParams.current = s),
58
  )
59
  }, [])
60
 
61
  // Fetch the templates then add them to the current state
62
  const fetchTemplates = useCallback(() => {
63
+ if (!defaultOrAlt) {
64
+ return
65
+ }
66
  setServerError('')
67
  setNothingFound(false)
68
  const defaultError = __(
70
  'extendify',
71
  )
72
  const args = { offset: nextPage.current }
73
+ // AB test the default or defaultAlt site type
74
+ const defaultSiteType =
75
+ defaultOrAlt === 'A' ? { slug: 'default' } : { slug: 'defaultAlt' }
76
+ const siteType = searchParams.current.taxonomies?.siteType?.slug?.length
77
+ ? searchParams.current.taxonomies.siteType
78
+ : defaultSiteType
79
+ // End AB test - otherwise use { slug: 'default' } when empty
80
+ const params = cloneDeep(searchParams.current)
81
+ params.taxonomies.siteType = siteType
82
+ TemplatesApi.get(params, args)
83
  .then((response) => {
84
  if (!isMounted.current) return
85
  if (response?.error?.length) {
92
  }
93
  if (
94
  searchParamsRaw === searchParams.current &&
95
+ response?.records?.length
96
  ) {
97
  useTemplatesStore.setState({
98
  nextPage: response?.offset ?? '',
106
  console.error(error)
107
  setServerError(defaultError)
108
  })
109
+ }, [appendTemplates, isMounted, searchParamsRaw, defaultOrAlt])
110
 
111
  useEffect(() => {
112
+ if (templates?.length === 0) {
113
  setLoading(true)
114
  return
115
  }
116
+ }, [templates?.length, searchParamsRaw])
117
+
118
+ useEffect(() => {
119
+ // This will check the URL for a pattern type and set that and remove it
120
+ // TODO: possibly refactor this if we exapnd it to support layouts
121
+ if (!open || !taxonomies?.patternType?.length) return
122
+ const search = new URLSearchParams(window.location.search)
123
+ if (!search.has('ext-patternType')) return
124
+ const term = search.get('ext-patternType')
125
+ // Delete it right away
126
+ search.delete('ext-patternType')
127
+ window.history.replaceState(
128
+ null,
129
+ null,
130
+ window.location.pathname + '?' + search.toString(),
131
+ )
132
+ // Search the slug in patternTypes
133
+ const tax = taxonomies.patternType.find((t) => t.slug === term)
134
+ if (!tax) return
135
+ updateTaxonomies({ patternType: tax })
136
+ updateType('pattern')
137
+ }, [open, taxonomies, updateType, updateTaxonomies])
138
 
139
  // This is the main driver for loading templates
140
  // This loads the initial batch of templates. But if we don't yet have taxonomies.
141
  // There's also an option to skip loading on first mount
142
  useEffect(() => {
143
+ if (!Object.keys(searchParams.current?.taxonomies)?.length) {
144
  return
145
  }
146
 
154
  return
155
  }
156
  fetchTemplates()
157
+ return () => resetTemplates()
158
+ }, [fetchTemplates, searchParams, resetTemplates])
159
 
160
  // Fetches when the load more is in view
161
  useEffect(() => {
167
  <div className="text-left">
168
  <h2 className="text-left">{__('Server error', 'extendify')}</h2>
169
  <code
170
+ className="mb-4 block max-w-xl p-4"
171
  style={{ minHeight: '10rem' }}>
172
  {serverError}
173
  </code>
182
 
183
  if (nothingFound) {
184
  return (
185
+ <div className="-mt-2 flex h-full w-full items-center justify-center sm:mt-0">
186
+ <h2 className="text-sm font-normal text-extendify-gray">
187
  {sprintf(
188
  searchParams.current.type === 'template'
189
  ? __(
204
  return (
205
  <>
206
  {loading && (
207
+ <div className="-mt-2 flex h-full w-full items-center justify-center sm:mt-0">
208
  <Spinner />
209
  </div>
210
  )}
230
  </div>
231
  {/* This is a large div that, when in view, will trigger more patterns to load */}
232
  <div
233
+ className="relative flex -translate-y-full transform flex-col items-end justify-end"
234
  ref={loadMoreRef}
235
  style={{
236
  zIndex: -1,
251
  case 'template':
252
  return (
253
  <div
254
+ className={`grid gap-6 md:gap-8 lg:grid-cols-2 ${sharedClasses}`}>
255
  {children}
256
  </div>
257
  )
266
  return (
267
  <Masonry
268
  breakpointCols={breakpointColumnsObj}
269
+ className={`-ml-6 flex w-auto px-0.5 md:-ml-8 ${sharedClasses}`}
270
  columnClassName="pl-6 md:pl-8 bg-clip-padding space-y-6 md:space-y-8">
271
  {children}
272
  </Masonry>
extendify-sdk/src/pages/MainWindow.js CHANGED
@@ -1,15 +1,18 @@
1
  import { Fragment, useRef } from '@wordpress/element'
2
  import { Dialog, Transition } from '@headlessui/react'
3
- import { useGlobalStore } from '../state/GlobalState'
 
 
 
4
  import { Layout } from './layout/Layout'
5
- import FooterNotice from '../components/notices/FooterNotice'
6
- import { useModal } from '../hooks/useModal'
7
 
8
  export default function MainWindow() {
9
  const containerRef = useRef(null)
10
  const open = useGlobalStore((state) => state.open)
11
  const setOpen = useGlobalStore((state) => state.setOpen)
12
  const modal = useModal(open)
 
 
13
 
14
  return (
15
  <Transition appear show={open} as={Fragment}>
@@ -19,8 +22,8 @@ export default function MainWindow() {
19
  className="extendify"
20
  initialFocus={containerRef}
21
  onClose={() => setOpen(false)}>
22
- <div className="h-screen w-screen sm:h-auto m-auto sm:w-auto fixed z-high inset-0 overflow-y-auto">
23
- <div className="flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0">
24
  <Transition.Child
25
  as={Fragment}
26
  enter="ease-out duration-300"
@@ -40,10 +43,19 @@ export default function MainWindow() {
40
  e.target === e.currentTarget &&
41
  setOpen(false)
42
  }
43
- className="fixed lg:absolute inset-0 lg:overflow-hidden transform transition-all p-2 lg:p-16">
 
 
 
44
  <Layout />
45
- <FooterNotice />
46
- {modal}
 
 
 
 
 
 
47
  </div>
48
  </Transition.Child>
49
  </div>
1
  import { Fragment, useRef } from '@wordpress/element'
2
  import { Dialog, Transition } from '@headlessui/react'
3
+ import FooterNotice from '@extendify/components/notices/FooterNotice'
4
+ import { useModal } from '@extendify/hooks/useModal'
5
+ import { useTestGroup } from '@extendify/hooks/useTestGroup'
6
+ import { useGlobalStore } from '@extendify/state/GlobalState'
7
  import { Layout } from './layout/Layout'
 
 
8
 
9
  export default function MainWindow() {
10
  const containerRef = useRef(null)
11
  const open = useGlobalStore((state) => state.open)
12
  const setOpen = useGlobalStore((state) => state.setOpen)
13
  const modal = useModal(open)
14
+ const ready = useGlobalStore((state) => state.ready)
15
+ const footerNoticePosition = useTestGroup('notice-position', ['A', 'B'])
16
 
17
  return (
18
  <Transition appear show={open} as={Fragment}>
22
  className="extendify"
23
  initialFocus={containerRef}
24
  onClose={() => setOpen(false)}>
25
+ <div className="fixed inset-0 z-high m-auto h-screen w-screen overflow-y-auto sm:h-auto sm:w-auto">
26
+ <div className="flex min-h-screen items-end justify-center px-4 pt-4 pb-20 text-center sm:block sm:p-0">
27
  <Transition.Child
28
  as={Fragment}
29
  enter="ease-out duration-300"
43
  e.target === e.currentTarget &&
44
  setOpen(false)
45
  }
46
+ className="fixed inset-0 transform p-2 transition-all lg:absolute lg:overflow-hidden lg:p-16">
47
+ {footerNoticePosition === 'B' && (
48
+ <FooterNotice className="-mt-6" />
49
+ )}
50
  <Layout />
51
+ {ready ? (
52
+ <>
53
+ {footerNoticePosition === 'A' && (
54
+ <FooterNotice />
55
+ )}
56
+ {modal}
57
+ </>
58
+ ) : null}
59
  </div>
60
  </Transition.Child>
61
  </div>
extendify-sdk/src/pages/Sidebar.js CHANGED
@@ -1,16 +1,20 @@
1
- import { memo } from '@wordpress/element'
2
- import { useTemplatesStore } from '../state/Templates'
3
  import { Panel } from '@wordpress/components'
4
- import TaxonomySection from '../components/TaxonomySection'
5
- import { useTaxonomyStore } from '../state/Taxonomies'
6
- import { SiteTypeSelector } from '../components/SiteTypeSelector'
7
- import { useUserStore } from '../state/User'
8
- import { ImportCounter } from '../components/ImportCounter'
9
- import { brandMark } from '../components/icons/'
10
- import { Icon } from '@wordpress/icons'
11
- import { featured } from '../components/icons'
12
  import { __ } from '@wordpress/i18n'
 
13
  import classNames from 'classnames'
 
 
 
 
 
 
 
 
 
 
 
14
 
15
  export const Sidebar = memo(function Sidebar() {
16
  const taxonomies = useTaxonomyStore((state) => state.taxonomies)
@@ -25,13 +29,22 @@ export const Sidebar = memo(function Sidebar() {
25
  const taxonomyType =
26
  searchParams.type === 'pattern' ? 'patternType' : 'layoutType'
27
  const isFeatured = !searchParams?.taxonomies[taxonomyType]?.slug?.length
 
 
28
 
29
  return (
30
  <>
31
- <div className="hidden sm:flex px-5 -ml-1.5 text-extendify-black">
32
  <Icon icon={brandMark} size={40} />
33
  </div>
34
- <div className="px-5">
 
 
 
 
 
 
 
35
  <button
36
  onClick={() =>
37
  updateTaxonomies({
@@ -39,7 +52,7 @@ export const Sidebar = memo(function Sidebar() {
39
  })
40
  }
41
  className={classNames(
42
- 'text-left text-sm cursor-pointer w-full flex items-center px-0 py-2 m-0 leading-none bg-transparent hover:text-wp-theme-500 transition duration-200 button-focus space-x-1',
43
  { 'text-wp-theme-500': isFeatured },
44
  )}>
45
  <Icon icon={featured} size={24} />
@@ -48,7 +61,7 @@ export const Sidebar = memo(function Sidebar() {
48
  </span>
49
  </button>
50
  </div>
51
- <div className="sm:mb-8 mx-6 sm:mx-0 sm:mt-0 pt-0.5 px-5">
52
  {Object.keys(taxonomies?.siteType ?? {}).length > 0 && (
53
  <SiteTypeSelector
54
  value={searchParams?.taxonomies?.siteType ?? ''}
@@ -60,17 +73,29 @@ export const Sidebar = memo(function Sidebar() {
60
  />
61
  )}
62
  </div>
63
- <div className="mt-px flex-grow hidden overflow-y-auto pb-32 pt-px sm:block">
 
 
 
 
 
 
 
 
64
  <Panel className="bg-transparent">
65
  <TaxonomySection
 
66
  taxType={taxonomyType}
67
- taxonomies={taxonomies[taxonomyType]}
 
 
68
  />
69
  </Panel>
70
  </div>
71
  {!apiKey.length && (
72
  <div className="px-5">
73
- <ImportCounter />
 
74
  </div>
75
  )}
76
  </>
 
 
1
  import { Panel } from '@wordpress/components'
2
+ import { Button } from '@wordpress/components'
3
+ import { memo } from '@wordpress/element'
 
 
 
 
 
 
4
  import { __ } from '@wordpress/i18n'
5
+ import { Icon, close } from '@wordpress/icons'
6
  import classNames from 'classnames'
7
+ import { ImportCounter } from '@extendify/components/ImportCounter'
8
+ import { SidebarNotice } from '@extendify/components/SidebarNotice'
9
+ import { SiteTypeSelector } from '@extendify/components/SiteTypeSelector'
10
+ import TaxonomySection from '@extendify/components/TaxonomySection'
11
+ import { featured } from '@extendify/components/icons'
12
+ import { brandMark } from '@extendify/components/icons/'
13
+ import { useTestGroup } from '@extendify/hooks/useTestGroup'
14
+ import { useGlobalStore } from '@extendify/state/GlobalState'
15
+ import { useTaxonomyStore } from '@extendify/state/Taxonomies'
16
+ import { useTemplatesStore } from '@extendify/state/Templates'
17
+ import { useUserStore } from '@extendify/state/User'
18
 
19
  export const Sidebar = memo(function Sidebar() {
20
  const taxonomies = useTaxonomyStore((state) => state.taxonomies)
29
  const taxonomyType =
30
  searchParams.type === 'pattern' ? 'patternType' : 'layoutType'
31
  const isFeatured = !searchParams?.taxonomies[taxonomyType]?.slug?.length
32
+ const setOpen = useGlobalStore((state) => state.setOpen)
33
+ const noticeVariety = useTestGroup('import-counter-type', ['A', 'B'])
34
 
35
  return (
36
  <>
37
+ <div className="-ml-1.5 hidden px-5 text-extendify-black sm:flex">
38
  <Icon icon={brandMark} size={40} />
39
  </div>
40
+ <div className="flex md:hidden items-center justify-end -mt-5 mx-1">
41
+ <Button
42
+ onClick={() => setOpen(false)}
43
+ icon={<Icon icon={close} size={24} />}
44
+ label={__('Close library', 'extendify')}
45
+ />
46
+ </div>
47
+ <div className="px-5 hidden md:block">
48
  <button
49
  onClick={() =>
50
  updateTaxonomies({
52
  })
53
  }
54
  className={classNames(
55
+ 'button-focus m-0 flex w-full cursor-pointer items-center space-x-1 bg-transparent px-0 py-2 text-left text-sm leading-none transition duration-200 hover:text-wp-theme-500',
56
  { 'text-wp-theme-500': isFeatured },
57
  )}>
58
  <Icon icon={featured} size={24} />
61
  </span>
62
  </button>
63
  </div>
64
+ <div className="mx-6 px-5 pt-0.5 sm:mx-0 sm:mb-8 sm:mt-0">
65
  {Object.keys(taxonomies?.siteType ?? {}).length > 0 && (
66
  <SiteTypeSelector
67
  value={searchParams?.taxonomies?.siteType ?? ''}
73
  />
74
  )}
75
  </div>
76
+ <div className="mt-px hidden flex-grow overflow-y-auto pb-36 pt-px sm:block space-y-6">
77
+ <Panel className="bg-transparent">
78
+ <TaxonomySection
79
+ taxType={taxonomyType}
80
+ taxonomies={taxonomies[taxonomyType]?.filter(
81
+ (term) => !term?.designType,
82
+ )}
83
+ />
84
+ </Panel>
85
  <Panel className="bg-transparent">
86
  <TaxonomySection
87
+ taxLabel={__('Design', 'extendify')}
88
  taxType={taxonomyType}
89
+ taxonomies={taxonomies[taxonomyType]?.filter((term) =>
90
+ Boolean(term?.designType),
91
+ )}
92
  />
93
  </Panel>
94
  </div>
95
  {!apiKey.length && (
96
  <div className="px-5">
97
+ {noticeVariety === 'A' ? <ImportCounter /> : null}
98
+ {noticeVariety === 'B' ? <SidebarNotice /> : null}
99
  </div>
100
  )}
101
  </>
extendify-sdk/src/pages/layout/HasSidebar.js CHANGED
@@ -1,15 +1,18 @@
 
 
1
  export default function HasSidebar({ children }) {
 
2
  return (
3
  <>
4
- <aside className="flex-shrink-0 py-0 sm:py-5 relative border-r border-extendify-transparent-black-100 bg-extendify-transparent-white backdrop-filter backdrop-blur-xl backdrop-saturate-200">
5
- <div className="flex flex-col h-full sm:w-64 py-6 sm:py-0 sm:space-y-6">
6
- {children[0]}
7
  </div>
8
  </aside>
9
  <main
10
  id="extendify-templates"
11
- className="bg-gray-50 w-full pt-6 sm:pt-0 h-full overflow-hidden">
12
- {children[1]}
13
  </main>
14
  </>
15
  )
1
+ import { useGlobalStore } from '@extendify/state/GlobalState'
2
+
3
  export default function HasSidebar({ children }) {
4
+ const ready = useGlobalStore((state) => state.ready)
5
  return (
6
  <>
7
+ <aside className="relative flex-shrink-0 border-r border-extendify-transparent-black-100 bg-extendify-transparent-white py-0 backdrop-blur-xl backdrop-saturate-200 backdrop-filter sm:py-5">
8
+ <div className="flex h-full flex-col py-6 sm:w-72 sm:space-y-6 sm:py-0">
9
+ {ready ? children[0] : null}
10
  </div>
11
  </aside>
12
  <main
13
  id="extendify-templates"
14
+ className="h-full w-full overflow-hidden bg-gray-50 pt-6 sm:pt-0">
15
+ {ready ? children[1] : null}
16
  </main>
17
  </>
18
  )
extendify-sdk/src/pages/layout/Layout.js CHANGED
@@ -1,19 +1,19 @@
 
 
1
  import { __ } from '@wordpress/i18n'
2
- import { Sidebar } from '../Sidebar'
 
 
 
3
  import HasSidebar from './HasSidebar'
4
  import { Toolbar } from './Toolbar'
5
- import { GridView } from '../GridView'
6
- import { Button } from '@wordpress/components'
7
- import { useRef, useEffect, useState, useCallback } from '@wordpress/element'
8
- import { useTemplatesStore } from '../../state/Templates'
9
- import { useWhenIdle } from '../../hooks/helpers'
10
 
11
  export const Layout = ({ setOpen }) => {
12
  const gridContainer = useRef()
13
  const searchParams = useTemplatesStore((state) => state.searchParams)
14
  const [showIdleScreen, setShowIdleScreen] = useState(false)
15
  const resetTemplates = useTemplatesStore((state) => state.resetTemplates)
16
- const idle = useWhenIdle(600_000) // 10 minutes
17
  const removeIdleScreen = useCallback(() => {
18
  setShowIdleScreen(false)
19
  resetTemplates()
@@ -26,10 +26,12 @@ export const Layout = ({ setOpen }) => {
26
  setShowIdleScreen(false)
27
  }, [searchParams])
28
  useEffect(() => {
 
29
  gridContainer.current.scrollTop = 0
30
  }, [searchParams])
 
31
  return (
32
- <div className="h-full flex flex-col items-center relative max-w-screen-4xl mx-auto">
33
  <div className="w-full flex-grow overflow-hidden">
34
  <button
35
  onClick={() =>
@@ -41,17 +43,17 @@ export const Layout = ({ setOpen }) => {
41
  className="extendify-skip-to-sr-link sr-only focus:not-sr-only focus:text-blue-500">
42
  {__('Skip to templates', 'extendify')}
43
  </button>
44
- <div className="sm:flex relative mx-auto h-full">
45
  <HasSidebar>
46
  <Sidebar />
47
- <div className="relative h-full z-30 flex flex-col">
48
  <Toolbar
49
- className="hidden sm:block w-full h-20 flex-shrink-0 px-6 md:px-8"
50
  hideLibrary={() => setOpen(false)}
51
  />
52
  <div
53
  ref={gridContainer}
54
- className="flex-grow z-20 overflow-y-auto px-6 md:px-8">
55
  {showIdleScreen ? (
56
  <IdleScreen callback={removeIdleScreen} />
57
  ) : (
@@ -67,12 +69,12 @@ export const Layout = ({ setOpen }) => {
67
  }
68
 
69
  const IdleScreen = ({ callback }) => (
70
- <div className="flex flex-col items-center justify-center h-full">
71
- <p className="text-sm text-extendify-gray font-normal mb-6">
72
  {__("We've added new stuff while you were away.", 'extendify')}
73
  </p>
74
  <Button
75
- className="components-button bg-wp-theme-500 hover:bg-wp-theme-600 border-color-wp-theme-500 text-white"
76
  onClick={callback}>
77
  {__('Reload')}
78
  </Button>
1
+ import { Button } from '@wordpress/components'
2
+ import { useRef, useEffect, useState, useCallback } from '@wordpress/element'
3
  import { __ } from '@wordpress/i18n'
4
+ import { useWhenIdle } from '@extendify/hooks/helpers'
5
+ import { GridView } from '@extendify/pages/GridView'
6
+ import { Sidebar } from '@extendify/pages/Sidebar'
7
+ import { useTemplatesStore } from '@extendify/state/Templates'
8
  import HasSidebar from './HasSidebar'
9
  import { Toolbar } from './Toolbar'
 
 
 
 
 
10
 
11
  export const Layout = ({ setOpen }) => {
12
  const gridContainer = useRef()
13
  const searchParams = useTemplatesStore((state) => state.searchParams)
14
  const [showIdleScreen, setShowIdleScreen] = useState(false)
15
  const resetTemplates = useTemplatesStore((state) => state.resetTemplates)
16
+ const idle = useWhenIdle(300_000) // 5 minutes
17
  const removeIdleScreen = useCallback(() => {
18
  setShowIdleScreen(false)
19
  resetTemplates()
26
  setShowIdleScreen(false)
27
  }, [searchParams])
28
  useEffect(() => {
29
+ if (!gridContainer.current) return
30
  gridContainer.current.scrollTop = 0
31
  }, [searchParams])
32
+
33
  return (
34
+ <div className="relative mx-auto flex h-full max-w-screen-4xl flex-col items-center">
35
  <div className="w-full flex-grow overflow-hidden">
36
  <button
37
  onClick={() =>
43
  className="extendify-skip-to-sr-link sr-only focus:not-sr-only focus:text-blue-500">
44
  {__('Skip to templates', 'extendify')}
45
  </button>
46
+ <div className="relative mx-auto h-full sm:flex">
47
  <HasSidebar>
48
  <Sidebar />
49
+ <div className="relative z-30 flex h-full flex-col">
50
  <Toolbar
51
+ className="hidden h-20 w-full flex-shrink-0 px-6 sm:block md:px-8"
52
  hideLibrary={() => setOpen(false)}
53
  />
54
  <div
55
  ref={gridContainer}
56
+ className="z-20 flex-grow overflow-y-auto px-6 md:px-8">
57
  {showIdleScreen ? (
58
  <IdleScreen callback={removeIdleScreen} />
59
  ) : (
69
  }
70
 
71
  const IdleScreen = ({ callback }) => (
72
+ <div className="flex h-full flex-col items-center justify-center">
73
+ <p className="mb-6 text-sm font-normal text-extendify-gray">
74
  {__("We've added new stuff while you were away.", 'extendify')}
75
  </p>
76
  <Button
77
+ className="components-button border-color-wp-theme-500 bg-wp-theme-500 text-white hover:bg-wp-theme-600"
78
  onClick={callback}>
79
  {__('Reload')}
80
  </Button>
extendify-sdk/src/pages/layout/Toolbar.js CHANGED
@@ -1,12 +1,12 @@
 
 
1
  import { __ } from '@wordpress/i18n'
2
  import { Icon, close } from '@wordpress/icons'
3
- import { memo } from '@wordpress/element'
4
- import { Button } from '@wordpress/components'
5
- import { TypeSelect } from '../../components/TypeSelect'
6
- import { useGlobalStore } from '../../state/GlobalState'
7
- import { user } from '../../components/icons/'
8
- import SettingsModal from '../../components/modals/SettingsModal'
9
- import { useUserStore } from '../../state/User'
10
 
11
  export const Toolbar = memo(function Toolbar({ className }) {
12
  const setOpen = useGlobalStore((state) => state.setOpen)
@@ -15,10 +15,10 @@ export const Toolbar = memo(function Toolbar({ className }) {
15
 
16
  return (
17
  <div className={className}>
18
- <div className="flex justify-between items-center h-full">
19
  <div className="flex-1"></div>
20
- <TypeSelect className="flex-1 flex items-center justify-center" />
21
- <div className="flex-1 flex justify-end items-center">
22
  <Button
23
  onClick={() => pushModal(<SettingsModal />)}
24
  icon={<Icon icon={user} size={24} />}
1
+ import { Button } from '@wordpress/components'
2
+ import { memo } from '@wordpress/element'
3
  import { __ } from '@wordpress/i18n'
4
  import { Icon, close } from '@wordpress/icons'
5
+ import { TypeSelect } from '@extendify/components/TypeSelect'
6
+ import { user } from '@extendify/components/icons/'
7
+ import { SettingsModal } from '@extendify/components/modals/settings/SettingsModal'
8
+ import { useGlobalStore } from '@extendify/state/GlobalState'
9
+ import { useUserStore } from '@extendify/state/User'
 
 
10
 
11
  export const Toolbar = memo(function Toolbar({ className }) {
12
  const setOpen = useGlobalStore((state) => state.setOpen)
15
 
16
  return (
17
  <div className={className}>
18
+ <div className="flex h-full items-center justify-between">
19
  <div className="flex-1"></div>
20
+ <TypeSelect className="flex flex-1 items-center justify-center" />
21
+ <div className="flex flex-1 items-center justify-end">
22
  <Button
23
  onClick={() => pushModal(<SettingsModal />)}
24
  icon={<Icon icon={user} size={24} />}
extendify-sdk/src/state/GlobalState.js CHANGED
@@ -1,35 +1,38 @@
1
  import create from 'zustand'
2
- import { persist } from 'zustand/middleware'
3
 
4
  export const useGlobalStore = create(
5
- persist(
6
- (set, get) => ({
7
- open: false,
8
- metaData: {},
9
- // These two are here just to persist their previous values,
10
- // but could be refactored to be the source instead.
11
- // It would require a refactor to state/Templates.js
12
- currentTaxonomies: {},
13
- currentType: 'pattern',
14
- modals: [],
15
- pushModal: (modal) => set({ modals: [modal, ...get().modals] }),
16
- popModal: () => set({ modals: get().modals.slice(1) }),
17
- removeAllModals: () => set({ modals: [] }),
18
- updateCurrentTaxonomies: (data) =>
19
- set({
20
- currentTaxonomies: Object.assign({}, data),
21
- }),
22
- updateCurrentType: (data) => set({ currentType: data }),
23
- setOpen: (value) => {
24
- set({ open: value })
 
 
 
 
 
 
 
 
 
 
25
  },
26
- }),
27
- {
28
- name: 'extendify-global-state',
29
- partialize: (state) => {
30
- delete state.modals
31
- return state
32
- },
33
- },
34
  ),
35
  )
1
  import create from 'zustand'
2
+ import { persist, subscribeWithSelector } from 'zustand/middleware'
3
 
4
  export const useGlobalStore = create(
5
+ subscribeWithSelector(
6
+ persist(
7
+ (set, get) => ({
8
+ open: false,
9
+ ready: false,
10
+ metaData: {},
11
+ // These two are here just to persist their previous values,
12
+ // but could be refactored to be the source instead.
13
+ // It would require a refactor to state/Templates.js
14
+ currentTaxonomies: {},
15
+ currentType: 'pattern',
16
+ modals: [],
17
+ pushModal: (modal) => set({ modals: [modal, ...get().modals] }),
18
+ popModal: () => set({ modals: get().modals.slice(1) }),
19
+ removeAllModals: () => set({ modals: [] }),
20
+ updateCurrentTaxonomies: (data) =>
21
+ set({
22
+ currentTaxonomies: Object.assign({}, data),
23
+ }),
24
+ updateCurrentType: (data) => set({ currentType: data }),
25
+ setOpen: (value) => set({ open: value }),
26
+ setReady: (value) => set({ ready: value }),
27
+ }),
28
+ {
29
+ name: 'extendify-global-state',
30
+ partialize: (state) => {
31
+ delete state.modals
32
+ delete state.ready
33
+ return state
34
+ },
35
  },
36
+ ),
 
 
 
 
 
 
 
37
  ),
38
  )
extendify-sdk/src/state/SiteSettings.js CHANGED
@@ -1,6 +1,6 @@
1
  import create from 'zustand'
2
  import { persist } from 'zustand/middleware'
3
- import { SiteSettings } from '../api/SiteSettings'
4
 
5
  const storage = {
6
  getItem: async () => await SiteSettings.getData(),
1
  import create from 'zustand'
2
  import { persist } from 'zustand/middleware'
3
+ import { SiteSettings } from '@extendify/api/SiteSettings'
4
 
5
  const storage = {
6
  getItem: async () => await SiteSettings.getData(),
extendify-sdk/src/state/Taxonomies.js CHANGED
@@ -1,11 +1,23 @@
1
  import create from 'zustand'
2
  import { persist } from 'zustand/middleware'
 
3
 
4
  export const useTaxonomyStore = create(
5
  persist(
6
- (set) => ({
7
  taxonomies: {},
8
  setTaxonomies: (taxonomies) => set({ taxonomies }),
 
 
 
 
 
 
 
 
 
 
 
9
  }),
10
  {
11
  name: 'extendify-taxonomies',
1
  import create from 'zustand'
2
  import { persist } from 'zustand/middleware'
3
+ import { Taxonomies as TaxonomiesApi } from '@extendify/api/Taxonomies'
4
 
5
  export const useTaxonomyStore = create(
6
  persist(
7
+ (set, get) => ({
8
  taxonomies: {},
9
  setTaxonomies: (taxonomies) => set({ taxonomies }),
10
+ fetchTaxonomies: async () => {
11
+ let tax = await TaxonomiesApi.get()
12
+ tax = Object.keys(tax).reduce((taxFiltered, key) => {
13
+ taxFiltered[key] = tax[key]
14
+ return taxFiltered
15
+ }, {})
16
+ if (!Object.keys(tax)?.length) {
17
+ return
18
+ }
19
+ get().setTaxonomies(tax)
20
+ },
21
  }),
22
  {
23
  name: 'extendify-taxonomies',
extendify-sdk/src/state/Templates.js CHANGED
@@ -1,121 +1,130 @@
1
  import create from 'zustand'
 
2
  import { useGlobalStore } from './GlobalState'
3
- import { useUserStore } from './User'
4
  import { useTaxonomyStore } from './Taxonomies'
 
5
 
6
  const defaultCategoryForType = (tax) =>
7
  tax === 'siteType'
8
  ? { slug: '', title: 'Unknown' }
9
  : { slug: '', title: 'Featured' }
10
 
11
- export const useTemplatesStore = create((set, get) => ({
12
- templates: [],
13
- skipNextFetch: false,
14
- fetchToken: null,
15
- taxonomyDefaultState: {},
16
- nextPage: '',
17
- searchParams: {
18
- taxonomies: {},
19
- type: 'pattern',
20
- },
21
- initTemplateData() {
22
- set({ activeTemplate: {} })
23
- get().setupDefaultTaxonomies()
24
- get().updateType(useGlobalStore.getState().currentType)
25
- },
26
- appendTemplates: (templates) =>
27
- set({
28
- templates: [
29
- ...new Map(
30
- [...get().templates, ...templates].map((item) => [
31
- item.id,
32
- item,
33
- ]),
34
- ).values(),
35
- ],
36
- }),
37
- setupDefaultTaxonomies: () => {
38
- const taxonomies = useTaxonomyStore.getState().taxonomies
39
- let taxonomyDefaultState = Object.entries(taxonomies).reduce(
40
- (state, current) => (
41
- (state[current[0]] = defaultCategoryForType(current[0])), state
42
- ),
43
- {},
44
- )
45
- const tax = {}
46
- let preferredTax =
47
- useUserStore.getState().preferredOptions?.taxonomies ?? {}
 
 
 
 
 
 
 
 
 
 
48
 
49
- // Check for old site type and set it if it exists
50
- if (preferredTax.tax_categories) {
51
- preferredTax = get().getLegacySiteType(preferredTax, taxonomies)
52
- }
53
- taxonomyDefaultState = Object.assign(
54
- {},
55
- taxonomyDefaultState,
56
 
57
- // Override with the user's preferred taxonomies
58
- preferredTax,
 
59
 
60
- // Override with the global state
61
- useGlobalStore.getState()?.currentTaxonomies ?? {},
62
- )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
63
 
64
- tax.taxonomies = Object.assign({}, taxonomyDefaultState)
65
 
66
- set({
67
- taxonomyDefaultState: taxonomyDefaultState,
68
- searchParams: {
69
- ...Object.assign(get().searchParams, tax),
70
- },
71
- })
72
- },
73
- updateTaxonomies: (params) => {
74
- const data = {}
75
- data.taxonomies = Object.assign(
76
- {},
77
- get().searchParams.taxonomies,
78
- params,
79
- )
80
- if (data?.taxonomies?.siteType) {
81
- // This is what the user "prefers", which may be used outside the library
82
- // which is persisted to the database, where as the global library state is in local storage
83
  useUserStore
84
  .getState()
85
- .updatePreferredOption('siteType', data?.taxonomies?.siteType)
86
- }
87
- useGlobalStore.getState().updateCurrentTaxonomies(data?.taxonomies)
88
- get().updateSearchParams(data)
89
- },
90
- updateType(type) {
91
- useGlobalStore.getState().updateCurrentType(type)
92
- get().updateSearchParams({ type })
93
- },
94
- updateSearchParams: (params) => {
95
- // If taxonomies are set to {}, lets use the default
96
- if (params?.taxonomies && !Object.keys(params.taxonomies).length) {
97
- params.taxonomies = get().taxonomyDefaultState
98
- }
99
-
100
- const searchParams = Object.assign({}, get().searchParams, params)
101
-
102
- // If the params are not the same, then update
103
- if (
104
- JSON.stringify(searchParams) !== JSON.stringify(get().searchParams)
105
- ) {
106
- set({ templates: [], nextPage: '', searchParams })
107
- }
108
- },
109
- resetTemplates: () => set({ templates: [], nextPage: '' }),
110
- getLegacySiteType: (preferredTax, taxonomies) => {
111
- const oldSiteType = taxonomies.siteType.find((t) =>
112
- [t.slug, t?.title].includes(preferredTax.tax_categories),
113
- )
114
- // TODO: This is kind of wonky, as we keep track of the state in two places.
115
- useUserStore.getState().updatePreferredSiteType(oldSiteType)
116
- get().updateTaxonomies({ siteType: oldSiteType })
117
- // Remove the legacy term so this only runs once
118
- useUserStore.getState().updatePreferredOption('tax_categories', null)
119
- return useUserStore.getState().preferredOptions.taxonomies
120
- },
121
- }))
1
  import create from 'zustand'
2
+ import { subscribeWithSelector } from 'zustand/middleware'
3
  import { useGlobalStore } from './GlobalState'
 
4
  import { useTaxonomyStore } from './Taxonomies'
5
+ import { useUserStore } from './User'
6
 
7
  const defaultCategoryForType = (tax) =>
8
  tax === 'siteType'
9
  ? { slug: '', title: 'Unknown' }
10
  : { slug: '', title: 'Featured' }
11
 
12
+ export const useTemplatesStore = create(
13
+ subscribeWithSelector((set, get) => ({
14
+ templates: [],
15
+ skipNextFetch: false,
16
+ fetchToken: null,
17
+ taxonomyDefaultState: {},
18
+ nextPage: '',
19
+ searchParams: {
20
+ taxonomies: {},
21
+ type: 'pattern',
22
+ },
23
+ initTemplateData() {
24
+ set({ activeTemplate: {} })
25
+ get().setupDefaultTaxonomies()
26
+ get().updateType(useGlobalStore.getState().currentType)
27
+ },
28
+ appendTemplates: (templates) =>
29
+ set({
30
+ templates: [
31
+ ...new Map(
32
+ [...get().templates, ...templates].map((item) => [
33
+ item.id,
34
+ item,
35
+ ]),
36
+ ).values(),
37
+ ],
38
+ }),
39
+ setupDefaultTaxonomies: () => {
40
+ const taxonomies = useTaxonomyStore.getState().taxonomies
41
+ let taxonomyDefaultState = Object.entries(taxonomies).reduce(
42
+ (state, current) => (
43
+ (state[current[0]] = defaultCategoryForType(current[0])),
44
+ state
45
+ ),
46
+ {},
47
+ )
48
+ const tax = {}
49
+ let preferredTax =
50
+ useUserStore.getState().preferredOptions?.taxonomies ?? {}
51
+
52
+ // Check for old site type and set it if it exists
53
+ if (preferredTax.tax_categories) {
54
+ preferredTax = get().getLegacySiteType(preferredTax, taxonomies)
55
+ }
56
+ taxonomyDefaultState = Object.assign(
57
+ {},
58
+ taxonomyDefaultState,
59
 
60
+ // Override with the user's preferred taxonomies
61
+ preferredTax,
 
 
 
 
 
62
 
63
+ // Override with the global state
64
+ useGlobalStore.getState()?.currentTaxonomies ?? {},
65
+ )
66
 
67
+ tax.taxonomies = Object.assign({}, taxonomyDefaultState)
68
+ set({
69
+ taxonomyDefaultState: taxonomyDefaultState,
70
+ searchParams: {
71
+ ...Object.assign(get().searchParams, tax),
72
+ },
73
+ })
74
+ },
75
+ updateTaxonomies: (params) => {
76
+ const data = {}
77
+ data.taxonomies = Object.assign(
78
+ {},
79
+ get().searchParams.taxonomies,
80
+ params,
81
+ )
82
+ if (data?.taxonomies?.siteType) {
83
+ // This is what the user "prefers", which may be used outside the library
84
+ // which is persisted to the database, where as the global library state is in local storage
85
+ useUserStore
86
+ .getState()
87
+ .updatePreferredOption(
88
+ 'siteType',
89
+ data?.taxonomies?.siteType,
90
+ )
91
+ }
92
+ useGlobalStore.getState().updateCurrentTaxonomies(data?.taxonomies)
93
+ get().updateSearchParams(data)
94
+ },
95
+ updateType(type) {
96
+ useGlobalStore.getState().updateCurrentType(type)
97
+ get().updateSearchParams({ type })
98
+ },
99
+ updateSearchParams: (params) => {
100
+ // If taxonomies are set to {}, lets use the default
101
+ if (params?.taxonomies && !Object.keys(params.taxonomies).length) {
102
+ params.taxonomies = get().taxonomyDefaultState
103
+ }
104
 
105
+ const searchParams = Object.assign({}, get().searchParams, params)
106
 
107
+ // If the params are not the same, then update
108
+ if (
109
+ JSON.stringify(searchParams) !==
110
+ JSON.stringify(get().searchParams)
111
+ ) {
112
+ set({ templates: [], nextPage: '', searchParams })
113
+ }
114
+ },
115
+ resetTemplates: () => set({ templates: [], nextPage: '' }),
116
+ getLegacySiteType: (preferredTax, taxonomies) => {
117
+ const oldSiteType = taxonomies.siteType.find((t) =>
118
+ [t.slug, t?.title].includes(preferredTax.tax_categories),
119
+ )
120
+ // TODO: This is kind of wonky, as we keep track of the state in two places.
121
+ useUserStore.getState().updatePreferredSiteType(oldSiteType)
122
+ get().updateTaxonomies({ siteType: oldSiteType })
123
+ // Remove the legacy term so this only runs once
124
  useUserStore
125
  .getState()
126
+ .updatePreferredOption('tax_categories', null)
127
+ return useUserStore.getState().preferredOptions.taxonomies
128
+ },
129
+ })),
130
+ )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
extendify-sdk/src/state/User.js CHANGED
@@ -1,20 +1,31 @@
 
1
  import create from 'zustand'
2
  import { persist } from 'zustand/middleware'
3
- import { User } from '../api/User'
4
 
5
  const storage = {
6
  getItem: async () => await User.getData(),
7
  setItem: async (_name, value) => await User.setData(value),
8
- removeItem: () => {},
9
  }
10
 
11
  const isGlobalLibraryEnabled = () =>
12
  window.extendifyData.sitesettings === null ||
13
  window.extendifyData?.sitesettings?.state?.enabled
14
 
 
 
 
 
 
 
 
 
 
15
  export const useUserStore = create(
16
  persist(
17
  (set, get) => ({
 
18
  firstLoadedOn: new Date().toISOString(),
19
  email: '',
20
  apiKey: '',
@@ -30,6 +41,7 @@ export const useUserStore = create(
30
  enabled: isGlobalLibraryEnabled(),
31
  canInstallPlugins: false,
32
  canActivatePlugins: false,
 
33
  preferredOptions: {
34
  taxonomies: {},
35
  type: '',
@@ -61,6 +73,36 @@ export const useUserStore = create(
61
  Number(get().allowedImports) + Number(get().freebieImports)
62
  )
63
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
64
  hasAvailableImports: () => {
65
  return get().apiKey
66
  ? true
@@ -132,6 +174,13 @@ export const useUserStore = create(
132
  {
133
  name: 'extendify-user',
134
  getStorage: () => storage,
 
 
 
 
 
 
 
135
  },
136
  ),
137
  )
1
+ import { sample } from 'lodash'
2
  import create from 'zustand'
3
  import { persist } from 'zustand/middleware'
4
+ import { User } from '@extendify/api/User'
5
 
6
  const storage = {
7
  getItem: async () => await User.getData(),
8
  setItem: async (_name, value) => await User.setData(value),
9
+ removeItem: async () => await User.deleteData(),
10
  }
11
 
12
  const isGlobalLibraryEnabled = () =>
13
  window.extendifyData.sitesettings === null ||
14
  window.extendifyData?.sitesettings?.state?.enabled
15
 
16
+ // Keep track of active tests as some might be active
17
+ // but never rendered.
18
+ const activeTests = {
19
+ ['notice-position']: '0001',
20
+ ['main-button-text']: '0002',
21
+ ['default-or-alt-sitetype']: '0004',
22
+ ['import-counter-type']: '0005',
23
+ }
24
+
25
  export const useUserStore = create(
26
  persist(
27
  (set, get) => ({
28
+ _hasHydrated: false,
29
  firstLoadedOn: new Date().toISOString(),
30
  email: '',
31
  apiKey: '',
41
  enabled: isGlobalLibraryEnabled(),
42
  canInstallPlugins: false,
43
  canActivatePlugins: false,
44
+ participatingTestsGroups: {},
45
  preferredOptions: {
46
  taxonomies: {},
47
  type: '',
73
  Number(get().allowedImports) + Number(get().freebieImports)
74
  )
75
  },
76
+ testGroup(testKey, groupOptions) {
77
+ if (!Object.keys(activeTests).includes(testKey)) return
78
+ let groups = get().participatingTestsGroups
79
+ // If the test is already in the group, don't add it again
80
+ if (!groups[testKey]) {
81
+ set({
82
+ participatingTestsGroups: Object.assign({}, groups, {
83
+ [testKey]: sample(groupOptions),
84
+ }),
85
+ })
86
+ }
87
+ groups = get().participatingTestsGroups
88
+ return groups[testKey]
89
+ },
90
+ activeTestGroups() {
91
+ return Object.entries(get().participatingTestsGroups)
92
+ .filter(([key]) => Object.keys(activeTests).includes(key))
93
+ .reduce((obj, [key, value]) => {
94
+ obj[key] = value
95
+ return obj
96
+ }, {})
97
+ },
98
+ activeTestGroupsUtmValue() {
99
+ const active = Object.entries(get().activeTestGroups())
100
+ .map(([key, value]) => {
101
+ return `${activeTests[key]}=${value}`
102
+ }, '')
103
+ .join(':')
104
+ return encodeURIComponent(active)
105
+ },
106
  hasAvailableImports: () => {
107
  return get().apiKey
108
  ? true
174
  {
175
  name: 'extendify-user',
176
  getStorage: () => storage,
177
+ onRehydrateStorage: () => () => {
178
+ useUserStore.setState({ _hasHydrated: true })
179
+ },
180
+ partialize: (state) => {
181
+ delete state._hasHydrated
182
+ return state
183
+ },
184
  },
185
  ),
186
  )
extendify-sdk/src/util/general.js CHANGED
@@ -1,5 +1,5 @@
1
  import { isString, toLower } from 'lodash'
2
- import { useUserStore } from '../state/User'
3
 
4
  /**
5
  * Will check if the given string contains the search string
@@ -55,4 +55,5 @@ export function getTaxonomyName(key) {
55
  case 'layoutType':
56
  return 'Page Types'
57
  }
 
58
  }
1
  import { isString, toLower } from 'lodash'
2
+ import { useUserStore } from '@extendify/state/User'
3
 
4
  /**
5
  * Will check if the given string contains the search string
55
  case 'layoutType':
56
  return 'Page Types'
57
  }
58
+ return key
59
  }
extendify-sdk/src/utility-control/index.js CHANGED
@@ -1,9 +1,8 @@
1
- import { __ } from '@wordpress/i18n'
2
  import { InspectorAdvancedControls } from '@wordpress/block-editor'
 
3
  import { createHigherOrderComponent } from '@wordpress/compose'
4
  import { addFilter } from '@wordpress/hooks'
5
- import { FormTokenField } from '@wordpress/components'
6
-
7
  import suggestions from '../../utility-framework/suggestions.json'
8
 
9
  function addAttributes(settings) {
 
1
  import { InspectorAdvancedControls } from '@wordpress/block-editor'
2
+ import { FormTokenField } from '@wordpress/components'
3
  import { createHigherOrderComponent } from '@wordpress/compose'
4
  import { addFilter } from '@wordpress/hooks'
5
+ import { __ } from '@wordpress/i18n'
 
6
  import suggestions from '../../utility-framework/suggestions.json'
7
 
8
  function addAttributes(settings) {
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: patterns, templates, blocks, gutenberg, library, editor, page builder
4
  Requires at least: 4.0
5
  Requires PHP: 7.1
6
  Tested up to: 5.9.1
7
- Stable tag: 4.3.11
8
  License: GPL-3.0+
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.txt
10
 
@@ -106,55 +106,65 @@ If you want, you can use the [Gutenberg](https://wordpress.org/plugins/gutenberg
106
 
107
  == Changelog ==
108
 
 
 
 
 
 
 
 
 
 
 
109
  = 4.3.11 =
110
- * Added: Advanced Customizer!
111
- * Added: Font Awesome 6 Library for future extensions.
112
- * Modified: Enforcing deprecation notices for deprecated functions. Developers: Please update your code as necessary.
113
- * Modified: Connection banner to meet wp.org library standards.
114
- * Updated: Extendify Library.
115
- * Release date: February 23, 2022
116
 
117
  = 4.3.10 =
118
- * Added: Repeater field for beta testing.
119
- * Modified: Background field will now show background styling options even if `background-image` is not set.
120
- * Modified: Connection banner now promotes Extendify plugin with download/activate option.
121
- * Updated: Extendify Library.
122
- * Release date: February 09, 2022
123
 
124
  = 4.3.9 =
125
- * Fixed: Extendify Library JavaScript error.
126
- * Release date: January 26, 2022
127
 
128
  = 4.3.8 =
129
- * Fixed: Spacing field defaults to `px` if no default is set.
130
- * Fixed: Remove plugin.php hack in Appsero SDK.
131
- * Updated: Default Google Fonts list brought up to current release
132
- * Updated: Extendify Library.
133
- * Release date: January 25, 2022
134
 
135
  = 4.3.7 =
136
- * Fixed: Incorrect global variable assignment. Thanks, @webbudesign.
137
- * Release date: January 11, 2022
138
 
139
  = 4.3.6 =
140
- * Modified: Update to the Extendify Library.
141
- * Modified: Moved Extendify and Redux templates libraries back to root folder.
142
- * Modified: Removed "Gutenberg is currently disabled" notice when the Classic Editor plugin is active.
143
- * Fixed: `date` shortcode without attributes producing error.
144
- * Fixed: Various jQuery deprecation fixes.
145
- * Release date: January 11, 2022
146
 
147
  = 4.3.5 =
148
- * Added: Add former premium feature: Option panel Search Bar. See Sample demo or the [docs site](https://devs.redux.io/core-extensions).
149
- * Added: Add former premium feature: Shortcodes. See Sample demo or the [docs site](https://devs.redux.io/core-extensions).
150
- * Fixed: #3852 - Editor in metaboxes not saving HTML. WIll now save the same HTML posts/pages allows.
151
- * Fixed: Front end formatting issue with the Extendify template library.
152
- * Release date: December 01, 2021
153
 
154
  = 4.3.4 =
155
- * Fixed: CSS and JS not loading when embedding Redux due to malformed path.
156
- * Modified: Update to the Extendify template library.
157
- * Release date: November, 24 2021
158
 
159
  = 4.3.3 =
160
  Modified: Move template libraries to redux-core directory.
4
  Requires at least: 4.0
5
  Requires PHP: 7.1
6
  Tested up to: 5.9.1
7
+ Stable tag: 4.3.12
8
  License: GPL-3.0+
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.txt
10
 
106
 
107
  == Changelog ==
108
 
109
+ = 4.3.12 =
110
+ Updated: Vendor libraries.
111
+ Updated: Extendify Library.
112
+ Fixed: jQuery deprecation notices.
113
+ Fixed: Filesystem class error.
114
+ Fixed: Customizer not saving data for sections not shown in the customizer.
115
+ Fixed: Fix deprecation errors in customizer.
116
+ Fixed: Fix core deprecation notices in metaboxes.
117
+ Release date: March 08, 2022
118
+
119
  = 4.3.11 =
120
+ Added: Advanced Customizer!
121
+ Added: Font Awesome 6 Library for future extensions.
122
+ Modified: Enforcing deprecation notices for deprecated functions. Developers: Please update your code as necessary.
123
+ Modified: Connection banner to meet wp.org library standards.
124
+ Updated: Extendify Library.
125
+ Release date: February 23, 2022
126
 
127
  = 4.3.10 =
128
+ Added: Repeater field for beta testing.
129
+ Modified: Background field will now show background styling options even if `background-image` is not set.
130
+ Modified: Connection banner now promotes Extendify plugin with download/activate option.
131
+ Updated: Extendify Library.
132
+ Release date: February 09, 2022
133
 
134
  = 4.3.9 =
135
+ Fixed: Extendify Library JavaScript error.
136
+ Release date: January 26, 2022
137
 
138
  = 4.3.8 =
139
+ Fixed: Spacing field defaults to `px` if no default is set.
140
+ Fixed: Remove plugin.php hack in Appsero SDK.
141
+ Updated: Default Google Fonts list brought up to current release
142
+ Updated: Extendify Library.
143
+ Release date: January 25, 2022
144
 
145
  = 4.3.7 =
146
+ Fixed: Incorrect global variable assignment. Thanks, @webbudesign.
147
+ Release date: January 11, 2022
148
 
149
  = 4.3.6 =
150
+ Modified: Update to the Extendify Library.
151
+ Modified: Moved Extendify and Redux templates libraries back to root folder.
152
+ Modified: Removed "Gutenberg is currently disabled" notice when the Classic Editor plugin is active.
153
+ Fixed: `date` shortcode without attributes producing error.
154
+ Fixed: Various jQuery deprecation fixes.
155
+ Release date: January 11, 2022
156
 
157
  = 4.3.5 =
158
+ Added: Add former premium feature: Option panel Search Bar. See Sample demo or the [docs site](https://devs.redux.io/core-extensions).
159
+ Added: Add former premium feature: Shortcodes. See Sample demo or the [docs site](https://devs.redux.io/core-extensions).
160
+ Fixed: #3852 - Editor in metaboxes not saving HTML. WIll now save the same HTML posts/pages allows.
161
+ Fixed: Front end formatting issue with the Extendify template library.
162
+ Release date: December 01, 2021
163
 
164
  = 4.3.4 =
165
+ Fixed: CSS and JS not loading when embedding Redux due to malformed path.
166
+ Modified: Update to the Extendify template library.
167
+ Release date: November, 24 2021
168
 
169
  = 4.3.3 =
170
  Modified: Move template libraries to redux-core directory.
redux-core/assets/css/redux-fields.min.css CHANGED
@@ -1,3 +1,3 @@
1
- .redux-container-ace_editor .ace-wrapper{position:static}.redux-container-ace_editor .ace_editor{height:200px;border-radius:3px}.redux-container-ace_editor .ace_gutter{z-index:1 !important}.redux-main .redux-container-background .redux-background-position,.redux-main .redux-container-background .redux-background-position select,.redux-main .redux-container-background .redux-background-attachment,.redux-main .redux-container-background .redux-background-attachment select,.redux-main .redux-container-background .redux-background-clip,.redux-main .redux-container-background .redux-background-clip select,.redux-main .redux-container-background .redux-background-origin,.redux-main .redux-container-background .redux-background-origin select,.redux-main .redux-container-background .redux-background-size,.redux-main .redux-container-background .redux-background-size select,.redux-main .redux-container-background .redux-background-repeat,.redux-main .redux-container-background .redux-background-repeat select{width:200px !important;margin-right:10px;margin-bottom:7px}.redux-main .redux-container-background .background-preview{display:block;width:100%;margin:5px 0 10px;border:1px dotted #d3d3d3}.redux-main .redux-container-background .select2-container{margin-right:10px;margin-bottom:10px}.redux-main .redux-container-background .wp-picker-container{margin-bottom:10px}.redux-main .redux-container-background .upload{width:100%;margin-bottom:8px}.redux-main .redux-container-select li.ui-state-highlight{height:20px;margin-top:2px;margin-left:5px;width:64px;margin-bottom:0}.wp-customizer .redux-container-background .redux-background-position,.wp-customizer .redux-container-background .redux-background-position select,.wp-customizer .redux-container-background .redux-background-attachment,.wp-customizer .redux-container-background .redux-background-attachment select,.wp-customizer .redux-container-background .redux-background-clip,.wp-customizer .redux-container-background .redux-background-clip select,.wp-customizer .redux-container-background .redux-background-origin,.wp-customizer .redux-container-background .redux-background-origin select,.wp-customizer .redux-container-background .redux-background-size,.wp-customizer .redux-container-background .redux-background-size select,.wp-customizer .redux-container-background .redux-background-repeat,.wp-customizer .redux-container-background .redux-background-repeat select{width:100% !important}.redux-main .redux-container-box_shadow .box-shadow-inset{margin:0 auto}.redux-main .redux-container-box_shadow .box-shadow-inset #shadow-result{padding:20px;margin-bottom:20px;margin-top:20px;min-height:180px;border:0px solid #ddd;background:#f1f1f1;-webkit-transition:all 0.2s ease;transition:all 0.2s ease}.redux-main .redux-container-box_shadow .box-shadow-inset .row-content:after,.redux-main .redux-container-box_shadow .box-shadow-inset .row:after{clear:both;content:" ";display:block;height:0;visibility:hidden}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2{width:50%;float:left;-webkit-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2.disabled label strong{color:#cccccc}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 label{color:#999999}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled{pointer-events:none;opacity:0.4;z-index:200;background:0;padding:0 !important}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled button{background-color:#888}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled a{z-index:-1}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 ul li{padding-bottom:10px}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2:first-child{padding-right:20px}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2:last-child{padding-left:20px}.redux-container-border .select2-container{float:left;display:block;margin-right:10px}.redux-container-border .select_wrapper{float:left;width:inherit}.redux-container-border .select_wrapper select{width:80px;float:left}.redux-container-border .field-border-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-container-border .field-border-input input{display:inline-block !important;width:100px !important}.redux-container-border .field-border-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-container-border .select_wrapper{margin-top:6px}}.redux-container-checkbox label{vertical-align:top;width:100%}.redux-container-checkbox label .field-desc{margin-top:0;float:left;width:93%;clear:none}.redux-container-color_gradient .redux-gradient-preview{height:150px;margin-top:10px;border-radius:4px}.redux-container-color_gradient .colorGradient,.redux-container-color_gradient .redux-gradient-type{display:inline-block;margin-right:20px}.redux-container-color_gradient .colorGradient strong,.redux-container-color_gradient .redux-gradient-type strong{display:table;margin-bottom:5px;margin-left:3px;font-size:12px;color:#999}@media screen and (max-width: 660px){.redux-container-color_gradient .colorGradient{display:block;text-align:center !important}}.redux-main .redux-container-color_palette label{position:relative;display:inline-block;padding:0;margin:0}.redux-main .redux-container-color_palette .colors-wrapper{max-height:300px;overflow-y:auto;padding:10px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.redux-main .redux-container-color_palette .colors-wrapper .color-palette-color{color:transparent;display:block;width:100%;height:100%;overflow:hidden;border:1px solid rgba(0,0,0,0.2)}.redux-main .redux-container-color_palette .colors-wrapper.round label{padding:3px}.redux-main .redux-container-color_palette .colors-wrapper.round .color-palette-color{border-radius:50%}.redux-main .redux-container-color_palette .colors-wrapper.box-shadow .color-palette-color{-webkit-box-shadow:inset 3px 3px 13px 2px rgba(0,0,0,0.22);box-shadow:inset 3px 3px 13px 2px rgba(0,0,0,0.22)}.redux-main .redux-container-color_palette .colors-wrapper input{display:none}.redux-main .redux-container-color_palette .colors-wrapper input:checked+label .color-palette-color{border:0;width:130%;height:130%;position:relative;left:-15%;top:-15%;z-index:99;-webkit-box-shadow:1px 1px 6px 1px #333333;box-shadow:1px 1px 6px 1px #333333;border:1px solid rgba(0,0,0,0.3)}.redux-main .redux-container-color_palette .colors-wrapper.with-margin label{margin:3px !important}#ui-datepicker-div{z-index:15 !important}.ui-datepicker-header{background-color:#00abef}.sp-container{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);vertical-align:top}.sp-replacer{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);vertical-align:top}.sp-replacer:focus,.sp-replacer:hover,.sp-replacer.focus,.sp-replacer.hover{background:#fafafa;border-color:#999;color:#222}.sp-replacer:focus,.sp-replacer.focus{-webkit-box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8);box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8)}.sp-replacer.active:focus{-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5),0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5),0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8)}.sp-replacer.active,.sp-replacer.active:hover,.sp-replacer:active{background:#eee;border-color:#999;color:#333;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5)}.redux-main .divide{height:20px;line-height:20px;float:none;border-color:#e7e7e7;display:block;width:100%;height:35px !important;line-height:35px !important;position:relative;margin:15px 0 10px 0}.redux-main .divide .inner{width:42% !important;left:40% !important;margin-left:-6%;background-color:#fcfcfc;border-color:#e7e7e7;position:absolute;height:1px;top:50%;width:100%;margin-top:-1px;border-top-width:1px;border-top-style:solid}.redux-main .divide .inner span{background-color:#fcfcfc;border-color:#e7e7e7;height:5px;width:5px;border-width:2px;border-style:solid;display:block;position:absolute;left:50%;margin-left:-5px;margin-top:-5px}.wp-customizer .redux-container-divide .divide .inner{width:82% !important;left:18% !important;margin-left:-8%}.redux-dimensions-container select,.redux-dimensions-container .select_wrapper{width:80px !important;float:left}.redux-dimensions-container .field-dimensions-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-dimensions-container .field-dimensions-input input{display:inline-block !important;width:100px !important}.redux-dimensions-container .field-dimensions-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-dimensions-container .select_wrapper{margin-top:6px}}.redux-container-editor .mceLayout td{border-width:1px;margin:0;padding:1px}.redux-container-editor input,.redux-container-editor textarea{margin:inherit}.redux-container-editor textarea{border-style:none;border:0;border-width:0}.redux-container-editor .wp-editor-container{border-radius:3px}.redux-container-editor .wp-editor-container textarea{border-radius:0;border-style:inherit}.redux-container-editor .quicktags-toolbar input{margin:2px 1px 4px;display:inline-block;min-width:26px;padding:2px 4px;font:12px/18px Arial, Helvetica, sans-serif normal;color:#464646;border:1px solid #c3c3c3;border-radius:3px;background:#eee;background-image:-webkit-gradient(linear, left bottom, left top, from(#e3e3e3), to(#fff));background-image:-webkit-linear-gradient(bottom, #e3e3e3, #fff);background-image:linear-gradient(to top, #e3e3e3, #fff)}.redux-container-image_select .redux-table-container{display:table;table-layout:fixed;width:100%}.redux-container-image_select .redux-image-select{margin:0 !important}.redux-container-image_select .redux-image-select .tiles{display:block;background-color:#fff;background-repeat:repeat;width:40px;height:40px}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select .tiles{border-color:#d9d9d9}.redux-container-image_select .redux-image-select li:last-child{margin-bottom:0}.redux-container-image_select .redux-image-select input[type="radio"]{display:none}.redux-container-image_select .redux-image-select-presets img{width:100%}.redux-container-image_select ul.redux-image-select li{margin:0 10px 3px 10px;display:inline-block;padding:2px 2px;padding-left:0}.redux-container-image_select .redux-image-select-selected{background-color:#f9f9f9}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select-selected img,.redux-container-image_select .redux-image-select .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-width:4px;border-style:solid}.redux-container-image_select .redux-image-select-selected .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-color:#7a7a7a}.redux-info-field{min-height:20px;padding:8px 19px;margin:10px 0;border:1px solid;border-radius:4px;border:1px solid;position:relative}.redux-info-field h1,.redux-info-field h2,.redux-info-field h3,.redux-info-field h4,.redux-info-field h5,.redux-info-field h6{border-bottom:0 !important}.redux-info-field h3{color:#777}.redux-info-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-info-field .redux-info-icon i{font-size:2em}.redux-info-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-info-field.redux-normal{background-color:#eee;border-color:#ccc;color:#666}.redux-info-field.redux-normal i{color:#c5c5c5}.redux-info-field.redux-warning{background-color:#fbeba4;border-color:#d7c281;color:#958234}.redux-info-field.redux-warning i{color:#dcca81}.redux-info-field.redux-success{background-color:#c4ee91;border-color:#71af5d;color:#4d7615}.redux-info-field.redux-success i{color:#a0ca6c}.redux-info-field.redux-critical{background-color:#fba1a3;border-color:#b84f5b;color:#981225}.redux-info-field.redux-critical i{color:#dd767d}.redux-info-field.redux-info{background-color:#d3e4f4;border-color:#a9b6c2;color:#5c80a1}.redux-info-field.redux-info i{color:#afc6da}.redux-notice-field{margin:15px 0 0;background-color:#fff;border:0;border-left:4px solid #f3f3f3;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);padding:1px 12px}.redux-notice-field h1,.redux-notice-field h2,.redux-notice-field h3,.redux-notice-field h4,.redux-notice-field h5,.redux-notice-field h6{border-bottom:0 !important}.redux-notice-field p{margin:0.5em 0;padding:2px}.redux-notice-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-notice-field .redux-info-icon i{font-size:2em}.redux-notice-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-notice-field.redux-info{border-left:4px solid #0099d5}.redux-notice-field.redux-success{border-left:4px solid #7ad03a}.redux-notice-field.redux-warning{border-left:4px solid #fbeba4}.redux-notice-field.redux-critical{border-left:4px solid #dd3d36}.redux-main .redux-field-container.redux-container-info{padding:0}.wp-customizer .hasIcon.redux-notice-field .redux-info-desc,.wp-customizer .hasIcon.redux-info-field .redux-info-desc{display:block;margin-left:43px}.wp-customizer .hasIcon.redux-notice-field .redux-info-icon,.wp-customizer .hasIcon.redux-info-field .redux-info-icon{float:left}.wp-customizer .redux-main .customize-control.customize-control-redux-info{border-bottom:0}.redux-container-link_color .linkColor{display:inline-block;padding-right:10px;padding-bottom:7px}.redux-container-link_color .linkColor strong{display:table;margin-bottom:5px;margin-left:3px;font-size:12px;font-weight:normal;color:#999}.redux-container-multi_text ul.redux-multi-text{margin:0;padding:0}.redux-container-multi_text .redux-multi-text-add{clear:both;margin:5px 0}.redux-container-multi_text a.redux-multi-text-remove.deletion{color:#f00;padding:2px 4px;margin-left:5px}.redux-container-multi_text a.redux-multi-text-remove.deletion:hover{background:#ff0;color:#fff;text-decoration:none}@media screen and (max-width: 782px){.redux-container-multi_text input{clear:both}.redux-container-multi_text .redux-multi-text-remove{margin:0;float:right}}.wp-customizer .redux-container-multi_text .button{float:right}.wp-customizer .redux-container-multi_text .redux-multi-text-remove{float:right;margin-bottom:5px}.wp-customizer .redux-container-multi_text ul.redux-multi-text input{width:100% !important}.redux-main .redux-media-slider{width:40%;display:inline-block;margin-left:30px}.redux-main .redux-media-filter-container{padding-top:20px}.redux-main .redux-media-filter-container .container-label{margin-bottom:20px;padding-bottom:1px;border-bottom:1px solid #e7e7e7;font-weight:600;font-size:12px;color:#999}.redux-main .redux-media-filter-container .media-filter{display:inline-block;width:47%;margin-bottom:5px}.redux-main .redux-media-filter-container .media-filter label{display:inline-block;width:130px;color:#999}.redux-main .redux-media-filter-container .media-filter label.disabled .filter-value{color:#ccc}.redux-container-palette label{border:3px solid transparent;border-color:transparent !important;border-radius:0;width:100% !important;display:block}.redux-container-palette label.ui-button.ui-widget{width:95%;background:none;padding:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.redux-container-palette label.ui-button.ui-widget .ui-checkboxradio-icon,.redux-container-palette label.ui-button.ui-widget .ui-checkboxradio-icon-space{display:none}.redux-container-palette label.ui-button.ui-widget span{padding:10px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;font-size:0;line-height:10px;color:rgba(0,0,0,0);-webkit-transition:all 200ms ease-in-out;transition:all 200ms ease-in-out;text-shadow:0}.redux-container-palette label.ui-button.ui-widget span:hover{-webkit-box-flex:3;-webkit-flex-grow:3;-ms-flex-positive:3;flex-grow:3;font-weight:bold;min-width:60px;font-size:12px;line-height:10px;color:#333;text-shadow:0 0 8px #fff, 0 0 8px #fff}.redux-container-palette label.ui-state-active{border:3px solid #333 !important}.wp-customizer .redux-main .redux-container-palette label{margin-bottom:3px}.redux-main .form-table-section-indented{width:95%;margin-left:5% !important}.redux-main .form-table-section tr:first-of-type th:first-of-type{padding:0px !important}.redux-main h3{margin-top:10px}.redux-main .form-table-section-indented>tbody>tr:first-child{display:none}.redux-main .form-table-section-indented>tbody>tr:nth-last-child(2){border-bottom:0}.redux-container-select li.ui-state-highlight{height:20px;margin-top:2px;margin-left:5px;width:64px;margin-bottom:0}.select2-search__field{width:none !important}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove,.select2-container--classic .select2-selection--single .select2-selection__clear{font-size:1.2em}.redux-container-select_image{margin-top:2px;margin-left:5px;width:100%;margin-bottom:0}.redux-preview-image{max-height:250px;max-width:250px;padding:5px;margin-top:10px;border:1px solid #e3e3e3;background:#f7f7f7;border-radius:3px}.redux-container-slider .redux-slider-container{margin-left:25px;margin-right:25px;width:200px;display:inline-block;vertical-align:middle}.redux-container-slider .redux-slider-input,.redux-container-slider .redux-slider-select-one,.redux-container-slider .redux-slider-select-two{width:100px !important;text-align:center}.redux-container-slider .redux-slider-label{position:absolute;margin-left:-5px}.redux-container-slider .redux-slider-label-one{position:absolute;margin-left:-22px}.redux-container-slider .redux-slider-label-two{position:absolute;margin-top:-21px;margin-left:245px}@media screen and (max-width: 782px){.redux-container-slider input{display:inline-block !important}}@media screen and (max-width: 570px){.redux-container-slider{text-align:center}.redux-container-slider input,.redux-container-slider select,.redux-container-slider .redux-slider-label,.redux-container-slider .select2-container{display:block !important;position:inherit;margin:10px auto}.redux-container-slider .redux-slider-container{margin-top:3px;width:80%}}.wp-customizer .redux-container-slider .redux-slider-label{float:left;position:inherit;width:25%;text-align:center;margin-left:0}.wp-customizer .redux-container-slider .redux-slider-input,.wp-customizer .redux-container-slider .redux-slider-select-one,.wp-customizer .redux-container-slider .redux-slider-select-two{width:25% !important}.wp-customizer .redux-container-slider .redux-slider-container{width:70%;margin-right:0;margin-left:5%}.redux-container-slides .redux-slides-list .select2-container{margin-bottom:10px;width:100%}.redux-container-slides .ui-accordion-header{margin-bottom:0}.redux-container-slides .full-text,.redux-container-slides .large-text{width:100%}.redux-container-slides .redux-slides-accordion-group{border:1px solid #dfdfdf !important;border-radius:3px !important;margin-top:0px !important;margin-bottom:10px;background:#f9f9f9;padding:5px}.redux-container-slides .redux-slides-accordion-group h3{border:1px solid #dfdfdf;cursor:move !important;font-weight:bold;padding:0 10px !important;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;border-radius:3px;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-slides #redux-slides-accordion .redux-slides-image{height:250px;padding:5px;margin-top:10px;margin-bottom:10px;border:1px solid #e3e3e3;background:#f7f7f7;border-radius:3px}.redux-container-slides .redux-slides-add{float:right;margin-right:10%;display:block;margin-bottom:10px}.redux-container-slides .redux-slides-remove{color:#ef521d !important;float:right;margin-top:5px}.redux-container-slides .redux-slides-header{font-weight:bold}.redux-container-slides .redux_slides_add_remove{margin-bottom:10px}.redux-container-slides input{width:100% !important}.wp-customizer .redux-container-slides .ui-accordion .ui-accordion-content{padding:10px}.redux-container-sorter{margin-right:-20px}.redux-container-sorter ul{background:#f9f9f9;border:1px solid #e3e3e3;min-height:40px;padding:10px 10px 0;width:145px;float:left;margin:0 15px 0 0}.redux-container-sorter ul.filled{opacity:0.7;filter:alpha(opacity=70);background:#efecec}.redux-container-sorter ul li{border:1px solid #dfdfdf;cursor:move;font-weight:bold;margin-bottom:10px !important;padding:0 10px;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;border-radius:3px;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-sorter ul li h3{margin:0 0 10px;text-align:center;color:#777;text-transform:capitalize;word-wrap:break-word}.redux-container-sorter ul li.placeholder{height:40px}.wp-customizer .redux-container-sorter ul{width:85%;margin:0 0 5px 0}.redux-container-sortable i.el,.redux-container-sortable i.dashicons-menu{cursor:move;padding-top:5px}.redux-container-sortable label{margin-right:10px}.redux-container-sortable label.bugger{margin-bottom:0px !important;font-size:12px !important;color:#999}.redux-container-sortable input{margin-right:10px}.redux-container-sortable .checkbox-container{width:100%}.redux-container-sortable .checkbox-container label{margin-bottom:2px !important;cursor:inherit}.redux-container-sortable .checkbox-container .drag{float:right;margin-left:10px}.redux-container-sortable ul.checkbox li{padding:5px 10px;border:1px solid #333;background:#fff;margin-bottom:5px !important}.redux-container-sortable ul.checkbox li .dashicons.visibility{padding-top:4px;margin-right:10px;cursor:pointer}.redux-container-sortable ul.checkbox li.invisible{color:#aaa;border:1px dashed #aaa}.redux-container-sortable ul.checkbox li.invisible .dashicons.visibility{color:#aaa}.redux-container-sortable ul.labeled li{line-height:1.4em !important}.redux-container-sortable li{line-height:30px !important}.redux-container-sortable li.ui-state-highlight{height:30px;width:364px;margin-bottom:13px}.redux-container-sortable li.placeholder{height:30px;margin:10px 0}.wp-customizer .redux-sortable input[type="text"]{width:92%}.wp-customizer .redux-sortable i.el{margin-left:5px}.wp-customizer .redux-container-sortable .checkbox-container{width:inherit}.wp-customizer .redux-container-sortable .ui-draggable-handle{margin-left:3%}.redux-container-switch .switch-options{min-height:30px;margin-right:10px}.redux-container-switch .switch-options label{cursor:pointer}.redux-container-switch .switch-options input{display:none}.redux-container-switch .cb-enable,.redux-container-switch .cb-disable{padding:0 10px;border-width:1px;border-style:solid;-webkit-appearance:none;white-space:nowrap;-webkit-box-sizing:border-box;box-sizing:border-box}.redux-container-switch .cb-enable span,.redux-container-switch .cb-disable span{line-height:30px;display:block;font-weight:700;-webkit-user-select:none;-moz-user-select:none;-o-user-select:none;-ms-user-select:none;user-select:none}.redux-container-switch .cb-enable,.redux-container-switch .cb-disable,.redux-container-switch .cb-enable span,.redux-container-switch .cb-disable span{display:block;float:left}.redux-container-switch .cb-enable{border-right:0;border-radius:3px 0px 0px 3px;-moz-border-radius:3px 0px 0px 3px;-webkit-border-radius:3px 0px 0px 3px}.redux-container-switch .cb-enable.selected{color:#fff}.redux-container-switch .cb-disable{border-left:0;border-radius:0px 3px 3px 0px;-moz-border-radius:0px 3px 3px 0px;-webkit-border-radius:0px 3px 3px 0px}.redux-container-switch .cb-disable.selected{color:#fff}.redux-container-spacing select,.redux-container-spacing .select_wrapper{width:80px !important;float:left}.redux-container-spacing .field-spacing-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-container-spacing .field-spacing-input input{display:inline-block !important;width:70px !important}.redux-container-spacing .field-spacing-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-container-spacing .select_wrapper{margin-top:6px}}.redux-container-spinner .spinner-wrpr{position:relative;display:block;height:30px;overflow:hidden}.redux-container-spinner .spinner-wrpr .spinner-input{position:relative !important;z-index:1;width:75px !important;height:30px !important;background:#eee !important;border:1px solid #bfbfbf !important;border-right:0 !important;border-left:0 !important;border-radius:0 !important}.redux-container-spinner .ui-spinner{position:static;display:inline}.redux-container-spinner .ui-spinner-buttons{position:absolute;padding:0}.redux-container-spinner .ui-widget .ui-spinner-button{color:#fff;position:absolute;top:0;padding:0 0 30px;overflow:hidden;cursor:pointer;background:-webkit-gradient(linear, left top, left bottom, from(#fff), to(#f3f3f3));background:-webkit-linear-gradient(#fff, #f3f3f3);background:linear-gradient(#fff, #f3f3f3);background-color:#fff;border:none;-webkit-box-shadow:none;box-shadow:none}.redux-container-spinner .ui-spinner-button:hover,.redux-container-spinner .ui-state-hover{background:-webkit-gradient(linear, left top, left bottom, from(#f3f3f3), to(#fff));background:-webkit-linear-gradient(#f3f3f3, #fff);background:linear-gradient(#f3f3f3, #fff);background-color:#f3f3f3}.redux-container-spinner .ui-corner-tr,.redux-container-spinner .ui-spinner-button .ui-icon-triangle-1-n{border-radius:0 3px 3px 0}.redux-container-spinner .ui-corner-br,.redux-container-spinner .ui-spinner-button .ui-icon-triangle-1-s{border-radius:3px 0 0 3px}.redux-container-spinner .ui-spinner-button .ui-icon{top:0;display:block;width:28px;height:28px;margin:0;border:1px solid #b7b7b7;background-image:initial;text-indent:0;text-align:center;font-size:18px;line-height:26px}.dp-numberPicker,.dp-numberPicker-add,.dp-numberPicker-sub,.dp-numberPicker-input{display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-sizing:border-box;text-align:center;vertical-align:top;height:30px}.dp-numberPicker{border-radius:3px}.redux-container .redux-container-spinner .dp-numberPicker-add,.redux-container .redux-container-spinner .dp-numberPicker-sub{width:30px;font-size:21px;cursor:pointer;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;background-color:#33b5e5;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);height:29px !important}.redux-container .redux-container-spinner .dp-numberPicker-add.disabled,.redux-container .redux-container-spinner .dp-numberPicker-sub.disabled{background-color:#2c6a81}.dp-numberPicker-add{border-top-right-radius:3px;border-bottom-right-radius:3px}.dp-numberPicker-sub{border-top-left-radius:3px;border-bottom-left-radius:3px}.dp-numberPicker-input{width:70px;background-color:#eee;border:0;margin:0 !important;-webkit-box-shadow:inset 0px 1px 1px rgba(255,255,255,0.5),inset 0px -1px 1px rgba(0,0,0,0.5);box-shadow:inset 0px 1px 1px rgba(255,255,255,0.5),inset 0px -1px 1px rgba(0,0,0,0.5)}.dp-numberPicker-input:disabled{background-color:#eee}.redux-container-text label{display:block;position:relative;font-size:12px !important;text-align:left;color:#999;margin:4px 0 2px 0 !important;cursor:default;top:5px;width:100px}.redux-container-text input{clear:left}.redux-container-text .input_wrapper{display:block;position:relative;padding:0;width:23%;max-width:23%;min-width:70px;float:left;clear:left;height:57px;-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.wp-customizer .redux-container-text .input_wrapper{width:100%;max-width:100%;height:auto}.redux-main .redux-typography-container{display:block;position:relative;margin:0;padding:0;width:100%;max-width:660px}.redux-main .redux-typography-container .redux-typography-slider{margin-top:11px;width:auto}.redux-main .redux-typography-container .clearfix{clear:both}.redux-main .redux-typography-container .clearfix::after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.redux-main .redux-typography-container input.wp-picker-default,.redux-main .redux-typography-container .redux-typography-color{-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;height:24px;padding:0 14px !important;margin-top:0;margin-bottom:0;font-size:12px !important}.redux-main .redux-typography-container .select_wrapper{display:block;position:relative;float:left;clear:none;margin:0 10px 0 0;width:48% !important;min-width:210px !important;max-width:324px !important;height:57px;-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-typography-container .select_wrapper:nth-child(odd){margin-right:10px !important}.redux-main .redux-typography-container .select_wrapper:nth-child(even){margin-right:10px !important}.redux-main .redux-typography-container .select_wrapper.typography-family .select2-container{width:100%}.redux-main .redux-typography-container .select_wrapper .redux-typography{font-size:14px !important;display:block;float:left;height:28px !important;line-height:50px !important;padding:0 !important;width:100% !important;-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-typography-container .wp-picker-container{float:left;clear:left;margin-bottom:12px;padding:3px;border-radius:3px}.redux-main .redux-typography-container .input_wrapper{display:block;position:relative;margin:0 4px 0 5px;padding:0;width:23%;max-width:23%;min-width:70px;float:left;clear:none;height:57px;-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.redux-main .redux-typography-container .input_wrapper.margin-top,.redux-main .redux-typography-container .input_wrapper.margin-bottom{margin-left:0px}.redux-main .redux-typography-container .input_wrapper.font-size{margin-left:0}.redux-main .redux-typography-container .input_wrapper input.mini{-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;width:78%;text-align:center;margin:0;height:28px;top:3px;padding:0 2px 0 5px;text-decoration:none;border-radius:4px}.redux-main .redux-typography-container .picker-wrapper{display:block;position:relative;margin:0;padding:0;width:100%;min-width:100%;clear:none;height:57px;-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.redux-main .redux-typography-container label{position:relative;font-size:12px !important;text-align:left;color:#999;width:100%;cursor:default}.redux-main .redux-typography-container .typography-preview{display:none;width:100%;border:1px dotted #d3d3d3;max-width:850px;padding:10px;font-size:10pt;height:auto;margin:5px 0 10px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.redux-main .redux-typography-container .typography-color{border:0 none;margin:0}.redux-main .redux-typography-container ::-webkit-input-placeholder{line-height:19px}@media screen and (max-width: 540px){.redux-main .redux-main .redux-typography-container{max-width:230px;margin:0 auto}.redux-main .redux-main .redux-typography-container .select_wrapper{max-width:210px;min-width:210px;width:210px;margin-left:0 !important;margin-right:0 !important}.redux-main .redux-main .redux-typography-container .input_wrapper{max-width:101px;min-width:101px;width:101px;margin-left:0 !important;margin-right:5px !important}.redux-main .redux-main .redux-typography-container .input_wrapper input.mini{width:73%}.redux-main .redux-main .redux-typography-container .input-append .add-on{width:30%;padding:5px !important}.redux-main .redux-main .redux-main .wp-picker-container .wp-picker-input-wrap{margin-top:7px}}@media screen and (max-width: 360px){.redux-main .redux-typography-container .iris-picker .iris-square{margin-right:3%}}.wp-customizer .redux-typography-container .input_wrapper{width:40%;max-width:40%;min-width:20%}.wp-customizer .redux-typography-container .input_wrapper input.mini{width:70%}.wp-customizer .redux-typography-container .select_wrapper{width:100% !important}.wp-customizer .redux-container{overflow:visible}.wp-customizer .redux-container .redux-main input{margin:0 !important}.wp-customizer .redux-container .redux-main input.spinner-input{margin-right:30px !important;margin-left:30px !important;margin-top:0px !important}.wp-customizer .redux-container .redux-main .redux-container-editor .wp-editor-area{color:#000000}.wp-customizer .redux-section.open .redux-group-tab{display:block !important}.wp-customizer .redux-section p.customize-section-description{margin-top:22px;word-break:break-word}.wp-customizer .redux-section p.customize-section-description.legacy{margin-top:7px}.wp-customizer .control-section-themes .accordion-section-title{margin:0}.wp-customizer #customize-controls .description{display:block}.wp-customizer #customize-controls .customize-info{margin-bottom:0}.wp-customizer #customize-controls .redux-section .accordion-section-content{background:#fcfcfc}.wp-customizer .redux-section .accordion-section-title i,.wp-customizer .redux-field .accordion-field-title i,.wp-customizer .redux-panel .accordion-section-title i{margin-right:5px}.wp-customizer .accordion-section.redux-main{background:inherit;margin-left:inherit;border-left:inherit;-moz-box-shadow:inherit;-webkit-box-shadow:inherit;padding:inherit;box-shadow:inherit}.wp-customizer .redux_field_th{padding:13px 0px 0px 0px}.wp-customizer .redux-main .redux-field-container{padding:10px 0}.wp-customizer .redux-main .select_wrapper{float:none;width:100%;display:inline-block}.wp-customizer .redux-main .select2-container{margin-right:0 !important;margin-bottom:5px !important;width:100% !important}.wp-customizer .redux-main .select_wrapper:nth-child(odd){margin-right:0}.wp-customizer .redux-main .redux-option-image{max-width:42% !important;margin-right:3%}.wp-customizer .redux-main .customize-control{border-bottom:1px solid #ddd;padding-bottom:4px}.wp-customizer .redux-main .customize-control:last-child{border-bottom:0;padding-bottom:0}.wp-customizer .redux-main .upload{width:100% !important}.wp-customizer .redux-main h3{margin-top:inherit}.wp-customizer .redux-main .redux-container-raw{margin-top:22px;word-break:break-word;padding:0 !important}.wp-customizer .redux-main .redux-container-password input{width:100%}.wp-customizer .select2-drop,.wp-customizer .select2-container{z-index:999999}.wp-customizer .customize-control-redux-raw{list-style:none}.redux_field_search{position:absolute;width:250px !important;right:20px;padding:4px 7px;top:6px}.redux-has-sections .redux_field_search{right:10px}.redux-main.redux-search .redux-section-field,.redux-main.redux-search .redux-info-field,.redux-main.redux-search .redux-notice-field,.redux-main.redux-search .redux-container-group,.redux-main.redux-search .redux-container-raw,.redux-main.redux-search .redux-section-desc,.redux-main.redux-search .redux-group-tab h3,.redux-main.redux-search .hr,.redux-main.redux-search .redux-field-info,.redux-main.redux-search tr{display:none}.redux-main.redux-search #import_export_default_section_group,.redux-main.redux-search #dev_mode_default_section_group{display:none !important}.redux-main.redux-search .redux-group-tab{margin-bottom:0}.redux-main.redux-search .redux-group-tab .form-table-section-indented{margin-left:0 !important;width:100%}.redux-main.redux-search .redux-group-tab .form-table-section-indented .redux-group-tab .form-table-section tr:first-of-type th:first-of-type{padding:inherit !important}.redux-main.redux-search .redux-group-tab .form-table-section-indented .redux-group-tab h3{margin-top:inherit !important}.redux-metabox .redux-has-sections .redux_field_search{top:8px}.redux_field_th{padding-bottom:0px !important}.redux-group-tab{margin-bottom:0 !important}.block-editor-page .postbox.closed .el:before{content:"" !important}.block-editor-page .postbox .el:before{content:""}.postbox .redux-container{-webkit-filter:none;filter:none;border:none;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.postbox .redux-container .redux-group-menu .active a{background:#FFF}.postbox .redux-container .redux-section-title{padding-left:0 !important;margin-bottom:15px !important}.postbox .redux-container .redux-section-desc{margin-bottom:20px}.postbox .redux-container .redux_main{border-left:1px solid #D8D8D8;moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.postbox .redux-container .redux_main input[type=text]{width:95%}.postbox .redux-container.redux-no-sections{margin:0;background:none}.postbox .redux-container.redux-no-sections .redux-main{background:none;margin-left:inherit;padding:inherit;border-left:none !important;min-height:0 !important}.postbox .redux-container.redux-no-sections .redux-main tr:last-child{border-bottom:none}.postbox .redux-container.redux-no-sections .redux-main tr:last-child th,.postbox .redux-container.redux-no-sections .redux-main tr:last-child td{padding-bottom:0}.postbox .redux-container.redux-no-sections .redux-main tr td{padding-top:10px !important;width:100%}.postbox .redux-container.redux-no-sections .redux-main .form-table:first-child tr:first-child td{padding-top:0 !important}.postbox .redux-container.redux-no-sections .redux-main .redux-field{margin-bottom:10px !important}.postbox .redux-container.redux-no-sections .redux-main .redux-field:last-child{margin-bottom:0 !important}.postbox .redux-container.redux-has-sections .redux-main{background:#fff}.postbox .redux-container.redux-has-sections .redux-main span.description{padding-bottom:20px}.postbox .redux-main h3{cursor:text !important;-webkit-user-select:inherit !important;-moz-user-select:inherit !important;-ms-user-select:inherit !important;user-select:inherit !important;padding-left:0 !important}.redux-box-side .redux-main .redux-field-container{padding:0;padding-top:5px}.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:100% !important}.redux-box-side .form-table tr td{padding:15px 0 !important}.redux-box-side .form-table tr:last-child td{padding-bottom:0 !important}.redux-box-side .form-table tr:first-child td{padding-top:5px !important}#poststuff .redux-metabox h3.hndle,.metabox-holder .redux-metabox h3.hndle{cursor:pointer;border-bottom:0}.display-group{display:inherit !important}@media (min-width: 1125px) and (max-width: 1405px){.postbox table.form-table,.postbox .form-table>thead,.postbox .form-table>tbody,.postbox .form-table>tbody>tr>th,.postbox .form-table>tbody>tr>td,.postbox .form-table>tbody>tr{display:block !important;width:100% !important;padding:0px !important}.postbox table.form-table.hide,.postbox .form-table>thead.hide,.postbox .form-table>tbody.hide,.postbox .form-table>tbody>tr>th.hide,.postbox .form-table>tbody>tr>td.hide,.postbox .form-table>tbody>tr.hide{display:none !important}.postbox .form-table>tbody>tr>th,.postbox .form-table>tbody>tr>td{padding:10px !important}.postbox .form-table>tbody>tr>th{width:35%}}.redux-metabox .form-table th,.redux-metabox .form-table td{margin:0;padding:0}.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:96% !important}@media (max-width: 1405px){.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:92% !important}}@media (max-width: 1125px){.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:100% !important}}@media (max-width: 1405px){.redux-main .form-table>tbody>tr>td{padding-top:0 !important;padding-bottom:0 !important}.redux-main .redux-field-container{padding:0 0 20px 0 !important;padding-bottom:10px !important}.postbox .form-table>tbody>tr>th{padding-bottom:0 !important}.redux_field_th{padding-top:0 !important;padding-bottom:10px !important}}.redux-no-sections .redux-group-tab{display:block !important}.admin-color-fresh #poststuff .redux-metabox h3.hndle,.admin-color-fresh .metabox-holder .redux-metabox h3.hndle{background:#222;color:#fff}.admin-color-light #poststuff .redux-metabox h3.hndle,.admin-color-light .metabox-holder .redux-metabox h3.hndle{background:#888;color:#fff}.admin-color-blue #poststuff .redux-metabox h3.hndle,.admin-color-blue .metabox-holder .redux-metabox h3.hndle{background:#096484;color:#fff}.admin-color-coffee #poststuff .redux-metabox h3.hndle,.admin-color-coffee .metabox-holder .redux-metabox h3.hndle{background:#46403c;color:#fff}.admin-color-ectoplasm #poststuff .redux-metabox h3.hndle,.admin-color-ectoplasm .metabox-holder .redux-metabox h3.hndle{background:#413256;color:#fff}.admin-color-midnight #poststuff .redux-metabox h3.hndle,.admin-color-midnight .metabox-holder .redux-metabox h3.hndle{background:#363b3f;color:#fff}.admin-color-ocean #poststuff .redux-metabox h3.hndle,.admin-color-ocean .metabox-holder .redux-metabox h3.hndle{background:#627c83;color:#fff}.admin-color-sunrise #poststuff .redux-metabox h3.hndle,.admin-color-sunrise .metabox-holder .redux-metabox h3.hndle{background:#b43c38;color:#fff}.redux-notices{margin-bottom:0;border:0}.redux-metabox .redux-container{margin-top:0}.redux-metabox .inside{margin:0 !important;padding:0 !important}.redux-metabox .redux-no-sections .redux-main{padding:6px 15px 15px 15px !important}.redux-metabox .redux-no-sections .redux-main .default_br{display:none}.redux-metabox .redux-no-sections .redux-main .redux-field-container{padding:10px 0 20px !important}.redux-metabox .redux-no-sections .redux-main .redux_field_th{padding-top:5px !important}.redux-metabox .redux-no-sections.redux-box-side .redux-main{padding:6px 8px 8px 8px !important}.redux-metabox .redux-no-sections.redux-box-side .redux-main input[type=text]{width:100% !important}.wp-color-result{margin:0 6px 0 0px !important}.redux-container .ui-button-text-only .ui-button-text{padding:0}.wpseotab tr{display:table-row !important}.redux-container-import_export #redux-import-link-wrapper,.redux-container-import_export #redux-import-code-wrapper{display:none}.redux-container-import_export #redux-export-code,.redux-container-import_export #redux-export-link-value,.redux-container-import_export #redux-import-upload-file{display:none}.redux-container-import_export #redux-import-action span{color:#b94a48}.redux-container-import_export #redux-import-upload span{font-weight:bold}#redux-object-browser{overflow:auto;word-wrap:break-word;max-height:600px;max-width:100%}.redux-container-repeater{padding:15px 20px;margin-bottom:7px;padding-top:0}.redux-container-repeater h4{margin:5px 0px 0px 0px}.redux-container-repeater h4:first-child{margin-top:0px}.redux-container-repeater .description{margin:5px 0 5px 0px}.redux-container-repeater .redux-repeater-accordion{width:100%}.redux-container-repeater .redux-repeater-accordion .ui-state-focus{outline:none}.redux-container-repeater .redux-repeater-accordion-repeater{margin-bottom:10px}.redux-container-repeater .redux-repeater-accordion-repeater>div{border:1px solid #dfdfdf !important;border-radius:0 !important;margin-top:0px !important;padding:10px}.redux-container-repeater .redux-repeater-accordion-repeater h3.ui-accordion-header{border:1px solid #dfdfdf;cursor:move;font-weight:bold;padding:0 10px;height:40px;line-height:40px;background-color:#f1f1f1;background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;border-radius:3px;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center;margin-bottom:0}.redux-container-repeater .redux-repeaters-add{float:right}.redux-container-repeater .redux-repeaters-add:after{clear:both}.redux-container-repeater .redux-repeaters-remove{color:#ef521d !important;float:right}.redux-container-repeater .redux-repeaters-remove:after{clear:both}.redux-container-repeater .redux-repeater-header{font-weight:bold}.redux-container-repeater .redux_repeaters_add_remove{margin-bottom:10px}.redux-container-repeater .redux-field-container{padding:0 0 10px 0}.redux-container-repeater .redux-field-container:last-child{padding-bottom:0}.redux-container-repeater .ui-accordion .ui-accordion-content{padding:1em}.redux-container-repeater .redux-container-sorter{margin-right:0 !important}#poststuff .redux-container-repeater h3{padding:0;cursor:move !important;line-height:40px}
2
 
3
  /*# sourceMappingURL=redux-fields.min.css.map */
1
+ .redux-container-ace_editor .ace-wrapper{position:static}.redux-container-ace_editor .ace_editor{height:200px;border-radius:3px}.redux-container-ace_editor .ace_gutter{z-index:1 !important}.redux-container-border .select2-container{float:left;display:block;margin-right:10px}.redux-container-border .select_wrapper{float:left;width:inherit}.redux-container-border .select_wrapper select{width:80px;float:left}.redux-container-border .field-border-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-container-border .field-border-input input{display:inline-block !important;width:100px !important}.redux-container-border .field-border-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-container-border .select_wrapper{margin-top:6px}}.redux-main .redux-container-background .redux-background-position,.redux-main .redux-container-background .redux-background-position select,.redux-main .redux-container-background .redux-background-attachment,.redux-main .redux-container-background .redux-background-attachment select,.redux-main .redux-container-background .redux-background-clip,.redux-main .redux-container-background .redux-background-clip select,.redux-main .redux-container-background .redux-background-origin,.redux-main .redux-container-background .redux-background-origin select,.redux-main .redux-container-background .redux-background-size,.redux-main .redux-container-background .redux-background-size select,.redux-main .redux-container-background .redux-background-repeat,.redux-main .redux-container-background .redux-background-repeat select{width:200px !important;margin-right:10px;margin-bottom:7px}.redux-main .redux-container-background .background-preview{display:block;width:100%;margin:5px 0 10px;border:1px dotted #d3d3d3}.redux-main .redux-container-background .select2-container{margin-right:10px;margin-bottom:10px}.redux-main .redux-container-background .wp-picker-container{margin-bottom:10px}.redux-main .redux-container-background .upload{width:100%;margin-bottom:8px}.redux-main .redux-container-select li.ui-state-highlight{height:20px;margin-top:2px;margin-left:5px;width:64px;margin-bottom:0}.wp-customizer .redux-container-background .redux-background-position,.wp-customizer .redux-container-background .redux-background-position select,.wp-customizer .redux-container-background .redux-background-attachment,.wp-customizer .redux-container-background .redux-background-attachment select,.wp-customizer .redux-container-background .redux-background-clip,.wp-customizer .redux-container-background .redux-background-clip select,.wp-customizer .redux-container-background .redux-background-origin,.wp-customizer .redux-container-background .redux-background-origin select,.wp-customizer .redux-container-background .redux-background-size,.wp-customizer .redux-container-background .redux-background-size select,.wp-customizer .redux-container-background .redux-background-repeat,.wp-customizer .redux-container-background .redux-background-repeat select{width:100% !important}.redux-main .redux-container-box_shadow .box-shadow-inset{margin:0 auto}.redux-main .redux-container-box_shadow .box-shadow-inset #shadow-result{padding:20px;margin-bottom:20px;margin-top:20px;min-height:180px;border:0px solid #ddd;background:#f1f1f1;-webkit-transition:all 0.2s ease;transition:all 0.2s ease}.redux-main .redux-container-box_shadow .box-shadow-inset .row-content:after,.redux-main .redux-container-box_shadow .box-shadow-inset .row:after{clear:both;content:" ";display:block;height:0;visibility:hidden}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2{width:50%;float:left;-webkit-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2.disabled label strong{color:#cccccc}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 label{color:#999999}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled{pointer-events:none;opacity:0.4;z-index:200;background:0;padding:0 !important}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled button{background-color:#888}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled a{z-index:-1}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 ul li{padding-bottom:10px}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2:first-child{padding-right:20px}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2:last-child{padding-left:20px}.redux-container-checkbox label{vertical-align:top;width:100%}.redux-container-checkbox label .field-desc{margin-top:0;float:left;width:93%;clear:none}.redux-container-color_gradient .redux-gradient-preview{height:150px;margin-top:10px;border-radius:4px}.redux-container-color_gradient .colorGradient,.redux-container-color_gradient .redux-gradient-type{display:inline-block;margin-right:20px}.redux-container-color_gradient .colorGradient strong,.redux-container-color_gradient .redux-gradient-type strong{display:table;margin-bottom:5px;margin-left:3px;font-size:12px;color:#999}@media screen and (max-width: 660px){.redux-container-color_gradient .colorGradient{display:block;text-align:center !important}}.redux-main .redux-container-color_palette label{position:relative;display:inline-block;padding:0;margin:0}.redux-main .redux-container-color_palette .colors-wrapper{max-height:300px;overflow-y:auto;padding:10px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.redux-main .redux-container-color_palette .colors-wrapper .color-palette-color{color:transparent;display:block;width:100%;height:100%;overflow:hidden;border:1px solid rgba(0,0,0,0.2)}.redux-main .redux-container-color_palette .colors-wrapper.round label{padding:3px}.redux-main .redux-container-color_palette .colors-wrapper.round .color-palette-color{border-radius:50%}.redux-main .redux-container-color_palette .colors-wrapper.box-shadow .color-palette-color{-webkit-box-shadow:inset 3px 3px 13px 2px rgba(0,0,0,0.22);box-shadow:inset 3px 3px 13px 2px rgba(0,0,0,0.22)}.redux-main .redux-container-color_palette .colors-wrapper input{display:none}.redux-main .redux-container-color_palette .colors-wrapper input:checked+label .color-palette-color{border:0;width:130%;height:130%;position:relative;left:-15%;top:-15%;z-index:99;-webkit-box-shadow:1px 1px 6px 1px #333333;box-shadow:1px 1px 6px 1px #333333;border:1px solid rgba(0,0,0,0.3)}.redux-main .redux-container-color_palette .colors-wrapper.with-margin label{margin:3px !important}.sp-container{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);vertical-align:top}.sp-replacer{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);vertical-align:top}.sp-replacer:focus,.sp-replacer:hover,.sp-replacer.focus,.sp-replacer.hover{background:#fafafa;border-color:#999;color:#222}.sp-replacer:focus,.sp-replacer.focus{-webkit-box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8);box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8)}.sp-replacer.active:focus{-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5),0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5),0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8)}.sp-replacer.active,.sp-replacer.active:hover,.sp-replacer:active{background:#eee;border-color:#999;color:#333;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5)}#ui-datepicker-div{z-index:15 !important}.ui-datepicker-header{background-color:#00abef}.redux-dimensions-container select,.redux-dimensions-container .select_wrapper{width:80px !important;float:left}.redux-dimensions-container .field-dimensions-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-dimensions-container .field-dimensions-input input{display:inline-block !important;width:100px !important}.redux-dimensions-container .field-dimensions-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-dimensions-container .select_wrapper{margin-top:6px}}.redux-main .divide{height:20px;line-height:20px;float:none;border-color:#e7e7e7;display:block;width:100%;height:35px !important;line-height:35px !important;position:relative;margin:15px 0 10px 0}.redux-main .divide .inner{width:42% !important;left:40% !important;margin-left:-6%;background-color:#fcfcfc;border-color:#e7e7e7;position:absolute;height:1px;top:50%;width:100%;margin-top:-1px;border-top-width:1px;border-top-style:solid}.redux-main .divide .inner span{background-color:#fcfcfc;border-color:#e7e7e7;height:5px;width:5px;border-width:2px;border-style:solid;display:block;position:absolute;left:50%;margin-left:-5px;margin-top:-5px}.wp-customizer .redux-container-divide .divide .inner{width:82% !important;left:18% !important;margin-left:-8%}.redux-container-editor .mceLayout td{border-width:1px;margin:0;padding:1px}.redux-container-editor input,.redux-container-editor textarea{margin:inherit}.redux-container-editor textarea{border-style:none;border:0;border-width:0}.redux-container-editor .wp-editor-container{border-radius:3px}.redux-container-editor .wp-editor-container textarea{border-radius:0;border-style:inherit}.redux-container-editor .quicktags-toolbar input{margin:2px 1px 4px;display:inline-block;min-width:26px;padding:2px 4px;font:12px/18px Arial, Helvetica, sans-serif normal;color:#464646;border:1px solid #c3c3c3;border-radius:3px;background:#eee;background-image:-webkit-gradient(linear, left bottom, left top, from(#e3e3e3), to(#fff));background-image:-webkit-linear-gradient(bottom, #e3e3e3, #fff);background-image:linear-gradient(to top, #e3e3e3, #fff)}.redux-container-image_select .redux-table-container{display:table;table-layout:fixed;width:100%}.redux-container-image_select .redux-image-select{margin:0 !important}.redux-container-image_select .redux-image-select .tiles{display:block;background-color:#fff;background-repeat:repeat;width:40px;height:40px}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select .tiles{border-color:#d9d9d9}.redux-container-image_select .redux-image-select li:last-child{margin-bottom:0}.redux-container-image_select .redux-image-select input[type="radio"]{display:none}.redux-container-image_select .redux-image-select-presets img{width:100%}.redux-container-image_select ul.redux-image-select li{margin:0 10px 3px 10px;display:inline-block;padding:2px 2px;padding-left:0}.redux-container-image_select .redux-image-select-selected{background-color:#f9f9f9}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select-selected img,.redux-container-image_select .redux-image-select .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-width:4px;border-style:solid}.redux-container-image_select .redux-image-select-selected .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-color:#7a7a7a}.redux-info-field{min-height:20px;padding:8px 19px;margin:10px 0;border:1px solid;border-radius:4px;border:1px solid;position:relative}.redux-info-field h1,.redux-info-field h2,.redux-info-field h3,.redux-info-field h4,.redux-info-field h5,.redux-info-field h6{border-bottom:0 !important}.redux-info-field h3{color:#777}.redux-info-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-info-field .redux-info-icon i{font-size:2em}.redux-info-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-info-field.redux-normal{background-color:#eee;border-color:#ccc;color:#666}.redux-info-field.redux-normal i{color:#c5c5c5}.redux-info-field.redux-warning{background-color:#fbeba4;border-color:#d7c281;color:#958234}.redux-info-field.redux-warning i{color:#dcca81}.redux-info-field.redux-success{background-color:#c4ee91;border-color:#71af5d;color:#4d7615}.redux-info-field.redux-success i{color:#a0ca6c}.redux-info-field.redux-critical{background-color:#fba1a3;border-color:#b84f5b;color:#981225}.redux-info-field.redux-critical i{color:#dd767d}.redux-info-field.redux-info{background-color:#d3e4f4;border-color:#a9b6c2;color:#5c80a1}.redux-info-field.redux-info i{color:#afc6da}.redux-notice-field{margin:15px 0 0;background-color:#fff;border:0;border-left:4px solid #f3f3f3;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);padding:1px 12px}.redux-notice-field h1,.redux-notice-field h2,.redux-notice-field h3,.redux-notice-field h4,.redux-notice-field h5,.redux-notice-field h6{border-bottom:0 !important}.redux-notice-field p{margin:0.5em 0;padding:2px}.redux-notice-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-notice-field .redux-info-icon i{font-size:2em}.redux-notice-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-notice-field.redux-info{border-left:4px solid #0099d5}.redux-notice-field.redux-success{border-left:4px solid #7ad03a}.redux-notice-field.redux-warning{border-left:4px solid #fbeba4}.redux-notice-field.redux-critical{border-left:4px solid #dd3d36}.redux-main .redux-field-container.redux-container-info{padding:0}.wp-customizer .hasIcon.redux-notice-field .redux-info-desc,.wp-customizer .hasIcon.redux-info-field .redux-info-desc{display:block;margin-left:43px}.wp-customizer .hasIcon.redux-notice-field .redux-info-icon,.wp-customizer .hasIcon.redux-info-field .redux-info-icon{float:left}.wp-customizer .redux-main .customize-control.customize-control-redux-info{border-bottom:0}.redux-container-link_color .linkColor{display:inline-block;padding-right:10px;padding-bottom:7px}.redux-container-link_color .linkColor strong{display:table;margin-bottom:5px;margin-left:3px;font-size:12px;font-weight:normal;color:#999}.redux-main .redux-media-slider{width:40%;display:inline-block;margin-left:30px}.redux-main .redux-media-filter-container{padding-top:20px}.redux-main .redux-media-filter-container .container-label{margin-bottom:20px;padding-bottom:1px;border-bottom:1px solid #e7e7e7;font-weight:600;font-size:12px;color:#999}.redux-main .redux-media-filter-container .media-filter{display:inline-block;width:47%;margin-bottom:5px}.redux-main .redux-media-filter-container .media-filter label{display:inline-block;width:130px;color:#999}.redux-main .redux-media-filter-container .media-filter label.disabled .filter-value{color:#ccc}.redux-container-multi_text ul.redux-multi-text{margin:0;padding:0}.redux-container-multi_text .redux-multi-text-add{clear:both;margin:5px 0}.redux-container-multi_text a.redux-multi-text-remove.deletion{color:#f00;padding:2px 4px;margin-left:5px}.redux-container-multi_text a.redux-multi-text-remove.deletion:hover{background:#ff0;color:#fff;text-decoration:none}@media screen and (max-width: 782px){.redux-container-multi_text input{clear:both}.redux-container-multi_text .redux-multi-text-remove{margin:0;float:right}}.wp-customizer .redux-container-multi_text .button{float:right}.wp-customizer .redux-container-multi_text .redux-multi-text-remove{float:right;margin-bottom:5px}.wp-customizer .redux-container-multi_text ul.redux-multi-text input{width:100% !important}.redux-container-palette label{border:3px solid transparent;border-color:transparent !important;border-radius:0;width:100% !important;display:block}.redux-container-palette label.ui-button.ui-widget{width:95%;background:none;padding:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.redux-container-palette label.ui-button.ui-widget .ui-checkboxradio-icon,.redux-container-palette label.ui-button.ui-widget .ui-checkboxradio-icon-space{display:none}.redux-container-palette label.ui-button.ui-widget span{padding:10px;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;font-size:0;line-height:10px;color:rgba(0,0,0,0);-webkit-transition:all 200ms ease-in-out;transition:all 200ms ease-in-out;text-shadow:0}.redux-container-palette label.ui-button.ui-widget span:hover{-webkit-box-flex:3;-webkit-flex-grow:3;-ms-flex-positive:3;flex-grow:3;font-weight:bold;min-width:60px;font-size:12px;line-height:10px;color:#333;text-shadow:0 0 8px #fff, 0 0 8px #fff}.redux-container-palette label.ui-state-active{border:3px solid #333 !important}.wp-customizer .redux-main .redux-container-palette label{margin-bottom:3px}.redux-main .form-table-section-indented{width:95%;margin-left:5% !important}.redux-main .form-table-section tr:first-of-type th:first-of-type{padding:0px !important}.redux-main h3{margin-top:10px}.redux-main .form-table-section-indented>tbody>tr:first-child{display:none}.redux-main .form-table-section-indented>tbody>tr:nth-last-child(2){border-bottom:0}.redux-container-select li.ui-state-highlight{height:20px;margin-top:2px;margin-left:5px;width:64px;margin-bottom:0}.select2-search__field{width:none !important}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove,.select2-container--classic .select2-selection--single .select2-selection__clear{font-size:1.2em}.redux-container-select_image{margin-top:2px;margin-left:5px;width:100%;margin-bottom:0}.redux-preview-image{max-height:250px;max-width:250px;padding:5px;margin-top:10px;border:1px solid #e3e3e3;background:#f7f7f7;border-radius:3px}.redux-container-slider .redux-slider-container{margin-left:25px;margin-right:25px;width:200px;display:inline-block;vertical-align:middle}.redux-container-slider .redux-slider-input,.redux-container-slider .redux-slider-select-one,.redux-container-slider .redux-slider-select-two{width:100px !important;text-align:center}.redux-container-slider .redux-slider-label{position:absolute;margin-left:-5px}.redux-container-slider .redux-slider-label-one{position:absolute;margin-left:-22px}.redux-container-slider .redux-slider-label-two{position:absolute;margin-top:-21px;margin-left:245px}@media screen and (max-width: 782px){.redux-container-slider input{display:inline-block !important}}@media screen and (max-width: 570px){.redux-container-slider{text-align:center}.redux-container-slider input,.redux-container-slider select,.redux-container-slider .redux-slider-label,.redux-container-slider .select2-container{display:block !important;position:inherit;margin:10px auto}.redux-container-slider .redux-slider-container{margin-top:3px;width:80%}}.wp-customizer .redux-container-slider .redux-slider-label{float:left;position:inherit;width:25%;text-align:center;margin-left:0}.wp-customizer .redux-container-slider .redux-slider-input,.wp-customizer .redux-container-slider .redux-slider-select-one,.wp-customizer .redux-container-slider .redux-slider-select-two{width:25% !important}.wp-customizer .redux-container-slider .redux-slider-container{width:70%;margin-right:0;margin-left:5%}.redux-container-slides .redux-slides-list .select2-container{margin-bottom:10px;width:100%}.redux-container-slides .ui-accordion-header{margin-bottom:0}.redux-container-slides .full-text,.redux-container-slides .large-text{width:100%}.redux-container-slides .redux-slides-accordion-group{border:1px solid #dfdfdf !important;border-radius:3px !important;margin-top:0px !important;margin-bottom:10px;background:#f9f9f9;padding:5px}.redux-container-slides .redux-slides-accordion-group h3{border:1px solid #dfdfdf;cursor:move !important;font-weight:bold;padding:0 10px !important;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;border-radius:3px;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-slides #redux-slides-accordion .redux-slides-image{height:250px;padding:5px;margin-top:10px;margin-bottom:10px;border:1px solid #e3e3e3;background:#f7f7f7;border-radius:3px}.redux-container-slides .redux-slides-add{float:right;margin-right:10%;display:block;margin-bottom:10px}.redux-container-slides .redux-slides-remove{color:#ef521d !important;float:right;margin-top:5px}.redux-container-slides .redux-slides-header{font-weight:bold}.redux-container-slides .redux_slides_add_remove{margin-bottom:10px}.redux-container-slides input{width:100% !important}.wp-customizer .redux-container-slides .ui-accordion .ui-accordion-content{padding:10px}.redux-container-sortable i.el,.redux-container-sortable i.dashicons-menu{cursor:move;padding-top:5px}.redux-container-sortable label{margin-right:10px}.redux-container-sortable label.bugger{margin-bottom:0px !important;font-size:12px !important;color:#999}.redux-container-sortable input{margin-right:10px}.redux-container-sortable .checkbox-container{width:100%}.redux-container-sortable .checkbox-container label{margin-bottom:2px !important;cursor:inherit}.redux-container-sortable .checkbox-container .drag{float:right;margin-left:10px}.redux-container-sortable ul.checkbox li{padding:5px 10px;border:1px solid #333;background:#fff;margin-bottom:5px !important}.redux-container-sortable ul.checkbox li .dashicons.visibility{padding-top:4px;margin-right:10px;cursor:pointer}.redux-container-sortable ul.checkbox li.invisible{color:#aaa;border:1px dashed #aaa}.redux-container-sortable ul.checkbox li.invisible .dashicons.visibility{color:#aaa}.redux-container-sortable ul.labeled li{line-height:1.4em !important}.redux-container-sortable li{line-height:30px !important}.redux-container-sortable li.ui-state-highlight{height:30px;width:364px;margin-bottom:13px}.redux-container-sortable li.placeholder{height:30px;margin:10px 0}.wp-customizer .redux-sortable input[type="text"]{width:92%}.wp-customizer .redux-sortable i.el{margin-left:5px}.wp-customizer .redux-container-sortable .checkbox-container{width:inherit}.wp-customizer .redux-container-sortable .ui-draggable-handle{margin-left:3%}.redux-container-sorter{margin-right:-20px}.redux-container-sorter ul{background:#f9f9f9;border:1px solid #e3e3e3;min-height:40px;padding:10px 10px 0;width:145px;float:left;margin:0 15px 0 0}.redux-container-sorter ul.filled{opacity:0.7;filter:alpha(opacity=70);background:#efecec}.redux-container-sorter ul li{border:1px solid #dfdfdf;cursor:move;font-weight:bold;margin-bottom:10px !important;padding:0 10px;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;border-radius:3px;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-sorter ul li h3{margin:0 0 10px;text-align:center;color:#777;text-transform:capitalize;word-wrap:break-word}.redux-container-sorter ul li.placeholder{height:40px}.wp-customizer .redux-container-sorter ul{width:85%;margin:0 0 5px 0}.redux-container-spacing select,.redux-container-spacing .select_wrapper{width:80px !important;float:left}.redux-container-spacing .field-spacing-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-container-spacing .field-spacing-input input{display:inline-block !important;width:70px !important}.redux-container-spacing .field-spacing-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-container-spacing .select_wrapper{margin-top:6px}}.redux-container-spinner .spinner-wrpr{position:relative;display:block;height:30px;overflow:hidden}.redux-container-spinner .spinner-wrpr .spinner-input{position:relative !important;z-index:1;width:75px !important;height:30px !important;background:#eee !important;border:1px solid #bfbfbf !important;border-right:0 !important;border-left:0 !important;border-radius:0 !important}.redux-container-spinner .ui-spinner{position:static;display:inline}.redux-container-spinner .ui-spinner-buttons{position:absolute;padding:0}.redux-container-spinner .ui-widget .ui-spinner-button{color:#fff;position:absolute;top:0;padding:0 0 30px;overflow:hidden;cursor:pointer;background:-webkit-gradient(linear, left top, left bottom, from(#fff), to(#f3f3f3));background:-webkit-linear-gradient(#fff, #f3f3f3);background:linear-gradient(#fff, #f3f3f3);background-color:#fff;border:none;-webkit-box-shadow:none;box-shadow:none}.redux-container-spinner .ui-spinner-button:hover,.redux-container-spinner .ui-state-hover{background:-webkit-gradient(linear, left top, left bottom, from(#f3f3f3), to(#fff));background:-webkit-linear-gradient(#f3f3f3, #fff);background:linear-gradient(#f3f3f3, #fff);background-color:#f3f3f3}.redux-container-spinner .ui-corner-tr,.redux-container-spinner .ui-spinner-button .ui-icon-triangle-1-n{border-radius:0 3px 3px 0}.redux-container-spinner .ui-corner-br,.redux-container-spinner .ui-spinner-button .ui-icon-triangle-1-s{border-radius:3px 0 0 3px}.redux-container-spinner .ui-spinner-button .ui-icon{top:0;display:block;width:28px;height:28px;margin:0;border:1px solid #b7b7b7;background-image:initial;text-indent:0;text-align:center;font-size:18px;line-height:26px}.dp-numberPicker,.dp-numberPicker-add,.dp-numberPicker-sub,.dp-numberPicker-input{display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-sizing:border-box;text-align:center;vertical-align:top;height:30px}.dp-numberPicker{border-radius:3px}.redux-container .redux-container-spinner .dp-numberPicker-add,.redux-container .redux-container-spinner .dp-numberPicker-sub{width:30px;font-size:21px;cursor:pointer;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;background-color:#33b5e5;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);height:29px !important}.redux-container .redux-container-spinner .dp-numberPicker-add.disabled,.redux-container .redux-container-spinner .dp-numberPicker-sub.disabled{background-color:#2c6a81}.dp-numberPicker-add{border-top-right-radius:3px;border-bottom-right-radius:3px}.dp-numberPicker-sub{border-top-left-radius:3px;border-bottom-left-radius:3px}.dp-numberPicker-input{width:70px;background-color:#eee;border:0;margin:0 !important;-webkit-box-shadow:inset 0px 1px 1px rgba(255,255,255,0.5),inset 0px -1px 1px rgba(0,0,0,0.5);box-shadow:inset 0px 1px 1px rgba(255,255,255,0.5),inset 0px -1px 1px rgba(0,0,0,0.5)}.dp-numberPicker-input:disabled{background-color:#eee}.redux-container-switch .switch-options{min-height:30px;margin-right:10px}.redux-container-switch .switch-options label{cursor:pointer}.redux-container-switch .switch-options input{display:none}.redux-container-switch .cb-enable,.redux-container-switch .cb-disable{padding:0 10px;border-width:1px;border-style:solid;-webkit-appearance:none;white-space:nowrap;-webkit-box-sizing:border-box;box-sizing:border-box}.redux-container-switch .cb-enable span,.redux-container-switch .cb-disable span{line-height:30px;display:block;font-weight:700;-webkit-user-select:none;-moz-user-select:none;-o-user-select:none;-ms-user-select:none;user-select:none}.redux-container-switch .cb-enable,.redux-container-switch .cb-disable,.redux-container-switch .cb-enable span,.redux-container-switch .cb-disable span{display:block;float:left}.redux-container-switch .cb-enable{border-right:0;border-radius:3px 0px 0px 3px;-moz-border-radius:3px 0px 0px 3px;-webkit-border-radius:3px 0px 0px 3px}.redux-container-switch .cb-enable.selected{color:#fff}.redux-container-switch .cb-disable{border-left:0;border-radius:0px 3px 3px 0px;-moz-border-radius:0px 3px 3px 0px;-webkit-border-radius:0px 3px 3px 0px}.redux-container-switch .cb-disable.selected{color:#fff}.redux-container-text label{display:block;position:relative;font-size:12px !important;text-align:left;color:#999;margin:4px 0 2px 0 !important;cursor:default;top:5px;width:100px}.redux-container-text input{clear:left}.redux-container-text .input_wrapper{display:block;position:relative;padding:0;width:23%;max-width:23%;min-width:70px;float:left;clear:left;height:57px;-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.wp-customizer .redux-container-text .input_wrapper{width:100%;max-width:100%;height:auto}.redux-main .redux-typography-container{display:block;position:relative;margin:0;padding:0;width:100%;max-width:660px}.redux-main .redux-typography-container .redux-typography-slider{margin-top:11px;width:auto}.redux-main .redux-typography-container .clearfix{clear:both}.redux-main .redux-typography-container .clearfix::after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0}.redux-main .redux-typography-container input.wp-picker-default,.redux-main .redux-typography-container .redux-typography-color{-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;height:24px;padding:0 14px !important;margin-top:0;margin-bottom:0;font-size:12px !important}.redux-main .redux-typography-container .select_wrapper{display:block;position:relative;float:left;clear:none;margin:0 10px 0 0;width:48% !important;min-width:210px !important;max-width:324px !important;height:57px;-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-typography-container .select_wrapper:nth-child(odd){margin-right:10px !important}.redux-main .redux-typography-container .select_wrapper:nth-child(even){margin-right:10px !important}.redux-main .redux-typography-container .select_wrapper.typography-family .select2-container{width:100%}.redux-main .redux-typography-container .select_wrapper .redux-typography{font-size:14px !important;display:block;float:left;height:28px !important;line-height:50px !important;padding:0 !important;width:100% !important;-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-typography-container .wp-picker-container{float:left;clear:left;margin-bottom:12px;padding:3px;border-radius:3px}.redux-main .redux-typography-container .input_wrapper{display:block;position:relative;margin:0 4px 0 5px;padding:0;width:23%;max-width:23%;min-width:70px;float:left;clear:none;height:57px;-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.redux-main .redux-typography-container .input_wrapper.margin-top,.redux-main .redux-typography-container .input_wrapper.margin-bottom{margin-left:0px}.redux-main .redux-typography-container .input_wrapper.font-size{margin-left:0}.redux-main .redux-typography-container .input_wrapper input.mini{-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;width:78%;text-align:center;margin:0;height:28px;top:3px;padding:0 2px 0 5px;text-decoration:none;border-radius:4px}.redux-main .redux-typography-container .picker-wrapper{display:block;position:relative;margin:0;padding:0;width:100%;min-width:100%;clear:none;height:57px;-webkit-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.redux-main .redux-typography-container label{position:relative;font-size:12px !important;text-align:left;color:#999;width:100%;cursor:default}.redux-main .redux-typography-container .typography-preview{display:none;width:100%;border:1px dotted #d3d3d3;max-width:850px;padding:10px;font-size:10pt;height:auto;margin:5px 0 10px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.redux-main .redux-typography-container .typography-color{border:0 none;margin:0}.redux-main .redux-typography-container ::-webkit-input-placeholder{line-height:19px}@media screen and (max-width: 540px){.redux-main .redux-main .redux-typography-container{max-width:230px;margin:0 auto}.redux-main .redux-main .redux-typography-container .select_wrapper{max-width:210px;min-width:210px;width:210px;margin-left:0 !important;margin-right:0 !important}.redux-main .redux-main .redux-typography-container .input_wrapper{max-width:101px;min-width:101px;width:101px;margin-left:0 !important;margin-right:5px !important}.redux-main .redux-main .redux-typography-container .input_wrapper input.mini{width:73%}.redux-main .redux-main .redux-typography-container .input-append .add-on{width:30%;padding:5px !important}.redux-main .redux-main .redux-main .wp-picker-container .wp-picker-input-wrap{margin-top:7px}}@media screen and (max-width: 360px){.redux-main .redux-typography-container .iris-picker .iris-square{margin-right:3%}}.wp-customizer .redux-typography-container .input_wrapper{width:40%;max-width:40%;min-width:20%}.wp-customizer .redux-typography-container .input_wrapper input.mini{width:70%}.wp-customizer .redux-typography-container .select_wrapper{width:100% !important}.wp-customizer .redux-container{overflow:visible}.wp-customizer .redux-container .redux-main input{margin:0 !important}.wp-customizer .redux-container .redux-main input.spinner-input{margin-right:30px !important;margin-left:30px !important;margin-top:0px !important}.wp-customizer .redux-container .redux-main .redux-container-editor .wp-editor-area{color:#000000}.wp-customizer .redux-section.open .redux-group-tab{display:block !important}.wp-customizer .redux-section p.customize-section-description{margin-top:22px;word-break:break-word}.wp-customizer .redux-section p.customize-section-description.legacy{margin-top:7px}.wp-customizer .control-section-themes .accordion-section-title{margin:0}.wp-customizer #customize-controls .description{display:block}.wp-customizer #customize-controls .customize-info{margin-bottom:0}.wp-customizer #customize-controls .redux-section .accordion-section-content{background:#fcfcfc}.wp-customizer .redux-section .accordion-section-title i,.wp-customizer .redux-field .accordion-field-title i,.wp-customizer .redux-panel .accordion-section-title i{margin-right:5px}.wp-customizer .accordion-section.redux-main{background:inherit;margin-left:inherit;border-left:inherit;-moz-box-shadow:inherit;-webkit-box-shadow:inherit;padding:inherit;box-shadow:inherit}.wp-customizer .redux_field_th{padding:13px 0px 0px 0px}.wp-customizer .redux-main .redux-field-container{padding:10px 0}.wp-customizer .redux-main .select_wrapper{float:none;width:100%;display:inline-block}.wp-customizer .redux-main .select2-container{margin-right:0 !important;margin-bottom:5px !important;width:100% !important}.wp-customizer .redux-main .select_wrapper:nth-child(odd){margin-right:0}.wp-customizer .redux-main .redux-option-image{max-width:42% !important;margin-right:3%}.wp-customizer .redux-main .customize-control{border-bottom:1px solid #ddd;padding-bottom:4px}.wp-customizer .redux-main .customize-control:last-child{border-bottom:0;padding-bottom:0}.wp-customizer .redux-main .upload{width:100% !important}.wp-customizer .redux-main h3{margin-top:inherit}.wp-customizer .redux-main .redux-container-raw{margin-top:22px;word-break:break-word;padding:0 !important}.wp-customizer .redux-main .redux-container-password input{width:100%}.wp-customizer .select2-drop,.wp-customizer .select2-container{z-index:999999}.wp-customizer .customize-control-redux-raw{list-style:none}.redux_field_th{padding-bottom:0px !important}.redux-group-tab{margin-bottom:0 !important}.block-editor-page .postbox.closed .el:before{content:"" !important}.block-editor-page .postbox .el:before{content:""}.postbox .redux-container{-webkit-filter:none;filter:none;border:none;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.postbox .redux-container .redux-group-menu .active a{background:#FFF}.postbox .redux-container .redux-section-title{padding-left:0 !important;margin-bottom:15px !important}.postbox .redux-container .redux-section-desc{margin-bottom:20px}.postbox .redux-container .redux_main{border-left:1px solid #D8D8D8;moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.postbox .redux-container .redux_main input[type=text]{width:95%}.postbox .redux-container.redux-no-sections{margin:0;background:none}.postbox .redux-container.redux-no-sections .redux-main{background:none;margin-left:inherit;padding:inherit;border-left:none !important;min-height:0 !important}.postbox .redux-container.redux-no-sections .redux-main tr:last-child{border-bottom:none}.postbox .redux-container.redux-no-sections .redux-main tr:last-child th,.postbox .redux-container.redux-no-sections .redux-main tr:last-child td{padding-bottom:0}.postbox .redux-container.redux-no-sections .redux-main tr td{padding-top:10px !important;width:100%}.postbox .redux-container.redux-no-sections .redux-main .form-table:first-child tr:first-child td{padding-top:0 !important}.postbox .redux-container.redux-no-sections .redux-main .redux-field{margin-bottom:10px !important}.postbox .redux-container.redux-no-sections .redux-main .redux-field:last-child{margin-bottom:0 !important}.postbox .redux-container.redux-has-sections .redux-main{background:#fff}.postbox .redux-container.redux-has-sections .redux-main span.description{padding-bottom:20px}.postbox .redux-main h3{cursor:text !important;-webkit-user-select:inherit !important;-moz-user-select:inherit !important;-ms-user-select:inherit !important;user-select:inherit !important;padding-left:0 !important}.redux-box-side .redux-main .redux-field-container{padding:0;padding-top:5px}.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:100% !important}.redux-box-side .form-table tr td{padding:15px 0 !important}.redux-box-side .form-table tr:last-child td{padding-bottom:0 !important}.redux-box-side .form-table tr:first-child td{padding-top:5px !important}#poststuff .redux-metabox h3.hndle,.metabox-holder .redux-metabox h3.hndle{cursor:pointer;border-bottom:0}.display-group{display:inherit !important}@media (min-width: 1125px) and (max-width: 1405px){.postbox table.form-table,.postbox .form-table>thead,.postbox .form-table>tbody,.postbox .form-table>tbody>tr>th,.postbox .form-table>tbody>tr>td,.postbox .form-table>tbody>tr{display:block !important;width:100% !important;padding:0px !important}.postbox table.form-table.hide,.postbox .form-table>thead.hide,.postbox .form-table>tbody.hide,.postbox .form-table>tbody>tr>th.hide,.postbox .form-table>tbody>tr>td.hide,.postbox .form-table>tbody>tr.hide{display:none !important}.postbox .form-table>tbody>tr>th,.postbox .form-table>tbody>tr>td{padding:10px !important}.postbox .form-table>tbody>tr>th{width:35%}}.redux-metabox .form-table th,.redux-metabox .form-table td{margin:0;padding:0}.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:96% !important}@media (max-width: 1405px){.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:92% !important}}@media (max-width: 1125px){.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:100% !important}}@media (max-width: 1405px){.redux-main .form-table>tbody>tr>td{padding-top:0 !important;padding-bottom:0 !important}.redux-main .redux-field-container{padding:0 0 20px 0 !important;padding-bottom:10px !important}.postbox .form-table>tbody>tr>th{padding-bottom:0 !important}.redux_field_th{padding-top:0 !important;padding-bottom:10px !important}}.redux-no-sections .redux-group-tab{display:block !important}.admin-color-fresh #poststuff .redux-metabox h3.hndle,.admin-color-fresh .metabox-holder .redux-metabox h3.hndle{background:#222;color:#fff}.admin-color-light #poststuff .redux-metabox h3.hndle,.admin-color-light .metabox-holder .redux-metabox h3.hndle{background:#888;color:#fff}.admin-color-blue #poststuff .redux-metabox h3.hndle,.admin-color-blue .metabox-holder .redux-metabox h3.hndle{background:#096484;color:#fff}.admin-color-coffee #poststuff .redux-metabox h3.hndle,.admin-color-coffee .metabox-holder .redux-metabox h3.hndle{background:#46403c;color:#fff}.admin-color-ectoplasm #poststuff .redux-metabox h3.hndle,.admin-color-ectoplasm .metabox-holder .redux-metabox h3.hndle{background:#413256;color:#fff}.admin-color-midnight #poststuff .redux-metabox h3.hndle,.admin-color-midnight .metabox-holder .redux-metabox h3.hndle{background:#363b3f;color:#fff}.admin-color-ocean #poststuff .redux-metabox h3.hndle,.admin-color-ocean .metabox-holder .redux-metabox h3.hndle{background:#627c83;color:#fff}.admin-color-sunrise #poststuff .redux-metabox h3.hndle,.admin-color-sunrise .metabox-holder .redux-metabox h3.hndle{background:#b43c38;color:#fff}.redux-notices{margin-bottom:0;border:0}.redux-metabox .redux-container{margin-top:0}.redux-metabox .inside{margin:0 !important;padding:0 !important}.redux-metabox .redux-no-sections .redux-main{padding:6px 15px 15px 15px !important}.redux-metabox .redux-no-sections .redux-main .default_br{display:none}.redux-metabox .redux-no-sections .redux-main .redux-field-container{padding:10px 0 20px !important}.redux-metabox .redux-no-sections .redux-main .redux_field_th{padding-top:5px !important}.redux-metabox .redux-no-sections.redux-box-side .redux-main{padding:6px 8px 8px 8px !important}.redux-metabox .redux-no-sections.redux-box-side .redux-main input[type=text]{width:100% !important}.wp-color-result{margin:0 6px 0 0px !important}.redux-container .ui-button-text-only .ui-button-text{padding:0}.wpseotab tr{display:table-row !important}.redux_field_search{position:absolute;width:250px !important;right:20px;padding:4px 7px;top:6px}.redux-has-sections .redux_field_search{right:10px}.redux-main.redux-search .redux-section-field,.redux-main.redux-search .redux-info-field,.redux-main.redux-search .redux-notice-field,.redux-main.redux-search .redux-container-group,.redux-main.redux-search .redux-container-raw,.redux-main.redux-search .redux-section-desc,.redux-main.redux-search .redux-group-tab h3,.redux-main.redux-search .hr,.redux-main.redux-search .redux-field-info,.redux-main.redux-search tr{display:none}.redux-main.redux-search #import_export_default_section_group,.redux-main.redux-search #dev_mode_default_section_group{display:none !important}.redux-main.redux-search .redux-group-tab{margin-bottom:0}.redux-main.redux-search .redux-group-tab .form-table-section-indented{margin-left:0 !important;width:100%}.redux-main.redux-search .redux-group-tab .form-table-section-indented .redux-group-tab .form-table-section tr:first-of-type th:first-of-type{padding:inherit !important}.redux-main.redux-search .redux-group-tab .form-table-section-indented .redux-group-tab h3{margin-top:inherit !important}.redux-metabox .redux-has-sections .redux_field_search{top:8px}.redux-container-import_export #redux-import-link-wrapper,.redux-container-import_export #redux-import-code-wrapper{display:none}.redux-container-import_export #redux-export-code,.redux-container-import_export #redux-export-link-value,.redux-container-import_export #redux-import-upload-file{display:none}.redux-container-import_export #redux-import-action span{color:#b94a48}.redux-container-import_export #redux-import-upload span{font-weight:bold}.redux-container-repeater{padding:15px 20px;margin-bottom:7px;padding-top:0}.redux-container-repeater h4{margin:5px 0px 0px 0px}.redux-container-repeater h4:first-child{margin-top:0px}.redux-container-repeater .description{margin:5px 0 5px 0px}.redux-container-repeater .redux-repeater-accordion{width:100%}.redux-container-repeater .redux-repeater-accordion .ui-state-focus{outline:none}.redux-container-repeater .redux-repeater-accordion-repeater{margin-bottom:10px}.redux-container-repeater .redux-repeater-accordion-repeater>div{border:1px solid #dfdfdf !important;border-radius:0 !important;margin-top:0px !important;padding:10px}.redux-container-repeater .redux-repeater-accordion-repeater h3.ui-accordion-header{border:1px solid #dfdfdf;cursor:move;font-weight:bold;padding:0 10px;height:40px;line-height:40px;background-color:#f1f1f1;background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;border-radius:3px;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center;margin-bottom:0}.redux-container-repeater .redux-repeaters-add{float:right}.redux-container-repeater .redux-repeaters-add:after{clear:both}.redux-container-repeater .redux-repeaters-remove{color:#ef521d !important;float:right}.redux-container-repeater .redux-repeaters-remove:after{clear:both}.redux-container-repeater .redux-repeater-header{font-weight:bold}.redux-container-repeater .redux_repeaters_add_remove{margin-bottom:10px}.redux-container-repeater .redux-field-container{padding:0 0 10px 0}.redux-container-repeater .redux-field-container:last-child{padding-bottom:0}.redux-container-repeater .ui-accordion .ui-accordion-content{padding:1em}.redux-container-repeater .redux-container-sorter{margin-right:0 !important}#poststuff .redux-container-repeater h3{padding:0;cursor:move !important;line-height:40px}#redux-object-browser{overflow:auto;word-wrap:break-word;max-height:600px;max-width:100%}
2
 
3
  /*# sourceMappingURL=redux-fields.min.css.map */
redux-core/assets/css/redux-fields.min.css.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["redux-fields.min.css"],"names":[],"mappings":"AAAA,yCAAyC,eAAe,CAAC,wCAAwC,YAAY,CAAkD,iBAAiB,CAAC,wCAAwC,oBAAoB,CAAC,0zBAA0zB,sBAAsB,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,4DAA4D,aAAa,CAAC,UAAU,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,2DAA2D,iBAAiB,CAAC,kBAAkB,CAAC,6DAA6D,kBAAkB,CAAC,gDAAgD,UAAU,CAAC,iBAAiB,CAAC,0DAA0D,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,81BAA81B,qBAAqB,CAAC,0DAA0D,aAAa,CAAC,yEAAyE,YAAY,CAAC,kBAAkB,CAAC,eAAe,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,gCAAuB,CAAvB,wBAAwB,CAAC,kJAAkJ,UAAU,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,iBAAiB,CAAC,sEAAsE,SAAS,CAAC,UAAU,CAA4B,6BAA6B,CAAC,qBAAqB,CAAC,4FAA4F,aAAa,CAAC,4EAA4E,aAAa,CAAC,oGAAoG,mBAAmB,CAAC,WAAW,CAAC,WAAW,CAAC,YAAY,CAAC,oBAAoB,CAAC,2GAA2G,qBAAqB,CAAC,sGAAsG,UAAU,CAAC,4EAA4E,mBAAmB,CAAC,kFAAkF,kBAAkB,CAAC,iFAAiF,iBAAiB,CAAC,2CAA2C,UAAU,CAAC,aAAa,CAAC,iBAAiB,CAAC,wCAAwC,UAAU,CAAC,aAAa,CAAC,+CAA+C,UAAU,CAAC,UAAU,CAAC,4CAA4C,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,kDAAkD,+BAA+B,CAAC,sBAAsB,CAAC,oDAAoD,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,wCAAwC,cAAc,CAAC,CAAC,gCAAgC,kBAAkB,CAAC,UAAU,CAAC,4CAA4C,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,wDAAwD,YAAY,CAAC,eAAe,CAAC,iBAAiB,CAAC,oGAAoG,oBAAoB,CAAC,iBAAiB,CAAC,kHAAkH,aAAa,CAAC,iBAAiB,CAAC,eAAe,CAAC,cAAc,CAAC,UAAU,CAAC,qCAAqC,+CAA+C,aAAa,CAAC,4BAA4B,CAAC,CAAC,iDAAiD,iBAAiB,CAAC,oBAAoB,CAAC,SAAS,CAAC,QAAQ,CAAC,2DAA2D,gBAAgB,CAAC,eAAe,CAAC,YAAY,CAAC,mBAAY,CAAZ,oBAAY,CAAZ,mBAAY,CAAZ,YAAY,CAAC,sBAAa,CAAb,kBAAa,CAAb,cAAc,CAAC,gFAAgF,iBAAiB,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,gCAAgC,CAAC,uEAAuE,WAAW,CAAC,sFAAsF,iBAAiB,CAAC,2FAA2F,0DAAiD,CAAjD,kDAAkD,CAAC,iEAAiE,YAAY,CAAC,oGAAoG,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,0CAAkC,CAAlC,kCAAkC,CAAC,gCAAgC,CAAC,6EAA6E,qBAAqB,CAAC,mBAAmB,qBAAqB,CAAC,sBAAsB,wBAAwB,CAAC,cAAc,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,8DAA8D,CAAC,sDAAsD,CAAC,kBAAkB,CAAC,aAAa,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,8DAA8D,CAAC,sDAAsD,CAAC,kBAAkB,CAAC,4EAA4E,kBAAkB,CAAC,iBAAiB,CAAC,UAAU,CAAC,sCAAsC,qEAAqE,CAAC,6DAA6D,CAAC,0BAA0B,0GAA0G,CAAC,kGAAkG,CAAC,kEAAkE,eAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,uDAAuD,CAAC,+CAA+C,CAAC,oBAAoB,WAAW,CAAC,gBAAgB,CAAC,UAAU,CAAC,oBAAoB,CAAC,aAAa,CAAC,UAAU,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,2BAA2B,oBAAoB,CAAC,mBAAmB,CAAC,eAAe,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,oBAAoB,CAAC,sBAAsB,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,UAAU,CAAC,SAAS,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,eAAe,CAAC,sDAAsD,oBAAoB,CAAC,mBAAmB,CAAC,eAAe,CAAC,+EAA+E,qBAAqB,CAAC,UAAU,CAAC,oDAAoD,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,0DAA0D,+BAA+B,CAAC,sBAAsB,CAAC,4DAA4D,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,4CAA4C,cAAc,CAAC,CAAC,sCAAsC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,+DAA+D,cAAc,CAAC,iCAAiC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,6CAA8F,iBAAiB,CAAC,sDAAmG,eAAe,CAAC,oBAAoB,CAAC,iDAAiD,kBAAkB,CAAC,oBAAoB,CAAC,cAAc,CAAC,eAAe,CAAC,kDAAkD,CAAC,aAAa,CAAC,wBAAwB,CAA2B,iBAAiB,CAAC,eAAe,CAAC,yFAAyF,CAAC,+DAA+D,CAAyH,uDAAuD,CAAC,qDAAqD,aAAa,CAAC,kBAAkB,CAAC,UAAU,CAAC,kDAAkD,mBAAmB,CAAC,yDAAyD,aAAa,CAAC,qBAAqB,CAAC,wBAAwB,CAAC,UAAU,CAAC,WAAW,CAAC,+GAA+G,oBAAoB,CAAC,gEAAgE,eAAe,CAAC,sEAAsE,YAAY,CAAC,8DAA8D,UAAU,CAAC,uDAAuD,sBAAsB,CAAC,oBAAoB,CAAC,eAAe,CAAC,cAAc,CAAC,2DAA2D,wBAAwB,CAAC,gPAAgP,gBAAgB,CAAC,kBAAkB,CAAC,oIAAoI,oBAAoB,CAAC,kBAAkB,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,8HAA8H,0BAA0B,CAAC,qBAAqB,UAAU,CAAC,mCAAmC,oBAAoB,CAAC,iBAAiB,CAAC,qCAAqC,aAAa,CAAC,mCAAmC,oBAAoB,CAAC,kBAAkB,CAAC,+BAA+B,qBAAqB,CAAC,iBAAiB,CAAC,UAAU,CAAC,iCAAiC,aAAa,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,kCAAkC,aAAa,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,kCAAkC,aAAa,CAAC,iCAAiC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,mCAAmC,aAAa,CAAC,6BAA6B,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,+BAA+B,aAAa,CAAC,oBAAoB,eAAe,CAAC,qBAAqB,CAAC,QAAQ,CAAC,6BAA6B,CAAC,8CAA8C,CAAC,sCAAsC,CAAC,gBAAgB,CAAC,0IAA0I,0BAA0B,CAAC,sBAAsB,cAAc,CAAC,WAAW,CAAC,qCAAqC,oBAAoB,CAAC,iBAAiB,CAAC,uCAAuC,aAAa,CAAC,qCAAqC,oBAAoB,CAAC,kBAAkB,CAAC,+BAA+B,6BAA6B,CAAC,kCAAkC,6BAA6B,CAAC,kCAAkC,6BAA6B,CAAC,mCAAmC,6BAA6B,CAAC,wDAAwD,SAAS,CAAC,sHAAsH,aAAa,CAAC,gBAAgB,CAAC,sHAAsH,UAAU,CAAC,2EAA2E,eAAe,CAAC,uCAAuC,oBAAoB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,8CAA8C,aAAa,CAAC,iBAAiB,CAAC,eAAe,CAAC,cAAc,CAAC,kBAAkB,CAAC,UAAU,CAAC,gDAAgD,QAAQ,CAAC,SAAS,CAAC,kDAAkD,UAAU,CAAC,YAAY,CAAC,+DAA+D,UAAU,CAAC,eAAe,CAAC,eAAe,CAAC,qEAAqE,eAAe,CAAC,UAAU,CAAC,oBAAoB,CAAC,qCAAqC,kCAAkC,UAAU,CAAC,qDAAqD,QAAQ,CAAC,WAAW,CAAC,CAAC,mDAAmD,WAAW,CAAC,oEAAoE,WAAW,CAAC,iBAAiB,CAAC,qEAAqE,qBAAqB,CAAC,gCAAgC,SAAS,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,0CAA0C,gBAAgB,CAAC,2DAA2D,kBAAkB,CAAC,kBAAkB,CAAC,+BAA+B,CAAC,eAAe,CAAC,cAAc,CAAC,UAAU,CAAC,wDAAwD,oBAAoB,CAAC,SAAS,CAAC,iBAAiB,CAAC,8DAA8D,oBAAoB,CAAC,WAAW,CAAC,UAAU,CAAC,qFAAqF,UAAU,CAAC,+BAA+B,4BAA4B,CAAC,mCAAmC,CAAC,eAAe,CAAC,qBAAqB,CAAC,aAAa,CAAC,mDAAmD,SAAS,CAAC,eAAe,CAAC,SAAS,CAAC,mBAAW,CAAX,oBAAW,CAAX,mBAAW,CAAX,YAAY,CAAC,0JAA0J,YAAY,CAAC,wDAAwD,YAAY,CAAC,kBAAW,CAAX,mBAAW,CAAX,mBAAW,CAAX,WAAW,CAAC,WAAW,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,wCAAwC,CAAgH,gCAAgC,CAAC,aAAa,CAAC,8DAA8D,kBAAW,CAAX,mBAAW,CAAX,mBAAW,CAAX,WAAW,CAAC,gBAAgB,CAAC,cAAc,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,sCAAsC,CAAC,+CAA+C,gCAAgC,CAAC,0DAA0D,iBAAiB,CAAC,yCAAyC,SAAS,CAAC,yBAAyB,CAAC,kEAAkE,sBAAsB,CAAC,eAAe,eAAe,CAAC,8DAA8D,YAAY,CAAC,oEAAoE,eAAe,CAAC,8CAA8C,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,uBAAuB,qBAAqB,CAAC,6KAA6K,eAAe,CAAC,8BAA8B,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,qBAAqB,gBAAgB,CAAC,eAAe,CAAC,WAAW,CAAC,eAAe,CAAC,wBAAwB,CAAC,kBAAkB,CAA2E,iBAAiB,CAAC,gDAAgD,gBAAgB,CAAC,iBAAiB,CAAC,WAAW,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,8IAA8I,sBAAsB,CAAC,iBAAiB,CAAC,4CAA4C,iBAAiB,CAAC,gBAAgB,CAAC,gDAAgD,iBAAiB,CAAC,iBAAiB,CAAC,gDAAgD,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,qCAAqC,8BAA8B,+BAA+B,CAAC,CAAC,qCAAqC,wBAAwB,iBAAiB,CAAC,oJAAoJ,wBAAwB,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,gDAAgD,cAAc,CAAC,SAAS,CAAC,CAAC,2DAA2D,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,iBAAiB,CAAC,aAAa,CAAC,2LAA2L,oBAAoB,CAAC,+DAA+D,SAAS,CAAC,cAAc,CAAC,cAAc,CAAC,8DAA8D,kBAAkB,CAAC,UAAU,CAAC,6CAA6C,eAAe,CAAC,uEAAuE,UAAU,CAAC,sDAAsD,mCAAmC,CAAC,4BAA4B,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,WAAW,CAAC,yDAAyD,wBAAwB,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,WAAW,CAAC,2BAA2B,CAAC,wBAAwB,CAAqL,4FAA4F,CAAC,+DAA+D,CAAC,6DAA6D,CAAC,eAAe,CAAkD,iBAAiB,CAAoC,qCAAqC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,oEAAoE,YAAY,CAAC,WAAW,CAAC,eAAe,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,kBAAkB,CAA2E,iBAAiB,CAAC,0CAA0C,WAAW,CAAC,gBAAgB,CAAC,aAAa,CAAC,kBAAkB,CAAC,6CAA6C,wBAAwB,CAAC,WAAW,CAAC,cAAc,CAAC,6CAA6C,gBAAgB,CAAC,iDAAiD,kBAAkB,CAAC,8BAA8B,qBAAqB,CAAC,2EAA2E,YAAY,CAAC,wBAAwB,kBAAkB,CAAC,2BAA2B,kBAAkB,CAAC,wBAAwB,CAAC,eAAe,CAAC,mBAAmB,CAAC,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,kCAAkC,WAAW,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,8BAA8B,wBAAwB,CAAC,WAAW,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,cAAc,CAAC,WAAW,CAAC,2BAA2B,CAAC,wBAAwB,CAAqL,4FAA4F,CAAC,+DAA+D,CAAC,6DAA6D,CAAC,eAAe,CAAkD,iBAAiB,CAAoC,qCAAqC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,iCAAiC,eAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,yBAAyB,CAAC,oBAAoB,CAAC,0CAA0C,WAAW,CAAC,0CAA0C,SAAS,CAAC,gBAAgB,CAAC,0EAA0E,WAAW,CAAC,eAAe,CAAC,gCAAgC,iBAAiB,CAAC,uCAAuC,4BAA4B,CAAC,yBAAyB,CAAC,UAAU,CAAC,gCAAgC,iBAAiB,CAAC,8CAA8C,UAAU,CAAC,oDAAoD,4BAA4B,CAAC,cAAc,CAAC,oDAAoD,WAAW,CAAC,gBAAgB,CAAC,yCAAyC,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,CAAC,4BAA4B,CAAC,+DAA+D,eAAe,CAAC,iBAAiB,CAAC,cAAc,CAAC,mDAAmD,UAAU,CAAC,sBAAsB,CAAC,yEAAyE,UAAU,CAAC,wCAAwC,4BAA4B,CAAC,6BAA6B,2BAA2B,CAAC,gDAAgD,WAAW,CAAC,WAAW,CAAC,kBAAkB,CAAC,yCAAyC,WAAW,CAAC,aAAa,CAAC,kDAAkD,SAAS,CAAC,oCAAoC,eAAe,CAAC,6DAA6D,aAAa,CAAC,8DAA8D,cAAc,CAAC,wCAAwC,eAAe,CAAC,iBAAiB,CAAC,8CAA8C,cAAc,CAAC,8CAA8C,YAAY,CAAC,uEAAuE,cAAc,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,6BAA6B,CAA4B,qBAAqB,CAAC,iFAAiF,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC,wBAAwB,CAAyB,qBAAqB,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,wJAAwJ,aAAa,CAAC,UAAU,CAAC,mCAAmC,cAAc,CAAC,6BAA6B,CAAC,kCAAkC,CAAC,qCAAqC,CAAC,4CAA4C,UAAU,CAAC,oCAAoC,aAAa,CAAC,6BAA6B,CAAC,kCAAkC,CAAC,qCAAqC,CAAC,6CAA6C,UAAU,CAAC,yEAAyE,qBAAqB,CAAC,UAAU,CAAC,8CAA8C,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,oDAAoD,+BAA+B,CAAC,qBAAqB,CAAC,sDAAsD,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,yCAAyC,cAAc,CAAC,CAAC,uCAAuC,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,eAAe,CAAC,sDAAsD,4BAA4B,CAAC,SAAS,CAAC,qBAAqB,CAAC,sBAAsB,CAAC,0BAA0B,CAAC,mCAAmC,CAAC,yBAAyB,CAAC,wBAAwB,CAAoE,0BAA0B,CAAC,qCAAqC,eAAe,CAAC,cAAc,CAAC,6CAA6C,iBAAiB,CAAC,SAAS,CAAC,uDAAuD,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,gBAAgB,CAAC,eAAe,CAAC,cAAc,CAA6F,mFAAmF,CAAC,iDAAyC,CAAzC,yCAAyC,CAAC,qBAAqB,CAAC,WAAW,CAAC,uBAAuB,CAAsB,eAAe,CAAC,2FAAuL,mFAAmF,CAAC,iDAAyC,CAAzC,yCAAyC,CAAC,wBAAwB,CAAC,yGAA0K,yBAAyB,CAAC,yGAA0K,yBAAyB,CAAC,qDAAqD,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,gBAAgB,CAAC,kFAAkF,oBAAoB,CAAC,6BAAqB,CAArB,qBAAqB,CAAC,0BAA0B,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,WAAW,CAAC,iBAAiB,iBAAiB,CAAC,8HAA8H,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,UAAU,CAAC,qCAAqC,CAAC,sBAAsB,CAAC,gJAAgJ,wBAAwB,CAAC,qBAAqB,2BAA2B,CAAC,8BAA8B,CAAC,qBAAqB,0BAA0B,CAAC,6BAA6B,CAAC,uBAAuB,UAAU,CAAC,qBAAqB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,6FAAoF,CAApF,qFAAqF,CAAC,gCAAgC,qBAAqB,CAAC,4BAA4B,aAAa,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,eAAe,CAAC,UAAU,CAAC,6BAA6B,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,4BAA4B,UAAU,CAAC,qCAAqC,aAAa,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,oDAAoD,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,wCAAwC,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC,iEAAiE,eAAe,CAAC,UAAU,CAAC,kDAAkD,UAAU,CAAC,yDAAyD,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,gIAAgI,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,WAAW,CAAC,yBAAyB,CAAC,YAAY,CAAC,eAAe,CAAC,yBAAyB,CAAC,wDAAwD,aAAa,CAAC,iBAAiB,CAAC,UAAU,CAAC,UAAU,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,0BAA0B,CAAC,0BAA0B,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uEAAuE,4BAA4B,CAAC,wEAAwE,4BAA4B,CAAC,6FAA6F,UAAU,CAAC,0EAA0E,yBAAyB,CAAC,aAAa,CAAC,UAAU,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,6DAA6D,UAAU,CAAC,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAkD,iBAAiB,CAAC,uDAAuD,aAAa,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,uIAAuI,eAAe,CAAC,iEAAiE,aAAa,CAAC,kEAAkE,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,SAAS,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,oBAAoB,CAAkD,iBAAiB,CAAC,wDAAwD,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,8CAA8C,iBAAiB,CAAC,yBAAyB,CAAC,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,4DAA4D,YAAY,CAAC,UAAU,CAAC,yBAAyB,CAAC,eAAe,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,iBAAiB,CAAC,6BAA6B,CAA4B,qBAAqB,CAAC,eAAe,CAAC,0DAA0D,aAAa,CAAC,QAAQ,CAAC,oEAAoE,gBAAgB,CAAC,qCAAqC,oDAAoD,eAAe,CAAC,aAAa,CAAC,oEAAoE,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,mEAAmE,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC,wBAAwB,CAAC,2BAA2B,CAAC,8EAA8E,SAAS,CAAC,0EAA0E,SAAS,CAAC,sBAAsB,CAAC,+EAA+E,cAAc,CAAC,CAAC,qCAAqC,kEAAkE,eAAe,CAAC,CAAC,0DAA0D,SAAS,CAAC,aAAa,CAAC,aAAa,CAAC,qEAAqE,SAAS,CAAC,2DAA2D,qBAAqB,CAAC,gCAAgC,gBAAgB,CAAC,kDAAkD,mBAAmB,CAAC,gEAAgE,4BAA4B,CAAC,2BAA2B,CAAC,yBAAyB,CAAC,oFAAoF,aAAa,CAAC,oDAAoD,wBAAwB,CAAC,8DAA8D,eAAe,CAAC,qBAAqB,CAAC,qEAAqE,cAAc,CAAC,gEAAgE,QAAQ,CAAC,gDAAgD,aAAa,CAAC,mDAAmD,eAAe,CAAC,6EAA6E,kBAAkB,CAAC,qKAAqK,gBAAgB,CAAC,6CAA6C,kBAAkB,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,0BAA0B,CAAC,eAAe,CAAC,kBAAkB,CAAC,+BAA+B,wBAAwB,CAAC,kDAAkD,cAAc,CAAC,2CAA2C,UAAU,CAAC,UAAU,CAAC,oBAAoB,CAAC,8CAA8C,yBAAyB,CAAC,4BAA4B,CAAC,qBAAqB,CAAC,0DAA0D,cAAc,CAAC,+CAA+C,wBAAwB,CAAC,eAAe,CAAC,8CAA8C,4BAA4B,CAAC,kBAAkB,CAAC,yDAAyD,eAAe,CAAC,gBAAgB,CAAC,mCAAmC,qBAAqB,CAAC,8BAA8B,kBAAkB,CAAC,gDAAgD,eAAe,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,2DAA2D,UAAU,CAAC,+DAA+D,cAAc,CAAC,4CAA4C,eAAe,CAAC,oBAAoB,iBAAiB,CAAC,sBAAsB,CAAC,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,wCAAwC,UAAU,CAAC,kaAAka,YAAY,CAAC,uHAAuH,uBAAuB,CAAC,0CAA0C,eAAe,CAAC,uEAAuE,wBAAwB,CAAC,UAAU,CAAC,8IAA8I,0BAA0B,CAAC,2FAA2F,6BAA6B,CAAC,uDAAuD,OAAO,CAAC,gBAAgB,6BAA6B,CAAC,iBAAiB,0BAA0B,CAAC,8CAA8C,sBAAsB,CAAC,uCAAuC,WAAW,CAAC,0BAA0B,mBAAW,CAAX,WAAW,CAAC,WAAW,CAA8C,eAAe,CAAsB,uBAAuB,CAAC,eAAe,CAAC,sDAAsD,eAAe,CAAC,+CAA+C,yBAAyB,CAAC,6BAA6B,CAAC,8CAA8C,kBAAkB,CAAC,sCAAsC,6BAA6B,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,eAAe,CAAC,uDAAuD,SAAS,CAAC,4CAA4C,QAAQ,CAAC,eAAe,CAAC,wDAAwD,eAAe,CAAC,mBAAmB,CAAC,eAAe,CAAC,2BAA2B,CAAC,uBAAuB,CAAC,sEAAsE,kBAAkB,CAAC,kJAAkJ,gBAAgB,CAAC,8DAA8D,2BAA2B,CAAC,UAAU,CAAC,kGAAkG,wBAAwB,CAAC,qEAAqE,6BAA6B,CAAC,gFAAgF,0BAA0B,CAAC,yDAAyD,eAAe,CAAC,0EAA0E,mBAAmB,CAAC,wBAAwB,sBAAsB,CAAC,sCAAsC,CAAC,mCAAmC,CAAC,kCAA8B,CAA9B,8BAA8B,CAAC,yBAAyB,CAAC,mDAAmD,SAAS,CAAC,eAAe,CAAC,gIAAgI,qBAAqB,CAAC,kCAAkC,yBAAyB,CAAC,6CAA6C,2BAA2B,CAAC,8CAA8C,0BAA0B,CAAC,2EAA2E,cAAc,CAAC,eAAe,CAAC,eAAe,0BAA0B,CAAC,mDAAmD,gLAAgL,wBAAwB,CAAC,qBAAqB,CAAC,sBAAsB,CAAC,8MAA8M,uBAAuB,CAAC,kEAAkE,uBAAuB,CAAC,iCAAiC,SAAS,CAAC,CAAC,4DAA4D,QAAQ,CAAC,SAAS,CAAC,gIAAgI,oBAAoB,CAAC,2BAA2B,gIAAgI,oBAAoB,CAAC,CAAC,2BAA2B,gIAAgI,qBAAqB,CAAC,CAAC,2BAA2B,oCAAoC,wBAAwB,CAAC,2BAA2B,CAAC,mCAAmC,6BAA6B,CAAC,8BAA8B,CAAC,iCAAiC,2BAA2B,CAAC,gBAAgB,wBAAwB,CAAC,8BAA8B,CAAC,CAAC,oCAAoC,wBAAwB,CAAC,iHAAiH,eAAe,CAAC,UAAU,CAAC,iHAAiH,eAAe,CAAC,UAAU,CAAC,+GAA+G,kBAAkB,CAAC,UAAU,CAAC,mHAAmH,kBAAkB,CAAC,UAAU,CAAC,yHAAyH,kBAAkB,CAAC,UAAU,CAAC,uHAAuH,kBAAkB,CAAC,UAAU,CAAC,iHAAiH,kBAAkB,CAAC,UAAU,CAAC,qHAAqH,kBAAkB,CAAC,UAAU,CAAC,eAAe,eAAe,CAAC,QAAQ,CAAC,gCAAgC,YAAY,CAAC,uBAAuB,mBAAmB,CAAC,oBAAoB,CAAC,8CAA8C,qCAAqC,CAAC,0DAA0D,YAAY,CAAC,qEAAqE,8BAA8B,CAAC,8DAA8D,0BAA0B,CAAC,6DAA6D,kCAAkC,CAAC,8EAA8E,qBAAqB,CAAC,iBAAiB,6BAA6B,CAAC,sDAAsD,SAAS,CAAC,aAAa,4BAA4B,CAAC,oHAAoH,YAAY,CAAC,mKAAmK,YAAY,CAAC,yDAAyD,aAAa,CAAC,yDAAyD,gBAAgB,CAAC,sBAAsB,aAAa,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,cAAc,CAAC,0BAA0B,iBAAiB,CAAC,iBAAiB,CAAC,aAAa,CAAC,6BAA6B,sBAAsB,CAAC,yCAAyC,cAAc,CAAC,uCAAuC,oBAAoB,CAAC,oDAAoD,UAAU,CAAC,oEAAoE,YAAY,CAAC,6DAA6D,kBAAkB,CAAC,iEAAiE,mCAAmC,CAAC,0BAA0B,CAAC,yBAAyB,CAAC,YAAY,CAAC,oFAAoF,wBAAwB,CAAC,WAAW,CAAC,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,gBAAgB,CAAC,wBAAwB,CAAqL,4FAA4F,CAAC,+DAA+D,CAAC,6DAA6D,CAAC,eAAe,CAAkD,iBAAiB,CAAoC,qCAAqC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,eAAe,CAAC,+CAA+C,WAAW,CAAC,qDAAqD,UAAU,CAAC,kDAAkD,wBAAwB,CAAC,WAAW,CAAC,wDAAwD,UAAU,CAAC,iDAAiD,gBAAgB,CAAC,sDAAsD,kBAAkB,CAAC,iDAAiD,kBAAkB,CAAC,4DAA4D,gBAAgB,CAAC,8DAA8D,WAAW,CAAC,kDAAkD,yBAAyB,CAAC,wCAAwC,SAAS,CAAC,sBAAsB,CAAC,gBAAgB","file":"redux-fields.min.css","sourcesContent":[".redux-container-ace_editor .ace-wrapper{position:static}.redux-container-ace_editor .ace_editor{height:200px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.redux-container-ace_editor .ace_gutter{z-index:1 !important}.redux-main .redux-container-background .redux-background-position,.redux-main .redux-container-background .redux-background-position select,.redux-main .redux-container-background .redux-background-attachment,.redux-main .redux-container-background .redux-background-attachment select,.redux-main .redux-container-background .redux-background-clip,.redux-main .redux-container-background .redux-background-clip select,.redux-main .redux-container-background .redux-background-origin,.redux-main .redux-container-background .redux-background-origin select,.redux-main .redux-container-background .redux-background-size,.redux-main .redux-container-background .redux-background-size select,.redux-main .redux-container-background .redux-background-repeat,.redux-main .redux-container-background .redux-background-repeat select{width:200px !important;margin-right:10px;margin-bottom:7px}.redux-main .redux-container-background .background-preview{display:block;width:100%;margin:5px 0 10px;border:1px dotted #d3d3d3}.redux-main .redux-container-background .select2-container{margin-right:10px;margin-bottom:10px}.redux-main .redux-container-background .wp-picker-container{margin-bottom:10px}.redux-main .redux-container-background .upload{width:100%;margin-bottom:8px}.redux-main .redux-container-select li.ui-state-highlight{height:20px;margin-top:2px;margin-left:5px;width:64px;margin-bottom:0}.wp-customizer .redux-container-background .redux-background-position,.wp-customizer .redux-container-background .redux-background-position select,.wp-customizer .redux-container-background .redux-background-attachment,.wp-customizer .redux-container-background .redux-background-attachment select,.wp-customizer .redux-container-background .redux-background-clip,.wp-customizer .redux-container-background .redux-background-clip select,.wp-customizer .redux-container-background .redux-background-origin,.wp-customizer .redux-container-background .redux-background-origin select,.wp-customizer .redux-container-background .redux-background-size,.wp-customizer .redux-container-background .redux-background-size select,.wp-customizer .redux-container-background .redux-background-repeat,.wp-customizer .redux-container-background .redux-background-repeat select{width:100% !important}.redux-main .redux-container-box_shadow .box-shadow-inset{margin:0 auto}.redux-main .redux-container-box_shadow .box-shadow-inset #shadow-result{padding:20px;margin-bottom:20px;margin-top:20px;min-height:180px;border:0px solid #ddd;background:#f1f1f1;transition:all 0.2s ease}.redux-main .redux-container-box_shadow .box-shadow-inset .row-content:after,.redux-main .redux-container-box_shadow .box-shadow-inset .row:after{clear:both;content:\" \";display:block;height:0;visibility:hidden}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2{width:50%;float:left;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2.disabled label strong{color:#cccccc}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 label{color:#999999}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled{pointer-events:none;opacity:0.4;z-index:200;background:0;padding:0 !important}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled button{background-color:#888}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled a{z-index:-1}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 ul li{padding-bottom:10px}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2:first-child{padding-right:20px}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2:last-child{padding-left:20px}.redux-container-border .select2-container{float:left;display:block;margin-right:10px}.redux-container-border .select_wrapper{float:left;width:inherit}.redux-container-border .select_wrapper select{width:80px;float:left}.redux-container-border .field-border-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-container-border .field-border-input input{display:inline-block !important;width:100px !important}.redux-container-border .field-border-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-container-border .select_wrapper{margin-top:6px}}.redux-container-checkbox label{vertical-align:top;width:100%}.redux-container-checkbox label .field-desc{margin-top:0;float:left;width:93%;clear:none}.redux-container-color_gradient .redux-gradient-preview{height:150px;margin-top:10px;border-radius:4px}.redux-container-color_gradient .colorGradient,.redux-container-color_gradient .redux-gradient-type{display:inline-block;margin-right:20px}.redux-container-color_gradient .colorGradient strong,.redux-container-color_gradient .redux-gradient-type strong{display:table;margin-bottom:5px;margin-left:3px;font-size:12px;color:#999}@media screen and (max-width: 660px){.redux-container-color_gradient .colorGradient{display:block;text-align:center !important}}.redux-main .redux-container-color_palette label{position:relative;display:inline-block;padding:0;margin:0}.redux-main .redux-container-color_palette .colors-wrapper{max-height:300px;overflow-y:auto;padding:10px;display:flex;flex-wrap:wrap}.redux-main .redux-container-color_palette .colors-wrapper .color-palette-color{color:transparent;display:block;width:100%;height:100%;overflow:hidden;border:1px solid rgba(0,0,0,0.2)}.redux-main .redux-container-color_palette .colors-wrapper.round label{padding:3px}.redux-main .redux-container-color_palette .colors-wrapper.round .color-palette-color{border-radius:50%}.redux-main .redux-container-color_palette .colors-wrapper.box-shadow .color-palette-color{box-shadow:inset 3px 3px 13px 2px rgba(0,0,0,0.22)}.redux-main .redux-container-color_palette .colors-wrapper input{display:none}.redux-main .redux-container-color_palette .colors-wrapper input:checked+label .color-palette-color{border:0;width:130%;height:130%;position:relative;left:-15%;top:-15%;z-index:99;box-shadow:1px 1px 6px 1px #333333;border:1px solid rgba(0,0,0,0.3)}.redux-main .redux-container-color_palette .colors-wrapper.with-margin label{margin:3px !important}#ui-datepicker-div{z-index:15 !important}.ui-datepicker-header{background-color:#00abef}.sp-container{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);vertical-align:top}.sp-replacer{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);vertical-align:top}.sp-replacer:focus,.sp-replacer:hover,.sp-replacer.focus,.sp-replacer.hover{background:#fafafa;border-color:#999;color:#222}.sp-replacer:focus,.sp-replacer.focus{-webkit-box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8);box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8)}.sp-replacer.active:focus{-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5),0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5),0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8)}.sp-replacer.active,.sp-replacer.active:hover,.sp-replacer:active{background:#eee;border-color:#999;color:#333;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5)}.redux-main .divide{height:20px;line-height:20px;float:none;border-color:#e7e7e7;display:block;width:100%;height:35px !important;line-height:35px !important;position:relative;margin:15px 0 10px 0}.redux-main .divide .inner{width:42% !important;left:40% !important;margin-left:-6%;background-color:#fcfcfc;border-color:#e7e7e7;position:absolute;height:1px;top:50%;width:100%;margin-top:-1px;border-top-width:1px;border-top-style:solid}.redux-main .divide .inner span{background-color:#fcfcfc;border-color:#e7e7e7;height:5px;width:5px;border-width:2px;border-style:solid;display:block;position:absolute;left:50%;margin-left:-5px;margin-top:-5px}.wp-customizer .redux-container-divide .divide .inner{width:82% !important;left:18% !important;margin-left:-8%}.redux-dimensions-container select,.redux-dimensions-container .select_wrapper{width:80px !important;float:left}.redux-dimensions-container .field-dimensions-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-dimensions-container .field-dimensions-input input{display:inline-block !important;width:100px !important}.redux-dimensions-container .field-dimensions-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-dimensions-container .select_wrapper{margin-top:6px}}.redux-container-editor .mceLayout td{border-width:1px;margin:0;padding:1px}.redux-container-editor input,.redux-container-editor textarea{margin:inherit}.redux-container-editor textarea{border-style:none;border:0;border-width:0}.redux-container-editor .wp-editor-container{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.redux-container-editor .wp-editor-container textarea{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;border-style:inherit}.redux-container-editor .quicktags-toolbar input{margin:2px 1px 4px;display:inline-block;min-width:26px;padding:2px 4px;font:12px/18px Arial, Helvetica, sans-serif normal;color:#464646;border:1px solid #c3c3c3;-webkit-border-radius:3px;border-radius:3px;background:#eee;background-image:-webkit-gradient(linear, left bottom, left top, from(#e3e3e3), to(#fff));background-image:-webkit-linear-gradient(bottom, #e3e3e3, #fff);background-image:-moz-linear-gradient(bottom, #e3e3e3, #fff);background-image:-o-linear-gradient(bottom, #e3e3e3, #fff);background-image:linear-gradient(to top, #e3e3e3, #fff)}.redux-container-image_select .redux-table-container{display:table;table-layout:fixed;width:100%}.redux-container-image_select .redux-image-select{margin:0 !important}.redux-container-image_select .redux-image-select .tiles{display:block;background-color:#fff;background-repeat:repeat;width:40px;height:40px}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select .tiles{border-color:#d9d9d9}.redux-container-image_select .redux-image-select li:last-child{margin-bottom:0}.redux-container-image_select .redux-image-select input[type=\"radio\"]{display:none}.redux-container-image_select .redux-image-select-presets img{width:100%}.redux-container-image_select ul.redux-image-select li{margin:0 10px 3px 10px;display:inline-block;padding:2px 2px;padding-left:0}.redux-container-image_select .redux-image-select-selected{background-color:#f9f9f9}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select-selected img,.redux-container-image_select .redux-image-select .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-width:4px;border-style:solid}.redux-container-image_select .redux-image-select-selected .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-color:#7a7a7a}.redux-info-field{min-height:20px;padding:8px 19px;margin:10px 0;border:1px solid;border-radius:4px;border:1px solid;position:relative}.redux-info-field h1,.redux-info-field h2,.redux-info-field h3,.redux-info-field h4,.redux-info-field h5,.redux-info-field h6{border-bottom:0 !important}.redux-info-field h3{color:#777}.redux-info-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-info-field .redux-info-icon i{font-size:2em}.redux-info-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-info-field.redux-normal{background-color:#eee;border-color:#ccc;color:#666}.redux-info-field.redux-normal i{color:#c5c5c5}.redux-info-field.redux-warning{background-color:#fbeba4;border-color:#d7c281;color:#958234}.redux-info-field.redux-warning i{color:#dcca81}.redux-info-field.redux-success{background-color:#c4ee91;border-color:#71af5d;color:#4d7615}.redux-info-field.redux-success i{color:#a0ca6c}.redux-info-field.redux-critical{background-color:#fba1a3;border-color:#b84f5b;color:#981225}.redux-info-field.redux-critical i{color:#dd767d}.redux-info-field.redux-info{background-color:#d3e4f4;border-color:#a9b6c2;color:#5c80a1}.redux-info-field.redux-info i{color:#afc6da}.redux-notice-field{margin:15px 0 0;background-color:#fff;border:0;border-left:4px solid #f3f3f3;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);padding:1px 12px}.redux-notice-field h1,.redux-notice-field h2,.redux-notice-field h3,.redux-notice-field h4,.redux-notice-field h5,.redux-notice-field h6{border-bottom:0 !important}.redux-notice-field p{margin:0.5em 0;padding:2px}.redux-notice-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-notice-field .redux-info-icon i{font-size:2em}.redux-notice-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-notice-field.redux-info{border-left:4px solid #0099d5}.redux-notice-field.redux-success{border-left:4px solid #7ad03a}.redux-notice-field.redux-warning{border-left:4px solid #fbeba4}.redux-notice-field.redux-critical{border-left:4px solid #dd3d36}.redux-main .redux-field-container.redux-container-info{padding:0}.wp-customizer .hasIcon.redux-notice-field .redux-info-desc,.wp-customizer .hasIcon.redux-info-field .redux-info-desc{display:block;margin-left:43px}.wp-customizer .hasIcon.redux-notice-field .redux-info-icon,.wp-customizer .hasIcon.redux-info-field .redux-info-icon{float:left}.wp-customizer .redux-main .customize-control.customize-control-redux-info{border-bottom:0}.redux-container-link_color .linkColor{display:inline-block;padding-right:10px;padding-bottom:7px}.redux-container-link_color .linkColor strong{display:table;margin-bottom:5px;margin-left:3px;font-size:12px;font-weight:normal;color:#999}.redux-container-multi_text ul.redux-multi-text{margin:0;padding:0}.redux-container-multi_text .redux-multi-text-add{clear:both;margin:5px 0}.redux-container-multi_text a.redux-multi-text-remove.deletion{color:#f00;padding:2px 4px;margin-left:5px}.redux-container-multi_text a.redux-multi-text-remove.deletion:hover{background:#ff0;color:#fff;text-decoration:none}@media screen and (max-width: 782px){.redux-container-multi_text input{clear:both}.redux-container-multi_text .redux-multi-text-remove{margin:0;float:right}}.wp-customizer .redux-container-multi_text .button{float:right}.wp-customizer .redux-container-multi_text .redux-multi-text-remove{float:right;margin-bottom:5px}.wp-customizer .redux-container-multi_text ul.redux-multi-text input{width:100% !important}.redux-main .redux-media-slider{width:40%;display:inline-block;margin-left:30px}.redux-main .redux-media-filter-container{padding-top:20px}.redux-main .redux-media-filter-container .container-label{margin-bottom:20px;padding-bottom:1px;border-bottom:1px solid #e7e7e7;font-weight:600;font-size:12px;color:#999}.redux-main .redux-media-filter-container .media-filter{display:inline-block;width:47%;margin-bottom:5px}.redux-main .redux-media-filter-container .media-filter label{display:inline-block;width:130px;color:#999}.redux-main .redux-media-filter-container .media-filter label.disabled .filter-value{color:#ccc}.redux-container-palette label{border:3px solid transparent;border-color:transparent !important;border-radius:0;width:100% !important;display:block}.redux-container-palette label.ui-button.ui-widget{width:95%;background:none;padding:0;display:flex}.redux-container-palette label.ui-button.ui-widget .ui-checkboxradio-icon,.redux-container-palette label.ui-button.ui-widget .ui-checkboxradio-icon-space{display:none}.redux-container-palette label.ui-button.ui-widget span{padding:10px;flex-grow:1;font-size:0;line-height:10px;color:rgba(0,0,0,0);-webkit-transition:all 200ms ease-in-out;-moz-transition:all 200ms ease-in-out;-ms-transition:all 200ms ease-in-out;-o-transition:all 200ms ease-in-out;transition:all 200ms ease-in-out;text-shadow:0}.redux-container-palette label.ui-button.ui-widget span:hover{flex-grow:3;font-weight:bold;min-width:60px;font-size:12px;line-height:10px;color:#333;text-shadow:0 0 8px #fff, 0 0 8px #fff}.redux-container-palette label.ui-state-active{border:3px solid #333 !important}.wp-customizer .redux-main .redux-container-palette label{margin-bottom:3px}.redux-main .form-table-section-indented{width:95%;margin-left:5% !important}.redux-main .form-table-section tr:first-of-type th:first-of-type{padding:0px !important}.redux-main h3{margin-top:10px}.redux-main .form-table-section-indented>tbody>tr:first-child{display:none}.redux-main .form-table-section-indented>tbody>tr:nth-last-child(2){border-bottom:0}.redux-container-select li.ui-state-highlight{height:20px;margin-top:2px;margin-left:5px;width:64px;margin-bottom:0}.select2-search__field{width:none !important}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove,.select2-container--classic .select2-selection--single .select2-selection__clear{font-size:1.2em}.redux-container-select_image{margin-top:2px;margin-left:5px;width:100%;margin-bottom:0}.redux-preview-image{max-height:250px;max-width:250px;padding:5px;margin-top:10px;border:1px solid #e3e3e3;background:#f7f7f7;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.redux-container-slider .redux-slider-container{margin-left:25px;margin-right:25px;width:200px;display:inline-block;vertical-align:middle}.redux-container-slider .redux-slider-input,.redux-container-slider .redux-slider-select-one,.redux-container-slider .redux-slider-select-two{width:100px !important;text-align:center}.redux-container-slider .redux-slider-label{position:absolute;margin-left:-5px}.redux-container-slider .redux-slider-label-one{position:absolute;margin-left:-22px}.redux-container-slider .redux-slider-label-two{position:absolute;margin-top:-21px;margin-left:245px}@media screen and (max-width: 782px){.redux-container-slider input{display:inline-block !important}}@media screen and (max-width: 570px){.redux-container-slider{text-align:center}.redux-container-slider input,.redux-container-slider select,.redux-container-slider .redux-slider-label,.redux-container-slider .select2-container{display:block !important;position:inherit;margin:10px auto}.redux-container-slider .redux-slider-container{margin-top:3px;width:80%}}.wp-customizer .redux-container-slider .redux-slider-label{float:left;position:inherit;width:25%;text-align:center;margin-left:0}.wp-customizer .redux-container-slider .redux-slider-input,.wp-customizer .redux-container-slider .redux-slider-select-one,.wp-customizer .redux-container-slider .redux-slider-select-two{width:25% !important}.wp-customizer .redux-container-slider .redux-slider-container{width:70%;margin-right:0;margin-left:5%}.redux-container-slides .redux-slides-list .select2-container{margin-bottom:10px;width:100%}.redux-container-slides .ui-accordion-header{margin-bottom:0}.redux-container-slides .full-text,.redux-container-slides .large-text{width:100%}.redux-container-slides .redux-slides-accordion-group{border:1px solid #dfdfdf !important;border-radius:3px !important;margin-top:0px !important;margin-bottom:10px;background:#f9f9f9;padding:5px}.redux-container-slides .redux-slides-accordion-group h3{border:1px solid #dfdfdf;cursor:move !important;font-weight:bold;padding:0 10px !important;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-ms-linear-gradient(top, #f9f9f9, #ececec);background-image:-moz-linear-gradient(top, #f9f9f9, #ececec);background-image:-o-linear-gradient(top, #f9f9f9, #ececec);background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-slides #redux-slides-accordion .redux-slides-image{height:250px;padding:5px;margin-top:10px;margin-bottom:10px;border:1px solid #e3e3e3;background:#f7f7f7;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.redux-container-slides .redux-slides-add{float:right;margin-right:10%;display:block;margin-bottom:10px}.redux-container-slides .redux-slides-remove{color:#ef521d !important;float:right;margin-top:5px}.redux-container-slides .redux-slides-header{font-weight:bold}.redux-container-slides .redux_slides_add_remove{margin-bottom:10px}.redux-container-slides input{width:100% !important}.wp-customizer .redux-container-slides .ui-accordion .ui-accordion-content{padding:10px}.redux-container-sorter{margin-right:-20px}.redux-container-sorter ul{background:#f9f9f9;border:1px solid #e3e3e3;min-height:40px;padding:10px 10px 0;width:145px;float:left;margin:0 15px 0 0}.redux-container-sorter ul.filled{opacity:0.7;filter:alpha(opacity=70);background:#efecec}.redux-container-sorter ul li{border:1px solid #dfdfdf;cursor:move;font-weight:bold;margin-bottom:10px !important;padding:0 10px;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-ms-linear-gradient(top, #f9f9f9, #ececec);background-image:-moz-linear-gradient(top, #f9f9f9, #ececec);background-image:-o-linear-gradient(top, #f9f9f9, #ececec);background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-sorter ul li h3{margin:0 0 10px;text-align:center;color:#777;text-transform:capitalize;word-wrap:break-word}.redux-container-sorter ul li.placeholder{height:40px}.wp-customizer .redux-container-sorter ul{width:85%;margin:0 0 5px 0}.redux-container-sortable i.el,.redux-container-sortable i.dashicons-menu{cursor:move;padding-top:5px}.redux-container-sortable label{margin-right:10px}.redux-container-sortable label.bugger{margin-bottom:0px !important;font-size:12px !important;color:#999}.redux-container-sortable input{margin-right:10px}.redux-container-sortable .checkbox-container{width:100%}.redux-container-sortable .checkbox-container label{margin-bottom:2px !important;cursor:inherit}.redux-container-sortable .checkbox-container .drag{float:right;margin-left:10px}.redux-container-sortable ul.checkbox li{padding:5px 10px;border:1px solid #333;background:#fff;margin-bottom:5px !important}.redux-container-sortable ul.checkbox li .dashicons.visibility{padding-top:4px;margin-right:10px;cursor:pointer}.redux-container-sortable ul.checkbox li.invisible{color:#aaa;border:1px dashed #aaa}.redux-container-sortable ul.checkbox li.invisible .dashicons.visibility{color:#aaa}.redux-container-sortable ul.labeled li{line-height:1.4em !important}.redux-container-sortable li{line-height:30px !important}.redux-container-sortable li.ui-state-highlight{height:30px;width:364px;margin-bottom:13px}.redux-container-sortable li.placeholder{height:30px;margin:10px 0}.wp-customizer .redux-sortable input[type=\"text\"]{width:92%}.wp-customizer .redux-sortable i.el{margin-left:5px}.wp-customizer .redux-container-sortable .checkbox-container{width:inherit}.wp-customizer .redux-container-sortable .ui-draggable-handle{margin-left:3%}.redux-container-switch .switch-options{min-height:30px;margin-right:10px}.redux-container-switch .switch-options label{cursor:pointer}.redux-container-switch .switch-options input{display:none}.redux-container-switch .cb-enable,.redux-container-switch .cb-disable{padding:0 10px;border-width:1px;border-style:solid;-webkit-appearance:none;white-space:nowrap;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.redux-container-switch .cb-enable span,.redux-container-switch .cb-disable span{line-height:30px;display:block;font-weight:700;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-o-user-select:none;-ms-user-select:none;user-select:none}.redux-container-switch .cb-enable,.redux-container-switch .cb-disable,.redux-container-switch .cb-enable span,.redux-container-switch .cb-disable span{display:block;float:left}.redux-container-switch .cb-enable{border-right:0;border-radius:3px 0px 0px 3px;-moz-border-radius:3px 0px 0px 3px;-webkit-border-radius:3px 0px 0px 3px}.redux-container-switch .cb-enable.selected{color:#fff}.redux-container-switch .cb-disable{border-left:0;border-radius:0px 3px 3px 0px;-moz-border-radius:0px 3px 3px 0px;-webkit-border-radius:0px 3px 3px 0px}.redux-container-switch .cb-disable.selected{color:#fff}.redux-container-spacing select,.redux-container-spacing .select_wrapper{width:80px !important;float:left}.redux-container-spacing .field-spacing-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-container-spacing .field-spacing-input input{display:inline-block !important;width:70px !important}.redux-container-spacing .field-spacing-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-container-spacing .select_wrapper{margin-top:6px}}.redux-container-spinner .spinner-wrpr{position:relative;display:block;height:30px;overflow:hidden}.redux-container-spinner .spinner-wrpr .spinner-input{position:relative !important;z-index:1;width:75px !important;height:30px !important;background:#eee !important;border:1px solid #bfbfbf !important;border-right:0 !important;border-left:0 !important;-webkit-border-radius:0 !important;-moz-border-radius:0 !important;border-radius:0 !important}.redux-container-spinner .ui-spinner{position:static;display:inline}.redux-container-spinner .ui-spinner-buttons{position:absolute;padding:0}.redux-container-spinner .ui-widget .ui-spinner-button{color:#fff;position:absolute;top:0;padding:0 0 30px;overflow:hidden;cursor:pointer;background:-moz-linear-gradient(#fff, #f3f3f3);background:-o-linear-gradient(#fff, #f3f3f3);background:-webkit-gradient(linear, left top, left bottom, from(#fff), to(#f3f3f3));background:linear-gradient(#fff, #f3f3f3);background-color:#fff;border:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.redux-container-spinner .ui-spinner-button:hover,.redux-container-spinner .ui-state-hover{background:-moz-linear-gradient(#f3f3f3, #fff);background:-o-linear-gradient(#f3f3f3, #fff);background:-webkit-gradient(linear, left top, left bottom, from(#f3f3f3), to(#fff));background:linear-gradient(#f3f3f3, #fff);background-color:#f3f3f3}.redux-container-spinner .ui-corner-tr,.redux-container-spinner .ui-spinner-button .ui-icon-triangle-1-n{-webkit-border-radius:0 5px 5px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.redux-container-spinner .ui-corner-br,.redux-container-spinner .ui-spinner-button .ui-icon-triangle-1-s{-webkit-border-radius:5px 0 0 5px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.redux-container-spinner .ui-spinner-button .ui-icon{top:0;display:block;width:28px;height:28px;margin:0;border:1px solid #b7b7b7;background-image:initial;text-indent:0;text-align:center;font-size:18px;line-height:26px}.dp-numberPicker,.dp-numberPicker-add,.dp-numberPicker-sub,.dp-numberPicker-input{display:inline-block;box-sizing:border-box;-moz-box-sizing:border-box;text-align:center;vertical-align:top;height:30px}.dp-numberPicker{border-radius:3px}.redux-container .redux-container-spinner .dp-numberPicker-add,.redux-container .redux-container-spinner .dp-numberPicker-sub{width:30px;font-size:21px;cursor:pointer;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;background-color:#33b5e5;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);height:29px !important}.redux-container .redux-container-spinner .dp-numberPicker-add.disabled,.redux-container .redux-container-spinner .dp-numberPicker-sub.disabled{background-color:#2c6a81}.dp-numberPicker-add{border-top-right-radius:3px;border-bottom-right-radius:3px}.dp-numberPicker-sub{border-top-left-radius:3px;border-bottom-left-radius:3px}.dp-numberPicker-input{width:70px;background-color:#eee;border:0;margin:0 !important;box-shadow:inset 0px 1px 1px rgba(255,255,255,0.5),inset 0px -1px 1px rgba(0,0,0,0.5)}.dp-numberPicker-input:disabled{background-color:#eee}.redux-container-text label{display:block;position:relative;font-size:12px !important;text-align:left;color:#999;margin:4px 0 2px 0 !important;cursor:default;top:5px;width:100px}.redux-container-text input{clear:left}.redux-container-text .input_wrapper{display:block;position:relative;padding:0;width:23%;max-width:23%;min-width:70px;float:left;clear:left;height:57px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.wp-customizer .redux-container-text .input_wrapper{width:100%;max-width:100%;height:auto}.redux-main .redux-typography-container{display:block;position:relative;margin:0;padding:0;width:100%;max-width:660px}.redux-main .redux-typography-container .redux-typography-slider{margin-top:11px;width:auto}.redux-main .redux-typography-container .clearfix{clear:both}.redux-main .redux-typography-container .clearfix::after{visibility:hidden;display:block;font-size:0;content:\" \";clear:both;height:0}.redux-main .redux-typography-container input.wp-picker-default,.redux-main .redux-typography-container .redux-typography-color{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;height:24px;padding:0 14px !important;margin-top:0;margin-bottom:0;font-size:12px !important}.redux-main .redux-typography-container .select_wrapper{display:block;position:relative;float:left;clear:none;margin:0 10px 0 0;width:48% !important;min-width:210px !important;max-width:324px !important;height:57px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-typography-container .select_wrapper:nth-child(odd){margin-right:10px !important}.redux-main .redux-typography-container .select_wrapper:nth-child(even){margin-right:10px !important}.redux-main .redux-typography-container .select_wrapper.typography-family .select2-container{width:100%}.redux-main .redux-typography-container .select_wrapper .redux-typography{font-size:14px !important;display:block;float:left;height:28px !important;line-height:50px !important;padding:0 !important;width:100% !important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-typography-container .wp-picker-container{float:left;clear:left;margin-bottom:12px;padding:3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.redux-main .redux-typography-container .input_wrapper{display:block;position:relative;margin:0 4px 0 5px;padding:0;width:23%;max-width:23%;min-width:70px;float:left;clear:none;height:57px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.redux-main .redux-typography-container .input_wrapper.margin-top,.redux-main .redux-typography-container .input_wrapper.margin-bottom{margin-left:0px}.redux-main .redux-typography-container .input_wrapper.font-size{margin-left:0}.redux-main .redux-typography-container .input_wrapper input.mini{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;width:78%;text-align:center;margin:0;height:28px;top:3px;padding:0 2px 0 5px;text-decoration:none;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.redux-main .redux-typography-container .picker-wrapper{display:block;position:relative;margin:0;padding:0;width:100%;min-width:100%;clear:none;height:57px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.redux-main .redux-typography-container label{position:relative;font-size:12px !important;text-align:left;color:#999;width:100%;cursor:default}.redux-main .redux-typography-container .typography-preview{display:none;width:100%;border:1px dotted #d3d3d3;max-width:850px;padding:10px;font-size:10pt;height:auto;margin:5px 0 10px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.redux-main .redux-typography-container .typography-color{border:0 none;margin:0}.redux-main .redux-typography-container ::-webkit-input-placeholder{line-height:19px}@media screen and (max-width: 540px){.redux-main .redux-main .redux-typography-container{max-width:230px;margin:0 auto}.redux-main .redux-main .redux-typography-container .select_wrapper{max-width:210px;min-width:210px;width:210px;margin-left:0 !important;margin-right:0 !important}.redux-main .redux-main .redux-typography-container .input_wrapper{max-width:101px;min-width:101px;width:101px;margin-left:0 !important;margin-right:5px !important}.redux-main .redux-main .redux-typography-container .input_wrapper input.mini{width:73%}.redux-main .redux-main .redux-typography-container .input-append .add-on{width:30%;padding:5px !important}.redux-main .redux-main .redux-main .wp-picker-container .wp-picker-input-wrap{margin-top:7px}}@media screen and (max-width: 360px){.redux-main .redux-typography-container .iris-picker .iris-square{margin-right:3%}}.wp-customizer .redux-typography-container .input_wrapper{width:40%;max-width:40%;min-width:20%}.wp-customizer .redux-typography-container .input_wrapper input.mini{width:70%}.wp-customizer .redux-typography-container .select_wrapper{width:100% !important}.wp-customizer .redux-container{overflow:visible}.wp-customizer .redux-container .redux-main input{margin:0 !important}.wp-customizer .redux-container .redux-main input.spinner-input{margin-right:30px !important;margin-left:30px !important;margin-top:0px !important}.wp-customizer .redux-container .redux-main .redux-container-editor .wp-editor-area{color:#000000}.wp-customizer .redux-section.open .redux-group-tab{display:block !important}.wp-customizer .redux-section p.customize-section-description{margin-top:22px;word-break:break-word}.wp-customizer .redux-section p.customize-section-description.legacy{margin-top:7px}.wp-customizer .control-section-themes .accordion-section-title{margin:0}.wp-customizer #customize-controls .description{display:block}.wp-customizer #customize-controls .customize-info{margin-bottom:0}.wp-customizer #customize-controls .redux-section .accordion-section-content{background:#fcfcfc}.wp-customizer .redux-section .accordion-section-title i,.wp-customizer .redux-field .accordion-field-title i,.wp-customizer .redux-panel .accordion-section-title i{margin-right:5px}.wp-customizer .accordion-section.redux-main{background:inherit;margin-left:inherit;border-left:inherit;-moz-box-shadow:inherit;-webkit-box-shadow:inherit;padding:inherit;box-shadow:inherit}.wp-customizer .redux_field_th{padding:13px 0px 0px 0px}.wp-customizer .redux-main .redux-field-container{padding:10px 0}.wp-customizer .redux-main .select_wrapper{float:none;width:100%;display:inline-block}.wp-customizer .redux-main .select2-container{margin-right:0 !important;margin-bottom:5px !important;width:100% !important}.wp-customizer .redux-main .select_wrapper:nth-child(odd){margin-right:0}.wp-customizer .redux-main .redux-option-image{max-width:42% !important;margin-right:3%}.wp-customizer .redux-main .customize-control{border-bottom:1px solid #ddd;padding-bottom:4px}.wp-customizer .redux-main .customize-control:last-child{border-bottom:0;padding-bottom:0}.wp-customizer .redux-main .upload{width:100% !important}.wp-customizer .redux-main h3{margin-top:inherit}.wp-customizer .redux-main .redux-container-raw{margin-top:22px;word-break:break-word;padding:0 !important}.wp-customizer .redux-main .redux-container-password input{width:100%}.wp-customizer .select2-drop,.wp-customizer .select2-container{z-index:999999}.wp-customizer .customize-control-redux-raw{list-style:none}.redux_field_search{position:absolute;width:250px !important;right:20px;padding:4px 7px;top:6px}.redux-has-sections .redux_field_search{right:10px}.redux-main.redux-search .redux-section-field,.redux-main.redux-search .redux-info-field,.redux-main.redux-search .redux-notice-field,.redux-main.redux-search .redux-container-group,.redux-main.redux-search .redux-container-raw,.redux-main.redux-search .redux-section-desc,.redux-main.redux-search .redux-group-tab h3,.redux-main.redux-search .hr,.redux-main.redux-search .redux-field-info,.redux-main.redux-search tr{display:none}.redux-main.redux-search #import_export_default_section_group,.redux-main.redux-search #dev_mode_default_section_group{display:none !important}.redux-main.redux-search .redux-group-tab{margin-bottom:0}.redux-main.redux-search .redux-group-tab .form-table-section-indented{margin-left:0 !important;width:100%}.redux-main.redux-search .redux-group-tab .form-table-section-indented .redux-group-tab .form-table-section tr:first-of-type th:first-of-type{padding:inherit !important}.redux-main.redux-search .redux-group-tab .form-table-section-indented .redux-group-tab h3{margin-top:inherit !important}.redux-metabox .redux-has-sections .redux_field_search{top:8px}.redux_field_th{padding-bottom:0px !important}.redux-group-tab{margin-bottom:0 !important}.block-editor-page .postbox.closed .el:before{content:\"\" !important}.block-editor-page .postbox .el:before{content:\"\"}.postbox .redux-container{filter:none;border:none;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.postbox .redux-container .redux-group-menu .active a{background:#FFF}.postbox .redux-container .redux-section-title{padding-left:0 !important;margin-bottom:15px !important}.postbox .redux-container .redux-section-desc{margin-bottom:20px}.postbox .redux-container .redux_main{border-left:1px solid #D8D8D8;moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.postbox .redux-container .redux_main input[type=text]{width:95%}.postbox .redux-container.redux-no-sections{margin:0;background:none}.postbox .redux-container.redux-no-sections .redux-main{background:none;margin-left:inherit;padding:inherit;border-left:none !important;min-height:0 !important}.postbox .redux-container.redux-no-sections .redux-main tr:last-child{border-bottom:none}.postbox .redux-container.redux-no-sections .redux-main tr:last-child th,.postbox .redux-container.redux-no-sections .redux-main tr:last-child td{padding-bottom:0}.postbox .redux-container.redux-no-sections .redux-main tr td{padding-top:10px !important;width:100%}.postbox .redux-container.redux-no-sections .redux-main .form-table:first-child tr:first-child td{padding-top:0 !important}.postbox .redux-container.redux-no-sections .redux-main .redux-field{margin-bottom:10px !important}.postbox .redux-container.redux-no-sections .redux-main .redux-field:last-child{margin-bottom:0 !important}.postbox .redux-container.redux-has-sections .redux-main{background:#fff}.postbox .redux-container.redux-has-sections .redux-main span.description{padding-bottom:20px}.postbox .redux-main h3{cursor:text !important;-webkit-user-select:inherit !important;-moz-user-select:inherit !important;user-select:inherit !important;padding-left:0 !important}.redux-box-side .redux-main .redux-field-container{padding:0;padding-top:5px}.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:100% !important}.redux-box-side .form-table tr td{padding:15px 0 !important}.redux-box-side .form-table tr:last-child td{padding-bottom:0 !important}.redux-box-side .form-table tr:first-child td{padding-top:5px !important}#poststuff .redux-metabox h3.hndle,.metabox-holder .redux-metabox h3.hndle{cursor:pointer;border-bottom:0}.display-group{display:inherit !important}@media (min-width: 1125px) and (max-width: 1405px){.postbox table.form-table,.postbox .form-table>thead,.postbox .form-table>tbody,.postbox .form-table>tbody>tr>th,.postbox .form-table>tbody>tr>td,.postbox .form-table>tbody>tr{display:block !important;width:100% !important;padding:0px !important}.postbox table.form-table.hide,.postbox .form-table>thead.hide,.postbox .form-table>tbody.hide,.postbox .form-table>tbody>tr>th.hide,.postbox .form-table>tbody>tr>td.hide,.postbox .form-table>tbody>tr.hide{display:none !important}.postbox .form-table>tbody>tr>th,.postbox .form-table>tbody>tr>td{padding:10px !important}.postbox .form-table>tbody>tr>th{width:35%}}.redux-metabox .form-table th,.redux-metabox .form-table td{margin:0;padding:0}.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:96% !important}@media (max-width: 1405px){.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:92% !important}}@media (max-width: 1125px){.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:100% !important}}@media (max-width: 1405px){.redux-main .form-table>tbody>tr>td{padding-top:0 !important;padding-bottom:0 !important}.redux-main .redux-field-container{padding:0 0 20px 0 !important;padding-bottom:10px !important}.postbox .form-table>tbody>tr>th{padding-bottom:0 !important}.redux_field_th{padding-top:0 !important;padding-bottom:10px !important}}.redux-no-sections .redux-group-tab{display:block !important}.admin-color-fresh #poststuff .redux-metabox h3.hndle,.admin-color-fresh .metabox-holder .redux-metabox h3.hndle{background:#222;color:#fff}.admin-color-light #poststuff .redux-metabox h3.hndle,.admin-color-light .metabox-holder .redux-metabox h3.hndle{background:#888;color:#fff}.admin-color-blue #poststuff .redux-metabox h3.hndle,.admin-color-blue .metabox-holder .redux-metabox h3.hndle{background:#096484;color:#fff}.admin-color-coffee #poststuff .redux-metabox h3.hndle,.admin-color-coffee .metabox-holder .redux-metabox h3.hndle{background:#46403c;color:#fff}.admin-color-ectoplasm #poststuff .redux-metabox h3.hndle,.admin-color-ectoplasm .metabox-holder .redux-metabox h3.hndle{background:#413256;color:#fff}.admin-color-midnight #poststuff .redux-metabox h3.hndle,.admin-color-midnight .metabox-holder .redux-metabox h3.hndle{background:#363b3f;color:#fff}.admin-color-ocean #poststuff .redux-metabox h3.hndle,.admin-color-ocean .metabox-holder .redux-metabox h3.hndle{background:#627c83;color:#fff}.admin-color-sunrise #poststuff .redux-metabox h3.hndle,.admin-color-sunrise .metabox-holder .redux-metabox h3.hndle{background:#b43c38;color:#fff}.redux-notices{margin-bottom:0;border:0}.redux-metabox .redux-container{margin-top:0}.redux-metabox .inside{margin:0 !important;padding:0 !important}.redux-metabox .redux-no-sections .redux-main{padding:6px 15px 15px 15px !important}.redux-metabox .redux-no-sections .redux-main .default_br{display:none}.redux-metabox .redux-no-sections .redux-main .redux-field-container{padding:10px 0 20px !important}.redux-metabox .redux-no-sections .redux-main .redux_field_th{padding-top:5px !important}.redux-metabox .redux-no-sections.redux-box-side .redux-main{padding:6px 8px 8px 8px !important}.redux-metabox .redux-no-sections.redux-box-side .redux-main input[type=text]{width:100% !important}.wp-color-result{margin:0 6px 0 0px !important}.redux-container .ui-button-text-only .ui-button-text{padding:0}.wpseotab tr{display:table-row !important}.redux-container-import_export #redux-import-link-wrapper,.redux-container-import_export #redux-import-code-wrapper{display:none}.redux-container-import_export #redux-export-code,.redux-container-import_export #redux-export-link-value,.redux-container-import_export #redux-import-upload-file{display:none}.redux-container-import_export #redux-import-action span{color:#b94a48}.redux-container-import_export #redux-import-upload span{font-weight:bold}#redux-object-browser{overflow:auto;word-wrap:break-word;max-height:600px;max-width:100%}.redux-container-repeater{padding:15px 20px;margin-bottom:7px;padding-top:0}.redux-container-repeater h4{margin:5px 0px 0px 0px}.redux-container-repeater h4:first-child{margin-top:0px}.redux-container-repeater .description{margin:5px 0 5px 0px}.redux-container-repeater .redux-repeater-accordion{width:100%}.redux-container-repeater .redux-repeater-accordion .ui-state-focus{outline:none}.redux-container-repeater .redux-repeater-accordion-repeater{margin-bottom:10px}.redux-container-repeater .redux-repeater-accordion-repeater>div{border:1px solid #dfdfdf !important;border-radius:0 !important;margin-top:0px !important;padding:10px}.redux-container-repeater .redux-repeater-accordion-repeater h3.ui-accordion-header{border:1px solid #dfdfdf;cursor:move;font-weight:bold;padding:0 10px;height:40px;line-height:40px;background-color:#f1f1f1;background-image:-ms-linear-gradient(top, #f9f9f9, #ececec);background-image:-moz-linear-gradient(top, #f9f9f9, #ececec);background-image:-o-linear-gradient(top, #f9f9f9, #ececec);background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center;margin-bottom:0}.redux-container-repeater .redux-repeaters-add{float:right}.redux-container-repeater .redux-repeaters-add:after{clear:both}.redux-container-repeater .redux-repeaters-remove{color:#ef521d !important;float:right}.redux-container-repeater .redux-repeaters-remove:after{clear:both}.redux-container-repeater .redux-repeater-header{font-weight:bold}.redux-container-repeater .redux_repeaters_add_remove{margin-bottom:10px}.redux-container-repeater .redux-field-container{padding:0 0 10px 0}.redux-container-repeater .redux-field-container:last-child{padding-bottom:0}.redux-container-repeater .ui-accordion .ui-accordion-content{padding:1em}.redux-container-repeater .redux-container-sorter{margin-right:0 !important}#poststuff .redux-container-repeater h3{padding:0;cursor:move !important;line-height:40px}\n"]}
1
+ {"version":3,"sources":["redux-fields.min.css"],"names":[],"mappings":"AAAA,yCAAyC,eAAe,CAAC,wCAAwC,YAAY,CAAkD,iBAAiB,CAAC,wCAAwC,oBAAoB,CAAC,2CAA2C,UAAU,CAAC,aAAa,CAAC,iBAAiB,CAAC,wCAAwC,UAAU,CAAC,aAAa,CAAC,+CAA+C,UAAU,CAAC,UAAU,CAAC,4CAA4C,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,kDAAkD,+BAA+B,CAAC,sBAAsB,CAAC,oDAAoD,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,wCAAwC,cAAc,CAAC,CAAC,0zBAA0zB,sBAAsB,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,4DAA4D,aAAa,CAAC,UAAU,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,2DAA2D,iBAAiB,CAAC,kBAAkB,CAAC,6DAA6D,kBAAkB,CAAC,gDAAgD,UAAU,CAAC,iBAAiB,CAAC,0DAA0D,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,81BAA81B,qBAAqB,CAAC,0DAA0D,aAAa,CAAC,yEAAyE,YAAY,CAAC,kBAAkB,CAAC,eAAe,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,gCAAuB,CAAvB,wBAAwB,CAAC,kJAAkJ,UAAU,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,iBAAiB,CAAC,sEAAsE,SAAS,CAAC,UAAU,CAA4B,6BAA6B,CAAC,qBAAqB,CAAC,4FAA4F,aAAa,CAAC,4EAA4E,aAAa,CAAC,oGAAoG,mBAAmB,CAAC,WAAW,CAAC,WAAW,CAAC,YAAY,CAAC,oBAAoB,CAAC,2GAA2G,qBAAqB,CAAC,sGAAsG,UAAU,CAAC,4EAA4E,mBAAmB,CAAC,kFAAkF,kBAAkB,CAAC,iFAAiF,iBAAiB,CAAC,gCAAgC,kBAAkB,CAAC,UAAU,CAAC,4CAA4C,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,wDAAwD,YAAY,CAAC,eAAe,CAAC,iBAAiB,CAAC,oGAAoG,oBAAoB,CAAC,iBAAiB,CAAC,kHAAkH,aAAa,CAAC,iBAAiB,CAAC,eAAe,CAAC,cAAc,CAAC,UAAU,CAAC,qCAAqC,+CAA+C,aAAa,CAAC,4BAA4B,CAAC,CAAC,iDAAiD,iBAAiB,CAAC,oBAAoB,CAAC,SAAS,CAAC,QAAQ,CAAC,2DAA2D,gBAAgB,CAAC,eAAe,CAAC,YAAY,CAAC,mBAAY,CAAZ,oBAAY,CAAZ,mBAAY,CAAZ,YAAY,CAAC,sBAAa,CAAb,kBAAa,CAAb,cAAc,CAAC,gFAAgF,iBAAiB,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,gCAAgC,CAAC,uEAAuE,WAAW,CAAC,sFAAsF,iBAAiB,CAAC,2FAA2F,0DAAiD,CAAjD,kDAAkD,CAAC,iEAAiE,YAAY,CAAC,oGAAoG,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,0CAAkC,CAAlC,kCAAkC,CAAC,gCAAgC,CAAC,6EAA6E,qBAAqB,CAAC,cAAc,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,8DAA8D,CAAC,sDAAsD,CAAC,kBAAkB,CAAC,aAAa,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,8DAA8D,CAAC,sDAAsD,CAAC,kBAAkB,CAAC,4EAA4E,kBAAkB,CAAC,iBAAiB,CAAC,UAAU,CAAC,sCAAsC,qEAAqE,CAAC,6DAA6D,CAAC,0BAA0B,0GAA0G,CAAC,kGAAkG,CAAC,kEAAkE,eAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,uDAAuD,CAAC,+CAA+C,CAAC,mBAAmB,qBAAqB,CAAC,sBAAsB,wBAAwB,CAAC,+EAA+E,qBAAqB,CAAC,UAAU,CAAC,oDAAoD,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,0DAA0D,+BAA+B,CAAC,sBAAsB,CAAC,4DAA4D,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,4CAA4C,cAAc,CAAC,CAAC,oBAAoB,WAAW,CAAC,gBAAgB,CAAC,UAAU,CAAC,oBAAoB,CAAC,aAAa,CAAC,UAAU,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,2BAA2B,oBAAoB,CAAC,mBAAmB,CAAC,eAAe,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,oBAAoB,CAAC,sBAAsB,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,UAAU,CAAC,SAAS,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,eAAe,CAAC,sDAAsD,oBAAoB,CAAC,mBAAmB,CAAC,eAAe,CAAC,sCAAsC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,+DAA+D,cAAc,CAAC,iCAAiC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,6CAA8F,iBAAiB,CAAC,sDAAmG,eAAe,CAAC,oBAAoB,CAAC,iDAAiD,kBAAkB,CAAC,oBAAoB,CAAC,cAAc,CAAC,eAAe,CAAC,kDAAkD,CAAC,aAAa,CAAC,wBAAwB,CAA2B,iBAAiB,CAAC,eAAe,CAAC,yFAAyF,CAAC,+DAA+D,CAAyH,uDAAuD,CAAC,qDAAqD,aAAa,CAAC,kBAAkB,CAAC,UAAU,CAAC,kDAAkD,mBAAmB,CAAC,yDAAyD,aAAa,CAAC,qBAAqB,CAAC,wBAAwB,CAAC,UAAU,CAAC,WAAW,CAAC,+GAA+G,oBAAoB,CAAC,gEAAgE,eAAe,CAAC,sEAAsE,YAAY,CAAC,8DAA8D,UAAU,CAAC,uDAAuD,sBAAsB,CAAC,oBAAoB,CAAC,eAAe,CAAC,cAAc,CAAC,2DAA2D,wBAAwB,CAAC,gPAAgP,gBAAgB,CAAC,kBAAkB,CAAC,oIAAoI,oBAAoB,CAAC,kBAAkB,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,8HAA8H,0BAA0B,CAAC,qBAAqB,UAAU,CAAC,mCAAmC,oBAAoB,CAAC,iBAAiB,CAAC,qCAAqC,aAAa,CAAC,mCAAmC,oBAAoB,CAAC,kBAAkB,CAAC,+BAA+B,qBAAqB,CAAC,iBAAiB,CAAC,UAAU,CAAC,iCAAiC,aAAa,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,kCAAkC,aAAa,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,kCAAkC,aAAa,CAAC,iCAAiC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,mCAAmC,aAAa,CAAC,6BAA6B,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,+BAA+B,aAAa,CAAC,oBAAoB,eAAe,CAAC,qBAAqB,CAAC,QAAQ,CAAC,6BAA6B,CAAC,8CAA8C,CAAC,sCAAsC,CAAC,gBAAgB,CAAC,0IAA0I,0BAA0B,CAAC,sBAAsB,cAAc,CAAC,WAAW,CAAC,qCAAqC,oBAAoB,CAAC,iBAAiB,CAAC,uCAAuC,aAAa,CAAC,qCAAqC,oBAAoB,CAAC,kBAAkB,CAAC,+BAA+B,6BAA6B,CAAC,kCAAkC,6BAA6B,CAAC,kCAAkC,6BAA6B,CAAC,mCAAmC,6BAA6B,CAAC,wDAAwD,SAAS,CAAC,sHAAsH,aAAa,CAAC,gBAAgB,CAAC,sHAAsH,UAAU,CAAC,2EAA2E,eAAe,CAAC,uCAAuC,oBAAoB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,8CAA8C,aAAa,CAAC,iBAAiB,CAAC,eAAe,CAAC,cAAc,CAAC,kBAAkB,CAAC,UAAU,CAAC,gCAAgC,SAAS,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,0CAA0C,gBAAgB,CAAC,2DAA2D,kBAAkB,CAAC,kBAAkB,CAAC,+BAA+B,CAAC,eAAe,CAAC,cAAc,CAAC,UAAU,CAAC,wDAAwD,oBAAoB,CAAC,SAAS,CAAC,iBAAiB,CAAC,8DAA8D,oBAAoB,CAAC,WAAW,CAAC,UAAU,CAAC,qFAAqF,UAAU,CAAC,gDAAgD,QAAQ,CAAC,SAAS,CAAC,kDAAkD,UAAU,CAAC,YAAY,CAAC,+DAA+D,UAAU,CAAC,eAAe,CAAC,eAAe,CAAC,qEAAqE,eAAe,CAAC,UAAU,CAAC,oBAAoB,CAAC,qCAAqC,kCAAkC,UAAU,CAAC,qDAAqD,QAAQ,CAAC,WAAW,CAAC,CAAC,mDAAmD,WAAW,CAAC,oEAAoE,WAAW,CAAC,iBAAiB,CAAC,qEAAqE,qBAAqB,CAAC,+BAA+B,4BAA4B,CAAC,mCAAmC,CAAC,eAAe,CAAC,qBAAqB,CAAC,aAAa,CAAC,mDAAmD,SAAS,CAAC,eAAe,CAAC,SAAS,CAAC,mBAAW,CAAX,oBAAW,CAAX,mBAAW,CAAX,YAAY,CAAC,0JAA0J,YAAY,CAAC,wDAAwD,YAAY,CAAC,kBAAW,CAAX,mBAAW,CAAX,mBAAW,CAAX,WAAW,CAAC,WAAW,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,wCAAwC,CAAgH,gCAAgC,CAAC,aAAa,CAAC,8DAA8D,kBAAW,CAAX,mBAAW,CAAX,mBAAW,CAAX,WAAW,CAAC,gBAAgB,CAAC,cAAc,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,sCAAsC,CAAC,+CAA+C,gCAAgC,CAAC,0DAA0D,iBAAiB,CAAC,yCAAyC,SAAS,CAAC,yBAAyB,CAAC,kEAAkE,sBAAsB,CAAC,eAAe,eAAe,CAAC,8DAA8D,YAAY,CAAC,oEAAoE,eAAe,CAAC,8CAA8C,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,uBAAuB,qBAAqB,CAAC,6KAA6K,eAAe,CAAC,8BAA8B,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,qBAAqB,gBAAgB,CAAC,eAAe,CAAC,WAAW,CAAC,eAAe,CAAC,wBAAwB,CAAC,kBAAkB,CAA2E,iBAAiB,CAAC,gDAAgD,gBAAgB,CAAC,iBAAiB,CAAC,WAAW,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,8IAA8I,sBAAsB,CAAC,iBAAiB,CAAC,4CAA4C,iBAAiB,CAAC,gBAAgB,CAAC,gDAAgD,iBAAiB,CAAC,iBAAiB,CAAC,gDAAgD,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,qCAAqC,8BAA8B,+BAA+B,CAAC,CAAC,qCAAqC,wBAAwB,iBAAiB,CAAC,oJAAoJ,wBAAwB,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,gDAAgD,cAAc,CAAC,SAAS,CAAC,CAAC,2DAA2D,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,iBAAiB,CAAC,aAAa,CAAC,2LAA2L,oBAAoB,CAAC,+DAA+D,SAAS,CAAC,cAAc,CAAC,cAAc,CAAC,8DAA8D,kBAAkB,CAAC,UAAU,CAAC,6CAA6C,eAAe,CAAC,uEAAuE,UAAU,CAAC,sDAAsD,mCAAmC,CAAC,4BAA4B,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,WAAW,CAAC,yDAAyD,wBAAwB,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,WAAW,CAAC,2BAA2B,CAAC,wBAAwB,CAAqL,4FAA4F,CAAC,+DAA+D,CAAC,6DAA6D,CAAC,eAAe,CAAkD,iBAAiB,CAAoC,qCAAqC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,oEAAoE,YAAY,CAAC,WAAW,CAAC,eAAe,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,kBAAkB,CAA2E,iBAAiB,CAAC,0CAA0C,WAAW,CAAC,gBAAgB,CAAC,aAAa,CAAC,kBAAkB,CAAC,6CAA6C,wBAAwB,CAAC,WAAW,CAAC,cAAc,CAAC,6CAA6C,gBAAgB,CAAC,iDAAiD,kBAAkB,CAAC,8BAA8B,qBAAqB,CAAC,2EAA2E,YAAY,CAAC,0EAA0E,WAAW,CAAC,eAAe,CAAC,gCAAgC,iBAAiB,CAAC,uCAAuC,4BAA4B,CAAC,yBAAyB,CAAC,UAAU,CAAC,gCAAgC,iBAAiB,CAAC,8CAA8C,UAAU,CAAC,oDAAoD,4BAA4B,CAAC,cAAc,CAAC,oDAAoD,WAAW,CAAC,gBAAgB,CAAC,yCAAyC,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,CAAC,4BAA4B,CAAC,+DAA+D,eAAe,CAAC,iBAAiB,CAAC,cAAc,CAAC,mDAAmD,UAAU,CAAC,sBAAsB,CAAC,yEAAyE,UAAU,CAAC,wCAAwC,4BAA4B,CAAC,6BAA6B,2BAA2B,CAAC,gDAAgD,WAAW,CAAC,WAAW,CAAC,kBAAkB,CAAC,yCAAyC,WAAW,CAAC,aAAa,CAAC,kDAAkD,SAAS,CAAC,oCAAoC,eAAe,CAAC,6DAA6D,aAAa,CAAC,8DAA8D,cAAc,CAAC,wBAAwB,kBAAkB,CAAC,2BAA2B,kBAAkB,CAAC,wBAAwB,CAAC,eAAe,CAAC,mBAAmB,CAAC,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,kCAAkC,WAAW,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,8BAA8B,wBAAwB,CAAC,WAAW,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,cAAc,CAAC,WAAW,CAAC,2BAA2B,CAAC,wBAAwB,CAAqL,4FAA4F,CAAC,+DAA+D,CAAC,6DAA6D,CAAC,eAAe,CAAkD,iBAAiB,CAAoC,qCAAqC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,iCAAiC,eAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,yBAAyB,CAAC,oBAAoB,CAAC,0CAA0C,WAAW,CAAC,0CAA0C,SAAS,CAAC,gBAAgB,CAAC,yEAAyE,qBAAqB,CAAC,UAAU,CAAC,8CAA8C,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,oDAAoD,+BAA+B,CAAC,qBAAqB,CAAC,sDAAsD,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,yCAAyC,cAAc,CAAC,CAAC,uCAAuC,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,eAAe,CAAC,sDAAsD,4BAA4B,CAAC,SAAS,CAAC,qBAAqB,CAAC,sBAAsB,CAAC,0BAA0B,CAAC,mCAAmC,CAAC,yBAAyB,CAAC,wBAAwB,CAAoE,0BAA0B,CAAC,qCAAqC,eAAe,CAAC,cAAc,CAAC,6CAA6C,iBAAiB,CAAC,SAAS,CAAC,uDAAuD,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,gBAAgB,CAAC,eAAe,CAAC,cAAc,CAA6F,mFAAmF,CAAC,iDAAyC,CAAzC,yCAAyC,CAAC,qBAAqB,CAAC,WAAW,CAAC,uBAAuB,CAAsB,eAAe,CAAC,2FAAuL,mFAAmF,CAAC,iDAAyC,CAAzC,yCAAyC,CAAC,wBAAwB,CAAC,yGAA0K,yBAAyB,CAAC,yGAA0K,yBAAyB,CAAC,qDAAqD,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,gBAAgB,CAAC,kFAAkF,oBAAoB,CAAC,6BAAqB,CAArB,qBAAqB,CAAC,0BAA0B,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,WAAW,CAAC,iBAAiB,iBAAiB,CAAC,8HAA8H,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,UAAU,CAAC,qCAAqC,CAAC,sBAAsB,CAAC,gJAAgJ,wBAAwB,CAAC,qBAAqB,2BAA2B,CAAC,8BAA8B,CAAC,qBAAqB,0BAA0B,CAAC,6BAA6B,CAAC,uBAAuB,UAAU,CAAC,qBAAqB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,6FAAoF,CAApF,qFAAqF,CAAC,gCAAgC,qBAAqB,CAAC,wCAAwC,eAAe,CAAC,iBAAiB,CAAC,8CAA8C,cAAc,CAAC,8CAA8C,YAAY,CAAC,uEAAuE,cAAc,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,6BAA6B,CAA4B,qBAAqB,CAAC,iFAAiF,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC,wBAAwB,CAAyB,qBAAqB,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,wJAAwJ,aAAa,CAAC,UAAU,CAAC,mCAAmC,cAAc,CAAC,6BAA6B,CAAC,kCAAkC,CAAC,qCAAqC,CAAC,4CAA4C,UAAU,CAAC,oCAAoC,aAAa,CAAC,6BAA6B,CAAC,kCAAkC,CAAC,qCAAqC,CAAC,6CAA6C,UAAU,CAAC,4BAA4B,aAAa,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,eAAe,CAAC,UAAU,CAAC,6BAA6B,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,4BAA4B,UAAU,CAAC,qCAAqC,aAAa,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,oDAAoD,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,wCAAwC,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC,iEAAiE,eAAe,CAAC,UAAU,CAAC,kDAAkD,UAAU,CAAC,yDAAyD,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,gIAAgI,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,WAAW,CAAC,yBAAyB,CAAC,YAAY,CAAC,eAAe,CAAC,yBAAyB,CAAC,wDAAwD,aAAa,CAAC,iBAAiB,CAAC,UAAU,CAAC,UAAU,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,0BAA0B,CAAC,0BAA0B,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uEAAuE,4BAA4B,CAAC,wEAAwE,4BAA4B,CAAC,6FAA6F,UAAU,CAAC,0EAA0E,yBAAyB,CAAC,aAAa,CAAC,UAAU,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,6DAA6D,UAAU,CAAC,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAkD,iBAAiB,CAAC,uDAAuD,aAAa,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,uIAAuI,eAAe,CAAC,iEAAiE,aAAa,CAAC,kEAAkE,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,SAAS,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,oBAAoB,CAAkD,iBAAiB,CAAC,wDAAwD,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,8CAA8C,iBAAiB,CAAC,yBAAyB,CAAC,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,4DAA4D,YAAY,CAAC,UAAU,CAAC,yBAAyB,CAAC,eAAe,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,iBAAiB,CAAC,6BAA6B,CAA4B,qBAAqB,CAAC,eAAe,CAAC,0DAA0D,aAAa,CAAC,QAAQ,CAAC,oEAAoE,gBAAgB,CAAC,qCAAqC,oDAAoD,eAAe,CAAC,aAAa,CAAC,oEAAoE,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,mEAAmE,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC,wBAAwB,CAAC,2BAA2B,CAAC,8EAA8E,SAAS,CAAC,0EAA0E,SAAS,CAAC,sBAAsB,CAAC,+EAA+E,cAAc,CAAC,CAAC,qCAAqC,kEAAkE,eAAe,CAAC,CAAC,0DAA0D,SAAS,CAAC,aAAa,CAAC,aAAa,CAAC,qEAAqE,SAAS,CAAC,2DAA2D,qBAAqB,CAAC,gCAAgC,gBAAgB,CAAC,kDAAkD,mBAAmB,CAAC,gEAAgE,4BAA4B,CAAC,2BAA2B,CAAC,yBAAyB,CAAC,oFAAoF,aAAa,CAAC,oDAAoD,wBAAwB,CAAC,8DAA8D,eAAe,CAAC,qBAAqB,CAAC,qEAAqE,cAAc,CAAC,gEAAgE,QAAQ,CAAC,gDAAgD,aAAa,CAAC,mDAAmD,eAAe,CAAC,6EAA6E,kBAAkB,CAAC,qKAAqK,gBAAgB,CAAC,6CAA6C,kBAAkB,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,0BAA0B,CAAC,eAAe,CAAC,kBAAkB,CAAC,+BAA+B,wBAAwB,CAAC,kDAAkD,cAAc,CAAC,2CAA2C,UAAU,CAAC,UAAU,CAAC,oBAAoB,CAAC,8CAA8C,yBAAyB,CAAC,4BAA4B,CAAC,qBAAqB,CAAC,0DAA0D,cAAc,CAAC,+CAA+C,wBAAwB,CAAC,eAAe,CAAC,8CAA8C,4BAA4B,CAAC,kBAAkB,CAAC,yDAAyD,eAAe,CAAC,gBAAgB,CAAC,mCAAmC,qBAAqB,CAAC,8BAA8B,kBAAkB,CAAC,gDAAgD,eAAe,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,2DAA2D,UAAU,CAAC,+DAA+D,cAAc,CAAC,4CAA4C,eAAe,CAAC,gBAAgB,6BAA6B,CAAC,iBAAiB,0BAA0B,CAAC,8CAA8C,sBAAsB,CAAC,uCAAuC,WAAW,CAAC,0BAA0B,mBAAW,CAAX,WAAW,CAAC,WAAW,CAA8C,eAAe,CAAsB,uBAAuB,CAAC,eAAe,CAAC,sDAAsD,eAAe,CAAC,+CAA+C,yBAAyB,CAAC,6BAA6B,CAAC,8CAA8C,kBAAkB,CAAC,sCAAsC,6BAA6B,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,eAAe,CAAC,uDAAuD,SAAS,CAAC,4CAA4C,QAAQ,CAAC,eAAe,CAAC,wDAAwD,eAAe,CAAC,mBAAmB,CAAC,eAAe,CAAC,2BAA2B,CAAC,uBAAuB,CAAC,sEAAsE,kBAAkB,CAAC,kJAAkJ,gBAAgB,CAAC,8DAA8D,2BAA2B,CAAC,UAAU,CAAC,kGAAkG,wBAAwB,CAAC,qEAAqE,6BAA6B,CAAC,gFAAgF,0BAA0B,CAAC,yDAAyD,eAAe,CAAC,0EAA0E,mBAAmB,CAAC,wBAAwB,sBAAsB,CAAC,sCAAsC,CAAC,mCAAmC,CAAC,kCAA8B,CAA9B,8BAA8B,CAAC,yBAAyB,CAAC,mDAAmD,SAAS,CAAC,eAAe,CAAC,gIAAgI,qBAAqB,CAAC,kCAAkC,yBAAyB,CAAC,6CAA6C,2BAA2B,CAAC,8CAA8C,0BAA0B,CAAC,2EAA2E,cAAc,CAAC,eAAe,CAAC,eAAe,0BAA0B,CAAC,mDAAmD,gLAAgL,wBAAwB,CAAC,qBAAqB,CAAC,sBAAsB,CAAC,8MAA8M,uBAAuB,CAAC,kEAAkE,uBAAuB,CAAC,iCAAiC,SAAS,CAAC,CAAC,4DAA4D,QAAQ,CAAC,SAAS,CAAC,gIAAgI,oBAAoB,CAAC,2BAA2B,gIAAgI,oBAAoB,CAAC,CAAC,2BAA2B,gIAAgI,qBAAqB,CAAC,CAAC,2BAA2B,oCAAoC,wBAAwB,CAAC,2BAA2B,CAAC,mCAAmC,6BAA6B,CAAC,8BAA8B,CAAC,iCAAiC,2BAA2B,CAAC,gBAAgB,wBAAwB,CAAC,8BAA8B,CAAC,CAAC,oCAAoC,wBAAwB,CAAC,iHAAiH,eAAe,CAAC,UAAU,CAAC,iHAAiH,eAAe,CAAC,UAAU,CAAC,+GAA+G,kBAAkB,CAAC,UAAU,CAAC,mHAAmH,kBAAkB,CAAC,UAAU,CAAC,yHAAyH,kBAAkB,CAAC,UAAU,CAAC,uHAAuH,kBAAkB,CAAC,UAAU,CAAC,iHAAiH,kBAAkB,CAAC,UAAU,CAAC,qHAAqH,kBAAkB,CAAC,UAAU,CAAC,eAAe,eAAe,CAAC,QAAQ,CAAC,gCAAgC,YAAY,CAAC,uBAAuB,mBAAmB,CAAC,oBAAoB,CAAC,8CAA8C,qCAAqC,CAAC,0DAA0D,YAAY,CAAC,qEAAqE,8BAA8B,CAAC,8DAA8D,0BAA0B,CAAC,6DAA6D,kCAAkC,CAAC,8EAA8E,qBAAqB,CAAC,iBAAiB,6BAA6B,CAAC,sDAAsD,SAAS,CAAC,aAAa,4BAA4B,CAAC,oBAAoB,iBAAiB,CAAC,sBAAsB,CAAC,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,wCAAwC,UAAU,CAAC,kaAAka,YAAY,CAAC,uHAAuH,uBAAuB,CAAC,0CAA0C,eAAe,CAAC,uEAAuE,wBAAwB,CAAC,UAAU,CAAC,8IAA8I,0BAA0B,CAAC,2FAA2F,6BAA6B,CAAC,uDAAuD,OAAO,CAAC,oHAAoH,YAAY,CAAC,mKAAmK,YAAY,CAAC,yDAAyD,aAAa,CAAC,yDAAyD,gBAAgB,CAAC,0BAA0B,iBAAiB,CAAC,iBAAiB,CAAC,aAAa,CAAC,6BAA6B,sBAAsB,CAAC,yCAAyC,cAAc,CAAC,uCAAuC,oBAAoB,CAAC,oDAAoD,UAAU,CAAC,oEAAoE,YAAY,CAAC,6DAA6D,kBAAkB,CAAC,iEAAiE,mCAAmC,CAAC,0BAA0B,CAAC,yBAAyB,CAAC,YAAY,CAAC,oFAAoF,wBAAwB,CAAC,WAAW,CAAC,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,gBAAgB,CAAC,wBAAwB,CAAqL,4FAA4F,CAAC,+DAA+D,CAAC,6DAA6D,CAAC,eAAe,CAAkD,iBAAiB,CAAoC,qCAAqC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,eAAe,CAAC,+CAA+C,WAAW,CAAC,qDAAqD,UAAU,CAAC,kDAAkD,wBAAwB,CAAC,WAAW,CAAC,wDAAwD,UAAU,CAAC,iDAAiD,gBAAgB,CAAC,sDAAsD,kBAAkB,CAAC,iDAAiD,kBAAkB,CAAC,4DAA4D,gBAAgB,CAAC,8DAA8D,WAAW,CAAC,kDAAkD,yBAAyB,CAAC,wCAAwC,SAAS,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,sBAAsB,aAAa,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,cAAc","file":"redux-fields.min.css","sourcesContent":[".redux-container-ace_editor .ace-wrapper{position:static}.redux-container-ace_editor .ace_editor{height:200px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.redux-container-ace_editor .ace_gutter{z-index:1 !important}.redux-container-border .select2-container{float:left;display:block;margin-right:10px}.redux-container-border .select_wrapper{float:left;width:inherit}.redux-container-border .select_wrapper select{width:80px;float:left}.redux-container-border .field-border-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-container-border .field-border-input input{display:inline-block !important;width:100px !important}.redux-container-border .field-border-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-container-border .select_wrapper{margin-top:6px}}.redux-main .redux-container-background .redux-background-position,.redux-main .redux-container-background .redux-background-position select,.redux-main .redux-container-background .redux-background-attachment,.redux-main .redux-container-background .redux-background-attachment select,.redux-main .redux-container-background .redux-background-clip,.redux-main .redux-container-background .redux-background-clip select,.redux-main .redux-container-background .redux-background-origin,.redux-main .redux-container-background .redux-background-origin select,.redux-main .redux-container-background .redux-background-size,.redux-main .redux-container-background .redux-background-size select,.redux-main .redux-container-background .redux-background-repeat,.redux-main .redux-container-background .redux-background-repeat select{width:200px !important;margin-right:10px;margin-bottom:7px}.redux-main .redux-container-background .background-preview{display:block;width:100%;margin:5px 0 10px;border:1px dotted #d3d3d3}.redux-main .redux-container-background .select2-container{margin-right:10px;margin-bottom:10px}.redux-main .redux-container-background .wp-picker-container{margin-bottom:10px}.redux-main .redux-container-background .upload{width:100%;margin-bottom:8px}.redux-main .redux-container-select li.ui-state-highlight{height:20px;margin-top:2px;margin-left:5px;width:64px;margin-bottom:0}.wp-customizer .redux-container-background .redux-background-position,.wp-customizer .redux-container-background .redux-background-position select,.wp-customizer .redux-container-background .redux-background-attachment,.wp-customizer .redux-container-background .redux-background-attachment select,.wp-customizer .redux-container-background .redux-background-clip,.wp-customizer .redux-container-background .redux-background-clip select,.wp-customizer .redux-container-background .redux-background-origin,.wp-customizer .redux-container-background .redux-background-origin select,.wp-customizer .redux-container-background .redux-background-size,.wp-customizer .redux-container-background .redux-background-size select,.wp-customizer .redux-container-background .redux-background-repeat,.wp-customizer .redux-container-background .redux-background-repeat select{width:100% !important}.redux-main .redux-container-box_shadow .box-shadow-inset{margin:0 auto}.redux-main .redux-container-box_shadow .box-shadow-inset #shadow-result{padding:20px;margin-bottom:20px;margin-top:20px;min-height:180px;border:0px solid #ddd;background:#f1f1f1;transition:all 0.2s ease}.redux-main .redux-container-box_shadow .box-shadow-inset .row-content:after,.redux-main .redux-container-box_shadow .box-shadow-inset .row:after{clear:both;content:\" \";display:block;height:0;visibility:hidden}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2{width:50%;float:left;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2.disabled label strong{color:#cccccc}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 label{color:#999999}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled{pointer-events:none;opacity:0.4;z-index:200;background:0;padding:0 !important}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled button{background-color:#888}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 .wp-picker-container.disabled a{z-index:-1}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2 ul li{padding-bottom:10px}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2:first-child{padding-right:20px}.redux-main .redux-container-box_shadow .box-shadow-inset .row .col-2:last-child{padding-left:20px}.redux-container-checkbox label{vertical-align:top;width:100%}.redux-container-checkbox label .field-desc{margin-top:0;float:left;width:93%;clear:none}.redux-container-color_gradient .redux-gradient-preview{height:150px;margin-top:10px;border-radius:4px}.redux-container-color_gradient .colorGradient,.redux-container-color_gradient .redux-gradient-type{display:inline-block;margin-right:20px}.redux-container-color_gradient .colorGradient strong,.redux-container-color_gradient .redux-gradient-type strong{display:table;margin-bottom:5px;margin-left:3px;font-size:12px;color:#999}@media screen and (max-width: 660px){.redux-container-color_gradient .colorGradient{display:block;text-align:center !important}}.redux-main .redux-container-color_palette label{position:relative;display:inline-block;padding:0;margin:0}.redux-main .redux-container-color_palette .colors-wrapper{max-height:300px;overflow-y:auto;padding:10px;display:flex;flex-wrap:wrap}.redux-main .redux-container-color_palette .colors-wrapper .color-palette-color{color:transparent;display:block;width:100%;height:100%;overflow:hidden;border:1px solid rgba(0,0,0,0.2)}.redux-main .redux-container-color_palette .colors-wrapper.round label{padding:3px}.redux-main .redux-container-color_palette .colors-wrapper.round .color-palette-color{border-radius:50%}.redux-main .redux-container-color_palette .colors-wrapper.box-shadow .color-palette-color{box-shadow:inset 3px 3px 13px 2px rgba(0,0,0,0.22)}.redux-main .redux-container-color_palette .colors-wrapper input{display:none}.redux-main .redux-container-color_palette .colors-wrapper input:checked+label .color-palette-color{border:0;width:130%;height:130%;position:relative;left:-15%;top:-15%;z-index:99;box-shadow:1px 1px 6px 1px #333333;border:1px solid rgba(0,0,0,0.3)}.redux-main .redux-container-color_palette .colors-wrapper.with-margin label{margin:3px !important}.sp-container{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);vertical-align:top}.sp-replacer{color:#555;border-color:#ccc;background:#f7f7f7;-webkit-box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(0,0,0,0.08);vertical-align:top}.sp-replacer:focus,.sp-replacer:hover,.sp-replacer.focus,.sp-replacer.hover{background:#fafafa;border-color:#999;color:#222}.sp-replacer:focus,.sp-replacer.focus{-webkit-box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8);box-shadow:0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8)}.sp-replacer.active:focus{-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5),0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5),0 0 0 1px #5b9dd9,0 0 2px 1px rgba(30,140,190,0.8)}.sp-replacer.active,.sp-replacer.active:hover,.sp-replacer:active{background:#eee;border-color:#999;color:#333;-webkit-box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5);box-shadow:inset 0 2px 5px -3px rgba(0,0,0,0.5)}#ui-datepicker-div{z-index:15 !important}.ui-datepicker-header{background-color:#00abef}.redux-dimensions-container select,.redux-dimensions-container .select_wrapper{width:80px !important;float:left}.redux-dimensions-container .field-dimensions-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-dimensions-container .field-dimensions-input input{display:inline-block !important;width:100px !important}.redux-dimensions-container .field-dimensions-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-dimensions-container .select_wrapper{margin-top:6px}}.redux-main .divide{height:20px;line-height:20px;float:none;border-color:#e7e7e7;display:block;width:100%;height:35px !important;line-height:35px !important;position:relative;margin:15px 0 10px 0}.redux-main .divide .inner{width:42% !important;left:40% !important;margin-left:-6%;background-color:#fcfcfc;border-color:#e7e7e7;position:absolute;height:1px;top:50%;width:100%;margin-top:-1px;border-top-width:1px;border-top-style:solid}.redux-main .divide .inner span{background-color:#fcfcfc;border-color:#e7e7e7;height:5px;width:5px;border-width:2px;border-style:solid;display:block;position:absolute;left:50%;margin-left:-5px;margin-top:-5px}.wp-customizer .redux-container-divide .divide .inner{width:82% !important;left:18% !important;margin-left:-8%}.redux-container-editor .mceLayout td{border-width:1px;margin:0;padding:1px}.redux-container-editor input,.redux-container-editor textarea{margin:inherit}.redux-container-editor textarea{border-style:none;border:0;border-width:0}.redux-container-editor .wp-editor-container{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.redux-container-editor .wp-editor-container textarea{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;border-style:inherit}.redux-container-editor .quicktags-toolbar input{margin:2px 1px 4px;display:inline-block;min-width:26px;padding:2px 4px;font:12px/18px Arial, Helvetica, sans-serif normal;color:#464646;border:1px solid #c3c3c3;-webkit-border-radius:3px;border-radius:3px;background:#eee;background-image:-webkit-gradient(linear, left bottom, left top, from(#e3e3e3), to(#fff));background-image:-webkit-linear-gradient(bottom, #e3e3e3, #fff);background-image:-moz-linear-gradient(bottom, #e3e3e3, #fff);background-image:-o-linear-gradient(bottom, #e3e3e3, #fff);background-image:linear-gradient(to top, #e3e3e3, #fff)}.redux-container-image_select .redux-table-container{display:table;table-layout:fixed;width:100%}.redux-container-image_select .redux-image-select{margin:0 !important}.redux-container-image_select .redux-image-select .tiles{display:block;background-color:#fff;background-repeat:repeat;width:40px;height:40px}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select .tiles{border-color:#d9d9d9}.redux-container-image_select .redux-image-select li:last-child{margin-bottom:0}.redux-container-image_select .redux-image-select input[type=\"radio\"]{display:none}.redux-container-image_select .redux-image-select-presets img{width:100%}.redux-container-image_select ul.redux-image-select li{margin:0 10px 3px 10px;display:inline-block;padding:2px 2px;padding-left:0}.redux-container-image_select .redux-image-select-selected{background-color:#f9f9f9}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select-selected img,.redux-container-image_select .redux-image-select .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-width:4px;border-style:solid}.redux-container-image_select .redux-image-select-selected .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-color:#7a7a7a}.redux-info-field{min-height:20px;padding:8px 19px;margin:10px 0;border:1px solid;border-radius:4px;border:1px solid;position:relative}.redux-info-field h1,.redux-info-field h2,.redux-info-field h3,.redux-info-field h4,.redux-info-field h5,.redux-info-field h6{border-bottom:0 !important}.redux-info-field h3{color:#777}.redux-info-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-info-field .redux-info-icon i{font-size:2em}.redux-info-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-info-field.redux-normal{background-color:#eee;border-color:#ccc;color:#666}.redux-info-field.redux-normal i{color:#c5c5c5}.redux-info-field.redux-warning{background-color:#fbeba4;border-color:#d7c281;color:#958234}.redux-info-field.redux-warning i{color:#dcca81}.redux-info-field.redux-success{background-color:#c4ee91;border-color:#71af5d;color:#4d7615}.redux-info-field.redux-success i{color:#a0ca6c}.redux-info-field.redux-critical{background-color:#fba1a3;border-color:#b84f5b;color:#981225}.redux-info-field.redux-critical i{color:#dd767d}.redux-info-field.redux-info{background-color:#d3e4f4;border-color:#a9b6c2;color:#5c80a1}.redux-info-field.redux-info i{color:#afc6da}.redux-notice-field{margin:15px 0 0;background-color:#fff;border:0;border-left:4px solid #f3f3f3;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);padding:1px 12px}.redux-notice-field h1,.redux-notice-field h2,.redux-notice-field h3,.redux-notice-field h4,.redux-notice-field h5,.redux-notice-field h6{border-bottom:0 !important}.redux-notice-field p{margin:0.5em 0;padding:2px}.redux-notice-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-notice-field .redux-info-icon i{font-size:2em}.redux-notice-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-notice-field.redux-info{border-left:4px solid #0099d5}.redux-notice-field.redux-success{border-left:4px solid #7ad03a}.redux-notice-field.redux-warning{border-left:4px solid #fbeba4}.redux-notice-field.redux-critical{border-left:4px solid #dd3d36}.redux-main .redux-field-container.redux-container-info{padding:0}.wp-customizer .hasIcon.redux-notice-field .redux-info-desc,.wp-customizer .hasIcon.redux-info-field .redux-info-desc{display:block;margin-left:43px}.wp-customizer .hasIcon.redux-notice-field .redux-info-icon,.wp-customizer .hasIcon.redux-info-field .redux-info-icon{float:left}.wp-customizer .redux-main .customize-control.customize-control-redux-info{border-bottom:0}.redux-container-link_color .linkColor{display:inline-block;padding-right:10px;padding-bottom:7px}.redux-container-link_color .linkColor strong{display:table;margin-bottom:5px;margin-left:3px;font-size:12px;font-weight:normal;color:#999}.redux-main .redux-media-slider{width:40%;display:inline-block;margin-left:30px}.redux-main .redux-media-filter-container{padding-top:20px}.redux-main .redux-media-filter-container .container-label{margin-bottom:20px;padding-bottom:1px;border-bottom:1px solid #e7e7e7;font-weight:600;font-size:12px;color:#999}.redux-main .redux-media-filter-container .media-filter{display:inline-block;width:47%;margin-bottom:5px}.redux-main .redux-media-filter-container .media-filter label{display:inline-block;width:130px;color:#999}.redux-main .redux-media-filter-container .media-filter label.disabled .filter-value{color:#ccc}.redux-container-multi_text ul.redux-multi-text{margin:0;padding:0}.redux-container-multi_text .redux-multi-text-add{clear:both;margin:5px 0}.redux-container-multi_text a.redux-multi-text-remove.deletion{color:#f00;padding:2px 4px;margin-left:5px}.redux-container-multi_text a.redux-multi-text-remove.deletion:hover{background:#ff0;color:#fff;text-decoration:none}@media screen and (max-width: 782px){.redux-container-multi_text input{clear:both}.redux-container-multi_text .redux-multi-text-remove{margin:0;float:right}}.wp-customizer .redux-container-multi_text .button{float:right}.wp-customizer .redux-container-multi_text .redux-multi-text-remove{float:right;margin-bottom:5px}.wp-customizer .redux-container-multi_text ul.redux-multi-text input{width:100% !important}.redux-container-palette label{border:3px solid transparent;border-color:transparent !important;border-radius:0;width:100% !important;display:block}.redux-container-palette label.ui-button.ui-widget{width:95%;background:none;padding:0;display:flex}.redux-container-palette label.ui-button.ui-widget .ui-checkboxradio-icon,.redux-container-palette label.ui-button.ui-widget .ui-checkboxradio-icon-space{display:none}.redux-container-palette label.ui-button.ui-widget span{padding:10px;flex-grow:1;font-size:0;line-height:10px;color:rgba(0,0,0,0);-webkit-transition:all 200ms ease-in-out;-moz-transition:all 200ms ease-in-out;-ms-transition:all 200ms ease-in-out;-o-transition:all 200ms ease-in-out;transition:all 200ms ease-in-out;text-shadow:0}.redux-container-palette label.ui-button.ui-widget span:hover{flex-grow:3;font-weight:bold;min-width:60px;font-size:12px;line-height:10px;color:#333;text-shadow:0 0 8px #fff, 0 0 8px #fff}.redux-container-palette label.ui-state-active{border:3px solid #333 !important}.wp-customizer .redux-main .redux-container-palette label{margin-bottom:3px}.redux-main .form-table-section-indented{width:95%;margin-left:5% !important}.redux-main .form-table-section tr:first-of-type th:first-of-type{padding:0px !important}.redux-main h3{margin-top:10px}.redux-main .form-table-section-indented>tbody>tr:first-child{display:none}.redux-main .form-table-section-indented>tbody>tr:nth-last-child(2){border-bottom:0}.redux-container-select li.ui-state-highlight{height:20px;margin-top:2px;margin-left:5px;width:64px;margin-bottom:0}.select2-search__field{width:none !important}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove,.select2-container--classic .select2-selection--single .select2-selection__clear{font-size:1.2em}.redux-container-select_image{margin-top:2px;margin-left:5px;width:100%;margin-bottom:0}.redux-preview-image{max-height:250px;max-width:250px;padding:5px;margin-top:10px;border:1px solid #e3e3e3;background:#f7f7f7;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.redux-container-slider .redux-slider-container{margin-left:25px;margin-right:25px;width:200px;display:inline-block;vertical-align:middle}.redux-container-slider .redux-slider-input,.redux-container-slider .redux-slider-select-one,.redux-container-slider .redux-slider-select-two{width:100px !important;text-align:center}.redux-container-slider .redux-slider-label{position:absolute;margin-left:-5px}.redux-container-slider .redux-slider-label-one{position:absolute;margin-left:-22px}.redux-container-slider .redux-slider-label-two{position:absolute;margin-top:-21px;margin-left:245px}@media screen and (max-width: 782px){.redux-container-slider input{display:inline-block !important}}@media screen and (max-width: 570px){.redux-container-slider{text-align:center}.redux-container-slider input,.redux-container-slider select,.redux-container-slider .redux-slider-label,.redux-container-slider .select2-container{display:block !important;position:inherit;margin:10px auto}.redux-container-slider .redux-slider-container{margin-top:3px;width:80%}}.wp-customizer .redux-container-slider .redux-slider-label{float:left;position:inherit;width:25%;text-align:center;margin-left:0}.wp-customizer .redux-container-slider .redux-slider-input,.wp-customizer .redux-container-slider .redux-slider-select-one,.wp-customizer .redux-container-slider .redux-slider-select-two{width:25% !important}.wp-customizer .redux-container-slider .redux-slider-container{width:70%;margin-right:0;margin-left:5%}.redux-container-slides .redux-slides-list .select2-container{margin-bottom:10px;width:100%}.redux-container-slides .ui-accordion-header{margin-bottom:0}.redux-container-slides .full-text,.redux-container-slides .large-text{width:100%}.redux-container-slides .redux-slides-accordion-group{border:1px solid #dfdfdf !important;border-radius:3px !important;margin-top:0px !important;margin-bottom:10px;background:#f9f9f9;padding:5px}.redux-container-slides .redux-slides-accordion-group h3{border:1px solid #dfdfdf;cursor:move !important;font-weight:bold;padding:0 10px !important;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-ms-linear-gradient(top, #f9f9f9, #ececec);background-image:-moz-linear-gradient(top, #f9f9f9, #ececec);background-image:-o-linear-gradient(top, #f9f9f9, #ececec);background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-slides #redux-slides-accordion .redux-slides-image{height:250px;padding:5px;margin-top:10px;margin-bottom:10px;border:1px solid #e3e3e3;background:#f7f7f7;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.redux-container-slides .redux-slides-add{float:right;margin-right:10%;display:block;margin-bottom:10px}.redux-container-slides .redux-slides-remove{color:#ef521d !important;float:right;margin-top:5px}.redux-container-slides .redux-slides-header{font-weight:bold}.redux-container-slides .redux_slides_add_remove{margin-bottom:10px}.redux-container-slides input{width:100% !important}.wp-customizer .redux-container-slides .ui-accordion .ui-accordion-content{padding:10px}.redux-container-sortable i.el,.redux-container-sortable i.dashicons-menu{cursor:move;padding-top:5px}.redux-container-sortable label{margin-right:10px}.redux-container-sortable label.bugger{margin-bottom:0px !important;font-size:12px !important;color:#999}.redux-container-sortable input{margin-right:10px}.redux-container-sortable .checkbox-container{width:100%}.redux-container-sortable .checkbox-container label{margin-bottom:2px !important;cursor:inherit}.redux-container-sortable .checkbox-container .drag{float:right;margin-left:10px}.redux-container-sortable ul.checkbox li{padding:5px 10px;border:1px solid #333;background:#fff;margin-bottom:5px !important}.redux-container-sortable ul.checkbox li .dashicons.visibility{padding-top:4px;margin-right:10px;cursor:pointer}.redux-container-sortable ul.checkbox li.invisible{color:#aaa;border:1px dashed #aaa}.redux-container-sortable ul.checkbox li.invisible .dashicons.visibility{color:#aaa}.redux-container-sortable ul.labeled li{line-height:1.4em !important}.redux-container-sortable li{line-height:30px !important}.redux-container-sortable li.ui-state-highlight{height:30px;width:364px;margin-bottom:13px}.redux-container-sortable li.placeholder{height:30px;margin:10px 0}.wp-customizer .redux-sortable input[type=\"text\"]{width:92%}.wp-customizer .redux-sortable i.el{margin-left:5px}.wp-customizer .redux-container-sortable .checkbox-container{width:inherit}.wp-customizer .redux-container-sortable .ui-draggable-handle{margin-left:3%}.redux-container-sorter{margin-right:-20px}.redux-container-sorter ul{background:#f9f9f9;border:1px solid #e3e3e3;min-height:40px;padding:10px 10px 0;width:145px;float:left;margin:0 15px 0 0}.redux-container-sorter ul.filled{opacity:0.7;filter:alpha(opacity=70);background:#efecec}.redux-container-sorter ul li{border:1px solid #dfdfdf;cursor:move;font-weight:bold;margin-bottom:10px !important;padding:0 10px;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-ms-linear-gradient(top, #f9f9f9, #ececec);background-image:-moz-linear-gradient(top, #f9f9f9, #ececec);background-image:-o-linear-gradient(top, #f9f9f9, #ececec);background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-sorter ul li h3{margin:0 0 10px;text-align:center;color:#777;text-transform:capitalize;word-wrap:break-word}.redux-container-sorter ul li.placeholder{height:40px}.wp-customizer .redux-container-sorter ul{width:85%;margin:0 0 5px 0}.redux-container-spacing select,.redux-container-spacing .select_wrapper{width:80px !important;float:left}.redux-container-spacing .field-spacing-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-container-spacing .field-spacing-input input{display:inline-block !important;width:70px !important}.redux-container-spacing .field-spacing-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-container-spacing .select_wrapper{margin-top:6px}}.redux-container-spinner .spinner-wrpr{position:relative;display:block;height:30px;overflow:hidden}.redux-container-spinner .spinner-wrpr .spinner-input{position:relative !important;z-index:1;width:75px !important;height:30px !important;background:#eee !important;border:1px solid #bfbfbf !important;border-right:0 !important;border-left:0 !important;-webkit-border-radius:0 !important;-moz-border-radius:0 !important;border-radius:0 !important}.redux-container-spinner .ui-spinner{position:static;display:inline}.redux-container-spinner .ui-spinner-buttons{position:absolute;padding:0}.redux-container-spinner .ui-widget .ui-spinner-button{color:#fff;position:absolute;top:0;padding:0 0 30px;overflow:hidden;cursor:pointer;background:-moz-linear-gradient(#fff, #f3f3f3);background:-o-linear-gradient(#fff, #f3f3f3);background:-webkit-gradient(linear, left top, left bottom, from(#fff), to(#f3f3f3));background:linear-gradient(#fff, #f3f3f3);background-color:#fff;border:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.redux-container-spinner .ui-spinner-button:hover,.redux-container-spinner .ui-state-hover{background:-moz-linear-gradient(#f3f3f3, #fff);background:-o-linear-gradient(#f3f3f3, #fff);background:-webkit-gradient(linear, left top, left bottom, from(#f3f3f3), to(#fff));background:linear-gradient(#f3f3f3, #fff);background-color:#f3f3f3}.redux-container-spinner .ui-corner-tr,.redux-container-spinner .ui-spinner-button .ui-icon-triangle-1-n{-webkit-border-radius:0 5px 5px 0;-moz-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.redux-container-spinner .ui-corner-br,.redux-container-spinner .ui-spinner-button .ui-icon-triangle-1-s{-webkit-border-radius:5px 0 0 5px;-moz-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.redux-container-spinner .ui-spinner-button .ui-icon{top:0;display:block;width:28px;height:28px;margin:0;border:1px solid #b7b7b7;background-image:initial;text-indent:0;text-align:center;font-size:18px;line-height:26px}.dp-numberPicker,.dp-numberPicker-add,.dp-numberPicker-sub,.dp-numberPicker-input{display:inline-block;box-sizing:border-box;-moz-box-sizing:border-box;text-align:center;vertical-align:top;height:30px}.dp-numberPicker{border-radius:3px}.redux-container .redux-container-spinner .dp-numberPicker-add,.redux-container .redux-container-spinner .dp-numberPicker-sub{width:30px;font-size:21px;cursor:pointer;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;background-color:#33b5e5;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);height:29px !important}.redux-container .redux-container-spinner .dp-numberPicker-add.disabled,.redux-container .redux-container-spinner .dp-numberPicker-sub.disabled{background-color:#2c6a81}.dp-numberPicker-add{border-top-right-radius:3px;border-bottom-right-radius:3px}.dp-numberPicker-sub{border-top-left-radius:3px;border-bottom-left-radius:3px}.dp-numberPicker-input{width:70px;background-color:#eee;border:0;margin:0 !important;box-shadow:inset 0px 1px 1px rgba(255,255,255,0.5),inset 0px -1px 1px rgba(0,0,0,0.5)}.dp-numberPicker-input:disabled{background-color:#eee}.redux-container-switch .switch-options{min-height:30px;margin-right:10px}.redux-container-switch .switch-options label{cursor:pointer}.redux-container-switch .switch-options input{display:none}.redux-container-switch .cb-enable,.redux-container-switch .cb-disable{padding:0 10px;border-width:1px;border-style:solid;-webkit-appearance:none;white-space:nowrap;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.redux-container-switch .cb-enable span,.redux-container-switch .cb-disable span{line-height:30px;display:block;font-weight:700;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-o-user-select:none;-ms-user-select:none;user-select:none}.redux-container-switch .cb-enable,.redux-container-switch .cb-disable,.redux-container-switch .cb-enable span,.redux-container-switch .cb-disable span{display:block;float:left}.redux-container-switch .cb-enable{border-right:0;border-radius:3px 0px 0px 3px;-moz-border-radius:3px 0px 0px 3px;-webkit-border-radius:3px 0px 0px 3px}.redux-container-switch .cb-enable.selected{color:#fff}.redux-container-switch .cb-disable{border-left:0;border-radius:0px 3px 3px 0px;-moz-border-radius:0px 3px 3px 0px;-webkit-border-radius:0px 3px 3px 0px}.redux-container-switch .cb-disable.selected{color:#fff}.redux-container-text label{display:block;position:relative;font-size:12px !important;text-align:left;color:#999;margin:4px 0 2px 0 !important;cursor:default;top:5px;width:100px}.redux-container-text input{clear:left}.redux-container-text .input_wrapper{display:block;position:relative;padding:0;width:23%;max-width:23%;min-width:70px;float:left;clear:left;height:57px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.wp-customizer .redux-container-text .input_wrapper{width:100%;max-width:100%;height:auto}.redux-main .redux-typography-container{display:block;position:relative;margin:0;padding:0;width:100%;max-width:660px}.redux-main .redux-typography-container .redux-typography-slider{margin-top:11px;width:auto}.redux-main .redux-typography-container .clearfix{clear:both}.redux-main .redux-typography-container .clearfix::after{visibility:hidden;display:block;font-size:0;content:\" \";clear:both;height:0}.redux-main .redux-typography-container input.wp-picker-default,.redux-main .redux-typography-container .redux-typography-color{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;height:24px;padding:0 14px !important;margin-top:0;margin-bottom:0;font-size:12px !important}.redux-main .redux-typography-container .select_wrapper{display:block;position:relative;float:left;clear:none;margin:0 10px 0 0;width:48% !important;min-width:210px !important;max-width:324px !important;height:57px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-typography-container .select_wrapper:nth-child(odd){margin-right:10px !important}.redux-main .redux-typography-container .select_wrapper:nth-child(even){margin-right:10px !important}.redux-main .redux-typography-container .select_wrapper.typography-family .select2-container{width:100%}.redux-main .redux-typography-container .select_wrapper .redux-typography{font-size:14px !important;display:block;float:left;height:28px !important;line-height:50px !important;padding:0 !important;width:100% !important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box}.redux-main .redux-typography-container .wp-picker-container{float:left;clear:left;margin-bottom:12px;padding:3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.redux-main .redux-typography-container .input_wrapper{display:block;position:relative;margin:0 4px 0 5px;padding:0;width:23%;max-width:23%;min-width:70px;float:left;clear:none;height:57px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.redux-main .redux-typography-container .input_wrapper.margin-top,.redux-main .redux-typography-container .input_wrapper.margin-bottom{margin-left:0px}.redux-main .redux-typography-container .input_wrapper.font-size{margin-left:0}.redux-main .redux-typography-container .input_wrapper input.mini{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;width:78%;text-align:center;margin:0;height:28px;top:3px;padding:0 2px 0 5px;text-decoration:none;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.redux-main .redux-typography-container .picker-wrapper{display:block;position:relative;margin:0;padding:0;width:100%;min-width:100%;clear:none;height:57px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box;box-sizing:border-box;vertical-align:baseline}.redux-main .redux-typography-container label{position:relative;font-size:12px !important;text-align:left;color:#999;width:100%;cursor:default}.redux-main .redux-typography-container .typography-preview{display:none;width:100%;border:1px dotted #d3d3d3;max-width:850px;padding:10px;font-size:10pt;height:auto;margin:5px 0 10px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.redux-main .redux-typography-container .typography-color{border:0 none;margin:0}.redux-main .redux-typography-container ::-webkit-input-placeholder{line-height:19px}@media screen and (max-width: 540px){.redux-main .redux-main .redux-typography-container{max-width:230px;margin:0 auto}.redux-main .redux-main .redux-typography-container .select_wrapper{max-width:210px;min-width:210px;width:210px;margin-left:0 !important;margin-right:0 !important}.redux-main .redux-main .redux-typography-container .input_wrapper{max-width:101px;min-width:101px;width:101px;margin-left:0 !important;margin-right:5px !important}.redux-main .redux-main .redux-typography-container .input_wrapper input.mini{width:73%}.redux-main .redux-main .redux-typography-container .input-append .add-on{width:30%;padding:5px !important}.redux-main .redux-main .redux-main .wp-picker-container .wp-picker-input-wrap{margin-top:7px}}@media screen and (max-width: 360px){.redux-main .redux-typography-container .iris-picker .iris-square{margin-right:3%}}.wp-customizer .redux-typography-container .input_wrapper{width:40%;max-width:40%;min-width:20%}.wp-customizer .redux-typography-container .input_wrapper input.mini{width:70%}.wp-customizer .redux-typography-container .select_wrapper{width:100% !important}.wp-customizer .redux-container{overflow:visible}.wp-customizer .redux-container .redux-main input{margin:0 !important}.wp-customizer .redux-container .redux-main input.spinner-input{margin-right:30px !important;margin-left:30px !important;margin-top:0px !important}.wp-customizer .redux-container .redux-main .redux-container-editor .wp-editor-area{color:#000000}.wp-customizer .redux-section.open .redux-group-tab{display:block !important}.wp-customizer .redux-section p.customize-section-description{margin-top:22px;word-break:break-word}.wp-customizer .redux-section p.customize-section-description.legacy{margin-top:7px}.wp-customizer .control-section-themes .accordion-section-title{margin:0}.wp-customizer #customize-controls .description{display:block}.wp-customizer #customize-controls .customize-info{margin-bottom:0}.wp-customizer #customize-controls .redux-section .accordion-section-content{background:#fcfcfc}.wp-customizer .redux-section .accordion-section-title i,.wp-customizer .redux-field .accordion-field-title i,.wp-customizer .redux-panel .accordion-section-title i{margin-right:5px}.wp-customizer .accordion-section.redux-main{background:inherit;margin-left:inherit;border-left:inherit;-moz-box-shadow:inherit;-webkit-box-shadow:inherit;padding:inherit;box-shadow:inherit}.wp-customizer .redux_field_th{padding:13px 0px 0px 0px}.wp-customizer .redux-main .redux-field-container{padding:10px 0}.wp-customizer .redux-main .select_wrapper{float:none;width:100%;display:inline-block}.wp-customizer .redux-main .select2-container{margin-right:0 !important;margin-bottom:5px !important;width:100% !important}.wp-customizer .redux-main .select_wrapper:nth-child(odd){margin-right:0}.wp-customizer .redux-main .redux-option-image{max-width:42% !important;margin-right:3%}.wp-customizer .redux-main .customize-control{border-bottom:1px solid #ddd;padding-bottom:4px}.wp-customizer .redux-main .customize-control:last-child{border-bottom:0;padding-bottom:0}.wp-customizer .redux-main .upload{width:100% !important}.wp-customizer .redux-main h3{margin-top:inherit}.wp-customizer .redux-main .redux-container-raw{margin-top:22px;word-break:break-word;padding:0 !important}.wp-customizer .redux-main .redux-container-password input{width:100%}.wp-customizer .select2-drop,.wp-customizer .select2-container{z-index:999999}.wp-customizer .customize-control-redux-raw{list-style:none}.redux_field_th{padding-bottom:0px !important}.redux-group-tab{margin-bottom:0 !important}.block-editor-page .postbox.closed .el:before{content:\"\" !important}.block-editor-page .postbox .el:before{content:\"\"}.postbox .redux-container{filter:none;border:none;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.postbox .redux-container .redux-group-menu .active a{background:#FFF}.postbox .redux-container .redux-section-title{padding-left:0 !important;margin-bottom:15px !important}.postbox .redux-container .redux-section-desc{margin-bottom:20px}.postbox .redux-container .redux_main{border-left:1px solid #D8D8D8;moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.postbox .redux-container .redux_main input[type=text]{width:95%}.postbox .redux-container.redux-no-sections{margin:0;background:none}.postbox .redux-container.redux-no-sections .redux-main{background:none;margin-left:inherit;padding:inherit;border-left:none !important;min-height:0 !important}.postbox .redux-container.redux-no-sections .redux-main tr:last-child{border-bottom:none}.postbox .redux-container.redux-no-sections .redux-main tr:last-child th,.postbox .redux-container.redux-no-sections .redux-main tr:last-child td{padding-bottom:0}.postbox .redux-container.redux-no-sections .redux-main tr td{padding-top:10px !important;width:100%}.postbox .redux-container.redux-no-sections .redux-main .form-table:first-child tr:first-child td{padding-top:0 !important}.postbox .redux-container.redux-no-sections .redux-main .redux-field{margin-bottom:10px !important}.postbox .redux-container.redux-no-sections .redux-main .redux-field:last-child{margin-bottom:0 !important}.postbox .redux-container.redux-has-sections .redux-main{background:#fff}.postbox .redux-container.redux-has-sections .redux-main span.description{padding-bottom:20px}.postbox .redux-main h3{cursor:text !important;-webkit-user-select:inherit !important;-moz-user-select:inherit !important;user-select:inherit !important;padding-left:0 !important}.redux-box-side .redux-main .redux-field-container{padding:0;padding-top:5px}.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:100% !important}.redux-box-side .form-table tr td{padding:15px 0 !important}.redux-box-side .form-table tr:last-child td{padding-bottom:0 !important}.redux-box-side .form-table tr:first-child td{padding-top:5px !important}#poststuff .redux-metabox h3.hndle,.metabox-holder .redux-metabox h3.hndle{cursor:pointer;border-bottom:0}.display-group{display:inherit !important}@media (min-width: 1125px) and (max-width: 1405px){.postbox table.form-table,.postbox .form-table>thead,.postbox .form-table>tbody,.postbox .form-table>tbody>tr>th,.postbox .form-table>tbody>tr>td,.postbox .form-table>tbody>tr{display:block !important;width:100% !important;padding:0px !important}.postbox table.form-table.hide,.postbox .form-table>thead.hide,.postbox .form-table>tbody.hide,.postbox .form-table>tbody>tr>th.hide,.postbox .form-table>tbody>tr>td.hide,.postbox .form-table>tbody>tr.hide{display:none !important}.postbox .form-table>tbody>tr>th,.postbox .form-table>tbody>tr>td{padding:10px !important}.postbox .form-table>tbody>tr>th{width:35%}}.redux-metabox .form-table th,.redux-metabox .form-table td{margin:0;padding:0}.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:96% !important}@media (max-width: 1405px){.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:92% !important}}@media (max-width: 1125px){.redux-box-side .redux-main .redux-field-container .select2-container,.redux-box-side .redux-main .redux-field-container select{width:100% !important}}@media (max-width: 1405px){.redux-main .form-table>tbody>tr>td{padding-top:0 !important;padding-bottom:0 !important}.redux-main .redux-field-container{padding:0 0 20px 0 !important;padding-bottom:10px !important}.postbox .form-table>tbody>tr>th{padding-bottom:0 !important}.redux_field_th{padding-top:0 !important;padding-bottom:10px !important}}.redux-no-sections .redux-group-tab{display:block !important}.admin-color-fresh #poststuff .redux-metabox h3.hndle,.admin-color-fresh .metabox-holder .redux-metabox h3.hndle{background:#222;color:#fff}.admin-color-light #poststuff .redux-metabox h3.hndle,.admin-color-light .metabox-holder .redux-metabox h3.hndle{background:#888;color:#fff}.admin-color-blue #poststuff .redux-metabox h3.hndle,.admin-color-blue .metabox-holder .redux-metabox h3.hndle{background:#096484;color:#fff}.admin-color-coffee #poststuff .redux-metabox h3.hndle,.admin-color-coffee .metabox-holder .redux-metabox h3.hndle{background:#46403c;color:#fff}.admin-color-ectoplasm #poststuff .redux-metabox h3.hndle,.admin-color-ectoplasm .metabox-holder .redux-metabox h3.hndle{background:#413256;color:#fff}.admin-color-midnight #poststuff .redux-metabox h3.hndle,.admin-color-midnight .metabox-holder .redux-metabox h3.hndle{background:#363b3f;color:#fff}.admin-color-ocean #poststuff .redux-metabox h3.hndle,.admin-color-ocean .metabox-holder .redux-metabox h3.hndle{background:#627c83;color:#fff}.admin-color-sunrise #poststuff .redux-metabox h3.hndle,.admin-color-sunrise .metabox-holder .redux-metabox h3.hndle{background:#b43c38;color:#fff}.redux-notices{margin-bottom:0;border:0}.redux-metabox .redux-container{margin-top:0}.redux-metabox .inside{margin:0 !important;padding:0 !important}.redux-metabox .redux-no-sections .redux-main{padding:6px 15px 15px 15px !important}.redux-metabox .redux-no-sections .redux-main .default_br{display:none}.redux-metabox .redux-no-sections .redux-main .redux-field-container{padding:10px 0 20px !important}.redux-metabox .redux-no-sections .redux-main .redux_field_th{padding-top:5px !important}.redux-metabox .redux-no-sections.redux-box-side .redux-main{padding:6px 8px 8px 8px !important}.redux-metabox .redux-no-sections.redux-box-side .redux-main input[type=text]{width:100% !important}.wp-color-result{margin:0 6px 0 0px !important}.redux-container .ui-button-text-only .ui-button-text{padding:0}.wpseotab tr{display:table-row !important}.redux_field_search{position:absolute;width:250px !important;right:20px;padding:4px 7px;top:6px}.redux-has-sections .redux_field_search{right:10px}.redux-main.redux-search .redux-section-field,.redux-main.redux-search .redux-info-field,.redux-main.redux-search .redux-notice-field,.redux-main.redux-search .redux-container-group,.redux-main.redux-search .redux-container-raw,.redux-main.redux-search .redux-section-desc,.redux-main.redux-search .redux-group-tab h3,.redux-main.redux-search .hr,.redux-main.redux-search .redux-field-info,.redux-main.redux-search tr{display:none}.redux-main.redux-search #import_export_default_section_group,.redux-main.redux-search #dev_mode_default_section_group{display:none !important}.redux-main.redux-search .redux-group-tab{margin-bottom:0}.redux-main.redux-search .redux-group-tab .form-table-section-indented{margin-left:0 !important;width:100%}.redux-main.redux-search .redux-group-tab .form-table-section-indented .redux-group-tab .form-table-section tr:first-of-type th:first-of-type{padding:inherit !important}.redux-main.redux-search .redux-group-tab .form-table-section-indented .redux-group-tab h3{margin-top:inherit !important}.redux-metabox .redux-has-sections .redux_field_search{top:8px}.redux-container-import_export #redux-import-link-wrapper,.redux-container-import_export #redux-import-code-wrapper{display:none}.redux-container-import_export #redux-export-code,.redux-container-import_export #redux-export-link-value,.redux-container-import_export #redux-import-upload-file{display:none}.redux-container-import_export #redux-import-action span{color:#b94a48}.redux-container-import_export #redux-import-upload span{font-weight:bold}.redux-container-repeater{padding:15px 20px;margin-bottom:7px;padding-top:0}.redux-container-repeater h4{margin:5px 0px 0px 0px}.redux-container-repeater h4:first-child{margin-top:0px}.redux-container-repeater .description{margin:5px 0 5px 0px}.redux-container-repeater .redux-repeater-accordion{width:100%}.redux-container-repeater .redux-repeater-accordion .ui-state-focus{outline:none}.redux-container-repeater .redux-repeater-accordion-repeater{margin-bottom:10px}.redux-container-repeater .redux-repeater-accordion-repeater>div{border:1px solid #dfdfdf !important;border-radius:0 !important;margin-top:0px !important;padding:10px}.redux-container-repeater .redux-repeater-accordion-repeater h3.ui-accordion-header{border:1px solid #dfdfdf;cursor:move;font-weight:bold;padding:0 10px;height:40px;line-height:40px;background-color:#f1f1f1;background-image:-ms-linear-gradient(top, #f9f9f9, #ececec);background-image:-moz-linear-gradient(top, #f9f9f9, #ececec);background-image:-o-linear-gradient(top, #f9f9f9, #ececec);background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center;margin-bottom:0}.redux-container-repeater .redux-repeaters-add{float:right}.redux-container-repeater .redux-repeaters-add:after{clear:both}.redux-container-repeater .redux-repeaters-remove{color:#ef521d !important;float:right}.redux-container-repeater .redux-repeaters-remove:after{clear:both}.redux-container-repeater .redux-repeater-header{font-weight:bold}.redux-container-repeater .redux_repeaters_add_remove{margin-bottom:10px}.redux-container-repeater .redux-field-container{padding:0 0 10px 0}.redux-container-repeater .redux-field-container:last-child{padding-bottom:0}.redux-container-repeater .ui-accordion .ui-accordion-content{padding:1em}.redux-container-repeater .redux-container-sorter{margin-right:0 !important}#poststuff .redux-container-repeater h3{padding:0;cursor:move !important;line-height:40px}#redux-object-browser{overflow:auto;word-wrap:break-word;max-height:600px;max-width:100%}\n"]}
redux-core/assets/js/redux-vendors.js CHANGED
@@ -132,8 +132,8 @@
132
 
133
  $.fn.alpha = function( settings ) {
134
 
135
- var defaultAlphaSettings = getCombinedSettingsAlphaNum( "alpha" );
136
- var combinedSettings = getCombinedSettingsAlphaNum( settings, defaultAlphaSettings );
137
 
138
  var $collection = this;
139
 
@@ -145,7 +145,7 @@
145
  $.fn.numeric = function( settings ) {
146
 
147
  var combinedSettings = getCombinedSettingsNum( settings );
148
- var $collection = this;
149
 
150
  setupEventHandlers( $collection, trimNum, combinedSettings );
151
 
@@ -174,7 +174,7 @@
174
  allowLatin: true, // a-z A-Z
175
  allowOtherCharSets: true, // eg �, �, Arabic, Chinese etc
176
  maxLength: NaN // eg Max Length
177
- }
178
 
179
  var DEFAULT_SETTINGS_NUM = {
180
  allowPlus: false, // Allow the + sign
@@ -186,38 +186,38 @@
186
  maxPreDecimalPlaces: NaN, // The max number digits before the decimal point
187
  max: NaN, // The max numeric value allowed
188
  min: NaN // The min numeric value allowed
189
- }
190
 
191
  // Some pre-defined groups of settings for convenience
192
  var CONVENIENCE_SETTINGS_ALPHANUM = {
193
- "alpha": {
194
  allowNumeric: false
195
- }, "upper": {
196
  allowNumeric: false, allowUpper: true, allowLower: false, allowCaseless: true
197
- }, "lower": {
198
  allowNumeric: false, allowUpper: false, allowLower: true, allowCaseless: true
199
  }
200
  };
201
 
202
  // Some pre-defined groups of settings for convenience
203
  var CONVENIENCE_SETTINGS_NUMERIC = {
204
- "integer": {
205
  allowPlus: false, allowMinus: true, allowThouSep: false, allowDecSep: false
206
- }, "positiveInteger": {
207
  allowPlus: false, allowMinus: false, allowThouSep: false, allowDecSep: false
208
  }
209
  };
210
 
211
- var BLACKLIST = getBlacklistAscii() + getBlacklistNonAscii();
212
- var THOU_SEP = ",";
213
- var DEC_SEP = ".";
214
- var DIGITS = getDigitsMap();
215
  var LATIN_CHARS = getLatinCharsSet();
216
 
217
  // Return the blacklisted special chars that are encodable using 7-bit ascii
218
  function getBlacklistAscii() {
219
  var blacklist = '!@#$%^&*()+=[]\\\';,/{}|":<>?~`.-_';
220
- blacklist += " "; // 'Space' is on the blacklist but can be enabled using the 'allowSpace' config entry
221
  return blacklist;
222
  }
223
 
@@ -226,10 +226,10 @@
226
  // Higher order chars must be escaped eg "\xAC"
227
  // Not too worried about comments containing higher order characters for now (let's wait and see if it becomes a problem)
228
  function getBlacklistNonAscii() {
229
- var blacklist = "\xAC" // �
230
- + "\u20AC" // �
231
- + "\xA3" // �
232
- + "\xA6" // �
233
  ;
234
  return blacklist;
235
  }
@@ -244,11 +244,12 @@
244
 
245
  var $textbox = $( this );
246
 
247
- $textbox.on( "keyup change paste", function( e ) {
248
 
249
- var pastedText = "";
250
 
251
- if ( e.originalEvent && e.originalEvent.clipboardData && e.originalEvent.clipboardData.getData ) pastedText = e.originalEvent.clipboardData.getData( "text/plain" )
 
252
 
253
  // setTimeout is necessary for handling the 'paste' event
254
  setTimeout( function() {
@@ -256,11 +257,11 @@
256
  }, 0 );
257
  } );
258
 
259
- $textbox.on( "keypress", function( e ) {
260
 
261
  // Determine which key is pressed.
262
  // If it's a control key, then allow the event's default action to occur eg backspace, tab
263
- var charCode = ! e.charCode ? e.which : e.charCode;
264
  if ( isControlKey( charCode ) || e.ctrlKey || e.metaKey ) // cmd on MacOS
265
  return;
266
 
@@ -268,8 +269,8 @@
268
 
269
  // Determine if some text was selected / highlighted when the key was pressed
270
  var selectionObject = $textbox.selection();
271
- var start = selectionObject.start;
272
- var end = selectionObject.end;
273
 
274
  var textBeforeKeypress = $textbox.val();
275
 
@@ -284,7 +285,7 @@
284
  // Unfortunately, it isn't enough to just check if the new char is valid because some chars
285
  // are position sensitive eg the decimal point '.'' or the minus sign '-'' are only valid in certain positions.
286
  var potentialTextAfterKeypress = textBeforeKeypress.substring( 0, start ) + newChar + textBeforeKeypress.substring( end );
287
- var validatedText = trimFunction( potentialTextAfterKeypress, settings );
288
 
289
  // If the keypress would cause the textbox to contain invalid characters, then cancel the keypress event
290
  if ( validatedText != potentialTextAfterKeypress ) e.preventDefault();
@@ -297,20 +298,20 @@
297
  // This catches the case where a user enters '-' or '.' without entering any digits
298
  function numericField_Blur( inputBox, settings ) {
299
  var fieldValueNumeric = parseFloat( $( inputBox ).val() );
300
- var $inputBox = $( inputBox );
301
 
302
  if ( isNaN( fieldValueNumeric ) ) {
303
- $inputBox.val( "" );
304
  return;
305
  }
306
 
307
- if ( isNumeric( settings.min ) && fieldValueNumeric < settings.min ) $inputBox.val( "" );
308
 
309
- if ( isNumeric( settings.max ) && fieldValueNumeric > settings.max ) $inputBox.val( "" );
310
  }
311
 
312
  function isNumeric( value ) {
313
- return ! isNaN( value );
314
  }
315
 
316
  function isControlKey( charCode ) {
@@ -331,7 +332,7 @@
331
 
332
  var inputString = $textBox.val();
333
 
334
- if ( inputString == "" && pastedText.length > 0 ) inputString = pastedText;
335
 
336
  var outputString = trimFunction( inputString, settings );
337
 
@@ -346,20 +347,21 @@
346
  }
347
 
348
  function getCombinedSettingsAlphaNum( settings, defaultSettings ) {
349
- if ( typeof defaultSettings == "undefined" ) defaultSettings = DEFAULT_SETTINGS_ALPHANUM;
350
  var userSettings, combinedSettings = {};
351
- if ( typeof settings === "string" ) userSettings = CONVENIENCE_SETTINGS_ALPHANUM[settings]; else if ( typeof settings == "undefined" ) userSettings = {}; else userSettings = settings;
352
 
353
  $.extend( combinedSettings, defaultSettings, userSettings );
354
 
355
- if ( typeof combinedSettings.blacklist == 'undefined' ) combinedSettings.blacklistSet = getBlacklistSet( combinedSettings.allow, combinedSettings.disallow );
 
356
 
357
  return combinedSettings;
358
  }
359
 
360
  function getCombinedSettingsNum( settings ) {
361
  var userSettings, combinedSettings = {};
362
- if ( typeof settings === "string" ) userSettings = CONVENIENCE_SETTINGS_NUMERIC[settings]; else if ( typeof settings == "undefined" ) userSettings = {}; else userSettings = settings;
363
 
364
  $.extend( combinedSettings, DEFAULT_SETTINGS_NUM, userSettings );
365
 
@@ -373,21 +375,21 @@
373
 
374
  if ( settings.allow.indexOf( Char ) >= 0 ) return true;
375
 
376
- if ( settings.allowSpace && (Char == " ") ) return true;
377
 
378
  if ( settings.blacklistSet.contains( Char ) ) return false;
379
 
380
- if ( ! settings.allowNumeric && DIGITS[Char] ) return false;
381
 
382
- if ( ! settings.allowUpper && isUpper( Char ) ) return false;
383
 
384
- if ( ! settings.allowLower && isLower( Char ) ) return false;
385
 
386
- if ( ! settings.allowCaseless && isCaseless( Char ) ) return false;
387
 
388
- if ( ! settings.allowLatin && LATIN_CHARS.contains( Char ) ) return false;
389
 
390
- if ( ! settings.allowOtherCharSets ) {
391
  if ( DIGITS[Char] || LATIN_CHARS.contains( Char ) ) return true; else return false;
392
  }
393
 
@@ -429,17 +431,17 @@
429
  function countDigits( string ) {
430
 
431
  // Error handling, nulls etc
432
- string = string + "";
433
 
434
  // Count the digits
435
- return string.replace( /[^0-9]/g, "" ).length;
436
  }
437
 
438
  function isMaxDigitsReached( string, settings ) {
439
 
440
  var maxDigits = settings.maxDigits;
441
 
442
- if ( maxDigits == "" || isNaN( maxDigits ) ) return false; // In this case, there is no maximum
443
 
444
  var numDigits = countDigits( string );
445
 
@@ -452,14 +454,14 @@
452
 
453
  var maxDecimalPlaces = settings.maxDecimalPlaces;
454
 
455
- if ( maxDecimalPlaces == "" || isNaN( maxDecimalPlaces ) ) return false; // In this case, there is no maximum
456
 
457
  var indexOfDecimalPoint = string.indexOf( DEC_SEP );
458
 
459
- if ( indexOfDecimalPoint == - 1 ) return false;
460
 
461
  var decimalSubstring = string.substring( indexOfDecimalPoint );
462
- var numDecimals = countDigits( decimalSubstring );
463
 
464
  if ( numDecimals >= maxDecimalPlaces ) return true;
465
 
@@ -470,7 +472,7 @@
470
 
471
  var maxPreDecimalPlaces = settings.maxPreDecimalPlaces;
472
 
473
- if ( maxPreDecimalPlaces == "" || isNaN( maxPreDecimalPlaces ) ) return false; // In this case, there is no maximum
474
 
475
  var indexOfDecimalPoint = string.indexOf( DEC_SEP );
476
 
@@ -485,7 +487,7 @@
485
 
486
  function isGreaterThanMax( numericString, settings ) {
487
 
488
- if ( ! settings.max || settings.max < 0 ) return false;
489
 
490
  var outputNumber = parseFloat( numericString );
491
  if ( outputNumber > settings.max ) return true;
@@ -495,7 +497,7 @@
495
 
496
  function isLessThanMin( numericString, settings ) {
497
 
498
- if ( ! settings.min || settings.min > 0 ) return false;
499
 
500
  var outputNumber = parseFloat( numericString );
501
  if ( outputNumber < settings.min ) return true;
@@ -508,46 +510,46 @@
508
  ********************************/
509
  function trimAlphaNum( inputString, settings ) {
510
 
511
- if ( typeof inputString != "string" ) return inputString;
512
 
513
- var inChars = inputString.split( "" );
514
  var outChars = [];
515
- var i = 0;
516
  var Char;
517
 
518
- for ( i = 0; i < inChars.length; i ++ ) {
519
- Char = inChars[i];
520
- var validatedStringFragment = outChars.join( "" );
521
  if ( alphanum_allowChar( validatedStringFragment, Char, settings ) ) outChars.push( Char );
522
  }
523
 
524
- return outChars.join( "" );
525
  }
526
 
527
  function trimNum( inputString, settings ) {
528
- if ( typeof inputString != "string" ) return inputString;
529
 
530
- var inChars = inputString.split( "" );
531
  var outChars = [];
532
- var i = 0;
533
  var Char;
534
 
535
- for ( i = 0; i < inChars.length; i ++ ) {
536
- Char = inChars[i];
537
- var validatedStringFragment = outChars.join( "" );
538
  if ( numeric_allowChar( validatedStringFragment, Char, settings ) ) outChars.push( Char );
539
  }
540
 
541
- return outChars.join( "" );
542
  }
543
 
544
  function removeUpperCase( inputString ) {
545
- var charArray = inputString.split( '' );
546
- var i = 0;
547
  var outputArray = [];
548
  var Char;
549
 
550
- for ( i = 0; i < charArray.length; i ++ ) {
551
  Char = charArray[i];
552
  }
553
  }
@@ -576,7 +578,7 @@
576
 
577
  function getBlacklistSet( allow, disallow ) {
578
 
579
- var setOfBadChars = new Set( BLACKLIST + disallow );
580
  var setOfGoodChars = new Set( allow );
581
 
582
  var blacklistSet = setOfBadChars.subtract( setOfGoodChars );
@@ -585,13 +587,13 @@
585
  }
586
 
587
  function getDigitsMap() {
588
- var array = "0123456789".split( "" );
589
- var map = {};
590
- var i = 0;
591
  var digit;
592
 
593
- for ( i = 0; i < array.length; i ++ ) {
594
- digit = array[i];
595
  map[digit] = true;
596
  }
597
 
@@ -599,9 +601,9 @@
599
  }
600
 
601
  function getLatinCharsSet() {
602
- var lower = "abcdefghijklmnopqrstuvwxyz";
603
  var upper = lower.toUpperCase();
604
- var azAZ = new Set( lower + upper );
605
 
606
  return azAZ;
607
  }
@@ -620,7 +622,7 @@
620
  // Check if this is the first occurrence of a THOU_SEP
621
  if ( posOfFirstThouSep < 0 ) return true;
622
 
623
- var posOfLastThouSep = currentString.lastIndexOf( THOU_SEP );
624
  var charsSinceLastThouSep = currentString.length - posOfLastThouSep - 1;
625
 
626
  // Check if there has been 3 digits since the last THOU_SEP
@@ -638,7 +640,7 @@
638
  // Implementation of a Set
639
  ////////////////////////////////////////////////////////////////////////////////////
640
  function Set( elems ) {
641
- if ( typeof elems == "string" ) this.map = stringToMap( elems ); else this.map = {};
642
  }
643
 
644
  Set.prototype.add = function( set ) {
@@ -648,7 +650,7 @@
648
  for ( var key in set.map ) newSet.map[key] = true;
649
 
650
  return newSet;
651
- }
652
 
653
  Set.prototype.subtract = function( set ) {
654
 
@@ -657,11 +659,11 @@
657
  for ( var key in set.map ) delete newSet.map[key];
658
 
659
  return newSet;
660
- }
661
 
662
  Set.prototype.contains = function( key ) {
663
  if ( this.map[key] ) return true; else return false;
664
- }
665
 
666
  Set.prototype.clone = function() {
667
  var newSet = new Set();
@@ -669,18 +671,18 @@
669
  for ( var key in this.map ) newSet.map[key] = true;
670
 
671
  return newSet;
672
- }
673
 
674
  ////////////////////////////////////////////////////////////////////////////////////
675
 
676
  function stringToMap( string ) {
677
- var map = {};
678
- var array = string.split( "" );
679
- var i = 0;
680
  var Char;
681
 
682
- for ( i = 0; i < array.length; i ++ ) {
683
- Char = array[i];
684
  map[Char] = true;
685
  }
686
 
@@ -707,8 +709,8 @@
707
  if ( settings.decimalSeparator.length != 1 ) return;
708
 
709
  THOU_SEP = settings.thousandsSeparator;
710
- DEC_SEP = settings.decimalSeparator;
711
- }
712
 
713
  })( jQuery );
714
 
@@ -723,10 +725,10 @@
723
  function caretTo( el, index ) {
724
  if ( el.createTextRange ) {
725
  var range = el.createTextRange();
726
- range.move( "character", index );
727
  range.select();
728
  } else if ( el.selectionStart != null ) {
729
- el.focus();
730
  el.setSelectionRange( index, index );
731
  }
732
  };
@@ -736,10 +738,10 @@
736
 
737
  // TODO: Get working with Opera
738
  function caretPos( el ) {
739
- if ( "selection" in document ) {
740
  var range = el.createTextRange();
741
  try {
742
- range.setEndPoint( "EndToStart", document.selection.createRange() );
743
  } catch ( e ) {
744
  // Catch IE failure here, return 0 like
745
  // other browsers
@@ -757,7 +759,7 @@
757
 
758
  // Set caret to a particular index
759
  $.fn.alphanum_caret = function( index, offset ) {
760
- if ( typeof (index) === "undefined" ) {
761
  return caretPos( this.get( 0 ) );
762
  }
763
 
@@ -767,7 +769,7 @@
767
 
768
  if ( offset === true ) {
769
  i += index.length;
770
- } else if ( typeof (offset) !== "undefined" ) {
771
  i += offset;
772
  }
773
 
@@ -788,179 +790,178 @@
788
  * https://github.com/jupiterjs/jquerymx/blob/master/dom/selection/selection.js
789
  ***********************************************************/
790
  (function( $ ) {
791
- var convertType = function( type ) {
792
- return type.replace( /([a-z])([a-z]+)/gi, function( all, first, next ) {
793
- return first + next.toLowerCase();
794
- } ).replace( /_/g, "" );
795
- }, reverse = function( type ) {
796
- return type.replace( /^([a-z]+)_TO_([a-z]+)/i, function( all, first, last ) {
797
- return last + "_TO_" + first;
798
- } );
799
- }, getWindow = function( element ) {
800
- return element ? element.ownerDocument.defaultView || element.ownerDocument.parentWindow : window;
801
- }, // A helper that uses range to abstract out getting the current start and endPos.
802
- getElementsSelection = function( el, win ) {
803
- var current = $.Range.current( el ).clone(), entireElement = $.Range( el ).select( el );
804
-
805
- if ( ! current.overlaps( entireElement ) ) {
806
- return null;
807
- }
808
- // we need to check if it starts before our element ...
809
- if ( current.compare( "START_TO_START", entireElement ) < 1 ) {
810
- var startPos = 0;
811
- // we should move current ...
812
- current.move( "START_TO_START", entireElement );
813
- } else {
814
- var fromElementToCurrent = entireElement.clone();
815
- fromElementToCurrent.move( "END_TO_START", current );
816
-
817
- startPos = fromElementToCurrent.toString().length;
818
- }
819
-
820
- // now we need to make sure current isn't to the right of us ...
821
- var endPos;
822
-
823
- if ( current.compare( "END_TO_END", entireElement ) >= 0 ) {
824
- endPos = entireElement.toString().length;
825
- } else {
826
- endPos = startPos + current.toString().length;
827
- }
828
-
829
- return {
830
- start: startPos, end: endPos
831
- };
832
- }, getSelection = function( el ) {
833
- // use selectionStart if we can.
834
- var win = getWindow( el );
835
-
836
- if ( el.selectionStart !== undefined ) {
837
- if ( document.activeElement && document.activeElement !== el && el.selectionStart === el.selectionEnd && el.selectionStart === 0 ) {
838
- return {start: el.value.length, end: el.value.length};
839
- }
840
-
841
- return {start: el.selectionStart, end: el.selectionEnd};
842
- } else if ( win.getSelection ) {
843
- return getElementsSelection( el, win );
844
- } else {
845
- try {
846
- //try 2 different methods that work differently
847
- // one should only work for input elements, but sometimes doesn't
848
- // I don't know why this is, or what to detect
849
- if ( el.nodeName.toLowerCase() === 'input' ) {
850
- var real = getWindow( el ).document.selection.createRange(), r = el.createTextRange();
851
-
852
- r.setEndPoint( "EndToStart", real );
853
-
854
- var start = r.text.length;
855
-
856
- return {
857
- start: start, end: start + real.text.length
858
- };
859
- } else {
860
- var res = getElementsSelection( el, win );
861
- if ( ! res ) {
862
- return res;
863
- }
864
-
865
- // we have to clean up for ie's textareas
866
- var current = $.Range.current().clone(), r2 = current.clone().collapse().range,
867
- r3 = current.clone().collapse( false ).range;
868
-
869
- r2.moveStart( 'character', - 1 );
870
- r3.moveStart( 'character', - 1 );
871
-
872
- // if we aren't at the start, but previous is empty, we are at start of newline
873
- if ( res.startPos !== 0 && r2.text === "" ) {
874
- res.startPos += 2;
875
- }
876
-
877
- // do a similar thing for the end of the textarea
878
- if ( res.endPos !== 0 && r3.text === "" ) {
879
- res.endPos += 2;
880
- }
881
-
882
- return res;
883
- }
884
- } catch ( e ) {
885
- return {start: el.value.length, end: el.value.length};
886
- }
887
- }
888
- }, select = function( el, start, end ) {
889
- var win = getWindow( el );
890
-
891
- if ( el.setSelectionRange ) {
892
- if ( end === undefined ) {
893
- el.focus();
894
- el.setSelectionRange( start, start );
895
- } else {
896
- el.select();
897
- el.selectionStart = start;
898
- el.selectionEnd = end;
899
- }
900
- } else if ( el.createTextRange ) {
901
- //el.focus();
902
- var r = el.createTextRange();
903
- r.moveStart( 'character', start );
904
- end = end || start;
905
- r.moveEnd( 'character', end - el.value.length );
906
-
907
- r.select();
908
- } else if ( win.getSelection ) {
909
- var doc = win.document, sel = win.getSelection(), range = doc.createRange(),
910
- ranges = [start, end !== undefined ? end : start];
911
- getCharElement( [el], ranges );
912
- range.setStart( ranges[0].el, ranges[0].count );
913
- range.setEnd( ranges[1].el, ranges[1].count );
914
-
915
- // removeAllRanges is suprisingly necessary for webkit ... BOOO!
916
- sel.removeAllRanges();
917
- sel.addRange( range );
918
-
919
- } else if ( win.document.body.createTextRange ) { //IE's weirdness
920
- var range = document.body.createTextRange();
921
-
922
- range.moveToElementText( el );
923
- range.collapse();
924
- range.moveStart( 'character', start );
925
- range.moveEnd( 'character', end !== undefined ? end : start );
926
- range.select();
927
- }
928
- }, /*
929
  * If one of the range values is within start and len, replace the range
930
  * value with the element and its offset.
931
  */
932
- replaceWithLess = function( start, len, range, el ) {
933
- if ( typeof range[0] === 'number' && range[0] < len ) {
934
- range[0] = {
935
- el: el, count: range[0] - start
936
- };
937
- }
938
- if ( typeof range[1] === 'number' && range[1] <= len ) {
939
- range[1] = {
940
- el: el, count: range[1] - start
941
- };
942
- }
943
- }, getCharElement = function( elems, range, len ) {
944
- var elem, start;
945
-
946
- len = len || 0;
947
-
948
- for ( var i = 0; elems[i]; i ++ ) {
949
- elem = elems[i];
950
- // Get the text from text nodes and CDATA nodes
951
- if ( elem.nodeType === 3 || elem.nodeType === 4 ) {
952
- start = len;
953
- len += elem.nodeValue.length;
954
- //check if len is now greater than what's in counts
955
- replaceWithLess( start, len, range, elem );
956
- // Traverse everything else, except comment nodes
957
- } else if ( elem.nodeType !== 8 ) {
958
- len = getCharElement( elem.childNodes, range, len );
959
- }
960
- }
961
-
962
- return len;
963
- };
964
 
965
  $.fn.selection = function( start, end ) {
966
  if ( start !== undefined ) {
@@ -1039,6 +1040,422 @@
1039
  };
1040
  }( jQuery ));
1041
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1042
  // jscs:disable
1043
  // jshint ignore: start
1044
 
@@ -1110,7 +1527,7 @@
1110
 
1111
  // Set focus action (highlight)
1112
  if (options.highlight && elementType !== 'DIV')
1113
- jQuery(elem).focus(function() { this.select(); });
1114
 
1115
  // Key watcher / clear and reset the timer
1116
  var startWatch = function(evt) {
132
 
133
  $.fn.alpha = function( settings ) {
134
 
135
+ var defaultAlphaSettings = getCombinedSettingsAlphaNum( 'alpha' );
136
+ var combinedSettings = getCombinedSettingsAlphaNum( settings, defaultAlphaSettings );
137
 
138
  var $collection = this;
139
 
145
  $.fn.numeric = function( settings ) {
146
 
147
  var combinedSettings = getCombinedSettingsNum( settings );
148
+ var $collection = this;
149
 
150
  setupEventHandlers( $collection, trimNum, combinedSettings );
151
 
174
  allowLatin: true, // a-z A-Z
175
  allowOtherCharSets: true, // eg �, �, Arabic, Chinese etc
176
  maxLength: NaN // eg Max Length
177
+ };
178
 
179
  var DEFAULT_SETTINGS_NUM = {
180
  allowPlus: false, // Allow the + sign
186
  maxPreDecimalPlaces: NaN, // The max number digits before the decimal point
187
  max: NaN, // The max numeric value allowed
188
  min: NaN // The min numeric value allowed
189
+ };
190
 
191
  // Some pre-defined groups of settings for convenience
192
  var CONVENIENCE_SETTINGS_ALPHANUM = {
193
+ 'alpha': {
194
  allowNumeric: false
195
+ }, 'upper': {
196
  allowNumeric: false, allowUpper: true, allowLower: false, allowCaseless: true
197
+ }, 'lower': {
198
  allowNumeric: false, allowUpper: false, allowLower: true, allowCaseless: true
199
  }
200
  };
201
 
202
  // Some pre-defined groups of settings for convenience
203
  var CONVENIENCE_SETTINGS_NUMERIC = {
204
+ 'integer': {
205
  allowPlus: false, allowMinus: true, allowThouSep: false, allowDecSep: false
206
+ }, 'positiveInteger': {
207
  allowPlus: false, allowMinus: false, allowThouSep: false, allowDecSep: false
208
  }
209
  };
210
 
211
+ var BLACKLIST = getBlacklistAscii() + getBlacklistNonAscii();
212
+ var THOU_SEP = ',';
213
+ var DEC_SEP = '.';
214
+ var DIGITS = getDigitsMap();
215
  var LATIN_CHARS = getLatinCharsSet();
216
 
217
  // Return the blacklisted special chars that are encodable using 7-bit ascii
218
  function getBlacklistAscii() {
219
  var blacklist = '!@#$%^&*()+=[]\\\';,/{}|":<>?~`.-_';
220
+ blacklist += ' '; // 'Space' is on the blacklist but can be enabled using the 'allowSpace' config entry
221
  return blacklist;
222
  }
223
 
226
  // Higher order chars must be escaped eg "\xAC"
227
  // Not too worried about comments containing higher order characters for now (let's wait and see if it becomes a problem)
228
  function getBlacklistNonAscii() {
229
+ var blacklist = '\xAC' // �
230
+ + '\u20AC' // �
231
+ + '\xA3' // �
232
+ + '\xA6' // �
233
  ;
234
  return blacklist;
235
  }
244
 
245
  var $textbox = $( this );
246
 
247
+ $textbox.on( 'keyup change paste', function( e ) {
248
 
249
+ var pastedText = '';
250
 
251
+ if ( e.originalEvent && e.originalEvent.clipboardData && e.originalEvent.clipboardData.getData ) pastedText = e.originalEvent.clipboardData.getData(
252
+ 'text/plain' );
253
 
254
  // setTimeout is necessary for handling the 'paste' event
255
  setTimeout( function() {
257
  }, 0 );
258
  } );
259
 
260
+ $textbox.on( 'keypress', function( e ) {
261
 
262
  // Determine which key is pressed.
263
  // If it's a control key, then allow the event's default action to occur eg backspace, tab
264
+ var charCode = !e.charCode ? e.which : e.charCode;
265
  if ( isControlKey( charCode ) || e.ctrlKey || e.metaKey ) // cmd on MacOS
266
  return;
267
 
269
 
270
  // Determine if some text was selected / highlighted when the key was pressed
271
  var selectionObject = $textbox.selection();
272
+ var start = selectionObject.start;
273
+ var end = selectionObject.end;
274
 
275
  var textBeforeKeypress = $textbox.val();
276
 
285
  // Unfortunately, it isn't enough to just check if the new char is valid because some chars
286
  // are position sensitive eg the decimal point '.'' or the minus sign '-'' are only valid in certain positions.
287
  var potentialTextAfterKeypress = textBeforeKeypress.substring( 0, start ) + newChar + textBeforeKeypress.substring( end );
288
+ var validatedText = trimFunction( potentialTextAfterKeypress, settings );
289
 
290
  // If the keypress would cause the textbox to contain invalid characters, then cancel the keypress event
291
  if ( validatedText != potentialTextAfterKeypress ) e.preventDefault();
298
  // This catches the case where a user enters '-' or '.' without entering any digits
299
  function numericField_Blur( inputBox, settings ) {
300
  var fieldValueNumeric = parseFloat( $( inputBox ).val() );
301
+ var $inputBox = $( inputBox );
302
 
303
  if ( isNaN( fieldValueNumeric ) ) {
304
+ $inputBox.val( '' );
305
  return;
306
  }
307
 
308
+ if ( isNumeric( settings.min ) && fieldValueNumeric < settings.min ) $inputBox.val( '' );
309
 
310
+ if ( isNumeric( settings.max ) && fieldValueNumeric > settings.max ) $inputBox.val( '' );
311
  }
312
 
313
  function isNumeric( value ) {
314
+ return !isNaN( value );
315
  }
316
 
317
  function isControlKey( charCode ) {
332
 
333
  var inputString = $textBox.val();
334
 
335
+ if ( inputString == '' && pastedText.length > 0 ) inputString = pastedText;
336
 
337
  var outputString = trimFunction( inputString, settings );
338
 
347
  }
348
 
349
  function getCombinedSettingsAlphaNum( settings, defaultSettings ) {
350
+ if ( typeof defaultSettings == 'undefined' ) defaultSettings = DEFAULT_SETTINGS_ALPHANUM;
351
  var userSettings, combinedSettings = {};
352
+ if ( typeof settings === 'string' ) userSettings = CONVENIENCE_SETTINGS_ALPHANUM[settings]; else if ( typeof settings == 'undefined' ) userSettings = {}; else userSettings = settings;
353
 
354
  $.extend( combinedSettings, defaultSettings, userSettings );
355
 
356
+ if ( typeof combinedSettings.blacklist == 'undefined' ) combinedSettings.blacklistSet = getBlacklistSet(
357
+ combinedSettings.allow, combinedSettings.disallow );
358
 
359
  return combinedSettings;
360
  }
361
 
362
  function getCombinedSettingsNum( settings ) {
363
  var userSettings, combinedSettings = {};
364
+ if ( typeof settings === 'string' ) userSettings = CONVENIENCE_SETTINGS_NUMERIC[settings]; else if ( typeof settings == 'undefined' ) userSettings = {}; else userSettings = settings;
365
 
366
  $.extend( combinedSettings, DEFAULT_SETTINGS_NUM, userSettings );
367
 
375
 
376
  if ( settings.allow.indexOf( Char ) >= 0 ) return true;
377
 
378
+ if ( settings.allowSpace && (Char == ' ') ) return true;
379
 
380
  if ( settings.blacklistSet.contains( Char ) ) return false;
381
 
382
+ if ( !settings.allowNumeric && DIGITS[Char] ) return false;
383
 
384
+ if ( !settings.allowUpper && isUpper( Char ) ) return false;
385
 
386
+ if ( !settings.allowLower && isLower( Char ) ) return false;
387
 
388
+ if ( !settings.allowCaseless && isCaseless( Char ) ) return false;
389
 
390
+ if ( !settings.allowLatin && LATIN_CHARS.contains( Char ) ) return false;
391
 
392
+ if ( !settings.allowOtherCharSets ) {
393
  if ( DIGITS[Char] || LATIN_CHARS.contains( Char ) ) return true; else return false;
394
  }
395
 
431
  function countDigits( string ) {
432
 
433
  // Error handling, nulls etc
434
+ string = string + '';
435
 
436
  // Count the digits
437
+ return string.replace( /[^0-9]/g, '' ).length;
438
  }
439
 
440
  function isMaxDigitsReached( string, settings ) {
441
 
442
  var maxDigits = settings.maxDigits;
443
 
444
+ if ( maxDigits == '' || isNaN( maxDigits ) ) return false; // In this case, there is no maximum
445
 
446
  var numDigits = countDigits( string );
447
 
454
 
455
  var maxDecimalPlaces = settings.maxDecimalPlaces;
456
 
457
+ if ( maxDecimalPlaces == '' || isNaN( maxDecimalPlaces ) ) return false; // In this case, there is no maximum
458
 
459
  var indexOfDecimalPoint = string.indexOf( DEC_SEP );
460
 
461
+ if ( indexOfDecimalPoint == -1 ) return false;
462
 
463
  var decimalSubstring = string.substring( indexOfDecimalPoint );
464
+ var numDecimals = countDigits( decimalSubstring );
465
 
466
  if ( numDecimals >= maxDecimalPlaces ) return true;
467
 
472
 
473
  var maxPreDecimalPlaces = settings.maxPreDecimalPlaces;
474
 
475
+ if ( maxPreDecimalPlaces == '' || isNaN( maxPreDecimalPlaces ) ) return false; // In this case, there is no maximum
476
 
477
  var indexOfDecimalPoint = string.indexOf( DEC_SEP );
478
 
487
 
488
  function isGreaterThanMax( numericString, settings ) {
489
 
490
+ if ( !settings.max || settings.max < 0 ) return false;
491
 
492
  var outputNumber = parseFloat( numericString );
493
  if ( outputNumber > settings.max ) return true;
497
 
498
  function isLessThanMin( numericString, settings ) {
499
 
500
+ if ( !settings.min || settings.min > 0 ) return false;
501
 
502
  var outputNumber = parseFloat( numericString );
503
  if ( outputNumber < settings.min ) return true;
510
  ********************************/
511
  function trimAlphaNum( inputString, settings ) {
512
 
513
+ if ( typeof inputString != 'string' ) return inputString;
514
 
515
+ var inChars = inputString.split( '' );
516
  var outChars = [];
517
+ var i = 0;
518
  var Char;
519
 
520
+ for ( i = 0; i < inChars.length; i++ ) {
521
+ Char = inChars[i];
522
+ var validatedStringFragment = outChars.join( '' );
523
  if ( alphanum_allowChar( validatedStringFragment, Char, settings ) ) outChars.push( Char );
524
  }
525
 
526
+ return outChars.join( '' );
527
  }
528
 
529
  function trimNum( inputString, settings ) {
530
+ if ( typeof inputString != 'string' ) return inputString;
531
 
532
+ var inChars = inputString.split( '' );
533
  var outChars = [];
534
+ var i = 0;
535
  var Char;
536
 
537
+ for ( i = 0; i < inChars.length; i++ ) {
538
+ Char = inChars[i];
539
+ var validatedStringFragment = outChars.join( '' );
540
  if ( numeric_allowChar( validatedStringFragment, Char, settings ) ) outChars.push( Char );
541
  }
542
 
543
+ return outChars.join( '' );
544
  }
545
 
546
  function removeUpperCase( inputString ) {
547
+ var charArray = inputString.split( '' );
548
+ var i = 0;
549
  var outputArray = [];
550
  var Char;
551
 
552
+ for ( i = 0; i < charArray.length; i++ ) {
553
  Char = charArray[i];
554
  }
555
  }
578
 
579
  function getBlacklistSet( allow, disallow ) {
580
 
581
+ var setOfBadChars = new Set( BLACKLIST + disallow );
582
  var setOfGoodChars = new Set( allow );
583
 
584
  var blacklistSet = setOfBadChars.subtract( setOfGoodChars );
587
  }
588
 
589
  function getDigitsMap() {
590
+ var array = '0123456789'.split( '' );
591
+ var map = {};
592
+ var i = 0;
593
  var digit;
594
 
595
+ for ( i = 0; i < array.length; i++ ) {
596
+ digit = array[i];
597
  map[digit] = true;
598
  }
599
 
601
  }
602
 
603
  function getLatinCharsSet() {
604
+ var lower = 'abcdefghijklmnopqrstuvwxyz';
605
  var upper = lower.toUpperCase();
606
+ var azAZ = new Set( lower + upper );
607
 
608
  return azAZ;
609
  }
622
  // Check if this is the first occurrence of a THOU_SEP
623
  if ( posOfFirstThouSep < 0 ) return true;
624
 
625
+ var posOfLastThouSep = currentString.lastIndexOf( THOU_SEP );
626
  var charsSinceLastThouSep = currentString.length - posOfLastThouSep - 1;
627
 
628
  // Check if there has been 3 digits since the last THOU_SEP
640
  // Implementation of a Set
641
  ////////////////////////////////////////////////////////////////////////////////////
642
  function Set( elems ) {
643
+ if ( typeof elems == 'string' ) this.map = stringToMap( elems ); else this.map = {};
644
  }
645
 
646
  Set.prototype.add = function( set ) {
650
  for ( var key in set.map ) newSet.map[key] = true;
651
 
652
  return newSet;
653
+ };
654
 
655
  Set.prototype.subtract = function( set ) {
656
 
659
  for ( var key in set.map ) delete newSet.map[key];
660
 
661
  return newSet;
662
+ };
663
 
664
  Set.prototype.contains = function( key ) {
665
  if ( this.map[key] ) return true; else return false;
666
+ };
667
 
668
  Set.prototype.clone = function() {
669
  var newSet = new Set();
671
  for ( var key in this.map ) newSet.map[key] = true;
672
 
673
  return newSet;
674
+ };
675
 
676
  ////////////////////////////////////////////////////////////////////////////////////
677
 
678
  function stringToMap( string ) {
679
+ var map = {};
680
+ var array = string.split( '' );
681
+ var i = 0;
682
  var Char;
683
 
684
+ for ( i = 0; i < array.length; i++ ) {
685
+ Char = array[i];
686
  map[Char] = true;
687
  }
688
 
709
  if ( settings.decimalSeparator.length != 1 ) return;
710
 
711
  THOU_SEP = settings.thousandsSeparator;
712
+ DEC_SEP = settings.decimalSeparator;
713
+ };
714
 
715
  })( jQuery );
716
 
725
  function caretTo( el, index ) {
726
  if ( el.createTextRange ) {
727
  var range = el.createTextRange();
728
+ range.move( 'character', index );
729
  range.select();
730
  } else if ( el.selectionStart != null ) {
731
+ el.trigger( 'focus' );
732
  el.setSelectionRange( index, index );
733
  }
734
  };
738
 
739
  // TODO: Get working with Opera
740
  function caretPos( el ) {
741
+ if ( 'selection' in document ) {
742
  var range = el.createTextRange();
743
  try {
744
+ range.setEndPoint( 'EndToStart', document.selection.createRange() );
745
  } catch ( e ) {
746
  // Catch IE failure here, return 0 like
747
  // other browsers
759
 
760
  // Set caret to a particular index
761
  $.fn.alphanum_caret = function( index, offset ) {
762
+ if ( typeof (index) === 'undefined' ) {
763
  return caretPos( this.get( 0 ) );
764
  }
765
 
769
 
770
  if ( offset === true ) {
771
  i += index.length;
772
+ } else if ( typeof (offset) !== 'undefined' ) {
773
  i += offset;
774
  }
775
 
790
  * https://github.com/jupiterjs/jquerymx/blob/master/dom/selection/selection.js
791
  ***********************************************************/
792
  (function( $ ) {
793
+ var convertType = function( type ) {
794
+ return type.replace( /([a-z])([a-z]+)/gi, function( all, first, next ) {
795
+ return first + next.toLowerCase();
796
+ } ).replace( /_/g, '' );
797
+ }, reverse = function( type ) {
798
+ return type.replace( /^([a-z]+)_TO_([a-z]+)/i, function( all, first, last ) {
799
+ return last + '_TO_' + first;
800
+ } );
801
+ }, getWindow = function( element ) {
802
+ return element ? element.ownerDocument.defaultView || element.ownerDocument.parentWindow : window;
803
+ }, // A helper that uses range to abstract out getting the current start and endPos.
804
+ getElementsSelection = function( el, win ) {
805
+ var current = $.Range.current( el ).clone(), entireElement = $.Range( el ).select( el );
806
+
807
+ if ( !current.overlaps( entireElement ) ) {
808
+ return null;
809
+ }
810
+ // we need to check if it starts before our element ...
811
+ if ( current.compare( 'START_TO_START', entireElement ) < 1 ) {
812
+ var startPos = 0;
813
+ // we should move current ...
814
+ current.move( 'START_TO_START', entireElement );
815
+ } else {
816
+ var fromElementToCurrent = entireElement.clone();
817
+ fromElementToCurrent.move( 'END_TO_START', current );
818
+
819
+ startPos = fromElementToCurrent.toString().length;
820
+ }
821
+
822
+ // now we need to make sure current isn't to the right of us ...
823
+ var endPos;
824
+
825
+ if ( current.compare( 'END_TO_END', entireElement ) >= 0 ) {
826
+ endPos = entireElement.toString().length;
827
+ } else {
828
+ endPos = startPos + current.toString().length;
829
+ }
830
+
831
+ return {
832
+ start: startPos, end: endPos
833
+ };
834
+ }, getSelection = function( el ) {
835
+ // use selectionStart if we can.
836
+ var win = getWindow( el );
837
+
838
+ if ( el.selectionStart !== undefined ) {
839
+ if ( document.activeElement && document.activeElement !== el && el.selectionStart === el.selectionEnd && el.selectionStart === 0 ) {
840
+ return {start: el.value.length, end: el.value.length};
841
+ }
842
+
843
+ return {start: el.selectionStart, end: el.selectionEnd};
844
+ } else if ( win.getSelection ) {
845
+ return getElementsSelection( el, win );
846
+ } else {
847
+ try {
848
+ //try 2 different methods that work differently
849
+ // one should only work for input elements, but sometimes doesn't
850
+ // I don't know why this is, or what to detect
851
+ if ( el.nodeName.toLowerCase() === 'input' ) {
852
+ var real = getWindow( el ).document.selection.createRange(), r = el.createTextRange();
853
+
854
+ r.setEndPoint( 'EndToStart', real );
855
+
856
+ var start = r.text.length;
857
+
858
+ return {
859
+ start: start, end: start + real.text.length
860
+ };
861
+ } else {
862
+ var res = getElementsSelection( el, win );
863
+ if ( !res ) {
864
+ return res;
865
+ }
866
+
867
+ // we have to clean up for ie's textareas
868
+ var current = $.Range.current().clone(), r2 = current.clone().collapse().range,
869
+ r3 = current.clone().collapse( false ).range;
870
+
871
+ r2.moveStart( 'character', -1 );
872
+ r3.moveStart( 'character', -1 );
873
+
874
+ // if we aren't at the start, but previous is empty, we are at start of newline
875
+ if ( res.startPos !== 0 && r2.text === '' ) {
876
+ res.startPos += 2;
877
+ }
878
+
879
+ // do a similar thing for the end of the textarea
880
+ if ( res.endPos !== 0 && r3.text === '' ) {
881
+ res.endPos += 2;
882
+ }
883
+
884
+ return res;
885
+ }
886
+ } catch ( e ) {
887
+ return {start: el.value.length, end: el.value.length};
888
+ }
889
+ }
890
+ }, select = function( el, start, end ) {
891
+ var win = getWindow( el );
892
+
893
+ if ( el.setSelectionRange ) {
894
+ if ( end === undefined ) {
895
+ el.trigger( 'focus' );
896
+ el.setSelectionRange( start, start );
897
+ } else {
898
+ el.select();
899
+ el.selectionStart = start;
900
+ el.selectionEnd = end;
901
+ }
902
+ } else if ( el.createTextRange ) {
903
+ var r = el.createTextRange();
904
+ r.moveStart( 'character', start );
905
+ end = end || start;
906
+ r.moveEnd( 'character', end - el.value.length );
907
+
908
+ r.select();
909
+ } else if ( win.getSelection ) {
910
+ var doc = win.document, sel = win.getSelection(), range = doc.createRange(),
911
+ ranges = [start, end !== undefined ? end : start];
912
+ getCharElement( [el], ranges );
913
+ range.setStart( ranges[0].el, ranges[0].count );
914
+ range.setEnd( ranges[1].el, ranges[1].count );
915
+
916
+ // removeAllRanges is suprisingly necessary for webkit ... BOOO!
917
+ sel.removeAllRanges();
918
+ sel.addRange( range );
919
+
920
+ } else if ( win.document.body.createTextRange ) { //IE's weirdness
921
+ var range = document.body.createTextRange();
922
+
923
+ range.moveToElementText( el );
924
+ range.collapse();
925
+ range.moveStart( 'character', start );
926
+ range.moveEnd( 'character', end !== undefined ? end : start );
927
+ range.select();
928
+ }
929
+ }, /*
 
930
  * If one of the range values is within start and len, replace the range
931
  * value with the element and its offset.
932
  */
933
+ replaceWithLess = function( start, len, range, el ) {
934
+ if ( typeof range[0] === 'number' && range[0] < len ) {
935
+ range[0] = {
936
+ el: el, count: range[0] - start
937
+ };
938
+ }
939
+ if ( typeof range[1] === 'number' && range[1] <= len ) {
940
+ range[1] = {
941
+ el: el, count: range[1] - start
942
+ };
943
+ }
944
+ }, getCharElement = function( elems, range, len ) {
945
+ var elem, start;
946
+
947
+ len = len || 0;
948
+
949
+ for ( var i = 0; elems[i]; i++ ) {
950
+ elem = elems[i];
951
+ // Get the text from text nodes and CDATA nodes
952
+ if ( elem.nodeType === 3 || elem.nodeType === 4 ) {
953
+ start = len;
954
+ len += elem.nodeValue.length;
955
+ //check if len is now greater than what's in counts
956
+ replaceWithLess( start, len, range, elem );
957
+ // Traverse everything else, except comment nodes
958
+ } else if ( elem.nodeType !== 8 ) {
959
+ len = getCharElement( elem.childNodes, range, len );
960
+ }
961
+ }
962
+
963
+ return len;
964
+ };
965
 
966
  $.fn.selection = function( start, end ) {
967
  if ( start !== undefined ) {
1040
  };
1041
  }( jQuery ));
1042
 
1043
+ /*!
1044
+ SerializeJSON jQuery plugin.
1045
+ https://github.com/marioizquierdo/jquery.serializeJSON
1046
+ version 3.2.1 (Feb, 2021)
1047
+
1048
+ Copyright (c) 2012-2021 Mario Izquierdo
1049
+ Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
1050
+ and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
1051
+ */
1052
+ (function( factory ) {
1053
+ var jQuery;
1054
+
1055
+ /* global define, require, module */
1056
+ if ( 'function' === typeof define && define.amd ) { // AMD. Register as an anonymous module.
1057
+ define( ['jquery'], factory );
1058
+ } else if ( 'object' === typeof exports ) { // Node/CommonJS.
1059
+ jQuery = require( 'jquery' );
1060
+ module.exports = factory( jQuery );
1061
+ } else { // Browser globals (zepto supported).
1062
+ factory( window.jQuery || window.Zepto || window.$ ); // Zepto supported on browsers as well.
1063
+ }
1064
+
1065
+ }( function( $ ) {
1066
+ 'use strict';
1067
+
1068
+ var rCRLF = /\r?\n/g;
1069
+ var rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i;
1070
+ var rsubmittable = /^(?:input|select|textarea|keygen)/i;
1071
+ var rcheckableType = /^(?:checkbox|radio)$/i;
1072
+
1073
+ $.fn.serializeJSON = function( options ) {
1074
+ var f = $.serializeJSON;
1075
+ var _this = this; // NOTE: the set of matched elements is most likely a form, but it could also be a group of inputs.
1076
+ var opts = f.setupOpts( options ); // Validate options and apply defaults.
1077
+ var typeFunctions = $.extend( {}, opts.defaultTypes, opts.customTypes );
1078
+
1079
+ // Make a list with {name, value, el} for each input element.
1080
+ var serializedArray = f.serializeArray( _this, opts );
1081
+
1082
+ // Convert the serializedArray into a serializedObject with nested keys.
1083
+ var serializedObject = {};
1084
+ $.each(
1085
+ serializedArray,
1086
+ function( _i, obj ) {
1087
+ var nameSansType = obj.name;
1088
+ var type = $( obj.el ).attr( 'data-value-type' );
1089
+ var p;
1090
+ var typedValue;
1091
+ var keys;
1092
+
1093
+ if ( ! type && ! opts.disableColonTypes ) { // Try getting the type from the input name.
1094
+ p = f.splitType( obj.name ); // "foo:string" => ["foo", "string"].
1095
+ nameSansType = p[0];
1096
+ type = p[1];
1097
+ }
1098
+ if ( 'skip' === type ) {
1099
+ return; // Ignore fields with type skip.
1100
+ }
1101
+ if ( ! type ) {
1102
+ type = opts.defaultType; // "string" by default
1103
+ }
1104
+
1105
+ typedValue = f.applyTypeFunc( obj.name, obj.value, type, obj.el, typeFunctions ); // Parse type as string, number, etc.
1106
+
1107
+ if ( ! typedValue && f.shouldSkipFalsy( obj.name, nameSansType, type, obj.el, opts ) ) {
1108
+ return; // Ignore falsy inputs if specified in the options.
1109
+ }
1110
+
1111
+ keys = f.splitInputNameIntoKeysArray( nameSansType );
1112
+ f.deepSet( serializedObject, keys, typedValue, opts );
1113
+ }
1114
+ );
1115
+
1116
+ return serializedObject;
1117
+ };
1118
+
1119
+ // Use $.serializeJSON as namespace for the auxiliary functions
1120
+ // and to define defaults.
1121
+ $.serializeJSON = {
1122
+ defaultOptions: {}, // Reassign to override option defaults for all serializeJSON calls.
1123
+
1124
+ defaultBaseOptions: { // Do not modify, use defaultOptions instead.
1125
+ checkboxUncheckedValue: undefined, // To include that value for unchecked checkboxes (instead of ignoring them).
1126
+ useIntKeysAsArrayIndex: false, // Tip: name="foo[2]" value="v" => {foo: [null, null, "v"]}, instead of {foo: ["2": "v"]}.
1127
+
1128
+ skipFalsyValuesForTypes: [], // Skip serialization of falsy values for listed value types.
1129
+ skipFalsyValuesForFields: [], // Skip serialization of falsy values for listed field names.
1130
+
1131
+ disableColonTypes: false, // Do not interpret ":type" suffix as a type.
1132
+ customTypes: {}, // Extends defaultTypes.
1133
+ defaultTypes: {
1134
+ 'string': function( str ) {
1135
+ return String( str );
1136
+ },
1137
+ 'number': function( str ) {
1138
+ return Number( str );
1139
+ },
1140
+ 'boolean': function( str ) {
1141
+ var falses = ['false', 'null', 'undefined', '', '0'];
1142
+ return -1 === falses.indexOf( str );
1143
+ },
1144
+ 'null': function( str ) {
1145
+ var falses = ['false', 'null', 'undefined', '', '0'];
1146
+ return -1 === falses.indexOf( str ) ? str : null;
1147
+ },
1148
+ 'array': function( str ) {
1149
+ return JSON.parse( str );
1150
+ },
1151
+ 'object': function( str ) {
1152
+ return JSON.parse( str );
1153
+ },
1154
+ 'skip': null // Skip is a special type used to ignore fields.
1155
+ },
1156
+ defaultType: 'string'
1157
+ },
1158
+
1159
+ // Validate and set defaults.
1160
+ setupOpts: function( options ) {
1161
+ var f;
1162
+ var validOpts;
1163
+ var opt;
1164
+
1165
+ if ( null == options ) {
1166
+ options = {};
1167
+ }
1168
+
1169
+ f = $.serializeJSON;
1170
+
1171
+ // Validate.
1172
+ validOpts = [
1173
+ 'checkboxUncheckedValue',
1174
+ 'useIntKeysAsArrayIndex',
1175
+
1176
+ 'skipFalsyValuesForTypes',
1177
+ 'skipFalsyValuesForFields',
1178
+
1179
+ 'disableColonTypes',
1180
+ 'customTypes',
1181
+ 'defaultTypes',
1182
+ 'defaultType'
1183
+ ];
1184
+ for ( opt in options ) {
1185
+ if ( validOpts.indexOf( opt ) === -1 ) {
1186
+ throw new Error( 'serializeJSON ERROR: invalid option \'' + opt + '\'. Please use one of ' + validOpts.join( ', ' ) );
1187
+ }
1188
+ }
1189
+
1190
+ // Helper to get options or defaults.
1191
+ return $.extend( {}, f.defaultBaseOptions, f.defaultOptions, options );
1192
+ },
1193
+
1194
+ // Just like jQuery's serializeArray method, returns an array of objects with name and value.
1195
+ // but also includes the dom element (el) and is handles unchecked checkboxes if the option or data attribute are provided.
1196
+ serializeArray: function( _this, opts ) {
1197
+ var f;
1198
+ var elements;
1199
+
1200
+ if ( null == opts ) {
1201
+ opts = {};
1202
+ }
1203
+
1204
+ f = $.serializeJSON;
1205
+
1206
+ return _this.map(
1207
+ function() {
1208
+ elements = $.prop( this, 'elements' ); // Handle propHook "elements" to filter or add form elements.
1209
+ return elements ? $.makeArray( elements ) : this;
1210
+
1211
+ }
1212
+ ).filter(
1213
+ function() {
1214
+ var $el = $( this );
1215
+ var type = this.type;
1216
+
1217
+ // Filter with the standard W3C rules for successful controls: http://www.w3.org/TR/html401/interact/forms.html#h-17.13.2.
1218
+ return this.name && // Must contain a name attribute.
1219
+ ! $el.is( ':disabled' ) && // Must not be disable (use .is(":disabled") so that fieldset[disabled] works).
1220
+ rsubmittable.test( this.nodeName ) && ! rsubmitterTypes.test( type ) && // only serialize submittable fields (and not buttons).
1221
+ (this.checked || ! rcheckableType.test( type ) || f.getCheckboxUncheckedValue( $el, opts ) != null); // skip unchecked checkboxes (unless using opts).
1222
+
1223
+ }
1224
+ ).map(
1225
+ function( _i, el ) {
1226
+ var $el = $( this );
1227
+ var val = $el.val();
1228
+ var type = this.type; // "input", "select", "textarea", "checkbox", etc.
1229
+
1230
+ if ( null == val ) {
1231
+ return null;
1232
+ }
1233
+
1234
+ if ( rcheckableType.test( type ) && ! this.checked ) {
1235
+ val = f.getCheckboxUncheckedValue( $el, opts );
1236
+ }
1237
+
1238
+ if ( isArray( val ) ) {
1239
+ return $.map(
1240
+ val,
1241
+ function( val ) {
1242
+ return {name: el.name, value: val.replace( rCRLF, '\r\n' ), el: el};
1243
+ }
1244
+ );
1245
+ }
1246
+
1247
+ return {name: el.name, value: val.replace( rCRLF, '\r\n' ), el: el};
1248
+
1249
+ }
1250
+ ).get();
1251
+ },
1252
+
1253
+ getCheckboxUncheckedValue: function( $el, opts ) {
1254
+ var val = $el.attr( 'data-unchecked-value' );
1255
+ if ( null == val ) {
1256
+ val = opts.checkboxUncheckedValue;
1257
+ }
1258
+ return val;
1259
+ },
1260
+
1261
+ // Parse value with type function.
1262
+ applyTypeFunc: function( name, strVal, type, el, typeFunctions ) {
1263
+ var typeFunc = typeFunctions[type];
1264
+ if ( ! typeFunc ) { // quick feedback to user if there is a typo or missconfiguration.
1265
+ throw new Error(
1266
+ 'serializeJSON ERROR: Invalid type ' + type + ' found in input name \'' + name + '\', please use one of ' + objectKeys( typeFunctions )
1267
+ .join( ', ' )
1268
+ );
1269
+ }
1270
+ return typeFunc( strVal, el );
1271
+ },
1272
+
1273
+ // Splits a field name into the name and the type. Examples:
1274
+ // "foo" => ["foo", ""].
1275
+ // "foo:boolean" => ["foo", "boolean"].
1276
+ // "foo[bar]:null" => ["foo[bar]", "null"].
1277
+ splitType: function( name ) {
1278
+ var parts = name.split( ':' );
1279
+ var t;
1280
+
1281
+ if ( parts.length > 1 ) {
1282
+ t = parts.pop();
1283
+ return [parts.join( ':' ), t];
1284
+ } else {
1285
+ return [name, ''];
1286
+ }
1287
+ },
1288
+
1289
+ // Check if this input should be skipped when it has a falsy value,
1290
+ // depending on the options to skip values by name or type, and the data-skip-falsy attribute.
1291
+ shouldSkipFalsy: function( name, nameSansType, type, el, opts ) {
1292
+ var skipFromDataAttr = $( el ).attr( 'data-skip-falsy' );
1293
+ var optForFields;
1294
+ var optForTypes;
1295
+
1296
+ if ( skipFromDataAttr != null ) {
1297
+ return skipFromDataAttr !== 'false'; // any value is true, except the string "false".
1298
+ }
1299
+
1300
+ optForFields = opts.skipFalsyValuesForFields;
1301
+ if ( optForFields && (optForFields.indexOf( nameSansType ) !== -1 || optForFields.indexOf( name ) !== -1) ) {
1302
+ return true;
1303
+ }
1304
+
1305
+ optForTypes = opts.skipFalsyValuesForTypes;
1306
+ return ! ! ( optForTypes && optForTypes.indexOf( type ) !== -1 );
1307
+ },
1308
+
1309
+ // Split the input name in programmatically readable keys.
1310
+ // Examples:
1311
+ // "foo" => ["foo"]
1312
+ // "[foo]" => ["foo"]
1313
+ // "foo[inn][bar]" => ["foo", "inn", "bar"]
1314
+ // "foo[inn[bar]]" => ["foo", "inn", "bar"]
1315
+ // "foo[inn][arr][0]" => ["foo", "inn", "arr", "0"]
1316
+ // "arr[][val]" => ["arr", "", "val"].
1317
+ splitInputNameIntoKeysArray: function( nameWithNoType ) {
1318
+ var keys = nameWithNoType.split( '[' ); // split string into array.
1319
+
1320
+ keys = $.map(
1321
+ keys,
1322
+ function( key ) {
1323
+ return key.replace( /\]/g, '' );
1324
+ }
1325
+ ); // Remove closing brackets.
1326
+ if ( keys[0] === '' ) {
1327
+ keys.shift();
1328
+ } // Ensure no opening bracket ("[foo][inn]" should be same as "foo[inn]")
1329
+ return keys;
1330
+ },
1331
+
1332
+ // Set a value in an object or array, using multiple keys to set in a nested object or array.
1333
+ // This is the main function of the script, that allows serializeJSON to use nested keys.
1334
+ // Examples:
1335
+ //
1336
+ // deepSet(obj, ["foo"], v) // obj["foo"] = v
1337
+ // deepSet(obj, ["foo", "inn"], v) // obj["foo"]["inn"] = v // Create the inner obj["foo"] object, if needed
1338
+ // deepSet(obj, ["foo", "inn", "123"], v) // obj["foo"]["arr"]["123"] = v //
1339
+ //
1340
+ // deepSet(obj, ["0"], v) // obj["0"] = v
1341
+ // deepSet(arr, ["0"], v, {useIntKeysAsArrayIndex: true}) // arr[0] = v
1342
+ // deepSet(arr, [""], v) // arr.push(v)
1343
+ // deepSet(obj, ["arr", ""], v) // obj["arr"].push(v)
1344
+ //
1345
+ // arr = [];
1346
+ // deepSet(arr, ["", v] // arr => [v]
1347
+ // deepSet(arr, ["", "foo"], v) // arr => [v, {foo: v}]
1348
+ // deepSet(arr, ["", "bar"], v) // arr => [v, {foo: v, bar: v}]
1349
+ // deepSet(arr, ["", "bar"], v) // arr => [v, {foo: v, bar: v}, {bar: v}].
1350
+ deepSet: function( o, keys, value, opts ) {
1351
+ if ( null == opts ) {
1352
+ opts = {};
1353
+ }
1354
+ var f = $.serializeJSON;
1355
+ if ( isUndefined( o ) ) {
1356
+ throw new Error( 'ArgumentError: param \'o\' expected to be an object or array, found undefined' );
1357
+ }
1358
+ if ( ! keys || 0 === keys.length ) {
1359
+ throw new Error( 'ArgumentError: param \'keys\' expected to be an array with least one element' );
1360
+ }
1361
+
1362
+ var key = keys[0];
1363
+
1364
+ // Only one key, then it's not a deepSet, just assign the value in the object or add it to the array.
1365
+ if ( 1 === keys.length ) {
1366
+ if ( key === '' ) { // Push values into an array (o must be an array).
1367
+ o.push( value );
1368
+ } else {
1369
+ o[key] = value; // Keys can be object keys (strings) or array indexes (numbers).
1370
+ }
1371
+ return;
1372
+ }
1373
+
1374
+ var nextKey = keys[1]; // Nested key.
1375
+ var tailKeys = keys.slice( 1 ); // List of all other nested keys (nextKey is first).
1376
+
1377
+ if ( key === '' ) { // Push nested objects into an array (o must be an array).
1378
+ var lastIdx = o.length - 1;
1379
+ var lastVal = o[lastIdx];
1380
+
1381
+ // if the last value is an object or array, and the new key is not set yet.
1382
+ if ( isObject( lastVal ) && isUndefined( f.deepGet( lastVal, tailKeys ) ) ) {
1383
+ key = lastIdx; // then set the new value as a new attribute of the same object.
1384
+ } else {
1385
+ key = lastIdx + 1; // otherwise, add a new element in the array.
1386
+ }
1387
+ }
1388
+
1389
+ if ( nextKey === '' ) { // "" is used to push values into the nested array "array[]".
1390
+ if ( isUndefined( o[key] ) || ! isArray( o[key] ) ) {
1391
+ o[key] = []; // define (or override) as array to push values.
1392
+ }
1393
+ } else {
1394
+ if ( opts.useIntKeysAsArrayIndex && isValidArrayIndex( nextKey ) ) { // if 1, 2, 3 ... then use an array, where nextKey is the index.
1395
+ if ( isUndefined( o[key] ) || ! isArray( o[key] ) ) {
1396
+ o[key] = []; // Define (or override) as array, to insert values using int keys as array indexes.
1397
+ }
1398
+ } else { // nextKey is going to be the nested object's attribute.
1399
+ if ( isUndefined( o[key] ) || ! isObject( o[key] ) ) {
1400
+ o[key] = {}; // Define (or override) as object, to set nested properties.
1401
+ }
1402
+ }
1403
+ }
1404
+
1405
+ // Recursively set the inner object.
1406
+ f.deepSet( o[key], tailKeys, value, opts );
1407
+ },
1408
+
1409
+ deepGet: function( o, keys ) {
1410
+ var f = $.serializeJSON;
1411
+ var tailKeys;
1412
+
1413
+ if ( isUndefined( o ) || isUndefined( keys ) || keys.length === 0 || ( ! isObject( o ) && ! isArray( o ) ) ) {
1414
+ return o;
1415
+ }
1416
+ var key = keys[0];
1417
+ if ( '' === key ) { // "" means next array index (used by deepSet)
1418
+ return undefined;
1419
+ }
1420
+ if ( 1 === keys.length ) {
1421
+ return o[key];
1422
+ }
1423
+
1424
+ tailKeys = keys.slice( 1 );
1425
+ return f.deepGet( o[key], tailKeys );
1426
+ }
1427
+ };
1428
+
1429
+ // Polyfill Object.keys to get option keys in IE<9.
1430
+ var objectKeys = function( obj ) {
1431
+ if ( Object.keys ) {
1432
+ return Object.keys( obj );
1433
+ } else {
1434
+ var key, keys = [];
1435
+ for ( key in obj ) {
1436
+ keys.push( key );
1437
+ }
1438
+ return keys;
1439
+ }
1440
+ };
1441
+
1442
+ var isObject = function( obj ) {
1443
+ return obj === Object( obj );
1444
+ }; // true for Objects and Arrays.
1445
+
1446
+ var isUndefined = function( obj ) {
1447
+ return obj === void 0;
1448
+ }; // safe check for undefined values.
1449
+
1450
+ var isValidArrayIndex = function( val ) {
1451
+ return /^[0-9]+$/.test( String( val ) );
1452
+ }; // 1,2,3,4 ... are valid array indexes.
1453
+
1454
+ var isArray = Array.isArray || function( obj ) {
1455
+ return '[object Array]' === Object.prototype.toString.call( obj );
1456
+ };
1457
+ } ) );
1458
+
1459
  // jscs:disable
1460
  // jshint ignore: start
1461
 
1527
 
1528
  // Set focus action (highlight)
1529
  if (options.highlight && elementType !== 'DIV')
1530
+ jQuery(elem).on( 'focus', function() { this.trigger( 'select' ); });
1531
 
1532
  // Key watcher / clear and reset the timer
1533
  var startWatch = function(evt) {
redux-core/assets/js/redux-vendors.min.js CHANGED
@@ -1 +1 @@
1
- function collapse(e){var t,e=e.target,n=e.parentNode.getElementsByClassName("collapsible");n.length&&("none"===(n=n[0]).style.display?(t=n.parentNode.getElementsByClassName("ellipsis")[0],n.parentNode.removeChild(t),n.style.display=""):(n.style.display="none",(t=document.createElement("span")).className="ellipsis",t.innerHTML=" &hellip; ",n.parentNode.insertBefore(t,n)),e.innerHTML="-"===e.innerHTML?"+":"-")}function addCollapser(e){var t;"LI"===e.nodeName&&((t=document.createElement("div")).className="collapser",t.innerHTML="-",t.addEventListener("click",collapse,!1),e.insertBefore(t,e.firstChild))}function jsonView(e,t){if(this.debug=!1,-1!==e.indexOf("#"))this.idType="id",this.id=e.replace("#","");else{if(-1===e.indexOf("."))return void(this.debug&&console.log("Can't find that element"));this.idType="class",this.id=e.replace(".","")}if(this.data=document.getElementById(this.id).innerHTML,1,-1!==t.indexOf("#"))this.targetType="id",this.target=t.replace("#","");else{if(-1===e.indexOf("."))return void(this.debug&&console.log("Can't find the target element"));this.targetType="class",this.target=t.replace(".","")}/^\<pre.*\>(.*)\<\/pre\>$/.test(this.data)&&(this.debug&&console.log("JSONView: data is wrapped in <pre>...</pre>, stripping HTML..."),this.data=this.data.replace(/<(?:.|\s)*?>/g,""));var e=/^[\s\u200B\uFEFF]*([\w$\[\]\.]+)[\s\u200B\uFEFF]*\([\s\u200B\uFEFF]*([\[{][\s\S]*[\]}])[\s\u200B\uFEFF]*\);?[\s\u200B\uFEFF]*$/,t=/^\s*([\[\{].*[\}\]])\s*$/.test(this.data),n=e.test(this.data);if(this.debug&&console.log("JSONView: is_json="+t+" is_jsonp="+n),t||n){function a(){}this.debug&&console.log("JSONView: sexytime!"),a.prototype={htmlEncode:function(e){return null!=e?e.toString().replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;"):""},decorateWithSpan:function(e,t){return'<span class="'+t+'">'+this.htmlEncode(e)+"</span>"},valueToHTML:function(e){var t=typeof e,n="";return null===e?n+=this.decorateWithSpan("null","null"):e&&e.constructor===Array?n+=this.arrayToHTML(e):"object"==t?n+=this.objectToHTML(e):"number"==t?n+=this.decorateWithSpan(e,"num"):"string"==t?/^(http|https):\/\/[^\s]+$/.test(e)?n+='<a href="'+e+'">'+this.htmlEncode(e)+"</a>":n+=this.decorateWithSpan('"'+e+'"',"string"):"boolean"==t&&(n+=this.decorateWithSpan(e,"bool")),n},arrayToHTML:function(e){var t,n='[<ul class="array collapsible">',a=!1;for(t in e)a=!0,n=(n+="<li>")+this.valueToHTML(e[t])+"</li>";return n+="</ul>]",n=a?n:"[ ]"},objectToHTML:function(e){var t,n='{<ul class="obj collapsible">',a=!1;for(t in e)a=!0,n=(n=(n+="<li>")+'<span class="prop">'+this.htmlEncode(t)+"</span>: ")+this.valueToHTML(e[t])+"</li>";return n+="</ul>}",n=a?n:"{ }"},jsonToHTML:function(e,t,n){var a="";return t?a=a+'<div class="callback">'+t+' (</div><div id="json">':a+='<div id="json">',a=a+this.valueToHTML(e)+"</div>",t&&(a+='<div class="callback">)</div>'),this.toHTML(a,n)},errorPage:function(e,t,n){var a='<div id="error">Error parsing JSON: '+e.message+"</div>",a=(a+="<h1>"+e.stack+":</h1>")+('<div id="json">'+this.htmlEncode(t)+"</div>");return this.toHTML(a,n+" - Error")},toHTML:function(e){return e}},this.jsonFormatter=new a;var t="",n="",o="",e=e.exec(this.data),n=e&&3===e.length?(this.debug&&console.log("THIS IS JSONp"),o=e[1],e[2]):(this.debug&&console.log("Vanilla JSON"),this.data);this.debug&&console.log(n);try{var r=JSON.parse(n);if(!r)throw"There was no object!";t=this.jsonFormatter.jsonToHTML(r,o)}catch(e){this.debug&&console.log(e),t=this.jsonFormatter.errorPage(e,this.data)}for(var i,e="<style type=\"text/css\">.jsonViewOutput .prop{font-weight:700;}.jsonViewOutput .null{color:red;}.jsonViewOutput .string{color:green;}.jsonViewOutput .collapser{position:absolute;left:-1em;cursor:pointer;}.jsonViewOutput li{position:relative;}.jsonViewOutput li:after{content:',';}.jsonViewOutput li:last-child:after{content:'';}.jsonViewOutput #error{-moz-border-radius:8px;border:1px solid #970000;background-color:#F7E8E8;margin:.5em;padding:.5em;}.jsonViewOutput .errormessage{font-family:monospace;}.jsonViewOutput #json{font-family:monospace;font-size:1.1em;}.jsonViewOutput ul{list-style:none;margin:0 0 0 2em;padding:0;}.jsonViewOutput h1{font-size:1.2em;}.jsonViewOutput .callback + #json{padding-left:1em;}.jsonViewOutput .callback{font-family:monospace;color:#A52A2A;}.jsonViewOutput .bool,.jsonViewOutput .num{color:blue;}</style>",l=(void 0!==this.targetType&&(this.idType=this.targetType,this.id=this.target),"class"===this.idType?(i=document.getElementsByClassName(this.id))&&(i.className+=i.className?" jsonViewOutput":"jsonViewOutput",i.innerHTML=e+t):"id"===this.idType&&((i=document.getElementById(this.id))&&(i.className+=i.className?" jsonViewOutput":"jsonViewOutput",i.innerHTML=e+t),i.innerHTML=e+t),document.getElementsByClassName("collapsible")),s=l.length,u=0;u<s;u++)addCollapser(l[u].parentNode)}}!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof exports?module.exports=e(require("jquery")):e(jQuery)}(function(p){var n=/\+/g;function d(e){return f.raw?e:encodeURIComponent(e)}function h(e,t){e=f.raw?e:function(e){0===e.indexOf('"')&&(e=e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return e=decodeURIComponent(e.replace(n," ")),f.json?JSON.parse(e):e}catch(e){}}(e);return"function"==typeof t?t(e):e}var f=p.cookie=function(e,t,n){var a,o;if(1<arguments.length&&"function"!=typeof t)return"number"==typeof(n=p.extend({},f.defaults,n)).expires&&(a=n.expires,(o=n.expires=new Date).setMilliseconds(o.getMilliseconds()+864e5*a)),document.cookie=[d(e),"=",(o=t,d(f.json?JSON.stringify(o):String(o))),n.expires?"; expires="+n.expires.toUTCString():"",n.path?"; path="+n.path:"",n.domain?"; domain="+n.domain:"",n.secure?"; secure":""].join("");for(var r=e?void 0:{},i=document.cookie?document.cookie.split("; "):[],l=0,c=i.length;l<c;l++){var s=i[l].split("="),u=(u=s.shift(),f.raw?u:decodeURIComponent(u)),s=s.join("=");if(e===u){r=h(s,t);break}e||void 0===(s=h(s))||(r[u]=s)}return r};f.defaults={},p.removeCookie=function(e,t){return p.cookie(e,"",p.extend({},t,{expires:-1})),!p.cookie(e)}}),function(o){o.fn.alphanum=function(e){return n(this,s,a(e)),this},o.fn.alpha=function(e){var t=a("alpha");return n(this,s,a(e,t)),this},o.fn.numeric=function(a){return n(this,T,w(a)),this.on("blur",function(){var e,t,n;e=this,t=a,n=parseFloat(o(e).val()),e=o(e),isNaN(n)?e.val(""):(v(t.min)&&n<t.min&&e.val(""),v(t.max)&&n>t.max&&e.val(""))}),this};var e,t,c={allow:"",disallow:"",allowSpace:!0,allowNumeric:!0,allowUpper:!0,allowLower:!0,allowCaseless:!0,allowLatin:!0,allowOtherCharSets:!0,maxLength:NaN},d={allowPlus:!1,allowMinus:!0,allowThouSep:!0,allowDecSep:!0,allowLeadingSpaces:!1,maxDigits:NaN,maxDecimalPlaces:NaN,maxPreDecimalPlaces:NaN,max:NaN,min:NaN},h={alpha:{allowNumeric:!1},upper:{allowNumeric:!1,allowUpper:!0,allowLower:!1,allowCaseless:!0},lower:{allowNumeric:!1,allowUpper:!1,allowLower:!0,allowCaseless:!0}},f={integer:{allowPlus:!1,allowMinus:!0,allowThouSep:!1,allowDecSep:!1},positiveInteger:{allowPlus:!1,allowMinus:!1,allowThouSep:!1,allowDecSep:!1}},m=(e="!@#$%^&*()+=[]\\';,/{}|\":<>?~`.-_",(e+=" ")+"¬€£¦"),r=",",i=".",p=function(){var e,t="0123456789".split(""),n={},a=0;for(a=0;a<t.length;a++)e=t[a],n[e]=!0;return n}(),g=(t=(e="abcdefghijklmnopqrstuvwxyz").toUpperCase(),new u(e+t));function n(e,l,s){e.each(function(){var i=o(this);i.on("keyup change paste",function(e){var r="";e.originalEvent&&e.originalEvent.clipboardData&&e.originalEvent.clipboardData.getData&&(r=e.originalEvent.clipboardData.getData("text/plain")),setTimeout(function(){var e=i,t=l,n=s,a=r,o=e.val();""==o&&0<a.length&&(o=a),a=t(o,n),o!=a&&(t=e.alphanum_caret(),e.val(a),o.length==a.length+1?e.alphanum_caret(t-1):e.alphanum_caret(t))},0)}),i.on("keypress",function(e){var t,n,a,o=e.charCode||e.which;!(32<=(t=o)||10==t||13==t)||e.ctrlKey||e.metaKey||(t=String.fromCharCode(o),a=(o=i.selection()).start,o=o.end,a=(n=i.val()).substring(0,a)+t+n.substring(o),l(a,s)!=a&&e.preventDefault())})})}function v(e){return!isNaN(e)}function a(e,t){var n={},e="string"==typeof e?h[e]:void 0===e?{}:e;return o.extend(n,t=void 0===t?c:t,e),void 0===n.blacklist&&(n.blacklistSet=function(e,t){t=new u(m+t),e=new u(e);return t.subtract(e)}(n.allow,n.disallow)),n}function w(e){var t={},e="string"==typeof e?f[e]:void 0===e?{}:e;return o.extend(t,d,e),t}function y(e,t,n){if(p[t])return!function(e,t){t=t.maxDigits;if(""==t||isNaN(t))return!1;e=l(e);return t<=e}(e,n)&&(!function(e,t){t=t.maxPreDecimalPlaces;if(""==t||isNaN(t))return!1;if(0<=e.indexOf(i))return!1;e=l(e);return t<=e}(e,n)&&(!function(e,t){t=t.maxDecimalPlaces;if(""==t||isNaN(t))return!1;var n=e.indexOf(i);if(-1==n)return!1;e=l(e.substring(n));return t<=e}(e,n)&&(a=e+t,(!(o=n).max||o.max<0||!(parseFloat(a)>o.max))&&(a=e+t,!(o=n).min||0<o.min||!(parseFloat(a)<o.min)))));var a,o;if(n.allowPlus&&"+"==t&&""==e)return 1;if(n.allowMinus&&"-"==t&&""==e)return 1;if(t==r&&n.allowThouSep&&function(e){if(0==e.length)return!1;if(0<=e.indexOf(i))return!1;var t=e.indexOf(r);if(t<0)return!0;var n=e.lastIndexOf(r);return!(e.length-n-1<3)&&!(0<l(e.substring(t))%3)}(e))return 1;if(t==i){if(0<=e.indexOf(i))return;if(n.allowDecSep)return 1}}function l(e){return(e+="").replace(/[^0-9]/g,"").length}function s(e,c){if("string"!=typeof e)return e;for(var t,n,a,o,r=e.split(""),i=[],l=0,l=0;l<r.length;l++){var s=r[l],u=i.join("");u=u,t=s,o=a=void 0,!((n=c).maxLength&&u.length>=n.maxLength)&&(0<=n.allow.indexOf(t)||n.allowSpace&&" "==t||!(n.blacklistSet.contains(t)||!n.allowNumeric&&p[t]||!n.allowUpper&&(a=(u=t).toUpperCase(),o=u.toLowerCase(),u==a&&a!=o)||!n.allowLower&&(a=(u=t).toUpperCase(),o=u.toLowerCase(),u==o&&a!=o)||!n.allowCaseless&&(u=t).toUpperCase()==u.toLowerCase()||!n.allowLatin&&g.contains(t))&&(n.allowOtherCharSets||p[t]||g.contains(t)))&&i.push(s)}return i.join("")}function T(e,t){if("string"!=typeof e)return e;for(var n=e.split(""),a=[],o=0,o=0;o<n.length;o++){var r=n[o];y(a.join(""),r,t)&&a.push(r)}return a.join("")}function u(e){this.map="string"==typeof e?function(e){var t,n={},a=e.split(""),o=0;for(o=0;o<a.length;o++)t=a[o],n[t]=!0;return n}(e):{}}u.prototype.add=function(e){var t,n=this.clone();for(t in e.map)n.map[t]=!0;return n},u.prototype.subtract=function(e){var t,n=this.clone();for(t in e.map)delete n.map[t];return n},u.prototype.contains=function(e){return!!this.map[e]},u.prototype.clone=function(){var e,t=new u;for(e in this.map)t.map[e]=!0;return t},o.fn.alphanum.backdoorAlphaNum=function(e,t){return s(e,a(t))},o.fn.alphanum.backdoorNumeric=function(e,t){return T(e,w(t))},o.fn.alphanum.setNumericSeparators=function(e){1==e.thousandsSeparator.length&&1==e.decimalSeparator.length&&(r=e.thousandsSeparator,i=e.decimalSeparator)}}(jQuery),function(o){function r(e,t){var n;e.createTextRange?((n=e.createTextRange()).move("character",t),n.select()):null!=e.selectionStart&&(e.focus(),e.setSelectionRange(t,t))}o.fn.alphanum_caret=function(n,a){if(void 0!==n)return this.queue(function(e){var t;isNaN(n)?(t=o(this).val().indexOf(n),!0===a?t+=n.length:void 0!==a&&(t+=a),r(this,t)):r(this,n),e()});var e=this.get(0);if("selection"in document){var t=e.createTextRange();try{t.setEndPoint("EndToStart",document.selection.createRange())}catch(e){return 0}return t.text.length}return null!=e.selectionStart?e.selectionStart:void 0}}(jQuery),function(p){function d(e){return e?e.ownerDocument.defaultView||e.ownerDocument.parentWindow:window}function h(e,t){var n,a,o=p.Range.current(e).clone(),e=p.Range(e).select(e);return o.overlaps(e)?(o.compare("START_TO_START",e)<1?(n=0,o.move("START_TO_START",e)):((a=e.clone()).move("END_TO_START",o),n=a.toString().length),{start:n,end:0<=o.compare("END_TO_END",e)?e.toString().length:n+o.toString().length}):null}var i=function(e,t,n,a){"number"==typeof n[0]&&n[0]<t&&(n[0]={el:a,count:n[0]-e}),"number"==typeof n[1]&&n[1]<=t&&(n[1]={el:a,count:n[1]-e})},f=function(e,t,n){var a,o;n=n||0;for(var r=0;e[r];r++)3===(a=e[r]).nodeType||4===a.nodeType?(o=n,n+=a.nodeValue.length,i(o,n,t,a)):8!==a.nodeType&&(n=f(a.childNodes,t,n));return n};p.fn.selection=function(l,s){if(void 0!==l)return this.each(function(){var e,t,n,a,o,r,i;t=l,n=s,i=d(e=this),e.setSelectionRange?void 0===n?(e.focus(),e.setSelectionRange(t,t)):(e.select(),e.selectionStart=t,e.selectionEnd=n):e.createTextRange?((o=e.createTextRange()).moveStart("character",t),o.moveEnd("character",(n=n||t)-e.value.length),o.select()):i.getSelection?(o=i.document,a=i.getSelection(),r=o.createRange(),f([e],o=[t,void 0!==n?n:t]),r.setStart(o[0].el,o[0].count),r.setEnd(o[1].el,o[1].count),a.removeAllRanges(),a.addRange(r)):i.document.body.createTextRange&&((r=document.body.createTextRange()).moveToElementText(e),r.collapse(),r.moveStart("character",t),r.moveEnd("character",void 0!==n?n:t),r.select())});var e,t,n,a=this[0],c=d(a);if(void 0!==a.selectionStart)return document.activeElement&&document.activeElement!==a&&a.selectionStart===a.selectionEnd&&0===a.selectionStart?{start:a.value.length,end:a.value.length}:{start:a.selectionStart,end:a.selectionEnd};if(c.getSelection)return h(a);try{if("input"===a.nodeName.toLowerCase())return e=d(a).document.selection.createRange(),(t=a.createTextRange()).setEndPoint("EndToStart",e),{start:n=t.text.length,end:n+e.text.length};var o=h(a);if(!o)return o;var r=p.Range.current().clone(),i=r.clone().collapse().range,u=r.clone().collapse(!1).range;return i.moveStart("character",-1),u.moveStart("character",-1),0!==o.startPos&&""===i.text&&(o.startPos+=2),0!==o.endPos&&""===u.text&&(o.endPos+=2),o}catch(e){return{start:a.value.length,end:a.value.length}}},p.fn.selection.getCharElement=f}(jQuery),function(i){i.fn.serializeForm=function(){if(this.length<1)return!1;function e(){if(!this.disabled){var e=this.name.replace(/\[([^\]]+)?\]/g,",$1").split(","),t=e.length-1,n=i(this);if(e[0]){for(var a=0;a<t;a++)r=r[e[a]]=r[e[a]]||(""===e[a+1]||"0"===e[a+1]?[]:{});void 0!==r.length?r.push(n.val()):r[e[t]]=n.val(),r=o}}}var o={},r=o,t=':input[type!="checkbox"][type!="radio"], input:checked';return this.filter(t).each(e),this.find(t).each(e),o}}(jQuery),function(e,t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof exports?t(require("jquery")):t(e.jQuery)}(this,function(n){"use strict";n.fn.typeWatch=function(e){var r=n.extend({wait:750,callback:function(){},highlight:!0,captureLength:2,allowSubmit:!1,inputTypes:["TEXT","TEXTAREA","PASSWORD","TEL","SEARCH","URL","EMAIL","DATETIME","DATE","MONTH","WEEK","TIME","DATETIME-LOCAL","NUMBER","RANGE","DIV"]},e);function t(e){var o,n=(e.type||e.nodeName).toUpperCase();0<=jQuery.inArray(n,r.inputTypes)&&(o={timer:null,text:"DIV"===n?jQuery(e).html():jQuery(e).val(),cb:r.callback,el:e,type:n,wait:r.wait},r.highlight&&"DIV"!==n&&jQuery(e).focus(function(){this.select()}),jQuery(e).on("keydown paste cut input",function(e){var t=o.wait,a=!1;void 0!==e.keyCode&&13==e.keyCode&&"TEXTAREA"!==n&&"DIV"!==n&&(t=1,a=!0);clearTimeout(o.timer),o.timer=setTimeout(function(){var e,t,n;t=a,((n="DIV"===(e=o).type?jQuery(e.el).html():jQuery(e.el).val()).length>=r.captureLength&&n!=e.text||t&&(n.length>=r.captureLength||r.allowSubmit)||0==n.length&&e.text)&&(e.text=n,e.cb.call(e.el,n))},t)}))}return this.each(function(){t(this)})}});
1
+ function collapse(e){var t,e=e.target,n=e.parentNode.getElementsByClassName("collapsible");n.length&&("none"===(n=n[0]).style.display?(t=n.parentNode.getElementsByClassName("ellipsis")[0],n.parentNode.removeChild(t),n.style.display=""):(n.style.display="none",(t=document.createElement("span")).className="ellipsis",t.innerHTML=" &hellip; ",n.parentNode.insertBefore(t,n)),e.innerHTML="-"===e.innerHTML?"+":"-")}function addCollapser(e){var t;"LI"===e.nodeName&&((t=document.createElement("div")).className="collapser",t.innerHTML="-",t.addEventListener("click",collapse,!1),e.insertBefore(t,e.firstChild))}function jsonView(e,t){if(this.debug=!1,-1!==e.indexOf("#"))this.idType="id",this.id=e.replace("#","");else{if(-1===e.indexOf("."))return void(this.debug&&console.log("Can't find that element"));this.idType="class",this.id=e.replace(".","")}if(this.data=document.getElementById(this.id).innerHTML,1,-1!==t.indexOf("#"))this.targetType="id",this.target=t.replace("#","");else{if(-1===e.indexOf("."))return void(this.debug&&console.log("Can't find the target element"));this.targetType="class",this.target=t.replace(".","")}/^\<pre.*\>(.*)\<\/pre\>$/.test(this.data)&&(this.debug&&console.log("JSONView: data is wrapped in <pre>...</pre>, stripping HTML..."),this.data=this.data.replace(/<(?:.|\s)*?>/g,""));var e=/^[\s\u200B\uFEFF]*([\w$\[\]\.]+)[\s\u200B\uFEFF]*\([\s\u200B\uFEFF]*([\[{][\s\S]*[\]}])[\s\u200B\uFEFF]*\);?[\s\u200B\uFEFF]*$/,t=/^\s*([\[\{].*[\}\]])\s*$/.test(this.data),n=e.test(this.data);if(this.debug&&console.log("JSONView: is_json="+t+" is_jsonp="+n),t||n){function r(){}this.debug&&console.log("JSONView: sexytime!"),r.prototype={htmlEncode:function(e){return null!=e?e.toString().replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;"):""},decorateWithSpan:function(e,t){return'<span class="'+t+'">'+this.htmlEncode(e)+"</span>"},valueToHTML:function(e){var t=typeof e,n="";return null===e?n+=this.decorateWithSpan("null","null"):e&&e.constructor===Array?n+=this.arrayToHTML(e):"object"==t?n+=this.objectToHTML(e):"number"==t?n+=this.decorateWithSpan(e,"num"):"string"==t?/^(http|https):\/\/[^\s]+$/.test(e)?n+='<a href="'+e+'">'+this.htmlEncode(e)+"</a>":n+=this.decorateWithSpan('"'+e+'"',"string"):"boolean"==t&&(n+=this.decorateWithSpan(e,"bool")),n},arrayToHTML:function(e){var t,n='[<ul class="array collapsible">',r=!1;for(t in e)r=!0,n=(n+="<li>")+this.valueToHTML(e[t])+"</li>";return n+="</ul>]",n=r?n:"[ ]"},objectToHTML:function(e){var t,n='{<ul class="obj collapsible">',r=!1;for(t in e)r=!0,n=(n=(n+="<li>")+'<span class="prop">'+this.htmlEncode(t)+"</span>: ")+this.valueToHTML(e[t])+"</li>";return n+="</ul>}",n=r?n:"{ }"},jsonToHTML:function(e,t,n){var r="";return t?r=r+'<div class="callback">'+t+' (</div><div id="json">':r+='<div id="json">',r=r+this.valueToHTML(e)+"</div>",t&&(r+='<div class="callback">)</div>'),this.toHTML(r,n)},errorPage:function(e,t,n){var r='<div id="error">Error parsing JSON: '+e.message+"</div>",r=(r+="<h1>"+e.stack+":</h1>")+('<div id="json">'+this.htmlEncode(t)+"</div>");return this.toHTML(r,n+" - Error")},toHTML:function(e){return e}},this.jsonFormatter=new r;var t="",n="",a="",e=e.exec(this.data),n=e&&3===e.length?(this.debug&&console.log("THIS IS JSONp"),a=e[1],e[2]):(this.debug&&console.log("Vanilla JSON"),this.data);this.debug&&console.log(n);try{var i=JSON.parse(n);if(!i)throw"There was no object!";t=this.jsonFormatter.jsonToHTML(i,a)}catch(e){this.debug&&console.log(e),t=this.jsonFormatter.errorPage(e,this.data)}for(var o,e="<style type=\"text/css\">.jsonViewOutput .prop{font-weight:700;}.jsonViewOutput .null{color:red;}.jsonViewOutput .string{color:green;}.jsonViewOutput .collapser{position:absolute;left:-1em;cursor:pointer;}.jsonViewOutput li{position:relative;}.jsonViewOutput li:after{content:',';}.jsonViewOutput li:last-child:after{content:'';}.jsonViewOutput #error{-moz-border-radius:8px;border:1px solid #970000;background-color:#F7E8E8;margin:.5em;padding:.5em;}.jsonViewOutput .errormessage{font-family:monospace;}.jsonViewOutput #json{font-family:monospace;font-size:1.1em;}.jsonViewOutput ul{list-style:none;margin:0 0 0 2em;padding:0;}.jsonViewOutput h1{font-size:1.2em;}.jsonViewOutput .callback + #json{padding-left:1em;}.jsonViewOutput .callback{font-family:monospace;color:#A52A2A;}.jsonViewOutput .bool,.jsonViewOutput .num{color:blue;}</style>",l=(void 0!==this.targetType&&(this.idType=this.targetType,this.id=this.target),"class"===this.idType?(o=document.getElementsByClassName(this.id))&&(o.className+=o.className?" jsonViewOutput":"jsonViewOutput",o.innerHTML=e+t):"id"===this.idType&&((o=document.getElementById(this.id))&&(o.className+=o.className?" jsonViewOutput":"jsonViewOutput",o.innerHTML=e+t),o.innerHTML=e+t),document.getElementsByClassName("collapsible")),s=l.length,u=0;u<s;u++)addCollapser(l[u].parentNode)}}!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof exports?module.exports=e(require("jquery")):e(jQuery)}(function(p){var n=/\+/g;function d(e){return h.raw?e:encodeURIComponent(e)}function f(e,t){e=h.raw?e:function(e){0===e.indexOf('"')&&(e=e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\"));try{return e=decodeURIComponent(e.replace(n," ")),h.json?JSON.parse(e):e}catch(e){}}(e);return"function"==typeof t?t(e):e}var h=p.cookie=function(e,t,n){var r,a;if(1<arguments.length&&"function"!=typeof t)return"number"==typeof(n=p.extend({},h.defaults,n)).expires&&(r=n.expires,(a=n.expires=new Date).setMilliseconds(a.getMilliseconds()+864e5*r)),document.cookie=[d(e),"=",(a=t,d(h.json?JSON.stringify(a):String(a))),n.expires?"; expires="+n.expires.toUTCString():"",n.path?"; path="+n.path:"",n.domain?"; domain="+n.domain:"",n.secure?"; secure":""].join("");for(var i=e?void 0:{},o=document.cookie?document.cookie.split("; "):[],l=0,c=o.length;l<c;l++){var s=o[l].split("="),u=(u=s.shift(),h.raw?u:decodeURIComponent(u)),s=s.join("=");if(e===u){i=f(s,t);break}e||void 0===(s=f(s))||(i[u]=s)}return i};h.defaults={},p.removeCookie=function(e,t){return p.cookie(e,"",p.extend({},t,{expires:-1})),!p.cookie(e)}}),function(a){a.fn.alphanum=function(e){return n(this,s,r(e)),this},a.fn.alpha=function(e){var t=r("alpha");return n(this,s,r(e,t)),this},a.fn.numeric=function(r){return n(this,T,y(r)),this.on("blur",function(){var e,t,n;e=this,t=r,n=parseFloat(a(e).val()),e=a(e),isNaN(n)?e.val(""):(v(t.min)&&n<t.min&&e.val(""),v(t.max)&&n>t.max&&e.val(""))}),this};var e,t,c={allow:"",disallow:"",allowSpace:!0,allowNumeric:!0,allowUpper:!0,allowLower:!0,allowCaseless:!0,allowLatin:!0,allowOtherCharSets:!0,maxLength:NaN},d={allowPlus:!1,allowMinus:!0,allowThouSep:!0,allowDecSep:!0,allowLeadingSpaces:!1,maxDigits:NaN,maxDecimalPlaces:NaN,maxPreDecimalPlaces:NaN,max:NaN,min:NaN},f={alpha:{allowNumeric:!1},upper:{allowNumeric:!1,allowUpper:!0,allowLower:!1,allowCaseless:!0},lower:{allowNumeric:!1,allowUpper:!1,allowLower:!0,allowCaseless:!0}},h={integer:{allowPlus:!1,allowMinus:!0,allowThouSep:!1,allowDecSep:!1},positiveInteger:{allowPlus:!1,allowMinus:!1,allowThouSep:!1,allowDecSep:!1}},m=(e="!@#$%^&*()+=[]\\';,/{}|\":<>?~`.-_",(e+=" ")+"¬€£¦"),i=",",o=".",p=function(){var e,t="0123456789".split(""),n={},r=0;for(r=0;r<t.length;r++)e=t[r],n[e]=!0;return n}(),g=(t=(e="abcdefghijklmnopqrstuvwxyz").toUpperCase(),new u(e+t));function n(e,l,s){e.each(function(){var o=a(this);o.on("keyup change paste",function(e){var i="";e.originalEvent&&e.originalEvent.clipboardData&&e.originalEvent.clipboardData.getData&&(i=e.originalEvent.clipboardData.getData("text/plain")),setTimeout(function(){var e=o,t=l,n=s,r=i,a=e.val();""==a&&0<r.length&&(a=r),r=t(a,n),a!=r&&(t=e.alphanum_caret(),e.val(r),a.length==r.length+1?e.alphanum_caret(t-1):e.alphanum_caret(t))},0)}),o.on("keypress",function(e){var t,n,r,a=e.charCode||e.which;!(32<=(t=a)||10==t||13==t)||e.ctrlKey||e.metaKey||(t=String.fromCharCode(a),r=(a=o.selection()).start,a=a.end,r=(n=o.val()).substring(0,r)+t+n.substring(a),l(r,s)!=r&&e.preventDefault())})})}function v(e){return!isNaN(e)}function r(e,t){var n={},e="string"==typeof e?f[e]:void 0===e?{}:e;return a.extend(n,t=void 0===t?c:t,e),void 0===n.blacklist&&(n.blacklistSet=function(e,t){t=new u(m+t),e=new u(e);return t.subtract(e)}(n.allow,n.disallow)),n}function y(e){var t={},e="string"==typeof e?h[e]:void 0===e?{}:e;return a.extend(t,d,e),t}function w(e,t,n){if(p[t])return!function(e,t){t=t.maxDigits;if(""==t||isNaN(t))return!1;e=l(e);return t<=e}(e,n)&&(!function(e,t){t=t.maxPreDecimalPlaces;if(""==t||isNaN(t))return!1;if(0<=e.indexOf(o))return!1;e=l(e);return t<=e}(e,n)&&(!function(e,t){t=t.maxDecimalPlaces;if(""==t||isNaN(t))return!1;var n=e.indexOf(o);if(-1==n)return!1;e=l(e.substring(n));return t<=e}(e,n)&&(r=e+t,(!(a=n).max||a.max<0||!(parseFloat(r)>a.max))&&(r=e+t,!(a=n).min||0<a.min||!(parseFloat(r)<a.min)))));var r,a;if(n.allowPlus&&"+"==t&&""==e)return 1;if(n.allowMinus&&"-"==t&&""==e)return 1;if(t==i&&n.allowThouSep&&function(e){if(0==e.length)return!1;if(0<=e.indexOf(o))return!1;var t=e.indexOf(i);if(t<0)return!0;var n=e.lastIndexOf(i);return!(e.length-n-1<3)&&!(0<l(e.substring(t))%3)}(e))return 1;if(t==o){if(0<=e.indexOf(o))return;if(n.allowDecSep)return 1}}function l(e){return(e+="").replace(/[^0-9]/g,"").length}function s(e,c){if("string"!=typeof e)return e;for(var t,n,r,a,i=e.split(""),o=[],l=0,l=0;l<i.length;l++){var s=i[l],u=o.join("");u=u,t=s,a=r=void 0,!((n=c).maxLength&&u.length>=n.maxLength)&&(0<=n.allow.indexOf(t)||n.allowSpace&&" "==t||!(n.blacklistSet.contains(t)||!n.allowNumeric&&p[t]||!n.allowUpper&&(r=(u=t).toUpperCase(),a=u.toLowerCase(),u==r&&r!=a)||!n.allowLower&&(r=(u=t).toUpperCase(),a=u.toLowerCase(),u==a&&r!=a)||!n.allowCaseless&&(u=t).toUpperCase()==u.toLowerCase()||!n.allowLatin&&g.contains(t))&&(n.allowOtherCharSets||p[t]||g.contains(t)))&&o.push(s)}return o.join("")}function T(e,t){if("string"!=typeof e)return e;for(var n=e.split(""),r=[],a=0,a=0;a<n.length;a++){var i=n[a];w(r.join(""),i,t)&&r.push(i)}return r.join("")}function u(e){this.map="string"==typeof e?function(e){var t,n={},r=e.split(""),a=0;for(a=0;a<r.length;a++)t=r[a],n[t]=!0;return n}(e):{}}u.prototype.add=function(e){var t,n=this.clone();for(t in e.map)n.map[t]=!0;return n},u.prototype.subtract=function(e){var t,n=this.clone();for(t in e.map)delete n.map[t];return n},u.prototype.contains=function(e){return!!this.map[e]},u.prototype.clone=function(){var e,t=new u;for(e in this.map)t.map[e]=!0;return t},a.fn.alphanum.backdoorAlphaNum=function(e,t){return s(e,r(t))},a.fn.alphanum.backdoorNumeric=function(e,t){return T(e,y(t))},a.fn.alphanum.setNumericSeparators=function(e){1==e.thousandsSeparator.length&&1==e.decimalSeparator.length&&(i=e.thousandsSeparator,o=e.decimalSeparator)}}(jQuery),function(a){function i(e,t){var n;e.createTextRange?((n=e.createTextRange()).move("character",t),n.select()):null!=e.selectionStart&&(e.trigger("focus"),e.setSelectionRange(t,t))}a.fn.alphanum_caret=function(n,r){if(void 0!==n)return this.queue(function(e){var t;isNaN(n)?(t=a(this).val().indexOf(n),!0===r?t+=n.length:void 0!==r&&(t+=r),i(this,t)):i(this,n),e()});var e=this.get(0);if("selection"in document){var t=e.createTextRange();try{t.setEndPoint("EndToStart",document.selection.createRange())}catch(e){return 0}return t.text.length}return null!=e.selectionStart?e.selectionStart:void 0}}(jQuery),function(p){function d(e){return e?e.ownerDocument.defaultView||e.ownerDocument.parentWindow:window}function f(e,t){var n,r,a=p.Range.current(e).clone(),e=p.Range(e).select(e);return a.overlaps(e)?(a.compare("START_TO_START",e)<1?(n=0,a.move("START_TO_START",e)):((r=e.clone()).move("END_TO_START",a),n=r.toString().length),{start:n,end:0<=a.compare("END_TO_END",e)?e.toString().length:n+a.toString().length}):null}var o=function(e,t,n,r){"number"==typeof n[0]&&n[0]<t&&(n[0]={el:r,count:n[0]-e}),"number"==typeof n[1]&&n[1]<=t&&(n[1]={el:r,count:n[1]-e})},h=function(e,t,n){var r,a;n=n||0;for(var i=0;e[i];i++)3===(r=e[i]).nodeType||4===r.nodeType?(a=n,n+=r.nodeValue.length,o(a,n,t,r)):8!==r.nodeType&&(n=h(r.childNodes,t,n));return n};p.fn.selection=function(l,s){if(void 0!==l)return this.each(function(){var e,t,n,r,a,i,o;t=l,n=s,o=d(e=this),e.setSelectionRange?void 0===n?(e.trigger("focus"),e.setSelectionRange(t,t)):(e.select(),e.selectionStart=t,e.selectionEnd=n):e.createTextRange?((a=e.createTextRange()).moveStart("character",t),a.moveEnd("character",(n=n||t)-e.value.length),a.select()):o.getSelection?(a=o.document,r=o.getSelection(),i=a.createRange(),h([e],a=[t,void 0!==n?n:t]),i.setStart(a[0].el,a[0].count),i.setEnd(a[1].el,a[1].count),r.removeAllRanges(),r.addRange(i)):o.document.body.createTextRange&&((i=document.body.createTextRange()).moveToElementText(e),i.collapse(),i.moveStart("character",t),i.moveEnd("character",void 0!==n?n:t),i.select())});var e,t,n,r=this[0],c=d(r);if(void 0!==r.selectionStart)return document.activeElement&&document.activeElement!==r&&r.selectionStart===r.selectionEnd&&0===r.selectionStart?{start:r.value.length,end:r.value.length}:{start:r.selectionStart,end:r.selectionEnd};if(c.getSelection)return f(r);try{if("input"===r.nodeName.toLowerCase())return e=d(r).document.selection.createRange(),(t=r.createTextRange()).setEndPoint("EndToStart",e),{start:n=t.text.length,end:n+e.text.length};var a=f(r);if(!a)return a;var i=p.Range.current().clone(),o=i.clone().collapse().range,u=i.clone().collapse(!1).range;return o.moveStart("character",-1),u.moveStart("character",-1),0!==a.startPos&&""===o.text&&(a.startPos+=2),0!==a.endPos&&""===u.text&&(a.endPos+=2),a}catch(e){return{start:r.value.length,end:r.value.length}}},p.fn.selection.getCharElement=h}(jQuery),function(o){o.fn.serializeForm=function(){if(this.length<1)return!1;function e(){if(!this.disabled){var e=this.name.replace(/\[([^\]]+)?\]/g,",$1").split(","),t=e.length-1,n=o(this);if(e[0]){for(var r=0;r<t;r++)i=i[e[r]]=i[e[r]]||(""===e[r+1]||"0"===e[r+1]?[]:{});void 0!==i.length?i.push(n.val()):i[e[t]]=n.val(),i=a}}}var a={},i=a,t=':input[type!="checkbox"][type!="radio"], input:checked';return this.filter(t).each(e),this.find(t).each(e),a}}(jQuery),function(e){var t;"function"==typeof define&&define.amd?define(["jquery"],e):"object"==typeof exports?(t=require("jquery"),module.exports=e(t)):e(window.jQuery||window.Zepto||window.$)}(function(u){"use strict";var l=/\r?\n/g,n=/^(?:submit|button|image|reset|file)$/i,r=/^(?:input|select|textarea|keygen)/i,s=/^(?:checkbox|radio)$/i,o=(u.fn.serializeJSON=function(e){var i=u.serializeJSON,o=i.setupOpts(e),l=u.extend({},o.defaultTypes,o.customTypes),e=i.serializeArray(this,o),s={};return u.each(e,function(e,t){var n,r=t.name,a=u(t.el).attr("data-value-type");a||o.disableColonTypes||(r=(n=i.splitType(t.name))[0],a=n[1]),"skip"!==a&&(a=a||o.defaultType,!(n=i.applyTypeFunc(t.name,t.value,a,t.el,l))&&i.shouldSkipFalsy(t.name,r,a,t.el,o)||(a=i.splitInputNameIntoKeysArray(r),i.deepSet(s,a,n,o)))}),s},u.serializeJSON={defaultOptions:{},defaultBaseOptions:{checkboxUncheckedValue:void 0,useIntKeysAsArrayIndex:!1,skipFalsyValuesForTypes:[],skipFalsyValuesForFields:[],disableColonTypes:!1,customTypes:{},defaultTypes:{string:function(e){return String(e)},number:function(e){return Number(e)},boolean:function(e){return-1===["false","null","undefined","","0"].indexOf(e)},null:function(e){return-1===["false","null","undefined","","0"].indexOf(e)?e:null},array:function(e){return JSON.parse(e)},object:function(e){return JSON.parse(e)},skip:null},defaultType:"string"},setupOpts:function(e){var t,n=u.serializeJSON,r=["checkboxUncheckedValue","useIntKeysAsArrayIndex","skipFalsyValuesForTypes","skipFalsyValuesForFields","disableColonTypes","customTypes","defaultTypes","defaultType"];for(t in e=null==e?{}:e)if(-1===r.indexOf(t))throw new Error("serializeJSON ERROR: invalid option '"+t+"'. Please use one of "+r.join(", "));return u.extend({},n.defaultBaseOptions,n.defaultOptions,e)},serializeArray:function(e,i){var o,t;return null==i&&(i={}),o=u.serializeJSON,e.map(function(){return(t=u.prop(this,"elements"))?u.makeArray(t):this}).filter(function(){var e=u(this),t=this.type;return this.name&&!e.is(":disabled")&&r.test(this.nodeName)&&!n.test(t)&&(this.checked||!s.test(t)||null!=o.getCheckboxUncheckedValue(e,i))}).map(function(e,t){var n=u(this),r=n.val(),a=this.type;return null==r?null:(s.test(a)&&!this.checked&&(r=o.getCheckboxUncheckedValue(n,i)),f(r)?u.map(r,function(e){return{name:t.name,value:e.replace(l,"\r\n"),el:t}}):{name:t.name,value:r.replace(l,"\r\n"),el:t})}).get()},getCheckboxUncheckedValue:function(e,t){e=e.attr("data-unchecked-value");return e=null==e?t.checkboxUncheckedValue:e},applyTypeFunc:function(e,t,n,r,a){var i=a[n];if(!i)throw new Error("serializeJSON ERROR: Invalid type "+n+" found in input name '"+e+"', please use one of "+o(a).join(", "));return i(t,r)},splitType:function(e){var t,n=e.split(":");return 1<n.length?(t=n.pop(),[n.join(":"),t]):[e,""]},shouldSkipFalsy:function(e,t,n,r,a){var r=u(r).attr("data-skip-falsy");return null!=r?"false"!==r:!(!(r=a.skipFalsyValuesForFields)||-1===r.indexOf(t)&&-1===r.indexOf(e))||!(!(t=a.skipFalsyValuesForTypes)||-1===t.indexOf(n))},splitInputNameIntoKeysArray:function(e){e=e.split("[");return""===(e=u.map(e,function(e){return e.replace(/\]/g,"")}))[0]&&e.shift(),e},deepSet:function(e,t,n,r){null==r&&(r={});var a=u.serializeJSON;if(p(e))throw new Error("ArgumentError: param 'o' expected to be an object or array, found undefined");if(!t||0===t.length)throw new Error("ArgumentError: param 'keys' expected to be an array with least one element");var i,o,l,s=t[0];1!==t.length?(i=t[1],t=t.slice(1),""===s&&(l=e[o=e.length-1],s=c(l)&&p(a.deepGet(l,t))?o:1+o),""===i||r.useIntKeysAsArrayIndex&&d(i)?!p(e[s])&&f(e[s])||(e[s]=[]):!p(e[s])&&c(e[s])||(e[s]={}),a.deepSet(e[s],t,n,r)):""===s?e.push(n):e[s]=n},deepGet:function(e,t){var n=u.serializeJSON;if(p(e)||p(t)||0===t.length||!c(e)&&!f(e))return e;var r=t[0];return""!==r?1===t.length?e[r]:(t=t.slice(1),n.deepGet(e[r],t)):void 0}},function(e){if(Object.keys)return Object.keys(e);var t,n=[];for(t in e)n.push(t);return n}),c=function(e){return e===Object(e)},p=function(e){return void 0===e},d=function(e){return/^[0-9]+$/.test(String(e))},f=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}}),function(e,t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof exports?t(require("jquery")):t(e.jQuery)}(this,function(n){"use strict";n.fn.typeWatch=function(e){var i=n.extend({wait:750,callback:function(){},highlight:!0,captureLength:2,allowSubmit:!1,inputTypes:["TEXT","TEXTAREA","PASSWORD","TEL","SEARCH","URL","EMAIL","DATETIME","DATE","MONTH","WEEK","TIME","DATETIME-LOCAL","NUMBER","RANGE","DIV"]},e);function t(e){var a,n=(e.type||e.nodeName).toUpperCase();0<=jQuery.inArray(n,i.inputTypes)&&(a={timer:null,text:"DIV"===n?jQuery(e).html():jQuery(e).val(),cb:i.callback,el:e,type:n,wait:i.wait},i.highlight&&"DIV"!==n&&jQuery(e).on("focus",function(){this.trigger("select")}),jQuery(e).on("keydown paste cut input",function(e){var t=a.wait,r=!1;void 0!==e.keyCode&&13==e.keyCode&&"TEXTAREA"!==n&&"DIV"!==n&&(t=1,r=!0);clearTimeout(a.timer),a.timer=setTimeout(function(){var e,t,n;t=r,((n="DIV"===(e=a).type?jQuery(e.el).html():jQuery(e.el).val()).length>=i.captureLength&&n!=e.text||t&&(n.length>=i.captureLength||i.allowSubmit)||0==n.length&&e.text)&&(e.text=n,e.cb.call(e.el,n))},t)}))}return this.each(function(){t(this)})}});
redux-core/assets/js/vendor/jquery.alphanum.js CHANGED
@@ -23,8 +23,8 @@
23
 
24
  $.fn.alpha = function( settings ) {
25
 
26
- var defaultAlphaSettings = getCombinedSettingsAlphaNum( "alpha" );
27
- var combinedSettings = getCombinedSettingsAlphaNum( settings, defaultAlphaSettings );
28
 
29
  var $collection = this;
30
 
@@ -36,7 +36,7 @@
36
  $.fn.numeric = function( settings ) {
37
 
38
  var combinedSettings = getCombinedSettingsNum( settings );
39
- var $collection = this;
40
 
41
  setupEventHandlers( $collection, trimNum, combinedSettings );
42
 
@@ -65,7 +65,7 @@
65
  allowLatin: true, // a-z A-Z
66
  allowOtherCharSets: true, // eg �, �, Arabic, Chinese etc
67
  maxLength: NaN // eg Max Length
68
- }
69
 
70
  var DEFAULT_SETTINGS_NUM = {
71
  allowPlus: false, // Allow the + sign
@@ -77,38 +77,38 @@
77
  maxPreDecimalPlaces: NaN, // The max number digits before the decimal point
78
  max: NaN, // The max numeric value allowed
79
  min: NaN // The min numeric value allowed
80
- }
81
 
82
  // Some pre-defined groups of settings for convenience
83
  var CONVENIENCE_SETTINGS_ALPHANUM = {
84
- "alpha": {
85
  allowNumeric: false
86
- }, "upper": {
87
  allowNumeric: false, allowUpper: true, allowLower: false, allowCaseless: true
88
- }, "lower": {
89
  allowNumeric: false, allowUpper: false, allowLower: true, allowCaseless: true
90
  }
91
  };
92
 
93
  // Some pre-defined groups of settings for convenience
94
  var CONVENIENCE_SETTINGS_NUMERIC = {
95
- "integer": {
96
  allowPlus: false, allowMinus: true, allowThouSep: false, allowDecSep: false
97
- }, "positiveInteger": {
98
  allowPlus: false, allowMinus: false, allowThouSep: false, allowDecSep: false
99
  }
100
  };
101
 
102
- var BLACKLIST = getBlacklistAscii() + getBlacklistNonAscii();
103
- var THOU_SEP = ",";
104
- var DEC_SEP = ".";
105
- var DIGITS = getDigitsMap();
106
  var LATIN_CHARS = getLatinCharsSet();
107
 
108
  // Return the blacklisted special chars that are encodable using 7-bit ascii
109
  function getBlacklistAscii() {
110
  var blacklist = '!@#$%^&*()+=[]\\\';,/{}|":<>?~`.-_';
111
- blacklist += " "; // 'Space' is on the blacklist but can be enabled using the 'allowSpace' config entry
112
  return blacklist;
113
  }
114
 
@@ -117,10 +117,10 @@
117
  // Higher order chars must be escaped eg "\xAC"
118
  // Not too worried about comments containing higher order characters for now (let's wait and see if it becomes a problem)
119
  function getBlacklistNonAscii() {
120
- var blacklist = "\xAC" // �
121
- + "\u20AC" // �
122
- + "\xA3" // �
123
- + "\xA6" // �
124
  ;
125
  return blacklist;
126
  }
@@ -135,11 +135,12 @@
135
 
136
  var $textbox = $( this );
137
 
138
- $textbox.on( "keyup change paste", function( e ) {
139
 
140
- var pastedText = "";
141
 
142
- if ( e.originalEvent && e.originalEvent.clipboardData && e.originalEvent.clipboardData.getData ) pastedText = e.originalEvent.clipboardData.getData( "text/plain" )
 
143
 
144
  // setTimeout is necessary for handling the 'paste' event
145
  setTimeout( function() {
@@ -147,11 +148,11 @@
147
  }, 0 );
148
  } );
149
 
150
- $textbox.on( "keypress", function( e ) {
151
 
152
  // Determine which key is pressed.
153
  // If it's a control key, then allow the event's default action to occur eg backspace, tab
154
- var charCode = ! e.charCode ? e.which : e.charCode;
155
  if ( isControlKey( charCode ) || e.ctrlKey || e.metaKey ) // cmd on MacOS
156
  return;
157
 
@@ -159,8 +160,8 @@
159
 
160
  // Determine if some text was selected / highlighted when the key was pressed
161
  var selectionObject = $textbox.selection();
162
- var start = selectionObject.start;
163
- var end = selectionObject.end;
164
 
165
  var textBeforeKeypress = $textbox.val();
166
 
@@ -175,7 +176,7 @@
175
  // Unfortunately, it isn't enough to just check if the new char is valid because some chars
176
  // are position sensitive eg the decimal point '.'' or the minus sign '-'' are only valid in certain positions.
177
  var potentialTextAfterKeypress = textBeforeKeypress.substring( 0, start ) + newChar + textBeforeKeypress.substring( end );
178
- var validatedText = trimFunction( potentialTextAfterKeypress, settings );
179
 
180
  // If the keypress would cause the textbox to contain invalid characters, then cancel the keypress event
181
  if ( validatedText != potentialTextAfterKeypress ) e.preventDefault();
@@ -188,20 +189,20 @@
188
  // This catches the case where a user enters '-' or '.' without entering any digits
189
  function numericField_Blur( inputBox, settings ) {
190
  var fieldValueNumeric = parseFloat( $( inputBox ).val() );
191
- var $inputBox = $( inputBox );
192
 
193
  if ( isNaN( fieldValueNumeric ) ) {
194
- $inputBox.val( "" );
195
  return;
196
  }
197
 
198
- if ( isNumeric( settings.min ) && fieldValueNumeric < settings.min ) $inputBox.val( "" );
199
 
200
- if ( isNumeric( settings.max ) && fieldValueNumeric > settings.max ) $inputBox.val( "" );
201
  }
202
 
203
  function isNumeric( value ) {
204
- return ! isNaN( value );
205
  }
206
 
207
  function isControlKey( charCode ) {
@@ -222,7 +223,7 @@
222
 
223
  var inputString = $textBox.val();
224
 
225
- if ( inputString == "" && pastedText.length > 0 ) inputString = pastedText;
226
 
227
  var outputString = trimFunction( inputString, settings );
228
 
@@ -237,20 +238,21 @@
237
  }
238
 
239
  function getCombinedSettingsAlphaNum( settings, defaultSettings ) {
240
- if ( typeof defaultSettings == "undefined" ) defaultSettings = DEFAULT_SETTINGS_ALPHANUM;
241
  var userSettings, combinedSettings = {};
242
- if ( typeof settings === "string" ) userSettings = CONVENIENCE_SETTINGS_ALPHANUM[settings]; else if ( typeof settings == "undefined" ) userSettings = {}; else userSettings = settings;
243
 
244
  $.extend( combinedSettings, defaultSettings, userSettings );
245
 
246
- if ( typeof combinedSettings.blacklist == 'undefined' ) combinedSettings.blacklistSet = getBlacklistSet( combinedSettings.allow, combinedSettings.disallow );
 
247
 
248
  return combinedSettings;
249
  }
250
 
251
  function getCombinedSettingsNum( settings ) {
252
  var userSettings, combinedSettings = {};
253
- if ( typeof settings === "string" ) userSettings = CONVENIENCE_SETTINGS_NUMERIC[settings]; else if ( typeof settings == "undefined" ) userSettings = {}; else userSettings = settings;
254
 
255
  $.extend( combinedSettings, DEFAULT_SETTINGS_NUM, userSettings );
256
 
@@ -264,21 +266,21 @@
264
 
265
  if ( settings.allow.indexOf( Char ) >= 0 ) return true;
266
 
267
- if ( settings.allowSpace && (Char == " ") ) return true;
268
 
269
  if ( settings.blacklistSet.contains( Char ) ) return false;
270
 
271
- if ( ! settings.allowNumeric && DIGITS[Char] ) return false;
272
 
273
- if ( ! settings.allowUpper && isUpper( Char ) ) return false;
274
 
275
- if ( ! settings.allowLower && isLower( Char ) ) return false;
276
 
277
- if ( ! settings.allowCaseless && isCaseless( Char ) ) return false;
278
 
279
- if ( ! settings.allowLatin && LATIN_CHARS.contains( Char ) ) return false;
280
 
281
- if ( ! settings.allowOtherCharSets ) {
282
  if ( DIGITS[Char] || LATIN_CHARS.contains( Char ) ) return true; else return false;
283
  }
284
 
@@ -320,17 +322,17 @@
320
  function countDigits( string ) {
321
 
322
  // Error handling, nulls etc
323
- string = string + "";
324
 
325
  // Count the digits
326
- return string.replace( /[^0-9]/g, "" ).length;
327
  }
328
 
329
  function isMaxDigitsReached( string, settings ) {
330
 
331
  var maxDigits = settings.maxDigits;
332
 
333
- if ( maxDigits == "" || isNaN( maxDigits ) ) return false; // In this case, there is no maximum
334
 
335
  var numDigits = countDigits( string );
336
 
@@ -343,14 +345,14 @@
343
 
344
  var maxDecimalPlaces = settings.maxDecimalPlaces;
345
 
346
- if ( maxDecimalPlaces == "" || isNaN( maxDecimalPlaces ) ) return false; // In this case, there is no maximum
347
 
348
  var indexOfDecimalPoint = string.indexOf( DEC_SEP );
349
 
350
- if ( indexOfDecimalPoint == - 1 ) return false;
351
 
352
  var decimalSubstring = string.substring( indexOfDecimalPoint );
353
- var numDecimals = countDigits( decimalSubstring );
354
 
355
  if ( numDecimals >= maxDecimalPlaces ) return true;
356
 
@@ -361,7 +363,7 @@
361
 
362
  var maxPreDecimalPlaces = settings.maxPreDecimalPlaces;
363
 
364
- if ( maxPreDecimalPlaces == "" || isNaN( maxPreDecimalPlaces ) ) return false; // In this case, there is no maximum
365
 
366
  var indexOfDecimalPoint = string.indexOf( DEC_SEP );
367
 
@@ -376,7 +378,7 @@
376
 
377
  function isGreaterThanMax( numericString, settings ) {
378
 
379
- if ( ! settings.max || settings.max < 0 ) return false;
380
 
381
  var outputNumber = parseFloat( numericString );
382
  if ( outputNumber > settings.max ) return true;
@@ -386,7 +388,7 @@
386
 
387
  function isLessThanMin( numericString, settings ) {
388
 
389
- if ( ! settings.min || settings.min > 0 ) return false;
390
 
391
  var outputNumber = parseFloat( numericString );
392
  if ( outputNumber < settings.min ) return true;
@@ -399,46 +401,46 @@
399
  ********************************/
400
  function trimAlphaNum( inputString, settings ) {
401
 
402
- if ( typeof inputString != "string" ) return inputString;
403
 
404
- var inChars = inputString.split( "" );
405
  var outChars = [];
406
- var i = 0;
407
  var Char;
408
 
409
- for ( i = 0; i < inChars.length; i ++ ) {
410
- Char = inChars[i];
411
- var validatedStringFragment = outChars.join( "" );
412
  if ( alphanum_allowChar( validatedStringFragment, Char, settings ) ) outChars.push( Char );
413
  }
414
 
415
- return outChars.join( "" );
416
  }
417
 
418
  function trimNum( inputString, settings ) {
419
- if ( typeof inputString != "string" ) return inputString;
420
 
421
- var inChars = inputString.split( "" );
422
  var outChars = [];
423
- var i = 0;
424
  var Char;
425
 
426
- for ( i = 0; i < inChars.length; i ++ ) {
427
- Char = inChars[i];
428
- var validatedStringFragment = outChars.join( "" );
429
  if ( numeric_allowChar( validatedStringFragment, Char, settings ) ) outChars.push( Char );
430
  }
431
 
432
- return outChars.join( "" );
433
  }
434
 
435
  function removeUpperCase( inputString ) {
436
- var charArray = inputString.split( '' );
437
- var i = 0;
438
  var outputArray = [];
439
  var Char;
440
 
441
- for ( i = 0; i < charArray.length; i ++ ) {
442
  Char = charArray[i];
443
  }
444
  }
@@ -467,7 +469,7 @@
467
 
468
  function getBlacklistSet( allow, disallow ) {
469
 
470
- var setOfBadChars = new Set( BLACKLIST + disallow );
471
  var setOfGoodChars = new Set( allow );
472
 
473
  var blacklistSet = setOfBadChars.subtract( setOfGoodChars );
@@ -476,13 +478,13 @@
476
  }
477
 
478
  function getDigitsMap() {
479
- var array = "0123456789".split( "" );
480
- var map = {};
481
- var i = 0;
482
  var digit;
483
 
484
- for ( i = 0; i < array.length; i ++ ) {
485
- digit = array[i];
486
  map[digit] = true;
487
  }
488
 
@@ -490,9 +492,9 @@
490
  }
491
 
492
  function getLatinCharsSet() {
493
- var lower = "abcdefghijklmnopqrstuvwxyz";
494
  var upper = lower.toUpperCase();
495
- var azAZ = new Set( lower + upper );
496
 
497
  return azAZ;
498
  }
@@ -511,7 +513,7 @@
511
  // Check if this is the first occurrence of a THOU_SEP
512
  if ( posOfFirstThouSep < 0 ) return true;
513
 
514
- var posOfLastThouSep = currentString.lastIndexOf( THOU_SEP );
515
  var charsSinceLastThouSep = currentString.length - posOfLastThouSep - 1;
516
 
517
  // Check if there has been 3 digits since the last THOU_SEP
@@ -529,7 +531,7 @@
529
  // Implementation of a Set
530
  ////////////////////////////////////////////////////////////////////////////////////
531
  function Set( elems ) {
532
- if ( typeof elems == "string" ) this.map = stringToMap( elems ); else this.map = {};
533
  }
534
 
535
  Set.prototype.add = function( set ) {
@@ -539,7 +541,7 @@
539
  for ( var key in set.map ) newSet.map[key] = true;
540
 
541
  return newSet;
542
- }
543
 
544
  Set.prototype.subtract = function( set ) {
545
 
@@ -548,11 +550,11 @@
548
  for ( var key in set.map ) delete newSet.map[key];
549
 
550
  return newSet;
551
- }
552
 
553
  Set.prototype.contains = function( key ) {
554
  if ( this.map[key] ) return true; else return false;
555
- }
556
 
557
  Set.prototype.clone = function() {
558
  var newSet = new Set();
@@ -560,18 +562,18 @@
560
  for ( var key in this.map ) newSet.map[key] = true;
561
 
562
  return newSet;
563
- }
564
 
565
  ////////////////////////////////////////////////////////////////////////////////////
566
 
567
  function stringToMap( string ) {
568
- var map = {};
569
- var array = string.split( "" );
570
- var i = 0;
571
  var Char;
572
 
573
- for ( i = 0; i < array.length; i ++ ) {
574
- Char = array[i];
575
  map[Char] = true;
576
  }
577
 
@@ -598,8 +600,8 @@
598
  if ( settings.decimalSeparator.length != 1 ) return;
599
 
600
  THOU_SEP = settings.thousandsSeparator;
601
- DEC_SEP = settings.decimalSeparator;
602
- }
603
 
604
  })( jQuery );
605
 
@@ -614,10 +616,10 @@
614
  function caretTo( el, index ) {
615
  if ( el.createTextRange ) {
616
  var range = el.createTextRange();
617
- range.move( "character", index );
618
  range.select();
619
  } else if ( el.selectionStart != null ) {
620
- el.focus();
621
  el.setSelectionRange( index, index );
622
  }
623
  };
@@ -627,10 +629,10 @@
627
 
628
  // TODO: Get working with Opera
629
  function caretPos( el ) {
630
- if ( "selection" in document ) {
631
  var range = el.createTextRange();
632
  try {
633
- range.setEndPoint( "EndToStart", document.selection.createRange() );
634
  } catch ( e ) {
635
  // Catch IE failure here, return 0 like
636
  // other browsers
@@ -648,7 +650,7 @@
648
 
649
  // Set caret to a particular index
650
  $.fn.alphanum_caret = function( index, offset ) {
651
- if ( typeof (index) === "undefined" ) {
652
  return caretPos( this.get( 0 ) );
653
  }
654
 
@@ -658,7 +660,7 @@
658
 
659
  if ( offset === true ) {
660
  i += index.length;
661
- } else if ( typeof (offset) !== "undefined" ) {
662
  i += offset;
663
  }
664
 
@@ -679,179 +681,178 @@
679
  * https://github.com/jupiterjs/jquerymx/blob/master/dom/selection/selection.js
680
  ***********************************************************/
681
  (function( $ ) {
682
- var convertType = function( type ) {
683
- return type.replace( /([a-z])([a-z]+)/gi, function( all, first, next ) {
684
- return first + next.toLowerCase();
685
- } ).replace( /_/g, "" );
686
- }, reverse = function( type ) {
687
- return type.replace( /^([a-z]+)_TO_([a-z]+)/i, function( all, first, last ) {
688
- return last + "_TO_" + first;
689
- } );
690
- }, getWindow = function( element ) {
691
- return element ? element.ownerDocument.defaultView || element.ownerDocument.parentWindow : window;
692
- }, // A helper that uses range to abstract out getting the current start and endPos.
693
- getElementsSelection = function( el, win ) {
694
- var current = $.Range.current( el ).clone(), entireElement = $.Range( el ).select( el );
695
-
696
- if ( ! current.overlaps( entireElement ) ) {
697
- return null;
698
- }
699
- // we need to check if it starts before our element ...
700
- if ( current.compare( "START_TO_START", entireElement ) < 1 ) {
701
- var startPos = 0;
702
- // we should move current ...
703
- current.move( "START_TO_START", entireElement );
704
- } else {
705
- var fromElementToCurrent = entireElement.clone();
706
- fromElementToCurrent.move( "END_TO_START", current );
707
-
708
- startPos = fromElementToCurrent.toString().length;
709
- }
710
-
711
- // now we need to make sure current isn't to the right of us ...
712
- var endPos;
713
-
714
- if ( current.compare( "END_TO_END", entireElement ) >= 0 ) {
715
- endPos = entireElement.toString().length;
716
- } else {
717
- endPos = startPos + current.toString().length;
718
- }
719
-
720
- return {
721
- start: startPos, end: endPos
722
- };
723
- }, getSelection = function( el ) {
724
- // use selectionStart if we can.
725
- var win = getWindow( el );
726
-
727
- if ( el.selectionStart !== undefined ) {
728
- if ( document.activeElement && document.activeElement !== el && el.selectionStart === el.selectionEnd && el.selectionStart === 0 ) {
729
- return {start: el.value.length, end: el.value.length};
730
- }
731
-
732
- return {start: el.selectionStart, end: el.selectionEnd};
733
- } else if ( win.getSelection ) {
734
- return getElementsSelection( el, win );
735
- } else {
736
- try {
737
- //try 2 different methods that work differently
738
- // one should only work for input elements, but sometimes doesn't
739
- // I don't know why this is, or what to detect
740
- if ( el.nodeName.toLowerCase() === 'input' ) {
741
- var real = getWindow( el ).document.selection.createRange(), r = el.createTextRange();
742
-
743
- r.setEndPoint( "EndToStart", real );
744
-
745
- var start = r.text.length;
746
-
747
- return {
748
- start: start, end: start + real.text.length
749
- };
750
- } else {
751
- var res = getElementsSelection( el, win );
752
- if ( ! res ) {
753
- return res;
754
- }
755
-
756
- // we have to clean up for ie's textareas
757
- var current = $.Range.current().clone(), r2 = current.clone().collapse().range,
758
- r3 = current.clone().collapse( false ).range;
759
-
760
- r2.moveStart( 'character', - 1 );
761
- r3.moveStart( 'character', - 1 );
762
-
763
- // if we aren't at the start, but previous is empty, we are at start of newline
764
- if ( res.startPos !== 0 && r2.text === "" ) {
765
- res.startPos += 2;
766
- }
767
-
768
- // do a similar thing for the end of the textarea
769
- if ( res.endPos !== 0 && r3.text === "" ) {
770
- res.endPos += 2;
771
- }
772
-
773
- return res;
774
- }
775
- } catch ( e ) {
776
- return {start: el.value.length, end: el.value.length};
777
- }
778
- }
779
- }, select = function( el, start, end ) {
780
- var win = getWindow( el );
781
-
782
- if ( el.setSelectionRange ) {
783
- if ( end === undefined ) {
784
- el.focus();
785
- el.setSelectionRange( start, start );
786
- } else {
787
- el.select();
788
- el.selectionStart = start;
789
- el.selectionEnd = end;
790
- }
791
- } else if ( el.createTextRange ) {
792
- //el.focus();
793
- var r = el.createTextRange();
794
- r.moveStart( 'character', start );
795
- end = end || start;
796
- r.moveEnd( 'character', end - el.value.length );
797
-
798
- r.select();
799
- } else if ( win.getSelection ) {
800
- var doc = win.document, sel = win.getSelection(), range = doc.createRange(),
801
- ranges = [start, end !== undefined ? end : start];
802
- getCharElement( [el], ranges );
803
- range.setStart( ranges[0].el, ranges[0].count );
804
- range.setEnd( ranges[1].el, ranges[1].count );
805
-
806
- // removeAllRanges is suprisingly necessary for webkit ... BOOO!
807
- sel.removeAllRanges();
808
- sel.addRange( range );
809
-
810
- } else if ( win.document.body.createTextRange ) { //IE's weirdness
811
- var range = document.body.createTextRange();
812
-
813
- range.moveToElementText( el );
814
- range.collapse();
815
- range.moveStart( 'character', start );
816
- range.moveEnd( 'character', end !== undefined ? end : start );
817
- range.select();
818
- }
819
- }, /*
820
  * If one of the range values is within start and len, replace the range
821
  * value with the element and its offset.
822
  */
823
- replaceWithLess = function( start, len, range, el ) {
824
- if ( typeof range[0] === 'number' && range[0] < len ) {
825
- range[0] = {
826
- el: el, count: range[0] - start
827
- };
828
- }
829
- if ( typeof range[1] === 'number' && range[1] <= len ) {
830
- range[1] = {
831
- el: el, count: range[1] - start
832
- };
833
- }
834
- }, getCharElement = function( elems, range, len ) {
835
- var elem, start;
836
-
837
- len = len || 0;
838
-
839
- for ( var i = 0; elems[i]; i ++ ) {
840
- elem = elems[i];
841
- // Get the text from text nodes and CDATA nodes
842
- if ( elem.nodeType === 3 || elem.nodeType === 4 ) {
843
- start = len;
844
- len += elem.nodeValue.length;
845
- //check if len is now greater than what's in counts
846
- replaceWithLess( start, len, range, elem );
847
- // Traverse everything else, except comment nodes
848
- } else if ( elem.nodeType !== 8 ) {
849
- len = getCharElement( elem.childNodes, range, len );
850
- }
851
- }
852
-
853
- return len;
854
- };
855
 
856
  $.fn.selection = function( start, end ) {
857
  if ( start !== undefined ) {
23
 
24
  $.fn.alpha = function( settings ) {
25
 
26
+ var defaultAlphaSettings = getCombinedSettingsAlphaNum( 'alpha' );
27
+ var combinedSettings = getCombinedSettingsAlphaNum( settings, defaultAlphaSettings );
28
 
29
  var $collection = this;
30
 
36
  $.fn.numeric = function( settings ) {
37
 
38
  var combinedSettings = getCombinedSettingsNum( settings );
39
+ var $collection = this;
40
 
41
  setupEventHandlers( $collection, trimNum, combinedSettings );
42
 
65
  allowLatin: true, // a-z A-Z
66
  allowOtherCharSets: true, // eg �, �, Arabic, Chinese etc
67
  maxLength: NaN // eg Max Length
68
+ };
69
 
70
  var DEFAULT_SETTINGS_NUM = {
71
  allowPlus: false, // Allow the + sign
77
  maxPreDecimalPlaces: NaN, // The max number digits before the decimal point
78
  max: NaN, // The max numeric value allowed
79
  min: NaN // The min numeric value allowed
80
+ };
81
 
82
  // Some pre-defined groups of settings for convenience
83
  var CONVENIENCE_SETTINGS_ALPHANUM = {
84
+ 'alpha': {
85
  allowNumeric: false
86
+ }, 'upper': {
87
  allowNumeric: false, allowUpper: true, allowLower: false, allowCaseless: true
88
+ }, 'lower': {
89
  allowNumeric: false, allowUpper: false, allowLower: true, allowCaseless: true
90
  }
91
  };
92
 
93
  // Some pre-defined groups of settings for convenience
94
  var CONVENIENCE_SETTINGS_NUMERIC = {
95
+ 'integer': {
96
  allowPlus: false, allowMinus: true, allowThouSep: false, allowDecSep: false
97
+ }, 'positiveInteger': {
98
  allowPlus: false, allowMinus: false, allowThouSep: false, allowDecSep: false
99
  }
100
  };
101
 
102
+ var BLACKLIST = getBlacklistAscii() + getBlacklistNonAscii();
103
+ var THOU_SEP = ',';
104
+ var DEC_SEP = '.';
105
+ var DIGITS = getDigitsMap();
106
  var LATIN_CHARS = getLatinCharsSet();
107
 
108
  // Return the blacklisted special chars that are encodable using 7-bit ascii
109
  function getBlacklistAscii() {
110
  var blacklist = '!@#$%^&*()+=[]\\\';,/{}|":<>?~`.-_';
111
+ blacklist += ' '; // 'Space' is on the blacklist but can be enabled using the 'allowSpace' config entry
112
  return blacklist;
113
  }
114
 
117
  // Higher order chars must be escaped eg "\xAC"
118
  // Not too worried about comments containing higher order characters for now (let's wait and see if it becomes a problem)
119
  function getBlacklistNonAscii() {
120
+ var blacklist = '\xAC' // �
121
+ + '\u20AC' // �
122
+ + '\xA3' // �
123
+ + '\xA6' // �
124
  ;
125
  return blacklist;
126
  }
135
 
136
  var $textbox = $( this );
137
 
138
+ $textbox.on( 'keyup change paste', function( e ) {
139
 
140
+ var pastedText = '';
141
 
142
+ if ( e.originalEvent && e.originalEvent.clipboardData && e.originalEvent.clipboardData.getData ) pastedText = e.originalEvent.clipboardData.getData(
143
+ 'text/plain' );
144
 
145
  // setTimeout is necessary for handling the 'paste' event
146
  setTimeout( function() {
148
  }, 0 );
149
  } );
150
 
151
+ $textbox.on( 'keypress', function( e ) {
152
 
153
  // Determine which key is pressed.
154
  // If it's a control key, then allow the event's default action to occur eg backspace, tab
155
+ var charCode = !e.charCode ? e.which : e.charCode;
156
  if ( isControlKey( charCode ) || e.ctrlKey || e.metaKey ) // cmd on MacOS
157
  return;
158
 
160
 
161
  // Determine if some text was selected / highlighted when the key was pressed
162
  var selectionObject = $textbox.selection();
163
+ var start = selectionObject.start;
164
+ var end = selectionObject.end;
165
 
166
  var textBeforeKeypress = $textbox.val();
167
 
176
  // Unfortunately, it isn't enough to just check if the new char is valid because some chars
177
  // are position sensitive eg the decimal point '.'' or the minus sign '-'' are only valid in certain positions.
178
  var potentialTextAfterKeypress = textBeforeKeypress.substring( 0, start ) + newChar + textBeforeKeypress.substring( end );
179
+ var validatedText = trimFunction( potentialTextAfterKeypress, settings );
180
 
181
  // If the keypress would cause the textbox to contain invalid characters, then cancel the keypress event
182
  if ( validatedText != potentialTextAfterKeypress ) e.preventDefault();
189
  // This catches the case where a user enters '-' or '.' without entering any digits
190
  function numericField_Blur( inputBox, settings ) {
191
  var fieldValueNumeric = parseFloat( $( inputBox ).val() );
192
+ var $inputBox = $( inputBox );
193
 
194
  if ( isNaN( fieldValueNumeric ) ) {
195
+ $inputBox.val( '' );
196
  return;
197
  }
198
 
199
+ if ( isNumeric( settings.min ) && fieldValueNumeric < settings.min ) $inputBox.val( '' );
200
 
201
+ if ( isNumeric( settings.max ) && fieldValueNumeric > settings.max ) $inputBox.val( '' );
202
  }
203
 
204
  function isNumeric( value ) {
205
+ return !isNaN( value );
206
  }
207
 
208
  function isControlKey( charCode ) {
223
 
224
  var inputString = $textBox.val();
225
 
226
+ if ( inputString == '' && pastedText.length > 0 ) inputString = pastedText;
227
 
228
  var outputString = trimFunction( inputString, settings );
229
 
238
  }
239
 
240
  function getCombinedSettingsAlphaNum( settings, defaultSettings ) {
241
+ if ( typeof defaultSettings == 'undefined' ) defaultSettings = DEFAULT_SETTINGS_ALPHANUM;
242
  var userSettings, combinedSettings = {};
243
+ if ( typeof settings === 'string' ) userSettings = CONVENIENCE_SETTINGS_ALPHANUM[settings]; else if ( typeof settings == 'undefined' ) userSettings = {}; else userSettings = settings;
244
 
245
  $.extend( combinedSettings, defaultSettings, userSettings );
246
 
247
+ if ( typeof combinedSettings.blacklist == 'undefined' ) combinedSettings.blacklistSet = getBlacklistSet(
248
+ combinedSettings.allow, combinedSettings.disallow );
249
 
250
  return combinedSettings;
251
  }
252
 
253
  function getCombinedSettingsNum( settings ) {
254
  var userSettings, combinedSettings = {};
255
+ if ( typeof settings === 'string' ) userSettings = CONVENIENCE_SETTINGS_NUMERIC[settings]; else if ( typeof settings == 'undefined' ) userSettings = {}; else userSettings = settings;
256
 
257
  $.extend( combinedSettings, DEFAULT_SETTINGS_NUM, userSettings );
258
 
266
 
267
  if ( settings.allow.indexOf( Char ) >= 0 ) return true;
268
 
269
+ if ( settings.allowSpace && (Char == ' ') ) return true;
270
 
271
  if ( settings.blacklistSet.contains( Char ) ) return false;
272
 
273
+ if ( !settings.allowNumeric && DIGITS[Char] ) return false;
274
 
275
+ if ( !settings.allowUpper && isUpper( Char ) ) return false;
276
 
277
+ if ( !settings.allowLower && isLower( Char ) ) return false;
278
 
279
+ if ( !settings.allowCaseless && isCaseless( Char ) ) return false;
280
 
281
+ if ( !settings.allowLatin && LATIN_CHARS.contains( Char ) ) return false;
282
 
283
+ if ( !settings.allowOtherCharSets ) {
284
  if ( DIGITS[Char] || LATIN_CHARS.contains( Char ) ) return true; else return false;
285
  }
286
 
322
  function countDigits( string ) {
323
 
324
  // Error handling, nulls etc
325
+ string = string + '';
326
 
327
  // Count the digits
328
+ return string.replace( /[^0-9]/g, '' ).length;
329
  }
330
 
331
  function isMaxDigitsReached( string, settings ) {
332
 
333
  var maxDigits = settings.maxDigits;
334
 
335
+ if ( maxDigits == '' || isNaN( maxDigits ) ) return false; // In this case, there is no maximum
336
 
337
  var numDigits = countDigits( string );
338
 
345
 
346
  var maxDecimalPlaces = settings.maxDecimalPlaces;
347
 
348
+ if ( maxDecimalPlaces == '' || isNaN( maxDecimalPlaces ) ) return false; // In this case, there is no maximum
349
 
350
  var indexOfDecimalPoint = string.indexOf( DEC_SEP );
351
 
352
+ if ( indexOfDecimalPoint == -1 ) return false;
353
 
354
  var decimalSubstring = string.substring( indexOfDecimalPoint );
355
+ var numDecimals = countDigits( decimalSubstring );
356
 
357
  if ( numDecimals >= maxDecimalPlaces ) return true;
358
 
363
 
364
  var maxPreDecimalPlaces = settings.maxPreDecimalPlaces;
365
 
366
+ if ( maxPreDecimalPlaces == '' || isNaN( maxPreDecimalPlaces ) ) return false; // In this case, there is no maximum
367
 
368
  var indexOfDecimalPoint = string.indexOf( DEC_SEP );
369
 
378
 
379
  function isGreaterThanMax( numericString, settings ) {
380
 
381
+ if ( !settings.max || settings.max < 0 ) return false;
382
 
383
  var outputNumber = parseFloat( numericString );
384
  if ( outputNumber > settings.max ) return true;
388
 
389
  function isLessThanMin( numericString, settings ) {
390
 
391
+ if ( !settings.min || settings.min > 0 ) return false;
392
 
393
  var outputNumber = parseFloat( numericString );
394
  if ( outputNumber < settings.min ) return true;
401
  ********************************/
402
  function trimAlphaNum( inputString, settings ) {
403
 
404
+ if ( typeof inputString != 'string' ) return inputString;
405
 
406
+ var inChars = inputString.split( '' );
407
  var outChars = [];
408
+ var i = 0;
409
  var Char;
410
 
411
+ for ( i = 0; i < inChars.length; i++ ) {
412
+ Char = inChars[i];
413
+ var validatedStringFragment = outChars.join( '' );
414
  if ( alphanum_allowChar( validatedStringFragment, Char, settings ) ) outChars.push( Char );
415
  }
416
 
417
+ return outChars.join( '' );
418
  }
419
 
420
  function trimNum( inputString, settings ) {
421
+ if ( typeof inputString != 'string' ) return inputString;
422
 
423
+ var inChars = inputString.split( '' );
424
  var outChars = [];
425
+ var i = 0;
426
  var Char;
427
 
428
+ for ( i = 0; i < inChars.length; i++ ) {
429
+ Char = inChars[i];
430
+ var validatedStringFragment = outChars.join( '' );
431
  if ( numeric_allowChar( validatedStringFragment, Char, settings ) ) outChars.push( Char );
432
  }
433
 
434
+ return outChars.join( '' );
435
  }
436
 
437
  function removeUpperCase( inputString ) {
438
+ var charArray = inputString.split( '' );
439
+ var i = 0;
440
  var outputArray = [];
441
  var Char;
442
 
443
+ for ( i = 0; i < charArray.length; i++ ) {
444
  Char = charArray[i];
445
  }
446
  }
469
 
470
  function getBlacklistSet( allow, disallow ) {
471
 
472
+ var setOfBadChars = new Set( BLACKLIST + disallow );
473
  var setOfGoodChars = new Set( allow );
474
 
475
  var blacklistSet = setOfBadChars.subtract( setOfGoodChars );
478
  }
479
 
480
  function getDigitsMap() {
481
+ var array = '0123456789'.split( '' );
482
+ var map = {};
483
+ var i = 0;
484
  var digit;
485
 
486
+ for ( i = 0; i < array.length; i++ ) {
487
+ digit = array[i];
488
  map[digit] = true;
489
  }
490
 
492
  }
493
 
494
  function getLatinCharsSet() {
495
+ var lower = 'abcdefghijklmnopqrstuvwxyz';
496
  var upper = lower.toUpperCase();
497
+ var azAZ = new Set( lower + upper );
498
 
499
  return azAZ;
500
  }
513
  // Check if this is the first occurrence of a THOU_SEP
514
  if ( posOfFirstThouSep < 0 ) return true;
515
 
516
+ var posOfLastThouSep = currentString.lastIndexOf( THOU_SEP );
517
  var charsSinceLastThouSep = currentString.length - posOfLastThouSep - 1;
518
 
519
  // Check if there has been 3 digits since the last THOU_SEP
531
  // Implementation of a Set
532
  ////////////////////////////////////////////////////////////////////////////////////
533
  function Set( elems ) {
534
+ if ( typeof elems == 'string' ) this.map = stringToMap( elems ); else this.map = {};
535
  }
536
 
537
  Set.prototype.add = function( set ) {
541
  for ( var key in set.map ) newSet.map[key] = true;
542
 
543
  return newSet;
544
+ };
545
 
546
  Set.prototype.subtract = function( set ) {
547
 
550
  for ( var key in set.map ) delete newSet.map[key];
551
 
552
  return newSet;
553
+ };
554
 
555
  Set.prototype.contains = function( key ) {
556
  if ( this.map[key] ) return true; else return false;
557
+ };
558
 
559
  Set.prototype.clone = function() {
560
  var newSet = new Set();
562
  for ( var key in this.map ) newSet.map[key] = true;
563
 
564
  return newSet;
565
+ };
566
 
567
  ////////////////////////////////////////////////////////////////////////////////////
568
 
569
  function stringToMap( string ) {
570
+ var map = {};
571
+ var array = string.split( '' );
572
+ var i = 0;
573
  var Char;
574
 
575
+ for ( i = 0; i < array.length; i++ ) {
576
+ Char = array[i];
577
  map[Char] = true;
578
  }
579
 
600
  if ( settings.decimalSeparator.length != 1 ) return;
601
 
602
  THOU_SEP = settings.thousandsSeparator;
603
+ DEC_SEP = settings.decimalSeparator;
604
+ };
605
 
606
  })( jQuery );
607
 
616
  function caretTo( el, index ) {
617
  if ( el.createTextRange ) {
618
  var range = el.createTextRange();
619
+ range.move( 'character', index );
620
  range.select();
621
  } else if ( el.selectionStart != null ) {
622
+ el.trigger( 'focus' );
623
  el.setSelectionRange( index, index );
624
  }
625
  };
629
 
630
  // TODO: Get working with Opera
631
  function caretPos( el ) {
632
+ if ( 'selection' in document ) {
633
  var range = el.createTextRange();
634
  try {
635
+ range.setEndPoint( 'EndToStart', document.selection.createRange() );
636
  } catch ( e ) {
637
  // Catch IE failure here, return 0 like
638
  // other browsers
650
 
651
  // Set caret to a particular index
652
  $.fn.alphanum_caret = function( index, offset ) {
653
+ if ( typeof (index) === 'undefined' ) {
654
  return caretPos( this.get( 0 ) );
655
  }
656
 
660
 
661
  if ( offset === true ) {
662
  i += index.length;
663
+ } else if ( typeof (offset) !== 'undefined' ) {
664
  i += offset;
665
  }
666
 
681
  * https://github.com/jupiterjs/jquerymx/blob/master/dom/selection/selection.js
682
  ***********************************************************/
683
  (function( $ ) {
684
+ var convertType = function( type ) {
685
+ return type.replace( /([a-z])([a-z]+)/gi, function( all, first, next ) {
686
+ return first + next.toLowerCase();
687
+ } ).replace( /_/g, '' );
688
+ }, reverse = function( type ) {
689
+ return type.replace( /^([a-z]+)_TO_([a-z]+)/i, function( all, first, last ) {
690
+ return last + '_TO_' + first;
691
+ } );
692
+ }, getWindow = function( element ) {
693
+ return element ? element.ownerDocument.defaultView || element.ownerDocument.parentWindow : window;
694
+ }, // A helper that uses range to abstract out getting the current start and endPos.
695
+ getElementsSelection = function( el, win ) {
696
+ var current = $.Range.current( el ).clone(), entireElement = $.Range( el ).select( el );
697
+
698
+ if ( !current.overlaps( entireElement ) ) {
699
+ return null;
700
+ }
701
+ // we need to check if it starts before our element ...
702
+ if ( current.compare( 'START_TO_START', entireElement ) < 1 ) {
703
+ var startPos = 0;
704
+ // we should move current ...
705
+ current.move( 'START_TO_START', entireElement );
706
+ } else {
707
+ var fromElementToCurrent = entireElement.clone();
708
+ fromElementToCurrent.move( 'END_TO_START', current );
709
+
710
+ startPos = fromElementToCurrent.toString().length;
711
+ }
712
+
713
+ // now we need to make sure current isn't to the right of us ...
714
+ var endPos;
715
+
716
+ if ( current.compare( 'END_TO_END', entireElement ) >= 0 ) {
717
+ endPos = entireElement.toString().length;
718
+ } else {
719
+ endPos = startPos + current.toString().length;
720
+ }
721
+
722
+ return {
723
+ start: startPos, end: endPos
724
+ };
725
+ }, getSelection = function( el ) {
726
+ // use selectionStart if we can.
727
+ var win = getWindow( el );
728
+
729
+ if ( el.selectionStart !== undefined ) {
730
+ if ( document.activeElement && document.activeElement !== el && el.selectionStart === el.selectionEnd && el.selectionStart === 0 ) {
731
+ return {start: el.value.length, end: el.value.length};
732
+ }
733
+
734
+ return {start: el.selectionStart, end: el.selectionEnd};
735
+ } else if ( win.getSelection ) {
736
+ return getElementsSelection( el, win );
737
+ } else {
738
+ try {
739
+ //try 2 different methods that work differently
740
+ // one should only work for input elements, but sometimes doesn't
741
+ // I don't know why this is, or what to detect
742
+ if ( el.nodeName.toLowerCase() === 'input' ) {
743
+ var real = getWindow( el ).document.selection.createRange(), r = el.createTextRange();
744
+
745
+ r.setEndPoint( 'EndToStart', real );
746
+
747
+ var start = r.text.length;
748
+
749
+ return {
750
+ start: start, end: start + real.text.length
751
+ };
752
+ } else {
753
+ var res = getElementsSelection( el, win );
754
+ if ( !res ) {
755
+ return res;
756
+ }
757
+
758
+ // we have to clean up for ie's textareas
759
+ var current = $.Range.current().clone(), r2 = current.clone().collapse().range,
760
+ r3 = current.clone().collapse( false ).range;
761
+
762
+ r2.moveStart( 'character', -1 );
763
+ r3.moveStart( 'character', -1 );
764
+
765
+ // if we aren't at the start, but previous is empty, we are at start of newline
766
+ if ( res.startPos !== 0 && r2.text === '' ) {
767
+ res.startPos += 2;
768
+ }
769
+
770
+ // do a similar thing for the end of the textarea
771
+ if ( res.endPos !== 0 && r3.text === '' ) {
772
+ res.endPos += 2;
773
+ }
774
+
775
+ return res;
776
+ }
777
+ } catch ( e ) {
778
+ return {start: el.value.length, end: el.value.length};
779
+ }
780
+ }
781
+ }, select = function( el, start, end ) {
782
+ var win = getWindow( el );
783
+
784
+ if ( el.setSelectionRange ) {
785
+ if ( end === undefined ) {
786
+ el.trigger( 'focus' );
787
+ el.setSelectionRange( start, start );
788
+ } else {
789
+ el.select();
790
+ el.selectionStart = start;
791
+ el.selectionEnd = end;
792
+ }
793
+ } else if ( el.createTextRange ) {
794
+ var r = el.createTextRange();
795
+ r.moveStart( 'character', start );
796
+ end = end || start;
797
+ r.moveEnd( 'character', end - el.value.length );
798
+
799
+ r.select();
800
+ } else if ( win.getSelection ) {
801
+ var doc = win.document, sel = win.getSelection(), range = doc.createRange(),
802
+ ranges = [start, end !== undefined ? end : start];
803
+ getCharElement( [el], ranges );
804
+ range.setStart( ranges[0].el, ranges[0].count );
805
+ range.setEnd( ranges[1].el, ranges[1].count );
806
+
807
+ // removeAllRanges is suprisingly necessary for webkit ... BOOO!
808
+ sel.removeAllRanges();
809
+ sel.addRange( range );
810
+
811
+ } else if ( win.document.body.createTextRange ) { //IE's weirdness
812
+ var range = document.body.createTextRange();
813
+
814
+ range.moveToElementText( el );
815
+ range.collapse();
816
+ range.moveStart( 'character', start );
817
+ range.moveEnd( 'character', end !== undefined ? end : start );
818
+ range.select();
819
+ }
820
+ }, /*
 
821
  * If one of the range values is within start and len, replace the range
822
  * value with the element and its offset.
823
  */
824
+ replaceWithLess = function( start, len, range, el ) {
825
+ if ( typeof range[0] === 'number' && range[0] < len ) {
826
+ range[0] = {
827
+ el: el, count: range[0] - start
828
+ };
829
+ }
830
+ if ( typeof range[1] === 'number' && range[1] <= len ) {
831
+ range[1] = {
832
+ el: el, count: range[1] - start
833
+ };
834
+ }
835
+ }, getCharElement = function( elems, range, len ) {
836
+ var elem, start;
837
+
838
+ len = len || 0;
839
+
840
+ for ( var i = 0; elems[i]; i++ ) {
841
+ elem = elems[i];
842
+ // Get the text from text nodes and CDATA nodes
843
+ if ( elem.nodeType === 3 || elem.nodeType === 4 ) {
844
+ start = len;
845
+ len += elem.nodeValue.length;
846
+ //check if len is now greater than what's in counts
847
+ replaceWithLess( start, len, range, elem );
848
+ // Traverse everything else, except comment nodes
849
+ } else if ( elem.nodeType !== 8 ) {
850
+ len = getCharElement( elem.childNodes, range, len );
851
+ }
852
+ }
853
+
854
+ return len;
855
+ };
856
 
857
  $.fn.selection = function( start, end ) {
858
  if ( start !== undefined ) {
redux-core/assets/js/vendor/jquery.typewatch.js CHANGED
@@ -69,7 +69,7 @@
69
 
70
  // Set focus action (highlight)
71
  if (options.highlight && elementType !== 'DIV')
72
- jQuery(elem).focus(function() { this.select(); });
73
 
74
  // Key watcher / clear and reset the timer
75
  var startWatch = function(evt) {
69
 
70
  // Set focus action (highlight)
71
  if (options.highlight && elementType !== 'DIV')
72
+ jQuery(elem).on( 'focus', function() { this.trigger( 'select' ); });
73
 
74
  // Key watcher / clear and reset the timer
75
  var startWatch = function(evt) {
redux-core/assets/js/vendor/qtip/qtip.js CHANGED
@@ -313,7 +313,7 @@
313
  return !( typeof c === 'function' ||
314
  c && c.attr ||
315
  c.length ||
316
- $.type(c) === 'object' && (c.jquery || c.then));
317
  }
318
 
319
  // Option object sanitizer
@@ -684,10 +684,10 @@
684
  .insertBefore(elements.content)
685
 
686
  // Button-specific events
687
- .delegate('.qtip-close', 'mousedown keydown mouseup keyup mouseout', function(event) {
313
  return !( typeof c === 'function' ||
314
  c && c.attr ||
315
  c.length ||
316
+ typeof(c) === 'object' && (c.jquery || c.then));
317
  }
318
 
319
  // Option object sanitizer
684
  .insertBefore(elements.content)
685
 
686
  // Button-specific events
687
+ .on('.qtip-close', 'mousedown keydown