Redux Framework - Version 4.1.14

Version Description

  • Added: Shim for ReduxFramework->get_default_value()
  • Fixed: Local issue with WP and strtolower. Sites that couldn't find classes should work now.
  • Fixed: Ajax for select boxes is now working again.
  • Fixed: Autoloading to bypass other embedded versions of Redux.
  • Fixed: Customizer interactions are MUCH faster now. Had a greedy CSS selector before.
  • Fixed: If opt_names had multiple dashes in them, JS errors occurred by a non-global replace.
  • Fixed: Fix for servers that disable output buffers.
  • Fixed: Ajax now does not load anything else, faster calls.
  • Fixed: .folds replace issue when opt_name selector wasn't properly found.
  • Release date: Aug 11, 2020
Download this release

Release Info

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

Code changes from version 4.1.13 to 4.1.14

Files changed (105) hide show
  1. CHANGELOG.md +19 -0
  2. README.md +1 -1
  3. class-redux-framework-plugin.php +10 -1
  4. readme.txt +13 -5
  5. redux-core/assets/css/redux-fields.min.css +1 -1
  6. redux-core/assets/css/redux-fields.min.css.map +1 -1
  7. redux-core/assets/js/redux.js +77 -53
  8. redux-core/assets/js/redux.min.js +1 -1
  9. redux-core/assets/js/redux/main.js +45 -21
  10. redux-core/assets/js/redux/redux-change.js +2 -3
  11. redux-core/assets/js/redux/required.js +30 -25
  12. redux-core/assets/js/redux/tab-check.js +0 -4
  13. redux-core/class-redux-core.php +20 -8
  14. redux-core/framework.php +2 -1
  15. redux-core/inc/classes/class-redux-ajax-save.php +1 -1
  16. redux-core/inc/classes/class-redux-ajax-select2.php +14 -8
  17. redux-core/inc/classes/class-redux-api.php +2 -2
  18. redux-core/inc/classes/class-redux-args.php +20 -2
  19. redux-core/inc/classes/class-redux-connection-banner.php +16 -13
  20. redux-core/inc/classes/class-redux-descriptor.php +1 -1
  21. redux-core/inc/classes/class-redux-enqueue.php +9 -2
  22. redux-core/inc/classes/class-redux-filesystem.php +15 -9
  23. redux-core/inc/classes/class-redux-functions-ex.php +50 -5
  24. redux-core/inc/classes/class-redux-functions.php +1 -1
  25. redux-core/inc/classes/class-redux-helpers.php +5 -17
  26. redux-core/inc/classes/class-redux-options-constructor.php +4 -0
  27. redux-core/inc/classes/class-redux-options-defaults.php +12 -6
  28. redux-core/inc/classes/class-redux-page-render.php +2 -2
  29. redux-core/inc/classes/class-redux-rest-api-builder.php +11 -7
  30. redux-core/inc/classes/class-redux-user-feedback.php +5 -4
  31. redux-core/inc/classes/class-redux-wordpress-data.php +572 -360
  32. redux-core/inc/extensions/customizer/class-redux-extension-customizer.php +4 -3
  33. redux-core/inc/extensions/customizer/inc/class-redux-customizer-panel.php +5 -34
  34. redux-core/inc/extensions/customizer/inc/class-redux-customizer-section.php +78 -64
  35. redux-core/inc/extensions/customizer/redux-extension-customizer.css +3 -1
  36. redux-core/inc/extensions/customizer/redux-extension-customizer.css.map +1 -1
  37. redux-core/inc/extensions/customizer/redux-extension-customizer.js +5 -0
  38. redux-core/inc/extensions/customizer/redux-extension-customizer.min.js +1 -1
  39. redux-core/inc/extensions/customizer/redux-extension-customizer.scss +1 -0
  40. redux-core/inc/extensions/import_export/import_export/redux-import-export.js +1 -3
  41. redux-core/inc/extensions/import_export/import_export/redux-import-export.min.js +1 -1
  42. redux-core/inc/extensions/options_object/options_object/redux-options-object.js +1 -3
  43. redux-core/inc/extensions/options_object/options_object/redux-options-object.min.js +1 -1
  44. redux-core/inc/fields/ace_editor/redux-ace-editor.js +2 -4
  45. redux-core/inc/fields/ace_editor/redux-ace-editor.min.js +1 -1
  46. redux-core/inc/fields/background/redux-background.js +1 -3
  47. redux-core/inc/fields/background/redux-background.min.js +1 -1
  48. redux-core/inc/fields/border/redux-border.js +1 -3
  49. redux-core/inc/fields/border/redux-border.min.js +1 -1
  50. redux-core/inc/fields/button_set/redux-button-set.js +2 -4
  51. redux-core/inc/fields/button_set/redux-button-set.min.js +1 -1
  52. redux-core/inc/fields/checkbox/redux-checkbox.js +1 -3
  53. redux-core/inc/fields/checkbox/redux-checkbox.min.js +1 -1
  54. redux-core/inc/fields/color/redux-color.js +2 -5
  55. redux-core/inc/fields/color/redux-color.min.js +1 -1
  56. redux-core/inc/fields/color_gradient/redux-color-gradient.js +2 -5
  57. redux-core/inc/fields/color_gradient/redux-color-gradient.min.js +1 -1
  58. redux-core/inc/fields/color_rgba/redux-color-rgba.js +1 -3
  59. redux-core/inc/fields/color_rgba/redux-color-rgba.min.js +1 -1
  60. redux-core/inc/fields/date/redux-date.js +2 -4
  61. redux-core/inc/fields/date/redux-date.min.js +1 -1
  62. redux-core/inc/fields/dimensions/redux-dimensions.js +2 -4
  63. redux-core/inc/fields/dimensions/redux-dimensions.min.js +1 -1
  64. redux-core/inc/fields/gallery/redux-gallery.js +1 -4
  65. redux-core/inc/fields/gallery/redux-gallery.min.js +1 -1
  66. redux-core/inc/fields/image_select/redux-image-select.js +1 -4
  67. redux-core/inc/fields/image_select/redux-image-select.min.js +1 -1
  68. redux-core/inc/fields/link_color/redux-link-color.js +2 -4
  69. redux-core/inc/fields/link_color/redux-link-color.min.js +1 -1
  70. redux-core/inc/fields/multi_text/redux-multi-text.js +1 -3
  71. redux-core/inc/fields/multi_text/redux-multi-text.min.js +1 -1
  72. redux-core/inc/fields/palette/redux-palette.js +2 -4
  73. redux-core/inc/fields/palette/redux-palette.min.js +1 -1
  74. redux-core/inc/fields/raw/parsedown.php +5 -5
  75. redux-core/inc/fields/select/class-redux-select.php +7 -2
  76. redux-core/inc/fields/select/redux-select.js +1 -3
  77. redux-core/inc/fields/select/redux-select.min.js +1 -1
  78. redux-core/inc/fields/select_image/redux-select-image.js +1 -3
  79. redux-core/inc/fields/select_image/redux-select-image.min.js +1 -1
  80. redux-core/inc/fields/slider/redux-slider.js +1 -3
  81. redux-core/inc/fields/slider/redux-slider.min.js +1 -1
  82. redux-core/inc/fields/slides/redux-slides.js +1 -3
  83. redux-core/inc/fields/slides/redux-slides.min.js +1 -1
  84. redux-core/inc/fields/sortable/redux-sortable.js +2 -4
  85. redux-core/inc/fields/sortable/redux-sortable.min.js +1 -1
  86. redux-core/inc/fields/sorter/class-redux-sorter.php +1 -1
  87. redux-core/inc/fields/sorter/redux-sorter.js +1 -3
  88. redux-core/inc/fields/sorter/redux-sorter.min.js +1 -1
  89. redux-core/inc/fields/spacing/redux-spacing.js +1 -3
  90. redux-core/inc/fields/spacing/redux-spacing.min.js +1 -1
  91. redux-core/inc/fields/spinner/redux-spinner.js +1 -4
  92. redux-core/inc/fields/spinner/redux-spinner.min.js +1 -1
  93. redux-core/inc/fields/switch/redux-switch.js +1 -3
  94. redux-core/inc/fields/switch/redux-switch.min.js +1 -1
  95. redux-core/inc/fields/typography/class-redux-typography.php +3 -3
  96. redux-core/inc/fields/typography/redux-typography.css +2 -2
  97. redux-core/inc/fields/typography/redux-typography.css.map +1 -1
  98. redux-core/inc/fields/typography/redux-typography.js +40 -16
  99. redux-core/inc/fields/typography/redux-typography.min.js +1 -1
  100. redux-core/inc/fields/typography/redux-typography.scss +1 -0
  101. redux-core/inc/themecheck/class-redux-themecheck.php +1 -1
  102. redux-core/inc/validation/color/class-redux-validation-color.php +1 -1
  103. redux-framework.php +1 -1
  104. redux-templates/assets/js/redux-templates.js +9 -8
  105. redux-templates/assets/js/redux-templates.js.map +1 -1
CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
  # Redux Changelog
2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  ## 4.1.13
4
  * Fixed: Major typography bug affecting saving in the panel as well as third-party extensions.
5
  * Fixed: Customizer issue with some external extensions.
1
  # Redux Changelog
2
 
3
+ ## 4.1.15
4
+ * Fixed: Defaults were not saving in some situations.
5
+ * Added: Various fallback calls for JS when fetching opt_names.
6
+ * Fixed: Warnings with Rest API due to WP 5.5.
7
+ * Fixed: Subsets now are full-width in typography when rendered after page load.
8
+ * Fixed: for subsets loading when font-family is not specified.
9
+ * Added: No opt-in to tracking when embedded. Google Fonts and panel notices are still there though.
10
+
11
+ ## 4.1.14
12
+ * Added: Shim for ReduxFramework->get_default_value()
13
+ * Fixed: Local issue with WP and strtolower. Sites that couldn't find classes should work now.
14
+ * Fixed: Ajax for select boxes is now working again.
15
+ * Fixed: Autoloading to bypass other embedded versions of Redux.
16
+ * Fixed: Customizer interactions are MUCH faster now. Had a greedy CSS selector before.
17
+ * Fixed: If opt_names had multiple dashes in them, JS errors occurred by a non-global replace.
18
+ * Fixed: Fix for servers that disable output buffers.
19
+ * Fixed: Ajax now does not load anything else, faster calls.
20
+ * Fixed: .folds replace issue when opt_name selector wasn't properly found.
21
+
22
  ## 4.1.13
23
  * Fixed: Major typography bug affecting saving in the panel as well as third-party extensions.
24
  * Fixed: Customizer issue with some external extensions.
README.md CHANGED
@@ -1,5 +1,5 @@
1
  [![Build Status](https://travis-ci.org/reduxframework/redux-framework-4.png?branch=master)](https://travis-ci.org/reduxframework/redux-framework-4) [![Slack](https://redux-slackin.herokuapp.com/badge.svg)](https://redux-slackin.herokuapp.com)
2
- ## Welcome to the Redux 4.0 Beta
3
 
4
  Here are several guidelines to consider when testing:
5
 
1
  [![Build Status](https://travis-ci.org/reduxframework/redux-framework-4.png?branch=master)](https://travis-ci.org/reduxframework/redux-framework-4) [![Slack](https://redux-slackin.herokuapp.com/badge.svg)](https://redux-slackin.herokuapp.com)
2
+ ## Welcome to the Redux 4.0
3
 
4
  Here are several guidelines to consider when testing:
5
 
class-redux-framework-plugin.php CHANGED
@@ -57,6 +57,15 @@ if ( ! class_exists( 'Redux_Framework_Plugin', false ) ) {
57
  */
58
  private static $instance;
59
 
 
 
 
 
 
 
 
 
 
60
  /**
61
  * Get active instance
62
  *
@@ -65,7 +74,7 @@ if ( ! class_exists( 'Redux_Framework_Plugin', false ) ) {
65
  * @return self::$instance The one true Redux_Framework_Plugin
66
  */
67
  public static function instance() {
68
- $path = WP_PLUGIN_DIR . 'redux-framework/redux-framework.php';
69
 
70
  if ( function_exists( 'get_plugin_data' ) && file_exists( $path ) ) {
71
  $data = get_plugin_data( $path );
57
  */
58
  private static $instance;
59
 
60
+ /**
61
+ * Crash flag.
62
+ *
63
+ * @access private
64
+ * @var \Redux_Framework_Plugin $crash Crash flag if inside a crash.
65
+ * @since 4.1.15
66
+ */
67
+ public static $crash = false;
68
+
69
  /**
70
  * Get active instance
71
  *
74
  * @return self::$instance The one true Redux_Framework_Plugin
75
  */
76
  public static function instance() {
77
+ $path = REDUX_PLUGIN_FILE;
78
 
79
  if ( function_exists( 'get_plugin_data' ) && file_exists( $path ) ) {
80
  $data = get_plugin_data( $path );
readme.txt CHANGED
@@ -5,7 +5,7 @@ Tags: gutenberg, blocks, gutenberg blocks, editor, block, page builder, block ed
5
  Requires at least: 4.0
6
  Requires PHP: 5.3
7
  Tested up to: 5.5
8
- Stable tag: 4.1.13
9
  License: GPL-2.0+
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.txt
11
 
@@ -152,14 +152,22 @@ If you want, you can use the [Gutenberg](https://wordpress.org/plugins/gutenberg
152
 
153
  == Changelog ==
154
 
155
- = 4.1.13 =
156
- * Fixed: Major typography bug affecting saving in the panel as well as third-party extensions.
157
- * Fixed: Customizer issue with some external extensions.
158
- * Added: Removed `FS_METHOD` define completely.
159
  * Added: Shim for ReduxFramework->get_default_value()
160
  * Fixed: Local issue with WP and strtolower. Sites that couldn't find classes should work now.
161
  * Fixed: Ajax for select boxes is now working again.
162
  * Fixed: Autoloading to bypass other embedded versions of Redux.
 
 
 
 
 
 
 
 
 
 
 
163
  * Release date: Aug 5, 2020
164
 
165
  = 4.1.12 =
5
  Requires at least: 4.0
6
  Requires PHP: 5.3
7
  Tested up to: 5.5
8
+ Stable tag: 4.1.14
9
  License: GPL-2.0+
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.txt
11
 
152
 
153
  == Changelog ==
154
 
155
+ = 4.1.14 =
 
 
 
156
  * Added: Shim for ReduxFramework->get_default_value()
157
  * Fixed: Local issue with WP and strtolower. Sites that couldn't find classes should work now.
158
  * Fixed: Ajax for select boxes is now working again.
159
  * Fixed: Autoloading to bypass other embedded versions of Redux.
160
+ * Fixed: Customizer interactions are MUCH faster now. Had a greedy CSS selector before.
161
+ * Fixed: If opt_names had multiple dashes in them, JS errors occurred by a non-global replace.
162
+ * Fixed: Fix for servers that disable output buffers.
163
+ * Fixed: Ajax now does not load anything else, faster calls.
164
+ * Fixed: .folds replace issue when opt_name selector wasn't properly found.
165
+ * Release date: Aug 11, 2020
166
+
167
+ = 4.1.13 =
168
+ * Fixed: Major typography bug affecting saving in the panel as well as third-party extensions.
169
+ * Fixed: Customizer issue with some external extensions.
170
+ * Added: Removed `FS_METHOD` define completely.
171
  * Release date: Aug 5, 2020
172
 
173
  = 4.1.12 =
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-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}}.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-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}}#ui-datepicker-div{z-index:15 !important}.ui-datepicker-header{background-color:#00abef}.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}.redux-container-palette label.ui-button.ui-widget .ui-button-text{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.redux-container-palette label.ui-button.ui-widget .ui-button-text 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 .ui-button-text 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-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-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_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-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-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-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-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-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 .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.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;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 .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-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-object-browser{overflow:auto;word-wrap:break-word;max-height:600px;max-width:100%}#redux-import-link-wrapper,#redux-import-code-wrapper{display:none}#redux-export-code,#redux-export-link-value{display:none}#redux-import-action span{color:#b94a48}
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-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-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}}.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-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}.redux-container-palette label.ui-button.ui-widget .ui-button-text{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.redux-container-palette label.ui-button.ui-widget .ui-button-text 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 .ui-button-text 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 .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.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-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-import-link-wrapper,#redux-import-code-wrapper{display:none}#redux-export-code,#redux-export-link-value{display:none}#redux-import-action span{color:#b94a48}#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":"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","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-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}}.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-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}}#ui-datepicker-div{z-index:15 !important}.ui-datepicker-header{background-color:#00abef}.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}.redux-container-palette label.ui-button.ui-widget .ui-button-text{display:flex}.redux-container-palette label.ui-button.ui-widget .ui-button-text 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 .ui-button-text 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-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-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_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-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-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-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-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-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 .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.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;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 .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-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-object-browser{overflow:auto;word-wrap:break-word;max-height:600px;max-width:100%}#redux-import-link-wrapper,#redux-import-code-wrapper{display:none}#redux-export-code,#redux-export-link-value{display:none}#redux-import-action span{color:#b94a48}\n"]}
1
+ {"version":3,"sources":["redux-fields.min.css"],"names":[],"mappings":"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","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-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}}.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-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}.redux-container-palette label.ui-button.ui-widget .ui-button-text{display:flex}.redux-container-palette label.ui-button.ui-widget .ui-button-text 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 .ui-button-text 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 .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.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-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-import-link-wrapper,#redux-import-code-wrapper{display:none}#redux-export-code,#redux-export-link-value{display:none}#redux-import-action span{color:#b94a48}#redux-object-browser{overflow:auto;word-wrap:break-word;max-height:600px;max-width:100%}\n"]}
redux-core/assets/js/redux.js CHANGED
@@ -570,9 +570,9 @@ function colorNameToHex( colour ) {
570
  };
571
  })( jQuery );
572
 
573
- /* global redux */
574
 
575
- ( function( $ ) {
576
  'use strict';
577
 
578
  $.redux = $.redux || {};
@@ -593,17 +593,17 @@ function colorNameToHex( colour ) {
593
  return;
594
  }
595
 
596
- win = $( window );
597
  viewport = {
598
  top: win.scrollTop()
599
  };
600
 
601
- viewport.right = viewport.left + win.width();
602
  viewport.bottom = viewport.top + win.height();
603
 
604
  bounds = this.offset();
605
 
606
- bounds.right = bounds.left + this.outerWidth();
607
  bounds.bottom = bounds.top + this.outerHeight();
608
 
609
  return ( ! ( viewport.right < bounds.left || viewport.left > bounds.right || viewport.bottom < bounds.top || viewport.top > bounds.bottom ) );
@@ -612,7 +612,7 @@ function colorNameToHex( colour ) {
612
  $( 'fieldset.redux-container-divide' ).css( 'display', 'none' );
613
 
614
  // Weed out multiple instances of duplicate Redux instance.
615
- if ( $( 'body' ).hasClass( 'wp-customizer' ) ) {
616
  $( '.wp-full-overlay-sidebar' ).addClass( 'redux-container' );
617
  }
618
 
@@ -620,9 +620,8 @@ function colorNameToHex( colour ) {
620
  function() {
621
  opt_name = $.redux.getOptName( this );
622
 
623
- if ( $.inArray( opt_name, tempArr ) === - 1 ) {
624
  tempArr.push( opt_name );
625
- redux.optName = window['redux_' + opt_name.replace( '-', '_' )];
626
  $.redux.checkRequired( $( this ) );
627
  $.redux.initEvents( $( this ) );
628
  }
@@ -633,7 +632,6 @@ function colorNameToHex( colour ) {
633
  'click',
634
  function() {
635
  opt_name = $.redux.getOptName( this );
636
- redux.optName = window['redux_' + opt_name.replace( '-', '_' )];
637
  }
638
  );
639
 
@@ -679,27 +677,31 @@ function colorNameToHex( colour ) {
679
  $.redux.getOptName = function( el ) {
680
  var metabox;
681
  var li;
682
- var optName = $( el ).parents( '.redux-wrap-div' ).data( 'opt-name' );
 
683
 
684
- // Backwards compatibility block for metaboxes
 
 
 
 
 
 
685
  if ( undefined === optName ) {
686
  metabox = $( el ).parents( '.postbox' );
687
  if ( 0 === metabox.length ) {
688
  metabox = $( el ).parents( '.redux-metabox' );
689
  }
690
- if ( $( 'body' ).hasClass( 'wp-customizer' ) ) {
691
- li = $( '.panel-meta.customize-info.redux-panel.accordion-section' );
692
- optName = li.data( 'opt-name' );
693
- } else if ( 0 !== metabox.length ) {
694
  optName = metabox.attr( 'id' ).replace( 'redux-', '' ).split( '-metabox-' )[0];
695
  if ( undefined === optName ) {
696
  optName = metabox.attr( 'class' )
697
- .replace( 'redux-metabox', '' )
698
- .replace( 'postbox', '' )
699
- .replace( 'redux-', '' )
700
- .replace( 'hide', '' )
701
- .replace( 'closed', '' )
702
- .trim();
703
  }
704
  } else {
705
  optName = $( '.redux-ajax-security' ).data( 'opt-name' );
@@ -708,8 +710,30 @@ function colorNameToHex( colour ) {
708
  if ( undefined === optName ) {
709
  optName = $( el ).find( '.redux-form-wrapper' ).data( 'opt-name' );
710
  }
 
 
 
 
 
 
 
 
 
 
711
  return optName;
712
  };
 
 
 
 
 
 
 
 
 
 
 
 
713
  })( jQuery );
714
 
715
  /* global redux */
@@ -1152,12 +1176,11 @@ function redux_change( variable ) {
1152
 
1153
  rContainer = $( variable ).parents( '.redux-container:first' );
1154
 
1155
- if ( $( 'body' ).hasClass( 'wp-customizer' ) ) {
1156
- opt_name = $( '.panel-meta.customize-info.redux-panel.accordion-section' ).data( 'opt-name' );
1157
  } else {
1158
  opt_name = $.redux.getOptName( rContainer );
1159
  }
1160
- redux.optName = window['redux_' + opt_name.replace( '-', '_' )];
1161
 
1162
  $( 'body' ).trigger( 'check_dependencies', variable );
1163
 
@@ -1324,40 +1347,45 @@ function redux_hook( object, functionName, callback, before ) {
1324
  // It's better to do this by PHP but there is no filter in tr tag , so is not possible
1325
  // we going to move each attributes we may need for folding to tr tag.
1326
  $.each(
1327
- redux.optName.folds,
1328
- function( i, v ) {
1329
- var div;
1330
- var rawTable;
 
 
 
1331
 
1332
- var fieldset = $( '#' + redux.optName.args.opt_name + '-' + i );
1333
 
1334
- fieldset.parents( 'tr:first, li:first' ).addClass( 'fold' );
1335
 
1336
- if ( 'hide' === v ) {
1337
- fieldset.parents( 'tr:first, li:first' ).addClass( 'hide' );
1338
 
1339
- if ( fieldset.hasClass( 'redux-container-section' ) ) {
1340
- div = $( '#section-' + i );
1341
 
1342
- if ( div.hasClass( 'redux-section-indent-start' ) ) {
1343
- $( '#section-table-' + i ).hide().addClass( 'hide' );
1344
- div.hide().addClass( 'hide' );
1345
- }
1346
- }
1347
 
1348
- if ( fieldset.hasClass( 'redux-container-info' ) ) {
1349
- $( '#info-' + i ).hide().addClass( 'hide' );
1350
- }
1351
 
1352
- if ( fieldset.hasClass( 'redux-container-divide' ) ) {
1353
- $( '#divide-' + i ).hide().addClass( 'hide' );
1354
- }
1355
 
1356
- if ( fieldset.hasClass( 'redux-container-raw' ) ) {
1357
- rawTable = fieldset.parents().find( 'table#' + redux.optName.args.opt_name + '-' + i );
1358
- rawTable.hide().addClass( 'hide' );
 
 
1359
  }
1360
- }
1361
  }
1362
  );
1363
  };
@@ -1898,12 +1926,8 @@ function redux_hook( object, functionName, callback, before ) {
1898
  el = link.parents( '.redux-container:first' );
1899
  relid = link.data( 'rel' ); // The group ID of interest.
1900
  oldid = el.find( '.redux-group-tab-link-li.active:first .redux-group-tab-link-a' ).data( 'rel' );
1901
-
1902
  opt_name = $.redux.getOptName( el );
1903
 
1904
- // Change over redux object to correct opt_name.
1905
- redux.optName = window['redux_' + opt_name.replace( '-', '_' )];
1906
-
1907
  if ( oldid === relid ) {
1908
  return;
1909
  }
570
  };
571
  })( jQuery );
572
 
573
+ /* global redux, document */
574
 
575
+ (function( $ ) {
576
  'use strict';
577
 
578
  $.redux = $.redux || {};
593
  return;
594
  }
595
 
596
+ win = $( window );
597
  viewport = {
598
  top: win.scrollTop()
599
  };
600
 
601
+ viewport.right = viewport.left + win.width();
602
  viewport.bottom = viewport.top + win.height();
603
 
604
  bounds = this.offset();
605
 
606
+ bounds.right = bounds.left + this.outerWidth();
607
  bounds.bottom = bounds.top + this.outerHeight();
608
 
609
  return ( ! ( viewport.right < bounds.left || viewport.left > bounds.right || viewport.bottom < bounds.top || viewport.top > bounds.bottom ) );
612
  $( 'fieldset.redux-container-divide' ).css( 'display', 'none' );
613
 
614
  // Weed out multiple instances of duplicate Redux instance.
615
+ if ( redux.customizer ) {
616
  $( '.wp-full-overlay-sidebar' ).addClass( 'redux-container' );
617
  }
618
 
620
  function() {
621
  opt_name = $.redux.getOptName( this );
622
 
623
+ if ( $.inArray( opt_name, tempArr ) === -1 ) {
624
  tempArr.push( opt_name );
 
625
  $.redux.checkRequired( $( this ) );
626
  $.redux.initEvents( $( this ) );
627
  }
632
  'click',
633
  function() {
634
  opt_name = $.redux.getOptName( this );
 
635
  }
636
  );
637
 
677
  $.redux.getOptName = function( el ) {
678
  var metabox;
679
  var li;
680
+ var optName;
681
+ var item = $( el );
682
 
683
+ if ( redux.customizer ) {
684
+ optName = item.find( '.redux-customizer-opt-name' ).data( 'opt-name' );
685
+ } else {
686
+ optName = $( el ).parents( '.redux-wrap-div' ).data( 'opt-name' );
687
+ }
688
+
689
+ // Compatibility for metaboxes
690
  if ( undefined === optName ) {
691
  metabox = $( el ).parents( '.postbox' );
692
  if ( 0 === metabox.length ) {
693
  metabox = $( el ).parents( '.redux-metabox' );
694
  }
695
+ if ( 0 !== metabox.length ) {
 
 
 
696
  optName = metabox.attr( 'id' ).replace( 'redux-', '' ).split( '-metabox-' )[0];
697
  if ( undefined === optName ) {
698
  optName = metabox.attr( 'class' )
699
+ .replace( 'redux-metabox', '' )
700
+ .replace( 'postbox', '' )
701
+ .replace( 'redux-', '' )
702
+ .replace( 'hide', '' )
703
+ .replace( 'closed', '' )
704
+ .trim();
705
  }
706
  } else {
707
  optName = $( '.redux-ajax-security' ).data( 'opt-name' );
710
  if ( undefined === optName ) {
711
  optName = $( el ).find( '.redux-form-wrapper' ).data( 'opt-name' );
712
  }
713
+
714
+ // Shim, let's just get an opt_name shall we?!
715
+ if ( undefined === optName ) {
716
+ optName = redux.opt_names[0];
717
+ }
718
+
719
+ if ( undefined !== optName ) {
720
+ redux.optName = window['redux_' + optName.replace( /\-/g, '_' )];
721
+ }
722
+
723
  return optName;
724
  };
725
+
726
+ $.redux.getSelector = function( selector, fieldType ) {
727
+ if ( ! selector ) {
728
+ selector = '.redux-container-' + fieldType + ':visible';
729
+ if ( redux.customizer ) {
730
+ selector = $( document ).find( '.control-section-redux.open' ).find( selector );
731
+ } else {
732
+ selector = $( document ).find( '.redux-group-tab:visible' ).find( selector );
733
+ }
734
+ }
735
+ return selector;
736
+ };
737
  })( jQuery );
738
 
739
  /* global redux */
1176
 
1177
  rContainer = $( variable ).parents( '.redux-container:first' );
1178
 
1179
+ if ( redux.customizer ) {
1180
+ opt_name = $( '.redux-customizer-opt-name' ).data( 'opt-name' );
1181
  } else {
1182
  opt_name = $.redux.getOptName( rContainer );
1183
  }
 
1184
 
1185
  $( 'body' ).trigger( 'check_dependencies', variable );
1186
 
1347
  // It's better to do this by PHP but there is no filter in tr tag , so is not possible
1348
  // we going to move each attributes we may need for folding to tr tag.
1349
  $.each(
1350
+ redux.opt_names,
1351
+ function( x ) {
1352
+ $.each(
1353
+ window['redux_' + redux.opt_names[x].replace( /\-/g, '_' )].folds,
1354
+ function( i, v ) {
1355
+ var div;
1356
+ var rawTable;
1357
 
1358
+ var fieldset = $( '#' + redux.opt_names[x] + '-' + i );
1359
 
1360
+ fieldset.parents( 'tr:first, li:first' ).addClass( 'fold' );
1361
 
1362
+ if ( 'hide' === v ) {
1363
+ fieldset.parents( 'tr:first, li:first' ).addClass( 'hide' );
1364
 
1365
+ if ( fieldset.hasClass( 'redux-container-section' ) ) {
1366
+ div = $( '#section-' + i );
1367
 
1368
+ if ( div.hasClass( 'redux-section-indent-start' ) ) {
1369
+ $( '#section-table-' + i ).hide().addClass( 'hide' );
1370
+ div.hide().addClass( 'hide' );
1371
+ }
1372
+ }
1373
 
1374
+ if ( fieldset.hasClass( 'redux-container-info' ) ) {
1375
+ $( '#info-' + i ).hide().addClass( 'hide' );
1376
+ }
1377
 
1378
+ if ( fieldset.hasClass( 'redux-container-divide' ) ) {
1379
+ $( '#divide-' + i ).hide().addClass( 'hide' );
1380
+ }
1381
 
1382
+ if ( fieldset.hasClass( 'redux-container-raw' ) ) {
1383
+ rawTable = fieldset.parents().find( 'table#' + redux.opt_names[x] + '-' + i );
1384
+ rawTable.hide().addClass( 'hide' );
1385
+ }
1386
+ }
1387
  }
1388
+ );
1389
  }
1390
  );
1391
  };
1926
  el = link.parents( '.redux-container:first' );
1927
  relid = link.data( 'rel' ); // The group ID of interest.
1928
  oldid = el.find( '.redux-group-tab-link-li.active:first .redux-group-tab-link-a' ).data( 'rel' );
 
1929
  opt_name = $.redux.getOptName( el );
1930
 
 
 
 
1931
  if ( oldid === relid ) {
1932
  return;
1933
  }
redux-core/assets/js/redux.min.js CHANGED
@@ -1 +1 @@
1
- function colorValidate(e){"use strict";var r=jQuery(e).val(),t=colorNameToHex(r);return t!==r.replace("#","")?t:r}function colorNameToHex(e){"use strict";var r=e.replace(/^\s\s*/,"").replace(/\s\s*$/,"").replace("#",""),t={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4","indianred ":"#cd5c5c","indigo ":"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",redux:"#01a3e3",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};return"undefined"!==t[r.toLowerCase()]?t[r.toLowerCase()]:e}!function(s){"use strict";s.redux=s.redux||{},s.redux.ajax_save=function(r){var t,e,a=s(document.getElementById("redux_ajax_overlay")),i=s(document.getElementById("redux_notification_bar")),n=s(r).parents(".redux-wrap-div").find("form").first();return a.fadeIn(),s(".redux-action_bar .spinner").addClass("is-active"),s(".redux-action_bar input").attr("disabled","disabled"),i.slideUp(),s(".redux-save-warn").slideUp(),s(".redux_ajax_save_error").slideUp("medium",function(){s(this).remove()}),redux.optName.hasOwnProperty("editor")&&s.each(redux.optName.editor,function(e){var r;"undefined"!=typeof tinyMCE&&(r=tinyMCE.get(e))&&r.save()}),t=n.serialize(),n.find("input[type=checkbox]").each(function(){var e;void 0!==s(this).attr("name")&&(e=s(this).is(":checked")?s(this).val():"0",t+="&"+s(this).attr("name")+"="+e)}),"redux_save"!==r.attr("name")&&(t+="&"+r.attr("name")+"="+r.val()),e=n.attr("data-nonce"),s.ajax({type:"post",dataType:"json",url:ajaxurl,data:{action:redux.optName.args.opt_name+"_ajax_save",nonce:e,opt_name:redux.optName.args.opt_name,data:t},error:function(e){s(".redux-action_bar input").removeAttr("disabled"),!0===redux.optName.args.dev_mode?(console.log(e.responseText),a.fadeOut("fast"),s(".redux-action_bar .spinner").removeClass("is-active"),alert(redux.optName.ajax.alert)):(redux.optName.optName.args.ajax_save=!1,s(r).click(),s(".redux-action_bar input").attr("disabled","disabled"))},success:function(e){var r;e.action&&"reload"===e.action?location.reload(!0):"success"===e.status?(s(".redux-action_bar input").removeAttr("disabled"),a.fadeOut("fast"),s(".redux-action_bar .spinner").removeClass("is-active"),redux.optName.options=e.options,redux.optName.errors=e.errors,redux.optName.warnings=e.warnings,redux.optName.sanitize=e.sanitize,i.html(e.notification_bar).slideDown("fast"),null===e.errors&&null===e.warnings||s.redux.notices(),null!==e.sanitize&&s.redux.sanitize(),(r=s(document.getElementById("redux_notification_bar")).find(".saved_notice")).slideDown(),r.delay(4e3).slideUp()):(s(".redux-action_bar input").removeAttr("disabled"),s(".redux-action_bar .spinner").removeClass("is-active"),a.fadeOut("fast"),s(".wrap h2:first").parent().append('<div class="error redux_ajax_save_error" style="display:none;"><p>'+e.status+"</p></div>"),s(".redux_ajax_save_error").slideDown(),s("html, body").animate({scrollTop:0},"slow"))}}),!1}}(jQuery),function(i){"use strict";i.redux=i.redux||{},i.redux.expandOptions=function(e){var r=e.find(".expand_options"),t=e.find(".redux-sidebar").width()-1,a=i(".redux-group-menu .active a").data("rel")+"_section_group";return r.hasClass("expanded")?(r.removeClass("expanded"),e.find(".redux-main").removeClass("expand"),e.find(".redux-sidebar").stop().animate({"margin-left":"0px"},500),e.find(".redux-main").stop().animate({"margin-left":t},500,function(){e.find(".redux-main").attr("style","")}),e.find(".redux-group-tab").each(function(){i(this).attr("id")!==a&&i(this).fadeOut("fast")})):(r.addClass("expanded"),e.find(".redux-main").addClass("expand"),e.find(".redux-sidebar").stop().animate({"margin-left":-t-113},500),e.find(".redux-main").stop().animate({"margin-left":"-1px"},500),e.find(".redux-group-tab").fadeIn("medium",function(){i.redux.initFields()})),!1}}(jQuery),function(i){"use strict";i.redux=i.redux||{},i.redux.initEvents=function(a){var e;a.find(".redux-presets-bar").on("click",function(){window.onbeforeunload=null}),a.find("#customize-save-button-wrapper #save").on("click",function(){}),a.find("#toplevel_page_"+redux.optName.args.slug+" .wp-submenu a, #wp-admin-bar-"+redux.optName.args.slug+" a.ab-item").click(function(e){var r;if((a.find("#toplevel_page_"+redux.optName.args.slug).hasClass("wp-menu-open")||i(this).hasClass("ab-item"))&&!i(this).parents("ul.ab-submenu:first").hasClass("ab-sub-secondary")&&0<=i(this).attr("href").toLowerCase().indexOf(redux.optName.args.slug+"&tab="))return r=i(this).attr("href").split("&tab="),e.preventDefault(),a.find("#"+r[1]+"_section_group_li_a").click(),i(this).parents("ul:first").find(".current").removeClass("current"),i(this).addClass("current"),i(this).parent().addClass("current"),!1}),a.find(".redux-action_bar input, #redux-import-action input").on("click",function(e){if(i(this).attr("name")===redux.optName.args.opt_name+"[defaults]"){if(!confirm(redux.optName.args.reset_confirm))return!1}else if(i(this).attr("name")===redux.optName.args.opt_name+"[defaults-section]"){if(!confirm(redux.optName.args.reset_section_confirm))return!1}else if("import"===i(this).attr("name")&&!confirm(redux.optName.args.import_section_confirm))return!1;!(window.onbeforeunload=null)===redux.optName.args.ajax_save?(i.redux.ajax_save(i(this)),e.preventDefault()):location.reload(!0)}),i(".expand_options").click(function(e){var r,t=a;return e.preventDefault(),i(t).hasClass("fully-expanded")&&(i(t).removeClass("fully-expanded"),r=i.cookie("redux_current_tab_"+redux.optName.args.opt_name),a.find("#"+r+"_section_group").fadeIn(200,function(){0!==a.find("#redux-footer").length&&i.redux.stickyInfo(),i.redux.initFields()})),i.redux.expandOptions(i(this).parents(".redux-container:first")),!1}),a.find(".saved_notice").is(":visible")&&a.find(".saved_notice").slideDown(),i(document.body).on("change",".redux-field input, .redux-field textarea, .redux-field select",function(){i(".redux-container-typography select").hasClass("ignore-change")||i(this).hasClass("noUpdate")||i(this).hasClass("no-update")||redux_change(i(this))}),e=a.find("#redux-footer").height(),a.find("#redux-sticky-padder").css({height:e}),a.find("#redux-footer-sticky").removeClass("hide"),0!==a.find("#redux-footer").length&&(i(window).scroll(function(){i.redux.stickyInfo()}),i(window).resize(function(){i.redux.stickyInfo()})),a.find(".saved_notice").delay(4e3).slideUp()}}(jQuery),function(t){"use strict";t.redux=t.redux||{},t.redux.initFields=function(){t(".redux-group-tab:visible").find(".redux-field-init:visible").each(function(){var e,r=t(this).attr("data-type");void 0!==redux.field_objects&&redux.field_objects[r]&&redux.field_objects[r]&&redux.field_objects[r].init(),void 0!==redux.field_objects.pro&&!t.isEmptyObject(redux.field_objects.pro[r])&&redux.field_objects.pro[r]&&redux.field_objects.pro[r].init(),!redux.customizer&&t(this).hasClass("redux_remove_th")&&((e=t(this).parents("tr:first").find("th:first")).html()&&0<e.html().length&&(t(this).prepend(e.html()),t(this).find(".redux_field_th").css("padding","0 0 10px 0")),t(this).parent().attr("colspan","2"),e.remove())})}}(jQuery),function(a){"use strict";a.redux=a.redux||{},a(document).ready(function(){var e,r=[];a.fn.isOnScreen=function(){var e,r,t;if(window)return(r={top:(e=a(window)).scrollTop()}).right=r.left+e.width(),r.bottom=r.top+e.height(),(t=this.offset()).right=t.left+this.outerWidth(),t.bottom=t.top+this.outerHeight(),!(r.right<t.left||r.left>t.right||r.bottom<t.top||r.top>t.bottom)},a("fieldset.redux-container-divide").css("display","none"),a("body").hasClass("wp-customizer")&&a(".wp-full-overlay-sidebar").addClass("redux-container"),a(".redux-container").each(function(){e=a.redux.getOptName(this),-1===a.inArray(e,r)&&(r.push(e),redux.optName=window["redux_"+e.replace("-","_")],a.redux.checkRequired(a(this)),a.redux.initEvents(a(this)))}),a(".redux-container").on("click",function(){e=a.redux.getOptName(this),redux.optName=window["redux_"+e.replace("-","_")]}),void 0!==redux.optName&&(a.redux.disableFields(),a.redux.hideFields(),a.redux.disableSections(),a.redux.initQtip(),a.redux.tabCheck(),a.redux.notices())}),a.redux.disableSections=function(){a(".redux-group-tab").each(function(){a(this).hasClass("disabled")&&a(this).find("input, select, textarea").attr("name","")})},a.redux.disableFields=function(){a('label[for="redux_disable_field"]').each(function(){a(this).parents("tr").find("fieldset:first").find("input, select, textarea").attr("name","")})},a.redux.hideFields=function(){a('label[for="redux_hide_field"]').each(function(){var e=a(this).parent().parent();a(e).addClass("hidden")})},a.redux.getOptName=function(e){var r,t=a(e).parents(".redux-wrap-div").data("opt-name");return void 0===t&&(0===(r=a(e).parents(".postbox")).length&&(r=a(e).parents(".redux-metabox")),a("body").hasClass("wp-customizer")?t=a(".panel-meta.customize-info.redux-panel.accordion-section").data("opt-name"):0!==r.length?void 0===(t=r.attr("id").replace("redux-","").split("-metabox-")[0])&&(t=r.attr("class").replace("redux-metabox","").replace("postbox","").replace("redux-","").replace("hide","").replace("closed","").trim()):t=a(".redux-ajax-security").data("opt-name")),void 0===t&&(t=a(e).find(".redux-form-wrapper").data("opt-name")),t}}(jQuery),function(n){"use strict";n.redux=n.redux||{},n.redux.sanitize=function(){redux.optName.sanitize&&redux.optName.sanitize.sanitize&&n.each(redux.optName.sanitize.sanitize,function(e,r){n.each(r.sanitize,function(e,r){n.redux.fixInput(e,r)})})},n.redux.fixInput=function(e,r){var t,a,i;if("multi_text"===r.type)return i=n("#"+r.id+"-ul"),void n(i.find("li")).each(function(){a=n(this).find("input"),a.val()===r.old&&a.val(r.current)});0===(a=n("input#"+r.id+"-"+e)).length&&(a=n("input#"+r.id)),0===a.length&&(a=n("textarea#"+r.id+"-textarea")),0<a.length&&(t=""===r.current?r.default:r.current,n(a).val(t))},n.redux.notices=function(){redux.optName.errors&&redux.optName.errors.errors&&(n.each(redux.optName.errors.errors,function(e,r){n.each(r.errors,function(e,r){n("#"+redux.optName.args.opt_name+"-"+r.id).addClass("redux-field-error"),0===n("#"+redux.optName.args.opt_name+"-"+r.id).parent().find(".redux-th-error").length?n("#"+redux.optName.args.opt_name+"-"+r.id).append('<div class="redux-th-error">'+r.msg+"</div>"):n("#"+redux.optName.args.opt_name+"-"+r.id).parent().find(".redux-th-error").html(r.msg).css("display","block"),n.redux.fixInput(e,r)})}),n(".redux-container").each(function(){var e,a=n(this);a.find(".redux-menu-error").remove(),0<(e=a.find(".redux-field-error").length)&&(a.find(".redux-field-errors span").text(e),a.find(".redux-field-errors").slideDown(),a.find(".redux-group-tab").each(function(){var e,r,t=n(this).find(".redux-field-error").length;0<t&&(e=n(this).attr("id").split("_")[0],a.find('.redux-group-tab-link-a[data-key="'+e+'"]').prepend('<span class="redux-menu-error">'+t+"</span>"),a.find('.redux-group-tab-link-a[data-key="'+e+'"]').addClass("hasError"),(r=a.find('.redux-group-tab-link-a[data-key="'+e+'"]').parents(".hasSubSections:first"))&&r.find(".redux-group-tab-link-a:first").addClass("hasError"))}))})),redux.optName.warnings&&redux.optName.warnings.warnings&&(n.each(redux.optName.warnings.warnings,function(e,r){n.each(r.warnings,function(e,r){n("#"+redux.optName.args.opt_name+"-"+r.id).addClass("redux-field-warning"),0===n("#"+redux.optName.args.opt_name+"-"+r.id).parent().find(".redux-th-warning").length?n("#"+redux.optName.args.opt_name+"-"+r.id).append('<div class="redux-th-warning">'+r.msg+"</div>"):n("#"+redux.optName.args.opt_name+"-"+r.id).parent().find(".redux-th-warning").html(r.msg).css("display","block"),n.redux.fixInput(e,r)})}),n(".redux-container").each(function(){var e,r,t,a,i=n(this);i.find(".redux-menu-warning").remove(),0<(a=i.find(".redux-field-warning").length)&&(i.find(".redux-field-warnings span").text(a),i.find(".redux-field-warnings").slideDown(),i.find(".redux-group-tab").each(function(){0<(t=n(this).find(".redux-field-warning").length)&&(e=n(this).attr("id").split("_")[0],i.find('.redux-group-tab-link-a[data-key="'+e+'"]').prepend('<span class="redux-menu-warning">'+t+"</span>"),i.find('.redux-group-tab-link-a[data-key="'+e+'"]').addClass("hasWarning"),(r=i.find('.redux-group-tab-link-a[data-key="'+e+'"]').parents(".hasSubSections:first"))&&r.find(".redux-group-tab-link-a:first").addClass("hasWarning"))}))}))}}(jQuery),function(_){"use strict";_.redux=_.redux||{},_.redux.initQtip=function(){var e,r="",t=redux.optName.args.hints.tip_style.shadow,a="",i=redux.optName.args.hints.tip_style.color,n="",s=redux.optName.args.hints.tip_style.rounded,d="",o=redux.optName.args.hints.tip_style.style,u=redux.optName.args.hints.tip_position.my,l=redux.optName.args.hints.tip_position.at,c=redux.optName.args.hints.tip_effect.show.event,f=redux.optName.args.hints.tip_effect.hide.event,p=redux.optName.args.hints.tip_effect.show.effect,x=redux.optName.args.hints.tip_effect.show.duration,h=redux.optName.args.hints.tip_effect.hide.effect,m=redux.optName.args.hints.tip_effect.hide.duration;_().qtip&&(!0===t&&(r="qtip-shadow"),""!==i&&(a="qtip-"+i),!0===s&&(n="qtip-rounded"),""!==o&&(d="qtip-"+o),e=(e=r+","+a+","+n+","+d+",redux-qtip").replace(/,/g," "),u=_.redux.verifyPos(u.toLowerCase(),!0),l=_.redux.verifyPos(l.toLowerCase(),!1),_("div.redux-dev-qtip").each(function(){_(this).qtip({content:{text:_(this).attr("qtip-content"),title:_(this).attr("qtip-title")},show:{effect:function(){_(this).slideDown(500)},event:"mouseover"},hide:{effect:function(){_(this).slideUp(500)},event:"mouseleave"},style:{classes:"qtip-shadow qtip-light"},position:{my:"top center",at:"bottom center"}})}),_("div.redux-hint-qtip").each(function(){_(this).qtip({content:{text:_(this).attr("qtip-content"),title:_(this).attr("qtip-title")},show:{effect:function(){switch(p){case"slide":_(this).slideDown(x);break;case"fade":_(this).fadeIn(x);break;default:_(this).show()}},event:c},hide:{effect:function(){switch(h){case"slide":_(this).slideUp(m);break;case"fade":_(this).fadeOut(m);break;default:_(this).hide(m)}},event:f},style:{classes:e},position:{my:u,at:l}})}),_("input[qtip-content]").each(function(){_(this).qtip({content:{text:_(this).attr("qtip-content"),title:_(this).attr("qtip-title")},show:"focus",hide:"blur",style:e,position:{my:u,at:l}})}))},_.redux.verifyPos=function(e,r){var t,a,i;return""===(e=e.replace(/^\s+|\s+$/gm,""))||-1===e.search(" ")?!0===r?"top left":"bottom right":(a=r?"top":"bottom","top"!==(t=e.split(" "))[0]&&"center"!==t[0]&&"bottom"!==t[0]||(a=t[0]),i=r?"left":"right","left"!==t[1]&&"center"!==t[1]&&"right"!==t[1]||(i=t[1]),a+" "+i)}}(jQuery);var confirmOnPageExit=function(e){"use strict";var r;return e=e||window.event,r=redux.optName.args.save_pending,e&&(e.returnValue=r),window.onbeforeunload=null,r};function redux_change(e){"use strict";var r,t,a,i,n,s,d,o,u,l,c;r=jQuery,e=r(e),t=r(e).parents(".redux-container:first"),a=r("body").hasClass("wp-customizer")?r(".panel-meta.customize-info.redux-panel.accordion-section").data("opt-name"):r.redux.getOptName(t),redux.optName=window["redux_"+a.replace("-","_")],r("body").trigger("check_dependencies",e),e.hasClass("compiler")&&r("#redux-compiler-hook").val(1),n=(i=r(e).closest(".redux-group-tab").attr("id")).split("_")[0],s=t.find('.redux-group-tab-link-a[data-key="'+n+'"]').parents(".redux-group-tab-link-li:first"),d=r("#"+i+"_li").parents(".hasSubSections:first"),r(e).parents("fieldset.redux-field:first").hasClass("redux-field-error")&&(r(e).parents("fieldset.redux-field:first").removeClass("redux-field-error"),r(e).parent().find(".redux-th-error").slideUp(),(o=parseInt(t.find(".redux-field-errors span").text(),0)-1)<=0?(r("#"+i+"_li .redux-menu-error").fadeOut("fast").remove(),r("#"+i+"_li .redux-group-tab-link-a").removeClass("hasError"),r("#"+i+"_li").parents(".inside:first").find(".redux-field-errors").slideUp(),r(e).parents(".redux-container:first").find(".redux-field-errors").slideUp(),r("#redux_metaboxes_errors").slideUp()):((u=parseInt(s.find(".redux-menu-error:first").text(),0)-1)<=0?s.find(".redux-menu-error:first").fadeOut().remove():s.find(".redux-menu-error:first").text(u),t.find(".redux-field-errors span").text(o)),0!==d.length&&0===d.find(".redux-menu-error").length&&d.find(".hasError").removeClass("hasError")),r(e).parents("fieldset.redux-field:first").hasClass("redux-field-warning")&&(r(e).parents("fieldset.redux-field:first").removeClass("redux-field-warning"),r(e).parent().find(".redux-th-warning").slideUp(),(l=parseInt(t.find(".redux-field-warnings span").text(),0)-1)<=0?(r("#"+i+"_li .redux-menu-warning").fadeOut("fast").remove(),r("#"+i+"_li .redux-group-tab-link-a").removeClass("hasWarning"),r("#"+i+"_li").parents(".inside:first").find(".redux-field-warnings").slideUp(),r(e).parents(".redux-container:first").find(".redux-field-warnings").slideUp(),r("#redux_metaboxes_warnings").slideUp()):((c=parseInt(s.find(".redux-menu-warning:first").text(),0)-1)<=0?s.find(".redux-menu-warning:first").fadeOut().remove():s.find(".redux-menu-warning:first").text(c),t.find(".redux-field-warning span").text(l)),0!==d.length&&0===d.find(".redux-menu-warning").length&&d.find(".hasWarning").removeClass("hasWarning")),0<t.find(".saved_notice:visible").length||redux.optName.args.disable_save_warn||(t.find(".redux-save-warn").slideDown(),window.onbeforeunload=confirmOnPageExit)}function redux_hook(e,r,t,a){"use strict";var i;i=e[r],e[r]=function(){var e;return!0===a&&t.apply(this,[e,i,arguments]),e=i.apply(this,arguments),!0!==a&&t.apply(this,[e,i,arguments]),e}}!function(o){"use strict";o.redux=o.redux||{},o.redux.makeBoolStr=function(e){return"false"===e||!1===e||"0"===e||0===e||null===e||""===e?"false":"true"===e||!0===e||"1"===e||1===e?"true":e},o.redux.checkRequired=function(e){o.redux.required(),o("body").on("change",".redux-main select, .redux-main radio, .redux-main input[type=checkbox], .redux-main input[type=hidden]",function(){o.redux.check_dependencies(this)}),o("body").on("check_dependencies",function(e,r){o.redux.check_dependencies(r)}),redux.customizer&&e.find(".customize-control.redux-field.hide").hide(),e.find(".redux-container td > fieldset:empty,td > div:empty").parent().parent().hide()},o.redux.required=function(){o.each(redux.optName.folds,function(e,r){var t,a=o("#"+redux.optName.args.opt_name+"-"+e);a.parents("tr:first, li:first").addClass("fold"),"hide"===r&&(a.parents("tr:first, li:first").addClass("hide"),a.hasClass("redux-container-section")&&(t=o("#section-"+e)).hasClass("redux-section-indent-start")&&(o("#section-table-"+e).hide().addClass("hide"),t.hide().addClass("hide")),a.hasClass("redux-container-info")&&o("#info-"+e).hide().addClass("hide"),a.hasClass("redux-container-divide")&&o("#divide-"+e).hide().addClass("hide"),a.hasClass("redux-container-raw")&&a.parents().find("table#"+redux.optName.args.opt_name+"-"+e).hide().addClass("hide"))})},o.redux.getContainerValue=function(e){var r=o("#"+redux.optName.args.opt_name+"-"+e).serializeForm();return null!==r&&"object"==typeof r&&r.hasOwnProperty(redux.optName.args.opt_name)&&(r=r[redux.optName.args.opt_name][e]),o("#"+redux.optName.args.opt_name+"-"+e).hasClass("redux-container-media")&&(r=r.url),r},o.redux.check_dependencies=function(e){var r,t,a,s;null!==redux.optName.required&&(t=(r=o(e)).parents(".redux-field:first").data("id"),redux.optName.required.hasOwnProperty(t)&&(a=r.parents(".redux-field-container:first"),s=a.parents("tr:first").hasClass("hide"),a.parents("tr:first").length||(s=a.parents(".customize-control:first").hasClass("hide")),o.each(redux.optName.required[t],function(e){var r,t=o(this),a=!1,i=o("#"+redux.optName.args.opt_name+"-"+e),n=i.parents("tr:first");0===n.length&&(n=i.parents("li:first")),s||(a=o.redux.check_parents_dependencies(e)),!0===a?(i.hasClass("redux-container-section")&&(r=o("#section-"+e)).hasClass("redux-section-indent-start")&&r.hasClass("hide")&&(o("#section-table-"+e).fadeIn(300).removeClass("hide"),r.fadeIn(300).removeClass("hide")),i.hasClass("redux-container-info")&&o("#info-"+e).fadeIn(300).removeClass("hide"),i.hasClass("redux-container-divide")&&o("#divide-"+e).fadeIn(300).removeClass("hide"),i.hasClass("redux-container-raw")&&i.parents().find("table#"+redux.optName.args.opt_name+"-"+e).fadeIn(300).removeClass("hide"),n.fadeIn(300,function(){o(this).removeClass("hide"),redux.optName.required.hasOwnProperty(e)&&o.redux.check_dependencies(o("#"+redux.optName.args.opt_name+"-"+e).children().first()),o.redux.initFields()}),(i.hasClass("redux-container-section")||i.hasClass("redux-container-info"))&&n.css({display:"none"})):!1===a&&n.fadeOut(100,function(){o(this).addClass("hide"),redux.optName.required.hasOwnProperty(e)&&o.redux.required_recursive_hide(e)}),t.find("select, radio, input[type=checkbox]").trigger("change")})))},o.redux.required_recursive_hide=function(e){var r,t=o("#"+redux.optName.args.opt_name+"-"+e).parents("tr:first");0===t&&(t=o("#"+redux.optName.args.opt_name+"-"+e).parents("li:first")),t.fadeOut(50,function(){o(this).addClass("hide"),o("#"+redux.optName.args.opt_name+"-"+e).hasClass("redux-container-section")&&(r=o("#section-"+e)).hasClass("redux-section-indent-start")&&(o("#section-table-"+e).fadeOut(50).addClass("hide"),r.fadeOut(50).addClass("hide")),o("#"+redux.optName.args.opt_name+"-"+e).hasClass("redux-container-info")&&o("#info-"+e).fadeOut(50).addClass("hide"),o("#"+redux.optName.args.opt_name+"-"+e).hasClass("redux-container-divide")&&o("#divide-"+e).fadeOut(50).addClass("hide"),o("#"+redux.optName.args.opt_name+"-"+e).hasClass("redux-container-raw")&&o("#"+redux.optName.args.opt_name+"-"+e).parents().find("table#"+redux.optName.args.opt_name+"-"+e).fadeOut(50).addClass("hide"),redux.optName.required.hasOwnProperty(e)&&o.each(redux.optName.required[e],function(e){o.redux.required_recursive_hide(e)})})},o.redux.check_parents_dependencies=function(e){var a="";return redux.optName.required_child.hasOwnProperty(e)?o.each(redux.optName.required_child[e],function(e,r){var t;o("#"+redux.optName.args.opt_name+"-"+r.parent).parents("tr:first").hasClass("hide")||o("#"+redux.optName.args.opt_name+"-"+r.parent).parents("li:first").hasClass("hide")?a=!1:!1!==a&&(t=o.redux.getContainerValue(r.parent),a=o.redux.check_dependencies_visibility(t,r))}):a=!0,a},o.redux.check_dependencies_visibility=function(t,e){var r,d=!1,a=e.checkValue,i=e.operation;switch(o.isPlainObject(t)&&(t=Object.keys(t).map(function(e){return[e,t[e]]})),i){case"=":case"equals":o.isArray(t)?o(t[0]).each(function(e,t){if(o.isArray(a))o(a).each(function(e,r){if(o.redux.makeBoolStr(t)===o.redux.makeBoolStr(r))return d=!0});else if(o.redux.makeBoolStr(t)===o.redux.makeBoolStr(a))return d=!0}):o.isArray(a)?o(a).each(function(e,r){o.redux.makeBoolStr(t)===o.redux.makeBoolStr(r)&&(d=!0)}):o.redux.makeBoolStr(t)===o.redux.makeBoolStr(a)&&(d=!0);break;case"!=":case"not":o.isArray(t)?o(t[0]).each(function(e,t){if(o.isArray(a))o(a).each(function(e,r){if(o.redux.makeBoolStr(t)!==o.redux.makeBoolStr(r))return d=!0});else if(o.redux.makeBoolStr(t)!==o.redux.makeBoolStr(a))return d=!0}):o.isArray(a)?o(a).each(function(e,r){o.redux.makeBoolStr(t)!==o.redux.makeBoolStr(r)&&(d=!0)}):o.redux.makeBoolStr(t)!==o.redux.makeBoolStr(a)&&(d=!0);break;case">":case"greater":case"is_larger":parseFloat(t)>parseFloat(a)&&(d=!0);break;case">=":case"greater_equal":case"is_larger_equal":parseFloat(t)>=parseFloat(a)&&(d=!0);break;case"<":case"less":case"is_smaller":parseFloat(t)<parseFloat(a)&&(d=!0);break;case"<=":case"less_equal":case"is_smaller_equal":parseFloat(t)<=parseFloat(a)&&(d=!0);break;case"contains":o.isPlainObject(t)&&(t=Object.keys(t).map(function(e){return[e,t[e]]})),o.isPlainObject(a)&&(a=Object.keys(a).map(function(e){return[e,a[e]]})),o.isArray(a)?o(a).each(function(e,r){var i=!1,n=r[0],s=r[1];if(o(t).each(function(e,r){var t=r[0],a=r[1];if(n===t&&s===a)return!(i=d=!0)}),!0===i)return!1}):-1!==t.toString().indexOf(a)&&(d=!0);break;case"doesnt_contain":case"not_contain":o.isPlainObject(t)&&(r=Object.keys(t).map(function(e){return t[e]}),t=r),o.isPlainObject(a)&&(r=Object.keys(a).map(function(e){return a[e]}),a=r),o.isArray(a)?o(a).each(function(e,r){-1===t.toString().indexOf(r)&&(d=!0)}):-1===t.toString().indexOf(a)&&(d=!0);break;case"is_empty_or":""!==t&&a!==t||(d=!0);break;case"not_empty_and":""!==t&&a!==t&&(d=!0);break;case"is_empty":case"empty":case"!isset":t&&""!==t&&null!==t||(d=!0);break;case"not_empty":case"!empty":case"isset":t&&""!==t&&null!==t&&(d=!0)}return d}}(jQuery),function(t){"use strict";t.redux=t.redux||{},t.redux.stickyInfo=function(){var e=t(".redux-main").innerWidth()-20,r=t("#redux-sticky").offset().left;t(".redux-save-warn").css("left",r+"px"),t("#info_bar").isOnScreen()||t("#redux-footer-sticky").isOnScreen()?(t("#redux-footer").css({background:"#eee",position:"inherit",bottom:"inherit",width:"inherit"}),t("#redux-sticky-padder").hide(),t("#redux-footer").removeClass("sticky-footer-fixed")):(t("#redux-footer").css({position:"fixed",bottom:"0",width:e,right:21}),t("#redux-footer").addClass("sticky-footer-fixed"),t("#redux-sticky-padder").show()),t("#info_bar").isOnScreen()?t("#redux-sticky").removeClass("sticky-save-warn"):t("#redux-sticky").addClass("sticky-save-warn")}}(jQuery),function(c){"use strict";c.redux=c.redux||{},c.redux.tabCheck=function(){var u,e,r,t,l;c(".redux-group-tab-link-a").click(function(){var e,r,t,a,i,n,s,d,o;(u=c(this)).parent().hasClass("empty_section")&&u.parent().hasClass("hasSubSections")&&(r=(e=c(this).closest("ul").find(".redux-group-tab-link-a")).index(this),u=e.slice(r+1,r+2)),t=u.parents(".redux-container:first"),a=u.data("rel"),i=t.find(".redux-group-tab-link-li.active:first .redux-group-tab-link-a").data("rel"),l=c.redux.getOptName(t),redux.optName=window["redux_"+l.replace("-","_")],i!==a&&(n="",u.parents(".postbox-container:first").length?(t.prev("#currentSection").val(a),""!==(s=t.data("index"))&&(n="redux_metabox_"+s+"_current_tab_"+redux.optName.args.opt_name)):(c("#currentSection").val(a),n="redux_current_tab_"+redux.optName.args.opt_name),c.cookie(n,a,{expires:7,path:"/"}),t.find("#"+a+"_section_group_li").parents(".redux-group-tab-link-li").length&&(d=(d=t.find("#"+a+"_section_group_li").parents(".redux-group-tab-link-li").attr("id").split("_"))[0]),t.find("#toplevel_page_"+redux.optName.args.slug+" .wp-submenu a.current").removeClass("current"),t.find("#toplevel_page_"+redux.optName.args.slug+" .wp-submenu li.current").removeClass("current"),t.find("#toplevel_page_"+redux.optName.args.slug+" .wp-submenu a").each(function(){var e=c(this).attr("href").split("&tab=");e[1]!==a&&e[1]!==d||(c(this).addClass("current"),c(this).parent().addClass("current"))}),t.find("#"+i+"_section_group_li").find("#"+i+"_section_group_li").length?(t.find("#"+i+"_section_group_li").addClass("activeChild"),t.find("#"+a+"_section_group_li").addClass("active").removeClass("activeChild")):t.find("#"+a+"_section_group_li").parents("#"+i+"_section_group_li").length||t.find("#"+i+"_section_group_li").parents("ul.subsection").find("#"+a+"_section_group_li").length?(t.find("#"+a+"_section_group_li").parents("#"+i+"_section_group_li").length?t.find("#"+i+"_section_group_li").addClass("activeChild").removeClass("active"):(t.find("#"+a+"_section_group_li").addClass("active"),t.find("#"+i+"_section_group_li").removeClass("active")),t.find("#"+a+"_section_group_li").removeClass("activeChild").addClass("active")):(setTimeout(function(){t.find("#"+a+"_section_group_li").addClass("active").removeClass("activeChild").find("ul.subsection").slideDown()},1),t.find("#"+i+"_section_group_li").find("ul.subsection").length?(t.find("#"+i+"_section_group_li").find("ul.subsection").slideUp("fast",function(){t.find("#"+i+"_section_group_li").removeClass("active").removeClass("activeChild")}),0<(o=t.find("#"+a+"_section_group_li").parents(".hasSubSections:first")).length&&(t.find("#"+a+"_section_group_li").removeClass("active"),a=o.find(".redux-group-tab-link-a:first").data("rel"),o.hasClass("empty_section")?(o.find(".subsection li:first").addClass("active"),t.find("#"+a+"_section_group_li").removeClass("active").addClass("activeChild").find("ul.subsection").slideDown(),o=o.find(".subsection li:first"),a=o.find(".redux-group-tab-link-a:first").data("rel")):t.find("#"+a+"_section_group_li").addClass("active").removeClass("activeChild").find("ul.subsection").slideDown())):t.find("#"+i+"_section_group_li").parents("ul.subsection").length?t.find("#"+i+"_section_group_li").parents("#"+a+"_section_group_li").length?t.find("#"+i+"_section_group_li").removeClass("active"):t.find("#"+i+"_section_group_li").parents("ul.subsection").slideUp("fast",function(){t.find("#"+i+"_section_group_li").removeClass("active"),t.find("#"+i+"_section_group_li").parents(".redux-group-tab-link-li").removeClass("active").removeClass("activeChild"),t.find("#"+a+"_section_group_li").parents(".redux-group-tab-link-li").addClass("activeChild").find("ul.subsection").slideDown(),t.find("#"+a+"_section_group_li").addClass("active")}):(t.find("#"+i+"_section_group_li").removeClass("active"),t.find("#"+a+"_section_group_li").parents(".redux-group-tab-link-li").length&&(setTimeout(function(){t.find("#"+a+"_section_group_li").parents(".redux-group-tab-link-li").addClass("activeChild").find("ul.subsection").slideDown()},50),t.find("#"+a+"_section_group_li").addClass("active")))),t.find("#"+i+"_section_group").hide(),t.find("#"+a+"_section_group").fadeIn(200,function(){0!==t.find("#redux-footer").length&&c.redux.stickyInfo(),c.redux.initFields()}),c("#toplevel_page_"+redux.optName.args.slug).find(".current").removeClass("current"))}),void 0===redux.optName.last_tab?(""!==(e=decodeURI((new RegExp("tab=(.+?)(&|$)").exec(location.search)||[""])[1]))?c.cookie("redux_current_tab_get")!==e&&(c.cookie("redux_current_tab",e,{expires:7,path:"/"}),c.cookie("redux_current_tab_get",e,{expires:7,path:"/"}),c.cookie("redux_current_tab_"+redux.optName.args.opt_name,e,{expires:7,path:"/"}),c("#"+e+"_section_group_li").click()):""!==c.cookie("redux_current_tab_get")&&c.removeCookie("redux_current_tab_get"),c(".redux-container").each(function(){var e;r=(t=c(this).parents(".postbox-container:first").length?(l=c.redux.getOptName(this),""===(e=c(this).data("index"))&&(e=0),"redux_metabox_"+e+"_current_tab_"+l):"redux_current_tab_"+(l=c(".redux-ajax-security").data("opt-name")),c(this).find("#"+c.cookie(t)+"_section_group_li_a")),null===c.cookie(t)||void 0===c.cookie(t)||0===r.length?c(this).find(".redux-group-tab-link-a:first").click():r.click()})):c("#"+redux.optName.last_tab+"_section_group_li_a").click()}}(jQuery);
1
+ function colorValidate(e){"use strict";var r=jQuery(e).val(),t=colorNameToHex(r);return t!==r.replace("#","")?t:r}function colorNameToHex(e){"use strict";var r=e.replace(/^\s\s*/,"").replace(/\s\s*$/,"").replace("#",""),t={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",honeydew:"#f0fff0",hotpink:"#ff69b4","indianred ":"#cd5c5c","indigo ":"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgrey:"#d3d3d3",lightgreen:"#90ee90",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370d8",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#d87093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",redux:"#01a3e3",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};return"undefined"!==t[r.toLowerCase()]?t[r.toLowerCase()]:e}!function(d){"use strict";d.redux=d.redux||{},d.redux.ajax_save=function(r){var t,e,i=d(document.getElementById("redux_ajax_overlay")),a=d(document.getElementById("redux_notification_bar")),n=d(r).parents(".redux-wrap-div").find("form").first();return i.fadeIn(),d(".redux-action_bar .spinner").addClass("is-active"),d(".redux-action_bar input").attr("disabled","disabled"),a.slideUp(),d(".redux-save-warn").slideUp(),d(".redux_ajax_save_error").slideUp("medium",function(){d(this).remove()}),redux.optName.hasOwnProperty("editor")&&d.each(redux.optName.editor,function(e){var r;"undefined"!=typeof tinyMCE&&(r=tinyMCE.get(e))&&r.save()}),t=n.serialize(),n.find("input[type=checkbox]").each(function(){var e;void 0!==d(this).attr("name")&&(e=d(this).is(":checked")?d(this).val():"0",t+="&"+d(this).attr("name")+"="+e)}),"redux_save"!==r.attr("name")&&(t+="&"+r.attr("name")+"="+r.val()),e=n.attr("data-nonce"),d.ajax({type:"post",dataType:"json",url:ajaxurl,data:{action:redux.optName.args.opt_name+"_ajax_save",nonce:e,opt_name:redux.optName.args.opt_name,data:t},error:function(e){d(".redux-action_bar input").removeAttr("disabled"),!0===redux.optName.args.dev_mode?(console.log(e.responseText),i.fadeOut("fast"),d(".redux-action_bar .spinner").removeClass("is-active"),alert(redux.optName.ajax.alert)):(redux.optName.optName.args.ajax_save=!1,d(r).click(),d(".redux-action_bar input").attr("disabled","disabled"))},success:function(e){var r;e.action&&"reload"===e.action?location.reload(!0):"success"===e.status?(d(".redux-action_bar input").removeAttr("disabled"),i.fadeOut("fast"),d(".redux-action_bar .spinner").removeClass("is-active"),redux.optName.options=e.options,redux.optName.errors=e.errors,redux.optName.warnings=e.warnings,redux.optName.sanitize=e.sanitize,a.html(e.notification_bar).slideDown("fast"),null===e.errors&&null===e.warnings||d.redux.notices(),null!==e.sanitize&&d.redux.sanitize(),(r=d(document.getElementById("redux_notification_bar")).find(".saved_notice")).slideDown(),r.delay(4e3).slideUp()):(d(".redux-action_bar input").removeAttr("disabled"),d(".redux-action_bar .spinner").removeClass("is-active"),i.fadeOut("fast"),d(".wrap h2:first").parent().append('<div class="error redux_ajax_save_error" style="display:none;"><p>'+e.status+"</p></div>"),d(".redux_ajax_save_error").slideDown(),d("html, body").animate({scrollTop:0},"slow"))}}),!1}}(jQuery),function(a){"use strict";a.redux=a.redux||{},a.redux.expandOptions=function(e){var r=e.find(".expand_options"),t=e.find(".redux-sidebar").width()-1,i=a(".redux-group-menu .active a").data("rel")+"_section_group";return r.hasClass("expanded")?(r.removeClass("expanded"),e.find(".redux-main").removeClass("expand"),e.find(".redux-sidebar").stop().animate({"margin-left":"0px"},500),e.find(".redux-main").stop().animate({"margin-left":t},500,function(){e.find(".redux-main").attr("style","")}),e.find(".redux-group-tab").each(function(){a(this).attr("id")!==i&&a(this).fadeOut("fast")})):(r.addClass("expanded"),e.find(".redux-main").addClass("expand"),e.find(".redux-sidebar").stop().animate({"margin-left":-t-113},500),e.find(".redux-main").stop().animate({"margin-left":"-1px"},500),e.find(".redux-group-tab").fadeIn("medium",function(){a.redux.initFields()})),!1}}(jQuery),function(a){"use strict";a.redux=a.redux||{},a.redux.initEvents=function(i){var e;i.find(".redux-presets-bar").on("click",function(){window.onbeforeunload=null}),i.find("#customize-save-button-wrapper #save").on("click",function(){}),i.find("#toplevel_page_"+redux.optName.args.slug+" .wp-submenu a, #wp-admin-bar-"+redux.optName.args.slug+" a.ab-item").click(function(e){var r;if((i.find("#toplevel_page_"+redux.optName.args.slug).hasClass("wp-menu-open")||a(this).hasClass("ab-item"))&&!a(this).parents("ul.ab-submenu:first").hasClass("ab-sub-secondary")&&0<=a(this).attr("href").toLowerCase().indexOf(redux.optName.args.slug+"&tab="))return r=a(this).attr("href").split("&tab="),e.preventDefault(),i.find("#"+r[1]+"_section_group_li_a").click(),a(this).parents("ul:first").find(".current").removeClass("current"),a(this).addClass("current"),a(this).parent().addClass("current"),!1}),i.find(".redux-action_bar input, #redux-import-action input").on("click",function(e){if(a(this).attr("name")===redux.optName.args.opt_name+"[defaults]"){if(!confirm(redux.optName.args.reset_confirm))return!1}else if(a(this).attr("name")===redux.optName.args.opt_name+"[defaults-section]"){if(!confirm(redux.optName.args.reset_section_confirm))return!1}else if("import"===a(this).attr("name")&&!confirm(redux.optName.args.import_section_confirm))return!1;!(window.onbeforeunload=null)===redux.optName.args.ajax_save?(a.redux.ajax_save(a(this)),e.preventDefault()):location.reload(!0)}),a(".expand_options").click(function(e){var r,t=i;return e.preventDefault(),a(t).hasClass("fully-expanded")&&(a(t).removeClass("fully-expanded"),r=a.cookie("redux_current_tab_"+redux.optName.args.opt_name),i.find("#"+r+"_section_group").fadeIn(200,function(){0!==i.find("#redux-footer").length&&a.redux.stickyInfo(),a.redux.initFields()})),a.redux.expandOptions(a(this).parents(".redux-container:first")),!1}),i.find(".saved_notice").is(":visible")&&i.find(".saved_notice").slideDown(),a(document.body).on("change",".redux-field input, .redux-field textarea, .redux-field select",function(){a(".redux-container-typography select").hasClass("ignore-change")||a(this).hasClass("noUpdate")||a(this).hasClass("no-update")||redux_change(a(this))}),e=i.find("#redux-footer").height(),i.find("#redux-sticky-padder").css({height:e}),i.find("#redux-footer-sticky").removeClass("hide"),0!==i.find("#redux-footer").length&&(a(window).scroll(function(){a.redux.stickyInfo()}),a(window).resize(function(){a.redux.stickyInfo()})),i.find(".saved_notice").delay(4e3).slideUp()}}(jQuery),function(t){"use strict";t.redux=t.redux||{},t.redux.initFields=function(){t(".redux-group-tab:visible").find(".redux-field-init:visible").each(function(){var e,r=t(this).attr("data-type");void 0!==redux.field_objects&&redux.field_objects[r]&&redux.field_objects[r]&&redux.field_objects[r].init(),void 0!==redux.field_objects.pro&&!t.isEmptyObject(redux.field_objects.pro[r])&&redux.field_objects.pro[r]&&redux.field_objects.pro[r].init(),!redux.customizer&&t(this).hasClass("redux_remove_th")&&((e=t(this).parents("tr:first").find("th:first")).html()&&0<e.html().length&&(t(this).prepend(e.html()),t(this).find(".redux_field_th").css("padding","0 0 10px 0")),t(this).parent().attr("colspan","2"),e.remove())})}}(jQuery),function(a){"use strict";a.redux=a.redux||{},a(document).ready(function(){var e,r=[];a.fn.isOnScreen=function(){var e,r,t;if(window)return(r={top:(e=a(window)).scrollTop()}).right=r.left+e.width(),r.bottom=r.top+e.height(),(t=this.offset()).right=t.left+this.outerWidth(),t.bottom=t.top+this.outerHeight(),!(r.right<t.left||r.left>t.right||r.bottom<t.top||r.top>t.bottom)},a("fieldset.redux-container-divide").css("display","none"),redux.customizer&&a(".wp-full-overlay-sidebar").addClass("redux-container"),a(".redux-container").each(function(){e=a.redux.getOptName(this),-1===a.inArray(e,r)&&(r.push(e),a.redux.checkRequired(a(this)),a.redux.initEvents(a(this)))}),a(".redux-container").on("click",function(){e=a.redux.getOptName(this)}),void 0!==redux.optName&&(a.redux.disableFields(),a.redux.hideFields(),a.redux.disableSections(),a.redux.initQtip(),a.redux.tabCheck(),a.redux.notices())}),a.redux.disableSections=function(){a(".redux-group-tab").each(function(){a(this).hasClass("disabled")&&a(this).find("input, select, textarea").attr("name","")})},a.redux.disableFields=function(){a('label[for="redux_disable_field"]').each(function(){a(this).parents("tr").find("fieldset:first").find("input, select, textarea").attr("name","")})},a.redux.hideFields=function(){a('label[for="redux_hide_field"]').each(function(){var e=a(this).parent().parent();a(e).addClass("hidden")})},a.redux.getOptName=function(e){var r,t=a(e),i=redux.customizer?t.find(".redux-customizer-opt-name").data("opt-name"):a(e).parents(".redux-wrap-div").data("opt-name");return void 0===i&&(0===(r=a(e).parents(".postbox")).length&&(r=a(e).parents(".redux-metabox")),0!==r.length?void 0===(i=r.attr("id").replace("redux-","").split("-metabox-")[0])&&(i=r.attr("class").replace("redux-metabox","").replace("postbox","").replace("redux-","").replace("hide","").replace("closed","").trim()):i=a(".redux-ajax-security").data("opt-name")),void 0===i&&(i=a(e).find(".redux-form-wrapper").data("opt-name")),void 0===i&&(i=redux.opt_names[0]),void 0!==i&&(redux.optName=window["redux_"+i.replace(/\-/g,"_")]),i},a.redux.getSelector=function(e,r){return e||(e=".redux-container-"+r+":visible",e=redux.customizer?a(document).find(".control-section-redux.open").find(e):a(document).find(".redux-group-tab:visible").find(e)),e}}(jQuery),function(n){"use strict";n.redux=n.redux||{},n.redux.sanitize=function(){redux.optName.sanitize&&redux.optName.sanitize.sanitize&&n.each(redux.optName.sanitize.sanitize,function(e,r){n.each(r.sanitize,function(e,r){n.redux.fixInput(e,r)})})},n.redux.fixInput=function(e,r){var t,i,a;if("multi_text"===r.type)return a=n("#"+r.id+"-ul"),void n(a.find("li")).each(function(){i=n(this).find("input"),i.val()===r.old&&i.val(r.current)});0===(i=n("input#"+r.id+"-"+e)).length&&(i=n("input#"+r.id)),0===i.length&&(i=n("textarea#"+r.id+"-textarea")),0<i.length&&(t=""===r.current?r.default:r.current,n(i).val(t))},n.redux.notices=function(){redux.optName.errors&&redux.optName.errors.errors&&(n.each(redux.optName.errors.errors,function(e,r){n.each(r.errors,function(e,r){n("#"+redux.optName.args.opt_name+"-"+r.id).addClass("redux-field-error"),0===n("#"+redux.optName.args.opt_name+"-"+r.id).parent().find(".redux-th-error").length?n("#"+redux.optName.args.opt_name+"-"+r.id).append('<div class="redux-th-error">'+r.msg+"</div>"):n("#"+redux.optName.args.opt_name+"-"+r.id).parent().find(".redux-th-error").html(r.msg).css("display","block"),n.redux.fixInput(e,r)})}),n(".redux-container").each(function(){var e,i=n(this);i.find(".redux-menu-error").remove(),0<(e=i.find(".redux-field-error").length)&&(i.find(".redux-field-errors span").text(e),i.find(".redux-field-errors").slideDown(),i.find(".redux-group-tab").each(function(){var e,r,t=n(this).find(".redux-field-error").length;0<t&&(e=n(this).attr("id").split("_")[0],i.find('.redux-group-tab-link-a[data-key="'+e+'"]').prepend('<span class="redux-menu-error">'+t+"</span>"),i.find('.redux-group-tab-link-a[data-key="'+e+'"]').addClass("hasError"),(r=i.find('.redux-group-tab-link-a[data-key="'+e+'"]').parents(".hasSubSections:first"))&&r.find(".redux-group-tab-link-a:first").addClass("hasError"))}))})),redux.optName.warnings&&redux.optName.warnings.warnings&&(n.each(redux.optName.warnings.warnings,function(e,r){n.each(r.warnings,function(e,r){n("#"+redux.optName.args.opt_name+"-"+r.id).addClass("redux-field-warning"),0===n("#"+redux.optName.args.opt_name+"-"+r.id).parent().find(".redux-th-warning").length?n("#"+redux.optName.args.opt_name+"-"+r.id).append('<div class="redux-th-warning">'+r.msg+"</div>"):n("#"+redux.optName.args.opt_name+"-"+r.id).parent().find(".redux-th-warning").html(r.msg).css("display","block"),n.redux.fixInput(e,r)})}),n(".redux-container").each(function(){var e,r,t,i,a=n(this);a.find(".redux-menu-warning").remove(),0<(i=a.find(".redux-field-warning").length)&&(a.find(".redux-field-warnings span").text(i),a.find(".redux-field-warnings").slideDown(),a.find(".redux-group-tab").each(function(){0<(t=n(this).find(".redux-field-warning").length)&&(e=n(this).attr("id").split("_")[0],a.find('.redux-group-tab-link-a[data-key="'+e+'"]').prepend('<span class="redux-menu-warning">'+t+"</span>"),a.find('.redux-group-tab-link-a[data-key="'+e+'"]').addClass("hasWarning"),(r=a.find('.redux-group-tab-link-a[data-key="'+e+'"]').parents(".hasSubSections:first"))&&r.find(".redux-group-tab-link-a:first").addClass("hasWarning"))}))}))}}(jQuery),function(_){"use strict";_.redux=_.redux||{},_.redux.initQtip=function(){var e,r="",t=redux.optName.args.hints.tip_style.shadow,i="",a=redux.optName.args.hints.tip_style.color,n="",d=redux.optName.args.hints.tip_style.rounded,s="",o=redux.optName.args.hints.tip_style.style,u=redux.optName.args.hints.tip_position.my,l=redux.optName.args.hints.tip_position.at,c=redux.optName.args.hints.tip_effect.show.event,f=redux.optName.args.hints.tip_effect.hide.event,p=redux.optName.args.hints.tip_effect.show.effect,x=redux.optName.args.hints.tip_effect.show.duration,h=redux.optName.args.hints.tip_effect.hide.effect,m=redux.optName.args.hints.tip_effect.hide.duration;_().qtip&&(!0===t&&(r="qtip-shadow"),""!==a&&(i="qtip-"+a),!0===d&&(n="qtip-rounded"),""!==o&&(s="qtip-"+o),e=(e=r+","+i+","+n+","+s+",redux-qtip").replace(/,/g," "),u=_.redux.verifyPos(u.toLowerCase(),!0),l=_.redux.verifyPos(l.toLowerCase(),!1),_("div.redux-dev-qtip").each(function(){_(this).qtip({content:{text:_(this).attr("qtip-content"),title:_(this).attr("qtip-title")},show:{effect:function(){_(this).slideDown(500)},event:"mouseover"},hide:{effect:function(){_(this).slideUp(500)},event:"mouseleave"},style:{classes:"qtip-shadow qtip-light"},position:{my:"top center",at:"bottom center"}})}),_("div.redux-hint-qtip").each(function(){_(this).qtip({content:{text:_(this).attr("qtip-content"),title:_(this).attr("qtip-title")},show:{effect:function(){switch(p){case"slide":_(this).slideDown(x);break;case"fade":_(this).fadeIn(x);break;default:_(this).show()}},event:c},hide:{effect:function(){switch(h){case"slide":_(this).slideUp(m);break;case"fade":_(this).fadeOut(m);break;default:_(this).hide(m)}},event:f},style:{classes:e},position:{my:u,at:l}})}),_("input[qtip-content]").each(function(){_(this).qtip({content:{text:_(this).attr("qtip-content"),title:_(this).attr("qtip-title")},show:"focus",hide:"blur",style:e,position:{my:u,at:l}})}))},_.redux.verifyPos=function(e,r){var t,i,a;return""===(e=e.replace(/^\s+|\s+$/gm,""))||-1===e.search(" ")?!0===r?"top left":"bottom right":(i=r?"top":"bottom","top"!==(t=e.split(" "))[0]&&"center"!==t[0]&&"bottom"!==t[0]||(i=t[0]),a=r?"left":"right","left"!==t[1]&&"center"!==t[1]&&"right"!==t[1]||(a=t[1]),i+" "+a)}}(jQuery);var confirmOnPageExit=function(e){"use strict";var r;return e=e||window.event,r=redux.optName.args.save_pending,e&&(e.returnValue=r),window.onbeforeunload=null,r};function redux_change(e){"use strict";var r,t,i,a,n,d,s,o,u,l;r=jQuery,e=r(e),t=r(e).parents(".redux-container:first"),redux.customizer?r(".redux-customizer-opt-name").data("opt-name"):r.redux.getOptName(t),r("body").trigger("check_dependencies",e),e.hasClass("compiler")&&r("#redux-compiler-hook").val(1),a=(i=r(e).closest(".redux-group-tab").attr("id")).split("_")[0],n=t.find('.redux-group-tab-link-a[data-key="'+a+'"]').parents(".redux-group-tab-link-li:first"),d=r("#"+i+"_li").parents(".hasSubSections:first"),r(e).parents("fieldset.redux-field:first").hasClass("redux-field-error")&&(r(e).parents("fieldset.redux-field:first").removeClass("redux-field-error"),r(e).parent().find(".redux-th-error").slideUp(),(s=parseInt(t.find(".redux-field-errors span").text(),0)-1)<=0?(r("#"+i+"_li .redux-menu-error").fadeOut("fast").remove(),r("#"+i+"_li .redux-group-tab-link-a").removeClass("hasError"),r("#"+i+"_li").parents(".inside:first").find(".redux-field-errors").slideUp(),r(e).parents(".redux-container:first").find(".redux-field-errors").slideUp(),r("#redux_metaboxes_errors").slideUp()):((o=parseInt(n.find(".redux-menu-error:first").text(),0)-1)<=0?n.find(".redux-menu-error:first").fadeOut().remove():n.find(".redux-menu-error:first").text(o),t.find(".redux-field-errors span").text(s)),0!==d.length&&0===d.find(".redux-menu-error").length&&d.find(".hasError").removeClass("hasError")),r(e).parents("fieldset.redux-field:first").hasClass("redux-field-warning")&&(r(e).parents("fieldset.redux-field:first").removeClass("redux-field-warning"),r(e).parent().find(".redux-th-warning").slideUp(),(u=parseInt(t.find(".redux-field-warnings span").text(),0)-1)<=0?(r("#"+i+"_li .redux-menu-warning").fadeOut("fast").remove(),r("#"+i+"_li .redux-group-tab-link-a").removeClass("hasWarning"),r("#"+i+"_li").parents(".inside:first").find(".redux-field-warnings").slideUp(),r(e).parents(".redux-container:first").find(".redux-field-warnings").slideUp(),r("#redux_metaboxes_warnings").slideUp()):((l=parseInt(n.find(".redux-menu-warning:first").text(),0)-1)<=0?n.find(".redux-menu-warning:first").fadeOut().remove():n.find(".redux-menu-warning:first").text(l),t.find(".redux-field-warning span").text(u)),0!==d.length&&0===d.find(".redux-menu-warning").length&&d.find(".hasWarning").removeClass("hasWarning")),0<t.find(".saved_notice:visible").length||redux.optName.args.disable_save_warn||(t.find(".redux-save-warn").slideDown(),window.onbeforeunload=confirmOnPageExit)}function redux_hook(e,r,t,i){"use strict";var a;a=e[r],e[r]=function(){var e;return!0===i&&t.apply(this,[e,a,arguments]),e=a.apply(this,arguments),!0!==i&&t.apply(this,[e,a,arguments]),e}}!function(o){"use strict";o.redux=o.redux||{},o.redux.makeBoolStr=function(e){return"false"===e||!1===e||"0"===e||0===e||null===e||""===e?"false":"true"===e||!0===e||"1"===e||1===e?"true":e},o.redux.checkRequired=function(e){o.redux.required(),o("body").on("change",".redux-main select, .redux-main radio, .redux-main input[type=checkbox], .redux-main input[type=hidden]",function(){o.redux.check_dependencies(this)}),o("body").on("check_dependencies",function(e,r){o.redux.check_dependencies(r)}),redux.customizer&&e.find(".customize-control.redux-field.hide").hide(),e.find(".redux-container td > fieldset:empty,td > div:empty").parent().parent().hide()},o.redux.required=function(){o.each(redux.opt_names,function(a){o.each(window["redux_"+redux.opt_names[a].replace(/\-/g,"_")].folds,function(e,r){var t,i=o("#"+redux.opt_names[a]+"-"+e);i.parents("tr:first, li:first").addClass("fold"),"hide"===r&&(i.parents("tr:first, li:first").addClass("hide"),i.hasClass("redux-container-section")&&(t=o("#section-"+e)).hasClass("redux-section-indent-start")&&(o("#section-table-"+e).hide().addClass("hide"),t.hide().addClass("hide")),i.hasClass("redux-container-info")&&o("#info-"+e).hide().addClass("hide"),i.hasClass("redux-container-divide")&&o("#divide-"+e).hide().addClass("hide"),i.hasClass("redux-container-raw")&&i.parents().find("table#"+redux.opt_names[a]+"-"+e).hide().addClass("hide"))})})},o.redux.getContainerValue=function(e){var r=o("#"+redux.optName.args.opt_name+"-"+e).serializeForm();return null!==r&&"object"==typeof r&&r.hasOwnProperty(redux.optName.args.opt_name)&&(r=r[redux.optName.args.opt_name][e]),o("#"+redux.optName.args.opt_name+"-"+e).hasClass("redux-container-media")&&(r=r.url),r},o.redux.check_dependencies=function(e){var r,t,i,d;null!==redux.optName.required&&(t=(r=o(e)).parents(".redux-field:first").data("id"),redux.optName.required.hasOwnProperty(t)&&(i=r.parents(".redux-field-container:first"),d=i.parents("tr:first").hasClass("hide"),i.parents("tr:first").length||(d=i.parents(".customize-control:first").hasClass("hide")),o.each(redux.optName.required[t],function(e){var r,t=o(this),i=!1,a=o("#"+redux.optName.args.opt_name+"-"+e),n=a.parents("tr:first");0===n.length&&(n=a.parents("li:first")),d||(i=o.redux.check_parents_dependencies(e)),!0===i?(a.hasClass("redux-container-section")&&(r=o("#section-"+e)).hasClass("redux-section-indent-start")&&r.hasClass("hide")&&(o("#section-table-"+e).fadeIn(300).removeClass("hide"),r.fadeIn(300).removeClass("hide")),a.hasClass("redux-container-info")&&o("#info-"+e).fadeIn(300).removeClass("hide"),a.hasClass("redux-container-divide")&&o("#divide-"+e).fadeIn(300).removeClass("hide"),a.hasClass("redux-container-raw")&&a.parents().find("table#"+redux.optName.args.opt_name+"-"+e).fadeIn(300).removeClass("hide"),n.fadeIn(300,function(){o(this).removeClass("hide"),redux.optName.required.hasOwnProperty(e)&&o.redux.check_dependencies(o("#"+redux.optName.args.opt_name+"-"+e).children().first()),o.redux.initFields()}),(a.hasClass("redux-container-section")||a.hasClass("redux-container-info"))&&n.css({display:"none"})):!1===i&&n.fadeOut(100,function(){o(this).addClass("hide"),redux.optName.required.hasOwnProperty(e)&&o.redux.required_recursive_hide(e)}),t.find("select, radio, input[type=checkbox]").trigger("change")})))},o.redux.required_recursive_hide=function(e){var r,t=o("#"+redux.optName.args.opt_name+"-"+e).parents("tr:first");0===t&&(t=o("#"+redux.optName.args.opt_name+"-"+e).parents("li:first")),t.fadeOut(50,function(){o(this).addClass("hide"),o("#"+redux.optName.args.opt_name+"-"+e).hasClass("redux-container-section")&&(r=o("#section-"+e)).hasClass("redux-section-indent-start")&&(o("#section-table-"+e).fadeOut(50).addClass("hide"),r.fadeOut(50).addClass("hide")),o("#"+redux.optName.args.opt_name+"-"+e).hasClass("redux-container-info")&&o("#info-"+e).fadeOut(50).addClass("hide"),o("#"+redux.optName.args.opt_name+"-"+e).hasClass("redux-container-divide")&&o("#divide-"+e).fadeOut(50).addClass("hide"),o("#"+redux.optName.args.opt_name+"-"+e).hasClass("redux-container-raw")&&o("#"+redux.optName.args.opt_name+"-"+e).parents().find("table#"+redux.optName.args.opt_name+"-"+e).fadeOut(50).addClass("hide"),redux.optName.required.hasOwnProperty(e)&&o.each(redux.optName.required[e],function(e){o.redux.required_recursive_hide(e)})})},o.redux.check_parents_dependencies=function(e){var i="";return redux.optName.required_child.hasOwnProperty(e)?o.each(redux.optName.required_child[e],function(e,r){var t;o("#"+redux.optName.args.opt_name+"-"+r.parent).parents("tr:first").hasClass("hide")||o("#"+redux.optName.args.opt_name+"-"+r.parent).parents("li:first").hasClass("hide")?i=!1:!1!==i&&(t=o.redux.getContainerValue(r.parent),i=o.redux.check_dependencies_visibility(t,r))}):i=!0,i},o.redux.check_dependencies_visibility=function(t,e){var r,s=!1,i=e.checkValue,a=e.operation;switch(o.isPlainObject(t)&&(t=Object.keys(t).map(function(e){return[e,t[e]]})),a){case"=":case"equals":o.isArray(t)?o(t[0]).each(function(e,t){if(o.isArray(i))o(i).each(function(e,r){if(o.redux.makeBoolStr(t)===o.redux.makeBoolStr(r))return s=!0});else if(o.redux.makeBoolStr(t)===o.redux.makeBoolStr(i))return s=!0}):o.isArray(i)?o(i).each(function(e,r){o.redux.makeBoolStr(t)===o.redux.makeBoolStr(r)&&(s=!0)}):o.redux.makeBoolStr(t)===o.redux.makeBoolStr(i)&&(s=!0);break;case"!=":case"not":o.isArray(t)?o(t[0]).each(function(e,t){if(o.isArray(i))o(i).each(function(e,r){if(o.redux.makeBoolStr(t)!==o.redux.makeBoolStr(r))return s=!0});else if(o.redux.makeBoolStr(t)!==o.redux.makeBoolStr(i))return s=!0}):o.isArray(i)?o(i).each(function(e,r){o.redux.makeBoolStr(t)!==o.redux.makeBoolStr(r)&&(s=!0)}):o.redux.makeBoolStr(t)!==o.redux.makeBoolStr(i)&&(s=!0);break;case">":case"greater":case"is_larger":parseFloat(t)>parseFloat(i)&&(s=!0);break;case">=":case"greater_equal":case"is_larger_equal":parseFloat(t)>=parseFloat(i)&&(s=!0);break;case"<":case"less":case"is_smaller":parseFloat(t)<parseFloat(i)&&(s=!0);break;case"<=":case"less_equal":case"is_smaller_equal":parseFloat(t)<=parseFloat(i)&&(s=!0);break;case"contains":o.isPlainObject(t)&&(t=Object.keys(t).map(function(e){return[e,t[e]]})),o.isPlainObject(i)&&(i=Object.keys(i).map(function(e){return[e,i[e]]})),o.isArray(i)?o(i).each(function(e,r){var a=!1,n=r[0],d=r[1];if(o(t).each(function(e,r){var t=r[0],i=r[1];if(n===t&&d===i)return!(a=s=!0)}),!0===a)return!1}):-1!==t.toString().indexOf(i)&&(s=!0);break;case"doesnt_contain":case"not_contain":o.isPlainObject(t)&&(r=Object.keys(t).map(function(e){return t[e]}),t=r),o.isPlainObject(i)&&(r=Object.keys(i).map(function(e){return i[e]}),i=r),o.isArray(i)?o(i).each(function(e,r){-1===t.toString().indexOf(r)&&(s=!0)}):-1===t.toString().indexOf(i)&&(s=!0);break;case"is_empty_or":""!==t&&i!==t||(s=!0);break;case"not_empty_and":""!==t&&i!==t&&(s=!0);break;case"is_empty":case"empty":case"!isset":t&&""!==t&&null!==t||(s=!0);break;case"not_empty":case"!empty":case"isset":t&&""!==t&&null!==t&&(s=!0)}return s}}(jQuery),function(t){"use strict";t.redux=t.redux||{},t.redux.stickyInfo=function(){var e=t(".redux-main").innerWidth()-20,r=t("#redux-sticky").offset().left;t(".redux-save-warn").css("left",r+"px"),t("#info_bar").isOnScreen()||t("#redux-footer-sticky").isOnScreen()?(t("#redux-footer").css({background:"#eee",position:"inherit",bottom:"inherit",width:"inherit"}),t("#redux-sticky-padder").hide(),t("#redux-footer").removeClass("sticky-footer-fixed")):(t("#redux-footer").css({position:"fixed",bottom:"0",width:e,right:21}),t("#redux-footer").addClass("sticky-footer-fixed"),t("#redux-sticky-padder").show()),t("#info_bar").isOnScreen()?t("#redux-sticky").removeClass("sticky-save-warn"):t("#redux-sticky").addClass("sticky-save-warn")}}(jQuery),function(c){"use strict";c.redux=c.redux||{},c.redux.tabCheck=function(){var u,e,r,t,l;c(".redux-group-tab-link-a").click(function(){var e,r,t,i,a,n,d,s,o;(u=c(this)).parent().hasClass("empty_section")&&u.parent().hasClass("hasSubSections")&&(r=(e=c(this).closest("ul").find(".redux-group-tab-link-a")).index(this),u=e.slice(r+1,r+2)),t=u.parents(".redux-container:first"),i=u.data("rel"),a=t.find(".redux-group-tab-link-li.active:first .redux-group-tab-link-a").data("rel"),l=c.redux.getOptName(t),a!==i&&(n="",u.parents(".postbox-container:first").length?(t.prev("#currentSection").val(i),""!==(d=t.data("index"))&&(n="redux_metabox_"+d+"_current_tab_"+redux.optName.args.opt_name)):(c("#currentSection").val(i),n="redux_current_tab_"+redux.optName.args.opt_name),c.cookie(n,i,{expires:7,path:"/"}),t.find("#"+i+"_section_group_li").parents(".redux-group-tab-link-li").length&&(s=(s=t.find("#"+i+"_section_group_li").parents(".redux-group-tab-link-li").attr("id").split("_"))[0]),t.find("#toplevel_page_"+redux.optName.args.slug+" .wp-submenu a.current").removeClass("current"),t.find("#toplevel_page_"+redux.optName.args.slug+" .wp-submenu li.current").removeClass("current"),t.find("#toplevel_page_"+redux.optName.args.slug+" .wp-submenu a").each(function(){var e=c(this).attr("href").split("&tab=");e[1]!==i&&e[1]!==s||(c(this).addClass("current"),c(this).parent().addClass("current"))}),t.find("#"+a+"_section_group_li").find("#"+a+"_section_group_li").length?(t.find("#"+a+"_section_group_li").addClass("activeChild"),t.find("#"+i+"_section_group_li").addClass("active").removeClass("activeChild")):t.find("#"+i+"_section_group_li").parents("#"+a+"_section_group_li").length||t.find("#"+a+"_section_group_li").parents("ul.subsection").find("#"+i+"_section_group_li").length?(t.find("#"+i+"_section_group_li").parents("#"+a+"_section_group_li").length?t.find("#"+a+"_section_group_li").addClass("activeChild").removeClass("active"):(t.find("#"+i+"_section_group_li").addClass("active"),t.find("#"+a+"_section_group_li").removeClass("active")),t.find("#"+i+"_section_group_li").removeClass("activeChild").addClass("active")):(setTimeout(function(){t.find("#"+i+"_section_group_li").addClass("active").removeClass("activeChild").find("ul.subsection").slideDown()},1),t.find("#"+a+"_section_group_li").find("ul.subsection").length?(t.find("#"+a+"_section_group_li").find("ul.subsection").slideUp("fast",function(){t.find("#"+a+"_section_group_li").removeClass("active").removeClass("activeChild")}),0<(o=t.find("#"+i+"_section_group_li").parents(".hasSubSections:first")).length&&(t.find("#"+i+"_section_group_li").removeClass("active"),i=o.find(".redux-group-tab-link-a:first").data("rel"),o.hasClass("empty_section")?(o.find(".subsection li:first").addClass("active"),t.find("#"+i+"_section_group_li").removeClass("active").addClass("activeChild").find("ul.subsection").slideDown(),o=o.find(".subsection li:first"),i=o.find(".redux-group-tab-link-a:first").data("rel")):t.find("#"+i+"_section_group_li").addClass("active").removeClass("activeChild").find("ul.subsection").slideDown())):t.find("#"+a+"_section_group_li").parents("ul.subsection").length?t.find("#"+a+"_section_group_li").parents("#"+i+"_section_group_li").length?t.find("#"+a+"_section_group_li").removeClass("active"):t.find("#"+a+"_section_group_li").parents("ul.subsection").slideUp("fast",function(){t.find("#"+a+"_section_group_li").removeClass("active"),t.find("#"+a+"_section_group_li").parents(".redux-group-tab-link-li").removeClass("active").removeClass("activeChild"),t.find("#"+i+"_section_group_li").parents(".redux-group-tab-link-li").addClass("activeChild").find("ul.subsection").slideDown(),t.find("#"+i+"_section_group_li").addClass("active")}):(t.find("#"+a+"_section_group_li").removeClass("active"),t.find("#"+i+"_section_group_li").parents(".redux-group-tab-link-li").length&&(setTimeout(function(){t.find("#"+i+"_section_group_li").parents(".redux-group-tab-link-li").addClass("activeChild").find("ul.subsection").slideDown()},50),t.find("#"+i+"_section_group_li").addClass("active")))),t.find("#"+a+"_section_group").hide(),t.find("#"+i+"_section_group").fadeIn(200,function(){0!==t.find("#redux-footer").length&&c.redux.stickyInfo(),c.redux.initFields()}),c("#toplevel_page_"+redux.optName.args.slug).find(".current").removeClass("current"))}),void 0===redux.optName.last_tab?(""!==(e=decodeURI((new RegExp("tab=(.+?)(&|$)").exec(location.search)||[""])[1]))?c.cookie("redux_current_tab_get")!==e&&(c.cookie("redux_current_tab",e,{expires:7,path:"/"}),c.cookie("redux_current_tab_get",e,{expires:7,path:"/"}),c.cookie("redux_current_tab_"+redux.optName.args.opt_name,e,{expires:7,path:"/"}),c("#"+e+"_section_group_li").click()):""!==c.cookie("redux_current_tab_get")&&c.removeCookie("redux_current_tab_get"),c(".redux-container").each(function(){var e;r=(t=c(this).parents(".postbox-container:first").length?(l=c.redux.getOptName(this),""===(e=c(this).data("index"))&&(e=0),"redux_metabox_"+e+"_current_tab_"+l):"redux_current_tab_"+(l=c(".redux-ajax-security").data("opt-name")),c(this).find("#"+c.cookie(t)+"_section_group_li_a")),null===c.cookie(t)||void 0===c.cookie(t)||0===r.length?c(this).find(".redux-group-tab-link-a:first").click():r.click()})):c("#"+redux.optName.last_tab+"_section_group_li_a").click()}}(jQuery);
redux-core/assets/js/redux/main.js CHANGED
@@ -1,6 +1,6 @@
1
- /* global redux */
2
 
3
- ( function( $ ) {
4
  'use strict';
5
 
6
  $.redux = $.redux || {};
@@ -21,17 +21,17 @@
21
  return;
22
  }
23
 
24
- win = $( window );
25
  viewport = {
26
  top: win.scrollTop()
27
  };
28
 
29
- viewport.right = viewport.left + win.width();
30
  viewport.bottom = viewport.top + win.height();
31
 
32
  bounds = this.offset();
33
 
34
- bounds.right = bounds.left + this.outerWidth();
35
  bounds.bottom = bounds.top + this.outerHeight();
36
 
37
  return ( ! ( viewport.right < bounds.left || viewport.left > bounds.right || viewport.bottom < bounds.top || viewport.top > bounds.bottom ) );
@@ -40,7 +40,7 @@
40
  $( 'fieldset.redux-container-divide' ).css( 'display', 'none' );
41
 
42
  // Weed out multiple instances of duplicate Redux instance.
43
- if ( $( 'body' ).hasClass( 'wp-customizer' ) ) {
44
  $( '.wp-full-overlay-sidebar' ).addClass( 'redux-container' );
45
  }
46
 
@@ -48,9 +48,8 @@
48
  function() {
49
  opt_name = $.redux.getOptName( this );
50
 
51
- if ( $.inArray( opt_name, tempArr ) === - 1 ) {
52
  tempArr.push( opt_name );
53
- redux.optName = window['redux_' + opt_name.replace( '-', '_' )];
54
  $.redux.checkRequired( $( this ) );
55
  $.redux.initEvents( $( this ) );
56
  }
@@ -61,7 +60,6 @@
61
  'click',
62
  function() {
63
  opt_name = $.redux.getOptName( this );
64
- redux.optName = window['redux_' + opt_name.replace( '-', '_' )];
65
  }
66
  );
67
 
@@ -107,27 +105,31 @@
107
  $.redux.getOptName = function( el ) {
108
  var metabox;
109
  var li;
110
- var optName = $( el ).parents( '.redux-wrap-div' ).data( 'opt-name' );
 
111
 
112
- // Backwards compatibility block for metaboxes
 
 
 
 
 
 
113
  if ( undefined === optName ) {
114
  metabox = $( el ).parents( '.postbox' );
115
  if ( 0 === metabox.length ) {
116
  metabox = $( el ).parents( '.redux-metabox' );
117
  }
118
- if ( $( 'body' ).hasClass( 'wp-customizer' ) ) {
119
- li = $( '.panel-meta.customize-info.redux-panel.accordion-section' );
120
- optName = li.data( 'opt-name' );
121
- } else if ( 0 !== metabox.length ) {
122
  optName = metabox.attr( 'id' ).replace( 'redux-', '' ).split( '-metabox-' )[0];
123
  if ( undefined === optName ) {
124
  optName = metabox.attr( 'class' )
125
- .replace( 'redux-metabox', '' )
126
- .replace( 'postbox', '' )
127
- .replace( 'redux-', '' )
128
- .replace( 'hide', '' )
129
- .replace( 'closed', '' )
130
- .trim();
131
  }
132
  } else {
133
  optName = $( '.redux-ajax-security' ).data( 'opt-name' );
@@ -136,6 +138,28 @@
136
  if ( undefined === optName ) {
137
  optName = $( el ).find( '.redux-form-wrapper' ).data( 'opt-name' );
138
  }
 
 
 
 
 
 
 
 
 
 
139
  return optName;
140
  };
 
 
 
 
 
 
 
 
 
 
 
 
141
  })( jQuery );
1
+ /* global redux, document */
2
 
3
+ (function( $ ) {
4
  'use strict';
5
 
6
  $.redux = $.redux || {};
21
  return;
22
  }
23
 
24
+ win = $( window );
25
  viewport = {
26
  top: win.scrollTop()
27
  };
28
 
29
+ viewport.right = viewport.left + win.width();
30
  viewport.bottom = viewport.top + win.height();
31
 
32
  bounds = this.offset();
33
 
34
+ bounds.right = bounds.left + this.outerWidth();
35
  bounds.bottom = bounds.top + this.outerHeight();
36
 
37
  return ( ! ( viewport.right < bounds.left || viewport.left > bounds.right || viewport.bottom < bounds.top || viewport.top > bounds.bottom ) );
40
  $( 'fieldset.redux-container-divide' ).css( 'display', 'none' );
41
 
42
  // Weed out multiple instances of duplicate Redux instance.
43
+ if ( redux.customizer ) {
44
  $( '.wp-full-overlay-sidebar' ).addClass( 'redux-container' );
45
  }
46
 
48
  function() {
49
  opt_name = $.redux.getOptName( this );
50
 
51
+ if ( $.inArray( opt_name, tempArr ) === -1 ) {
52
  tempArr.push( opt_name );
 
53
  $.redux.checkRequired( $( this ) );
54
  $.redux.initEvents( $( this ) );
55
  }
60
  'click',
61
  function() {
62
  opt_name = $.redux.getOptName( this );
 
63
  }
64
  );
65
 
105
  $.redux.getOptName = function( el ) {
106
  var metabox;
107
  var li;
108
+ var optName;
109
+ var item = $( el );
110
 
111
+ if ( redux.customizer ) {
112
+ optName = item.find( '.redux-customizer-opt-name' ).data( 'opt-name' );
113
+ } else {
114
+ optName = $( el ).parents( '.redux-wrap-div' ).data( 'opt-name' );
115
+ }
116
+
117
+ // Compatibility for metaboxes
118
  if ( undefined === optName ) {
119
  metabox = $( el ).parents( '.postbox' );
120
  if ( 0 === metabox.length ) {
121
  metabox = $( el ).parents( '.redux-metabox' );
122
  }
123
+ if ( 0 !== metabox.length ) {
 
 
 
124
  optName = metabox.attr( 'id' ).replace( 'redux-', '' ).split( '-metabox-' )[0];
125
  if ( undefined === optName ) {
126
  optName = metabox.attr( 'class' )
127
+ .replace( 'redux-metabox', '' )
128
+ .replace( 'postbox', '' )
129
+ .replace( 'redux-', '' )
130
+ .replace( 'hide', '' )
131
+ .replace( 'closed', '' )
132
+ .trim();
133
  }
134
  } else {
135
  optName = $( '.redux-ajax-security' ).data( 'opt-name' );
138
  if ( undefined === optName ) {
139
  optName = $( el ).find( '.redux-form-wrapper' ).data( 'opt-name' );
140
  }
141
+
142
+ // Shim, let's just get an opt_name shall we?!
143
+ if ( undefined === optName ) {
144
+ optName = redux.opt_names[0];
145
+ }
146
+
147
+ if ( undefined !== optName ) {
148
+ redux.optName = window['redux_' + optName.replace( /\-/g, '_' )];
149
+ }
150
+
151
  return optName;
152
  };
153
+
154
+ $.redux.getSelector = function( selector, fieldType ) {
155
+ if ( ! selector ) {
156
+ selector = '.redux-container-' + fieldType + ':visible';
157
+ if ( redux.customizer ) {
158
+ selector = $( document ).find( '.control-section-redux.open' ).find( selector );
159
+ } else {
160
+ selector = $( document ).find( '.redux-group-tab:visible' ).find( selector );
161
+ }
162
+ }
163
+ return selector;
164
+ };
165
  })( jQuery );
redux-core/assets/js/redux/redux-change.js CHANGED
@@ -43,12 +43,11 @@ function redux_change( variable ) {
43
 
44
  rContainer = $( variable ).parents( '.redux-container:first' );
45
 
46
- if ( $( 'body' ).hasClass( 'wp-customizer' ) ) {
47
- opt_name = $( '.panel-meta.customize-info.redux-panel.accordion-section' ).data( 'opt-name' );
48
  } else {
49
  opt_name = $.redux.getOptName( rContainer );
50
  }
51
- redux.optName = window['redux_' + opt_name.replace( '-', '_' )];
52
 
53
  $( 'body' ).trigger( 'check_dependencies', variable );
54
 
43
 
44
  rContainer = $( variable ).parents( '.redux-container:first' );
45
 
46
+ if ( redux.customizer ) {
47
+ opt_name = $( '.redux-customizer-opt-name' ).data( 'opt-name' );
48
  } else {
49
  opt_name = $.redux.getOptName( rContainer );
50
  }
 
51
 
52
  $( 'body' ).trigger( 'check_dependencies', variable );
53
 
redux-core/assets/js/redux/required.js CHANGED
@@ -47,40 +47,45 @@
47
  // It's better to do this by PHP but there is no filter in tr tag , so is not possible
48
  // we going to move each attributes we may need for folding to tr tag.
49
  $.each(
50
- redux.optName.folds,
51
- function( i, v ) {
52
- var div;
53
- var rawTable;
 
 
 
54
 
55
- var fieldset = $( '#' + redux.optName.args.opt_name + '-' + i );
56
 
57
- fieldset.parents( 'tr:first, li:first' ).addClass( 'fold' );
58
 
59
- if ( 'hide' === v ) {
60
- fieldset.parents( 'tr:first, li:first' ).addClass( 'hide' );
61
 
62
- if ( fieldset.hasClass( 'redux-container-section' ) ) {
63
- div = $( '#section-' + i );
64
 
65
- if ( div.hasClass( 'redux-section-indent-start' ) ) {
66
- $( '#section-table-' + i ).hide().addClass( 'hide' );
67
- div.hide().addClass( 'hide' );
68
- }
69
- }
70
 
71
- if ( fieldset.hasClass( 'redux-container-info' ) ) {
72
- $( '#info-' + i ).hide().addClass( 'hide' );
73
- }
74
 
75
- if ( fieldset.hasClass( 'redux-container-divide' ) ) {
76
- $( '#divide-' + i ).hide().addClass( 'hide' );
77
- }
78
 
79
- if ( fieldset.hasClass( 'redux-container-raw' ) ) {
80
- rawTable = fieldset.parents().find( 'table#' + redux.optName.args.opt_name + '-' + i );
81
- rawTable.hide().addClass( 'hide' );
 
 
82
  }
83
- }
84
  }
85
  );
86
  };
47
  // It's better to do this by PHP but there is no filter in tr tag , so is not possible
48
  // we going to move each attributes we may need for folding to tr tag.
49
  $.each(
50
+ redux.opt_names,
51
+ function( x ) {
52
+ $.each(
53
+ window['redux_' + redux.opt_names[x].replace( /\-/g, '_' )].folds,
54
+ function( i, v ) {
55
+ var div;
56
+ var rawTable;
57
 
58
+ var fieldset = $( '#' + redux.opt_names[x] + '-' + i );
59
 
60
+ fieldset.parents( 'tr:first, li:first' ).addClass( 'fold' );
61
 
62
+ if ( 'hide' === v ) {
63
+ fieldset.parents( 'tr:first, li:first' ).addClass( 'hide' );
64
 
65
+ if ( fieldset.hasClass( 'redux-container-section' ) ) {
66
+ div = $( '#section-' + i );
67
 
68
+ if ( div.hasClass( 'redux-section-indent-start' ) ) {
69
+ $( '#section-table-' + i ).hide().addClass( 'hide' );
70
+ div.hide().addClass( 'hide' );
71
+ }
72
+ }
73
 
74
+ if ( fieldset.hasClass( 'redux-container-info' ) ) {
75
+ $( '#info-' + i ).hide().addClass( 'hide' );
76
+ }
77
 
78
+ if ( fieldset.hasClass( 'redux-container-divide' ) ) {
79
+ $( '#divide-' + i ).hide().addClass( 'hide' );
80
+ }
81
 
82
+ if ( fieldset.hasClass( 'redux-container-raw' ) ) {
83
+ rawTable = fieldset.parents().find( 'table#' + redux.opt_names[x] + '-' + i );
84
+ rawTable.hide().addClass( 'hide' );
85
+ }
86
+ }
87
  }
88
+ );
89
  }
90
  );
91
  };
redux-core/assets/js/redux/tab-check.js CHANGED
@@ -36,12 +36,8 @@
36
  el = link.parents( '.redux-container:first' );
37
  relid = link.data( 'rel' ); // The group ID of interest.
38
  oldid = el.find( '.redux-group-tab-link-li.active:first .redux-group-tab-link-a' ).data( 'rel' );
39
-
40
  opt_name = $.redux.getOptName( el );
41
 
42
- // Change over redux object to correct opt_name.
43
- redux.optName = window['redux_' + opt_name.replace( '-', '_' )];
44
-
45
  if ( oldid === relid ) {
46
  return;
47
  }
36
  el = link.parents( '.redux-container:first' );
37
  relid = link.data( 'rel' ); // The group ID of interest.
38
  oldid = el.find( '.redux-group-tab-link-li.active:first .redux-group-tab-link-a' ).data( 'rel' );
 
39
  opt_name = $.redux.getOptName( el );
40
 
 
 
 
41
  if ( oldid === relid ) {
42
  return;
43
  }
redux-core/class-redux-core.php CHANGED
@@ -260,6 +260,10 @@ if ( ! class_exists( 'Redux_Core', false ) ) {
260
  // phpcs:ignore WordPress.NamingConventions.ValidHookName
261
  self::$is_plugin = apply_filters( 'redux/is_plugin', self::$is_plugin );
262
 
 
 
 
 
263
  $upload_dir = wp_upload_dir();
264
  self::$upload_dir = $upload_dir['basedir'] . '/redux/';
265
  self::$upload_url = str_replace( array( 'https://', 'http://' ), '//', $upload_dir['baseurl'] . '/redux/' );
@@ -270,8 +274,6 @@ if ( ! class_exists( 'Redux_Core', false ) ) {
270
  // phpcs:ignore WordPress.NamingConventions.ValidHookName
271
  self::$upload_url = apply_filters( 'redux/upload_url', self::$upload_url );
272
 
273
- self::$server = filter_input_array( INPUT_SERVER, $_SERVER ); // phpcs:ignore WordPress.Security.EscapeOutput
274
-
275
  }
276
 
277
  /**
@@ -326,12 +328,7 @@ if ( ! class_exists( 'Redux_Core', false ) ) {
326
  * @param string $class_name name of class.
327
  */
328
  public function register_classes( $class_name ) {
329
-
330
- if ( function_exists( 'mb_strtolower' ) && function_exists( 'mb_detect_encoding' ) ) {
331
- $class_name_test = mb_strtolower( $class_name, mb_detect_encoding( $class_name ) );
332
- } else {
333
- $class_name_test = strtolower( $class_name );
334
- }
335
 
336
  if ( strpos( $class_name_test, 'redux' ) === false ) {
337
  return;
@@ -446,6 +443,21 @@ if ( ! class_exists( 'Redux_Core', false ) ) {
446
  // Buh bye!
447
  return false;
448
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
449
  }
450
 
451
  /*
260
  // phpcs:ignore WordPress.NamingConventions.ValidHookName
261
  self::$is_plugin = apply_filters( 'redux/is_plugin', self::$is_plugin );
262
 
263
+ if ( ! function_exists( 'current_time' ) ) {
264
+ require_once ABSPATH . '/wp-includes/functions.php';
265
+ }
266
+
267
  $upload_dir = wp_upload_dir();
268
  self::$upload_dir = $upload_dir['basedir'] . '/redux/';
269
  self::$upload_url = str_replace( array( 'https://', 'http://' ), '//', $upload_dir['baseurl'] . '/redux/' );
274
  // phpcs:ignore WordPress.NamingConventions.ValidHookName
275
  self::$upload_url = apply_filters( 'redux/upload_url', self::$upload_url );
276
 
 
 
277
  }
278
 
279
  /**
328
  * @param string $class_name name of class.
329
  */
330
  public function register_classes( $class_name ) {
331
+ $class_name_test = Redux_Core::strtolower( $class_name );
 
 
 
 
 
332
 
333
  if ( strpos( $class_name_test, 'redux' ) === false ) {
334
  return;
443
  // Buh bye!
444
  return false;
445
  }
446
+
447
+ /**
448
+ * Helper method to check for mb_strtolower or to use the standard strtolower.
449
+ *
450
+ * @param string $str String to make lowercase.
451
+ *
452
+ * @return string
453
+ */
454
+ public static function strtolower( $str ) {
455
+ if ( function_exists( 'mb_strtolower' ) && function_exists( 'mb_detect_encoding' ) ) {
456
+ return mb_strtolower( $str, mb_detect_encoding( $str ) );
457
+ } else {
458
+ return strtolower( $str );
459
+ }
460
+ }
461
  }
462
 
463
  /*
redux-core/framework.php CHANGED
@@ -23,8 +23,9 @@ defined( 'ABSPATH' ) || exit;
23
 
24
  require_once dirname( __FILE__ ) . '/class-redux-core.php';
25
 
26
- Redux_Core::$version = '4.1.13';
27
  Redux_Core::$redux_path = dirname( __FILE__ );
 
28
  Redux_Core::instance();
29
 
30
  // Don't duplicate me!
23
 
24
  require_once dirname( __FILE__ ) . '/class-redux-core.php';
25
 
26
+ Redux_Core::$version = '4.1.14';
27
  Redux_Core::$redux_path = dirname( __FILE__ );
28
+ Redux_Core::$server = filter_input_array( INPUT_SERVER, $_SERVER ); // phpcs:ignore WordPress.Security.EscapeOutput
29
  Redux_Core::instance();
30
 
31
  // Don't duplicate me!
redux-core/inc/classes/class-redux-ajax-save.php CHANGED
@@ -131,7 +131,7 @@ if ( ! class_exists( 'Redux_AJAX_Save', false ) ) {
131
  try {
132
 
133
  // phpcs:ignore WordPress.NamingConventions.ValidVariableName
134
- $compiler_css = $core->compilerCSS; // I fucking hate backward compatibility sometimes. >:(.
135
 
136
  /**
137
  * Action 'redux/options/{opt_name}/compiler'
131
  try {
132
 
133
  // phpcs:ignore WordPress.NamingConventions.ValidVariableName
134
+ $compiler_css = $core->compilerCSS; // Backward compatibility variable.
135
 
136
  /**
137
  * Action 'redux/options/{opt_name}/compiler'
redux-core/inc/classes/class-redux-ajax-select2.php CHANGED
@@ -45,36 +45,42 @@ if ( ! class_exists( 'Redux_AJAX_Select2', false ) ) {
45
  if ( isset( $_REQUEST['data'] ) ) {
46
 
47
  $args = isset( $_REQUEST['data_args'] ) ? json_decode( sanitize_text_field( wp_unslash( $_REQUEST['data_args'] ) ), true ) : array();
48
- $args = wp_parse_args( $args, array( 'ajax' => true ) );
 
 
 
 
 
 
 
 
49
 
50
  $return = $core->wordpress_data->get( sanitize_text_field( wp_unslash( $_REQUEST['data'] ) ), $args );
51
 
52
  if ( is_array( $return ) && ! empty( $_REQUEST['action'] ) ) {
53
- if ( isset( $_REQUEST['q'] ) ) {
54
- $criteria = sanitize_text_field( wp_unslash( $_REQUEST['q'] ) );
55
-
56
  $keys = array_keys( $return );
57
  $values = array_values( $return );
58
 
59
  $to_json = array();
60
 
61
  // Search all the values.
62
- $search_values = preg_grep( '~' . $criteria . '~i', $values );
63
  if ( ! empty( $search_values ) ) {
64
  foreach ( $search_values as $id => $val ) {
65
  $to_json[ $keys[ $id ] ] = array(
66
  'id' => $keys[ $id ],
67
- 'text' => $val . ' [' . $keys[ $id ] . ']',
68
  );
69
  }
70
  }
71
  // Search all the keys.
72
- $search_keys = preg_grep( '~' . $criteria . '~i', $keys );
73
  if ( ! empty( $search_keys ) ) {
74
  foreach ( $search_keys as $id => $val ) {
75
  $to_json[ $val ] = array(
76
  'id' => $val,
77
- 'text' => $values[ $id ] . ' [' . $val . ']',
78
  );
79
  }
80
  }
45
  if ( isset( $_REQUEST['data'] ) ) {
46
 
47
  $args = isset( $_REQUEST['data_args'] ) ? json_decode( sanitize_text_field( wp_unslash( $_REQUEST['data_args'] ) ), true ) : array();
48
+ $args = wp_parse_args( $args, array(
49
+ 's' => isset( $_REQUEST['q'] ) && ! empty( $_REQUEST['q'] ) ? sanitize_text_field( wp_unslash( $_REQUEST['q'] ) ) : ''
50
+ ) );
51
+
52
+ $criteria = '';
53
+ if ( isset( $_REQUEST['q'] ) && ! empty( $_REQUEST['q'] ) ) {
54
+ $criteria = sanitize_text_field( wp_unslash( $_REQUEST['q'] ) );
55
+ $args['s'] = $criteria;
56
+ }
57
 
58
  $return = $core->wordpress_data->get( sanitize_text_field( wp_unslash( $_REQUEST['data'] ) ), $args );
59
 
60
  if ( is_array( $return ) && ! empty( $_REQUEST['action'] ) ) {
61
+ if ( ! empty( $args['s'] ) ) {
 
 
62
  $keys = array_keys( $return );
63
  $values = array_values( $return );
64
 
65
  $to_json = array();
66
 
67
  // Search all the values.
68
+ $search_values = preg_grep( '~' . $args['s'] . '~i', $values );
69
  if ( ! empty( $search_values ) ) {
70
  foreach ( $search_values as $id => $val ) {
71
  $to_json[ $keys[ $id ] ] = array(
72
  'id' => $keys[ $id ],
73
+ 'text' => $val,
74
  );
75
  }
76
  }
77
  // Search all the keys.
78
+ $search_keys = preg_grep( '~' . $args['s'] . '~i', $keys );
79
  if ( ! empty( $search_keys ) ) {
80
  foreach ( $search_keys as $id => $val ) {
81
  $to_json[ $val ] = array(
82
  'id' => $val,
83
+ 'text' => $values[ $id ],
84
  );
85
  }
86
  }
redux-core/inc/classes/class-redux-api.php CHANGED
@@ -516,7 +516,7 @@ if ( ! class_exists( 'Redux', false ) ) {
516
 
517
  if ( ! empty( $opt_name ) && ! empty( $id ) ) {
518
  if ( ! isset( self::$sections[ $opt_name ][ $id ] ) ) {
519
- $id = Redux_Helpers::strtolower( sanitize_html_class( $id ) );
520
  }
521
 
522
  return isset( self::$sections[ $opt_name ][ $id ] ) ? self::$sections[ $opt_name ][ $id ] : false;
@@ -686,7 +686,7 @@ if ( ! class_exists( 'Redux', false ) ) {
686
  $section['id'] = time();
687
  } else {
688
  if ( isset( $section['title'] ) ) {
689
- $section['id'] = Redux_Helpers::strtolower( sanitize_title( $section['title'] ) );
690
  } else {
691
  $section['id'] = time();
692
  }
516
 
517
  if ( ! empty( $opt_name ) && ! empty( $id ) ) {
518
  if ( ! isset( self::$sections[ $opt_name ][ $id ] ) ) {
519
+ $id = Redux_Core::strtolower( sanitize_html_class( $id ) );
520
  }
521
 
522
  return isset( self::$sections[ $opt_name ][ $id ] ) ? self::$sections[ $opt_name ][ $id ] : false;
686
  $section['id'] = time();
687
  } else {
688
  if ( isset( $section['title'] ) ) {
689
+ $section['id'] = Redux_Core::strtolower( sanitize_title( $section['title'] ) );
690
  } else {
691
  $section['id'] = time();
692
  }
redux-core/inc/classes/class-redux-args.php CHANGED
@@ -128,6 +128,24 @@ if ( ! class_exists( 'Redux_Args', false ) ) {
128
  ),
129
  ),
130
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
131
  'show_import_export' => true,
132
  'show_options_object' => true,
133
  'dev_mode' => true,
@@ -309,7 +327,7 @@ if ( ! class_exists( 'Redux_Args', false ) ) {
309
  foreach ( $args['admin_bar_links'] as $idx => $arr ) {
310
  if ( is_array( $arr ) && ! empty( $arr ) ) {
311
  foreach ( $arr as $x => $y ) {
312
- if ( strpos( Redux_Helpers::strtolower( $y ), 'redux' ) !== false ) {
313
  $msg = '<strong>' . esc_html__(
314
  'Redux Framework Notice',
315
  'redux-framework'
@@ -333,7 +351,7 @@ if ( ! class_exists( 'Redux_Args', false ) ) {
333
  foreach ( $args['share_icons'] as $idx => $arr ) {
334
  if ( is_array( $arr ) && ! empty( $arr ) ) {
335
  foreach ( $arr as $x => $y ) {
336
- if ( strpos( Redux_Helpers::strtolower( $y ), 'redux' ) !== false ) {
337
  $msg = '<strong>' . esc_html__(
338
  'Redux Framework Notice:',
339
  'redux-framework'
128
  ),
129
  ),
130
  ),
131
+ 'font_weights' => array(
132
+ array(
133
+ 'id' => '400',
134
+ 'name' => __( 'Regular 400', 'redux-framework' ),
135
+ ),
136
+ array(
137
+ 'id' => '400italic',
138
+ 'name' => __( 'Regular 400 Italic', 'redux-framework' ),
139
+ ),
140
+ array(
141
+ 'id' => '700',
142
+ 'name' => __( 'Bold 700', 'redux-framework' ),
143
+ ),
144
+ array(
145
+ 'id' => '700italic',
146
+ 'name' => __( 'Bold 700 Italic', 'redux-framework' ),
147
+ ),
148
+ ),
149
  'show_import_export' => true,
150
  'show_options_object' => true,
151
  'dev_mode' => true,
327
  foreach ( $args['admin_bar_links'] as $idx => $arr ) {
328
  if ( is_array( $arr ) && ! empty( $arr ) ) {
329
  foreach ( $arr as $x => $y ) {
330
+ if ( strpos( Redux_Core::strtolower( $y ), 'redux' ) !== false ) {
331
  $msg = '<strong>' . esc_html__(
332
  'Redux Framework Notice',
333
  'redux-framework'
351
  foreach ( $args['share_icons'] as $idx => $arr ) {
352
  if ( is_array( $arr ) && ! empty( $arr ) ) {
353
  foreach ( $arr as $x => $y ) {
354
+ if ( strpos( Redux_Core::strtolower( $y ), 'redux' ) !== false ) {
355
  $msg = '<strong>' . esc_html__(
356
  'Redux Framework Notice:',
357
  'redux-framework'
redux-core/inc/classes/class-redux-connection-banner.php CHANGED
@@ -53,8 +53,8 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
53
  * the admin_init action fires, we know that the admin is initialized at this point.
54
  */
55
  private function __construct() {
56
- add_action( 'current_screen', array( $this, 'maybe_initialize_hooks' ) );
57
  add_action( 'wp_ajax_redux_activation', array( $this, 'admin_ajax' ) ); // executed when logged in
 
58
  }
59
 
60
  public function admin_ajax() {
@@ -63,7 +63,7 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
63
  die( __( 'Security check failed.', 'redux-framework' ) );
64
  }
65
  if ( 'true' === $_REQUEST['activate'] ) {
66
- Redux_Functions_Ex::set_activated();
67
  } else {
68
  Redux_Functions_Ex::set_deactivated();
69
  update_option( 'redux-framework_tracking_notice', 'hide' );
@@ -107,15 +107,18 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
107
  return;
108
  }
109
 
110
- add_action( 'admin_notices', array( $this, 'render_banner' ) );
111
- add_action( 'network_admin_notices', array( $this, 'network_connect_notice' ) );
112
- add_action( 'admin_head', array( $this, 'admin_head' ) );
113
- add_filter( 'admin_body_class', array( $this, 'admin_body_class' ), 20 );
 
 
114
 
115
- // Only fires immediately after plugin activation
116
- if ( get_transient( 'activated_Redux' ) ) {
117
- add_action( 'admin_notices', array( $this, 'render_connect_prompt_full_screen' ) );
118
- delete_transient( 'activated_Redux' );
 
119
  }
120
  }
121
 
@@ -202,7 +205,6 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
202
 
203
  $notice .= '<p class="description" style="display:none;">' . self::tos_blurb( 'option_panel' ) . ' </p>';
204
 
205
-
206
  echo '<div class="updated" id="redux-connect-message" data-nonce="' . wp_create_nonce( 'redux-panel-admin-notice' ) . '" style="border-left-color: #24b0a6;"><p>';
207
  echo $notice;
208
  echo '</p><p class="submit">';
@@ -211,8 +213,7 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
211
  echo '</p></div>';
212
  echo '<style type="text/css">.wp-core-ui .button-primary.redux-activate-connection{background: #24b0a6;}.wp-core-ui .button-primary.redux-activate-connection:hover{background: #19837c;}</style>';
213
 
214
- echo "
215
- ";
216
 
217
  }
218
 
@@ -334,6 +335,7 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
334
  </div>
335
  </div>
336
  </div>
 
337
  <?php
338
  }
339
 
@@ -457,6 +459,7 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
457
  </h2>
458
  </div>
459
  </div>
 
460
  <?php
461
  }
462
 
53
  * the admin_init action fires, we know that the admin is initialized at this point.
54
  */
55
  private function __construct() {
 
56
  add_action( 'wp_ajax_redux_activation', array( $this, 'admin_ajax' ) ); // executed when logged in
57
+ add_action( 'current_screen', array( $this, 'maybe_initialize_hooks' ) );
58
  }
59
 
60
  public function admin_ajax() {
63
  die( __( 'Security check failed.', 'redux-framework' ) );
64
  }
65
  if ( 'true' === $_REQUEST['activate'] ) {
66
+ Redux_Functions_Ex::set_activated( $_REQUEST['activate'] );
67
  } else {
68
  Redux_Functions_Ex::set_deactivated();
69
  update_option( 'redux-framework_tracking_notice', 'hide' );
107
  return;
108
  }
109
 
110
+ // Only show this notice when the plugin is installed.
111
+ if ( class_exists( 'Redux_Framework_Plugin' ) && false === Redux_Framework_Plugin::$crash ) {
112
+ add_action( 'admin_notices', array( $this, 'render_banner' ) );
113
+ add_action( 'network_admin_notices', array( $this, 'network_connect_notice' ) );
114
+ add_action( 'admin_head', array( $this, 'admin_head' ) );
115
+ add_filter( 'admin_body_class', array( $this, 'admin_body_class' ), 20 );
116
 
117
+ // Only fires immediately after plugin activation
118
+ if ( get_transient( 'activated_Redux' ) ) {
119
+ add_action( 'admin_notices', array( $this, 'render_connect_prompt_full_screen' ) );
120
+ delete_transient( 'activated_Redux' );
121
+ }
122
  }
123
  }
124
 
205
 
206
  $notice .= '<p class="description" style="display:none;">' . self::tos_blurb( 'option_panel' ) . ' </p>';
207
 
 
208
  echo '<div class="updated" id="redux-connect-message" data-nonce="' . wp_create_nonce( 'redux-panel-admin-notice' ) . '" style="border-left-color: #24b0a6;"><p>';
209
  echo $notice;
210
  echo '</p><p class="submit">';
213
  echo '</p></div>';
214
  echo '<style type="text/css">.wp-core-ui .button-primary.redux-activate-connection{background: #24b0a6;}.wp-core-ui .button-primary.redux-activate-connection:hover{background: #19837c;}</style>';
215
 
216
+ echo "<noscript><style type='text/css'>#redux-connect-message{display:none;}</style></noscript>";
 
217
 
218
  }
219
 
335
  </div>
336
  </div>
337
  </div>
338
+ <noscript><style type='text/css'>#redux-connect-message{display:none;}</style></noscript>
339
  <?php
340
  }
341
 
459
  </h2>
460
  </div>
461
  </div>
462
+ <noscript><style type='text/css'>#message{display:none;}</style></noscript>
463
  <?php
464
  }
465
 
redux-core/inc/classes/class-redux-descriptor.php CHANGED
@@ -77,7 +77,7 @@ class Redux_Descriptor {
77
  } catch ( ReflectionException $e ) {
78
  die ( $e->getMessage() ); // phpcs:ignore
79
  }
80
- $this->field_type = Redux_Helpers::strtolower( Redux_Helpers::remove_prefix( $this->reflection_class->getShortName(), 'Redux_' ) );
81
  $this->name = ucfirst( $this->field_type );
82
  }
83
 
77
  } catch ( ReflectionException $e ) {
78
  die ( $e->getMessage() ); // phpcs:ignore
79
  }
80
+ $this->field_type = Redux_Core::strtolower( Redux_Helpers::remove_prefix( $this->reflection_class->getShortName(), 'Redux_' ) );
81
  $this->name = ucfirst( $this->field_type );
82
  }
83
 
redux-core/inc/classes/class-redux-enqueue.php CHANGED
@@ -567,8 +567,15 @@ if ( ! class_exists( 'Redux_Enqueue', false ) ) {
567
  $this->localize_data['core_instance'] = $core->core_instance;
568
  $this->localize_data['core_thread'] = $core->core_thread;
569
 
570
- $this->localize_data['required'] = $core->required;
571
- $this->repeater_data['fonts'] = $core->fonts;
 
 
 
 
 
 
 
572
  $this->localize_data['required_child'] = $core->required_child;
573
  $this->localize_data['fields'] = $core->fields;
574
 
567
  $this->localize_data['core_instance'] = $core->core_instance;
568
  $this->localize_data['core_thread'] = $core->core_thread;
569
 
570
+ $this->localize_data['font_weights'] = $this->args['font_weights'];
571
+
572
+ $this->localize_data['required'] = $core->required;
573
+ $this->repeater_data['fonts'] = $core->fonts;
574
+ if ( ! isset( $this->repeater_data['opt_names'] ) ) {
575
+ $this->repeater_data['opt_names'] = array();
576
+ }
577
+ $this->repeater_data['opt_names'][] = $core->args['opt_name'];
578
+ $this->repeater_data['folds'] = array();
579
  $this->localize_data['required_child'] = $core->required_child;
580
  $this->localize_data['fields'] = $core->fields;
581
 
redux-core/inc/classes/class-redux-filesystem.php CHANGED
@@ -613,9 +613,14 @@ if ( ! class_exists( 'Redux_Filesystem', false ) ) {
613
  * @return string
614
  */
615
  public function get_local_file_contents( $abs_path ) {
616
- ob_start();
617
- require_once $abs_path;
618
- $contents = ob_get_clean();
 
 
 
 
 
619
 
620
  return $contents;
621
  }
@@ -627,12 +632,13 @@ if ( ! class_exists( 'Redux_Filesystem', false ) ) {
627
  * @return string
628
  */
629
  public function get_contents( $abs_path ) {
630
- // phpcs:ignore WordPress.PHP.NoSilencedErrors
631
- $return = $this->get_local_file_contents( $abs_path );
632
-
633
- if ( ! $return && $this->use_filesystem ) {
634
- $abs_path = $this->get_sanitized_path( $abs_path );
635
- $return = $this->wp_filesystem->get_contents( $abs_path );
 
636
  }
637
 
638
  return $return;
613
  * @return string
614
  */
615
  public function get_local_file_contents( $abs_path ) {
616
+ try {
617
+ ob_start();
618
+ require_once $abs_path;
619
+ $contents = ob_get_clean();
620
+ } catch ( Exception $e ) {
621
+ // This means that ob_start has been disabled on the system. Let's fallback to good old file_get_contents.
622
+ $contents = file_get_contents( $abs_path ); // phpcs:ignore WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents
623
+ }
624
 
625
  return $contents;
626
  }
632
  * @return string
633
  */
634
  public function get_contents( $abs_path ) {
635
+ $abs_path = $this->get_sanitized_path( $abs_path );
636
+ $return = '';
637
+ if ( $this->use_filesystem ) {
638
+ $return = $this->wp_filesystem->get_contents( $abs_path );
639
+ }
640
+ if ( empty( $return ) ) {
641
+ $return = $this->get_local_file_contents( $abs_path );
642
  }
643
 
644
  return $return;
redux-core/inc/classes/class-redux-functions-ex.php CHANGED
@@ -166,6 +166,25 @@ if ( ! class_exists( 'Redux_Functions_Ex', false ) ) {
166
  echo '<meta name="framework" content="Redux ' . esc_html( Redux_Core::$version ) . '" />';
167
  }
168
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
169
  /**
170
  * Is Redux embedded inside a plugin.
171
  *
@@ -181,14 +200,13 @@ if ( ! class_exists( 'Redux_Functions_Ex', false ) ) {
181
  $slug = explode( '/', $plugin_basename );
182
  $slug = $slug[0];
183
 
184
- $data = array(
185
  'slug' => $slug,
186
  'basename' => $plugin_basename,
187
- 'path' => self::wp_normalize_path( $file ),
188
- 'url' => plugins_url( $plugin_basename ),
189
  'real_path' => self::wp_normalize_path( dirname( realpath( $file ) ) ),
190
  );
191
- $data['realpath'] = $data['real_path']; // Shim for old extensions.
192
 
193
  return $data;
194
  }
@@ -236,7 +254,7 @@ if ( ! class_exists( 'Redux_Functions_Ex', false ) ) {
236
  'slug' => $slug,
237
  'path' => trailingslashit( trailingslashit( $theme_path ) . $relative_path ) . $filename,
238
  'real_path' => trailingslashit( trailingslashit( $real_path ) . $relative_path ) . $filename,
239
- 'url' => trailingslashit( trailingslashit( $url ) . $relative_path ) . $filename,
240
  'basename' => trailingslashit( $slug ) . trailingslashit( $relative_path ) . $filename,
241
  );
242
  $data['realpath'] = $data['real_path']; // Shim for old extensions.
@@ -394,5 +412,32 @@ if ( ! class_exists( 'Redux_Functions_Ex', false ) ) {
394
  spl_autoload_register( array( $loader, 'load' ) );
395
  }
396
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
397
  }
398
  }
166
  echo '<meta name="framework" content="Redux ' . esc_html( Redux_Core::$version ) . '" />';
167
  }
168
 
169
+ /**
170
+ * Run URL through a ssl check.
171
+ *
172
+ * @param string $url URL to check.
173
+ *
174
+ * @return string
175
+ */
176
+ public static function verify_url_protocol( $url ) {
177
+ // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotValidated
178
+ $protocol = ! empty( $_SERVER['HTTPS'] ) && 'off' !== $_SERVER['HTTPS'] || ( ! empty( $_SERVER['SERVER_PORT'] ) && 443 === $_SERVER['SERVER_PORT'] ) ? 'https://' : 'http://';
179
+ if ( isset( $_SERVER['HTTP_X_FORWARDED_PROTO'] ) && ! empty( $_SERVER['HTTP_X_FORWARDED_PROTO'] ) ) { // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotValidated
180
+ $new_protocol = sanitize_text_field( wp_unslash( $_SERVER['HTTP_X_FORWARDED_PROTO'] ) ) . '://'; // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotValidated
181
+ if ( 'http://' === $protocol && $new_protocol !== $protocol && false === strpos( $url, $new_protocol ) ) {
182
+ $url = str_replace( $protocol, $new_protocol, $url );
183
+ }
184
+ }
185
+ return $url;
186
+ }
187
+
188
  /**
189
  * Is Redux embedded inside a plugin.
190
  *
200
  $slug = explode( '/', $plugin_basename );
201
  $slug = $slug[0];
202
 
203
+ $data = array(
204
  'slug' => $slug,
205
  'basename' => $plugin_basename,
206
+ 'path' => $file,
207
+ 'url' => self::verify_url_protocol( plugins_url( $plugin_basename ) ),
208
  'real_path' => self::wp_normalize_path( dirname( realpath( $file ) ) ),
209
  );
 
210
 
211
  return $data;
212
  }
254
  'slug' => $slug,
255
  'path' => trailingslashit( trailingslashit( $theme_path ) . $relative_path ) . $filename,
256
  'real_path' => trailingslashit( trailingslashit( $real_path ) . $relative_path ) . $filename,
257
+ 'url' => self::verify_url_protocol( trailingslashit( trailingslashit( $url ) . $relative_path ) . $filename ),
258
  'basename' => trailingslashit( $slug ) . trailingslashit( $relative_path ) . $filename,
259
  );
260
  $data['realpath'] = $data['real_path']; // Shim for old extensions.
412
  spl_autoload_register( array( $loader, 'load' ) );
413
  }
414
 
415
+ /**
416
+ * Check if a string starts with a string.
417
+ *
418
+ * @param string $haystack Full string.
419
+ * @param string $needle String to check if it starts with.
420
+ * @return string
421
+ */
422
+ public static function string_starts_with( $haystack, $needle ) {
423
+ $length = strlen( $needle );
424
+ return substr( $haystack, 0, $length ) === $needle;
425
+ }
426
+
427
+ /**
428
+ * Check if a string ends with a string.
429
+ *
430
+ * @param string $haystack Full string.
431
+ * @param string $needle String to check if it starts with.
432
+ * @return string
433
+ */
434
+ public static function string_ends_with( $haystack, $needle ) {
435
+ $length = strlen( $needle );
436
+ if( !$length ) {
437
+ return true;
438
+ }
439
+ return substr( $haystack, -$length ) === $needle;
440
+ }
441
+
442
  }
443
  }
redux-core/inc/classes/class-redux-functions.php CHANGED
@@ -515,7 +515,7 @@ if ( ! class_exists( 'Redux_Functions', false ) ) {
515
  $result = preg_replace_callback(
516
  '/[A-Z]/',
517
  function ( $matches ) {
518
- return '-' . Redux_Helpers::strtolower( $matches[0] );
519
  },
520
  $keys
521
  );
515
  $result = preg_replace_callback(
516
  '/[A-Z]/',
517
  function ( $matches ) {
518
+ return '-' . Redux_Core::strtolower( $matches[0] );
519
  },
520
  $keys
521
  );
redux-core/inc/classes/class-redux-helpers.php CHANGED
@@ -412,7 +412,7 @@ if ( ! class_exists( 'Redux_Helpers', false ) ) {
412
  }
413
  if ( false !== strpos( $part, '/' ) ) {
414
  $chunk = explode( '/', $part );
415
- $software[ Redux_Helpers::strtolower( $chunk[0] ) ] = $chunk[1];
416
  }
417
  }
418
  $data['server'] = Redux_Core::$server['SERVER_SOFTWARE'];
@@ -704,7 +704,10 @@ if ( ! class_exists( 'Redux_Helpers', false ) ) {
704
  * @return string
705
  */
706
  public static function get_hash() {
707
- return md5( network_site_url() . '-' . Redux_Core::$server['REMOTE_ADDR'] );
 
 
 
708
  }
709
 
710
  /**
@@ -1945,20 +1948,5 @@ if ( ! class_exists( 'Redux_Helpers', false ) ) {
1945
 
1946
  die();
1947
  }
1948
-
1949
- /**
1950
- * Helper method to check for mb_strtolower or to use the standard strtolower.
1951
- *
1952
- * @param string $str String to make lowercase.
1953
- *
1954
- * @return string
1955
- */
1956
- public static function strtolower( $str ) {
1957
- if ( function_exists( 'mb_strtolower' ) && function_exists( 'mb_detect_encoding' ) ) {
1958
- return mb_strtolower( $str, mb_detect_encoding( $str ) );
1959
- } else {
1960
- return strtolower( $str );
1961
- }
1962
- }
1963
  }
1964
  }
412
  }
413
  if ( false !== strpos( $part, '/' ) ) {
414
  $chunk = explode( '/', $part );
415
+ $software[ Redux_Core::strtolower( $chunk[0] ) ] = $chunk[1];
416
  }
417
  }
418
  $data['server'] = Redux_Core::$server['SERVER_SOFTWARE'];
704
  * @return string
705
  */
706
  public static function get_hash() {
707
+ $remote_addr = isset( Redux_Core::$server['REMOTE_ADDR'] )
708
+ ? Redux_Core::$server['REMOTE_ADDR']
709
+ : '127.0.0.1';
710
+ return md5( network_site_url() . '-' . $remote_addr );
711
  }
712
 
713
  /**
1948
 
1949
  die();
1950
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1951
  }
1952
  }
redux-core/inc/classes/class-redux-options-constructor.php CHANGED
@@ -833,6 +833,10 @@ if ( ! class_exists( 'Redux_Options_Object', false ) ) {
833
  // Section reset to defaults.
834
  if ( ! empty( $plugin_options['defaults-section'] ) ) {
835
  if ( isset( $plugin_options['redux-section'] ) && isset( $core->sections[ $plugin_options['redux-section'] ]['fields'] ) ) {
 
 
 
 
836
  foreach ( $core->sections[ $plugin_options['redux-section'] ]['fields'] as $field ) {
837
  if ( isset( $core->options_defaults[ $field['id'] ] ) ) {
838
  $plugin_options[ $field['id'] ] = $core->options_defaults[ $field['id'] ];
833
  // Section reset to defaults.
834
  if ( ! empty( $plugin_options['defaults-section'] ) ) {
835
  if ( isset( $plugin_options['redux-section'] ) && isset( $core->sections[ $plugin_options['redux-section'] ]['fields'] ) ) {
836
+ if ( empty( $core->options_defaults ) ) {
837
+ $core->options_defaults = $core->_default_values();
838
+ }
839
+
840
  foreach ( $core->sections[ $plugin_options['redux-section'] ]['fields'] as $field ) {
841
  if ( isset( $core->options_defaults[ $field['id'] ] ) ) {
842
  $plugin_options[ $field['id'] ] = $core->options_defaults[ $field['id'] ];
redux-core/inc/classes/class-redux-options-defaults.php CHANGED
@@ -43,9 +43,17 @@ if ( ! class_exists( 'Redux_Options_Defaults', false ) ) {
43
  // We want it to be clean each time this is run.
44
  $this->options_defaults = array();
45
 
 
 
 
 
 
 
 
 
46
  if ( ! is_null( $sections ) ) {
47
 
48
- // fill the cache.
49
  foreach ( $sections as $sk => $section ) {
50
  if ( ! isset( $section['id'] ) ) {
51
  if ( ! is_numeric( $sk ) || ! isset( $section['title'] ) ) {
@@ -79,7 +87,7 @@ if ( ! class_exists( 'Redux_Options_Defaults', false ) ) {
79
  * @param object $wp_data_class WordPress data class.
80
  */
81
  public function field_default_values( $opt_name = '', $field, $wp_data_class = null ) {
82
- if ( null === $wp_data_class && class_exists( 'Redux_WordPress_Data' ) ) {
83
  $wp_data_class = new Redux_WordPress_Data( $opt_name );
84
  }
85
 
@@ -91,12 +99,10 @@ if ( ! class_exists( 'Redux_Options_Defaults', false ) ) {
91
  }
92
 
93
  if ( isset( $field['default'] ) ) {
94
-
95
  // phpcs:ignore WordPress.NamingConventions.ValidHookName
96
  $this->options_defaults[ $field['id'] ] = apply_filters( "redux/{$opt_name}/field/{$field['type']}/defaults", $field['default'], $field );
97
- } elseif ( ( 'ace_editor' !== $field['type'] ) ) {
98
- // Sorter data filter.
99
- if ( isset( $field['data'] ) && ! empty( $field['data'] ) ) {
100
  if ( ! isset( $field['args'] ) ) {
101
  $field['args'] = array();
102
  }
43
  // We want it to be clean each time this is run.
44
  $this->options_defaults = array();
45
 
46
+ // Check to make sure we're not in the select2 action, we don't want to fetch any there.
47
+ if ( isset( $_REQUEST['action'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
48
+ $action = sanitize_text_field( wp_unslash( $_REQUEST['action'] ) ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
49
+ if ( Redux_Functions_Ex::string_ends_with( $action, '_select2' ) && Redux_Functions_Ex::string_starts_with( $action, 'redux_' ) ) {
50
+ return;
51
+ }
52
+ }
53
+
54
  if ( ! is_null( $sections ) ) {
55
 
56
+ // Fill the cache.
57
  foreach ( $sections as $sk => $section ) {
58
  if ( ! isset( $section['id'] ) ) {
59
  if ( ! is_numeric( $sk ) || ! isset( $section['title'] ) ) {
87
  * @param object $wp_data_class WordPress data class.
88
  */
89
  public function field_default_values( $opt_name = '', $field, $wp_data_class = null ) {
90
+ if ( null === $wp_data_class && class_exists( 'Redux_WordPress_Data' ) && ! ( 'select' === $field['type'] && isset( $field['ajax'] ) && $field['ajax'] ) ) {
91
  $wp_data_class = new Redux_WordPress_Data( $opt_name );
92
  }
93
 
99
  }
100
 
101
  if ( isset( $field['default'] ) ) {
 
102
  // phpcs:ignore WordPress.NamingConventions.ValidHookName
103
  $this->options_defaults[ $field['id'] ] = apply_filters( "redux/{$opt_name}/field/{$field['type']}/defaults", $field['default'], $field );
104
+ } elseif ( ( 'ace_editor' !== $field['type'] ) && ! ( 'select' === $field['type'] && ! empty( $field['ajax'] ) ) ) {
105
+ if ( isset( $field['data'] ) && empty( $field['data'] ) ) {
 
106
  if ( ! isset( $field['args'] ) ) {
107
  $field['args'] = array();
108
  }
redux-core/inc/classes/class-redux-page-render.php CHANGED
@@ -189,7 +189,7 @@ if ( ! class_exists( 'Redux_Page_Render', false ) ) {
189
 
190
  // Construct message.
191
  // translators: %1$s: Mousr action. %2$s: Hint status.
192
- $msg = sprintf( esc_html__( 'Hints are tooltips that popup when %1$s the hint icon, offering addition information about the field in which they appear. They can be %2$s by using the link below.', 'redux-framework' ), $event, Redux_Helpers::strtolower( $s ) ) . '<br/><br/>' . $url;
193
 
194
  // Construct hint tab.
195
  $tab = array(
@@ -243,7 +243,7 @@ if ( ! class_exists( 'Redux_Page_Render', false ) ) {
243
  $page_slug = $core->args['page_slug'];
244
 
245
  // Just in case. One never knows.
246
- $page_parent = Redux_Helpers::strtolower( $page_parent );
247
 
248
  $test = array(
249
  'index.php' => 'dashboard',
189
 
190
  // Construct message.
191
  // translators: %1$s: Mousr action. %2$s: Hint status.
192
+ $msg = sprintf( esc_html__( 'Hints are tooltips that popup when %1$s the hint icon, offering addition information about the field in which they appear. They can be %2$s by using the link below.', 'redux-framework' ), $event, Redux_Core::strtolower( $s ) ) . '<br/><br/>' . $url;
193
 
194
  // Construct hint tab.
195
  $tab = array(
243
  $page_slug = $core->args['page_slug'];
244
 
245
  // Just in case. One never knows.
246
+ $page_parent = Redux_Core::strtolower( $page_parent );
247
 
248
  $test = array(
249
  'index.php' => 'dashboard',
redux-core/inc/classes/class-redux-rest-api-builder.php CHANGED
@@ -56,6 +56,7 @@ class Redux_Rest_Api_Builder {
56
  array(
57
  'methods' => WP_REST_Server::READABLE,
58
  'callback' => array( $this, 'list_fields' ),
 
59
  )
60
  );
61
  register_rest_route(
@@ -70,6 +71,7 @@ class Redux_Rest_Api_Builder {
70
  ),
71
  'methods' => WP_REST_Server::READABLE,
72
  'callback' => array( $this, 'get_field' ),
 
73
  )
74
  );
75
  register_rest_route(
@@ -84,6 +86,7 @@ class Redux_Rest_Api_Builder {
84
  ),
85
  'methods' => WP_REST_Server::ALLMETHODS,
86
  'callback' => array( $this, 'render_field' ),
 
87
  )
88
  );
89
  }
@@ -148,13 +151,14 @@ class Redux_Rest_Api_Builder {
148
  $field_class = Redux_Functions::class_exists_ex( $field_classes );
149
  // Load it here to save some resources in autoloading!
150
  if ( $field_class && is_subclass_of( $class, 'Redux_Field' ) ) {
151
- $descriptor = call_user_func( array( $class, 'get_descriptor' ) );
152
- if ( ! empty( $descriptor->get_field_type() ) ) {
 
153
  $field_data = $descriptor->to_array();
154
  if ( isset( $field_data['fields'] ) && ! empty( $field_data['fields'] ) ) {
155
  $field_data['fields'] = $this->prepare_fields_output( $field_data['fields'] );
156
  }
157
- $fields[ $descriptor->get_field_type() ] = $field_data;
158
  }
159
  }
160
  }
@@ -173,10 +177,10 @@ class Redux_Rest_Api_Builder {
173
  $type = $request['type'];
174
 
175
  $field_classes = $this->get_field_paths();
176
- if ( isset( $field_classes[ Redux_Helpers::strtolower( $type ) ] ) ) {
177
  $class = 'Redux_' . ucwords( str_replace( '-', '_', $type ) );
178
  if ( ! class_exists( $class ) ) {
179
- require_once $field_classes[ Redux_Helpers::strtolower( $type ) ];
180
  }
181
  $field_class = array( 'Redux_' . ucwords( $type ), 'ReduxFramework_' . ucwords( $type ) );
182
  $field_class = Redux_Functions::class_exists_ex( $field_class );
@@ -244,10 +248,10 @@ class Redux_Rest_Api_Builder {
244
  public function render_field( $request = array() ) {
245
  $type = $request['type'];
246
  $field_classes = $this->get_field_paths();
247
- if ( isset( $field_classes[ Redux_Helpers::strtolower( $type ) ] ) ) {
248
  $class = 'Redux_' . ucwords( str_replace( '-', '_', $type ) );
249
  if ( ! class_exists( $class ) ) {
250
- require_once $field_classes[ Redux_Helpers::strtolower( $type ) ];
251
  }
252
  $field_class = array( 'Redux_' . ucwords( $type ), 'ReduxFramework_' . ucwords( $type ) );
253
  $field_class = Redux_Functions::class_exists_ex( $field_class );
56
  array(
57
  'methods' => WP_REST_Server::READABLE,
58
  'callback' => array( $this, 'list_fields' ),
59
+ 'permission_callback' => '__return_true'
60
  )
61
  );
62
  register_rest_route(
71
  ),
72
  'methods' => WP_REST_Server::READABLE,
73
  'callback' => array( $this, 'get_field' ),
74
+ 'permission_callback' => '__return_true'
75
  )
76
  );
77
  register_rest_route(
86
  ),
87
  'methods' => WP_REST_Server::ALLMETHODS,
88
  'callback' => array( $this, 'render_field' ),
89
+ 'permission_callback' => '__return_true'
90
  )
91
  );
92
  }
151
  $field_class = Redux_Functions::class_exists_ex( $field_classes );
152
  // Load it here to save some resources in autoloading!
153
  if ( $field_class && is_subclass_of( $class, 'Redux_Field' ) ) {
154
+ $descriptor = call_user_func( array( $class, 'get_descriptor' ) );
155
+ $descriptor_type = $descriptor->get_field_type();
156
+ if ( ! empty( $descriptor_type ) ) {
157
  $field_data = $descriptor->to_array();
158
  if ( isset( $field_data['fields'] ) && ! empty( $field_data['fields'] ) ) {
159
  $field_data['fields'] = $this->prepare_fields_output( $field_data['fields'] );
160
  }
161
+ $fields[ $descriptor_type ] = $field_data;
162
  }
163
  }
164
  }
177
  $type = $request['type'];
178
 
179
  $field_classes = $this->get_field_paths();
180
+ if ( isset( $field_classes[ mb_strtolower( $type ) ] ) ) {
181
  $class = 'Redux_' . ucwords( str_replace( '-', '_', $type ) );
182
  if ( ! class_exists( $class ) ) {
183
+ require_once $field_classes[ mb_strtolower( $type ) ];
184
  }
185
  $field_class = array( 'Redux_' . ucwords( $type ), 'ReduxFramework_' . ucwords( $type ) );
186
  $field_class = Redux_Functions::class_exists_ex( $field_class );
248
  public function render_field( $request = array() ) {
249
  $type = $request['type'];
250
  $field_classes = $this->get_field_paths();
251
+ if ( isset( $field_classes[ mb_strtolower( $type ) ] ) ) {
252
  $class = 'Redux_' . ucwords( str_replace( '-', '_', $type ) );
253
  if ( ! class_exists( $class ) ) {
254
+ require_once $field_classes[ mb_strtolower( $type ) ];
255
  }
256
  $field_class = array( 'Redux_' . ucwords( $type ), 'ReduxFramework_' . ucwords( $type ) );
257
  $field_class = Redux_Functions::class_exists_ex( $field_class );
redux-core/inc/classes/class-redux-user-feedback.php CHANGED
@@ -76,9 +76,11 @@ class Redux_User_Feedback {
76
  $this->time_limit = WEEK_IN_SECONDS;
77
  }
78
 
79
- // Add actions.
80
- add_action( 'admin_init', array( $this, 'check_installation_date' ) );
81
- add_action( 'admin_init', array( $this, 'set_no_bug' ), 5 );
 
 
82
  }
83
 
84
  /**
@@ -174,7 +176,6 @@ class Redux_User_Feedback {
174
  $no_bug_url = wp_nonce_url( admin_url( 'plugins.php?' . $this->nobug_option . '=true' ), 'redux-feedback-nounce' );
175
  $time = $this->seconds_to_words( time() - get_site_option( $this->date_option ) );
176
  ?>
177
-
178
  <style>
179
  .notice.redux-notice {
180
  border-left-color: #24b0a6 !important;
76
  $this->time_limit = WEEK_IN_SECONDS;
77
  }
78
 
79
+ if ( ! class_exists( 'Redux_Framework_Plugin' ) || ( class_exists( 'Redux_Framework_Plugin' ) && false === Redux_Framework_Plugin::$crash ) ) {
80
+ // Add actions.
81
+ add_action( 'admin_init', array( $this, 'check_installation_date' ) );
82
+ add_action( 'admin_init', array( $this, 'set_no_bug' ), 5 );
83
+ }
84
  }
85
 
86
  /**
176
  $no_bug_url = wp_nonce_url( admin_url( 'plugins.php?' . $this->nobug_option . '=true' ), 'redux-feedback-nounce' );
177
  $time = $this->seconds_to_words( time() - get_site_option( $this->date_option ) );
178
  ?>
 
179
  <style>
180
  .notice.redux-notice {
181
  border-left-color: #24b0a6 !important;
redux-core/inc/classes/class-redux-wordpress-data.php CHANGED
@@ -2,7 +2,7 @@
2
  /**
3
  * Redux WordPress Data Class
4
  *
5
- * @class Redux_WordPress_Data
6
  * @version 3.0.0
7
  * @package Redux Framework
8
  */
@@ -36,37 +36,17 @@ if ( ! class_exists( 'Redux_WordPress_Data', false ) ) {
36
  }
37
  }
38
 
39
- /**
40
- * Maybe translate.
41
- *
42
- * @param string $value Value.
43
- * @param string $post_type Post type.
44
- */
45
- private function maybe_translate( &$value, $post_type ) {
46
- if ( has_filter( 'wpml_object_id' ) ) {
47
- if ( Redux_Helpers::is_integer( $value ) ) {
48
- $value = apply_filters( 'wpml_object_id', $value, $post_type, true );
49
- } elseif ( is_array( $value ) ) {
50
- $value = array_map(
51
- function ( $val ) use ( $post_type ) {
52
- return apply_filters( 'wpml_object_id', $val, $post_type, true );
53
- },
54
- $value
55
- );
56
- }
57
- }
58
- }
59
-
60
  /**
61
  * Get the data.
62
  *
63
- * @param bool $type Type.
64
- * @param array $args Args.
65
  * @param string|int $current_value Current value.
 
66
  *
67
  * @return array|mixed|string
68
  */
69
- public function get( $type = false, $args = array(), $current_value = '' ) {
70
  $opt_name = $this->opt_name;
71
 
72
  /**
@@ -74,400 +54,632 @@ if ( ! class_exists( 'Redux_WordPress_Data', false ) ) {
74
  *
75
  * @param string $data
76
  */
77
-
78
- if ( wp_doing_ajax() && ! ( isset( $args['ajax'] ) && ! empty( $args['ajax'] ) ) ) {
79
- return array();
80
  }
81
 
82
- // phpcs:ignore WordPress.NamingConventions.ValidHookName
83
- $data = apply_filters( "redux/options/{$opt_name}/pre_data/$type", null );
84
-
85
- if ( null !== $data ) {
86
- return $data;
87
  } else {
88
- $data = array();
89
  }
 
 
 
 
 
 
 
 
90
 
91
  $current_data = array();
 
 
 
 
 
92
 
93
- // We add the current selected post type in the data so that it's always in the options (else it can be lost).
94
- if ( ! empty( $current_value ) && ( is_array( $current_value ) || Redux_Helpers::is_integer( $current_value ) ) ) {
95
- switch ( $type ) {
96
- case 'pages':
97
- case 'page':
98
- $this->maybe_translate( $current_value, 'page' );
99
- $pages = get_pages( array( 'include' => $current_value ) );
100
- if ( ! empty( $pages ) ) {
101
- foreach ( $pages as $page ) {
102
- $current_data[ $page->ID ] = $page->post_title;
103
- }
104
- }
105
- break;
106
-
107
- case 'categories':
108
- case 'category':
109
- $this->maybe_translate( $current_value, 'category' );
110
- $terms = get_categories( array( 'object_ids' => $current_value ) );
111
- if ( ! empty( $terms ) ) {
112
- foreach ( $terms as $term ) {
113
- $current_data[ $term->term_id ] = $term->name;
114
- }
115
- }
116
- break;
117
 
118
- case 'terms':
119
- case 'term':
120
- $this->maybe_translate( $current_value, isset( $args['taxonomy'] ) ? $args['taxonomy'] : '' );
 
 
 
 
121
 
122
- $terms = get_terms(
123
- array(
124
- 'object_ids' => $current_value,
125
- 'taxonomy' => isset( $args['taxonomy'] ) ? $args['taxonomy'] : '',
126
- )
127
- );
 
 
128
 
129
- if ( ! empty( $terms ) && ! is_a( $terms, 'WP_Error' ) ) {
130
- foreach ( $terms as $term ) {
131
- $current_data[ $term->term_id ] = $term->name;
132
- }
133
- }
134
 
135
- break;
 
136
 
137
- case 'tags':
138
- case 'tag':
139
- $this->maybe_translate( $current_value, 'post_tag' );
 
 
 
 
 
 
140
 
141
- $terms = get_tags( array( 'object_ids' => $current_value ) );
142
- if ( ! empty( $terms ) ) {
143
- foreach ( $terms as $term ) {
144
- $current_data[ $term->term_id ] = $term->name;
145
- }
146
- }
147
 
148
- break;
 
 
 
149
 
150
- case 'menus':
151
- case 'menu':
152
- $this->maybe_translate( $current_value, 'nav_menu' );
 
 
153
 
154
- $menus = wp_get_nav_menus( array( 'object_ids' => $current_value ) );
155
- if ( ! empty( $menus ) ) {
156
- foreach ( $menus as $item ) {
157
- $current_data[ $item->term_id ] = $item->name;
158
- }
159
- }
160
 
161
- break;
162
 
163
- case 'post':
164
- case 'posts':
165
- $this->maybe_translate( $current_value, 'post' );
166
- if ( ! is_array( $current_value ) ) {
167
- $current_value = array( $current_value );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
168
  }
169
- $posts = get_posts( array( 'post__in' => $current_value ) );
170
- if ( ! empty( $posts ) ) {
171
- foreach ( $posts as $post ) {
172
- $current_data[ $post->ID ] = $post->post_title;
173
- }
 
 
 
 
 
174
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
175
 
176
- break;
 
177
 
178
- case 'users':
179
- case 'user':
180
- $users = get_users( array( 'include' => $current_value ) );
181
- if ( ! empty( $users ) ) {
182
- foreach ( $users as $user ) {
183
- $current_data[ $user->ID ] = $user->display_name;
184
- }
185
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
186
 
187
- break;
 
188
 
189
- case 'sites':
190
- case 'site':
191
- // WP > 4.6.
192
- if ( function_exists( 'get_sites' ) && class_exists( 'WP_Site_Query' ) ) {
193
- $sites = get_sites();
194
- // WP < 4.6.
195
- } else {
196
- $sites = wp_get_sites(); // phpcs:ignore WordPress.WP.DeprecatedFunctions
197
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
198
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
199
  foreach ( $sites as $site ) {
200
  $site = (array) $site;
201
  $k = $site['blog_id'];
202
  $v = $site['domain'] . $site['path'];
203
 
204
- $current_data[ $k ] = $v;
205
  }
 
 
206
 
207
- break;
208
- }
209
- }
210
 
211
- // phpcs:ignore Squiz.PHP.CommentedOutCode
212
- $args_key = md5( maybe_serialize( $args ) );
 
 
 
 
213
 
214
- // Data caching.
215
- if ( isset( $this->wp_data[ $type . $args_key ] ) ) {
216
- $data = $this->wp_data[ $type . $args_key ];
217
- } elseif ( ! empty( $type ) ) {
218
 
219
- /**
220
- * Use data from WordPress to populate options array.
221
- * */
222
- if ( ! empty( $type ) && empty( $data ) ) {
223
- if ( empty( $args ) ) {
224
- $args = array();
225
- }
226
 
227
- $data = array();
228
- $args = wp_parse_args( $args, array() );
229
- if ( isset( $args['args'] ) && empty( $args['args'] ) ) {
230
- unset( $args['args'] );
231
- }
232
 
233
- switch ( $type ) {
234
- case 'categories':
235
- case 'category':
236
- $cats = get_categories( $args );
237
- if ( ! empty( $cats ) ) {
238
- foreach ( $cats as $cat ) {
239
- $data[ $cat->term_id ] = $cat->name;
240
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
241
  }
242
- break;
 
 
243
 
244
- case 'pages':
245
- case 'page':
246
- if ( ! isset( $args['posts_per_page'] ) ) {
247
- $args['posts_per_page'] = 20;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
248
  }
249
- $pages = get_pages( $args );
250
- if ( ! empty( $pages ) ) {
251
- foreach ( $pages as $page ) {
252
- $data[ $page->ID ] = $page->post_title;
253
- }
254
- }
255
- break;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
256
 
257
- case 'terms':
258
- case 'term':
259
- if ( isset( $args['taxonomies'] ) ) {
260
- $args = $args['taxonomies'];
261
- }
262
- $terms = get_terms( $args );
263
- if ( ! empty( $terms ) && ! is_a( $terms, 'WP_Error' ) ) {
264
- foreach ( $terms as $term ) {
265
- $data[ $term->term_id ] = $term->name;
266
- }
267
- }
268
- break;
269
 
270
- case 'taxonomies':
271
- case 'taxonomy':
272
- case 'tax':
273
- if ( isset( $args['taxonomies'] ) ) {
274
- $args = $args['taxonomies'];
275
- }
276
- $taxonomies = get_taxonomies( $args );
277
- if ( ! empty( $taxonomies ) ) {
278
- foreach ( $taxonomies as $key => $taxonomy ) {
279
- $data[ $key ] = $taxonomy;
280
- }
281
- }
282
- break;
283
- case 'post':
284
- case 'posts':
285
- $posts = get_posts( $args );
286
- if ( ! empty( $posts ) ) {
287
- foreach ( $posts as $post ) {
288
- $data[ $post->ID ] = $post->post_title;
289
- }
290
- }
291
- break;
292
-
293
- case 'post_type':
294
- case 'post_types':
295
- global $wp_post_types;
296
-
297
- $defaults = array(
298
- 'public' => true,
299
- 'exclude_from_search' => false,
300
- );
301
- $args = wp_parse_args( $args, $defaults );
302
- $output = 'names';
303
- $operator = 'and';
304
- $post_types = get_post_types( $args, $output, $operator );
305
-
306
- ksort( $post_types );
307
-
308
- foreach ( $post_types as $name => $title ) {
309
- if ( isset( $wp_post_types[ $name ]->labels->menu_name ) ) {
310
- $data[ $name ] = $wp_post_types[ $name ]->labels->menu_name;
311
- } else {
312
- $data[ $name ] = ucfirst( $name );
313
- }
314
- }
315
- break;
316
-
317
- case 'tags':
318
- case 'tag':
319
- $tags = get_tags( $args );
320
- if ( ! empty( $tags ) ) {
321
- foreach ( $tags as $tag ) {
322
- $data[ $tag->term_id ] = $tag->name;
323
- }
324
- }
325
- break;
326
-
327
- case 'menus':
328
- case 'menu':
329
- $menus = wp_get_nav_menus( $args );
330
- if ( ! empty( $menus ) ) {
331
- foreach ( $menus as $item ) {
332
- $data[ $item->term_id ] = $item->name;
333
- }
334
- }
335
- break;
336
 
337
- case 'menu_locations':
338
- case 'menu_location':
339
- global $_wp_registered_nav_menus;
340
 
341
- foreach ( $_wp_registered_nav_menus as $k => $v ) {
342
- $data[ $k ] = $v;
343
- }
344
- break;
 
 
 
 
 
 
345
 
346
- case 'image_size':
347
- case 'image_sizes':
348
- global $_wp_additional_image_sizes;
349
 
350
- foreach ( $_wp_additional_image_sizes as $size_name => $size_attrs ) {
351
- $data[ $size_name ] = $size_name . ' - ' . $size_attrs['width'] . ' x ' . $size_attrs['height'];
352
- }
353
- break;
354
-
355
- case 'elusive-icons':
356
- case 'elusive-icon':
357
- case 'elusive':
358
- case 'icons':
359
- case 'font-icon':
360
- case 'font-icons':
361
- /**
362
- * Filter 'redux/font-icons'
363
- *
364
- * @deprecated
365
- *
366
- * @param array $font_icons array of elusive icon classes
367
- */
368
-
369
- // phpcs:ignore WordPress.NamingConventions.ValidHookName
370
- $font_icons = apply_filters( 'redux/font-icons', array() );
371
-
372
- /**
373
- * Filter 'redux/{opt_name}/field/font/icons'
374
- *
375
- * @deprecated
376
- *
377
- * @param array $font_icons array of elusive icon classes
378
- */
379
-
380
- // phpcs:ignore WordPress.NamingConventions.ValidHookName
381
- $font_icons = apply_filters( "redux/{$opt_name}/field/font/icons", $font_icons );
382
-
383
- foreach ( $font_icons as $k ) {
384
- $data[ $k ] = $k;
385
- }
386
- break;
 
 
 
 
 
387
 
388
- case 'roles':
389
- case 'role':
390
- global $wp_roles;
 
 
 
 
391
 
392
- $data = $wp_roles->get_names();
393
- break;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
394
 
395
- case 'sidebars':
396
- case 'sidebar':
397
- global $wp_registered_sidebars;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
398
 
399
- foreach ( $wp_registered_sidebars as $key => $value ) {
400
- $data[ $key ] = $value['name'];
401
- }
402
- break;
403
- case 'capabilities':
404
- case 'capability':
405
- global $wp_roles;
406
- foreach ( $wp_roles->roles as $role ) {
407
- foreach ( $role['capabilities'] as $key => $cap ) {
408
- $data[ $key ] = ucwords( str_replace( '_', ' ', $key ) );
409
- }
410
- }
411
- break;
412
-
413
- case 'users':
414
- case 'user':
415
- $users = get_users( $args );
416
- if ( ! empty( $users ) ) {
417
- foreach ( $users as $user ) {
418
- $data[ $user->ID ] = $user->display_name;
419
- }
420
- }
421
- break;
422
-
423
- case 'sites':
424
- case 'site':
425
- // WP > 4.6.
426
- if ( function_exists( 'get_sites' ) && class_exists( 'WP_Site_Query' ) ) {
427
- $sites = get_sites();
428
- // WP < 4.6.
429
- } else {
430
- $sites = wp_get_sites(); // phpcs:ignore WordPress.WP.DeprecatedFunctions
431
- }
432
 
433
- foreach ( $sites as $site ) {
434
- $site = (array) $site;
435
- $k = $site['blog_id'];
436
- $v = $site['domain'] . $site['path'];
437
 
438
- $data[ $k ] = $v;
439
- }
440
 
441
- break;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
442
 
443
- case 'callback':
444
- if ( ! is_array( $args ) ) {
445
- $args = array( $args );
446
- }
447
- $data = call_user_func( $args[0], $current_value );
448
- break;
449
- }
450
- }
451
 
452
- if ( ! empty( $data ) ) {
453
- $this->wp_data[ $type . $args_key ] = $data;
454
- }
455
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
456
 
457
- if ( ! empty( $current_data ) ) {
458
- $data += $current_data;
459
  }
460
 
461
- /**
462
- * Filter 'redux/options/{opt_name}/data/{type}'
463
- *
464
- * @param string $data
465
- */
466
 
467
- // phpcs:ignore WordPress.NamingConventions.ValidHookName
468
- $data = apply_filters( "redux/options/{$opt_name}/data/$type", $data );
469
 
470
- return $data;
471
- }
472
  }
473
  }
2
  /**
3
  * Redux WordPress Data Class
4
  *
5
+ * @class Redux_WordPress_Data
6
  * @version 3.0.0
7
  * @package Redux Framework
8
  */
36
  }
37
  }
38
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
  /**
40
  * Get the data.
41
  *
42
+ * @param bool $type Type.
43
+ * @param array $args Args.
44
  * @param string|int $current_value Current value.
45
+ * @param bool $ajax Tells if this is a AJAX call.
46
  *
47
  * @return array|mixed|string
48
  */
49
+ public function get( $type = false, $args = array(), $current_value = '', $ajax = false ) {
50
  $opt_name = $this->opt_name;
51
 
52
  /**
54
  *
55
  * @param string $data
56
  */
57
+ $pre_data = apply_filters( "redux/options/{$opt_name}/pre_data/$type", null ); // phpcs:ignore WordPress.NamingConventions.ValidHookName
58
+ if ( null !== $pre_data || empty( $type ) ) {
59
+ return $pre_data;
60
  }
61
 
62
+ if ( isset( $args['data_sortby'] ) && in_array( $args['data_sortby'], array( 'value', 'key' ), true ) ) {
63
+ $data_sort = $args['data_sortby'];
64
+ unset( $args['data_sortby'] );
 
 
65
  } else {
66
+ $data_sort = 'value';
67
  }
68
+ if ( isset( $args['data_order'] ) && in_array( $args['data_order'], array( 'asc', 'desc' ), true ) ) {
69
+ $data_order = $args['data_order'];
70
+ unset( $args['data_order'] );
71
+ } else {
72
+ $data_order = 'asc';
73
+ }
74
+
75
+ $this->maybe_get_translation( $type, $current_value, $args );
76
 
77
  $current_data = array();
78
+ if ( empty( $current_value ) && ! Redux_Helpers::is_integer( $current_value ) ) {
79
+ $current_value = null;
80
+ } else {
81
+ // Get the args to grab the current data.
82
+ $current_data_args = $this->get_current_data_args( $type, $args, $current_value );
83
 
84
+ // Let's make a unique key for this arg array.
85
+ $current_data_args_key = md5( maybe_serialize( $current_data_args ) );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
86
 
87
+ // Check to make sure we haven't already run this call before.
88
+ if ( isset( $this->wp_data[ $type . $current_data_args_key ] ) ) {
89
+ $current_data = $this->wp_data[ $type . $current_data_args_key ];
90
+ } else {
91
+ $current_data = $this->get_data( $type, $current_data_args, $current_value );
92
+ }
93
+ }
94
 
95
+ // If ajax is enabled AND $current_data is empty, set a dummy value for the init.
96
+ if ( $ajax && ! wp_doing_ajax() ) {
97
+ // Dummy is needed otherwise empty.
98
+ if ( empty( $current_data ) ) {
99
+ $current_data = array(
100
+ 'dummy' => '',
101
+ );
102
+ }
103
 
104
+ return $current_data;
105
+ }
 
 
 
106
 
107
+ // phpcs:ignore Squiz.PHP.CommentedOutCode
108
+ $args_key = md5( maybe_serialize( $args ) );
109
 
110
+ // Data caching.
111
+ if ( isset( $this->wp_data[ $type . $args_key ] ) ) {
112
+ $data = $this->wp_data[ $type . $args_key ];
113
+ } else {
114
+ /**
115
+ * Use data from WordPress to populate options array.
116
+ * */
117
+ $data = $this->get_data( $type, $args, $current_value );
118
+ }
119
 
120
+ if ( ! empty( $current_data ) ) {
121
+ $data += $current_data;
122
+ }
 
 
 
123
 
124
+ if ( ! empty( $data ) ) {
125
+ $data = $this->order_data( $data, $data_sort, $data_order );
126
+ $this->wp_data[ $type . $args_key ] = $data;
127
+ }
128
 
129
+ /**
130
+ * Filter 'redux/options/{opt_name}/data/{type}'
131
+ *
132
+ * @param string $data
133
+ */
134
 
135
+ // phpcs:ignore WordPress.NamingConventions.ValidHookName
136
+ $data = apply_filters( "redux/options/{$opt_name}/data/$type", $data );
137
+
138
+ return $data;
139
+ }
 
140
 
 
141
 
142
+ /**
143
+ * Process the results into a proper array, fetching the data elements needed for each data type.
144
+ *
145
+ * @param array $results Results to process in the data array.
146
+ * @param string|bool $id_key Key on object/array that represents the ID.
147
+ * @param string|bool $name_key Key on object/array that represents the name/text.
148
+ * @param bool $add_key If true, the display key will appear in the text..
149
+ * @param string|bool $secondary_key If a data type you'd rather display a different ID as the display key.
150
+ *
151
+ * @return array
152
+ */
153
+ private function process_results( $results = array(), $id_key = '', $name_key = '', $add_key = true, $secondary_key = 'slug' ) {
154
+ $data = array();
155
+ if ( ! empty( $results ) && ! is_a( $results, 'WP_Error' ) ) {
156
+ foreach ( $results as $k => $v ) {
157
+ if ( empty( $id_key ) ) {
158
+ $key = $k;
159
+ } else {
160
+ if ( is_object( $v ) ) {
161
+ $key = $v->$id_key;
162
+ } elseif ( is_array( $v ) ) {
163
+ $key = $v[ $id_key ];
164
+ } else {
165
+ $key = $k;
166
  }
167
+ }
168
+ if ( empty( $name_key ) ) {
169
+ $value = $v;
170
+ } else {
171
+ if ( is_object( $v ) ) {
172
+ $value = $v->$name_key;
173
+ } elseif ( is_array( $v ) ) {
174
+ $value = $v[ $name_key ];
175
+ } else {
176
+ $value = $v;
177
  }
178
+ }
179
+ $display_key = $key;
180
+ if ( is_object( $v ) && isset( $v->$secondary_key ) ) {
181
+ $display_key = $v->$secondary_key;
182
+ } elseif ( ! is_object( $v ) && isset( $v[ $secondary_key ] ) ) {
183
+ $display_key = $v[ $secondary_key ];
184
+ }
185
+ $data[ $key ] = $value;
186
+ if ( $display_key !== $value && $add_key ) {
187
+ $data[ $key ] = $data[ $key ] . ' [' . $display_key . ']';
188
+ }
189
+ }
190
+ }
191
 
192
+ return $data;
193
+ }
194
 
195
+ /**
196
+ * Order / Sort the data.
197
+ *
198
+ * @param array $data Data to sort.
199
+ * @param string $sort Way to sort. Accepts: key|value.
200
+ * @param string $order Order of the sort. Accepts: asc|desc.
201
+ *
202
+ * @return array
203
+ */
204
+ private function order_data( $data = array(), $sort = 'value', $order = 'asc' ) {
205
+ if ( 'key' === $sort ) {
206
+ if ( 'asc' === $order ) {
207
+ ksort( $data );
208
+ } else {
209
+ krsort( $data );
210
+ }
211
+ } elseif ( 'value' === $sort ) {
212
+ if ( 'asc' === $order ) {
213
+ asort( $data );
214
+ } else {
215
+ arsort( $data );
216
+ }
217
+ }
218
 
219
+ return $data;
220
+ }
221
 
222
+ /**
223
+ * Fetch the data for a given type.
224
+ *
225
+ * @param string $type The data type we're fetching..
226
+ * @param array $args Arguments to pass.
227
+ * @param mixed $current_value If a current value already set in the database.
228
+ *
229
+ * @return array
230
+ */
231
+ private function get_data( $type, $args, $current_value ) {
232
+ $args = $this->get_arg_defaults( $type, $args );
233
+
234
+ $opt_name = $this->opt_name;
235
+ if ( empty( $args ) ) {
236
+ $args = array();
237
+ }
238
+
239
+ $data = array();
240
+ if ( isset( $args['args'] ) && empty( $args['args'] ) ) {
241
+ unset( $args['args'] );
242
+ }
243
+
244
+ $display_keys = false;
245
+ if ( isset( $args['display_keys'] ) ) {
246
+ $display_keys = true;
247
+ unset( $args['display_keys'] );
248
+ }
249
 
250
+ $secondary_key = 'slug';
251
+ if ( isset( $args['secondary_key'] ) ) {
252
+ $display_key = $args['secondary_key'];
253
+ unset( $args['secondary_key'] );
254
+ }
255
+
256
+ switch ( $type ) {
257
+ case 'categories':
258
+ case 'category':
259
+ case 'terms':
260
+ case 'term':
261
+ $results = get_terms( $args );
262
+ $data = $this->process_results( $results, 'term_id', 'name', $display_keys, $secondary_key );
263
+ break;
264
+
265
+ case 'pages':
266
+ case 'page':
267
+ $results = get_pages( $args );
268
+ $data = $this->process_results( $results, 'ID', 'post_title', $display_keys, $secondary_key );
269
+ break;
270
+
271
+ case 'tags':
272
+ case 'tag':
273
+ $results = get_tags( $args );
274
+ $data = $this->process_results( $results, 'term_id', 'name', $display_keys, $secondary_key );
275
+ break;
276
+
277
+ case 'menus':
278
+ case 'menu':
279
+ $results = wp_get_nav_menus( $args );
280
+ $data = $this->process_results( $results, 'term_id', 'name', $display_keys, $secondary_key );
281
+ break;
282
+
283
+ case 'posts':
284
+ case 'post':
285
+ $results = get_posts( $args );
286
+ $data = $this->process_results( $results, 'ID', 'post_title', $display_keys, $secondary_key );
287
+ break;
288
+
289
+ case 'users':
290
+ case 'user':
291
+ $results = get_users( $args );
292
+ $data = $this->process_results( $results, 'ID', 'display_name', $display_keys, $secondary_key );
293
+ break;
294
+
295
+ case 'sites':
296
+ case 'site':
297
+ // WP > 4.6.
298
+ if ( function_exists( 'get_sites' ) && class_exists( 'WP_Site_Query' ) ) {
299
+ $sites = get_sites();
300
+ // WP < 4.6.
301
+ } elseif ( function_exists( 'wp_get_sites' ) ) {
302
+ $sites = wp_get_sites(); // phpcs:ignore WordPress.WP.DeprecatedFunctions
303
+ }
304
+ if ( isset( $sites ) ) {
305
+ $results = array();
306
  foreach ( $sites as $site ) {
307
  $site = (array) $site;
308
  $k = $site['blog_id'];
309
  $v = $site['domain'] . $site['path'];
310
 
311
+ $results[ $k ] = $v;
312
  }
313
+ $data = $this->process_results( $results, '', '', $display_keys, $secondary_key );
314
+ }
315
 
316
+ break;
 
 
317
 
318
+ case 'taxonomies':
319
+ case 'taxonomy':
320
+ case 'tax':
321
+ $results = get_taxonomies( $args );
322
+ $data = $this->process_results( $results, '', '', $display_keys, $secondary_key );
323
+ break;
324
 
325
+ case 'post_types':
326
+ case 'post_type':
327
+ global $wp_post_types;
 
328
 
329
+ $output = $args['output'];
330
+ unset( $args['output'] );
331
+ $operator = $args['operator'];
332
+ unset( $args['operator'] );
 
 
 
333
 
334
+ $post_types = get_post_types( $args, $output, $operator );
 
 
 
 
335
 
336
+ foreach ( $post_types as $name => $title ) {
337
+ if ( isset( $wp_post_types[ $name ]->labels->menu_name ) ) {
338
+ $data[ $name ] = $wp_post_types[ $name ]->labels->menu_name;
339
+ } else {
340
+ $data[ $name ] = ucfirst( $name );
341
+ }
342
+ }
343
+ break;
344
+
345
+ case 'menu_locations':
346
+ case 'menu_location':
347
+ $results = get_nav_menu_locations();
348
+ $data = $this->process_results( $results, '', '', $display_keys, $secondary_key );
349
+ break;
350
+
351
+ case 'image_sizes':
352
+ case 'image_size':
353
+ global $_wp_additional_image_sizes;
354
+ $results = array();
355
+ foreach ( $_wp_additional_image_sizes as $size_name => $size_attrs ) {
356
+ $results[ $size_name ] = $size_name . ' - ' . $size_attrs['width'] . ' x ' . $size_attrs['height'];
357
+ }
358
+ $data = $this->process_results( $results, '', '', $display_keys, $secondary_key );
359
+
360
+ break;
361
+
362
+ case 'elusive-icons':
363
+ case 'elusive-icon':
364
+ case 'elusive':
365
+ case 'icons':
366
+ case 'font-icon':
367
+ case 'font-icons':
368
+ $fs = Redux_Filesystem::get_instance();
369
+ $fonts = $fs->get_contents( Redux_Core::$dir . 'assets/css/vendor/elusive-icons.css' );
370
+ if ( ! empty( $fonts ) ) {
371
+ preg_match_all( '@\.el-(\w+)::before@', $fonts, $matches );
372
+ foreach ( $matches[1] as $item ) {
373
+ if ( 'before' === $item ) {
374
+ continue;
375
  }
376
+ $data[ 'el el-' . $item ] = $item;
377
+ }
378
+ }
379
 
380
+ /**
381
+ * Filter 'redux/font-icons'
382
+ *
383
+ * @param array $font_icons array of elusive icon classes
384
+ *
385
+ * @deprecated
386
+ */
387
+
388
+ // phpcs:ignore WordPress.NamingConventions.ValidHookName
389
+ $font_icons = apply_filters( 'redux/font-icons', $data );
390
+
391
+ /**
392
+ * Filter 'redux/{opt_name}/field/font/icons'
393
+ *
394
+ * @param array $font_icons array of elusive icon classes
395
+ *
396
+ * @deprecated
397
+ */
398
+
399
+ // phpcs:ignore WordPress.NamingConventions.ValidHookName
400
+ $font_icons = apply_filters( "redux/{$opt_name}/field/font/icons", $font_icons );
401
+
402
+ break;
403
+
404
+ case 'dashicons':
405
+ case 'dashicon':
406
+ case 'dash':
407
+ $fs = Redux_Filesystem::get_instance();
408
+ $fonts = $fs->get_contents( ABSPATH . WPINC . '/css/dashicons.css' );
409
+ if ( ! empty( $fonts ) ) {
410
+ preg_match_all( '@\.dashicons-(\w+):before@', $fonts, $matches );
411
+ foreach ( $matches[1] as $item ) {
412
+ if ( 'before' === $item ) {
413
+ continue;
414
  }
415
+ $data[ 'dashicons dashicons-' . $item ] = $item;
416
+ }
417
+ }
418
+ break;
419
+
420
+ case 'roles':
421
+ case 'role':
422
+ global $wp_roles;
423
+ $results = $wp_roles->get_names();
424
+ $data = $this->process_results( $results, '', '', $display_keys, $secondary_key );
425
+
426
+ break;
427
+
428
+ case 'sidebars':
429
+ case 'sidebar':
430
+ global $wp_registered_sidebars;
431
+ $data = $this->process_results( $wp_registered_sidebars, '', 'name', $display_keys, $secondary_key );
432
+ break;
433
+ case 'capabilities':
434
+ case 'capability':
435
+ global $wp_roles;
436
+ $results = array();
437
+ foreach ( $wp_roles->roles as $role ) {
438
+ foreach ( $role['capabilities'] as $key => $cap ) {
439
+ $results[ $key ] = ucwords( str_replace( '_', ' ', $key ) );
440
+ }
441
+ }
442
+ $data = $this->process_results( $results, '', '', $display_keys, $secondary_key );
443
 
444
+ break;
 
 
 
 
 
 
 
 
 
 
 
445
 
446
+ case 'capabilities_grouped':
447
+ case 'capability_grouped':
448
+ case 'capabilities_group':
449
+ case 'capability_group':
450
+ global $wp_roles;
451
+
452
+ foreach ( $wp_roles->roles as $k => $role ) {
453
+ $caps = array();
454
+ foreach ( $role['capabilities'] as $key => $cap ) {
455
+ $caps[ $key ] = ucwords( str_replace( '_', ' ', $key ) );
456
+ }
457
+ asort( $caps );
458
+ $data[ $role['name'] ] = $caps;
459
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
460
 
461
+ break;
 
 
462
 
463
+ case 'callback':
464
+ if ( ! is_array( $args ) ) {
465
+ $args = array( $args );
466
+ }
467
+ $data = call_user_func( $args[0], $current_value );
468
+ break;
469
+ }
470
+
471
+ return $data;
472
+ }
473
 
 
 
 
474
 
475
+ /**
476
+ * Router for translation based on the given post type.
477
+ *
478
+ * @param string $type Type of data request..
479
+ * @param mixed $current_value Current value stored in DB.
480
+ * @param array $args Arguments for the call.
481
+ */
482
+ private function maybe_get_translation( $type, &$current_value = '', $args = array() ) {
483
+ switch ( $type ) {
484
+ case 'categories':
485
+ case 'category':
486
+ $this->maybe_translate( $current_value, 'category' );
487
+ break;
488
+
489
+ case 'pages':
490
+ case 'page':
491
+ $this->maybe_translate( $current_value, 'page' );
492
+ break;
493
+
494
+ case 'terms':
495
+ case 'term':
496
+ $this->maybe_translate( $current_value, isset( $args['taxonomy'] ) ? $args['taxonomy'] : '' );
497
+ break;
498
+
499
+ case 'tags':
500
+ case 'tag':
501
+ $this->maybe_translate( $current_value, 'post_tag' );
502
+ break;
503
+
504
+ case 'menus':
505
+ case 'menu':
506
+ $this->maybe_translate( $current_value, 'nav_menu' );
507
+ break;
508
+
509
+ case 'post':
510
+ case 'posts':
511
+ $this->maybe_translate( $current_value, 'post' );
512
+ break;
513
+ default:
514
+ $this->maybe_translate( $current_value, '' );
515
+ }
516
+ }
517
 
518
+ /**
519
+ * Maybe translate the values.
520
+ *
521
+ * @param string $value Value.
522
+ * @param string $post_type Post type.
523
+ */
524
+ private function maybe_translate( &$value, $post_type ) {
525
 
526
+ // phpcs:ignore WordPress.NamingConventions.ValidHookName
527
+ $value = apply_filters( "redux/options/{$this->opt_name}/wordpress_data/translate/post_type_value", $value, $post_type );
528
+
529
+ // WPML Integration, see https://wpml.org/documentation/support/creating-multilingual-wordpress-themes/language-dependent-ids/.
530
+ if ( function_exists( 'icl_object_id' ) ) {
531
+ if ( has_filter( 'wpml_object_id' ) ) {
532
+ if ( Redux_Helpers::is_integer( $value ) ) {
533
+ $value = apply_filters( 'wpml_object_id', $value, $post_type, true );
534
+ } elseif ( is_array( $value ) ) {
535
+ $value = array_map(
536
+ function ( $val ) use ( $post_type ) {
537
+ return apply_filters( 'wpml_object_id', $val, $post_type, true );
538
+ },
539
+ $value
540
+ );
541
+ }
542
+ }
543
+ }
544
+ }
545
 
546
+ /**
547
+ * Set the default arguments for a current query (existing data).
548
+ *
549
+ * @param string $type Type of data request.
550
+ * @param array $args Arguments for the call.
551
+ * @param mixed $current_value Current value stored in DB.
552
+ *
553
+ * @return array
554
+ */
555
+ private function get_current_data_args( $type, $args, &$current_value ) {
556
+ // In this section we set the default arguments for each data type.
557
+ switch ( $type ) {
558
+ case 'categories':
559
+ case 'category':
560
+ case 'pages':
561
+ case 'page':
562
+ case 'terms':
563
+ case 'term':
564
+ case 'users':
565
+ case 'user':
566
+ $args['include'] = $current_value;
567
+ break;
568
+ case 'tags':
569
+ case 'tag':
570
+ $args['get'] = 'all';
571
+ break;
572
+ case 'menus':
573
+ case 'menu':
574
+ $args['object_ids'] = $current_value;
575
+ break;
576
+ case 'post':
577
+ case 'posts':
578
+ if ( ! is_array( $current_value ) && ! empty( $current_value ) ) {
579
+ $current_value = array( $current_value );
580
+ $args['post__in'] = $current_value;
581
+ // Add post_type any to get all posts IDs.
582
+ $args['post_type'] = 'any';
583
+ } elseif ( is_array( $current_value ) && ! empty( $current_value ) ) {
584
+ $args['post__in'] = $current_value;
585
+ $args['post_type'] = 'any';
586
+ }
587
+ break;
588
 
589
+ default:
590
+ $args = array();
591
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
592
 
593
+ return $args;
594
+ }
 
 
595
 
 
 
596
 
597
+ /**
598
+ * Get default arguments for a given data type.
599
+ *
600
+ * @param string $type Type of data request.
601
+ * @param array $args Arguments for the call.
602
+ *
603
+ * @return array
604
+ */
605
+ private function get_arg_defaults( $type, $args = array() ) {
606
+ // In this section we set the default arguments for each data type.
607
+ switch ( $type ) {
608
+ case 'categories':
609
+ case 'category':
610
+ $args = wp_parse_args(
611
+ $args,
612
+ array(
613
+ 'taxonomy' => 'category',
614
+ )
615
+ );
616
+ break;
617
+
618
+ case 'pages':
619
+ case 'page':
620
+ $args = wp_parse_args(
621
+ $args,
622
+ array(
623
+ 'display_keys' => true,
624
+ 'posts_per_page' => 20,
625
+ )
626
+ );
627
+ break;
628
+
629
+ case 'post_type':
630
+ case 'post_types':
631
+ $args = wp_parse_args(
632
+ $args,
633
+ array(
634
+ 'public' => true,
635
+ 'exclude_from_search' => false,
636
+ 'output' => 'names',
637
+ 'operator' => 'and',
638
+ )
639
+ );
640
 
641
+ break;
 
 
 
 
 
 
 
642
 
643
+ case 'tag':
644
+ case 'tags':
645
+ $args = wp_parse_args(
646
+ $args,
647
+ array(
648
+ 'get' => 'all',
649
+ 'display_keys' => true,
650
+ )
651
+ );
652
+ break;
653
+
654
+ case 'sidebars':
655
+ case 'sidebar':
656
+ case 'capabilities':
657
+ case 'capability':
658
+ $args = wp_parse_args(
659
+ $args,
660
+ array(
661
+ 'display_keys' => true,
662
+ )
663
+ );
664
+ break;
665
+
666
+ case 'capabilities_grouped':
667
+ case 'capability_grouped':
668
+ case 'capabilities_group':
669
+ case 'capability_group':
670
+ $args = wp_parse_args(
671
+ $args,
672
+ array(
673
+ 'data_sortby' => '',
674
+ )
675
+ );
676
+ break;
677
 
 
 
678
  }
679
 
680
+ return $args;
681
+ }
 
 
 
682
 
 
 
683
 
 
 
684
  }
685
  }
redux-core/inc/extensions/customizer/class-redux-extension-customizer.php CHANGED
@@ -368,7 +368,7 @@ if ( ! class_exists( 'Redux_Extension_Customizer', false ) ) {
368
 
369
  // Let's make a section ID from the title.
370
  if ( empty( $section['id'] ) ) {
371
- $section['id'] = Redux_Helpers::strtolower( str_replace( ' ', '', $section['title'] ) );
372
  }
373
 
374
  // No title is present, let's show what section is missing a title.
@@ -381,10 +381,11 @@ if ( ! class_exists( 'Redux_Extension_Customizer', false ) ) {
381
  $section['priority'] = $order['heading'];
382
  $order['heading'] ++;
383
  }
 
384
 
385
  if ( method_exists( $wp_customize, 'add_panel' ) && ( ! isset( $section['subsection'] ) || ( isset( $section['subsection'] ) && true !== $section['subsection'] ) ) && isset( $this->parent->sections[ ( $key + 1 ) ]['subsection'] ) && $this->parent->sections[ ( $key + 1 ) ]['subsection'] ) {
386
  $this->add_panel(
387
- $section['id'],
388
  array(
389
  'priority' => $section['priority'],
390
  'capability' => $section['permissions'],
@@ -396,7 +397,7 @@ if ( ! class_exists( 'Redux_Extension_Customizer', false ) ) {
396
  $wp_customize
397
  );
398
 
399
- $panel = $section['id'];
400
 
401
  $this->add_section(
402
  $section['id'],
368
 
369
  // Let's make a section ID from the title.
370
  if ( empty( $section['id'] ) ) {
371
+ $section['id'] = Redux_Core::strtolower( str_replace( ' ', '', $section['title'] ) );
372
  }
373
 
374
  // No title is present, let's show what section is missing a title.
381
  $section['priority'] = $order['heading'];
382
  $order['heading'] ++;
383
  }
384
+ $section['id'] = $this->parent->args['opt_name'] . '-' . $section['id'];
385
 
386
  if ( method_exists( $wp_customize, 'add_panel' ) && ( ! isset( $section['subsection'] ) || ( isset( $section['subsection'] ) && true !== $section['subsection'] ) ) && isset( $this->parent->sections[ ( $key + 1 ) ]['subsection'] ) && $this->parent->sections[ ( $key + 1 ) ]['subsection'] ) {
387
  $this->add_panel(
388
+ $this->parent->args['opt_name'] . '-' . $section['id'],
389
  array(
390
  'priority' => $section['priority'],
391
  'capability' => $section['permissions'],
397
  $wp_customize
398
  );
399
 
400
+ $panel = $this->parent->args['opt_name'] . '-' . $section['id'];
401
 
402
  $this->add_section(
403
  $section['id'],
redux-core/inc/extensions/customizer/inc/class-redux-customizer-panel.php CHANGED
@@ -48,28 +48,14 @@ class Redux_Customizer_Panel extends WP_Customize_Panel {
48
  * @param array $args Panel arguments.
49
  */
50
  public function __construct( $manager, $id, $args = array() ) {
51
- $keys = array_keys( get_object_vars( $this ) );
52
- foreach ( $keys as $key ) {
53
- if ( isset( $args[ $key ] ) ) {
54
- $this->$key = $args[ $key ];
55
- }
56
- }
57
- $this->manager = $manager;
58
- $this->id = $id;
59
- if ( empty( $this->active_callback ) ) {
60
- $this->active_callback = array( $this, 'active_callback' );
61
- }
62
- self::$instance_count ++;
63
- $this->instance_number = self::$instance_count;
64
 
65
- $this->sections = array(); // Users cannot customize the $sections array.
66
- // TODO: Redux addition.
67
  if ( isset( $args['section'] ) ) {
68
  $this->section = $args['section'];
69
  $this->description = isset( $this->section['desc'] ) ? $this->section['desc'] : '';
70
  $this->opt_name = isset( $args['opt_name'] ) ? $args['opt_name'] : '';
71
  }
72
- // TODO: END Redux Addition.
73
  }
74
 
75
  /**
@@ -155,23 +141,8 @@ class Redux_Customizer_Panel extends WP_Customize_Panel {
155
  * @return array
156
  */
157
  public function json() {
158
- $array = wp_array_slice_assoc(
159
- (array) $this,
160
- array(
161
- 'id',
162
- 'description',
163
- 'priority',
164
- 'type',
165
- )
166
- );
167
-
168
- $array['title'] = html_entity_decode( $this->title, ENT_QUOTES, get_bloginfo( 'charset' ) );
169
- $array['content'] = $this->get_content();
170
- $array['active'] = $this->active();
171
- $array['instanceNumber'] = $this->instance_number;
172
- $array['autoExpandSoleSection'] = $this->auto_expand_sole_section;
173
- $array['opt_name'] = $this->opt_name;
174
-
175
  return $array;
176
  }
177
 
@@ -186,7 +157,7 @@ class Redux_Customizer_Panel extends WP_Customize_Panel {
186
  protected function content_template() {
187
  ?>
188
  <li
189
- class="panel-meta customize-info redux-panel accordion-section <# if ( ! data.description ) { #> cannot-expand<# } #>"
190
  data-opt-name="{{{ data.opt_name }}}">
191
  <button class="customize-panel-back" tabindex="-1">
192
  <span class="screen-reader-text"><?php esc_attr_e( 'Back', 'redux-framework' ); ?></span></button>
48
  * @param array $args Panel arguments.
49
  */
50
  public function __construct( $manager, $id, $args = array() ) {
51
+ parent::__construct( $manager, $id, $args );
 
 
 
 
 
 
 
 
 
 
 
 
52
 
53
+ // Redux addition.
 
54
  if ( isset( $args['section'] ) ) {
55
  $this->section = $args['section'];
56
  $this->description = isset( $this->section['desc'] ) ? $this->section['desc'] : '';
57
  $this->opt_name = isset( $args['opt_name'] ) ? $args['opt_name'] : '';
58
  }
 
59
  }
60
 
61
  /**
141
  * @return array
142
  */
143
  public function json() {
144
+ $array = parent::json();
145
+ $array['opt_name'] = $this->opt_name;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
146
  return $array;
147
  }
148
 
157
  protected function content_template() {
158
  ?>
159
  <li
160
+ class="panel-meta customize-info redux-customizer-opt-name redux-panel accordion-section <# if ( ! data.description ) { #> cannot-expand<# } #>"
161
  data-opt-name="{{{ data.opt_name }}}">
162
  <button class="customize-panel-back" tabindex="-1">
163
  <span class="screen-reader-text"><?php esc_attr_e( 'Back', 'redux-framework' ); ?></span></button>
redux-core/inc/extensions/customizer/inc/class-redux-customizer-section.php CHANGED
@@ -24,6 +24,15 @@ class Redux_Customizer_Section extends WP_Customize_Section {
24
  */
25
  public $type = 'redux';
26
 
 
 
 
 
 
 
 
 
 
27
  /**
28
  * Constructor.
29
  * Any supplied $args override class property defaults.
@@ -35,23 +44,8 @@ class Redux_Customizer_Section extends WP_Customize_Section {
35
  * @param array $args Section arguments.
36
  */
37
  public function __construct( $manager, $id, $args = array() ) {
38
- $keys = array_keys( get_object_vars( $this ) );
39
- foreach ( $keys as $key ) {
40
- if ( isset( $args[ $key ] ) ) {
41
- $this->$key = $args[ $key ];
42
- }
43
- }
44
-
45
- $this->manager = $manager;
46
- $this->id = $id;
47
- if ( empty( $this->active_callback ) ) {
48
- $this->active_callback = array( $this, 'active_callback' );
49
- }
50
- self::$instance_count ++;
51
- $this->instance_number = self::$instance_count;
52
-
53
- $this->controls = array(); // Users cannot customize the $controls array.
54
- // TODO: Redux addition.
55
  if ( isset( $args['section'] ) ) {
56
  $this->section = $args['section'];
57
  $this->description = isset( $this->section['desc'] ) ? $this->section['desc'] : '';
@@ -60,47 +54,14 @@ class Redux_Customizer_Section extends WP_Customize_Section {
60
  }
61
 
62
  /**
63
- * An Underscore (JS) template for rendering this section.
64
- * Class variables for this section class are available in the `data` JS object;
65
- * export custom variables by overriding {@see WP_Customize_Section::json()}.
66
- *
67
- * @see WP_Customize_Section::print_template()
68
- * @since 4.3.0
69
  */
70
- protected function render_template() {
71
- ?>
72
- <li id="accordion-section-{{ data.id }}"
73
- class="redux-section accordion-section control-section control-section-{{ data.type }}">
74
- <h3 class="accordion-section-title" tabindex="0">
75
- {{ data.title }}
76
- <span class="screen-reader-text"><?php esc_html_e( 'Press return or enter to open', 'redux-framework' ); ?></span>
77
- </h3>
78
- <ul class="accordion-section-content redux-main">
79
-
80
- <li class="customize-section-description-container">
81
- <div class="customize-section-title">
82
- <button class="customize-section-back" tabindex="-1">
83
- <span class="screen-reader-text"><?php esc_html_e( 'Back', 'redux-framework' ); ?></span>
84
- </button>
85
- <h3>
86
- <span class="customize-action">
87
- {{{ data.customizeAction }}}
88
- </span> {{ data.title }}
89
- </h3>
90
- </div>
91
- <# if ( data.description ) { #>
92
- <p class="description customize-section-description">{{{ data.description }}}</p>
93
- <# } #>
94
- <?php
95
- if ( isset( $this->opt_name ) && isset( $this->section ) ) {
96
- // phpcs:ignore WordPress.NamingConventions.ValidHookName
97
- do_action( "redux/page/{$this->opt_name}/section/before", $this->section );
98
- }
99
- ?>
100
- </li>
101
- </ul>
102
- </li>
103
- <?php
104
  }
105
 
106
  /**
@@ -146,14 +107,67 @@ class Redux_Customizer_Section extends WP_Customize_Section {
146
  <?php
147
  }
148
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
149
  /**
150
- * Field redner.
 
 
 
 
 
151
  */
152
- protected function render() {
153
- global $wp_version;
154
- $version = explode( '-', $wp_version );
155
- if ( version_compare( $version[0], '4.3', '<' ) ) {
156
- $this->render_fallback();
157
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
158
  }
 
 
 
 
159
  }
24
  */
25
  public $type = 'redux';
26
 
27
+ /**
28
+ * Panel opt_name.
29
+ *
30
+ * @since 4.0.0
31
+ * @access public
32
+ * @var string
33
+ */
34
+ public $opt_name = '';
35
+
36
  /**
37
  * Constructor.
38
  * Any supplied $args override class property defaults.
44
  * @param array $args Section arguments.
45
  */
46
  public function __construct( $manager, $id, $args = array() ) {
47
+ parent::__construct( $manager, $id, $args );
48
+ // Redux addition.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
49
  if ( isset( $args['section'] ) ) {
50
  $this->section = $args['section'];
51
  $this->description = isset( $this->section['desc'] ) ? $this->section['desc'] : '';
54
  }
55
 
56
  /**
57
+ * WP < 4.3 Render
 
 
 
 
 
58
  */
59
+ protected function render() {
60
+ global $wp_version;
61
+ $version = explode( '-', $wp_version );
62
+ if ( version_compare( $version[0], '4.3', '<' ) ) {
63
+ $this->render_fallback();
64
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
65
  }
66
 
67
  /**
107
  <?php
108
  }
109
 
110
+
111
+ /**
112
+ * Gather the parameters passed to client JavaScript via JSON.
113
+ *
114
+ * @since 4.1.0
115
+ *
116
+ * @return array The array to be exported to the client as JSON.
117
+ */
118
+ public function json() {
119
+ $array = parent::json();
120
+ $array['opt_name'] = $this->opt_name;
121
+ return $array;
122
+ }
123
+
124
  /**
125
+ * An Underscore (JS) template for rendering this section.
126
+ * Class variables for this section class are available in the `data` JS object;
127
+ * export custom variables by overriding {@see WP_Customize_Section::json()}.
128
+ *
129
+ * @see WP_Customize_Section::print_template()
130
+ * @since 4.3.0
131
  */
132
+ protected function render_template() {
133
+
134
+ ?>
135
+ <li id="accordion-section-{{ data.id }}"
136
+ class="redux-standalone-section redux-customizer-opt-name redux-section accordion-section control-section control-section-{{ data.type }}"
137
+ data-opt-name="{{ data.opt_name }}">
138
+ <h3 class="accordion-section-title" tabindex="0">
139
+ {{ data.title }}
140
+ <span class="screen-reader-text"><?php esc_html_e( 'Press return or enter to open', 'redux-framework' ); ?></span>
141
+ </h3>
142
+ <ul class="accordion-section-content redux-main">
143
+
144
+ <li class="customize-section-description-container">
145
+ <div class="customize-section-title">
146
+ <button class="customize-section-back" tabindex="-1">
147
+ <span class="screen-reader-text"><?php esc_html_e( 'Back', 'redux-framework' ); ?></span>
148
+ </button>
149
+ <h3>
150
+ <span class="customize-action">
151
+ {{{ data.customizeAction }}}
152
+ </span> {{ data.title }}
153
+ </h3>
154
+ </div>
155
+ <# if ( data.description ) { #>
156
+ <p class="description customize-section-description">{{{ data.description }}}</p>
157
+ <# } #>
158
+ <?php
159
+ if ( isset( $this->opt_name ) && isset( $this->section ) ) {
160
+ // phpcs:ignore WordPress.NamingConventions.ValidHookName
161
+ do_action( "redux/page/{$this->opt_name}/section/before", $this->section );
162
+ }
163
+ ?>
164
+ </li>
165
+ </ul>
166
+ </li>
167
+ <?php
168
  }
169
+
170
+
171
+
172
+
173
  }
redux-core/inc/extensions/customizer/redux-extension-customizer.css CHANGED
@@ -1,3 +1,5 @@
 
 
1
  .wp-customizer .redux-container .redux-main input { margin: 0 !important; }
2
 
3
  .wp-customizer .redux-container .redux-main input.spinner-input { margin-right: 30px !important; margin-left: 30px !important; margin-top: 0px !important; }
@@ -46,6 +48,6 @@
46
 
47
  .wp-customizer .customize-control-redux-raw { list-style: none; }
48
 
49
- /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkdXgtZXh0ZW5zaW9uLWN1c3RvbWl6ZXIuY3NzIiwic291cmNlcyI6WyJyZWR1eC1leHRlbnNpb24tY3VzdG9taXplci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBR1ksY0FIRSxDQUNWLGdCQUFnQixDQUNaLFdBQVcsQ0FDUCxLQUFLLENBQUMsRUFDRixNQUFNLEVBQUUsWUFBWSxHQUN2Qjs7QUFMYixBQU9ZLGNBUEUsQ0FDVixnQkFBZ0IsQ0FDWixXQUFXLENBS1AsS0FBSyxBQUFBLGNBQWMsQ0FBQyxFQUNoQixZQUFZLEVBQUUsZUFBZSxFQUM3QixXQUFXLEVBQUUsZUFBZSxFQUM1QixVQUFVLEVBQUUsY0FBYyxHQUM3Qjs7QUFYYixBQWdCUSxjQWhCTSxDQWVWLGNBQWMsQ0FDVixDQUFDLEFBQUEsOEJBQThCLENBQUMsRUFDNUIsVUFBVSxFQUFFLElBQUksRUFDaEIsVUFBVSxFQUFFLFVBQVUsR0FJekI7O0FBdEJULEFBbUJZLGNBbkJFLENBZVYsY0FBYyxDQUNWLENBQUMsQUFBQSw4QkFBOEIsQUFHMUIsT0FBTyxDQUFDLEVBQ0wsVUFBVSxFQUFFLEdBQUcsR0FDbEI7O0FBckJiLEFBeUJJLGNBekJVLENBeUJWLHVCQUF1QixDQUFDLHdCQUF3QixDQUFDLEVBQzdDLE1BQU0sRUFBRSxDQUFDLEdBQ1o7O0FBM0JMLEFBOEJRLGNBOUJNLENBNkJWLG1CQUFtQixDQUNmLFlBQVksQ0FBQyxFQUNULE9BQU8sRUFBRSxLQUFLLEdBQ2pCOztBQWhDVCxBQWlDUSxjQWpDTSxDQTZCVixtQkFBbUIsQ0FJZixlQUFlLENBQUMsRUFDWixhQUFhLEVBQUUsQ0FBQyxHQUNuQjs7QUFuQ1QsQUFvQ1EsY0FwQ00sQ0E2QlYsbUJBQW1CLENBT2YsY0FBYyxDQUFDLDBCQUEwQixDQUFDLEVBQ3RDLFVBQVUsRUFBRSxPQUFPLEdBQ3RCOztBQXRDVCxBQXlDSSxjQXpDVSxDQXlDVixjQUFjLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxFQXpDN0MsY0FBYyxD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 */
50
 
51
  /*# sourceMappingURL=redux-extension-customizer.css.map */
1
+ .wp-customizer .redux-container { overflow: visible; }
2
+
3
  .wp-customizer .redux-container .redux-main input { margin: 0 !important; }
4
 
5
  .wp-customizer .redux-container .redux-main input.spinner-input { margin-right: 30px !important; margin-left: 30px !important; margin-top: 0px !important; }
48
 
49
  .wp-customizer .customize-control-redux-raw { list-style: none; }
50
 
51
+ /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkdXgtZXh0ZW5zaW9uLWN1c3RvbWl6ZXIuY3NzIiwic291cmNlcyI6WyJyZWR1eC1leHRlbnNpb24tY3VzdG9taXplci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBQ0ksY0FEVSxDQUNWLGdCQUFnQixDQUFDLEVBQ2IsUUFBUSxFQUFFLE9BQU8sR0FZcEI7O0FBZEwsQUFJWSxjQUpFLENBQ1YsZ0JBQWdCLENBRVosV0FBVyxDQUNQLEtBQUssQ0FBQyxFQUNGLE1BQU0sRUFBRSxZQUFZLEdBQ3ZCOztBQU5iLEFBUVksY0FSRSxDQUNWLGdCQUFnQixDQUVaLFdBQVcsQ0FLUCxLQUFLLEFBQUEsY0FBYyxDQUFDLEVBQ2hCLFlBQVksRUFBRSxlQUFlLEVBQzdCLFdBQVcsRUFBRSxlQUFlLEVBQzVCLFVBQVUsRUFBRSxjQUFjLEdBQzdCOztBQVpiLEFBaUJRLGNBakJNLENBZ0JWLGNBQWMsQ0FDVixDQUFDLEFBQUEsOEJBQThCLENBQUMsRUFDNUIsVUFBVSxFQUFFLElBQUksRUFDaEIsVUFBVSxFQUFFLFVBQVUsR0FJekI7O0FBdkJULEFBb0JZLGNBcEJFLENBZ0JWLGNBQWMsQ0FDVixDQUFDLEFBQUEsOEJBQThCLEFBRzFCLE9BQU8sQ0FBQyxFQUNMLFVBQVUsRUFBRSxHQUFHLEdBQ2xCOztBQXRCYixBQTBCSSxjQTFCVSxDQTBCVix1QkFBdUIsQ0FBQyx3QkFBd0IsQ0FBQyxFQUM3QyxNQUFNLEVBQUUsQ0FBQyxHQUNaOztBQTVCTCxBQStCUSxjQS9CTSxDQThCVixtQkFBbUIsQ0FDZixZQUFZLENBQUMsRUFDVCxPQUFPLEVBQUUsS0FBSyxHQUNqQjs7QUFqQ1QsQUFrQ1EsY0FsQ00sQ0E4QlYsbUJBQW1CLENBSWYsZUFBZSxDQUFDLEVBQ1osYUFBYSxFQUFFLENBQUMsR0FDbkI7O0FBcENULEFBcUNRLGNBckNNLENBOEJWLG1CQUFtQixDQU9mLGNBQWMsQ0FBQywwQkFBMEIsQ0FBQyxFQUN0QyxVQUFVLEVBQUUsT0FBTyxHQUN0Qjs7QUF2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 */
52
 
53
  /*# sourceMappingURL=redux-extension-customizer.css.map */
redux-core/inc/extensions/customizer/redux-extension-customizer.css.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["redux-extension-customizer.scss","redux-extension-customizer.css"],"names":[],"mappings":"AAAA,oDAeI,oBACK,EAAA;;AAhBT,kEAyBI,6BAAwB,EChBZ,4BAA4B,EDoBxC,0BACI,EAAA;;AA9BR,gECiBY,gBAAgB,EDjB5B,sBA+CsB,EAAA;;AA/CtB,uEAyDI,eAAgB,EAAA;;AAzDpB,kEAAA,SA6DI,EAAA;;AA7DJ,kDC+BY,cAAc,EAAA;;AD/B1B,qDAAA,gBAsFQ,EAAA;;AAtFR,+ECqCY,mBAAmB,EAAA;;ADrC/B,yKAAA,iBA0GI,EAAA;;AA1GJ,+CCgDQ,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,2BAA2B,EAC3B,gBAAgB,EAChB,mBAAmB,EAAA;;ADtD3B,iCC0DQ,yBAAyB,EAAA;;AD1DjC,oDC+DY,eAAe,EAAA;;AD/D3B,6CCkEY,WAAW,EACX,WAAW,EACX,qBAAqB,EAAA;;ADpEjC,gDCuEY,0BAA0B,EAC1B,6BAA6B,EAC7B,sBAAsB,EAAA;;ADzElC,4DC4EY,eAAe,EAAA;;AD5E3B,iDC+EY,yBAAyB,EACzB,gBAAgB,EAAA;;ADhF5B,gDCmFY,6BAA6B,EAC7B,mBAAmB,EAAA;;ADpF/B,2DCuFY,gBAAgB,EAChB,iBAAiB,EAAA;;ADxF7B,qCC2FY,sBAAsB,EAAA;;AD3FlC,gCC8FY,mBAAmB,EAAA;;AD9F/B,kDCiGY,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EAAA;;ADnGjC,6DCsGY,WAAW,EAAA;;ADtGvB,kEC4GQ,eAAe,EAAA;;AD5GvB,8CCgHQ,gBAAgB,EAAA;;AAhExB,ixGAAixG","file":"redux-extension-customizer.css","sourcesContent":[".wp-customizer {\n .redux-container {\n .redux-main {\n input {\n margin: 0 !important;\n }\n\n input.spinner-input {\n margin-right: 30px !important;\n margin-left: 30px !important;\n margin-top: 0px !important;\n }\n }\n }\n\n .redux-section {\n p.customize-section-description {\n margin-top: 22px;\n word-break: break-word;\n &.legacy {\n margin-top: 7px;\n }\n }\n }\n\n .control-section-themes .accordion-section-title {\n margin: 0;\n }\n\n #customize-controls {\n .description {\n display: block;\n }\n .customize-info {\n margin-bottom: 0;\n }\n .redux-section .accordion-section-content {\n background: #fcfcfc;\n }\n }\n\n .redux-section .accordion-section-title i,\n .redux-field .accordion-field-title i,\n .redux-panel .accordion-section-title i {\n margin-right: 5px;\n }\n\n .accordion-section.redux-main {\n background: inherit;\n margin-left: inherit;\n border-left: inherit;\n -moz-box-shadow: inherit;\n -webkit-box-shadow: inherit;\n padding: inherit;\n box-shadow: inherit;\n }\n\n .redux_field_th {\n padding: 13px 0px 0px 0px;\n }\n\n .redux-main {\n .redux-field-container {\n padding: 10px 0;\n }\n .select_wrapper {\n float: none;\n width: 100%;\n display: inline-block;\n }\n .select2-container {\n margin-right: 0 !important;\n margin-bottom: 5px !important;\n width: 100% !important;\n }\n .select_wrapper:nth-child(odd) {\n margin-right: 0;\n }\n .redux-option-image {\n max-width: 42% !important;\n margin-right: 3%;\n }\n .customize-control {\n border-bottom: 1px solid #ddd;\n padding-bottom: 4px;\n }\n .customize-control:last-child {\n border-bottom: 0;\n padding-bottom: 0;\n }\n .upload {\n width: 100% !important;\n }\n h3 {\n margin-top: inherit;\n }\n .redux-container-raw {\n margin-top: 22px;\n word-break: break-word;\n padding: 0 !important;\n }\n .redux-container-password input {\n width: 100%;\n }\n }\n\n .select2-drop,\n .select2-container {\n z-index: 999999;\n }\n\n .customize-control-redux-raw {\n list-style: none;\n }\n}\n",".wp-customizer .redux-container .redux-main input { margin: 0 !important; }\n\n.wp-customizer .redux-container .redux-main input.spinner-input { margin-right: 30px !important; margin-left: 30px !important; margin-top: 0px !important; }\n\n.wp-customizer .redux-section p.customize-section-description { margin-top: 22px; word-break: break-word; }\n\n.wp-customizer .redux-section p.customize-section-description.legacy { margin-top: 7px; }\n\n.wp-customizer .control-section-themes .accordion-section-title { margin: 0; }\n\n.wp-customizer #customize-controls .description { display: block; }\n\n.wp-customizer #customize-controls .customize-info { margin-bottom: 0; }\n\n.wp-customizer #customize-controls .redux-section .accordion-section-content { background: #fcfcfc; }\n\n.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; }\n\n.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; }\n\n.wp-customizer .redux_field_th { padding: 13px 0px 0px 0px; }\n\n.wp-customizer .redux-main .redux-field-container { padding: 10px 0; }\n\n.wp-customizer .redux-main .select_wrapper { float: none; width: 100%; display: inline-block; }\n\n.wp-customizer .redux-main .select2-container { margin-right: 0 !important; margin-bottom: 5px !important; width: 100% !important; }\n\n.wp-customizer .redux-main .select_wrapper:nth-child(odd) { margin-right: 0; }\n\n.wp-customizer .redux-main .redux-option-image { max-width: 42% !important; margin-right: 3%; }\n\n.wp-customizer .redux-main .customize-control { border-bottom: 1px solid #ddd; padding-bottom: 4px; }\n\n.wp-customizer .redux-main .customize-control:last-child { border-bottom: 0; padding-bottom: 0; }\n\n.wp-customizer .redux-main .upload { width: 100% !important; }\n\n.wp-customizer .redux-main h3 { margin-top: inherit; }\n\n.wp-customizer .redux-main .redux-container-raw { margin-top: 22px; word-break: break-word; padding: 0 !important; }\n\n.wp-customizer .redux-main .redux-container-password input { width: 100%; }\n\n.wp-customizer .select2-drop, .wp-customizer .select2-container { z-index: 999999; }\n\n.wp-customizer .customize-control-redux-raw { list-style: none; }\n\n/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkdXgtZXh0ZW5zaW9uLWN1c3RvbWl6ZXIuY3NzIiwic291cmNlcyI6WyJyZWR1eC1leHRlbnNpb24tY3VzdG9taXplci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBR1ksY0FIRSxDQUNWLGdCQUFnQixDQUNaLFdBQVcsQ0FDUCxLQUFLLENBQUMsRUFDRixNQUFNLEVBQUUsWUFBWSxHQUN2Qjs7QUFMYixBQU9ZLGNBUEUsQ0FDVixnQkFBZ0IsQ0FDWixXQUFXLENBS1AsS0FBSyxBQUFBLGNBQWMsQ0FBQyxFQUNoQixZQUFZLEVBQUUsZUFBZSxFQUM3QixXQUFXLEVBQUUsZUFBZSxFQUM1QixVQUFVLEVBQUUsY0FBYyxHQUM3Qjs7QUFYYixBQWdCUSxjQWhCTSxDQWVWLGNBQWMsQ0FDVixDQUFDLEFBQUEsOEJBQThCLENBQUMsRUFDNUIsVUFBVSxFQUFFLElBQUksRUFDaEIsVUFBVSxFQUFFLFVBQVUsR0FJekI7O0FBdEJULEFBbUJZLGNBbkJFLENBZVYsY0FBYyxDQUNWLENBQUMsQUFBQSw4QkFBOEIsQUFHMUIsT0FBTyxDQUFDLEVBQ0wsVUFBVSxFQUFFLEdBQUcsR0FDbEI7O0FBckJiLEFBeUJJLGNBekJVLENBeUJWLHVCQUF1QixDQUFDLHdCQUF3QixDQUFDLEVBQzdDLE1BQU0sRUFBRSxDQUFDLEdBQ1o7O0FBM0JMLEFBOEJRLGNBOUJNLENBNkJWLG1CQUFtQixDQUNmLFlBQVksQ0FBQyxFQUNULE9BQU8sRUFBRSxLQUFLLEdBQ2pCOztBQWhDVCxBQWlDUSxjQWpDTSxDQTZCVixtQkFBbUIsQ0FJZixlQUFlLENBQUMsRUFDWixhQUFhLEVBQUUsQ0FBQyxHQUNuQjs7QUFuQ1QsQUFvQ1EsY0FwQ00sQ0E2QlYsbUJBQW1CLENBT2YsY0FBYyxDQUFDLDBCQUEwQixDQUFDLEVBQ3RDLFVBQVUsRUFBRSxPQUFPLEdBQ3RCOztBQXRDVCxBQXlDSSxjQXpDVSxDQXlDVixjQUFjLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxFQXpDN0MsY0FBYyxD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 */\n\n/*# sourceMappingURL=redux-extension-customizer.css.map */\n"]}
1
+ {"version":3,"sources":["redux-extension-customizer.scss","redux-extension-customizer.css"],"names":[],"mappings":"AAAA,kCAAA,iBACI,EAAA;;AADJ,oDCKgB,oBAAoB,EAAA;;ADLpC,kECSgB,6BAA6B,EDiBzC,4BAAwB,ECfZ,0BAA0B,EAAA;;ADX1C,gEAAA,gBA0CI,ECvBQ,sBAAsB,EAAA;;ADnBlC,uECqBgB,eAAe,EAAA;;ADrB/B,kEC2BQ,SAAS,EAAA;;AD3BjB,kDAAA,cA8De,EAAA;;AA9Df,qDCmCY,gBAAgB,EAAA;;ADnC5B,+EAAA,mBA2FQ,EAAA;;AA3FR,yKC6CQ,iBAAiB,EAAA;;AD7CzB,+CCiDQ,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,2BAA2B,EAC3B,gBAAgB,EAChB,mBAAmB,EAAA;;ADvD3B,iCC2DQ,yBAAyB,EAAA;;AD3DjC,oDCgEY,eAAe,EAAA;;ADhE3B,6CCmEY,WAAW,EACX,WAAW,EACX,qBAAqB,EAAA;;ADrEjC,gDCwEY,0BAA0B,EAC1B,6BAA6B,EAC7B,sBAAsB,EAAA;;AD1ElC,4DC6EY,eAAe,EAAA;;AD7E3B,iDCgFY,yBAAyB,EACzB,gBAAgB,EAAA;;ADjF5B,gDCoFY,6BAA6B,EAC7B,mBAAmB,EAAA;;ADrF/B,2DCwFY,gBAAgB,EAChB,iBAAiB,EAAA;;ADzF7B,qCC4FY,sBAAsB,EAAA;;AD5FlC,gCC+FY,mBAAmB,EAAA;;AD/F/B,kDCkGY,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EAAA;;ADpGjC,6DCuGY,WAAW,EAAA;;ADvGvB,kEC6GQ,eAAe,EAAA;;AD7GvB,8CCiHQ,gBAAgB,EAAA;;AA/DxB,i2GAAi2G","file":"redux-extension-customizer.css","sourcesContent":[".wp-customizer {\n .redux-container {\n overflow: visible;\n .redux-main {\n input {\n margin: 0 !important;\n }\n\n input.spinner-input {\n margin-right: 30px !important;\n margin-left: 30px !important;\n margin-top: 0px !important;\n }\n }\n }\n\n .redux-section {\n p.customize-section-description {\n margin-top: 22px;\n word-break: break-word;\n &.legacy {\n margin-top: 7px;\n }\n }\n }\n\n .control-section-themes .accordion-section-title {\n margin: 0;\n }\n\n #customize-controls {\n .description {\n display: block;\n }\n .customize-info {\n margin-bottom: 0;\n }\n .redux-section .accordion-section-content {\n background: #fcfcfc;\n }\n }\n\n .redux-section .accordion-section-title i,\n .redux-field .accordion-field-title i,\n .redux-panel .accordion-section-title i {\n margin-right: 5px;\n }\n\n .accordion-section.redux-main {\n background: inherit;\n margin-left: inherit;\n border-left: inherit;\n -moz-box-shadow: inherit;\n -webkit-box-shadow: inherit;\n padding: inherit;\n box-shadow: inherit;\n }\n\n .redux_field_th {\n padding: 13px 0px 0px 0px;\n }\n\n .redux-main {\n .redux-field-container {\n padding: 10px 0;\n }\n .select_wrapper {\n float: none;\n width: 100%;\n display: inline-block;\n }\n .select2-container {\n margin-right: 0 !important;\n margin-bottom: 5px !important;\n width: 100% !important;\n }\n .select_wrapper:nth-child(odd) {\n margin-right: 0;\n }\n .redux-option-image {\n max-width: 42% !important;\n margin-right: 3%;\n }\n .customize-control {\n border-bottom: 1px solid #ddd;\n padding-bottom: 4px;\n }\n .customize-control:last-child {\n border-bottom: 0;\n padding-bottom: 0;\n }\n .upload {\n width: 100% !important;\n }\n h3 {\n margin-top: inherit;\n }\n .redux-container-raw {\n margin-top: 22px;\n word-break: break-word;\n padding: 0 !important;\n }\n .redux-container-password input {\n width: 100%;\n }\n }\n\n .select2-drop,\n .select2-container {\n z-index: 999999;\n }\n\n .customize-control-redux-raw {\n list-style: none;\n }\n}\n",".wp-customizer .redux-container .redux-main input { margin: 0 !important; }\n\n.wp-customizer .redux-container .redux-main input.spinner-input { margin-right: 30px !important; margin-left: 30px !important; margin-top: 0px !important; }\n\n.wp-customizer .redux-section p.customize-section-description { margin-top: 22px; word-break: break-word; }\n\n.wp-customizer .redux-section p.customize-section-description.legacy { margin-top: 7px; }\n\n.wp-customizer .control-section-themes .accordion-section-title { margin: 0; }\n\n.wp-customizer #customize-controls .description { display: block; }\n\n.wp-customizer #customize-controls .customize-info { margin-bottom: 0; }\n\n.wp-customizer #customize-controls .redux-section .accordion-section-content { background: #fcfcfc; }\n\n.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; }\n\n.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; }\n\n.wp-customizer .redux_field_th { padding: 13px 0px 0px 0px; }\n\n.wp-customizer .redux-main .redux-field-container { padding: 10px 0; }\n\n.wp-customizer .redux-main .select_wrapper { float: none; width: 100%; display: inline-block; }\n\n.wp-customizer .redux-main .select2-container { margin-right: 0 !important; margin-bottom: 5px !important; width: 100% !important; }\n\n.wp-customizer .redux-main .select_wrapper:nth-child(odd) { margin-right: 0; }\n\n.wp-customizer .redux-main .redux-option-image { max-width: 42% !important; margin-right: 3%; }\n\n.wp-customizer .redux-main .customize-control { border-bottom: 1px solid #ddd; padding-bottom: 4px; }\n\n.wp-customizer .redux-main .customize-control:last-child { border-bottom: 0; padding-bottom: 0; }\n\n.wp-customizer .redux-main .upload { width: 100% !important; }\n\n.wp-customizer .redux-main h3 { margin-top: inherit; }\n\n.wp-customizer .redux-main .redux-container-raw { margin-top: 22px; word-break: break-word; padding: 0 !important; }\n\n.wp-customizer .redux-main .redux-container-password input { width: 100%; }\n\n.wp-customizer .select2-drop, .wp-customizer .select2-container { z-index: 999999; }\n\n.wp-customizer .customize-control-redux-raw { list-style: none; }\n\n/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkdXgtZXh0ZW5zaW9uLWN1c3RvbWl6ZXIuY3NzIiwic291cmNlcyI6WyJyZWR1eC1leHRlbnNpb24tY3VzdG9taXplci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBR1ksY0FIRSxDQUNWLGdCQUFnQixDQUNaLFdBQVcsQ0FDUCxLQUFLLENBQUMsRUFDRixNQUFNLEVBQUUsWUFBWSxHQUN2Qjs7QUFMYixBQU9ZLGNBUEUsQ0FDVixnQkFBZ0IsQ0FDWixXQUFXLENBS1AsS0FBSyxBQUFBLGNBQWMsQ0FBQyxFQUNoQixZQUFZLEVBQUUsZUFBZSxFQUM3QixXQUFXLEVBQUUsZUFBZSxFQUM1QixVQUFVLEVBQUUsY0FBYyxHQUM3Qjs7QUFYYixBQWdCUSxjQWhCTSxDQWVWLGNBQWMsQ0FDVixDQUFDLEFBQUEsOEJBQThCLENBQUMsRUFDNUIsVUFBVSxFQUFFLElBQUksRUFDaEIsVUFBVSxFQUFFLFVBQVUsR0FJekI7O0FBdEJULEFBbUJZLGNBbkJFLENBZVYsY0FBYyxDQUNWLENBQUMsQUFBQSw4QkFBOEIsQUFHMUIsT0FBTyxDQUFDLEVBQ0wsVUFBVSxFQUFFLEdBQUcsR0FDbEI7O0FBckJiLEFBeUJJLGNBekJVLENBeUJWLHVCQUF1QixDQUFDLHdCQUF3QixDQUFDLEVBQzdDLE1BQU0sRUFBRSxDQUFDLEdBQ1o7O0FBM0JMLEFBOEJRLGNBOUJNLENBNkJWLG1CQUFtQixDQUNmLFlBQVksQ0FBQyxFQUNULE9BQU8sRUFBRSxLQUFLLEdBQ2pCOztBQWhDVCxBQWlDUSxjQWpDTSxDQTZCVixtQkFBbUIsQ0FJZixlQUFlLENBQUMsRUFDWixhQUFhLEVBQUUsQ0FBQyxHQUNuQjs7QUFuQ1QsQUFvQ1EsY0FwQ00sQ0E2QlYsbUJBQW1CLENBT2YsY0FBYyxDQUFDLDBCQUEwQixDQUFDLEVBQ3RDLFVBQVUsRUFBRSxPQUFPLEdBQ3RCOztBQXRDVCxBQXlDSSxjQXpDVSxDQXlDVixjQUFjLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxFQXpDN0MsY0FBYyxD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 */\n\n/*# sourceMappingURL=redux-extension-customizer.css.map */\n"]}
redux-core/inc/extensions/customizer/redux-extension-customizer.js CHANGED
@@ -391,6 +391,11 @@
391
  }
392
  );
393
 
 
 
 
 
 
394
  redux.optName.args.disable_save_warn = true;
395
  reduxChange = redux_change;
396
  redux_change = function( variable ) {
391
  }
392
  );
393
 
394
+ if ( undefined === redux.optName ) {
395
+ console.log( 'Redux customizer extension failure' );
396
+ return;
397
+ }
398
+
399
  redux.optName.args.disable_save_warn = true;
400
  reduxChange = redux_change;
401
  redux_change = function( variable ) {
redux-core/inc/extensions/customizer/redux-extension-customizer.min.js CHANGED
@@ -1 +1 @@
1
- !function(l){"use strict";l.fn.serializeJSON=function(e){var r,t,i,s,u=l.serializeJSON,a=u.setupOpts(e),n=this.serializeArray();return u.readCheckboxUncheckedValues(n,this,a),r={},l.each(n,function(e,n){t=u.splitInputNameIntoKeysArray(n.name,a),"skip"!==(i=t.pop())&&(s=u.parseValue(n.value,i,a),a.parseWithFunction&&"_"===i&&(s=a.parseWithFunction(s,n.name)),u.deepSet(r,t,s,a))}),r},l.serializeJSON={defaultOptions:{checkboxUncheckedValue:void 0,parseNumbers:!1,parseBooleans:!1,parseNulls:!1,parseAll:!1,parseWithFunction:null,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)?null:e},array:function(e){return JSON.parse(e)},object:function(e){return JSON.parse(e)},auto:function(e){return l.serializeJSON.parseValue(e,null,{parseNumbers:!0,parseBooleans:!0,parseNulls:!0})}},useIntKeysAsArrayIndex:!1},setupOpts:function(n){var e,r,t,i,s,u=l.serializeJSON;for(e in null==n&&(n={}),t=u.defaultOptions||{},r=["checkboxUncheckedValue","parseNumbers","parseBooleans","parseNulls","parseAll","parseWithFunction","customTypes","defaultTypes","useIntKeysAsArrayIndex"],n)if(-1===r.indexOf(e))throw new Error("serializeJSON ERROR: invalid option "+e+". Please use one of "+r.join(", "));return s=(i=function(e){return!1!==n[e]&&""!==n[e]&&(n[e]||t[e])})("parseAll"),{checkboxUncheckedValue:i("checkboxUncheckedValue"),parseNumbers:s||i("parseNumbers"),parseBooleans:s||i("parseBooleans"),parseNulls:s||i("parseNulls"),parseWithFunction:i("parseWithFunction"),typeFunctions:l.extend({},i("defaultTypes"),i("customTypes")),useIntKeysAsArrayIndex:i("useIntKeysAsArrayIndex")}},parseValue:function(e,n,r){var t=l.serializeJSON,i=r.typeFunctions&&r.typeFunctions[n];return i?i(e):r.parseNumbers&&t.isNumeric(e)?Number(e):!r.parseBooleans||"true"!==e&&"false"!==e?r.parseNulls&&"null"===e?null:e:"true"===e},isObject:function(e){return e===Object(e)},isUndefined:function(e){return void 0===e},isValidArrayIndex:function(e){return/^[0-9]+$/.test(String(e))},isNumeric:function(e){return 0<=e-parseFloat(e)},optionKeys:function(e){var n,r;if(Object.keys)return Object.keys(e);for(r in n=[],e)e.hasOwnProperty(r)&&n.push(r);return n},splitInputNameIntoKeysArray:function(e,n){var r=l.serializeJSON.extractTypeFromInputName(e,n),t=r[0],i=r[1],s=t.split("[");return""===(s=l.map(s,function(e){return e.replace(/]/g,"")}))[0]&&s.shift(),s.push(i),s},extractTypeFromInputName:function(e,n){var r,t,i=e.match(/(.*):([^:]+)$/);if(i){if((r=(t=l.serializeJSON).optionKeys(n?n.typeFunctions:t.defaultOptions.defaultTypes)).push("skip"),-1!==r.indexOf(i[2]))return[i[1],i[2]];throw new Error("serializeJSON ERROR: Invalid type "+i[2]+' found in input name "'+e+'", please use one of '+r.join(", "))}return[e,"_"]},deepSet:function(e,n,r,t){var i,s,u,a,o,c;if(null===t&&(t={}),(c=l.serializeJSON).isUndefined(e))throw new Error("ArgumentError: param 'o' expected to be an object or array, found undefined");if(!n||0===n.length)throw new Error("ArgumentError: param 'keys' expected to be an array with least one element");i=n[0],1===n.length?""===i?e.push(r):e[i]=r:(s=n[1],""===i&&(o=e[a=e.length-1],i=c.isObject(o)&&(c.isUndefined(o[s])||2<n.length)?a:1+a),""===s||t.useIntKeysAsArrayIndex&&c.isValidArrayIndex(s)?!c.isUndefined(e[i])&&l.isArray(e[i])||(e[i]=[]):!c.isUndefined(e[i])&&c.isObject(e[i])||(e[i]={}),u=n.slice(1),c.deepSet(e[i],u,r,t))},readCheckboxUncheckedValues:function(r,e,t){var n,i,s,u;null===t&&(t={}),u=l.serializeJSON,n="input[type=checkbox][name]:not(:checked):not([disabled])",e.find(n).add(e.filter(n)).each(function(e,n){i=l(n),(s=i.attr("data-unchecked-value"))?r.push({name:n.name,value:s}):u.isUndefined(t.checkboxUncheckedValue)||r.push({name:n.name,value:t.checkboxUncheckedValue})})}}}(window.jQuery||window.$),function(s){"use strict";redux.customizer=redux.customizer||{},s(document).ready(function(){redux.customizer.init()}),redux.customizer.init=function(){var n,e;s("body").addClass(redux.customizer.body_class),s(".accordion-section.redux-section, .accordion-section.redux-panel, .accordion-section-title").click(function(){s.redux.initFields()}),redux.optName.args.disable_save_warn=!0,n=redux_change,redux_change=function(e){e=s(e),n.apply(this,arguments),redux.customizer.save(e)},e=s.redux.initFields,s.redux.initFiles=function(){e()}},redux.customizer.save=function(e){var n=e.hasClass("redux-field")?e:e.parents(".redux-field-container:first");redux.customizer.inputSave(n)},redux.customizer.inputSave=function(e){var n,r,t,i;e.hasClass("redux-field-container")||(e=e.parents('[class^="redux-field-container"]')),n=(n=e.parent().find(".redux-customizer-input").data("id"))||(e=e.parents(".redux-container-repeater:first")).parent().find(".redux-customizer-input").data("id"),r=e.find(":input").serializeJSON(),s.each(r,function(e,n){r=n}),t=e.parent().find(".redux-customizer-input").data("key"),r[t]&&(r=r[t]),i=wp.customize.control(n),JSON.stringify(i.setting._value)!==JSON.stringify(r)&&(i.setting._value=null),i.setting.set(r)}}(jQuery);
1
+ !function(l){"use strict";l.fn.serializeJSON=function(e){var r,t,i,s,u=l.serializeJSON,a=u.setupOpts(e),n=this.serializeArray();return u.readCheckboxUncheckedValues(n,this,a),r={},l.each(n,function(e,n){t=u.splitInputNameIntoKeysArray(n.name,a),"skip"!==(i=t.pop())&&(s=u.parseValue(n.value,i,a),a.parseWithFunction&&"_"===i&&(s=a.parseWithFunction(s,n.name)),u.deepSet(r,t,s,a))}),r},l.serializeJSON={defaultOptions:{checkboxUncheckedValue:void 0,parseNumbers:!1,parseBooleans:!1,parseNulls:!1,parseAll:!1,parseWithFunction:null,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)?null:e},array:function(e){return JSON.parse(e)},object:function(e){return JSON.parse(e)},auto:function(e){return l.serializeJSON.parseValue(e,null,{parseNumbers:!0,parseBooleans:!0,parseNulls:!0})}},useIntKeysAsArrayIndex:!1},setupOpts:function(n){var e,r,t,i,s,u=l.serializeJSON;for(e in null==n&&(n={}),t=u.defaultOptions||{},r=["checkboxUncheckedValue","parseNumbers","parseBooleans","parseNulls","parseAll","parseWithFunction","customTypes","defaultTypes","useIntKeysAsArrayIndex"],n)if(-1===r.indexOf(e))throw new Error("serializeJSON ERROR: invalid option "+e+". Please use one of "+r.join(", "));return s=(i=function(e){return!1!==n[e]&&""!==n[e]&&(n[e]||t[e])})("parseAll"),{checkboxUncheckedValue:i("checkboxUncheckedValue"),parseNumbers:s||i("parseNumbers"),parseBooleans:s||i("parseBooleans"),parseNulls:s||i("parseNulls"),parseWithFunction:i("parseWithFunction"),typeFunctions:l.extend({},i("defaultTypes"),i("customTypes")),useIntKeysAsArrayIndex:i("useIntKeysAsArrayIndex")}},parseValue:function(e,n,r){var t=l.serializeJSON,i=r.typeFunctions&&r.typeFunctions[n];return i?i(e):r.parseNumbers&&t.isNumeric(e)?Number(e):!r.parseBooleans||"true"!==e&&"false"!==e?r.parseNulls&&"null"===e?null:e:"true"===e},isObject:function(e){return e===Object(e)},isUndefined:function(e){return void 0===e},isValidArrayIndex:function(e){return/^[0-9]+$/.test(String(e))},isNumeric:function(e){return 0<=e-parseFloat(e)},optionKeys:function(e){var n,r;if(Object.keys)return Object.keys(e);for(r in n=[],e)e.hasOwnProperty(r)&&n.push(r);return n},splitInputNameIntoKeysArray:function(e,n){var r=l.serializeJSON.extractTypeFromInputName(e,n),t=r[0],i=r[1],s=t.split("[");return""===(s=l.map(s,function(e){return e.replace(/]/g,"")}))[0]&&s.shift(),s.push(i),s},extractTypeFromInputName:function(e,n){var r,t,i=e.match(/(.*):([^:]+)$/);if(i){if((r=(t=l.serializeJSON).optionKeys(n?n.typeFunctions:t.defaultOptions.defaultTypes)).push("skip"),-1!==r.indexOf(i[2]))return[i[1],i[2]];throw new Error("serializeJSON ERROR: Invalid type "+i[2]+' found in input name "'+e+'", please use one of '+r.join(", "))}return[e,"_"]},deepSet:function(e,n,r,t){var i,s,u,a,o,c;if(null===t&&(t={}),(c=l.serializeJSON).isUndefined(e))throw new Error("ArgumentError: param 'o' expected to be an object or array, found undefined");if(!n||0===n.length)throw new Error("ArgumentError: param 'keys' expected to be an array with least one element");i=n[0],1===n.length?""===i?e.push(r):e[i]=r:(s=n[1],""===i&&(o=e[a=e.length-1],i=c.isObject(o)&&(c.isUndefined(o[s])||2<n.length)?a:1+a),""===s||t.useIntKeysAsArrayIndex&&c.isValidArrayIndex(s)?!c.isUndefined(e[i])&&l.isArray(e[i])||(e[i]=[]):!c.isUndefined(e[i])&&c.isObject(e[i])||(e[i]={}),u=n.slice(1),c.deepSet(e[i],u,r,t))},readCheckboxUncheckedValues:function(r,e,t){var n,i,s,u;null===t&&(t={}),u=l.serializeJSON,n="input[type=checkbox][name]:not(:checked):not([disabled])",e.find(n).add(e.filter(n)).each(function(e,n){i=l(n),(s=i.attr("data-unchecked-value"))?r.push({name:n.name,value:s}):u.isUndefined(t.checkboxUncheckedValue)||r.push({name:n.name,value:t.checkboxUncheckedValue})})}}}(window.jQuery||window.$),function(s){"use strict";redux.customizer=redux.customizer||{},s(document).ready(function(){redux.customizer.init()}),redux.customizer.init=function(){var n,e;s("body").addClass(redux.customizer.body_class),s(".accordion-section.redux-section, .accordion-section.redux-panel, .accordion-section-title").click(function(){s.redux.initFields()}),void 0!==redux.optName?(redux.optName.args.disable_save_warn=!0,n=redux_change,redux_change=function(e){e=s(e),n.apply(this,arguments),redux.customizer.save(e)},e=s.redux.initFields,s.redux.initFiles=function(){e()}):console.log("Redux customizer extension failure")},redux.customizer.save=function(e){var n=e.hasClass("redux-field")?e:e.parents(".redux-field-container:first");redux.customizer.inputSave(n)},redux.customizer.inputSave=function(e){var n,r,t,i;e.hasClass("redux-field-container")||(e=e.parents('[class^="redux-field-container"]')),n=(n=e.parent().find(".redux-customizer-input").data("id"))||(e=e.parents(".redux-container-repeater:first")).parent().find(".redux-customizer-input").data("id"),r=e.find(":input").serializeJSON(),s.each(r,function(e,n){r=n}),t=e.parent().find(".redux-customizer-input").data("key"),r[t]&&(r=r[t]),i=wp.customize.control(n),JSON.stringify(i.setting._value)!==JSON.stringify(r)&&(i.setting._value=null),i.setting.set(r)}}(jQuery);
redux-core/inc/extensions/customizer/redux-extension-customizer.scss CHANGED
@@ -1,5 +1,6 @@
1
  .wp-customizer {
2
  .redux-container {
 
3
  .redux-main {
4
  input {
5
  margin: 0 !important;
1
  .wp-customizer {
2
  .redux-container {
3
+ overflow: visible;
4
  .redux-main {
5
  input {
6
  margin: 0 !important;
redux-core/inc/extensions/import_export/import_export/redux-import-export.js CHANGED
@@ -7,9 +7,7 @@
7
  redux.field_objects.import_export = redux.field_objects.import_export || {};
8
 
9
  redux.field_objects.import_export.init = function( selector ) {
10
- if ( ! selector ) {
11
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-import_export:visible' );
12
- }
13
 
14
  $( selector ).each(
15
  function() {
7
  redux.field_objects.import_export = redux.field_objects.import_export || {};
8
 
9
  redux.field_objects.import_export.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'import_export' );
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/extensions/import_export/import_export/redux-import-export.min.js CHANGED
@@ -1 +1 @@
1
- !function(u){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.import_export=redux.field_objects.import_export||{},redux.field_objects.import_export.init=function(e){e=e||u(document).find(".redux-group-tab:visible").find(".redux-container-import_export:visible"),u(e).each(function(){var e,i,t=u(this),o=t;t.hasClass("redux-field-container")||(o=t.parents(".redux-field-container:first")),o.is(":hidden")||o.hasClass("redux-field-init")&&(o.removeClass("redux-field-init"),t.each(function(){u("#redux-import").click(function(e){if(""===u("#import-code-value").val()&&""===u("#import-link-value").val())return e.preventDefault(),!1}),u(this).find("#redux-import-code-button").click(function(){var e=u("#redux-import-code-wrapper");u("#redux-import-link-wrapper").is(":visible")?(u("#import-link-value").text(""),u("#redux-import-link-wrapper").slideUp("fast",function(){e.slideDown("fast",function(){u("#import-code-value").focus()})})):e.is(":visible")?e.slideUp():e.slideDown("medium",function(){u("#import-code-value").focus()})}),u(this).find("#redux-import-link-button").click(function(){var e=u("#redux-import-link-wrapper");u("#redux-import-code-wrapper").is(":visible")?(u("#import-code-value").text(""),u("#redux-import-code-wrapper").slideUp("fast",function(){e.slideDown("fast",function(){u("#import-link-value").focus()})})):e.is(":visible")?e.slideUp():e.slideDown("medium",function(){u("#import-link-value").focus()})}),u(this).find("#redux-export-code-copy").click(function(){var e=u("#redux-export-code");u("#redux-export-link-value").is(":visible")?u("#redux-export-link-value").slideUp("fast",function(){e.slideDown("medium",function(){var e=redux.optName.options;e["redux-backup"]=1,u(this).text(JSON.stringify(e)).focus().select()})}):e.is(":visible")?e.slideUp().text(""):e.slideDown("medium",function(){var e=redux.optName.options;e["redux-backup"]=1,u(this).text(JSON.stringify(e)).focus().select()})}),u(this).find("textarea").focusout(function(){var e=u(this).attr("id"),i=u(this),t=i;"import-link-value"!==e&&"import-code-value"!==e||(t=u(this).parent()),t.slideUp("medium",function(){"redux-export-link-value"!==e&&i.text("")})}),u(this).find("#redux-export-link").click(function(){var e=u("#redux-export-link-value");u("#redux-export-code").is(":visible")?u("#redux-export-code").slideUp("fast",function(){e.slideDown().focus().select()}):e.is(":visible")?e.slideUp():e.slideDown("medium",function(){u(this).focus().select()})}),(e=document.getElementById("redux-export-code")).onfocus=function(){e.select(),e.onmouseup=function(){return e.onmouseup=null,!1}},(i=document.getElementById("import-code-value")).onfocus=function(){i.select(),i.onmouseup=function(){return i.onmouseup=null,!1}}}))})}}(jQuery);
1
+ !function(u){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.import_export=redux.field_objects.import_export||{},redux.field_objects.import_export.init=function(e){e=u.redux.getSelector(e,"import_export"),u(e).each(function(){var e,i,t=u(this),o=t;t.hasClass("redux-field-container")||(o=t.parents(".redux-field-container:first")),o.is(":hidden")||o.hasClass("redux-field-init")&&(o.removeClass("redux-field-init"),t.each(function(){u("#redux-import").click(function(e){if(""===u("#import-code-value").val()&&""===u("#import-link-value").val())return e.preventDefault(),!1}),u(this).find("#redux-import-code-button").click(function(){var e=u("#redux-import-code-wrapper");u("#redux-import-link-wrapper").is(":visible")?(u("#import-link-value").text(""),u("#redux-import-link-wrapper").slideUp("fast",function(){e.slideDown("fast",function(){u("#import-code-value").focus()})})):e.is(":visible")?e.slideUp():e.slideDown("medium",function(){u("#import-code-value").focus()})}),u(this).find("#redux-import-link-button").click(function(){var e=u("#redux-import-link-wrapper");u("#redux-import-code-wrapper").is(":visible")?(u("#import-code-value").text(""),u("#redux-import-code-wrapper").slideUp("fast",function(){e.slideDown("fast",function(){u("#import-link-value").focus()})})):e.is(":visible")?e.slideUp():e.slideDown("medium",function(){u("#import-link-value").focus()})}),u(this).find("#redux-export-code-copy").click(function(){var e=u("#redux-export-code");u("#redux-export-link-value").is(":visible")?u("#redux-export-link-value").slideUp("fast",function(){e.slideDown("medium",function(){var e=redux.optName.options;e["redux-backup"]=1,u(this).text(JSON.stringify(e)).focus().select()})}):e.is(":visible")?e.slideUp().text(""):e.slideDown("medium",function(){var e=redux.optName.options;e["redux-backup"]=1,u(this).text(JSON.stringify(e)).focus().select()})}),u(this).find("textarea").focusout(function(){var e=u(this).attr("id"),i=u(this),t=i;"import-link-value"!==e&&"import-code-value"!==e||(t=u(this).parent()),t.slideUp("medium",function(){"redux-export-link-value"!==e&&i.text("")})}),u(this).find("#redux-export-link").click(function(){var e=u("#redux-export-link-value");u("#redux-export-code").is(":visible")?u("#redux-export-code").slideUp("fast",function(){e.slideDown().focus().select()}):e.is(":visible")?e.slideUp():e.slideDown("medium",function(){u(this).focus().select()})}),(e=document.getElementById("redux-export-code")).onfocus=function(){e.select(),e.onmouseup=function(){return e.onmouseup=null,!1}},(i=document.getElementById("import-code-value")).onfocus=function(){i.select(),i.onmouseup=function(){return i.onmouseup=null,!1}}}))})}}(jQuery);
redux-core/inc/extensions/options_object/options_object/redux-options-object.js CHANGED
@@ -7,9 +7,7 @@
7
  redux.field_objects.options_object.init = function( selector ) {
8
  var parent;
9
 
10
- if ( ! selector ) {
11
- selector = $( document ).find( '.redux-container-options_object' );
12
- }
13
 
14
  parent = selector;
15
 
7
  redux.field_objects.options_object.init = function( selector ) {
8
  var parent;
9
 
10
+ selector = $.redux.getSelector( selector, 'options_object' );
 
 
11
 
12
  parent = selector;
13
 
redux-core/inc/extensions/options_object/options_object/redux-options-object.min.js CHANGED
@@ -1 +1 @@
1
- !function(t){redux.field_objects=redux.field_objects||{},redux.field_objects.options_object=redux.field_objects.options_object||{},redux.field_objects.options_object.init=function(e){var o;(o=e=e||t(document).find(".redux-container-options_object")).hasClass("redux-field-container")||(o=e.parents(".redux-field-container:first")),o.hasClass("redux-field-init")&&(o.removeClass("redux-field-init"),t("#consolePrintObject").on("click",function(e){e.preventDefault(),console.log(t.parseJSON(t("#redux-object-json").html()))}),"function"==typeof jsonView&&jsonView("#redux-object-json","#redux-object-browser"))}}(jQuery);
1
+ !function(t){redux.field_objects=redux.field_objects||{},redux.field_objects.options_object=redux.field_objects.options_object||{},redux.field_objects.options_object.init=function(e){var o;(o=e=t.redux.getSelector(e,"options_object")).hasClass("redux-field-container")||(o=e.parents(".redux-field-container:first")),o.hasClass("redux-field-init")&&(o.removeClass("redux-field-init"),t("#consolePrintObject").on("click",function(e){e.preventDefault(),console.log(t.parseJSON(t("#redux-object-json").html()))}),"function"==typeof jsonView&&jsonView("#redux-object-json","#redux-object-browser"))}}(jQuery);
redux-core/inc/fields/ace_editor/redux-ace-editor.js CHANGED
@@ -1,4 +1,4 @@
1
- /*global jQuery, document, redux, redux_change, ace */
2
 
3
  ( function( $ ) {
4
  'use strict';
@@ -7,9 +7,7 @@
7
  redux.field_objects.ace_editor = redux.field_objects.ace_editor || {};
8
 
9
  redux.field_objects.ace_editor.init = function( selector ) {
10
- if ( ! selector ) {
11
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-ace_editor:visible' );
12
- }
13
 
14
  $( selector ).each(
15
  function() {
1
+ /*global jQuery, redux, redux_change, ace */
2
 
3
  ( function( $ ) {
4
  'use strict';
7
  redux.field_objects.ace_editor = redux.field_objects.ace_editor || {};
8
 
9
  redux.field_objects.ace_editor.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'ace_editor' );
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/fields/ace_editor/redux-ace-editor.min.js CHANGED
@@ -1 +1 @@
1
- !function(s){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.ace_editor=redux.field_objects.ace_editor||{},redux.field_objects.ace_editor.init=function(e){e=e||s(document).find(".redux-group-tab:visible").find(".redux-container-ace_editor:visible"),s(e).each(function(){var n=s(this),e=n;n.hasClass("redux-field-container")||(e=n.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),n.find(".ace-editor").each(function(e,t){var i=t,a=JSON.parse(s(this).parent().find(".localize_data").val()),d=s(t).attr("data-editor"),r=ace.edit(d);r.setTheme("ace/theme/"+jQuery(t).attr("data-theme")),r.getSession().setMode("ace/mode/"+s(t).attr("data-mode")),n.hasClass("redux-field-container")?n.attr("data-id"):n.parents(".redux-field-container:first").attr("data-id"),r.setOptions(a),r.on("change",function(){s("#"+i.id).val(r.getSession().getValue()),redux_change(s(t)),r.resize()})}))})}}(jQuery);
1
+ !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.ace_editor=redux.field_objects.ace_editor||{},redux.field_objects.ace_editor.init=function(e){e=n.redux.getSelector(e,"ace_editor"),n(e).each(function(){var s=n(this),e=s;s.hasClass("redux-field-container")||(e=s.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),s.find(".ace-editor").each(function(e,t){var a=t,i=JSON.parse(n(this).parent().find(".localize_data").val()),d=n(t).attr("data-editor"),r=ace.edit(d);r.setTheme("ace/theme/"+jQuery(t).attr("data-theme")),r.getSession().setMode("ace/mode/"+n(t).attr("data-mode")),s.hasClass("redux-field-container")?s.attr("data-id"):s.parents(".redux-field-container:first").attr("data-id"),r.setOptions(i),r.on("change",function(){n("#"+a.id).val(r.getSession().getValue()),redux_change(n(t)),r.resize()})}))})}}(jQuery);
redux-core/inc/fields/background/redux-background.js CHANGED
@@ -14,9 +14,7 @@
14
  redux.field_objects.background = redux.field_objects.background || {};
15
 
16
  redux.field_objects.background.init = function( selector ) {
17
- if ( ! selector ) {
18
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-background:visible' );
19
- }
20
 
21
  $( selector ).each(
22
  function() {
14
  redux.field_objects.background = redux.field_objects.background || {};
15
 
16
  redux.field_objects.background.init = function( selector ) {
17
+ selector = $.redux.getSelector( selector, 'background' );
 
 
18
 
19
  $( selector ).each(
20
  function() {
redux-core/inc/fields/background/redux-background.min.js CHANGED
@@ -1 +1 @@
1
- !function(o){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.background=redux.field_objects.background||{},redux.field_objects.background.init=function(e){e=e||o(document).find(".redux-group-tab:visible").find(".redux-container-background:visible"),o(e).each(function(){var d=o(this),e=d;d.hasClass("redux-field-container")||(e=d.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),d.find(".redux-remove-background").unbind("click").on("click",function(e){return e.preventDefault(),redux.field_objects.background.removeImage(o(this).parents(".redux-container-background:first")),!1}),d.find(".redux-background-upload").unbind().on("click",function(e){redux.field_objects.background.addImage(e,o(this).parents(".redux-container-background:first"))}),d.find(".redux-background-input").on("change",function(){redux.field_objects.background.preview(o(this))}),d.find(".redux-color").wpColorPicker({change:function(e,i){o(this).val(i.color.toString()),redux_change(o(this)),o("#"+e.target.id+"-transparency").removeAttr("checked"),redux.field_objects.background.preview(o(this))},clear:function(e){redux_change(o(this).parent().find(".redux-color-init")),redux.field_objects.background.preview(o(this))}}),d.find(".redux-color").on("blur",function(){var e=o(this).val(),i="#"+o(this).attr("id");"transparent"===e?(o(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),d.find(i+"-transparency").attr("checked","checked")):(colorValidate(this)===e&&0!==e.indexOf("#")&&o(this).val(o(this).data("oldcolor")),d.find(i+"-transparency").removeAttr("checked"))}),d.find(".redux-color").on("focus",function(){o(this).data("oldcolor",o(this).val())}),d.find(".redux-color").on("keyup",function(){var e=o(this).val(),i=colorValidate(this),r="#"+o(this).attr("id");"transparent"===e?(o(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),d.find(r+"-transparency").attr("checked","checked")):(d.find(r+"-transparency").removeAttr("checked"),i&&i!==o(this).val()&&o(this).val(i))}),d.find(".color-transparency").on("click",function(){var e;o(this).is(":checked")?(d.find(".redux-saved-color").val(o("#"+o(this).data("id")).val()),d.find("#"+o(this).data("id")).val("transparent"),d.find("#"+o(this).data("id")).parents(".redux-field-container").find(".wp-color-result").css("background-color","transparent")):(""===(e=o(this).parents(".redux-field-container").find(".redux-saved-color").val())&&(e=o("#"+o(this).data("id")).data("default-color")),d.find("#"+o(this).data("id")).parents(".redux-field-container").find(".wp-color-result").css("background-color",e),d.find("#"+o(this).data("id")).val(e)),redux_change(o(this))}),d.find(" .redux-background-repeat, .redux-background-clip, .redux-background-origin, .redux-background-size, .redux-background-attachment, .redux-background-position").select2())})},redux.field_objects.background.preview=function(e){var i,r=!0,d=o(e).parents(".redux-container-background:first"),t=o(d).find(".background-preview");t&&(i="height:"+t.height()+"px;",o(d).find(".redux-background-input").each(function(){var e=o(this).serializeArray();(e=e[0])&&-1!==e.name.indexOf("[background-")&&""!==e.value&&(r=!1,e.name=e.name.split("[background-"),e.name="background-"+e.name[1].replace("]",""),"background-image"===e.name?i+=e.name+':url("'+e.value+'");':i+=e.name+":"+e.value+";")}),r?t.slideUp():t.attr("style",i).fadeIn())},redux.field_objects.background.addImage=function(e,n){var a,i=o(this);e.preventDefault(),a||(a=wp.media({multiple:!1,library:{},title:i.data("choose"),button:{text:i.data("update")}})).on("select",function(){var e,i,r,d,t=a.state().get("selection").first();if(a.close(),"image"===t.attributes.type){if(n.find(".upload").val(t.attributes.url),n.find(".upload-id").val(t.attributes.id),n.find(".upload-height").val(t.attributes.height),n.find(".upload-width").val(t.attributes.width),redux_change(o(n).find(".upload-id")),e=t.attributes.url,void 0!==t.attributes.sizes&&void 0!==t.attributes.sizes.thumbnail)e=t.attributes.sizes.thumbnail.url;else if(void 0!==t.attributes.sizes)for(r in i=t.attributes.height,t.attributes.sizes)t.attributes.sizes.hasOwnProperty(r)&&(d=t.attributes.sizes[r]).height<i&&(i=d.height,e=d.url);else e=t.attributes.icon;n.find(".upload-thumbnail").val(e),n.find(".upload").hasClass("noPreview")||n.find(".screenshot").empty().hide().append('<img class="redux-option-image" src="'+e+'">').slideDown("fast"),n.find(".redux-remove-background").removeClass("hide"),n.find(".redux-background-input-properties").slideDown(),redux.field_objects.background.preview(n.find(".upload"))}}),a.open()},redux.field_objects.background.removeImage=function(e){e.find(".redux-remove-background").addClass("hide")&&(e.find(".redux-remove-background").addClass("hide"),e.find(".upload").val(""),e.find(".upload-id").val(""),e.find(".upload-height").val(""),e.find(".upload-width").val(""),redux_change(o(e).find(".upload-id")),e.find(".redux-background-input-properties").hide(),e.find(".screenshot").slideUp(),e.find(".remove-file").unbind(),0<o(".section-upload .upload-notice").length&&o(".redux-background-upload").remove())}}(jQuery);
1
+ !function(o){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.background=redux.field_objects.background||{},redux.field_objects.background.init=function(e){e=o.redux.getSelector(e,"background"),o(e).each(function(){var t=o(this),e=t;t.hasClass("redux-field-container")||(e=t.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),t.find(".redux-remove-background").unbind("click").on("click",function(e){return e.preventDefault(),redux.field_objects.background.removeImage(o(this).parents(".redux-container-background:first")),!1}),t.find(".redux-background-upload").unbind().on("click",function(e){redux.field_objects.background.addImage(e,o(this).parents(".redux-container-background:first"))}),t.find(".redux-background-input").on("change",function(){redux.field_objects.background.preview(o(this))}),t.find(".redux-color").wpColorPicker({change:function(e,i){o(this).val(i.color.toString()),redux_change(o(this)),o("#"+e.target.id+"-transparency").removeAttr("checked"),redux.field_objects.background.preview(o(this))},clear:function(e){redux_change(o(this).parent().find(".redux-color-init")),redux.field_objects.background.preview(o(this))}}),t.find(".redux-color").on("blur",function(){var e=o(this).val(),i="#"+o(this).attr("id");"transparent"===e?(o(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),t.find(i+"-transparency").attr("checked","checked")):(colorValidate(this)===e&&0!==e.indexOf("#")&&o(this).val(o(this).data("oldcolor")),t.find(i+"-transparency").removeAttr("checked"))}),t.find(".redux-color").on("focus",function(){o(this).data("oldcolor",o(this).val())}),t.find(".redux-color").on("keyup",function(){var e=o(this).val(),i=colorValidate(this),r="#"+o(this).attr("id");"transparent"===e?(o(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),t.find(r+"-transparency").attr("checked","checked")):(t.find(r+"-transparency").removeAttr("checked"),i&&i!==o(this).val()&&o(this).val(i))}),t.find(".color-transparency").on("click",function(){var e;o(this).is(":checked")?(t.find(".redux-saved-color").val(o("#"+o(this).data("id")).val()),t.find("#"+o(this).data("id")).val("transparent"),t.find("#"+o(this).data("id")).parents(".redux-field-container").find(".wp-color-result").css("background-color","transparent")):(""===(e=o(this).parents(".redux-field-container").find(".redux-saved-color").val())&&(e=o("#"+o(this).data("id")).data("default-color")),t.find("#"+o(this).data("id")).parents(".redux-field-container").find(".wp-color-result").css("background-color",e),t.find("#"+o(this).data("id")).val(e)),redux_change(o(this))}),t.find(" .redux-background-repeat, .redux-background-clip, .redux-background-origin, .redux-background-size, .redux-background-attachment, .redux-background-position").select2())})},redux.field_objects.background.preview=function(e){var i,r=!0,t=o(e).parents(".redux-container-background:first"),d=o(t).find(".background-preview");d&&(i="height:"+d.height()+"px;",o(t).find(".redux-background-input").each(function(){var e=o(this).serializeArray();(e=e[0])&&-1!==e.name.indexOf("[background-")&&""!==e.value&&(r=!1,e.name=e.name.split("[background-"),e.name="background-"+e.name[1].replace("]",""),"background-image"===e.name?i+=e.name+':url("'+e.value+'");':i+=e.name+":"+e.value+";")}),r?d.slideUp():d.attr("style",i).fadeIn())},redux.field_objects.background.addImage=function(e,a){var n,i=o(this);e.preventDefault(),n||(n=wp.media({multiple:!1,library:{},title:i.data("choose"),button:{text:i.data("update")}})).on("select",function(){var e,i,r,t,d=n.state().get("selection").first();if(n.close(),"image"===d.attributes.type){if(a.find(".upload").val(d.attributes.url),a.find(".upload-id").val(d.attributes.id),a.find(".upload-height").val(d.attributes.height),a.find(".upload-width").val(d.attributes.width),redux_change(o(a).find(".upload-id")),e=d.attributes.url,void 0!==d.attributes.sizes&&void 0!==d.attributes.sizes.thumbnail)e=d.attributes.sizes.thumbnail.url;else if(void 0!==d.attributes.sizes)for(r in i=d.attributes.height,d.attributes.sizes)d.attributes.sizes.hasOwnProperty(r)&&(t=d.attributes.sizes[r]).height<i&&(i=t.height,e=t.url);else e=d.attributes.icon;a.find(".upload-thumbnail").val(e),a.find(".upload").hasClass("noPreview")||a.find(".screenshot").empty().hide().append('<img class="redux-option-image" src="'+e+'">').slideDown("fast"),a.find(".redux-remove-background").removeClass("hide"),a.find(".redux-background-input-properties").slideDown(),redux.field_objects.background.preview(a.find(".upload"))}}),n.open()},redux.field_objects.background.removeImage=function(e){e.find(".redux-remove-background").addClass("hide")&&(e.find(".redux-remove-background").addClass("hide"),e.find(".upload").val(""),e.find(".upload-id").val(""),e.find(".upload-height").val(""),e.find(".upload-width").val(""),redux_change(o(e).find(".upload-id")),e.find(".redux-background-input-properties").hide(),e.find(".screenshot").slideUp(),e.find(".remove-file").unbind(),0<o(".section-upload .upload-notice").length&&o(".redux-background-upload").remove())}}(jQuery);
redux-core/inc/fields/border/redux-border.js CHANGED
@@ -11,9 +11,7 @@
11
  redux.field_objects.border = redux.field_objects.border || {};
12
 
13
  redux.field_objects.border.init = function( selector ) {
14
- if ( ! selector ) {
15
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-border:visible' );
16
- }
17
 
18
  $( selector ).each(
19
  function() {
11
  redux.field_objects.border = redux.field_objects.border || {};
12
 
13
  redux.field_objects.border.init = function( selector ) {
14
+ selector = $.redux.getSelector( selector, 'border' );
 
 
15
 
16
  $( selector ).each(
17
  function() {
redux-core/inc/fields/border/redux-border.min.js CHANGED
@@ -1 +1 @@
1
- !function(d){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.border=redux.field_objects.border||{},redux.field_objects.border.init=function(e){e=e||d(document).find(".redux-group-tab:visible").find(".redux-container-border:visible"),d(e).each(function(){var i=d(this),e=i;i.hasClass("redux-field-container")||(e=i.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),i.find(".redux-border-top, .redux-border-right, .redux-border-bottom, .redux-border-left, .redux-border-all").numeric({allowMinus:!1}),i.find(".redux-border-style").select2(),i.find(".redux-border-input").on("change",function(){var e,r=d(this).parents(".redux-field:first").find(".field-units").val();0!==d(this).parents(".redux-field:first").find(".redux-border-units").length&&(r=d(this).parents(".redux-field:first").find(".redux-border-units option:selected").val()),e=d(this).val(),void 0!==r&&e&&(e+=r),d(this).hasClass("redux-border-all")?d(this).parents(".redux-field:first").find(".redux-border-value").each(function(){d(this).val(e)}):d("#"+d(this).attr("rel")).val(e)}),i.find(".redux-border-units").on("change",function(){d(this).parents(".redux-field:first").find(".redux-border-input").change()}),i.find(".redux-color-init").wpColorPicker({change:function(e,r){d(this).val(r.color.toString()),redux_change(d(this)),i.find("#"+e.target.getAttribute("data-id")+"-transparency").removeAttr("checked")},clear:function(e,r){d(this).val(r.color.toString()),redux_change(d(this).parent().find(".redux-color-init"))}}),i.find(".redux-color").on("keyup",function(){var e=colorValidate(this);e&&e!==d(this).val()&&d(this).val(e)}),i.find(".redux-color").on("blur",function(){var e=d(this).val();colorValidate(this)===e&&0!==e.indexOf("#")&&d(this).val(d(this).data("oldcolor"))}),i.find(".redux-color").on("keydown",function(){d(this).data("oldkeypress",d(this).val())}))})}}(jQuery);
1
+ !function(t){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.border=redux.field_objects.border||{},redux.field_objects.border.init=function(e){e=t.redux.getSelector(e,"border"),t(e).each(function(){var i=t(this),e=i;i.hasClass("redux-field-container")||(e=i.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),i.find(".redux-border-top, .redux-border-right, .redux-border-bottom, .redux-border-left, .redux-border-all").numeric({allowMinus:!1}),i.find(".redux-border-style").select2(),i.find(".redux-border-input").on("change",function(){var e,r=t(this).parents(".redux-field:first").find(".field-units").val();0!==t(this).parents(".redux-field:first").find(".redux-border-units").length&&(r=t(this).parents(".redux-field:first").find(".redux-border-units option:selected").val()),e=t(this).val(),void 0!==r&&e&&(e+=r),t(this).hasClass("redux-border-all")?t(this).parents(".redux-field:first").find(".redux-border-value").each(function(){t(this).val(e)}):t("#"+t(this).attr("rel")).val(e)}),i.find(".redux-border-units").on("change",function(){t(this).parents(".redux-field:first").find(".redux-border-input").change()}),i.find(".redux-color-init").wpColorPicker({change:function(e,r){t(this).val(r.color.toString()),redux_change(t(this)),i.find("#"+e.target.getAttribute("data-id")+"-transparency").removeAttr("checked")},clear:function(e,r){t(this).val(r.color.toString()),redux_change(t(this).parent().find(".redux-color-init"))}}),i.find(".redux-color").on("keyup",function(){var e=colorValidate(this);e&&e!==t(this).val()&&t(this).val(e)}),i.find(".redux-color").on("blur",function(){var e=t(this).val();colorValidate(this)===e&&0!==e.indexOf("#")&&t(this).val(t(this).data("oldcolor"))}),i.find(".redux-color").on("keydown",function(){t(this).data("oldkeypress",t(this).val())}))})}}(jQuery);
redux-core/inc/fields/button_set/redux-button-set.js CHANGED
@@ -2,7 +2,7 @@
2
  * Field Button Set (button_set)
3
  */
4
 
5
- /*global jQuery, document, redux, redux_change */
6
 
7
  (function( $ ) {
8
  'use strict';
@@ -11,9 +11,7 @@
11
  redux.field_objects.button_set = redux.field_objects.button_set || {};
12
 
13
  redux.field_objects.button_set.init = function( selector ) {
14
- if ( ! selector ) {
15
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-button_set:visible' );
16
- }
17
 
18
  $( selector ).each(
19
  function() {
2
  * Field Button Set (button_set)
3
  */
4
 
5
+ /*global jQuery, redux, redux_change */
6
 
7
  (function( $ ) {
8
  'use strict';
11
  redux.field_objects.button_set = redux.field_objects.button_set || {};
12
 
13
  redux.field_objects.button_set.init = function( selector ) {
14
+ selector = $.redux.getSelector( selector, 'button_set' );
 
 
15
 
16
  $( selector ).each(
17
  function() {
redux-core/inc/fields/button_set/redux-button-set.min.js CHANGED
@@ -1 +1 @@
1
- !function(a){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.button_set=redux.field_objects.button_set||{},redux.field_objects.button_set.init=function(t){t=t||a(document).find(".redux-group-tab:visible").find(".redux-container-button_set:visible"),a(t).each(function(){var t=a(this),e=t;t.hasClass("redux-field-container")||(e=t.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),t.find(".buttonset").each(function(){a(this).is(":checkbox")&&a(this).find(".buttonset-item").button(),a(this).buttonset()}),t.find(".buttonset-item.multi").on("click",function(){var t="",e="",i=a(this).attr("id"),n=a(this).parent().find(".buttonset-empty"),s=n.attr("data-name"),d=!1;a(this).parent().find(".buttonset-item").each(function(){a(this).is(":checked")&&(d=!0)}),d?n.attr("name",""):n.attr("name",s),a(this).is(":checked")&&(t=a(this).attr("data-val"),e=s+"[]"),a(this).parent().find("#"+i+"-hidden.buttonset-check").val(t),a(this).parent().find("#"+i+"-hidden.buttonset-check").attr("name",e),redux_change(a(this))}))})}}(jQuery);
1
+ !function(a){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.button_set=redux.field_objects.button_set||{},redux.field_objects.button_set.init=function(t){t=a.redux.getSelector(t,"button_set"),a(t).each(function(){var t=a(this),e=t;t.hasClass("redux-field-container")||(e=t.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),t.find(".buttonset").each(function(){a(this).is(":checkbox")&&a(this).find(".buttonset-item").button(),a(this).buttonset()}),t.find(".buttonset-item.multi").on("click",function(){var t="",e="",i=a(this).attr("id"),n=a(this).parent().find(".buttonset-empty"),s=n.attr("data-name"),d=!1;a(this).parent().find(".buttonset-item").each(function(){a(this).is(":checked")&&(d=!0)}),d?n.attr("name",""):n.attr("name",s),a(this).is(":checked")&&(t=a(this).attr("data-val"),e=s+"[]"),a(this).parent().find("#"+i+"-hidden.buttonset-check").val(t),a(this).parent().find("#"+i+"-hidden.buttonset-check").attr("name",e),redux_change(a(this))}))})}}(jQuery);
redux-core/inc/fields/checkbox/redux-checkbox.js CHANGED
@@ -14,9 +14,7 @@
14
  redux.field_objects.checkbox = redux.field_objects.checkbox || {};
15
 
16
  redux.field_objects.checkbox.init = function( selector ) {
17
- if ( ! selector ) {
18
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-checkbox:visible' );
19
- }
20
 
21
  $( selector ).each(
22
  function() {
14
  redux.field_objects.checkbox = redux.field_objects.checkbox || {};
15
 
16
  redux.field_objects.checkbox.init = function( selector ) {
17
+ selector = $.redux.getSelector( selector, 'checkbox' );
 
 
18
 
19
  $( selector ).each(
20
  function() {
redux-core/inc/fields/checkbox/redux-checkbox.min.js CHANGED
@@ -1 +1 @@
1
- !function(c){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.checkbox=redux.field_objects.checkbox||{},redux.field_objects.checkbox.init=function(e){e=e||c(document).find(".redux-group-tab:visible").find(".redux-container-checkbox:visible"),c(e).each(function(){var e=c(this),i=e;e.hasClass("redux-field-container")||(i=e.parents(".redux-field-container:first")),i.is(":hidden")||i.hasClass("redux-field-init")&&(i.removeClass("redux-field-init"),e.find(".checkbox").on("click",function(){var e=0;c(this).is(":checked")&&(e=c(this).parent().find(".checkbox-check").attr("data-val")),c(this).parent().find(".checkbox-check").val(e),redux_change(c(this))}))})}}(jQuery);
1
+ !function(i){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.checkbox=redux.field_objects.checkbox||{},redux.field_objects.checkbox.init=function(e){e=i.redux.getSelector(e,"checkbox"),i(e).each(function(){var e=i(this),c=e;e.hasClass("redux-field-container")||(c=e.parents(".redux-field-container:first")),c.is(":hidden")||c.hasClass("redux-field-init")&&(c.removeClass("redux-field-init"),e.find(".checkbox").on("click",function(){var e=0;i(this).is(":checked")&&(e=i(this).parent().find(".checkbox-check").attr("data-val")),i(this).parent().find(".checkbox-check").val(e),redux_change(i(this))}))})}}(jQuery);
redux-core/inc/fields/color/redux-color.js CHANGED
@@ -2,7 +2,7 @@
2
  * Field Color (color)
3
  */
4
 
5
- /*global jQuery, document, redux_change, redux, colorValidate */
6
 
7
  (function( $ ) {
8
  'use strict';
@@ -11,10 +11,7 @@
11
  redux.field_objects.color = redux.field_objects.color || {};
12
 
13
  redux.field_objects.color.init = function( selector ) {
14
-
15
- if ( ! selector ) {
16
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-color:visible' );
17
- }
18
 
19
  $( selector ).each(
20
  function() {
2
  * Field Color (color)
3
  */
4
 
5
+ /*global jQuery, redux_change, redux, colorValidate */
6
 
7
  (function( $ ) {
8
  'use strict';
11
  redux.field_objects.color = redux.field_objects.color || {};
12
 
13
  redux.field_objects.color.init = function( selector ) {
14
+ selector = $.redux.getSelector( selector, 'color' );
 
 
 
15
 
16
  $( selector ).each(
17
  function() {
redux-core/inc/fields/color/redux-color.min.js CHANGED
@@ -1 +1 @@
1
- !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.color=redux.field_objects.color||{},redux.field_objects.color.init=function(t){t=t||n(document).find(".redux-group-tab:visible").find(".redux-container-color:visible"),n(t).each(function(){var i=n(this),t=i;i.hasClass("redux-field-container")||(t=i.parents(".redux-field-container:first")),t.is(":hidden")||t.hasClass("redux-field-init")&&(t.removeClass("redux-field-init"),i.find(".redux-color-init").wpColorPicker({change:function(t,r){n(this).val(r.color.toString()),redux_change(n(this)),i.find("#"+t.target.getAttribute("data-id")+"-transparency").removeAttr("checked")},clear:function(){n(this).val(""),redux_change(n(this).parent().find(".redux-color-init"))}}),i.find(".redux-color").on("focus",function(){n(this).data("oldcolor",n(this).val())}),i.find(".redux-color").on("keyup",function(){var t=n(this).val(),r=colorValidate(this),e="#"+n(this).attr("id");"transparent"===t?(n(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(e+"-transparency").attr("checked","checked")):(i.find(e+"-transparency").removeAttr("checked"),r&&r!==n(this).val()&&n(this).val(r))}),i.find(".redux-color").on("blur",function(){var t=n(this).val(),r="#"+n(this).attr("id");"transparent"===t?(n(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(r+"-transparency").attr("checked","checked")):(colorValidate(this)===t&&0!==t.indexOf("#")&&n(this).val(n(this).data("oldcolor")),i.find(r+"-transparency").removeAttr("checked"))}),i.find(".redux-color").on("keydown",function(){n(this).data("oldkeypress",n(this).val())}),i.find(".color-transparency").on("click",function(){var t;n(this).is(":checked")?(i.find(".redux-saved-color").val(n("#"+n(this).data("id")).val()),i.find("#"+n(this).data("id")).val("transparent"),i.find("#"+n(this).data("id")).parents(".redux-field-container").find(".wp-color-result").css("background-color","transparent")):(""===(t=n(this).parents(".redux-field-container").find(".redux-saved-color").val())&&(t=n("#"+n(this).data("id")).data("default-color")),i.find("#"+n(this).data("id")).parents(".redux-field-container").find(".wp-color-result").css("background-color",t),i.find("#"+n(this).data("id")).val(t)),redux_change(n(this))}))})}}(jQuery);
1
+ !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.color=redux.field_objects.color||{},redux.field_objects.color.init=function(t){t=n.redux.getSelector(t,"color"),n(t).each(function(){var i=n(this),t=i;i.hasClass("redux-field-container")||(t=i.parents(".redux-field-container:first")),t.is(":hidden")||t.hasClass("redux-field-init")&&(t.removeClass("redux-field-init"),i.find(".redux-color-init").wpColorPicker({change:function(t,r){n(this).val(r.color.toString()),redux_change(n(this)),i.find("#"+t.target.getAttribute("data-id")+"-transparency").removeAttr("checked")},clear:function(){n(this).val(""),redux_change(n(this).parent().find(".redux-color-init"))}}),i.find(".redux-color").on("focus",function(){n(this).data("oldcolor",n(this).val())}),i.find(".redux-color").on("keyup",function(){var t=n(this).val(),r=colorValidate(this),e="#"+n(this).attr("id");"transparent"===t?(n(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(e+"-transparency").attr("checked","checked")):(i.find(e+"-transparency").removeAttr("checked"),r&&r!==n(this).val()&&n(this).val(r))}),i.find(".redux-color").on("blur",function(){var t=n(this).val(),r="#"+n(this).attr("id");"transparent"===t?(n(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(r+"-transparency").attr("checked","checked")):(colorValidate(this)===t&&0!==t.indexOf("#")&&n(this).val(n(this).data("oldcolor")),i.find(r+"-transparency").removeAttr("checked"))}),i.find(".redux-color").on("keydown",function(){n(this).data("oldkeypress",n(this).val())}),i.find(".color-transparency").on("click",function(){var t;n(this).is(":checked")?(i.find(".redux-saved-color").val(n("#"+n(this).data("id")).val()),i.find("#"+n(this).data("id")).val("transparent"),i.find("#"+n(this).data("id")).parents(".redux-field-container").find(".wp-color-result").css("background-color","transparent")):(""===(t=n(this).parents(".redux-field-container").find(".redux-saved-color").val())&&(t=n("#"+n(this).data("id")).data("default-color")),i.find("#"+n(this).data("id")).parents(".redux-field-container").find(".wp-color-result").css("background-color",t),i.find("#"+n(this).data("id")).val(t)),redux_change(n(this))}))})}}(jQuery);
redux-core/inc/fields/color_gradient/redux-color-gradient.js CHANGED
@@ -2,7 +2,7 @@
2
  * Field Color Gradient
3
  */
4
 
5
- /*global jQuery, document, redux, colorValidate */
6
 
7
  ( function( $ ) {
8
  'use strict';
@@ -13,10 +13,7 @@
13
  redux.field_objects.color_gradient = redux.field_objects.color_gradient || {};
14
 
15
  redux.field_objects.color_gradient.init = function( selector ) {
16
-
17
- if ( ! selector ) {
18
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-color_gradient:visible' );
19
- }
20
 
21
  $( selector ).each(
22
  function() {
2
  * Field Color Gradient
3
  */
4
 
5
+ /*global jQuery, redux, colorValidate */
6
 
7
  ( function( $ ) {
8
  'use strict';
13
  redux.field_objects.color_gradient = redux.field_objects.color_gradient || {};
14
 
15
  redux.field_objects.color_gradient.init = function( selector ) {
16
+ selector = $.redux.getSelector( selector, 'color_gradient' );
 
 
 
17
 
18
  $( selector ).each(
19
  function() {
redux-core/inc/fields/color_gradient/redux-color-gradient.min.js CHANGED
@@ -1 +1 @@
1
- !function(a){"use strict";var t=!0;redux.field_objects=redux.field_objects||{},redux.field_objects.color_gradient=redux.field_objects.color_gradient||{},redux.field_objects.color_gradient.init=function(r){r=r||a(document).find(".redux-group-tab:visible").find(".redux-container-color_gradient:visible"),a(r).each(function(){var i=a(this),r=i;i.hasClass("redux-field-container")||(r=i.parents(".redux-field-container:first")),r.is(":hidden")||r.hasClass("redux-field-init")&&(r.removeClass("redux-field-init"),void 0===redux.field_objects.pro&&(t=!1),i.find(".redux-color-init").wpColorPicker({change:function(r,e){a(this).val(e.color.toString()),t&&redux.field_objects.pro.gradient_filters.changeValue(a(this),!0,"color_gradient"),i.find("#"+r.target.getAttribute("data-id")+"-transparency").removeAttr("checked")},clear:function(){a(this).val(""),t&&redux.field_objects.pro.gradient_filters.changeValue(a(this).parent().find(".redux-color-init"),!0,"color_gradient")}}),i.find(".redux-color").on("keyup",function(){var r=a(this).val(),e=colorValidate(this),t="#"+a(this).attr("id");"transparent"===r?(a(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(t+"-transparency").attr("checked","checked")):(i.find(t+"-transparency").removeAttr("checked"),e&&e!==a(this).val()&&a(this).val(e))}),i.find(".redux-color").on("blur",function(){var r=a(this).val(),e="#"+a(this).attr("id");"transparent"===r?(a(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(e+"-transparency").attr("checked","checked")):(r===colorValidate(this)&&0!==r.indexOf("#")&&a(this).val(a(this).data("oldcolor")),i.find(e+"-transparency").removeAttr("checked"))}),i.find(".redux-color").on("keydown",function(){a(this).data("oldkeypress",a(this).val())}),i.find(".color-transparency").on("click",function(){var r;a(this).is(":checked")?(i.find(".redux-saved-color").val(a("#"+a(this).data("id")).val()),i.find("#"+a(this).data("id")).val("transparent"),i.find("#"+a(this).data("id")).parents(".colorGradient").find(".wp-color-result").css("background-color","transparent")):(""===(r=a(this).parents(".colorGradient").find(".redux-saved-color").val())&&(r=a("#"+a(this).data("id")).data("default-color")),i.find("#"+a(this).data("id")).parents(".colorGradient").find(".wp-color-result").css("background-color",r),i.find("#"+a(this).data("id")).val(r)),t&&redux.field_objects.pro.gradient_filters.changeValue(a(this),!0,"color_gradient"),redux_change(a(this))}))})}}(jQuery);
1
+ !function(a){"use strict";var t=!0;redux.field_objects=redux.field_objects||{},redux.field_objects.color_gradient=redux.field_objects.color_gradient||{},redux.field_objects.color_gradient.init=function(r){r=a.redux.getSelector(r,"color_gradient"),a(r).each(function(){var i=a(this),r=i;i.hasClass("redux-field-container")||(r=i.parents(".redux-field-container:first")),r.is(":hidden")||r.hasClass("redux-field-init")&&(r.removeClass("redux-field-init"),void 0===redux.field_objects.pro&&(t=!1),i.find(".redux-color-init").wpColorPicker({change:function(r,e){a(this).val(e.color.toString()),t&&redux.field_objects.pro.gradient_filters.changeValue(a(this),!0,"color_gradient"),i.find("#"+r.target.getAttribute("data-id")+"-transparency").removeAttr("checked")},clear:function(){a(this).val(""),t&&redux.field_objects.pro.gradient_filters.changeValue(a(this).parent().find(".redux-color-init"),!0,"color_gradient")}}),i.find(".redux-color").on("keyup",function(){var r=a(this).val(),e=colorValidate(this),t="#"+a(this).attr("id");"transparent"===r?(a(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(t+"-transparency").attr("checked","checked")):(i.find(t+"-transparency").removeAttr("checked"),e&&e!==a(this).val()&&a(this).val(e))}),i.find(".redux-color").on("blur",function(){var r=a(this).val(),e="#"+a(this).attr("id");"transparent"===r?(a(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(e+"-transparency").attr("checked","checked")):(r===colorValidate(this)&&0!==r.indexOf("#")&&a(this).val(a(this).data("oldcolor")),i.find(e+"-transparency").removeAttr("checked"))}),i.find(".redux-color").on("keydown",function(){a(this).data("oldkeypress",a(this).val())}),i.find(".color-transparency").on("click",function(){var r;a(this).is(":checked")?(i.find(".redux-saved-color").val(a("#"+a(this).data("id")).val()),i.find("#"+a(this).data("id")).val("transparent"),i.find("#"+a(this).data("id")).parents(".colorGradient").find(".wp-color-result").css("background-color","transparent")):(""===(r=a(this).parents(".colorGradient").find(".redux-saved-color").val())&&(r=a("#"+a(this).data("id")).data("default-color")),i.find("#"+a(this).data("id")).parents(".colorGradient").find(".wp-color-result").css("background-color",r),i.find("#"+a(this).data("id")).val(r)),t&&redux.field_objects.pro.gradient_filters.changeValue(a(this),!0,"color_gradient"),redux_change(a(this))}))})}}(jQuery);
redux-core/inc/fields/color_rgba/redux-color-rgba.js CHANGED
@@ -28,9 +28,7 @@
28
  };
29
 
30
  redux.field_objects.color_rgba.init = function( selector ) {
31
- if ( ! selector ) {
32
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-color_rgba:visible' );
33
- }
34
 
35
  $( selector ).each(
36
  function() {
28
  };
29
 
30
  redux.field_objects.color_rgba.init = function( selector ) {
31
+ selector = $.redux.getSelector( selector, 'color_rgba' );
 
 
32
 
33
  $( selector ).each(
34
  function() {
redux-core/inc/fields/color_rgba/redux-color-rgba.min.js CHANGED
@@ -1 +1 @@
1
- !function(I){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.color_rgba=redux.field_objects.color_rgba||{},redux.field_objects.color_rgba.fieldID="",redux.field_objects.color_rgba.hexToRGBA=function(e,a){var t=null===e?"":(e=e.replace("#",""),"rgba("+parseInt(e.substring(0,2),16)+","+parseInt(e.substring(2,4),16)+","+parseInt(e.substring(4,6),16)+","+a+")");return t},redux.field_objects.color_rgba.init=function(e){e=e||I(document).find(".redux-group-tab:visible").find(".redux-container-color_rgba:visible"),I(e).each(function(){var e=I(this),a=e;e.hasClass("redux-field-container")||(a=e.parents(".redux-field-container:first")),a.is(":hidden")||a.hasClass("redux-field-init")&&(a.removeClass("redux-field-init"),redux.field_objects.color_rgba.modInit(e),redux.field_objects.color_rgba.initColorPicker(e))})},redux.field_objects.color_rgba.modInit=function(e){redux.field_objects.color_rgba.fieldID=e.find(".redux-color_rgba-container").data("id")},redux.field_objects.color_rgba.initColorPicker=function(c){var e=redux.field_objects.color_rgba.fieldID,a=c.find(".redux-color-rgba"),t=a.data("current-alpha"),o=a.data("current-color"),d=a.data("output-transparent"),r=c.find(".redux-color-rgba-container"),l=r.data("palette"),n=r.data("show-input"),f=r.data("show-initial"),i=r.data("show-alpha"),s=r.data("allow-empty"),u=r.data("show-palette"),b=r.data("show-palette-only"),x=r.data("show-selection-palette"),p=Number(r.data("max-palette-size")),g=r.data("clickout-fires-change"),h=String(r.data("choose-text")),_=String(r.data("cancel-text")),m=String(r.data("input-text")),w=r.data("show-buttons"),j=String(r.data("container-class")),B=String(r.data("replacer-class")),t=Number(null==t?1:t),o=""===o||"transparent"===o?"":o,d=Boolean(""!==d&&d),l=decodeURIComponent(l);null===(l=JSON.parse(l))&&(l=[["#000000","#434343","#666666","#999999","#b7b7b7","#cccccc","#d9d9d9","#efefef","#f3f3f3","#ffffff"],["#980000","#ff0000","#ff9900","#ffff00","#00ff00","#00ffff","#4a86e8","#0000ff","#9900ff","#ff00ff"],["#e6b8af","#f4cccc","#fce5cd","#fff2cc","#d9ead3","#d9ead3","#c9daf8","#cfe2f3","#d9d2e9","#ead1dc"],["#dd7e6b","#ea9999","#f9cb9c","#ffe599","#b6d7a8","#a2c4c9","#a4c2f4","#9fc5e8","#b4a7d6","#d5a6bd"],["#cc4125","#e06666","#f6b26b","#ffd966","#93c47d","#76a5af","#6d9eeb","#6fa8dc","#8e7cc3","#c27ba0"],["#a61c00","#cc0000","#e69138","#f1c232","#6aa84f","#45818e","#3c78d8","#3d85c6","#674ea7","#a64d79"],["#85200c","#990000","#b45f06","#bf9000","#38761d","#134f5c","#1155cc","#0b5394","#351c75","#741b47"],["#5b0f00","#660000","#783f04","#7f6000","#274e13","#0c343d","#1c4587","#073763","#20124d","#4c1130"]]),n=Boolean(""!==n&&n),f=Boolean(""!==f&&f),i=Boolean(""!==i&&i),s=Boolean(""!==s&&s),u=Boolean(""!==u&&u),b=Boolean(""!==b&&b),x=Boolean(""!==x&&x),g=Boolean(""!==g&&g),w=Boolean(""!==w&&w),a.spectrum({color:o,showAlpha:i,showInput:n,allowEmpty:s,className:"redux-color-rgba",showInitial:f,showPalette:u,showSelectionPalette:x,maxPaletteSize:p,showPaletteOnly:b,clickoutFiresChange:g,chooseText:h,cancelText:_,showButtons:w,containerClassName:j,replacerClassName:B,preferredFormat:"hex6",localStorageKey:"redux.color-rgba."+e,palette:l,inputText:m,change:function(e){var a,t=null===e?(a=!0===d?"transparent":null,null):(a=e.toHexString(),e.alpha),o="transparent"!==a?redux.field_objects.color_rgba.hexToRGBA(a,t):"transparent",r=I(this).data("block-id");c.find("input#"+r+"-color").val(a),c.find("input#"+r+"-alpha").val(t),c.find("input#"+r+"-rgba").val(o),redux_change(c.find(".redux-color-rgba-container"))}})}}(jQuery);
1
+ !function(I){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.color_rgba=redux.field_objects.color_rgba||{},redux.field_objects.color_rgba.fieldID="",redux.field_objects.color_rgba.hexToRGBA=function(e,a){var t=null===e?"":(e=e.replace("#",""),"rgba("+parseInt(e.substring(0,2),16)+","+parseInt(e.substring(2,4),16)+","+parseInt(e.substring(4,6),16)+","+a+")");return t},redux.field_objects.color_rgba.init=function(e){e=I.redux.getSelector(e,"color_rgba"),I(e).each(function(){var e=I(this),a=e;e.hasClass("redux-field-container")||(a=e.parents(".redux-field-container:first")),a.is(":hidden")||a.hasClass("redux-field-init")&&(a.removeClass("redux-field-init"),redux.field_objects.color_rgba.modInit(e),redux.field_objects.color_rgba.initColorPicker(e))})},redux.field_objects.color_rgba.modInit=function(e){redux.field_objects.color_rgba.fieldID=e.find(".redux-color_rgba-container").data("id")},redux.field_objects.color_rgba.initColorPicker=function(c){var e=redux.field_objects.color_rgba.fieldID,a=c.find(".redux-color-rgba"),t=a.data("current-alpha"),o=a.data("current-color"),l=a.data("output-transparent"),r=c.find(".redux-color-rgba-container"),d=r.data("palette"),n=r.data("show-input"),f=r.data("show-initial"),i=r.data("show-alpha"),s=r.data("allow-empty"),u=r.data("show-palette"),b=r.data("show-palette-only"),x=r.data("show-selection-palette"),p=Number(r.data("max-palette-size")),g=r.data("clickout-fires-change"),h=String(r.data("choose-text")),_=String(r.data("cancel-text")),w=String(r.data("input-text")),j=r.data("show-buttons"),m=String(r.data("container-class")),B=String(r.data("replacer-class")),t=Number(null==t?1:t),o=""===o||"transparent"===o?"":o,l=Boolean(""!==l&&l),d=decodeURIComponent(d);null===(d=JSON.parse(d))&&(d=[["#000000","#434343","#666666","#999999","#b7b7b7","#cccccc","#d9d9d9","#efefef","#f3f3f3","#ffffff"],["#980000","#ff0000","#ff9900","#ffff00","#00ff00","#00ffff","#4a86e8","#0000ff","#9900ff","#ff00ff"],["#e6b8af","#f4cccc","#fce5cd","#fff2cc","#d9ead3","#d9ead3","#c9daf8","#cfe2f3","#d9d2e9","#ead1dc"],["#dd7e6b","#ea9999","#f9cb9c","#ffe599","#b6d7a8","#a2c4c9","#a4c2f4","#9fc5e8","#b4a7d6","#d5a6bd"],["#cc4125","#e06666","#f6b26b","#ffd966","#93c47d","#76a5af","#6d9eeb","#6fa8dc","#8e7cc3","#c27ba0"],["#a61c00","#cc0000","#e69138","#f1c232","#6aa84f","#45818e","#3c78d8","#3d85c6","#674ea7","#a64d79"],["#85200c","#990000","#b45f06","#bf9000","#38761d","#134f5c","#1155cc","#0b5394","#351c75","#741b47"],["#5b0f00","#660000","#783f04","#7f6000","#274e13","#0c343d","#1c4587","#073763","#20124d","#4c1130"]]),n=Boolean(""!==n&&n),f=Boolean(""!==f&&f),i=Boolean(""!==i&&i),s=Boolean(""!==s&&s),u=Boolean(""!==u&&u),b=Boolean(""!==b&&b),x=Boolean(""!==x&&x),g=Boolean(""!==g&&g),j=Boolean(""!==j&&j),a.spectrum({color:o,showAlpha:i,showInput:n,allowEmpty:s,className:"redux-color-rgba",showInitial:f,showPalette:u,showSelectionPalette:x,maxPaletteSize:p,showPaletteOnly:b,clickoutFiresChange:g,chooseText:h,cancelText:_,showButtons:j,containerClassName:m,replacerClassName:B,preferredFormat:"hex6",localStorageKey:"redux.color-rgba."+e,palette:d,inputText:w,change:function(e){var a,t=null===e?(a=!0===l?"transparent":null,null):(a=e.toHexString(),e.alpha),o="transparent"!==a?redux.field_objects.color_rgba.hexToRGBA(a,t):"transparent",r=I(this).data("block-id");c.find("input#"+r+"-color").val(a),c.find("input#"+r+"-alpha").val(t),c.find("input#"+r+"-rgba").val(o),redux_change(c.find(".redux-color-rgba-container"))}})}}(jQuery);
redux-core/inc/fields/date/redux-date.js CHANGED
@@ -1,4 +1,4 @@
1
- /*global jQuery, document, redux*/
2
 
3
  (function( $ ) {
4
  'use strict';
@@ -7,9 +7,7 @@
7
  redux.field_objects.date = redux.field_objects.date || {};
8
 
9
  redux.field_objects.date.init = function( selector ) {
10
- if ( ! selector ) {
11
- selector = $( document ).find( '.redux-container-date:visible' );
12
- }
13
 
14
  $( selector ).each(
15
  function() {
1
+ /*global jQuery, redux*/
2
 
3
  (function( $ ) {
4
  'use strict';
7
  redux.field_objects.date = redux.field_objects.date || {};
8
 
9
  redux.field_objects.date.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'date' );
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/fields/date/redux-date.min.js CHANGED
@@ -1 +1 @@
1
- !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.date=redux.field_objects.date||{},redux.field_objects.date.init=function(e){e=e||n(document).find(".redux-container-date:visible"),n(e).each(function(){var e=n(this),i=e;e.hasClass("redux-field-container")||(i=e.parents(".redux-field-container:first")),i.is(":hidden")||i.hasClass("redux-field-init")&&(i.removeClass("redux-field-init"),e.find(".redux-datepicker").each(function(){n(this).datepicker({dateFormat:"mm/dd/yy",beforeShow:function(e,i){var t=n("#ui-datepicker-div"),d=i.dpDiv;n(this).parent().append(t),t.hide(),setTimeout(function(){d.position({my:"left top",at:"left bottom",collision:"none",of:e})},1)}})}))})}}(jQuery);
1
+ !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.date=redux.field_objects.date||{},redux.field_objects.date.init=function(e){e=n.redux.getSelector(e,"date"),n(e).each(function(){var e=n(this),t=e;e.hasClass("redux-field-container")||(t=e.parents(".redux-field-container:first")),t.is(":hidden")||t.hasClass("redux-field-init")&&(t.removeClass("redux-field-init"),e.find(".redux-datepicker").each(function(){n(this).datepicker({dateFormat:"mm/dd/yy",beforeShow:function(e,t){var i=n("#ui-datepicker-div"),d=t.dpDiv;n(this).parent().append(i),i.hide(),setTimeout(function(){d.position({my:"left top",at:"left bottom",collision:"none",of:e})},1)}})}))})}}(jQuery);
redux-core/inc/fields/dimensions/redux-dimensions.js CHANGED
@@ -1,4 +1,4 @@
1
- /* global jQuery, document, redux */
2
 
3
  (function( $ ) {
4
  'use strict';
@@ -7,9 +7,7 @@
7
  redux.field_objects.dimensions = redux.field_objects.dimensions || {};
8
 
9
  redux.field_objects.dimensions.init = function( selector ) {
10
- if ( ! selector ) {
11
- selector = $( document ).find( '.redux-container-dimensions:visible' );
12
- }
13
 
14
  $( selector ).each(
15
  function() {
1
+ /* global jQuery, redux */
2
 
3
  (function( $ ) {
4
  'use strict';
7
  redux.field_objects.dimensions = redux.field_objects.dimensions || {};
8
 
9
  redux.field_objects.dimensions.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'dimensions' );
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/fields/dimensions/redux-dimensions.min.js CHANGED
@@ -1 +1 @@
1
- !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.dimensions=redux.field_objects.dimensions||{},redux.field_objects.dimensions.init=function(i){i=i||n(document).find(".redux-container-dimensions:visible"),n(i).each(function(){var e=n(this),i=e;e.hasClass("redux-field-container")||(i=e.parents(".redux-field-container:first")),i.is(":hidden")||i.hasClass("redux-field-init")&&(i.removeClass("redux-field-init"),e.find(".redux-dimensions-units").select2(),e.find(".redux-dimensions-input").on("change",function(){var i=n(this).parents(".redux-field:first").find(".field-units").val();0!==n(this).parents(".redux-field:first").find(".redux-dimensions-units").length&&(i=n(this).parents(".redux-field:first").find(".redux-dimensions-units option:selected").val()),void 0!==i?e.find("#"+n(this).attr("rel")).val(n(this).val()+i):e.find("#"+n(this).attr("rel")).val(n(this).val())}),e.find(".redux-dimensions-units").on("change",function(){n(this).parents(".redux-field:first").find(".redux-dimensions-input").change()}))})}}(jQuery);
1
+ !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.dimensions=redux.field_objects.dimensions||{},redux.field_objects.dimensions.init=function(i){i=n.redux.getSelector(i,"dimensions"),n(i).each(function(){var e=n(this),i=e;e.hasClass("redux-field-container")||(i=e.parents(".redux-field-container:first")),i.is(":hidden")||i.hasClass("redux-field-init")&&(i.removeClass("redux-field-init"),e.find(".redux-dimensions-units").select2(),e.find(".redux-dimensions-input").on("change",function(){var i=n(this).parents(".redux-field:first").find(".field-units").val();0!==n(this).parents(".redux-field:first").find(".redux-dimensions-units").length&&(i=n(this).parents(".redux-field:first").find(".redux-dimensions-units option:selected").val()),void 0!==i?e.find("#"+n(this).attr("rel")).val(n(this).val()+i):e.find("#"+n(this).attr("rel")).val(n(this).val())}),e.find(".redux-dimensions-units").on("change",function(){n(this).parents(".redux-field:first").find(".redux-dimensions-input").change()}))})}}(jQuery);
redux-core/inc/fields/gallery/redux-gallery.js CHANGED
@@ -7,10 +7,7 @@
7
  redux.field_objects.gallery = redux.field_objects.gallery || {};
8
 
9
  redux.field_objects.gallery.init = function( selector ) {
10
-
11
- if ( ! selector ) {
12
- selector = $( document ).find( '.redux-container-gallery:visible' );
13
- }
14
 
15
  $( selector ).each(
16
  function() {
7
  redux.field_objects.gallery = redux.field_objects.gallery || {};
8
 
9
  redux.field_objects.gallery.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'gallery' );
 
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/fields/gallery/redux-gallery.min.js CHANGED
@@ -1 +1 @@
1
- !function(r){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.gallery=redux.field_objects.gallery||{},redux.field_objects.gallery.init=function(e){e=e||r(document).find(".redux-container-gallery:visible"),r(e).each(function(){var e=r(this),i=e;e.hasClass("redux-field-container")||(i=e.parents(".redux-field-container:first")),i.is(":hidden")||i.hasClass("redux-field-init")&&(i.removeClass("redux-field-init"),e.on({click:function(e){var n,i,l,t,a,d,s;return wp.media.view.Settings.Gallery=wp.media.view.Settings.Gallery.extend({template:function(){}}),n=r(this).closest("fieldset"),"clear-gallery"===e.currentTarget.id?(n.find(".gallery_values").val(""),void n.find(".screenshot").html("")):"undefined"!=typeof wp&&wp.media&&wp.media.gallery?(e.preventDefault(),i=(l=n.find(".gallery_values").val())?'[gallery ids="'+l+'"]':'[gallery ids="0"]',t=wp.media.gallery.edit(i),l||(a=r("body").find("#"+t.el.id),s=a.find(".uploader-inline"),d=a.find(".media-toolbar .spinner"),setTimeout(function(){s.hasClass("hidden")&&(s.removeClass("hidden"),d.removeClass("is-active"))},400)),t.state("gallery-edit").on("update",function(e){var i,l,a,d;n.find(".screenshot").html(""),i=e.models.map(function(e){return l=e.toJSON(),a=void 0!==l.sizes&&void 0!==l.sizes.thumbnail?l.sizes.thumbnail.url:l.url,d='<a class="of-uploaded-image" href="'+a+'"><img class="redux-option-image" src="'+a+'" alt="" /></a>',n.find(".screenshot").append(d),e.id}),n.find(".gallery_values").val(i.join(",")),redux_change(n.find(".gallery_values")),t.detach()}),!1):void 0}},".gallery-attachments"))})}}(jQuery);
1
+ !function(s){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.gallery=redux.field_objects.gallery||{},redux.field_objects.gallery.init=function(e){e=s.redux.getSelector(e,"gallery"),s(e).each(function(){var e=s(this),i=e;e.hasClass("redux-field-container")||(i=e.parents(".redux-field-container:first")),i.is(":hidden")||i.hasClass("redux-field-init")&&(i.removeClass("redux-field-init"),e.on({click:function(e){var t,i,l,n,a,d,r;return wp.media.view.Settings.Gallery=wp.media.view.Settings.Gallery.extend({template:function(){}}),t=s(this).closest("fieldset"),"clear-gallery"===e.currentTarget.id?(t.find(".gallery_values").val(""),void t.find(".screenshot").html("")):"undefined"!=typeof wp&&wp.media&&wp.media.gallery?(e.preventDefault(),i=(l=t.find(".gallery_values").val())?'[gallery ids="'+l+'"]':'[gallery ids="0"]',n=wp.media.gallery.edit(i),l||(a=s("body").find("#"+n.el.id),r=a.find(".uploader-inline"),d=a.find(".media-toolbar .spinner"),setTimeout(function(){r.hasClass("hidden")&&(r.removeClass("hidden"),d.removeClass("is-active"))},400)),n.state("gallery-edit").on("update",function(e){var i,l,a,d;t.find(".screenshot").html(""),i=e.models.map(function(e){return l=e.toJSON(),a=void 0!==l.sizes&&void 0!==l.sizes.thumbnail?l.sizes.thumbnail.url:l.url,d='<a class="of-uploaded-image" href="'+a+'"><img class="redux-option-image" src="'+a+'" alt="" /></a>',t.find(".screenshot").append(d),e.id}),t.find(".gallery_values").val(i.join(",")),redux_change(t.find(".gallery_values")),n.detach()}),!1):void 0}},".gallery-attachments"))})}}(jQuery);
redux-core/inc/fields/image_select/redux-image-select.js CHANGED
@@ -7,10 +7,7 @@
7
  redux.field_objects.image_select = redux.field_objects.image_select || {};
8
 
9
  redux.field_objects.image_select.init = function( selector ) {
10
-
11
- if ( ! selector ) {
12
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-image_select:visible' );
13
- }
14
 
15
  $( selector ).each(
16
  function() {
7
  redux.field_objects.image_select = redux.field_objects.image_select || {};
8
 
9
  redux.field_objects.image_select.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'image_select' );
 
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/fields/image_select/redux-image-select.min.js CHANGED
@@ -1 +1 @@
1
- !function(d){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.image_select=redux.field_objects.image_select||{},redux.field_objects.image_select.init=function(e){e=e||d(document).find(".redux-group-tab:visible").find(".redux-container-image_select:visible"),d(e).each(function(){var a=d(this),e=a;a.hasClass("redux-field-container")||(e=a.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),a.find(".redux-image-select label img, .redux-image-select label .tiles").click(function(e){var t,i,s,l,r=d(this).closest("label").attr("for");if(d(this).parents("fieldset:first").find(".redux-image-select-selected").removeClass("redux-image-select-selected").find('input[type="radio"]').prop("checked",!1),d(this).closest("label").find('input[type="radio"]').prop("checked"),d(this).closest("label").hasClass("redux-image-select-preset-"+r))return e.preventDefault(),t=d(this).closest("label").find("input"),i=t.data("presets"),null!=(s=t.data("merge"))&&("string"===d.type(s)&&(s=s.split("|")),d.each(i,function(e){"object"!==d.type(redux.optName.options[e])||!0!==s&&-1===d.inArray(e,s)||(i[e]=d.extend(redux.optName.options[e],i[e]))})),null!=t&&confirm(redux.optName.args.preset_confirm)&&(a.find('label[for="'+r+'"]').addClass("redux-image-select-selected").find('input[type="radio"]').attr("checked",!0),window.onbeforeunload=null,0===(l=d("#import-code-value")).length?d(this).append('<textarea id="import-code-value" style="display:none;" name="'+redux.optName.args.opt_name+'[import_code]">'+JSON.stringify(i)+"</textarea>"):l.val(JSON.stringify(i)),0!==d("#publishing-action #publish").length?d("#publish").click():d("#redux-import").click()),!1;a.find('label[for="'+r+'"]').addClass("redux-image-select-selected").find('input[type="radio"]').prop("checked",!0).trigger("change"),redux_change(d(this).closest("label").find('input[type="radio"]'))}),a.find(".tiles").qtip({content:{text:function(){return'<img src="'+d(this).attr("rel")+'" style="max-width:150px;" alt=" />'}},style:"qtip-tipsy",position:{my:"top center",at:"bottom center"}}))})}}(jQuery);
1
+ !function(d){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.image_select=redux.field_objects.image_select||{},redux.field_objects.image_select.init=function(e){e=d.redux.getSelector(e,"image_select"),d(e).each(function(){var a=d(this),e=a;a.hasClass("redux-field-container")||(e=a.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),a.find(".redux-image-select label img, .redux-image-select label .tiles").click(function(e){var t,i,s,l,r=d(this).closest("label").attr("for");if(d(this).parents("fieldset:first").find(".redux-image-select-selected").removeClass("redux-image-select-selected").find('input[type="radio"]').prop("checked",!1),d(this).closest("label").find('input[type="radio"]').prop("checked"),d(this).closest("label").hasClass("redux-image-select-preset-"+r))return e.preventDefault(),t=d(this).closest("label").find("input"),i=t.data("presets"),null!=(s=t.data("merge"))&&("string"===d.type(s)&&(s=s.split("|")),d.each(i,function(e){"object"!==d.type(redux.optName.options[e])||!0!==s&&-1===d.inArray(e,s)||(i[e]=d.extend(redux.optName.options[e],i[e]))})),null!=t&&confirm(redux.optName.args.preset_confirm)&&(a.find('label[for="'+r+'"]').addClass("redux-image-select-selected").find('input[type="radio"]').attr("checked",!0),window.onbeforeunload=null,0===(l=d("#import-code-value")).length?d(this).append('<textarea id="import-code-value" style="display:none;" name="'+redux.optName.args.opt_name+'[import_code]">'+JSON.stringify(i)+"</textarea>"):l.val(JSON.stringify(i)),0!==d("#publishing-action #publish").length?d("#publish").click():d("#redux-import").click()),!1;a.find('label[for="'+r+'"]').addClass("redux-image-select-selected").find('input[type="radio"]').prop("checked",!0).trigger("change"),redux_change(d(this).closest("label").find('input[type="radio"]'))}),a.find(".tiles").qtip({content:{text:function(){return'<img src="'+d(this).attr("rel")+'" style="max-width:150px;" alt=" />'}},style:"qtip-tipsy",position:{my:"top center",at:"bottom center"}}))})}}(jQuery);
redux-core/inc/fields/link_color/redux-link-color.js CHANGED
@@ -2,7 +2,7 @@
2
  * Field Link Color
3
  */
4
 
5
- /*global jQuery, document, redux_change, redux, colorValidate */
6
 
7
  (function( $ ) {
8
  'use strict';
@@ -11,9 +11,7 @@
11
  redux.field_objects.link_color = redux.field_objects.link_color || {};
12
 
13
  redux.field_objects.link_color.init = function( selector ) {
14
- if ( ! selector ) {
15
- selector = $( document ).find( '.redux-container-link_color:visible' );
16
- }
17
 
18
  $( selector ).each(
19
  function() {
2
  * Field Link Color
3
  */
4
 
5
+ /*global jQuery, redux_change, redux, colorValidate */
6
 
7
  (function( $ ) {
8
  'use strict';
11
  redux.field_objects.link_color = redux.field_objects.link_color || {};
12
 
13
  redux.field_objects.link_color.init = function( selector ) {
14
+ selector = $.redux.getSelector( selector, 'link_color' );
 
 
15
 
16
  $( selector ).each(
17
  function() {
redux-core/inc/fields/link_color/redux-link-color.min.js CHANGED
@@ -1 +1 @@
1
- !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.link_color=redux.field_objects.link_color||{},redux.field_objects.link_color.init=function(e){e=e||n(document).find(".redux-container-link_color:visible"),n(e).each(function(){var i=n(this),e=i;i.hasClass("redux-field-container")||(e=i.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),i.find(".redux-color-init").wpColorPicker({change:function(e,t){n(this).val(t.color.toString()),redux_change(n(this)),i.find("#"+e.target.getAttribute("data-id")+"-transparency").removeAttr("checked")},clear:function(e,t){n(this).val(t.color.toString()),redux_change(n(this).parent().find(".redux-color-init"))}}),i.find(".redux-color").on("keyup",function(){var e=n(this).val(),t=colorValidate(this),r="#"+n(this).attr("id");"transparent"===e?(n(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(r+"-transparency").attr("checked","checked")):(i.find(r+"-transparency").removeAttr("checked"),t&&t!==n(this).val()&&n(this).val(t))}),i.find(".redux-color").on("blur",function(){var e=n(this).val(),t="#"+n(this).attr("id");"transparent"===e?(n(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(t+"-transparency").attr("checked","checked")):(colorValidate(this)===e&&0!==e.indexOf("#")&&n(this).val(n(this).data("oldcolor")),i.find(t+"-transparency").removeAttr("checked"))}),i.find(".redux-color").on("keydown",function(){n(this).data("oldkeypress",n(this).val())}))})}}(jQuery);
1
+ !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.link_color=redux.field_objects.link_color||{},redux.field_objects.link_color.init=function(e){e=n.redux.getSelector(e,"link_color"),n(e).each(function(){var i=n(this),e=i;i.hasClass("redux-field-container")||(e=i.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),i.find(".redux-color-init").wpColorPicker({change:function(e,t){n(this).val(t.color.toString()),redux_change(n(this)),i.find("#"+e.target.getAttribute("data-id")+"-transparency").removeAttr("checked")},clear:function(e,t){n(this).val(t.color.toString()),redux_change(n(this).parent().find(".redux-color-init"))}}),i.find(".redux-color").on("keyup",function(){var e=n(this).val(),t=colorValidate(this),r="#"+n(this).attr("id");"transparent"===e?(n(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(r+"-transparency").attr("checked","checked")):(i.find(r+"-transparency").removeAttr("checked"),t&&t!==n(this).val()&&n(this).val(t))}),i.find(".redux-color").on("blur",function(){var e=n(this).val(),t="#"+n(this).attr("id");"transparent"===e?(n(this).parent().parent().find(".wp-color-result").css("background-color","transparent"),i.find(t+"-transparency").attr("checked","checked")):(colorValidate(this)===e&&0!==e.indexOf("#")&&n(this).val(n(this).data("oldcolor")),i.find(t+"-transparency").removeAttr("checked"))}),i.find(".redux-color").on("keydown",function(){n(this).data("oldkeypress",n(this).val())}))})}}(jQuery);
redux-core/inc/fields/multi_text/redux-multi-text.js CHANGED
@@ -40,9 +40,7 @@
40
  };
41
 
42
  redux.field_objects.multi_text.init = function( selector ) {
43
- if ( ! selector ) {
44
- selector = $( document ).find( '.redux-container-multi_text:visible' );
45
- }
46
 
47
  $( selector ).each(
48
  function() {
40
  };
41
 
42
  redux.field_objects.multi_text.init = function( selector ) {
43
+ selector = $.redux.getSelector( selector, 'multi_text' );
 
 
44
 
45
  $( selector ).each(
46
  function() {
redux-core/inc/fields/multi_text/redux-multi-text.min.js CHANGED
@@ -1 +1 @@
1
- !function(a){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.multi_text=redux.field_objects.multi_text||{},redux.field_objects.multi_text.remove=function(d){d.find(".redux-multi-text-remove").on("click",function(){var t,e,i;redux_change(a(this)),a(this).prev('input[type="text"]').val(""),t=a(this).attr("data-id"),a(this).parent().slideUp("medium",function(){a(this).remove(),1===d.find("#"+t+" li").length&&(e=d.find(".redux-multi-text-add"),i=e.attr("data-name"),d.find("#"+t+' li:last-child input[type="text"]').attr("name",i))})})},redux.field_objects.multi_text.init=function(t){t=t||a(document).find(".redux-container-multi_text:visible"),a(t).each(function(){var l=a(this),t=l;l.hasClass("redux-field-container")||(t=l.parents(".redux-field-container:first")),t.is(":hidden")||t.hasClass("redux-field-init")&&(t.removeClass("redux-field-init"),redux.field_objects.multi_text.remove(l),l.find(".redux-multi-text-add").click(function(){for(var t,e=parseInt(a(this).attr("data-add_number")),i=a(this).attr("data-id"),d=a(this).attr("data-name")+"[]",n=0;n<e;n+=1)t=a("#"+i+" li:last-child").clone(),l.find("#"+i).append(t),l.find("#"+i+" li:last-child").removeAttr("style"),l.find("#"+i+' li:last-child input[type="text"]').val(""),l.find("#"+i+' li:last-child input[type="text"]').attr("name",d);1<l.find("#"+i+" li").length&&l.find("#"+i+" li").each(function(){"none"===a(this).css("display")&&a(this).find('input[type="text"]').attr("name","")}),redux.field_objects.multi_text.remove(l)}))})}}(jQuery);
1
+ !function(a){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.multi_text=redux.field_objects.multi_text||{},redux.field_objects.multi_text.remove=function(d){d.find(".redux-multi-text-remove").on("click",function(){var t,e,i;redux_change(a(this)),a(this).prev('input[type="text"]').val(""),t=a(this).attr("data-id"),a(this).parent().slideUp("medium",function(){a(this).remove(),1===d.find("#"+t+" li").length&&(e=d.find(".redux-multi-text-add"),i=e.attr("data-name"),d.find("#"+t+' li:last-child input[type="text"]').attr("name",i))})})},redux.field_objects.multi_text.init=function(t){t=a.redux.getSelector(t,"multi_text"),a(t).each(function(){var l=a(this),t=l;l.hasClass("redux-field-container")||(t=l.parents(".redux-field-container:first")),t.is(":hidden")||t.hasClass("redux-field-init")&&(t.removeClass("redux-field-init"),redux.field_objects.multi_text.remove(l),l.find(".redux-multi-text-add").click(function(){for(var t,e=parseInt(a(this).attr("data-add_number")),i=a(this).attr("data-id"),d=a(this).attr("data-name")+"[]",n=0;n<e;n+=1)t=a("#"+i+" li:last-child").clone(),l.find("#"+i).append(t),l.find("#"+i+" li:last-child").removeAttr("style"),l.find("#"+i+' li:last-child input[type="text"]').val(""),l.find("#"+i+' li:last-child input[type="text"]').attr("name",d);1<l.find("#"+i+" li").length&&l.find("#"+i+" li").each(function(){"none"===a(this).css("display")&&a(this).find('input[type="text"]').attr("name","")}),redux.field_objects.multi_text.remove(l)}))})}}(jQuery);
redux-core/inc/fields/palette/redux-palette.js CHANGED
@@ -2,7 +2,7 @@
2
  * Field Palette (color)
3
  */
4
 
5
- /*global jQuery, document, redux*/
6
 
7
  (function( $ ) {
8
  'use strict';
@@ -11,9 +11,7 @@
11
  redux.field_objects.palette = redux.field_objects.palette || {};
12
 
13
  redux.field_objects.palette.init = function( selector ) {
14
- if ( ! selector ) {
15
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-palette:visible' );
16
- }
17
 
18
  $( selector ).each(
19
  function() {
2
  * Field Palette (color)
3
  */
4
 
5
+ /*global jQuery, redux*/
6
 
7
  (function( $ ) {
8
  'use strict';
11
  redux.field_objects.palette = redux.field_objects.palette || {};
12
 
13
  redux.field_objects.palette.init = function( selector ) {
14
+ selector = $.redux.getSelector( selector, 'palette' );
 
 
15
 
16
  $( selector ).each(
17
  function() {
redux-core/inc/fields/palette/redux-palette.min.js CHANGED
@@ -1 +1 @@
1
- !function(i){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.palette=redux.field_objects.palette||{},redux.field_objects.palette.init=function(e){e=e||i(document).find(".redux-group-tab:visible").find(".redux-container-palette:visible"),i(e).each(function(){var e=i(this),t=e;e.hasClass("redux-field-container")||(t=e.parents(".redux-field-container:first")),t.is(":hidden")||t.hasClass("redux-field-init")&&(t.removeClass("redux-field-init"),e.find(".buttonset").each(function(){i(this).buttonset()}))})}}(jQuery);
1
+ !function(i){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.palette=redux.field_objects.palette||{},redux.field_objects.palette.init=function(e){e=i.redux.getSelector(e,"palette"),i(e).each(function(){var e=i(this),t=e;e.hasClass("redux-field-container")||(t=e.parents(".redux-field-container:first")),t.is(":hidden")||t.hasClass("redux-field-init")&&(t.removeClass("redux-field-init"),e.find(".buttonset").each(function(){i(this).buttonset()}))})}}(jQuery);
redux-core/inc/fields/raw/parsedown.php CHANGED
@@ -719,7 +719,7 @@ class Parsedown {
719
  }
720
 
721
  if ( preg_match( '/^<[\/]?+(\w*)(?:[ ]*+' . $this->regexHtmlAttribute . ')*+[ ]*+(\/)?>/', $Line['text'], $matches ) ) {
722
- $element = Redux_Helpers::strtolower( $matches[1] );
723
 
724
  if ( in_array( $element, $this->textLevelElements ) ) {
725
  return;
@@ -754,7 +754,7 @@ class Parsedown {
754
  if ( strpos( $Line['text'], ']' ) !== false
755
  and preg_match( '/^\[(.+?)\]:[ ]*+<'.'?(\S+?)>?(?:[ ]+["\'(](.+)["\')])?[ ]*+$/', $Line['text'], $matches )
756
  ) {
757
- $id = Redux_Helpers::strtolower( $matches[1] );
758
 
759
  $Data = array(
760
  'url' => $matches[2],
@@ -1253,11 +1253,11 @@ class Parsedown {
1253
  } else {
1254
  if ( preg_match( '/^\s*\[(.*?)\]/', $remainder, $matches ) ) {
1255
  $definition = strlen( $matches[1] ) ? $matches[1] : $Element['handler']['argument'];
1256
- $definition = Redux_Helpers::strtolower( $definition );
1257
 
1258
  $extent += strlen( $matches[0] );
1259
  } else {
1260
- $definition = Redux_Helpers::strtolower( $Element['handler']['argument'] );
1261
  }
1262
 
1263
  if ( ! isset( $this->DefinitionData['Reference'][ $definition ] ) ) {
@@ -1674,7 +1674,7 @@ class Parsedown {
1674
  if ( $len > strlen( $string ) ) {
1675
  return false;
1676
  } else {
1677
- return Redux_Helpers::strtolower( substr( $string, 0, $len ) ) === Redux_Helpers::strtolower( $needle );
1678
  }
1679
  }
1680
 
719
  }
720
 
721
  if ( preg_match( '/^<[\/]?+(\w*)(?:[ ]*+' . $this->regexHtmlAttribute . ')*+[ ]*+(\/)?>/', $Line['text'], $matches ) ) {
722
+ $element = Redux_Core::strtolower( $matches[1] );
723
 
724
  if ( in_array( $element, $this->textLevelElements ) ) {
725
  return;
754
  if ( strpos( $Line['text'], ']' ) !== false
755
  and preg_match( '/^\[(.+?)\]:[ ]*+<'.'?(\S+?)>?(?:[ ]+["\'(](.+)["\')])?[ ]*+$/', $Line['text'], $matches )
756
  ) {
757
+ $id = Redux_Core::strtolower( $matches[1] );
758
 
759
  $Data = array(
760
  'url' => $matches[2],
1253
  } else {
1254
  if ( preg_match( '/^\s*\[(.*?)\]/', $remainder, $matches ) ) {
1255
  $definition = strlen( $matches[1] ) ? $matches[1] : $Element['handler']['argument'];
1256
+ $definition = Redux_Core::strtolower( $definition );
1257
 
1258
  $extent += strlen( $matches[0] );
1259
  } else {
1260
+ $definition = Redux_Core::strtolower( $Element['handler']['argument'] );
1261
  }
1262
 
1263
  if ( ! isset( $this->DefinitionData['Reference'][ $definition ] ) ) {
1674
  if ( $len > strlen( $string ) ) {
1675
  return false;
1676
  } else {
1677
+ return Redux_Core::strtolower( substr( $string, 0, $len ) ) === Redux_Core::strtolower( $needle );
1678
  }
1679
  }
1680
 
redux-core/inc/fields/select/class-redux-select.php CHANGED
@@ -60,10 +60,15 @@ if ( ! class_exists( 'Redux_Select', false ) ) {
60
  }
61
  }
62
 
63
- $this->field['options'] = $this->parent->wordpress_data->get( $this->field['data'], $this->field['args'], $this->value );
 
 
 
 
 
64
  }
65
 
66
- if ( ! empty( $this->field['data'] ) && ( 'elusive-icons' === $this->field['data'] || 'elusive-icon' === $this->field['data'] || 'elusive' === $this->field['data'] ) ) {
67
  $this->field['class'] .= ' font-icons';
68
  }
69
 
60
  }
61
  }
62
 
63
+ // First one get with AJAX.
64
+ $ajax = false;
65
+ if ( isset( $this->field['ajax'] ) && $this->field['ajax'] ) {
66
+ $ajax = true;
67
+ }
68
+ $this->field['options'] = $this->parent->wordpress_data->get( $this->field['data'], $this->field['args'], $this->value, $ajax );
69
  }
70
 
71
+ if ( ! empty( $this->field['data'] ) && in_array( $this->field['data'], array( 'elusive-icons', 'elusive-icon', 'elusive', 'dashicons', 'dashicon', 'dash' ), true ) ) {
72
  $this->field['class'] .= ' font-icons';
73
  }
74
 
redux-core/inc/fields/select/redux-select.js CHANGED
@@ -7,9 +7,7 @@
7
  redux.field_objects.select = redux.field_objects.select || {};
8
 
9
  redux.field_objects.select.init = function( selector ) {
10
- if ( ! selector ) {
11
- selector = $( document ).find( '.redux-container-select:visible' );
12
- }
13
 
14
  $( selector ).each(
15
  function() {
7
  redux.field_objects.select = redux.field_objects.select || {};
8
 
9
  redux.field_objects.select.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'select' );
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/fields/select/redux-select.min.js CHANGED
@@ -1 +1 @@
1
- !function(c){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.select=redux.field_objects.select||{},redux.field_objects.select.init=function(e){e=e||c(document).find(".redux-container-select:visible"),c(e).each(function(){var n={},d=c(this),e=d;d.hasClass("redux-field-container")||(e=d.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),d.find("select.redux-select-item").each(function(){var t,s,a,e,i;c(this).hasClass("font-icons")&&(n=c.extend({},{templateResult:redux.field_objects.select.addIcon,templateSelection:redux.field_objects.select.addIcon,escapeMarkup:function(e){return e}},n)),c(this).data("ajax")&&(t=c(this).data("action"),s=c(this).data("nonce"),a=c(this).data("wp-data"),e=c(this).data("min-input-length"),i={},c(this).data("args")&&(i=JSON.stringify(c(this).data("args"))),"true"===e&&(e=1),n={minimumInputLength:e,ajax:{url:ajaxurl,dataType:"json",delay:250,data:function(e){return{nonce:s,data:a,q:e.term,page:e.page||1,action:t,data_args:i}},processResults:function(e,t){return t.page=t.page||1,!0===e.success?{results:e.data}:!1===e.success?(alert(e.data),{results:e.data}):void 0},cache:!0}}),c(this).select2(n),d.find(".select2-search__field").width("auto"),c(this).hasClass("select2-sortable")&&(n={bindOrder:"sortableStop",sortableOptions:{placeholder:"ui-state-highlight"}},c(this).select2Sortable(n)),c(this).on("change",function(){redux_change(c(c(this))),c(this).select2SortableOrder()})}))})},redux.field_objects.select.addIcon=function(e){if(e.hasOwnProperty("id"))return'<span class="elusive"><i class="'+e.id+'"></i>&nbsp;&nbsp;'+e.text+"</span>"}}(jQuery);
1
+ !function(c){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.select=redux.field_objects.select||{},redux.field_objects.select.init=function(e){e=c.redux.getSelector(e,"select"),c(e).each(function(){var n={},d=c(this),e=d;d.hasClass("redux-field-container")||(e=d.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),d.find("select.redux-select-item").each(function(){var t,s,a,e,i;c(this).hasClass("font-icons")&&(n=c.extend({},{templateResult:redux.field_objects.select.addIcon,templateSelection:redux.field_objects.select.addIcon,escapeMarkup:function(e){return e}},n)),c(this).data("ajax")&&(t=c(this).data("action"),s=c(this).data("nonce"),a=c(this).data("wp-data"),e=c(this).data("min-input-length"),i={},c(this).data("args")&&(i=JSON.stringify(c(this).data("args"))),"true"===e&&(e=1),n={minimumInputLength:e,ajax:{url:ajaxurl,dataType:"json",delay:250,data:function(e){return{nonce:s,data:a,q:e.term,page:e.page||1,action:t,data_args:i}},processResults:function(e,t){return t.page=t.page||1,!0===e.success?{results:e.data}:!1===e.success?(alert(e.data),{results:e.data}):void 0},cache:!0}}),c(this).select2(n),d.find(".select2-search__field").width("auto"),c(this).hasClass("select2-sortable")&&(n={bindOrder:"sortableStop",sortableOptions:{placeholder:"ui-state-highlight"}},c(this).select2Sortable(n)),c(this).on("change",function(){redux_change(c(c(this))),c(this).select2SortableOrder()})}))})},redux.field_objects.select.addIcon=function(e){if(e.hasOwnProperty("id"))return'<span class="elusive"><i class="'+e.id+'"></i>&nbsp;&nbsp;'+e.text+"</span>"}}(jQuery);
redux-core/inc/fields/select_image/redux-select-image.js CHANGED
@@ -7,9 +7,7 @@
7
  redux.field_objects.select_image = redux.field_objects.select_image || {};
8
 
9
  redux.field_objects.select_image.init = function( selector ) {
10
- if ( ! selector ) {
11
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-select_image:visible' );
12
- }
13
 
14
  $( selector ).each(
15
  function() {
7
  redux.field_objects.select_image = redux.field_objects.select_image || {};
8
 
9
  redux.field_objects.select_image.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'select_image' );
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/fields/select_image/redux-select-image.min.js CHANGED
@@ -1 +1 @@
1
- !function(t){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.select_image=redux.field_objects.select_image||{},redux.field_objects.select_image.init=function(e){e=e||t(document).find(".redux-group-tab:visible").find(".redux-container-select_image:visible"),t(e).each(function(){var e,i=t(this),s=i;i.hasClass("redux-field-container")||(s=i.parents(".redux-field-container:first")),s.is(":hidden")||s.hasClass("redux-field-init")&&(s.removeClass("redux-field-init"),i.find("select.redux-select-images").select2(),e=i.find("select.redux-select-images").val(),i.find("select.redux-select-images").parents(".redux-field:first").find(".redux-preview-image").attr("src",e),i.find(".redux-select-images").on("change",function(){var e=t(this).parents(".redux-field:first").find(".redux-preview-image");""===t(this).val()?e.fadeOut("medium",function(){e.attr("src","")}):(e.attr("src",t(this).val()),e.fadeIn().css("visibility","visible"))}))})}}(jQuery);
1
+ !function(t){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.select_image=redux.field_objects.select_image||{},redux.field_objects.select_image.init=function(e){e=t.redux.getSelector(e,"select_image"),t(e).each(function(){var e,i=t(this),s=i;i.hasClass("redux-field-container")||(s=i.parents(".redux-field-container:first")),s.is(":hidden")||s.hasClass("redux-field-init")&&(s.removeClass("redux-field-init"),i.find("select.redux-select-images").select2(),e=i.find("select.redux-select-images").val(),i.find("select.redux-select-images").parents(".redux-field:first").find(".redux-preview-image").attr("src",e),i.find(".redux-select-images").on("change",function(){var e=t(this).parents(".redux-field:first").find(".redux-preview-image");""===t(this).val()?e.fadeOut("medium",function(){e.attr("src","")}):(e.attr("src",t(this).val()),e.fadeIn().css("visibility","visible"))}))})}}(jQuery);
redux-core/inc/fields/slider/redux-slider.js CHANGED
@@ -7,9 +7,7 @@
7
  redux.field_objects.slider = redux.field_objects.slider || {};
8
 
9
  redux.field_objects.slider.init = function( selector ) {
10
- if ( ! selector ) {
11
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-slider:visible' );
12
- }
13
 
14
  $( selector ).each(
15
  function() {
7
  redux.field_objects.slider = redux.field_objects.slider || {};
8
 
9
  redux.field_objects.slider.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'slider' );
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/fields/slider/redux-slider.min.js CHANGED
@@ -1 +1 @@
1
- !function(I){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.slider=redux.field_objects.slider||{},redux.field_objects.slider.init=function(e){e=e||I(document).find(".redux-group-tab:visible").find(".redux-container-slider:visible"),I(e).each(function(){var F=I(this),e=F;F.hasClass("redux-field-container")||(e=F.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),F.find("div.redux-slider-container").each(function(){var e,i,t,d,l,r,a,s,n,u,o,c,f=I(this).data("id"),x=I(this).data("min"),v=I(this).data("max"),h=I(this).data("step"),b=I(this).data("handles"),p=I(this).data("default-one"),w=I(this).data("default-two"),j=I(this).data("resolution"),_=parseInt(I(this).data("display")),g=Boolean(I(this).data("rtl")),m=I(this).data("float-mark"),k=!0===g?"rtl":"ltr",C=[x,v],S=[p,w],y=[p];2===_?(r=t=F.find(".redux-slider-input-one-"+f),a=d=F.find(".redux-slider-input-two-"+f)):3===_?(t=F.find(".redux-slider-select-one-"+f),d=F.find(".redux-slider-select-two-"+f),redux.field_objects.slider.loadSelect(t,x,v,j,h),2===b&&redux.field_objects.slider.loadSelect(d,x,v,j,h)):1===_?(t=F.find("#redux-slider-label-one-"+f),d=F.find("#redux-slider-label-two-"+f)):0===_&&(t=F.find(".redux-slider-value-one-"+f),d=F.find(".redux-slider-value-two-"+f)),n=1===_?(s=[u=[t,"html"]],[u,[d,"html"]]):(s=[t],[t,d]),l=2===b?(e=S,i=n,!0):(e=y,i=s,"lower"),o=I(this).reduxNoUiSlider({range:C,start:e,handles:b,step:h,connect:l,behaviour:"tap-drag",direction:k,serialization:{resolution:j,to:i,mark:m},slide:function(){1===_&&(2===b?(c=o.val(),F.find("input.redux-slider-value-one-"+f).attr("value",c[0]),F.find("input.redux-slider-value-two-"+f).attr("value",c[1])):F.find("input.redux-slider-value-one-"+f).attr("value",o.val())),3===_&&(2===b?(F.find(".redux-slider-select-one").val(o.val()[0]).trigger("change"),F.find(".redux-slider-select-two").val(o.val()[1]).trigger("change")):F.find(".redux-slider-select-one").val(o.val())),redux_change(I(this))}}),2===_&&(r.keydown(function(e){var i=o.val(),t=parseInt(i[0]);switch(e.which){case 38:o.val([t+1,null]);break;case 40:o.val([t-1,null]);break;case 13:e.preventDefault()}}),2===b&&a.keydown(function(e){var i=o.val(),t=parseInt(i[1]);switch(e.which){case 38:o.val([null,t+1]);break;case 40:o.val([null,t-1]);break;case 13:e.preventDefault()}}))}),F.find("select.redux-slider-select-one, select.redux-slider-select-two").select2())})},redux.field_objects.slider.isFloat=function(e){return+e===e&&!isFinite(e)||Boolean(e%1)},redux.field_objects.slider.decimalCount=function(e){return e.toString().split(".")[1].length},redux.field_objects.slider.loadSelect=function(e,i,t,d){for(var l,r,a=i;a<=t;a+=d)r=a,redux.field_objects.slider.isFloat(d)&&(l=redux.field_objects.slider.decimalCount(d),r=a.toFixed(l)),I(e).append('<option value="'+r+'">'+r+"</option>")}}(jQuery);
1
+ !function(I){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.slider=redux.field_objects.slider||{},redux.field_objects.slider.init=function(e){e=I.redux.getSelector(e,"slider"),I(e).each(function(){var F=I(this),e=F;F.hasClass("redux-field-container")||(e=F.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),F.find("div.redux-slider-container").each(function(){var e,i,t,d,l,r,a,s,n,o,u,c,f=I(this).data("id"),x=I(this).data("min"),h=I(this).data("max"),v=I(this).data("step"),p=I(this).data("handles"),b=I(this).data("default-one"),w=I(this).data("default-two"),j=I(this).data("resolution"),_=parseInt(I(this).data("display")),g=Boolean(I(this).data("rtl")),m=I(this).data("float-mark"),k=!0===g?"rtl":"ltr",S=[x,h],C=[b,w],y=[b];2===_?(r=t=F.find(".redux-slider-input-one-"+f),a=d=F.find(".redux-slider-input-two-"+f)):3===_?(t=F.find(".redux-slider-select-one-"+f),d=F.find(".redux-slider-select-two-"+f),redux.field_objects.slider.loadSelect(t,x,h,j,v),2===p&&redux.field_objects.slider.loadSelect(d,x,h,j,v)):1===_?(t=F.find("#redux-slider-label-one-"+f),d=F.find("#redux-slider-label-two-"+f)):0===_&&(t=F.find(".redux-slider-value-one-"+f),d=F.find(".redux-slider-value-two-"+f)),n=1===_?(s=[o=[t,"html"]],[o,[d,"html"]]):(s=[t],[t,d]),l=2===p?(e=C,i=n,!0):(e=y,i=s,"lower"),u=I(this).reduxNoUiSlider({range:S,start:e,handles:p,step:v,connect:l,behaviour:"tap-drag",direction:k,serialization:{resolution:j,to:i,mark:m},slide:function(){1===_&&(2===p?(c=u.val(),F.find("input.redux-slider-value-one-"+f).attr("value",c[0]),F.find("input.redux-slider-value-two-"+f).attr("value",c[1])):F.find("input.redux-slider-value-one-"+f).attr("value",u.val())),3===_&&(2===p?(F.find(".redux-slider-select-one").val(u.val()[0]).trigger("change"),F.find(".redux-slider-select-two").val(u.val()[1]).trigger("change")):F.find(".redux-slider-select-one").val(u.val())),redux_change(I(this))}}),2===_&&(r.keydown(function(e){var i=u.val(),t=parseInt(i[0]);switch(e.which){case 38:u.val([t+1,null]);break;case 40:u.val([t-1,null]);break;case 13:e.preventDefault()}}),2===p&&a.keydown(function(e){var i=u.val(),t=parseInt(i[1]);switch(e.which){case 38:u.val([null,t+1]);break;case 40:u.val([null,t-1]);break;case 13:e.preventDefault()}}))}),F.find("select.redux-slider-select-one, select.redux-slider-select-two").select2())})},redux.field_objects.slider.isFloat=function(e){return+e===e&&!isFinite(e)||Boolean(e%1)},redux.field_objects.slider.decimalCount=function(e){return e.toString().split(".")[1].length},redux.field_objects.slider.loadSelect=function(e,i,t,d){for(var l,r,a=i;a<=t;a+=d)r=a,redux.field_objects.slider.isFloat(d)&&(l=redux.field_objects.slider.decimalCount(d),r=a.toFixed(l)),I(e).append('<option value="'+r+'">'+r+"</option>")}}(jQuery);
redux-core/inc/fields/slides/redux-slides.js CHANGED
@@ -7,9 +7,7 @@
7
  redux.field_objects.slides = redux.field_objects.slides || {};
8
 
9
  redux.field_objects.slides.init = function( selector ) {
10
- if ( ! selector ) {
11
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-slides:visible' );
12
- }
13
 
14
  $( selector ).each(
15
  function() {
7
  redux.field_objects.slides = redux.field_objects.slides || {};
8
 
9
  redux.field_objects.slides.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'slides' );
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/fields/slides/redux-slides.min.js CHANGED
@@ -1 +1 @@
1
- !function(s){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.slides=redux.field_objects.slides||{},redux.field_objects.slides.init=function(e){e=e||s(document).find(".redux-group-tab:visible").find(".redux-container-slides:visible"),s(e).each(function(){var e=s(this),i=e;redux.field_objects.media.init(e),e.hasClass("redux-field-container")||(i=e.parents(".redux-field-container:first")),i.is(":hidden")||(i.hasClass("redux-container-slides")&&i.addClass("redux-field-init"),i.hasClass("redux-field-init")&&(i.removeClass("redux-field-init"),e.find(".redux-slides-remove").on("click",function(){var e;redux_change(s(this)),s(this).parent().siblings().find('input[type="text"]').val(""),s(this).parent().siblings().find("textarea").val(""),s(this).parent().siblings().find('input[type="hidden"]').val(""),1<s(this).parents(".redux-container-slides:first").find(".redux-slides-accordion-group").length?s(this).parents(".redux-slides-accordion-group:first").slideUp("medium",function(){s(this).remove()}):(e=s(this).parent(".redux-slides-accordion").data("new-content-title"),s(this).parents(".redux-slides-accordion-group:first").find(".remove-image").click(),s(this).parents(".redux-container-slides:first").find(".redux-slides-accordion-group:last").find(".redux-slides-header").text(e))}),e.find(".redux-slides-add").off("click").click(function(){var e,i=s(this).prev().find(".redux-slides-accordion-group:last").clone(!0),t=+s(i).find(".slide-title").attr("name").match(/[0-9]+(?!.*[0-9])/)+1;s(i).find('input[type="text"], input[type="hidden"], textarea').each(function(){s(this).attr("name",jQuery(this).attr("name").replace(/[0-9]+(?!.*[0-9])/,t)).attr("id",s(this).attr("id").replace(/[0-9]+(?!.*[0-9])/,t)),s(this).val(""),s(this).hasClass("slide-sort")&&s(this).val(t)}),e=s(this).prev().data("new-content-title"),s(i).find(".screenshot").removeAttr("style"),s(i).find(".screenshot").addClass("hide"),s(i).find(".screenshot a").attr("href",""),s(i).find(".remove-image").addClass("hide"),s(i).find(".redux-slides-image").attr("src","").removeAttr("id"),s(i).find("h3").text("").append('<span class="redux-slides-header">'+e+'</span><span class="ui-accordion-header-icon ui-icon ui-icon-plus"></span>'),s(this).prev().append(i)}),e.find(".slide-title").keyup(function(e){var i=e.target.value;s(this).parents().eq(3).find(".redux-slides-header").text(i)}),e.find(".redux-slides-accordion").accordion({header:"> div > fieldset > h3",collapsible:!0,active:!1,heightStyle:"content",icons:{header:"ui-icon-plus",activeHeader:"ui-icon-minus"}}).sortable({axis:"y",handle:"h3",connectWith:".redux-slides-accordion",start:function(e,i){i.placeholder.height(i.item.height()),i.placeholder.width(i.item.width())},placeholder:"ui-state-highlight",stop:function(e,i){i.item.children("h3").triggerHandler("focusout"),s("input.slide-sort").each(function(e){s(this).val(e)})}})))})}}(jQuery);
1
+ !function(s){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.slides=redux.field_objects.slides||{},redux.field_objects.slides.init=function(e){e=s.redux.getSelector(e,"slides"),s(e).each(function(){var e=s(this),i=e;redux.field_objects.media.init(e),e.hasClass("redux-field-container")||(i=e.parents(".redux-field-container:first")),i.is(":hidden")||(i.hasClass("redux-container-slides")&&i.addClass("redux-field-init"),i.hasClass("redux-field-init")&&(i.removeClass("redux-field-init"),e.find(".redux-slides-remove").on("click",function(){var e;redux_change(s(this)),s(this).parent().siblings().find('input[type="text"]').val(""),s(this).parent().siblings().find("textarea").val(""),s(this).parent().siblings().find('input[type="hidden"]').val(""),1<s(this).parents(".redux-container-slides:first").find(".redux-slides-accordion-group").length?s(this).parents(".redux-slides-accordion-group:first").slideUp("medium",function(){s(this).remove()}):(e=s(this).parent(".redux-slides-accordion").data("new-content-title"),s(this).parents(".redux-slides-accordion-group:first").find(".remove-image").click(),s(this).parents(".redux-container-slides:first").find(".redux-slides-accordion-group:last").find(".redux-slides-header").text(e))}),e.find(".redux-slides-add").off("click").click(function(){var e,i=s(this).prev().find(".redux-slides-accordion-group:last").clone(!0),t=+s(i).find(".slide-title").attr("name").match(/[0-9]+(?!.*[0-9])/)+1;s(i).find('input[type="text"], input[type="hidden"], textarea').each(function(){s(this).attr("name",jQuery(this).attr("name").replace(/[0-9]+(?!.*[0-9])/,t)).attr("id",s(this).attr("id").replace(/[0-9]+(?!.*[0-9])/,t)),s(this).val(""),s(this).hasClass("slide-sort")&&s(this).val(t)}),e=s(this).prev().data("new-content-title"),s(i).find(".screenshot").removeAttr("style"),s(i).find(".screenshot").addClass("hide"),s(i).find(".screenshot a").attr("href",""),s(i).find(".remove-image").addClass("hide"),s(i).find(".redux-slides-image").attr("src","").removeAttr("id"),s(i).find("h3").text("").append('<span class="redux-slides-header">'+e+'</span><span class="ui-accordion-header-icon ui-icon ui-icon-plus"></span>'),s(this).prev().append(i)}),e.find(".slide-title").keyup(function(e){var i=e.target.value;s(this).parents().eq(3).find(".redux-slides-header").text(i)}),e.find(".redux-slides-accordion").accordion({header:"> div > fieldset > h3",collapsible:!0,active:!1,heightStyle:"content",icons:{header:"ui-icon-plus",activeHeader:"ui-icon-minus"}}).sortable({axis:"y",handle:"h3",connectWith:".redux-slides-accordion",start:function(e,i){i.placeholder.height(i.item.height()),i.placeholder.width(i.item.width())},placeholder:"ui-state-highlight",stop:function(e,i){i.item.children("h3").triggerHandler("focusout"),s("input.slide-sort").each(function(e){s(this).val(e)})}})))})}}(jQuery);
redux-core/inc/fields/sortable/redux-sortable.js CHANGED
@@ -1,4 +1,4 @@
1
- /*global jQuery, document, redux_change, redux*/
2
 
3
  (function( $ ) {
4
  'use strict';
@@ -9,9 +9,7 @@
9
  redux.field_objects.sortable = redux.field_objects.sortable || {};
10
 
11
  redux.field_objects.sortable.init = function( selector ) {
12
- if ( ! selector ) {
13
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-sortable:visible' );
14
- }
15
 
16
  $( selector ).each(
17
  function() {
1
+ /*global jQuery, redux_change, redux*/
2
 
3
  (function( $ ) {
4
  'use strict';
9
  redux.field_objects.sortable = redux.field_objects.sortable || {};
10
 
11
  redux.field_objects.sortable.init = function( selector ) {
12
+ selector = $.redux.getSelector( selector, 'sortable' );
 
 
13
 
14
  $( selector ).each(
15
  function() {
redux-core/inc/fields/sortable/redux-sortable.min.js CHANGED
@@ -1 +1 @@
1
- !function(s){"use strict";var r="";redux.field_objects=redux.field_objects||{},redux.field_objects.sortable=redux.field_objects.sortable||{},redux.field_objects.sortable.init=function(e){e=e||s(document).find(".redux-group-tab:visible").find(".redux-container-sortable:visible"),s(e).each(function(){var e=s(this),i=e;e.hasClass("redux-field-container")||(i=e.parents(".redux-field-container:first")),i.is(":hidden")||i.hasClass("redux-field-init")&&(i.removeClass("redux-field-init"),e.find(".redux-sortable").sortable({handle:".drag",placeholder:"placeholder",opacity:.7,scroll:!1,out:function(e,i){i.helper&&(r=0<i.offset.top?"down":"up",redux.field_objects.sortable.scrolling(s(this).parents(".redux-field-container:first")))},over:function(){r=""},deactivate:function(){r=""},update:function(){redux_change(s(this))}}),e.find(".redux-sortable i.visibility").on("click",function(){var e=s(this).parents("li"),i=e.hasClass("invisible")?(e.removeClass("invisible"),1):(e.addClass("invisible"),"");e.find('input[type="hidden"]').val(i)}))})},redux.field_objects.sortable.scrolling=function(e){var i;void 0!==e&&(i=e.find(".redux-sorter"),"up"===r?(i.scrollTop(i.scrollTop()-20),setTimeout(redux.field_objects.sortable.scrolling,50)):"down"===r&&(i.scrollTop(i.scrollTop()+20),setTimeout(redux.field_objects.sortable.scrolling,50)))}}(jQuery);
1
+ !function(s){"use strict";var l="";redux.field_objects=redux.field_objects||{},redux.field_objects.sortable=redux.field_objects.sortable||{},redux.field_objects.sortable.init=function(e){e=s.redux.getSelector(e,"sortable"),s(e).each(function(){var e=s(this),i=e;e.hasClass("redux-field-container")||(i=e.parents(".redux-field-container:first")),i.is(":hidden")||i.hasClass("redux-field-init")&&(i.removeClass("redux-field-init"),e.find(".redux-sortable").sortable({handle:".drag",placeholder:"placeholder",opacity:.7,scroll:!1,out:function(e,i){i.helper&&(l=0<i.offset.top?"down":"up",redux.field_objects.sortable.scrolling(s(this).parents(".redux-field-container:first")))},over:function(){l=""},deactivate:function(){l=""},update:function(){redux_change(s(this))}}),e.find(".redux-sortable i.visibility").on("click",function(){var e=s(this).parents("li"),i=e.hasClass("invisible")?(e.removeClass("invisible"),1):(e.addClass("invisible"),"");e.find('input[type="hidden"]').val(i)}))})},redux.field_objects.sortable.scrolling=function(e){var i;void 0!==e&&(i=e.find(".redux-sorter"),"up"===l?(i.scrollTop(i.scrollTop()-20),setTimeout(redux.field_objects.sortable.scrolling,50)):"down"===l&&(i.scrollTop(i.scrollTop()+20),setTimeout(redux.field_objects.sortable.scrolling,50)))}}(jQuery);
redux-core/inc/fields/sorter/class-redux-sorter.php CHANGED
@@ -30,7 +30,7 @@ if ( ! class_exists( 'Redux_Sorter', false ) ) {
30
  foreach ( $arr as $id => $name ) {
31
 
32
  if ( is_numeric( $id ) ) {
33
- $slug = Redux_Helpers::strtolower( $name );
34
  $slug = str_replace( ' ', '-', $slug );
35
 
36
  $new_arr[ $slug ] = $name;
30
  foreach ( $arr as $id => $name ) {
31
 
32
  if ( is_numeric( $id ) ) {
33
+ $slug = Redux_Core::strtolower( $name );
34
  $slug = str_replace( ' ', '-', $slug );
35
 
36
  $new_arr[ $slug ] = $name;
redux-core/inc/fields/sorter/redux-sorter.js CHANGED
@@ -15,9 +15,7 @@
15
  redux.field_objects.sorter = redux.field_objects.sorter || {};
16
 
17
  redux.field_objects.sorter.init = function( selector ) {
18
- if ( ! selector ) {
19
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-sorter:visible' );
20
- }
21
 
22
  $( selector ).each(
23
  function() {
15
  redux.field_objects.sorter = redux.field_objects.sorter || {};
16
 
17
  redux.field_objects.sorter.init = function( selector ) {
18
+ selector = $.redux.getSelector( selector, 'sorter' );
 
 
19
 
20
  $( selector ).each(
21
  function() {
redux-core/inc/fields/sorter/redux-sorter.min.js CHANGED
@@ -1 +1 @@
1
- !function(s){"use strict";var i="";redux.field_objects=redux.field_objects||{},redux.field_objects.sorter=redux.field_objects.sorter||{},redux.field_objects.sorter.init=function(e){e=e||s(document).find(".redux-group-tab:visible").find(".redux-container-sorter:visible"),s(e).each(function(){var t=s(this),e=t;t.hasClass("redux-field-container")||(e=t.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),t.find(".redux-sorter").each(function(){var e=s(this).attr("id");t.find("#"+e).find("ul").sortable({items:"li",placeholder:"placeholder",connectWith:".sortlist_"+e,opacity:.8,scroll:!1,out:function(e,t){t.helper&&(i=0<t.offset.top?"down":"up",redux.field_objects.sorter.scrolling(s(this).parents(".redux-field-container:first")))},over:function(){i=""},deactivate:function(){i=""},stop:function(e,t){var i=redux.optName.sorter[s(this).attr("data-id")],r=s(this).find("h3").text();i.limits&&r&&i.limits[r]&&(s(this).children("li").length>=i.limits[r]?(s(this).addClass("filled"),s(this).children("li").length>i.limits[r]&&s(t.sender).sortable("cancel")):s(this).removeClass("filled"))},update:function(e,t){var i=redux.optName.sorter[s(this).attr("data-id")],r=s(this).find("h3").text();i.limits&&r&&i.limits[r]&&(s(this).children("li").length>=i.limits[r]?(s(this).addClass("filled"),s(this).children("li").length>i.limits[r]&&s(t.sender).sortable("cancel")):s(this).removeClass("filled")),s(this).find(".position").each(function(){var e,t=s(this).parent().attr("data-id"),i=s(this).parent().parent().attr("data-group-id");redux_change(s(this)),e=s(this).parent().parent().parent().attr("id"),s(this).prop("name",redux.optName.args.opt_name+"["+e+"]["+i+"]["+t+"]")})}}),t.find(".redux-sorter").disableSelection()}))})},redux.field_objects.sorter.scrolling=function(e){var t;void 0!==e&&(t=e.find(".redux-sorter"),"up"===i?(t.scrollTop(t.scrollTop()-20),setTimeout(redux.field_objects.sorter.scrolling,50)):"down"===i&&(t.scrollTop(t.scrollTop()+20),setTimeout(redux.field_objects.sorter.scrolling,50)))}}(jQuery);
1
+ !function(s){"use strict";var i="";redux.field_objects=redux.field_objects||{},redux.field_objects.sorter=redux.field_objects.sorter||{},redux.field_objects.sorter.init=function(e){e=s.redux.getSelector(e,"sorter"),s(e).each(function(){var t=s(this),e=t;t.hasClass("redux-field-container")||(e=t.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),t.find(".redux-sorter").each(function(){var e=s(this).attr("id");t.find("#"+e).find("ul").sortable({items:"li",placeholder:"placeholder",connectWith:".sortlist_"+e,opacity:.8,scroll:!1,out:function(e,t){t.helper&&(i=0<t.offset.top?"down":"up",redux.field_objects.sorter.scrolling(s(this).parents(".redux-field-container:first")))},over:function(){i=""},deactivate:function(){i=""},stop:function(e,t){var i=redux.optName.sorter[s(this).attr("data-id")],r=s(this).find("h3").text();i.limits&&r&&i.limits[r]&&(s(this).children("li").length>=i.limits[r]?(s(this).addClass("filled"),s(this).children("li").length>i.limits[r]&&s(t.sender).sortable("cancel")):s(this).removeClass("filled"))},update:function(e,t){var i=redux.optName.sorter[s(this).attr("data-id")],r=s(this).find("h3").text();i.limits&&r&&i.limits[r]&&(s(this).children("li").length>=i.limits[r]?(s(this).addClass("filled"),s(this).children("li").length>i.limits[r]&&s(t.sender).sortable("cancel")):s(this).removeClass("filled")),s(this).find(".position").each(function(){var e,t=s(this).parent().attr("data-id"),i=s(this).parent().parent().attr("data-group-id");redux_change(s(this)),e=s(this).parent().parent().parent().attr("id"),s(this).prop("name",redux.optName.args.opt_name+"["+e+"]["+i+"]["+t+"]")})}}),t.find(".redux-sorter").disableSelection()}))})},redux.field_objects.sorter.scrolling=function(e){var t;void 0!==e&&(t=e.find(".redux-sorter"),"up"===i?(t.scrollTop(t.scrollTop()-20),setTimeout(redux.field_objects.sorter.scrolling,50)):"down"===i&&(t.scrollTop(t.scrollTop()+20),setTimeout(redux.field_objects.sorter.scrolling,50)))}}(jQuery);
redux-core/inc/fields/spacing/redux-spacing.js CHANGED
@@ -7,9 +7,7 @@
7
  redux.field_objects.spacing = redux.field_objects.spacing || {};
8
 
9
  redux.field_objects.spacing.init = function( selector ) {
10
- if ( ! selector ) {
11
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-spacing:visible' );
12
- }
13
 
14
  $( selector ).each(
15
  function() {
7
  redux.field_objects.spacing = redux.field_objects.spacing || {};
8
 
9
  redux.field_objects.spacing.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'spacing' );
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/fields/spacing/redux-spacing.min.js CHANGED
@@ -1 +1 @@
1
- !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.spacing=redux.field_objects.spacing||{},redux.field_objects.spacing.init=function(i){i=i||n(document).find(".redux-group-tab:visible").find(".redux-container-spacing:visible"),n(i).each(function(){var i=n(this),e=i;i.hasClass("redux-field-container")||(e=i.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),i.find(".redux-spacing-units").select2(),i.find(".redux-spacing-input").on("change",function(){var i,e=n(this).parents(".redux-field:first").find(".field-units").val();0!==n(this).parents(".redux-field:first").find(".redux-spacing-units").length&&(e=n(this).parents(".redux-field:first").find(".redux-spacing-units option:selected").val()),i=n(this).val(),void 0!==e&&i&&(i+=e),n(this).hasClass("redux-spacing-all")?n(this).parents(".redux-field:first").find(".redux-spacing-value").each(function(){n(this).val(i)}):n("#"+n(this).attr("rel")).val(i)}),i.find(".redux-spacing-units").on("change",function(){n(this).parents(".redux-field:first").find(".redux-spacing-input").change(),i.find(".field-units").val(n(this).val())}))})}}(jQuery);
1
+ !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.spacing=redux.field_objects.spacing||{},redux.field_objects.spacing.init=function(i){i=n.redux.getSelector(i,"spacing"),n(i).each(function(){var i=n(this),e=i;i.hasClass("redux-field-container")||(e=i.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),i.find(".redux-spacing-units").select2(),i.find(".redux-spacing-input").on("change",function(){var i,e=n(this).parents(".redux-field:first").find(".field-units").val();0!==n(this).parents(".redux-field:first").find(".redux-spacing-units").length&&(e=n(this).parents(".redux-field:first").find(".redux-spacing-units option:selected").val()),i=n(this).val(),void 0!==e&&i&&(i+=e),n(this).hasClass("redux-spacing-all")?n(this).parents(".redux-field:first").find(".redux-spacing-value").each(function(){n(this).val(i)}):n("#"+n(this).attr("rel")).val(i)}),i.find(".redux-spacing-units").on("change",function(){n(this).parents(".redux-field:first").find(".redux-spacing-input").change(),i.find(".field-units").val(n(this).val())}))})}}(jQuery);
redux-core/inc/fields/spinner/redux-spinner.js CHANGED
@@ -7,10 +7,7 @@
7
  redux.field_objects.spinner = redux.field_objects.spinner || {};
8
 
9
  redux.field_objects.spinner.init = function( selector ) {
10
-
11
- if ( ! selector ) {
12
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-spinner:visible' );
13
- }
14
 
15
  $( selector ).each(
16
  function() {
7
  redux.field_objects.spinner = redux.field_objects.spinner || {};
8
 
9
  redux.field_objects.spinner.init = function( selector ) {
10
+ selector = $.redux.getSelector( selector, 'spinner' );
 
 
 
11
 
12
  $( selector ).each(
13
  function() {
redux-core/inc/fields/spinner/redux-spinner.min.js CHANGED
@@ -1 +1 @@
1
- !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.spinner=redux.field_objects.spinner||{},redux.field_objects.spinner.init=function(e){e=e||n(document).find(".redux-group-tab:visible").find(".redux-container-spinner:visible"),n(e).each(function(){var i=n(this),e=i;i.hasClass("redux-field-container")||(e=i.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),i.find(".redux_spinner").each(function(){var e=n(this).find(".spinner-input").data();e.id=n(this).find(".spinner-input").attr("id"),i.find("#"+e.id).spinner({value:parseFloat(e.val,null),min:parseFloat(e.min,null),max:parseFloat(e.max,null),step:parseFloat(e.step,null),addText:e.plus,subText:e.minus,prefix:e.prefix,suffix:e.suffix,places:e.places,point:e.point})}))})}}(jQuery);
1
+ !function(n){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.spinner=redux.field_objects.spinner||{},redux.field_objects.spinner.init=function(e){e=n.redux.getSelector(e,"spinner"),n(e).each(function(){var i=n(this),e=i;i.hasClass("redux-field-container")||(e=i.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),i.find(".redux_spinner").each(function(){var e=n(this).find(".spinner-input").data();e.id=n(this).find(".spinner-input").attr("id"),i.find("#"+e.id).spinner({value:parseFloat(e.val,null),min:parseFloat(e.min,null),max:parseFloat(e.max,null),step:parseFloat(e.step,null),addText:e.plus,subText:e.minus,prefix:e.prefix,suffix:e.suffix,places:e.places,point:e.point})}))})}}(jQuery);
redux-core/inc/fields/switch/redux-switch.js CHANGED
@@ -14,9 +14,7 @@
14
  redux.field_objects.switch = redux.field_objects.switch || {};
15
 
16
  redux.field_objects.switch.init = function( selector ) {
17
- if ( ! selector ) {
18
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-switch:visible' );
19
- }
20
 
21
  $( selector ).each(
22
  function() {
14
  redux.field_objects.switch = redux.field_objects.switch || {};
15
 
16
  redux.field_objects.switch.init = function( selector ) {
17
+ selector = $.redux.getSelector( selector, 'switch' );
 
 
18
 
19
  $( selector ).each(
20
  function() {
redux-core/inc/fields/switch/redux-switch.min.js CHANGED
@@ -1 +1 @@
1
- !function(t){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.switch=redux.field_objects.switch||{},redux.field_objects.switch.init=function(e){e=e||t(document).find(".redux-group-tab:visible").find(".redux-container-switch:visible"),t(e).each(function(){var s=t(this),e=s;s.hasClass("redux-field-container")||(e=s.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),s.find(".cb-enable").click(function(){var e,i;t(this).hasClass("selected")||(e=t(this).parents(".switch-options"),t(".cb-disable",e).removeClass("selected"),t(this).addClass("selected"),t(".checkbox-input",e).val(1).trigger("change"),redux_change(t(".checkbox-input",e)),i=".f_"+t(this).data("id"),s.find(i).slideDown("normal","swing"))}),s.find(".cb-disable").click(function(){var e,i;t(this).hasClass("selected")||(e=t(this).parents(".switch-options"),t(".cb-enable",e).removeClass("selected"),t(this).addClass("selected"),t(".checkbox-input",e).val(0).trigger("change"),redux_change(t(".checkbox-input",e)),i=".f_"+t(this).data("id"),s.find(i).slideUp("normal","swing"))}),s.find(".cb-enable span, .cb-disable span").find().attr("unselectable","on"))})}}(jQuery);
1
+ !function(t){"use strict";redux.field_objects=redux.field_objects||{},redux.field_objects.switch=redux.field_objects.switch||{},redux.field_objects.switch.init=function(e){e=t.redux.getSelector(e,"switch"),t(e).each(function(){var i=t(this),e=i;i.hasClass("redux-field-container")||(e=i.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),i.find(".cb-enable").click(function(){var e,s;t(this).hasClass("selected")||(e=t(this).parents(".switch-options"),t(".cb-disable",e).removeClass("selected"),t(this).addClass("selected"),t(".checkbox-input",e).val(1).trigger("change"),redux_change(t(".checkbox-input",e)),s=".f_"+t(this).data("id"),i.find(s).slideDown("normal","swing"))}),i.find(".cb-disable").click(function(){var e,s;t(this).hasClass("selected")||(e=t(this).parents(".switch-options"),t(".cb-enable",e).removeClass("selected"),t(this).addClass("selected"),t(".checkbox-input",e).val(0).trigger("change"),redux_change(t(".checkbox-input",e)),s=".f_"+t(this).data("id"),i.find(s).slideUp("normal","swing"))}),i.find(".cb-enable span, .cb-disable span").find().attr("unselectable","on"))})}}(jQuery);
redux-core/inc/fields/typography/class-redux-typography.php CHANGED
@@ -697,7 +697,7 @@ if ( ! class_exists( 'Redux_Typography', false ) ) {
697
  $in_use = '0';
698
  }
699
 
700
- if ( Redux_Helpers::google_fonts_update_needed() && ! get_option( 'auto_update_redux_google_fonts', false ) ) {
701
  $nonce = wp_create_nonce( 'redux_update_google_fonts' );
702
 
703
  echo '<div data-nonce="' . esc_attr( $nonce ) . '" class="redux-update-google-fonts update-message notice inline notice-warning notice-alt">';
@@ -1102,7 +1102,7 @@ if ( ! class_exists( 'Redux_Typography', false ) ) {
1102
  $lc_fonts = array_change_key_case( $this->field['custom_fonts'] );
1103
  foreach ( $lc_fonts as $group => $font_arr ) {
1104
  foreach ( $font_arr as $key => $value ) {
1105
- $arr[ Redux_Helpers::strtolower( $key ) ] = $key;
1106
  }
1107
  }
1108
 
@@ -1111,7 +1111,7 @@ if ( ! class_exists( 'Redux_Typography', false ) ) {
1111
  unset( $arr );
1112
 
1113
  // lowercase chosen font for matching purposes.
1114
- $lc_font = Redux_Helpers::strtolower( $font['font-family'] );
1115
 
1116
  // Remove spaces after commas in chosen font for mathcing purposes.
1117
  $lc_font = str_replace( ', ', ',', $lc_font );
697
  $in_use = '0';
698
  }
699
 
700
+ if ( Redux_Helpers::google_fonts_update_needed() && ! get_option( 'auto_update_redux_google_fonts', false ) && $this->field['font-family'] && $this->field['google'] ) {
701
  $nonce = wp_create_nonce( 'redux_update_google_fonts' );
702
 
703
  echo '<div data-nonce="' . esc_attr( $nonce ) . '" class="redux-update-google-fonts update-message notice inline notice-warning notice-alt">';
1102
  $lc_fonts = array_change_key_case( $this->field['custom_fonts'] );
1103
  foreach ( $lc_fonts as $group => $font_arr ) {
1104
  foreach ( $font_arr as $key => $value ) {
1105
+ $arr[ Redux_Core::strtolower( $key ) ] = $key;
1106
  }
1107
  }
1108
 
1111
  unset( $arr );
1112
 
1113
  // lowercase chosen font for matching purposes.
1114
+ $lc_font = Redux_Core::strtolower( $font['font-family'] );
1115
 
1116
  // Remove spaces after commas in chosen font for mathcing purposes.
1117
  $lc_font = str_replace( ', ', ',', $lc_font );
redux-core/inc/fields/typography/redux-typography.css CHANGED
@@ -26,7 +26,7 @@
26
 
27
  .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; }
28
 
29
- .redux-main .redux-typography-container label { position: relative; font-size: 12px !important; text-align: left; color: #999; cursor: default; }
30
 
31
  .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; }
32
 
@@ -49,6 +49,6 @@
49
 
50
  .wp-customizer .redux-typography-container .select_wrapper { width: 100% !important; }
51
 
52
- /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkdXgtdHlwb2dyYXBoeS5jc3MiLCJzb3VyY2VzIjpbInJlZHV4LXR5cG9ncmFwaHkuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxBQUNJLFdBRE8sQ0FDUCwyQkFBMkIsQ0FBQyxFQUN4QixPQUFPLEVBQUUsS0FBSyxFQUNkLFFBQVEsRUFBRSxRQUFRLEVBQ2xCLE1BQU0sRUFBRSxDQUFDLEVBQ1QsT0FBTyxFQUFFLENBQUMsRUFDVixLQUFLLEVBQUUsSUFBSSxFQUNYLFNBQVMsRUFBRSxLQUFLLEdBMEtuQjs7QUFqTEwsQUFTUSxXQVRHLENBQ1AsMkJBQTJCLENBUXZCLFNBQVMsQ0FBQyxFQUNOLEtBQUssRUFBRSxJQUFJLEdBVWQ7O0FBcEJULEFBWVksV0FaRCxDQUNQLDJCQUEyQixDQVF2QixTQUFTLEFBR0osT0FBTyxDQUFDLEVBQ0wsVUFBVSxFQUFFLE1BQU0sRUFDbEIsT0FBTyxFQUFFLEtBQUssRUFDZCxTQUFTLEVBQUUsQ0FBQyxFQUNaLE9BQU8sRUFBRSxHQUFHLEVBQ1osS0FBSyxFQUFFLElBQUksRUFDWCxNQUFNLEVBQUUsQ0FBQyxHQUNaOztBQW5CYixBQXNCUSxXQXRCRyxDQUNQLDJCQUEyQixDQXFCdkIsS0FBSyxBQUFBLGtCQUFrQixFQXRCL0IsV0FBVyxDQUNQLDJCQUEyQixDQXNCdkIsdUJBQXVCLENBQUMsRUFDcEIsa0JBQWtCLEVBQUUsVUFBVSxFQUM5QixlQUFlLEVBQUUsVUFBVSxFQUMzQixhQUFhLEVBQUUsVUFBVSxFQUN6QixVQUFVLEVBQUUsVUFBVSxFQUN0QixNQUFNLEVBQUUsSUFBSSxFQUNaLE9BQU8sRUFBRSxpQkFBaUIsRUFDMUIsVUFBVSxFQUFFLENBQUMsRUFDYixhQUFhLEVBQUUsQ0FBQyxFQUNoQixTQUFTLEVBQUUsZUFBZSxHQUM3Qjs7QUFqQ1QsQUFtQ1EsV0FuQ0csQ0FDUCwyQkFBMkIsQ0FrQ3ZCLGVBQWUsQ0FBQyxFQUNaLE9BQU8sRUFBRSxLQUFLLEVBQ2QsUUFBUSxFQUFFLFFBQVEsRUFD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 */
53
 
54
  /*# sourceMappingURL=redux-typography.css.map */
26
 
27
  .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; }
28
 
29
+ .redux-main .redux-typography-container label { position: relative; font-size: 12px !important; text-align: left; color: #999; width: 100%; cursor: default; }
30
 
31
  .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; }
32
 
49
 
50
  .wp-customizer .redux-typography-container .select_wrapper { width: 100% !important; }
51
 
52
+ /*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkdXgtdHlwb2dyYXBoeS5jc3MiLCJzb3VyY2VzIjpbInJlZHV4LXR5cG9ncmFwaHkuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxBQUNJLFdBRE8sQ0FDUCwyQkFBMkIsQ0FBQyxFQUN4QixPQUFPLEVBQUUsS0FBSyxFQUNkLFFBQVEsRUFBRSxRQUFRLEVBQ2xCLE1BQU0sRUFBRSxDQUFDLEVBQ1QsT0FBTyxFQUFFLENBQUMsRUFDVixLQUFLLEVBQUUsSUFBSSxFQUNYLFNBQVMsRUFBRSxLQUFLLEdBMktuQjs7QUFsTEwsQUFTUSxXQVRHLENBQ1AsMkJBQTJCLENBUXZCLFNBQVMsQ0FBQyxFQUNOLEtBQUssRUFBRSxJQUFJLEdBVWQ7O0FBcEJULEFBWVksV0FaRCxDQUNQLDJCQUEyQixDQVF2QixTQUFTLEFBR0osT0FBTyxDQUFDLEVBQ0wsVUFBVSxFQUFFLE1BQU0sRUFDbEIsT0FBTyxFQUFFLEtBQUssRUFDZCxTQUFTLEVBQUUsQ0FBQyxFQUNaLE9BQU8sRUFBRSxHQUFHLEVBQ1osS0FBSyxFQUFFLElBQUksRUFDWCxNQUFNLEVBQUUsQ0FBQyxHQUNaOztBQW5CYixBQXNCUSxXQXRCRyxDQUNQLDJCQUEyQixDQXFCdkIsS0FBSyxBQUFBLGtCQUFrQixFQXRCL0IsV0FBVyxDQUNQLDJCQUEyQixDQXNCdkIsdUJBQXVCLENBQUMsRUFDcEIsa0JBQWtCLEVBQUUsVUFBVSxFQUM5QixlQUFlLEVBQUUsVUFBVSxFQUMzQixhQUFhLEVBQUUsVUFBVSxFQUN6QixVQUFVLEVBQUUsVUFBVSxFQUN0QixNQUFNLEVBQUUsSUFBSSxFQUNaLE9BQU8sRUFBRSxpQkFBaUIsRUFDMUIsVUFBVSxFQUFFLENBQUMsRUFDYixhQUFhLEVBQUUsQ0FBQyxFQUNoQixTQUFTLEVBQUUsZUFBZSxHQUM3Qjs7QUFqQ1QsQUFtQ1EsV0FuQ0csQ0FDUCwyQkFBMkIsQ0FrQ3ZCLGVBQWUsQ0FBQyxFQUNaLE9BQU8sRUFBRSxLQUFLLEVBQ2QsUUFBUSxFQUFFLFFBQVEsRUFD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 */
53
 
54
  /*# sourceMappingURL=redux-typography.css.map */
redux-core/inc/fields/typography/redux-typography.css.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["redux-typography.scss","redux-typography.css"],"names":[],"mappings":"AAAA,0CAAA,cACI,ECEI,kBAAkB,EDH1B,SACI,ECII,UAAU,EDLlB,WACI,ECMI,gBAAgB,EAAA;;ADPxB,oDACI,WAAA,EAAA;;AADJ,2DCagB,kBAAkB,EDZ9B,cAAA,ECcY,YAAY,EDdxB,YAAA,ECgBY,WAAW,EDhBvB,SAAA,EAAA;;AADJ,mIACI,8BAwFI,EAxFJ,yBAAA,EC0BQ,sBAAsB,ED1B9B,YAAA,EC4BQ,0BAA0B,ED5BlC,aAAA,EC8BQ,gBAAgB,ED9BxB,0BAAA,EAAA;;AADJ,0DAmLW,cAAY,EAnLZ,kBAqLC,EArLD,WAoLH,EApLG,WAoLH,EApLG,kBAqLC,EArLD,qBAmNC,ECzKA,2BAA2B,EDgLhC,2BACH,EC/KQ,YAAY,EDsLxB,8BAC+B,EAD/B,yBACI,ECnLQ,sBAAsB,EAAA;;ADhDlC,yECmDgB,6BAA6B,EAAA;;ADnD7C,0ECuDgB,6BAA6B,EAAA;;ADvD7C,+FC4DoB,WAAW,EAAA;;AD5D/B,4ECiEgB,0BAA0B,EAC1B,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,4BAA4B,EAC5B,qBAAqB,EACrB,sBAAsB,EACtB,8BAA8B,EAE9B,yBAAyB,EACzB,sBAAsB,EAAA;;AD3EtC,+DCgFY,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,YAAY,EAGZ,kBAAkB,EAAA;;ADtF9B,yDC0FY,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,cAAc,EACd,eAAe,EACf,WAAW,EACX,WAAW,EACX,YAAY,EACZ,8BAA8B,EAE9B,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EAAA;;ADxGpC,mEC2GgB,cAAc,EAAA;;AD3G9B,oEC+GgB,8BAA8B,EAE9B,yBAAyB,EACzB,sBAAsB,EACtB,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,oBAAoB,EACpB,qBAAqB,EAGrB,kBAAkB,EAAA;;AD5HlC,0DCiIY,cAAc,EACd,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,WAAW,EACX,eAAe,EACf,WAAW,EACX,YAAY,EACZ,8BAA8B,EAE9B,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EAAA;;AD7IpC,gDCkJY,kBAAkB,EAClB,0BAA0B,EAC1B,gBAAgB,EAChB,WAAW,EAEX,eAAe,EAAA;;ADvJ3B,8DC2JY,aAAa,EACb,WAAW,EACX,0BAA0B,EAC1B,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,8BAA8B,EAE9B,sBAAsB,EACtB,gBAAgB,EAAA;;ADtK5B,4DC0KY,cAAc,EACd,SAAS,EAAA;;AD3KrB,sEC+KY,iBAAiB,EAAA;;AAIzB,uCDnLJ,sDCsLgB,gBAAgB,EAChB,cAAc,EAAA;CDvL9B,sEC0LoB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,yBAAyB,EACzB,0BAA0B,EAAA;CD9L9C,qECkMoB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,yBAAyB,EACzB,4BAA4B,EAAA;CDtMhD,gFCwMwB,UAAU,EAAA;CDxMlC,4EC6MoB,UAAU,EACV,uBAAuB,EAAA;CD9M3C,iFCoNgB,eAAe,EAAA,EAClB;;AAKb,uCACI,oEAEQ,gBAAgB,EAAA,EACnB;;AAIT,4DAGY,UAAU,EACV,cAAc,EACd,cAAc,EAAA;;AAL1B,uEAOgB,UAAU,EAAA;;AAP1B,6DAWY,sBAAsB,EAAA;;AA1LlC,i7MAAi7M","file":"redux-typography.css","sourcesContent":[".redux-main {\n .redux-typography-container {\n display: block;\n position: relative;\n margin: 0;\n padding: 0;\n width: 100%;\n max-width: 660px;\n\n .clearfix {\n clear: both;\n\n &::after {\n visibility: hidden;\n display: block;\n font-size: 0;\n content: \" \";\n clear: both;\n height: 0;\n }\n }\n\n input.wp-picker-default,\n .redux-typography-color {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n height: 24px;\n padding: 0 14px !important;\n margin-top: 0;\n margin-bottom: 0;\n font-size: 12px !important;\n }\n\n .select_wrapper {\n display: block;\n position: relative;\n float: left;\n clear: none;\n margin: 0 10px 0 0;\n width: 48% !important;\n min-width: 210px !important;\n max-width: 324px !important;\n height: 57px;\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n\n &:nth-child(odd) {\n margin-right: 10px !important;\n }\n\n &:nth-child(even) {\n margin-right: 10px !important;\n }\n\n &.typography-family {\n .select2-container {\n width: 100%;\n }\n }\n\n .redux-typography {\n font-size: 14px !important;\n display: block;\n float: left;\n height: 28px !important;\n line-height: 50px !important;\n padding: 0 !important;\n width: 100% !important;\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n }\n }\n\n .wp-picker-container {\n float: left;\n clear: left;\n margin-bottom: 12px;\n padding: 3px;\n -webkit-border-radius: 3px;\n -moz-border-radius: 3px;\n border-radius: 3px;\n }\n\n .input_wrapper {\n display: block;\n position: relative;\n margin: 0 4px 0 5px;\n padding: 0;\n width: 23%;\n max-width: 23%;\n min-width: 70px;\n float: left;\n clear: none;\n height: 57px;\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n vertical-align: baseline;\n\n &.font-size {\n margin-left: 0;\n }\n\n input.mini {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n width: 78%;\n text-align: center;\n margin: 0;\n height: 28px;\n top: 3px;\n padding: 0 2px 0 5px;\n text-decoration: none;\n -webkit-border-radius: 4px;\n -moz-border-radius: 4px;\n border-radius: 4px;\n }\n }\n\n .picker-wrapper {\n display: block;\n position: relative;\n margin: 0;\n padding: 0;\n width: 100%;\n min-width: 100%;\n clear: none;\n height: 57px;\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n vertical-align: baseline;\n }\n\n label {\n\n position: relative;\n font-size: 12px !important;\n text-align: left;\n color: #999;\n //margin: 4px 0 2px 0 !important;\n cursor: default;\n }\n\n .typography-preview {\n display: none;\n width: 100%;\n border: 1px dotted #d3d3d3;\n max-width: 850px;\n padding: 10px;\n font-size: 10pt;\n height: auto;\n margin: 5px 0 10px;\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n overflow: hidden;\n }\n\n .typography-color {\n border: 0 none;\n margin: 0;\n }\n\n ::-webkit-input-placeholder {\n line-height: 19px;\n }\n }\n\n @media screen and (max-width: 540px) {\n .redux-main {\n .redux-typography-container {\n max-width: 230px;\n margin: 0 auto;\n\n .select_wrapper {\n max-width: 210px;\n min-width: 210px;\n width: 210px;\n margin-left: 0 !important;\n margin-right: 0 !important;\n }\n\n .input_wrapper {\n max-width: 101px;\n min-width: 101px;\n width: 101px;\n margin-left: 0 !important;\n margin-right: 5px !important;\n input.mini {\n width: 73%;\n }\n }\n\n .input-append .add-on {\n width: 30%;\n padding: 5px !important;\n }\n\n }\n\n .redux-main .wp-picker-container .wp-picker-input-wrap {\n margin-top: 7px;\n }\n }\n }\n}\n\n@media screen and (max-width: 360px) {\n .redux-main {\n .redux-typography-container .iris-picker .iris-square {\n margin-right: 3%;\n }\n }\n}\n\n.wp-customizer {\n .redux-typography-container {\n .input_wrapper {\n width: 40%;\n max-width: 40%;\n min-width: 20%;\n input.mini {\n width: 70%;\n }\n }\n .select_wrapper {\n width: 100% !important;\n }\n }\n}\n",".redux-main .redux-typography-container { display: block; position: relative; margin: 0; padding: 0; width: 100%; max-width: 660px; }\n\n.redux-main .redux-typography-container .clearfix { clear: both; }\n\n.redux-main .redux-typography-container .clearfix::after { visibility: hidden; display: block; font-size: 0; content: \" \"; clear: both; height: 0; }\n\n.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; }\n\n.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; }\n\n.redux-main .redux-typography-container .select_wrapper:nth-child(odd) { margin-right: 10px !important; }\n\n.redux-main .redux-typography-container .select_wrapper:nth-child(even) { margin-right: 10px !important; }\n\n.redux-main .redux-typography-container .select_wrapper.typography-family .select2-container { width: 100%; }\n\n.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; }\n\n.redux-main .redux-typography-container .wp-picker-container { float: left; clear: left; margin-bottom: 12px; padding: 3px; border-radius: 3px; }\n\n.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; }\n\n.redux-main .redux-typography-container .input_wrapper.font-size { margin-left: 0; }\n\n.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; }\n\n.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; }\n\n.redux-main .redux-typography-container label { position: relative; font-size: 12px !important; text-align: left; color: #999; cursor: default; }\n\n.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; }\n\n.redux-main .redux-typography-container .typography-color { border: 0 none; margin: 0; }\n\n.redux-main .redux-typography-container ::-webkit-input-placeholder { line-height: 19px; }\n\n@media screen and (max-width: 540px) { .redux-main .redux-main .redux-typography-container { max-width: 230px; margin: 0 auto; }\n\t.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; }\n\t.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; }\n\t.redux-main .redux-main .redux-typography-container .input_wrapper input.mini { width: 73%; }\n\t.redux-main .redux-main .redux-typography-container .input-append .add-on { width: 30%; padding: 5px !important; }\n\t.redux-main .redux-main .redux-main .wp-picker-container .wp-picker-input-wrap { margin-top: 7px; } }\n\n@media screen and (max-width: 360px) { .redux-main .redux-typography-container .iris-picker .iris-square { margin-right: 3%; } }\n\n.wp-customizer .redux-typography-container .input_wrapper { width: 40%; max-width: 40%; min-width: 20%; }\n\n.wp-customizer .redux-typography-container .input_wrapper input.mini { width: 70%; }\n\n.wp-customizer .redux-typography-container .select_wrapper { width: 100% !important; }\n\n/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkdXgtdHlwb2dyYXBoeS5jc3MiLCJzb3VyY2VzIjpbInJlZHV4LXR5cG9ncmFwaHkuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxBQUNJLFdBRE8sQ0FDUCwyQkFBMkIsQ0FBQyxFQUN4QixPQUFPLEVBQUUsS0FBSyxFQUNkLFFBQVEsRUFBRSxRQUFRLEVBQ2xCLE1BQU0sRUFBRSxDQUFDLEVBQ1QsT0FBTyxFQUFFLENBQUMsRUFDVixLQUFLLEVBQUUsSUFBSSxFQUNYLFNBQVMsRUFBRSxLQUFLLEdBMEtuQjs7QUFqTEwsQUFTUSxXQVRHLENBQ1AsMkJBQTJCLENBUXZCLFNBQVMsQ0FBQyxFQUNOLEtBQUssRUFBRSxJQUFJLEdBVWQ7O0FBcEJULEFBWVksV0FaRCxDQUNQLDJCQUEyQixDQVF2QixTQUFTLEFBR0osT0FBTyxDQUFDLEVBQ0wsVUFBVSxFQUFFLE1BQU0sRUFDbEIsT0FBTyxFQUFFLEtBQUssRUFDZCxTQUFTLEVBQUUsQ0FBQyxFQUNaLE9BQU8sRUFBRSxHQUFHLEVBQ1osS0FBSyxFQUFFLElBQUksRUFDWCxNQUFNLEVBQUUsQ0FBQyxHQUNaOztBQW5CYixBQXNCUSxXQXRCRyxDQUNQLDJCQUEyQixDQXFCdkIsS0FBSyxBQUFBLGtCQUFrQixFQXRCL0IsV0FBVyxDQUNQLDJCQUEyQixDQXNCdkIsdUJBQXVCLENBQUMsRUFDcEIsa0JBQWtCLEVBQUUsVUFBVSxFQUM5QixlQUFlLEVBQUUsVUFBVSxFQUMzQixhQUFhLEVBQUUsVUFBVSxFQUN6QixVQUFVLEVBQUUsVUFBVSxFQUN0QixNQUFNLEVBQUUsSUFBSSxFQUNaLE9BQU8sRUFBRSxpQkFBaUIsRUFDMUIsVUFBVSxFQUFFLENBQUMsRUFDYixhQUFhLEVBQUUsQ0FBQyxFQUNoQixTQUFTLEVBQUUsZUFBZSxHQUM3Qjs7QUFqQ1QsQUFtQ1EsV0FuQ0csQ0FDUCwyQkFBMkIsQ0FrQ3ZCLGVBQWUsQ0FBQyxFQUNaLE9BQU8sRUFBRSxLQUFLLEVBQ2QsUUFBUSxFQUFFLFFBQVEsRUFD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 */\n\n/*# sourceMappingURL=redux-typography.css.map */\n"]}
1
+ {"version":3,"sources":["redux-typography.scss","redux-typography.css"],"names":[],"mappings":"AAAA,0CAAA,cACI,ECEI,kBAAkB,EDH1B,SACI,ECII,UAAU,EDLlB,WACI,ECMI,gBAAgB,EAAA;;ADPxB,oDACI,WAAA,EAAA;;AADJ,2DCagB,kBAAkB,EDZ9B,cAAA,ECcY,YAAY,EDdxB,YAAA,ECgBY,WAAW,EDhBvB,SAAA,EAAA;;AADJ,mIACI,8BAwFI,EAxFJ,yBAAA,EC0BQ,sBAAsB,ED1B9B,YAAA,EC4BQ,0BAA0B,ED5BlC,aAAA,EC8BQ,gBAAgB,ED9BxB,0BAAA,EAAA;;AADJ,0DAoLW,cAAY,EApLZ,kBAsLC,EAtLD,WAqLH,EArLG,WAqLH,EArLG,kBAsLC,EAtLD,qBAoNC,EC1KA,2BAA2B,EDiLhC,2BACH,EChLQ,YAAY,EDuLxB,8BAC+B,EAD/B,yBACI,ECpLQ,sBAAsB,EAAA;;ADhDlC,yECmDgB,6BAA6B,EAAA;;ADnD7C,0ECuDgB,6BAA6B,EAAA;;ADvD7C,+FC4DoB,WAAW,EAAA;;AD5D/B,4ECiEgB,0BAA0B,EAC1B,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,4BAA4B,EAC5B,qBAAqB,EACrB,sBAAsB,EACtB,8BAA8B,EAE9B,yBAAyB,EACzB,sBAAsB,EAAA;;AD3EtC,+DCgFY,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,YAAY,EAGZ,kBAAkB,EAAA;;ADtF9B,yDC0FY,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,EACV,UAAU,EACV,cAAc,EACd,eAAe,EACf,WAAW,EACX,WAAW,EACX,YAAY,EACZ,8BAA8B,EAE9B,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EAAA;;ADxGpC,mEC2GgB,cAAc,EAAA;;AD3G9B,oEC+GgB,8BAA8B,EAE9B,yBAAyB,EACzB,sBAAsB,EACtB,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,oBAAoB,EACpB,qBAAqB,EAGrB,kBAAkB,EAAA;;AD5HlC,0DCiIY,cAAc,EACd,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,WAAW,EACX,eAAe,EACf,WAAW,EACX,YAAY,EACZ,8BAA8B,EAE9B,yBAAyB,EACzB,sBAAsB,EACtB,wBAAwB,EAAA;;AD7IpC,gDCkJY,kBAAkB,EAClB,0BAA0B,EAC1B,gBAAgB,EAChB,WAAW,EACX,WAAW,EAEX,eAAe,EAAA;;ADxJ3B,8DC4JY,aAAa,EACb,WAAW,EACX,0BAA0B,EAC1B,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,8BAA8B,EAE9B,sBAAsB,EACtB,gBAAgB,EAAA;;ADvK5B,4DC2KY,cAAc,EACd,SAAS,EAAA;;AD5KrB,sECgLY,iBAAiB,EAAA;;AAIzB,uCDpLJ,sDCuLgB,gBAAgB,EAChB,cAAc,EAAA;CDxL9B,sEC2LoB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,yBAAyB,EACzB,0BAA0B,EAAA;CD/L9C,qECmMoB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,yBAAyB,EACzB,4BAA4B,EAAA;CDvMhD,gFCyMwB,UAAU,EAAA;CDzMlC,4EC8MoB,UAAU,EACV,uBAAuB,EAAA;CD/M3C,iFCqNgB,eAAe,EAAA,EAClB;;AAKb,uCACI,oEAEQ,gBAAgB,EAAA,EACnB;;AAIT,4DAGY,UAAU,EACV,cAAc,EACd,cAAc,EAAA;;AAL1B,uEAOgB,UAAU,EAAA;;AAP1B,6DAWY,sBAAsB,EAAA;;AA3LlC,68MAA68M","file":"redux-typography.css","sourcesContent":[".redux-main {\n .redux-typography-container {\n display: block;\n position: relative;\n margin: 0;\n padding: 0;\n width: 100%;\n max-width: 660px;\n\n .clearfix {\n clear: both;\n\n &::after {\n visibility: hidden;\n display: block;\n font-size: 0;\n content: \" \";\n clear: both;\n height: 0;\n }\n }\n\n input.wp-picker-default,\n .redux-typography-color {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n height: 24px;\n padding: 0 14px !important;\n margin-top: 0;\n margin-bottom: 0;\n font-size: 12px !important;\n }\n\n .select_wrapper {\n display: block;\n position: relative;\n float: left;\n clear: none;\n margin: 0 10px 0 0;\n width: 48% !important;\n min-width: 210px !important;\n max-width: 324px !important;\n height: 57px;\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n\n &:nth-child(odd) {\n margin-right: 10px !important;\n }\n\n &:nth-child(even) {\n margin-right: 10px !important;\n }\n\n &.typography-family {\n .select2-container {\n width: 100%;\n }\n }\n\n .redux-typography {\n font-size: 14px !important;\n display: block;\n float: left;\n height: 28px !important;\n line-height: 50px !important;\n padding: 0 !important;\n width: 100% !important;\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n }\n }\n\n .wp-picker-container {\n float: left;\n clear: left;\n margin-bottom: 12px;\n padding: 3px;\n -webkit-border-radius: 3px;\n -moz-border-radius: 3px;\n border-radius: 3px;\n }\n\n .input_wrapper {\n display: block;\n position: relative;\n margin: 0 4px 0 5px;\n padding: 0;\n width: 23%;\n max-width: 23%;\n min-width: 70px;\n float: left;\n clear: none;\n height: 57px;\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n vertical-align: baseline;\n\n &.font-size {\n margin-left: 0;\n }\n\n input.mini {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n width: 78%;\n text-align: center;\n margin: 0;\n height: 28px;\n top: 3px;\n padding: 0 2px 0 5px;\n text-decoration: none;\n -webkit-border-radius: 4px;\n -moz-border-radius: 4px;\n border-radius: 4px;\n }\n }\n\n .picker-wrapper {\n display: block;\n position: relative;\n margin: 0;\n padding: 0;\n width: 100%;\n min-width: 100%;\n clear: none;\n height: 57px;\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n -o-box-sizing: border-box;\n box-sizing: border-box;\n vertical-align: baseline;\n }\n\n label {\n\n position: relative;\n font-size: 12px !important;\n text-align: left;\n color: #999;\n width: 100%;\n //margin: 4px 0 2px 0 !important;\n cursor: default;\n }\n\n .typography-preview {\n display: none;\n width: 100%;\n border: 1px dotted #d3d3d3;\n max-width: 850px;\n padding: 10px;\n font-size: 10pt;\n height: auto;\n margin: 5px 0 10px;\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n overflow: hidden;\n }\n\n .typography-color {\n border: 0 none;\n margin: 0;\n }\n\n ::-webkit-input-placeholder {\n line-height: 19px;\n }\n }\n\n @media screen and (max-width: 540px) {\n .redux-main {\n .redux-typography-container {\n max-width: 230px;\n margin: 0 auto;\n\n .select_wrapper {\n max-width: 210px;\n min-width: 210px;\n width: 210px;\n margin-left: 0 !important;\n margin-right: 0 !important;\n }\n\n .input_wrapper {\n max-width: 101px;\n min-width: 101px;\n width: 101px;\n margin-left: 0 !important;\n margin-right: 5px !important;\n input.mini {\n width: 73%;\n }\n }\n\n .input-append .add-on {\n width: 30%;\n padding: 5px !important;\n }\n\n }\n\n .redux-main .wp-picker-container .wp-picker-input-wrap {\n margin-top: 7px;\n }\n }\n }\n}\n\n@media screen and (max-width: 360px) {\n .redux-main {\n .redux-typography-container .iris-picker .iris-square {\n margin-right: 3%;\n }\n }\n}\n\n.wp-customizer {\n .redux-typography-container {\n .input_wrapper {\n width: 40%;\n max-width: 40%;\n min-width: 20%;\n input.mini {\n width: 70%;\n }\n }\n .select_wrapper {\n width: 100% !important;\n }\n }\n}\n",".redux-main .redux-typography-container { display: block; position: relative; margin: 0; padding: 0; width: 100%; max-width: 660px; }\n\n.redux-main .redux-typography-container .clearfix { clear: both; }\n\n.redux-main .redux-typography-container .clearfix::after { visibility: hidden; display: block; font-size: 0; content: \" \"; clear: both; height: 0; }\n\n.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; }\n\n.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; }\n\n.redux-main .redux-typography-container .select_wrapper:nth-child(odd) { margin-right: 10px !important; }\n\n.redux-main .redux-typography-container .select_wrapper:nth-child(even) { margin-right: 10px !important; }\n\n.redux-main .redux-typography-container .select_wrapper.typography-family .select2-container { width: 100%; }\n\n.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; }\n\n.redux-main .redux-typography-container .wp-picker-container { float: left; clear: left; margin-bottom: 12px; padding: 3px; border-radius: 3px; }\n\n.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; }\n\n.redux-main .redux-typography-container .input_wrapper.font-size { margin-left: 0; }\n\n.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; }\n\n.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; }\n\n.redux-main .redux-typography-container label { position: relative; font-size: 12px !important; text-align: left; color: #999; width: 100%; cursor: default; }\n\n.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; }\n\n.redux-main .redux-typography-container .typography-color { border: 0 none; margin: 0; }\n\n.redux-main .redux-typography-container ::-webkit-input-placeholder { line-height: 19px; }\n\n@media screen and (max-width: 540px) { .redux-main .redux-main .redux-typography-container { max-width: 230px; margin: 0 auto; }\n\t.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; }\n\t.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; }\n\t.redux-main .redux-main .redux-typography-container .input_wrapper input.mini { width: 73%; }\n\t.redux-main .redux-main .redux-typography-container .input-append .add-on { width: 30%; padding: 5px !important; }\n\t.redux-main .redux-main .redux-main .wp-picker-container .wp-picker-input-wrap { margin-top: 7px; } }\n\n@media screen and (max-width: 360px) { .redux-main .redux-typography-container .iris-picker .iris-square { margin-right: 3%; } }\n\n.wp-customizer .redux-typography-container .input_wrapper { width: 40%; max-width: 40%; min-width: 20%; }\n\n.wp-customizer .redux-typography-container .input_wrapper input.mini { width: 70%; }\n\n.wp-customizer .redux-typography-container .select_wrapper { width: 100% !important; }\n\n/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkdXgtdHlwb2dyYXBoeS5jc3MiLCJzb3VyY2VzIjpbInJlZHV4LXR5cG9ncmFwaHkuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxBQUNJLFdBRE8sQ0FDUCwyQkFBMkIsQ0FBQyxFQUN4QixPQUFPLEVBQUUsS0FBSyxFQUNkLFFBQVEsRUFBRSxRQUFRLEVBQ2xCLE1BQU0sRUFBRSxDQUFDLEVBQ1QsT0FBTyxFQUFFLENBQUMsRUFDVixLQUFLLEVBQUUsSUFBSSxFQUNYLFNBQVMsRUFBRSxLQUFLLEdBMktuQjs7QUFsTEwsQUFTUSxXQVRHLENBQ1AsMkJBQTJCLENBUXZCLFNBQVMsQ0FBQyxFQUNOLEtBQUssRUFBRSxJQUFJLEdBVWQ7O0FBcEJULEFBWVksV0FaRCxDQUNQLDJCQUEyQixDQVF2QixTQUFTLEFBR0osT0FBTyxDQUFDLEVBQ0wsVUFBVSxFQUFFLE1BQU0sRUFDbEIsT0FBTyxFQUFFLEtBQUssRUFDZCxTQUFTLEVBQUUsQ0FBQyxFQUNaLE9BQU8sRUFBRSxHQUFHLEVBQ1osS0FBSyxFQUFFLElBQUksRUFDWCxNQUFNLEVBQUUsQ0FBQyxHQUNaOztBQW5CYixBQXNCUSxXQXRCRyxDQUNQLDJCQUEyQixDQXFCdkIsS0FBSyxBQUFBLGtCQUFrQixFQXRCL0IsV0FBVyxDQUNQLDJCQUEyQixDQXNCdkIsdUJBQXVCLENBQUMsRUFDcEIsa0JBQWtCLEVBQUUsVUFBVSxFQUM5QixlQUFlLEVBQUUsVUFBVSxFQUMzQixhQUFhLEVBQUUsVUFBVSxFQUN6QixVQUFVLEVBQUUsVUFBVSxFQUN0QixNQUFNLEVBQUUsSUFBSSxFQUNaLE9BQU8sRUFBRSxpQkFBaUIsRUFDMUIsVUFBVSxFQUFFLENBQUMsRUFDYixhQUFhLEVBQUUsQ0FBQyxFQUNoQixTQUFTLEVBQUUsZUFBZSxHQUM3Qjs7QUFqQ1QsQUFtQ1EsV0FuQ0csQ0FDUCwyQkFBMkIsQ0FrQ3ZCLGVBQWUsQ0FBQyxFQUNaLE9BQU8sRUFBRSxLQUFLLEVBQ2QsUUFBUSxFQUFFLFFBQVEsRUFD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 */\n\n/*# sourceMappingURL=redux-typography.css.map */\n"]}
redux-core/inc/fields/typography/redux-typography.js CHANGED
@@ -21,9 +21,7 @@
21
  redux.field_objects.typography = redux.field_objects.typography || {};
22
 
23
  redux.field_objects.typography.init = function( selector ) {
24
- if ( ! selector ) {
25
- selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-typography:visible' );
26
- }
27
 
28
  $( selector ).each(
29
  function() {
@@ -480,6 +478,12 @@
480
  var html = '<option value=""></option>';
481
  var selected = '';
482
  var allowEmptyLineHeight = false;
 
 
 
 
 
 
483
 
484
  // Main id for selected field.
485
  mainID = $( selector ).parents( '.redux-container-typography:first' ).data( 'id' );
@@ -549,12 +553,7 @@
549
  typekit = true;
550
  details = redux.fonts.typekit[family];
551
  } else {
552
- details = {
553
- '400': 'Normal 400',
554
- '700': 'Bold 700',
555
- '400italic': 'Normal 400 Italic',
556
- '700italic': 'Bold 700 Italic'
557
- };
558
  }
559
  }
560
 
@@ -617,7 +616,7 @@
617
  }
618
 
619
  // Inset new HTML.
620
- that.find( '.redux-typography-subsets' ).html( html ).select2();
621
 
622
  that.find( '.redux-typography-subsets' ).parent().fadeIn( 'fast' );
623
  that.find( '.typography-family-backup' ).fadeIn( 'fast' );
@@ -647,9 +646,9 @@
647
  that.find( '.redux-typography-subsets' ).parent().fadeOut( 'fast' );
648
  that.find( '.typography-family-backup' ).fadeOut( 'fast' );
649
  } else {
650
- if ( details ) {
651
  $.each(
652
- details,
653
  function( index, value ) {
654
  if ( style === index || 'normal' === index ) {
655
  selected = ' selected="selected"';
@@ -669,16 +668,41 @@
669
 
670
  // Insert new HTML.
671
  that.find( '.redux-typography-style' ).html( html ).select2();
672
-
673
- // Prettify things.
674
- that.find( '.redux-typography-subsets' ).parent().fadeOut( 'fast' );
675
- that.find( '.typography-family-backup' ).fadeOut( 'fast' );
676
  }
677
  }
678
 
679
  that.find( '.redux-typography-font-family' ).val( family );
680
  } else if ( $( selector ).hasClass( 'redux-typography-family-backup' ) && '' !== familyBackup ) {
681
  that.find( '.redux-typography-font-family-backup' ).val( familyBackup );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
682
  }
683
  }
684
 
21
  redux.field_objects.typography = redux.field_objects.typography || {};
22
 
23
  redux.field_objects.typography.init = function( selector ) {
24
+ selector = $.redux.getSelector( selector, 'typography' );
 
 
25
 
26
  $( selector ).each(
27
  function() {
478
  var html = '<option value=""></option>';
479
  var selected = '';
480
  var allowEmptyLineHeight = false;
481
+ var default_font_weights = {
482
+ '400': 'Normal 400',
483
+ '700': 'Bold 700',
484
+ '400italic': 'Normal 400 Italic',
485
+ '700italic': 'Bold 700 Italic'
486
+ };
487
 
488
  // Main id for selected field.
489
  mainID = $( selector ).parents( '.redux-container-typography:first' ).data( 'id' );
553
  typekit = true;
554
  details = redux.fonts.typekit[family];
555
  } else {
556
+ details = default_font_weights;
 
 
 
 
 
557
  }
558
  }
559
 
616
  }
617
 
618
  // Inset new HTML.
619
+ that.find( '.redux-typography-subsets' ).html( html ).select2( { width:'100%' } );
620
 
621
  that.find( '.redux-typography-subsets' ).parent().fadeIn( 'fast' );
622
  that.find( '.typography-family-backup' ).fadeIn( 'fast' );
646
  that.find( '.redux-typography-subsets' ).parent().fadeOut( 'fast' );
647
  that.find( '.typography-family-backup' ).fadeOut( 'fast' );
648
  } else {
649
+ if ( that.find( '.redux-typography-style' ) ) {
650
  $.each(
651
+ default_font_weights,
652
  function( index, value ) {
653
  if ( style === index || 'normal' === index ) {
654
  selected = ' selected="selected"';
668
 
669
  // Insert new HTML.
670
  that.find( '.redux-typography-style' ).html( html ).select2();
 
 
 
 
671
  }
672
  }
673
 
674
  that.find( '.redux-typography-font-family' ).val( family );
675
  } else if ( $( selector ).hasClass( 'redux-typography-family-backup' ) && '' !== familyBackup ) {
676
  that.find( '.redux-typography-font-family-backup' ).val( familyBackup );
677
+ } else {
678
+ details = default_font_weights;
679
+ if ( details ) {
680
+ $.each(
681
+ details,
682
+ function( index, value ) {
683
+ if ( style === index || 'normal' === index ) {
684
+ selected = ' selected="selected"';
685
+ that.find( '.typography-style select2-selection__rendered' ).text( value );
686
+ } else {
687
+ selected = '';
688
+ }
689
+
690
+ html += '<option value="' + index + '"' + selected + '>' + value.replace( '+', ' ' ) + '</option>';
691
+ }
692
+ );
693
+
694
+ // Destory select2.
695
+ if ( destroy ) {
696
+ that.find( '.redux-typography-style' ).select2( 'destroy' );
697
+ }
698
+
699
+ // Insert new HTML.
700
+ that.find( '.redux-typography-style' ).html( html ).select2();
701
+
702
+ // Prettify things.
703
+ that.find( '.redux-typography-subsets' ).parent().fadeOut( 'fast' );
704
+ that.find( '.typography-family-backup' ).fadeOut( 'fast' );
705
+ }
706
  }
707
  }
708
 
redux-core/inc/fields/typography/redux-typography.min.js CHANGED
@@ -1 +1 @@
1
- !function(I){"use strict";var B=[],N=!1,P=!0;redux.field_objects=redux.field_objects||{},redux.field_objects.typography=redux.field_objects.typography||{},redux.field_objects.typography.init=function(e){e=e||I(document).find(".redux-group-tab:visible").find(".redux-container-typography:visible"),I(e).each(function(){var e=I(this),t=e;e.hasClass("redux-field-container")||(t=e.parents(".redux-field-container:first")),t.is(":hidden")||(void 0===redux.field_objects.pro&&(P=!1),e.each(function(){I(this).find(".redux-typography-container").each(function(){var e,t,a,r,s,o,i=I(this),p=i,d=I(this).find(".redux-typography-family"),n=d.data("value"),y=I(this).find(".redux-typography-family").parents(".redux-container-typography:first").data("id"),l=I("#"+y+" .redux-typography-google").val(),h=[],g=[],u=I("#"+y+" .redux-typography-font-family").data("user-fonts");if(i.hasClass("redux-field-container")||(p=i.parents(".redux-field-container:first")),!p.is(":hidden")&&p.hasClass("redux-field-init")){if(p.removeClass("redux-field-init"),void 0===n?d=I(this):""!==n&&I(d).val(n),u=u?1:0,l=l?1:0,void 0!==redux.customfonts&&h.push(redux.customfonts),void 0!==redux.typekitfonts&&h.push(redux.typekitfonts),void 0!==redux.stdfonts&&0==u&&h.push(redux.stdfonts),1==u){for(e in redux.optName.typography[y])if(redux.optName.typography[y].hasOwnProperty(e))for(a in t=redux.optName.typography[y].std_font)t.hasOwnProperty(a)&&g.push({id:a,text:a,"data-google":"false"});r={text:"Standard Fonts",children:g},h.push(r)}(1==l||!0===l&&void 0!==redux.googlefonts)&&h.push(redux.googlefonts),o=h,s=I(this).find(".redux-typography-family").data("value"),I(this).find(".redux-typography-family").addClass("ignore-change"),I(this).find(".redux-typography-family").select2({data:o}),I(this).find(".redux-typography-family").val(s).trigger("change"),I(this).find(".redux-typography-family").removeClass("ignore-change"),i.find(".redux-typography-family").hasClass("redux-typography-family")||i.find(".redux-typography-style").select2(),I(this).find(".redux-typography-align").select2(),I(this).find(".redux-typography-family-backup").select2(),I(this).find(".redux-typography-transform").select2(),I(this).find(".redux-typography-font-variant").select2(),I(this).find(".redux-typography-decoration").select2(),I(this).find(".redux-insights-data-we-collect-typography").on("click",function(e){e.preventDefault(),I(this).parent().find(".description").toggle()}),redux.field_objects.typography.select(d,!0,!1,null,!0),I(this).find(".redux-typography-family, .redux-typography-family-backup, .redux-typography-style, .redux-typography-subsets, .redux-typography-align").on("change",function(e){var t,a,r=I(this).attr("id"),s=I("#"+r);I(this).hasClass("redux-typography-family")?s.val()&&(a=(t=I(this).select2("data"))?t[0].text:null,s.data("value",a),B=t[0],N=!0,redux.field_objects.typography.select(s,!0,!1,a,!0)):(e=s.val(),s.data("value",e),(I(this).hasClass("redux-typography-align")||I(this).hasClass("redux-typography-subsets")||I(this).hasClass("redux-typography-family-backup")||I(this).hasClass("redux-typography-transform")||I(this).hasClass("redux-typography-font-variant")||I(this).hasClass("redux-typography-decoration"))&&(s.find('option[selected="selected"]').removeAttr("selected"),s.find('option[value="'+e+'"]').attr("selected","selected")),I(this).hasClass("redux-typography-subsets")&&s.siblings(".typography-subsets").val(e),redux.field_objects.typography.select(I(this),!0,!1,null,!1))}),I(this).find(".redux-typography-size, .redux-typography-height, .redux-typography-word, .redux-typography-letter").keyup(function(){redux.field_objects.typography.select(I(this).parents(".redux-container-typography:first"))}),P&&(redux.field_objects.pro.typography.fieldChange(I(this)),redux.field_objects.pro.typography.colorPicker(I(this))),I(this).find(".redux-typography-color").wpColorPicker({change:function(e,t){I(this).val(t.color.toString()),redux.field_objects.typography.select(I(this).parents(".redux-container-typography:first"))}}),I(this).find(".redux-typography-size").numeric({allowMinus:!1}),I(this).find(".redux-typography-height, .redux-typography-word, .redux-typography-letter").numeric({allowMinus:!0}),I(this).find(".redux-typography").on("select2:unselecting",function(){var e,t,a=I(this).data("select2").options;a.set("disabled",!0),setTimeout(function(){a.set("disabled",!1)},1),e=I(this).attr("id"),(t=I("#"+e)).data("value",""),I(this).hasClass("redux-typography-family")?(I(this).find(".redux-typography-family").addClass("ignore-change"),I(this).val(null).trigger("change"),I(this).find(".redux-typography-family").removeClass("ignore-change"),redux.field_objects.typography.select(t,!0,!1,null,!0)):((I(this).hasClass("redux-typography-align")||I(this).hasClass("redux-typography-subsets")||I(this).hasClass("redux-typography-family-backup")||I(this).hasClass("redux-typography-transform")||I(this).hasClass("redux-typography-font-variant")||I(this).hasClass("redux-typography-decoration"))&&I("#"+e+' option[selected="selected"]').removeAttr("selected"),I(this).hasClass("redux-typography-subsets")&&t.siblings(".typography-subsets").val(""),I(this).hasClass("redux-typography-family-backup")&&(I(this).find(".redux-typography-family-backup").addClass("ignore-change"),t.val(null).trigger("change"),I(this).find(".redux-typography-family-backup").removeClass("ignore-change")),redux.field_objects.typography.select(I(this),!0,!1,null,!1))}),redux.field_objects.typography.updates(I(this)),window.onbeforeunload=null,p.removeClass("redux-field-init")}})}))})},redux.field_objects.typography.updates=function(s){s.find(".update-google-fonts").bind("click",function(e){var a=I(this).data("action"),r=I(this).parent().parent(),t=r.attr("data-nonce");return r.find("p").text(redux_typography_ajax.update_google_fonts.updating),r.find("p").attr("aria-label",redux_typography_ajax.update_google_fonts.updating),r.removeClass("updating-message updated-message notice-success notice-warning notice-error").addClass("update-message notice-warning updating-message"),I.ajax({type:"post",dataType:"json",url:redux_typography_ajax.ajaxurl,data:{action:"redux_update_google_fonts",nonce:t,data:a},error:function(e){var t;console.log(e),r.removeClass("notice-warning updating-message updated-message notice-success").addClass("notice-error"),t=(t=e.error)&&': "'+t+'"',r.find("p").html(redux_typography_ajax.update_google_fonts.error.replace("%s",a).replace("|msg",t)),r.find("p").attr("aria-label",redux_typography_ajax.update_google_fonts.error),redux.field_objects.typography.updates(s)},success:function(e){var t;console.log(e),"success"===e.status?(r.find("p").html(redux_typography_ajax.update_google_fonts.success),r.find("p").attr("aria-label",redux_typography_ajax.update_google_fonts.success),r.removeClass("updating-message notice-warning").addClass("updated-message notice-success"),I(".redux-update-google-fonts").not(".notice-success").remove()):(r.removeClass("notice-warning updating-message updated-message notice-success").addClass("notice-error"),t=(t=e.error)&&': "'+t+'"',r.find("p").html(redux_typography_ajax.update_google_fonts.error.replace("%s",a).replace("|msg",t)),r.find("p").attr("aria-label",redux_typography_ajax.update_google_fonts.error),redux.field_objects.typography.updates(s))}}),e.preventDefault(),!1})},redux.field_objects.typography.size=function(e){var t,a=0;for(t in e)e.hasOwnProperty(t)&&(a+=1);return a},redux.field_objects.typography.makeBool=function(e){return"false"!==e&&"0"!==e&&!1!==e&&0!==e&&("true"===e||"1"===e||!0===e||1===e||void 0)},redux.field_objects.typography.contrastColour=function(e){var t="#444444";return""!==e&&(e=e.replace("#",""),t=128<=(299*parseInt(e.substr(0,2),16)+587*parseInt(e.substr(2,2),16)+114*parseInt(e.substr(4,2),16))/1e3?"#444444":"#ffffff"),t},redux.field_objects.typography.select=function(e,t,a,r,s){var o,i,p,d,n,y,l,h,g,u,f,c,x,v,m,b,_,C,j=!1,w="",k='<option value=""></option>',z="",O=I(e).parents(".redux-container-typography:first").data("id");void 0===O&&(O=I(e).data("id")),o=I("#"+O),i=(i=I("#"+O+"-family").val())||null,r&&(i=r),d=o.find("select.redux-typography-family-backup").val(),n=o.find(".redux-typography-size").val(),y=o.find(".redux-typography-height").val(),l=o.find(".redux-typography-word").val(),h=o.find(".redux-typography-letter").val(),g=o.find("select.redux-typography-align").val(),u=o.find("select.redux-typography-transform").val(),f=o.find("select.redux-typography-font-variant").val(),c=o.find("select.redux-typography-decoration").val(),x=o.find("select.redux-typography-style").val(),v=o.find("select.redux-typography-subsets").val(),m=o.find(".redux-typography-color").val(),b=o.data("units"),!0===N?(p=redux.field_objects.typography.makeBool(B["data-google"]),o.find(".redux-typography-google-font").val(p)):p=redux.field_objects.typography.makeBool(o.find(".redux-typography-google-font").val()),s&&(o.hasClass("typography-initialized")||(x=o.find("select.redux-typography-style").data("value"),v=o.find("select.redux-typography-subsets").data("value"),""!==x&&(x=String(x)),v=String(v)),void 0===redux.fonts.google&&(p=!1),w=!0===p&&i in redux.fonts.google?redux.fonts.google[i]:void 0!==redux.fonts.typekit&&i in redux.fonts.typekit?(j=!0,redux.fonts.typekit[i]):{400:"Normal 400",700:"Bold 700","400italic":"Normal 400 Italic","700italic":"Bold 700 Italic"},I(e).hasClass("redux-typography-subsets")&&o.find("input.typography-subsets").val(v),I(e).hasClass("redux-typography-family")?(!0===p?(I.each(w.variants,function(e,t){t.id===x||1===redux.field_objects.typography.size(w.variants)?(z=' selected="selected"',x=t.id):z="",k+='<option value="'+t.id+'"'+z+">"+t.name.replace(/\+/g," ")+"</option>"}),a&&o.find(".redux-typography-style").select2("destroy"),o.find(".redux-typography-style").html(k).select2(),z="",k='<option value=""></option>',I.each(w.subsets,function(e,t){v===t.id||1===redux.field_objects.typography.size(w.subsets)?(z=' selected="selected"',v=t.id,o.find("input.typography-subsets").val(v)):z="",k+='<option value="'+t.id+'"'+z+">"+t.name.replace(/\+/g," ")+"</option>"}),a&&o.find(".redux-typography-subsets").select2("destroy"),o.find(".redux-typography-subsets").html(k).select2(),o.find(".redux-typography-subsets").parent().fadeIn("fast"),o.find(".typography-family-backup").fadeIn("fast")):!0===j?(I.each(w.variants,function(e,t){x===t.id||1===redux.field_objects.typography.size(w.variants)?(z=' selected="selected"',x=t.id):z="",k+='<option value="'+t.id+'"'+z+">"+t.name.replace(/\+/g," ")+"</option>"}),o.find(".redux-typography-style").select2("destroy"),o.find(".redux-typography-style").html(k).select2(),o.find(".redux-typography-subsets").parent().fadeOut("fast"),o.find(".typography-family-backup").fadeOut("fast")):w&&(I.each(w,function(e,t){x===e||"normal"===e?(z=' selected="selected"',o.find(".typography-style select2-selection__rendered").text(t)):z="",k+='<option value="'+e+'"'+z+">"+t.replace("+"," ")+"</option>"}),a&&o.find(".redux-typography-style").select2("destroy"),o.find(".redux-typography-style").html(k).select2(),o.find(".redux-typography-subsets").parent().fadeOut("fast"),o.find(".typography-family-backup").fadeOut("fast")),o.find(".redux-typography-font-family").val(i)):I(e).hasClass("redux-typography-family-backup")&&""!==d&&o.find(".redux-typography-font-family-backup").val(d)),s&&(o.find(".redux-typography-style").addClass("ignore-change"),0===o.find("select.redux-typography-style option[value='"+x+"']").length?(x="",o.find("select.redux-typography-style").val("").trigger("change")):"400"===x&&o.find("select.redux-typography-style").val(x).trigger("change"),o.find(".redux-typography-style").removeClass("ignore-change"),0===o.find("select.redux-typography-subsets option[value='"+v+"']").length&&(v="",o.find(".redux-typography-style").addClass("ignore-change"),o.find("select.redux-typography-subsets").val("").trigger("change"),o.find("input.typography-subsets").val(v),o.find(".redux-typography-style").removeClass("ignore-change"))),I("."+("style_link_"+O)).remove(),null!==i&&"inherit"!==i&&o.hasClass("typography-initialized")&&(_=i.replace(/\s+/g,"+"),!0===p?(C=_,x&&""!==x&&(C+=":"+x.replace(/\-/g," ")),v&&""!==v&&(C+="&subset="+v),!1===N&&"undefined"!=typeof WebFont&&WebFont&&WebFont.load({google:{families:[C]}}),o.find(".redux-typography-google").val(!0)):o.find(".redux-typography-google").val(!1)),-1!==x.indexOf("italic")?(o.find(".typography-preview").css("font-style","italic"),o.find(".typography-font-style").val("italic"),x=x.replace("italic","")):(o.find(".typography-preview").css("font-style","normal"),o.find(".typography-font-style").val("")),o.find(".typography-font-weight").val(x),Boolean(o.find(".redux-typography-height").data("allow-empty"))||(y=y||n),""===n||void 0===n?o.find(".typography-font-size").val(""):o.find(".typography-font-size").val(n+b),""===y||void 0===y?o.find(".typography-line-height").val(""):o.find(".typography-line-height").val(y+b),""===l||void 0===l?o.find(".typography-word-spacing").val(""):o.find(".typography-word-spacing").val(l+b),""===h||void 0===h?o.find(".typography-letter-spacing").val(""):o.find(".typography-letter-spacing").val(h+b),P&&redux.field_objects.pro.typography.select(O),o.hasClass("typography-initialized")&&(0===o.find(".typography-preview").data("preview-size")&&o.find(".typography-preview").css("font-size",n+b),o.find(".typography-preview").css({"font-weight":x,"text-align":g,"font-family":i+", sans-serif"}),"none"===i&&""===i&&o.find(".typography-preview").css("font-family","inherit"),o.find(".typography-preview").css({"line-height":y+b,"word-spacing":l+b,"letter-spacing":h+b}),m&&o.find(".typography-preview").css("color",m),P&&redux.field_objects.typography.previewShadow(O),o.find(".typography-style select2-selection__rendered").text(o.find(".redux-typography-style option:selected").text()),o.find(".typography-script select2-selection__rendered").text(o.find(".redux-typography-subsets option:selected").text()),g&&o.find(".typography-preview").css("text-align",g),u&&o.find(".typography-preview").css("text-transform",u),f&&o.find(".typography-preview").css("font-variant",f),c&&o.find(".typography-preview").css("text-decoration",c),o.find(".typography-preview").slideDown()),o.hasClass("typography-initialized")||o.addClass("typography-initialized"),N=!1,t||redux_change(e)}}(jQuery);
1
+ !function(B){"use strict";var S=[],N=!1,P=!0;redux.field_objects=redux.field_objects||{},redux.field_objects.typography=redux.field_objects.typography||{},redux.field_objects.typography.init=function(e){e=B.redux.getSelector(e,"typography"),B(e).each(function(){var e=B(this),t=e;e.hasClass("redux-field-container")||(t=e.parents(".redux-field-container:first")),t.is(":hidden")||(void 0===redux.field_objects.pro&&(P=!1),e.each(function(){B(this).find(".redux-typography-container").each(function(){var e,t,a,r,s,o,i=B(this),p=i,d=B(this).find(".redux-typography-family"),n=d.data("value"),y=B(this).find(".redux-typography-family").parents(".redux-container-typography:first").data("id"),l=B("#"+y+" .redux-typography-google").val(),h=[],g=[],u=B("#"+y+" .redux-typography-font-family").data("user-fonts");if(i.hasClass("redux-field-container")||(p=i.parents(".redux-field-container:first")),!p.is(":hidden")&&p.hasClass("redux-field-init")){if(p.removeClass("redux-field-init"),void 0===n?d=B(this):""!==n&&B(d).val(n),u=u?1:0,l=l?1:0,void 0!==redux.customfonts&&h.push(redux.customfonts),void 0!==redux.typekitfonts&&h.push(redux.typekitfonts),void 0!==redux.stdfonts&&0==u&&h.push(redux.stdfonts),1==u){for(e in redux.optName.typography[y])if(redux.optName.typography[y].hasOwnProperty(e))for(a in t=redux.optName.typography[y].std_font)t.hasOwnProperty(a)&&g.push({id:a,text:a,"data-google":"false"});r={text:"Standard Fonts",children:g},h.push(r)}(1==l||!0===l&&void 0!==redux.googlefonts)&&h.push(redux.googlefonts),o=h,s=B(this).find(".redux-typography-family").data("value"),B(this).find(".redux-typography-family").addClass("ignore-change"),B(this).find(".redux-typography-family").select2({data:o}),B(this).find(".redux-typography-family").val(s).trigger("change"),B(this).find(".redux-typography-family").removeClass("ignore-change"),i.find(".redux-typography-family").hasClass("redux-typography-family")||i.find(".redux-typography-style").select2(),B(this).find(".redux-typography-align").select2(),B(this).find(".redux-typography-family-backup").select2(),B(this).find(".redux-typography-transform").select2(),B(this).find(".redux-typography-font-variant").select2(),B(this).find(".redux-typography-decoration").select2(),B(this).find(".redux-insights-data-we-collect-typography").on("click",function(e){e.preventDefault(),B(this).parent().find(".description").toggle()}),redux.field_objects.typography.select(d,!0,!1,null,!0),B(this).find(".redux-typography-family, .redux-typography-family-backup, .redux-typography-style, .redux-typography-subsets, .redux-typography-align").on("change",function(e){var t,a,r=B(this).attr("id"),s=B("#"+r);B(this).hasClass("redux-typography-family")?s.val()&&(a=(t=B(this).select2("data"))?t[0].text:null,s.data("value",a),S=t[0],N=!0,redux.field_objects.typography.select(s,!0,!1,a,!0)):(e=s.val(),s.data("value",e),(B(this).hasClass("redux-typography-align")||B(this).hasClass("redux-typography-subsets")||B(this).hasClass("redux-typography-family-backup")||B(this).hasClass("redux-typography-transform")||B(this).hasClass("redux-typography-font-variant")||B(this).hasClass("redux-typography-decoration"))&&(s.find('option[selected="selected"]').removeAttr("selected"),s.find('option[value="'+e+'"]').attr("selected","selected")),B(this).hasClass("redux-typography-subsets")&&s.siblings(".typography-subsets").val(e),redux.field_objects.typography.select(B(this),!0,!1,null,!1))}),B(this).find(".redux-typography-size, .redux-typography-height, .redux-typography-word, .redux-typography-letter").keyup(function(){redux.field_objects.typography.select(B(this).parents(".redux-container-typography:first"))}),P&&(redux.field_objects.pro.typography.fieldChange(B(this)),redux.field_objects.pro.typography.colorPicker(B(this))),B(this).find(".redux-typography-color").wpColorPicker({change:function(e,t){B(this).val(t.color.toString()),redux.field_objects.typography.select(B(this).parents(".redux-container-typography:first"))}}),B(this).find(".redux-typography-size").numeric({allowMinus:!1}),B(this).find(".redux-typography-height, .redux-typography-word, .redux-typography-letter").numeric({allowMinus:!0}),B(this).find(".redux-typography").on("select2:unselecting",function(){var e,t,a=B(this).data("select2").options;a.set("disabled",!0),setTimeout(function(){a.set("disabled",!1)},1),e=B(this).attr("id"),(t=B("#"+e)).data("value",""),B(this).hasClass("redux-typography-family")?(B(this).find(".redux-typography-family").addClass("ignore-change"),B(this).val(null).trigger("change"),B(this).find(".redux-typography-family").removeClass("ignore-change"),redux.field_objects.typography.select(t,!0,!1,null,!0)):((B(this).hasClass("redux-typography-align")||B(this).hasClass("redux-typography-subsets")||B(this).hasClass("redux-typography-family-backup")||B(this).hasClass("redux-typography-transform")||B(this).hasClass("redux-typography-font-variant")||B(this).hasClass("redux-typography-decoration"))&&B("#"+e+' option[selected="selected"]').removeAttr("selected"),B(this).hasClass("redux-typography-subsets")&&t.siblings(".typography-subsets").val(""),B(this).hasClass("redux-typography-family-backup")&&(B(this).find(".redux-typography-family-backup").addClass("ignore-change"),t.val(null).trigger("change"),B(this).find(".redux-typography-family-backup").removeClass("ignore-change")),redux.field_objects.typography.select(B(this),!0,!1,null,!1))}),redux.field_objects.typography.updates(B(this)),window.onbeforeunload=null,p.removeClass("redux-field-init")}})}))})},redux.field_objects.typography.updates=function(s){s.find(".update-google-fonts").bind("click",function(e){var a=B(this).data("action"),r=B(this).parent().parent(),t=r.attr("data-nonce");return r.find("p").text(redux_typography_ajax.update_google_fonts.updating),r.find("p").attr("aria-label",redux_typography_ajax.update_google_fonts.updating),r.removeClass("updating-message updated-message notice-success notice-warning notice-error").addClass("update-message notice-warning updating-message"),B.ajax({type:"post",dataType:"json",url:redux_typography_ajax.ajaxurl,data:{action:"redux_update_google_fonts",nonce:t,data:a},error:function(e){var t;console.log(e),r.removeClass("notice-warning updating-message updated-message notice-success").addClass("notice-error"),t=(t=e.error)&&': "'+t+'"',r.find("p").html(redux_typography_ajax.update_google_fonts.error.replace("%s",a).replace("|msg",t)),r.find("p").attr("aria-label",redux_typography_ajax.update_google_fonts.error),redux.field_objects.typography.updates(s)},success:function(e){var t;console.log(e),"success"===e.status?(r.find("p").html(redux_typography_ajax.update_google_fonts.success),r.find("p").attr("aria-label",redux_typography_ajax.update_google_fonts.success),r.removeClass("updating-message notice-warning").addClass("updated-message notice-success"),B(".redux-update-google-fonts").not(".notice-success").remove()):(r.removeClass("notice-warning updating-message updated-message notice-success").addClass("notice-error"),t=(t=e.error)&&': "'+t+'"',r.find("p").html(redux_typography_ajax.update_google_fonts.error.replace("%s",a).replace("|msg",t)),r.find("p").attr("aria-label",redux_typography_ajax.update_google_fonts.error),redux.field_objects.typography.updates(s))}}),e.preventDefault(),!1})},redux.field_objects.typography.size=function(e){var t,a=0;for(t in e)e.hasOwnProperty(t)&&(a+=1);return a},redux.field_objects.typography.makeBool=function(e){return"false"!==e&&"0"!==e&&!1!==e&&0!==e&&("true"===e||"1"===e||!0===e||1===e||void 0)},redux.field_objects.typography.contrastColour=function(e){var t="#444444";return""!==e&&(e=e.replace("#",""),t=128<=(299*parseInt(e.substr(0,2),16)+587*parseInt(e.substr(2,2),16)+114*parseInt(e.substr(4,2),16))/1e3?"#444444":"#ffffff"),t},redux.field_objects.typography.select=function(e,t,a,r,s){var o,i,p,d,n,y,l,h,g,u,f,c,x,v,m,b,_,C,j=!1,w="",k='<option value=""></option>',z="",O={400:"Normal 400",700:"Bold 700","400italic":"Normal 400 Italic","700italic":"Bold 700 Italic"},I=B(e).parents(".redux-container-typography:first").data("id");void 0===I&&(I=B(e).data("id")),o=B("#"+I),i=(i=B("#"+I+"-family").val())||null,r&&(i=r),d=o.find("select.redux-typography-family-backup").val(),n=o.find(".redux-typography-size").val(),y=o.find(".redux-typography-height").val(),l=o.find(".redux-typography-word").val(),h=o.find(".redux-typography-letter").val(),g=o.find("select.redux-typography-align").val(),u=o.find("select.redux-typography-transform").val(),f=o.find("select.redux-typography-font-variant").val(),c=o.find("select.redux-typography-decoration").val(),x=o.find("select.redux-typography-style").val(),v=o.find("select.redux-typography-subsets").val(),m=o.find(".redux-typography-color").val(),b=o.data("units"),!0===N?(p=redux.field_objects.typography.makeBool(S["data-google"]),o.find(".redux-typography-google-font").val(p)):p=redux.field_objects.typography.makeBool(o.find(".redux-typography-google-font").val()),s&&(o.hasClass("typography-initialized")||(x=o.find("select.redux-typography-style").data("value"),v=o.find("select.redux-typography-subsets").data("value"),""!==x&&(x=String(x)),v=String(v)),void 0===redux.fonts.google&&(p=!1),w=!0===p&&i in redux.fonts.google?redux.fonts.google[i]:void 0!==redux.fonts.typekit&&i in redux.fonts.typekit?(j=!0,redux.fonts.typekit[i]):O,B(e).hasClass("redux-typography-subsets")&&o.find("input.typography-subsets").val(v),B(e).hasClass("redux-typography-family")?(!0===p?(B.each(w.variants,function(e,t){t.id===x||1===redux.field_objects.typography.size(w.variants)?(z=' selected="selected"',x=t.id):z="",k+='<option value="'+t.id+'"'+z+">"+t.name.replace(/\+/g," ")+"</option>"}),a&&o.find(".redux-typography-style").select2("destroy"),o.find(".redux-typography-style").html(k).select2(),z="",k='<option value=""></option>',B.each(w.subsets,function(e,t){v===t.id||1===redux.field_objects.typography.size(w.subsets)?(z=' selected="selected"',v=t.id,o.find("input.typography-subsets").val(v)):z="",k+='<option value="'+t.id+'"'+z+">"+t.name.replace(/\+/g," ")+"</option>"}),a&&o.find(".redux-typography-subsets").select2("destroy"),o.find(".redux-typography-subsets").html(k).select2({width:"100%"}),o.find(".redux-typography-subsets").parent().fadeIn("fast"),o.find(".typography-family-backup").fadeIn("fast")):!0===j?(B.each(w.variants,function(e,t){x===t.id||1===redux.field_objects.typography.size(w.variants)?(z=' selected="selected"',x=t.id):z="",k+='<option value="'+t.id+'"'+z+">"+t.name.replace(/\+/g," ")+"</option>"}),o.find(".redux-typography-style").select2("destroy"),o.find(".redux-typography-style").html(k).select2(),o.find(".redux-typography-subsets").parent().fadeOut("fast"),o.find(".typography-family-backup").fadeOut("fast")):o.find(".redux-typography-style")&&(B.each(O,function(e,t){x===e||"normal"===e?(z=' selected="selected"',o.find(".typography-style select2-selection__rendered").text(t)):z="",k+='<option value="'+e+'"'+z+">"+t.replace("+"," ")+"</option>"}),a&&o.find(".redux-typography-style").select2("destroy"),o.find(".redux-typography-style").html(k).select2()),o.find(".redux-typography-font-family").val(i)):B(e).hasClass("redux-typography-family-backup")&&""!==d?o.find(".redux-typography-font-family-backup").val(d):(w=O)&&(B.each(w,function(e,t){x===e||"normal"===e?(z=' selected="selected"',o.find(".typography-style select2-selection__rendered").text(t)):z="",k+='<option value="'+e+'"'+z+">"+t.replace("+"," ")+"</option>"}),a&&o.find(".redux-typography-style").select2("destroy"),o.find(".redux-typography-style").html(k).select2(),o.find(".redux-typography-subsets").parent().fadeOut("fast"),o.find(".typography-family-backup").fadeOut("fast"))),s&&(o.find(".redux-typography-style").addClass("ignore-change"),0===o.find("select.redux-typography-style option[value='"+x+"']").length?(x="",o.find("select.redux-typography-style").val("").trigger("change")):"400"===x&&o.find("select.redux-typography-style").val(x).trigger("change"),o.find(".redux-typography-style").removeClass("ignore-change"),0===o.find("select.redux-typography-subsets option[value='"+v+"']").length&&(v="",o.find(".redux-typography-style").addClass("ignore-change"),o.find("select.redux-typography-subsets").val("").trigger("change"),o.find("input.typography-subsets").val(v),o.find(".redux-typography-style").removeClass("ignore-change"))),B("."+("style_link_"+I)).remove(),null!==i&&"inherit"!==i&&o.hasClass("typography-initialized")&&(_=i.replace(/\s+/g,"+"),!0===p?(C=_,x&&""!==x&&(C+=":"+x.replace(/\-/g," ")),v&&""!==v&&(C+="&subset="+v),!1===N&&"undefined"!=typeof WebFont&&WebFont&&WebFont.load({google:{families:[C]}}),o.find(".redux-typography-google").val(!0)):o.find(".redux-typography-google").val(!1)),-1!==x.indexOf("italic")?(o.find(".typography-preview").css("font-style","italic"),o.find(".typography-font-style").val("italic"),x=x.replace("italic","")):(o.find(".typography-preview").css("font-style","normal"),o.find(".typography-font-style").val("")),o.find(".typography-font-weight").val(x),Boolean(o.find(".redux-typography-height").data("allow-empty"))||(y=y||n),""===n||void 0===n?o.find(".typography-font-size").val(""):o.find(".typography-font-size").val(n+b),""===y||void 0===y?o.find(".typography-line-height").val(""):o.find(".typography-line-height").val(y+b),""===l||void 0===l?o.find(".typography-word-spacing").val(""):o.find(".typography-word-spacing").val(l+b),""===h||void 0===h?o.find(".typography-letter-spacing").val(""):o.find(".typography-letter-spacing").val(h+b),P&&redux.field_objects.pro.typography.select(I),o.hasClass("typography-initialized")&&(0===o.find(".typography-preview").data("preview-size")&&o.find(".typography-preview").css("font-size",n+b),o.find(".typography-preview").css({"font-weight":x,"text-align":g,"font-family":i+", sans-serif"}),"none"===i&&""===i&&o.find(".typography-preview").css("font-family","inherit"),o.find(".typography-preview").css({"line-height":y+b,"word-spacing":l+b,"letter-spacing":h+b}),m&&o.find(".typography-preview").css("color",m),P&&redux.field_objects.typography.previewShadow(I),o.find(".typography-style select2-selection__rendered").text(o.find(".redux-typography-style option:selected").text()),o.find(".typography-script select2-selection__rendered").text(o.find(".redux-typography-subsets option:selected").text()),g&&o.find(".typography-preview").css("text-align",g),u&&o.find(".typography-preview").css("text-transform",u),f&&o.find(".typography-preview").css("font-variant",f),c&&o.find(".typography-preview").css("text-decoration",c),o.find(".typography-preview").slideDown()),o.hasClass("typography-initialized")||o.addClass("typography-initialized"),N=!1,t||redux_change(e)}}(jQuery);
redux-core/inc/fields/typography/redux-typography.scss CHANGED
@@ -148,6 +148,7 @@
148
  font-size: 12px !important;
149
  text-align: left;
150
  color: #999;
 
151
  //margin: 4px 0 2px 0 !important;
152
  cursor: default;
153
  }
148
  font-size: 12px !important;
149
  text-align: left;
150
  color: #999;
151
+ width: 100%;
152
  //margin: 4px 0 2px 0 !important;
153
  cursor: default;
154
  }
redux-core/inc/themecheck/class-redux-themecheck.php CHANGED
@@ -123,7 +123,7 @@ if ( ! class_exists( 'Redux_ThemeCheck', false ) ) {
123
  // phpcs:ignore Generic.Strings.UnnecessaryStringConcat
124
  if ( false !== strpos( $phpfile, 'class' . ' ReduxFramework {' ) ) {
125
  self::$redux_details = array(
126
- 'filename' => Redux_Helpers::strtolower( basename( $php_key ) ),
127
  'path' => $php_key,
128
  );
129
  self::$redux_details['dir'] = str_replace( basename( $php_key ), '', $php_key );
123
  // phpcs:ignore Generic.Strings.UnnecessaryStringConcat
124
  if ( false !== strpos( $phpfile, 'class' . ' ReduxFramework {' ) ) {
125
  self::$redux_details = array(
126
+ 'filename' => Redux_Core::strtolower( basename( $php_key ) ),
127
  'path' => $php_key,
128
  );
129
  self::$redux_details['dir'] = str_replace( basename( $php_key ), '', $php_key );
redux-core/inc/validation/color/class-redux-validation-color.php CHANGED
@@ -28,7 +28,7 @@ if ( ! class_exists( 'Redux_Validation_Color', false ) ) {
28
  return;
29
  }
30
 
31
- $test = str_replace( '#', '', Redux_Helpers::strtolower( trim( $this->value ) ) );
32
  if ( ! in_array( strlen( $test ), array( 3, 6 ), true ) ) {
33
  // translators: %1$s: santizied value. %2$s: Old value.
34
  $this->field['msg'] = isset( $this->field['msg'] ) ? $this->field['msg'] : sprintf( esc_html__( 'Invalid HTML color code %1$s. Please enter a valid code. No value was saved.', 'redux-framework' ), '<code>' . $this->value . '</code>' );
28
  return;
29
  }
30
 
31
+ $test = str_replace( '#', '', Redux_Core::strtolower( trim( $this->value ) ) );
32
  if ( ! in_array( strlen( $test ), array( 3, 6 ), true ) ) {
33
  // translators: %1$s: santizied value. %2$s: Old value.
34
  $this->field['msg'] = isset( $this->field['msg'] ) ? $this->field['msg'] : sprintf( esc_html__( 'Invalid HTML color code %1$s. Please enter a valid code. No value was saved.', 'redux-framework' ), '<code>' . $this->value . '</code>' );
redux-framework.php CHANGED
@@ -10,7 +10,7 @@
10
  * Description: Build better sites in WordPress fast
11
  * Author: Redux.io + Dovy Paukstys
12
  * Author URI: http://redux.io
13
- * Version: 4.1.13
14
  * Text Domain: redux-framework
15
  * License: GPLv3 or later
16
  * License URI: http://www.gnu.org/licenses/gpl-3.0.txt
10
  * Description: Build better sites in WordPress fast
11
  * Author: Redux.io + Dovy Paukstys
12
  * Author URI: http://redux.io
13
+ * Version: 4.1.14
14
  * Text Domain: redux-framework
15
  * License: GPLv3 or later
16
  * License URI: http://www.gnu.org/licenses/gpl-3.0.txt
redux-templates/assets/js/redux-templates.js CHANGED
@@ -419,7 +419,7 @@ exports.push([module.i, "#redux-templatesImportCollectionBtn {\n vertical-align
419
 
420
  exports = module.exports = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
421
  // Module
422
- exports.push([module.i, ".redux-templates-modal-wrapper {\n /* ReduxTemplatesPremiumBox */ }\n .redux-templates-modal-wrapper .redux-templates-modal-body {\n flex: 1 1 auto;\n padding-left: 30px;\n padding-right: 30px;\n box-sizing: border-box;\n background: #fff; }\n .redux-templates-modal-wrapper .redux-templates-modal-body h5 {\n font-size: 1.1em;\n font-weight: 600; }\n .redux-templates-modal-wrapper .redux-templates-modal-body ul {\n list-style-position: inside;\n list-style-type: disc; }\n .redux-templates-modal-wrapper .redux-templates-modal-body ul.redux-templates-import-wizard-missing-dependency li {\n line-height: 1.8; }\n .redux-templates-modal-wrapper .redux-templates-modal-body .error {\n color: #f00; }\n .redux-templates-modal-wrapper .redux-templates-import-wizard-spinner-wrapper {\n position: absolute;\n width: calc(100% - 60px);\n height: 100%;\n flex: 1 1 auto;\n align-items: center;\n justify-content: center;\n display: flex;\n flex-direction: column; }\n .redux-templates-modal-wrapper .redux-templates-import-wizard-spinner-wrapper .text-transition {\n text-align: center;\n font-size: 18px;\n color: #555d66;\n margin-bottom: 20px; }\n .redux-templates-modal-wrapper .redux-templates-import-progress {\n font-size: 1.1em;\n text-align: center; }\n .redux-templates-modal-wrapper .redux-templates-import-progress li {\n list-style: none; }\n .redux-templates-modal-wrapper .redux-templates-import-progress li.success i {\n color: #46b450; }\n .redux-templates-modal-wrapper .redux-templates-import-progress li.failure i {\n color: #dc3232; }\n .redux-templates-modal-wrapper .redux-templates-import-progress li.info i {\n color: #00a0d2; }\n .redux-templates-modal-wrapper .redux-templates-import-progress {\n width: 50%;\n margin: 10px auto; }\n .redux-templates-modal-wrapper .redux-templates-import-progress li {\n display: flex;\n justify-content: space-between; }\n .redux-templates-modal-wrapper .section-box.premium-box {\n margin: 35px auto;\n text-align: center; }\n .redux-templates-modal-wrapper .section-box.premium-box h3 {\n font-size: 1.5em;\n line-height: 1.1em;\n margin-top: 0px; }\n .redux-templates-modal-wrapper .section-box.premium-box p {\n font-size: calc(13px + 0.2vw); }\n .redux-templates-modal-wrapper .section-box.premium-box ul {\n width: 50%;\n margin: 0 auto;\n text-align: left;\n list-style-type: disc;\n list-style-position: inside; }\n .redux-templates-modal-wrapper .section-box.premium-box .redux-templates-upgrade-button {\n border: none;\n border-radius: 4px;\n cursor: pointer;\n opacity: 1;\n background: #24b0a6;\n transition: opacity 0.2s ease-in-out;\n box-shadow: none !important;\n color: #fff;\n text-decoration: none;\n padding: 0.75em 1.25em;\n display: block;\n margin: 30px auto 0 auto;\n max-width: 200px;\n text-align: center;\n font-size: 1em; }\n .redux-templates-modal-wrapper .section-box.premium-box .redux-templates-upgrade-button:hover {\n color: #fff;\n opacity: 0.85;\n box-shadow: none !important;\n background: #19837c; }\n .redux-templates-modal-wrapper .redux-templates-importmodal-content {\n flex: 1;\n display: flex;\n flex-direction: column; }\n\n.text-transition {\n width: 100% !important;\n text-align: center; }\n .text-transition .text-transition_inner > div {\n font-size: 1.1rem; }\n", ""]);
423
 
424
 
425
 
@@ -7026,10 +7026,8 @@ function InstallPluginStep(props) {
7026
  return wp.element.createElement(Fragment, null, wp.element.createElement("div", {
7027
  className: "redux-templates-modal-body"
7028
  }, wp.element.createElement("h5", null, __('Install Required Plugins', redux_templates.i18n)), wp.element.createElement("p", null, __('Plugins needed to import this template are missing. Required plugins will be installed and activated automatically.', redux_templates.i18n)), installingPlugin === null && failedList.length > 0 && wp.element.createElement("p", {
7029
- className: "error"
7030
- }, "It's us, not you, we recommend you to try again later or contact us ", wp.element.createElement("a", {
7031
- href: "#"
7032
- }, "here")), wp.element.createElement("ul", {
7033
  className: "redux-templates-import-progress"
7034
  }, missingPlugins && missingPlugins.map(pluginKey => {
7035
  let plugin = Object(_redux_templates_stores_dependencyHelper__WEBPACK_IMPORTED_MODULE_0__["pluginInfo"])(pluginKey);
@@ -7042,9 +7040,12 @@ function InstallPluginStep(props) {
7042
  if (failedList.includes(pluginKey)) return wp.element.createElement("li", {
7043
  className: "failure",
7044
  key: pluginKey
7045
- }, plugin.name, " ", wp.element.createElement("i", {
7046
- className: "fas fa-exclamation-triangle"
7047
- }));
 
 
 
7048
  if (waitingList.includes(pluginKey)) return wp.element.createElement("li", {
7049
  className: "todo",
7050
  key: pluginKey
419
 
420
  exports = module.exports = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
421
  // Module
422
+ exports.push([module.i, ".redux-templates-modal-wrapper {\n /* ReduxTemplatesPremiumBox */ }\n .redux-templates-modal-wrapper .redux-templates-modal-body {\n flex: 1 1 auto;\n padding-left: 30px;\n padding-right: 30px;\n box-sizing: border-box;\n background: #fff; }\n .redux-templates-modal-wrapper .redux-templates-modal-body h5 {\n font-size: 1.1em;\n font-weight: 600; }\n .redux-templates-modal-wrapper .redux-templates-modal-body ul {\n list-style-position: inside;\n list-style-type: disc; }\n .redux-templates-modal-wrapper .redux-templates-modal-body ul.redux-templates-import-wizard-missing-dependency li {\n line-height: 1.8; }\n .redux-templates-modal-wrapper .redux-templates-modal-body .error {\n color: #f00; }\n .redux-templates-modal-wrapper .redux-templates-modal-body .error i {\n color: inherit; }\n .redux-templates-modal-wrapper .redux-templates-modal-body .error.installError {\n text-align: center; }\n .redux-templates-modal-wrapper .redux-templates-import-wizard-spinner-wrapper {\n position: absolute;\n width: calc(100% - 60px);\n height: 100%;\n flex: 1 1 auto;\n align-items: center;\n justify-content: center;\n display: flex;\n flex-direction: column; }\n .redux-templates-modal-wrapper .redux-templates-import-wizard-spinner-wrapper .text-transition {\n text-align: center;\n font-size: 18px;\n color: #555d66;\n margin-bottom: 20px; }\n .redux-templates-modal-wrapper .redux-templates-import-progress {\n font-size: 1.1em;\n text-align: center; }\n .redux-templates-modal-wrapper .redux-templates-import-progress li {\n list-style: none; }\n .redux-templates-modal-wrapper .redux-templates-import-progress li.success i {\n color: #46b450; }\n .redux-templates-modal-wrapper .redux-templates-import-progress li.info i {\n color: #00a0d2; }\n .redux-templates-modal-wrapper .redux-templates-import-progress {\n width: 50%;\n margin: 10px auto; }\n .redux-templates-modal-wrapper .redux-templates-import-progress li {\n display: flex;\n justify-content: space-between; }\n .redux-templates-modal-wrapper .section-box.premium-box {\n margin: 35px auto;\n text-align: center; }\n .redux-templates-modal-wrapper .section-box.premium-box h3 {\n font-size: 1.5em;\n line-height: 1.1em;\n margin-top: 0px; }\n .redux-templates-modal-wrapper .section-box.premium-box p {\n font-size: calc(13px + 0.2vw); }\n .redux-templates-modal-wrapper .section-box.premium-box ul {\n width: 50%;\n margin: 0 auto;\n text-align: left;\n list-style-type: disc;\n list-style-position: inside; }\n .redux-templates-modal-wrapper .section-box.premium-box .redux-templates-upgrade-button {\n border: none;\n border-radius: 4px;\n cursor: pointer;\n opacity: 1;\n background: #24b0a6;\n transition: opacity 0.2s ease-in-out;\n box-shadow: none !important;\n color: #fff;\n text-decoration: none;\n padding: 0.75em 1.25em;\n display: block;\n margin: 30px auto 0 auto;\n max-width: 200px;\n text-align: center;\n font-size: 1em; }\n .redux-templates-modal-wrapper .section-box.premium-box .redux-templates-upgrade-button:hover {\n color: #fff;\n opacity: 0.85;\n box-shadow: none !important;\n background: #19837c; }\n .redux-templates-modal-wrapper .redux-templates-importmodal-content {\n flex: 1;\n display: flex;\n flex-direction: column; }\n\n.text-transition {\n width: 100% !important;\n text-align: center; }\n .text-transition .text-transition_inner > div {\n font-size: 1.1rem; }\n", ""]);
423
 
424
 
425
 
7026
  return wp.element.createElement(Fragment, null, wp.element.createElement("div", {
7027
  className: "redux-templates-modal-body"
7028
  }, wp.element.createElement("h5", null, __('Install Required Plugins', redux_templates.i18n)), wp.element.createElement("p", null, __('Plugins needed to import this template are missing. Required plugins will be installed and activated automatically.', redux_templates.i18n)), installingPlugin === null && failedList.length > 0 && wp.element.createElement("p", {
7029
+ className: "error installError"
7030
+ }, __('The following plugin(s) failed to install properly. Please manually install them yourself before attempting another import.', redux_templates.i18n)), wp.element.createElement("ul", {
 
 
7031
  className: "redux-templates-import-progress"
7032
  }, missingPlugins && missingPlugins.map(pluginKey => {
7033
  let plugin = Object(_redux_templates_stores_dependencyHelper__WEBPACK_IMPORTED_MODULE_0__["pluginInfo"])(pluginKey);
7040
  if (failedList.includes(pluginKey)) return wp.element.createElement("li", {
7041
  className: "failure",
7042
  key: pluginKey
7043
+ }, plugin.name, " ", wp.element.createElement("a", {
7044
+ href: plugin.url,
7045
+ target: "_blank"
7046
+ }, wp.element.createElement("i", {
7047
+ className: "fas fa-external-link-alt"
7048
+ })));
7049
  if (waitingList.includes(pluginKey)) return wp.element.createElement("li", {
7050
  className: "todo",
7051
  key: pluginKey
redux-templates/assets/js/redux-templates.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"redux-templates.js","sources":["webpack:///webpack/bootstrap","webpack:///./redux-templates/src/blocks/library/style.scss","webpack:///./redux-templates/src/challenge/challenge-list-block/style.scss","webpack:///./redux-templates/src/challenge/challenge-timer/style.scss","webpack:///./redux-templates/src/challenge/final-templates/style.scss","webpack:///./redux-templates/src/challenge/style.scss","webpack:///./redux-templates/src/components/background-image/style.scss","webpack:///./redux-templates/src/components/button-group/style.scss","webpack:///./redux-templates/src/components/dependent-plugins/style.scss","webpack:///./redux-templates/src/components/error-notice/style.scss","webpack:///./redux-templates/src/components/fab-wrapper/styles.scss","webpack:///./redux-templates/src/components/multiple-item/style.scss","webpack:///./redux-templates/src/components/pagination/style.scss","webpack:///./redux-templates/src/components/preview-import-button/style.scss","webpack:///./redux-templates/src/components/single-item/style.scss","webpack:///./redux-templates/src/components/template-list-subheader/style.scss","webpack:///./redux-templates/src/custom-css/style.scss","webpack:///./redux-templates/src/editor.scss","webpack:///./redux-templates/src/modal-import-wizard/style.scss","webpack:///./redux-templates/src/modal-library/sidebar/style.scss","webpack:///./redux-templates/src/modal-library/style.scss","webpack:///./redux-templates/src/modal-library/view-collection/style.scss","webpack:///./redux-templates/src/modal-library/view-saved/style.scss","webpack:///./redux-templates/src/modal-library/view-template-list/style.scss","webpack:///./redux-templates/src/modal-preview/style.scss","webpack:///./redux-templates/src/modals.scss","webpack:///./redux-templates/assets/img/icon-color.svg","webpack:///./redux-templates/assets/img/icon.svg","webpack:///./redux-templates/src/blocks/blocks.js","webpack:///./redux-templates/src/blocks/import/components/edit.js","webpack:///./redux-templates/src/blocks/import/icon.js","webpack:///./redux-templates/src/blocks/import/index.js","webpack:///./redux-templates/src/blocks/import/transforms.js","webpack:///./redux-templates/src/blocks/import/utils/file.js","webpack:///./redux-templates/src/blocks/import/utils/import.js","webpack:///./redux-templates/src/blocks/import/utils/insert.js","webpack:///./redux-templates/src/blocks/library/edit.js","webpack:///./redux-templates/src/blocks/library/index.js","webpack:///./redux-templates/src/blocks/library/insert-library-button.js","webpack:///./redux-templates/src/blocks/library/style.scss?eec2","webpack:///./redux-templates/src/challenge/challenge-list-block/ChallengeStepItem.js","webpack:///./redux-templates/src/challenge/challenge-list-block/ProgressBar.js","webpack:///./redux-templates/src/challenge/challenge-list-block/index.js","webpack:///./redux-templates/src/challenge/challenge-list-block/style.scss?9f45","webpack:///./redux-templates/src/challenge/challenge-timer/index.js","webpack:///./redux-templates/src/challenge/challenge-timer/style.scss?1c53","webpack:///./redux-templates/src/challenge/config.js","webpack:///./redux-templates/src/challenge/final-templates/congrats.js","webpack:///./redux-templates/src/challenge/final-templates/contact.js","webpack:///./redux-templates/src/challenge/final-templates/index.js","webpack:///./redux-templates/src/challenge/final-templates/style.scss?54b2","webpack:///./redux-templates/src/challenge/helper.js","webpack:///./redux-templates/src/challenge/index.js","webpack:///./redux-templates/src/challenge/style.scss?5d1a","webpack:///./redux-templates/src/challenge/tooltip/ChallengeDot.js","webpack:///./redux-templates/src/challenge/tooltip/TooltipBox.js","webpack:///./redux-templates/src/components/background-image/index.js","webpack:///./redux-templates/src/components/background-image/style.scss?1987","webpack:///./redux-templates/src/components/button-group/index.js","webpack:///./redux-templates/src/components/button-group/style.scss?5c67","webpack:///./redux-templates/src/components/dependent-plugins/index.js","webpack:///./redux-templates/src/components/dependent-plugins/style.scss?77c8","webpack:///./redux-templates/src/components/error-notice/index.js","webpack:///./redux-templates/src/components/error-notice/style.scss?3b1b","webpack:///./redux-templates/src/components/fab-wrapper/config.js","webpack:///./redux-templates/src/components/fab-wrapper/index.js","webpack:///./redux-templates/src/components/fab-wrapper/styles.scss?0dab","webpack:///./redux-templates/src/components/multiple-item/index.js","webpack:///./redux-templates/src/components/multiple-item/style.scss?3037","webpack:///./redux-templates/src/components/pagination/index.js","webpack:///./redux-templates/src/components/pagination/style.scss?7abf","webpack:///./redux-templates/src/components/preview-import-button/index.js","webpack:///./redux-templates/src/components/preview-import-button/style.scss?db94","webpack:///./redux-templates/src/components/safe-image-load/index.js","webpack:///./redux-templates/src/components/single-item/index.js","webpack:///./redux-templates/src/components/single-item/style.scss?1c09","webpack:///./redux-templates/src/components/tab-header/index.js","webpack:///./redux-templates/src/components/template-list-subheader/images/view-few.svg","webpack:///./redux-templates/src/components/template-list-subheader/images/view-many.svg","webpack:///./redux-templates/src/components/template-list-subheader/images/view-normal.svg","webpack:///./redux-templates/src/components/template-list-subheader/index.js","webpack:///./redux-templates/src/components/template-list-subheader/style.scss?349f","webpack:///./redux-templates/src/custom-css/editor.js","webpack:///./redux-templates/src/custom-css/index.js","webpack:///./redux-templates/src/custom-css/inject-css.js","webpack:///./redux-templates/src/custom-css/style.scss?7049","webpack:///./redux-templates/src/editor.scss?b1ec","webpack:///./redux-templates/src/icons/images/acf-blocks.svg","webpack:///./redux-templates/src/icons/images/advanced-custom-fields.svg","webpack:///./redux-templates/src/icons/images/advanced-gutenberg-blocks.svg","webpack:///./redux-templates/src/icons/images/atomic-blocks.svg","webpack:///./redux-templates/src/icons/images/block-options.svg","webpack:///./redux-templates/src/icons/images/block-slider.svg","webpack:///./redux-templates/src/icons/images/coblocks.svg","webpack:///./redux-templates/src/icons/images/creative-blocks.svg","webpack:///./redux-templates/src/icons/images/editorplus.svg","webpack:///./redux-templates/src/icons/images/elegant-blocks.svg","webpack:///./redux-templates/src/icons/images/enhanced-blocks.svg","webpack:///./redux-templates/src/icons/images/essential-blocks.svg","webpack:///./redux-templates/src/icons/images/forms-gutenberg.svg","webpack:///./redux-templates/src/icons/images/getwid.svg","webpack:///./redux-templates/src/icons/images/ghostkit.svg","webpack:///./redux-templates/src/icons/images/guteblock.svg","webpack:///./redux-templates/src/icons/images/gutentor.svg","webpack:///./redux-templates/src/icons/images/kadence-blocks.svg","webpack:///./redux-templates/src/icons/images/kioken-blocks.svg","webpack:///./redux-templates/src/icons/images/otter-blocks.svg","webpack:///./redux-templates/src/icons/images/qodeblock.svg","webpack:///./redux-templates/src/icons/images/qubely.svg","webpack:///./redux-templates/src/icons/images/snow-monkey-blocks.svg","webpack:///./redux-templates/src/icons/images/stackable-ultimate-gutenberg-blocks.svg","webpack:///./redux-templates/src/icons/images/ultimate-addons-for-gutenberg.svg","webpack:///./redux-templates/src/icons/images/ultimate-blocks.svg","webpack:///./redux-templates/src/icons/images/ultimate-post.svg","webpack:///./redux-templates/src/icons/images/wordpress.svg","webpack:///./redux-templates/src/icons/index.js","webpack:///./redux-templates/src/index.js","webpack:///./redux-templates/src/modal-feedback/index.js","webpack:///./redux-templates/src/modal-import-wizard/ImportingStep.js","webpack:///./redux-templates/src/modal-import-wizard/InstallPluginStep.js","webpack:///./redux-templates/src/modal-import-wizard/OptionStep.js","webpack:///./redux-templates/src/modal-import-wizard/ProPluginsStep.js","webpack:///./redux-templates/src/modal-import-wizard/ReduxTeamplatesActivateBox.js","webpack:///./redux-templates/src/modal-import-wizard/ReduxTemplatesPremiumBox.js","webpack:///./redux-templates/src/modal-import-wizard/index.js","webpack:///./redux-templates/src/modal-import-wizard/style.scss?9a4a","webpack:///./redux-templates/src/modal-library/index.js","webpack:///./redux-templates/src/modal-library/layout-with-sidebar/index.js","webpack:///./redux-templates/src/modal-library/sidebar/categoryFilter.js","webpack:///./redux-templates/src/modal-library/sidebar/dependencyFilter.js","webpack:///./redux-templates/src/modal-library/sidebar/dependencyFilterRow.js","webpack:///./redux-templates/src/modal-library/sidebar/index.js","webpack:///./redux-templates/src/modal-library/sidebar/priceFilter.js","webpack:///./redux-templates/src/modal-library/sidebar/style.scss?e89b","webpack:///./redux-templates/src/modal-library/style.scss?f8e2","webpack:///./redux-templates/src/modal-library/view-collection/index.js","webpack:///./redux-templates/src/modal-library/view-collection/style.scss?bea7","webpack:///./redux-templates/src/modal-library/view-saved/index.js","webpack:///./redux-templates/src/modal-library/view-saved/style.scss?fe19","webpack:///./redux-templates/src/modal-library/view-template-list/index.js","webpack:///./redux-templates/src/modal-library/view-template-list/style.scss?32ed","webpack:///./redux-templates/src/modal-manager/index.js","webpack:///./redux-templates/src/modal-preview/FullyOverlayFooter.js","webpack:///./redux-templates/src/modal-preview/FullyOverlayHeader.js","webpack:///./redux-templates/src/modal-preview/SidebarContent.js","webpack:///./redux-templates/src/modal-preview/SitePreviewSidebar.js","webpack:///./redux-templates/src/modal-preview/index.js","webpack:///./redux-templates/src/modal-preview/style.scss?ef64","webpack:///./redux-templates/src/modals.scss?6210","webpack:///./redux-templates/src/plugins/export-page-menu-item/index.js","webpack:///./redux-templates/src/plugins/export/export-block-menu-item.js","webpack:///./redux-templates/src/plugins/export/file.js","webpack:///./redux-templates/src/plugins/export/index.js","webpack:///./redux-templates/src/plugins/export/reusable.js","webpack:///./redux-templates/src/plugins/library-context-menu-item/index.js","webpack:///./redux-templates/src/plugins/share-block-btn/buttons.js","webpack:///./redux-templates/src/plugins/share-block-btn/index.js","webpack:///./redux-templates/src/plugins/sidebar-share/index.js","webpack:///./redux-templates/src/plugins/sidebar-share/sidebar.js","webpack:///./redux-templates/src/stores/actionHelper.js","webpack:///./redux-templates/src/stores/actions.js","webpack:///./redux-templates/src/stores/dependencyHelper.js","webpack:///./redux-templates/src/stores/filters.js","webpack:///./redux-templates/src/stores/helper.js","webpack:///./redux-templates/src/stores/index.js","webpack:///./redux-templates/src/stores/reducer.js","webpack:///external \"wp.blockEditor\"","webpack:///external \"wp.blocks\"","webpack:///external \"wp.components\"","webpack:///external \"wp.compose\"","webpack:///external \"wp.data\"","webpack:///external \"wp.editPost\"","webpack:///external \"wp.element\"","webpack:///external \"wp.hooks\"","webpack:///external \"wp.i18n\"","webpack:///external \"lodash\"","webpack:///external \"React\"","webpack:///external \"ReactDOM\""],"sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"redux-templates\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([\"./redux-templates/src/index.js\",\"vendor\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-template-library-block .components-placeholder__label svg {\\n margin-right: 8px; }\\n\\n.redux-template-library-block button.components-button {\\n height: auto;\\n font-weight: 600;\\n text-transform: uppercase;\\n font-size: 13px;\\n padding: 11px 20px;\\n background: #fff; }\\n\\n.redux-templates-insert-library-button {\\n margin-left: 10px;\\n margin-right: 10px; }\\n .redux-templates-insert-library-button svg {\\n width: 20px;\\n height: 20px; }\\n\\n.redux-insert-library-button {\\n margin-left: 10px;\\n margin-right: 10px; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".challenge-list-block {\\n padding: 15px 20px 20px;\\n margin-bottom: 15px;\\n background-color: #fff;\\n overflow: hidden;\\n border-radius: 4px;\\n box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.2);\\n -webkit-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.2);\\n -moz-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.2); }\\n\\n.challenge-bar {\\n border-radius: 20px;\\n background-color: #eee; }\\n\\n.challenge-bar div {\\n width: 0;\\n height: 20px;\\n border-radius: 20px;\\n background-color: #2576a4; }\\n\\n.challenge-list {\\n list-style: none;\\n margin: 17px 0 20px;\\n font-size: 13px; }\\n .challenge-list li {\\n margin-bottom: 17px; }\\n .challenge-list li i {\\n display: inline-block;\\n font-size: 18px;\\n color: #d6d6d6;\\n margin-right: 8px;\\n line-height: 15px;\\n vertical-align: bottom;\\n border-radius: 50%; }\\n .challenge-list li.challenge-item-current {\\n font-weight: bold; }\\n .challenge-list li.challenge-item-current i {\\n color: #df7739;\\n font-size: 17.5px;\\n line-height: 1;\\n text-indent: 0.5px; }\\n .challenge-list li.challenge-item-completed {\\n font-weight: initial;\\n text-decoration: line-through; }\\n .challenge-list li.challenge-item-completed i {\\n color: #6ab255;\\n font-size: 18px;\\n background-color: #fff; }\\n .challenge-list li .dashicons-yes {\\n display: none;\\n vertical-align: middle; }\\n\\n/* /.challenge-list */\\nbutton.btn-challenge-start {\\n font-size: 12px;\\n padding: 6px 15px;\\n border: 1px solid #00a7e5;\\n background-color: #24b0a6;\\n border-radius: 3px;\\n color: #fff;\\n cursor: pointer; }\\n button.btn-challenge-start:hover {\\n background-color: #19837c; }\\n\\n.btn-challenge-cancel,\\n.btn-challenge-skip {\\n margin: 6px 0;\\n border: 0;\\n text-decoration: underline; }\\n\\n.btn-challenge-cancel,\\n.btn-challenge-skip {\\n align-self: flex-end;\\n color: #909090;\\n font-size: 12px;\\n font-weight: normal;\\n background: none; }\\n\\n.wpforms-btn-md {\\n min-height: initial; }\\n\\n.challenge-button-row {\\n display: flex;\\n justify-content: space-between; }\\n .challenge-button-row button {\\n cursor: pointer; }\\n\\n.started.challenge-button-row {\\n align-content: space-between;\\n flex-direction: column; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".block-timer {\\n padding: 5px;\\n background-color: #2d2d2d;\\n border-radius: 500px;\\n width: 277px;\\n box-sizing: border-box;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-pack: justify;\\n -ms-flex-pack: justify;\\n justify-content: space-between;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.2);\\n -webkit-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.2);\\n -moz-box-shadow: 0 0 40px 0 rgba(0, 0, 0, 0.2);\\n padding-left: 50px; }\\n .block-timer img {\\n width: 50px;\\n height: 50px;\\n border-radius: 50%; }\\n .block-timer h3 {\\n font-size: 14px;\\n font-weight: 500;\\n color: #fff;\\n margin: 0; }\\n .block-timer p {\\n font-size: 14px;\\n font-weight: 100;\\n color: #ababab;\\n margin: 0; }\\n .block-timer .caret-icon {\\n border: 2px solid;\\n border-radius: 50%;\\n color: #6c6c6c;\\n margin: 0 15px;\\n width: 23px;\\n height: 23px;\\n font-size: 20px;\\n cursor: pointer; }\\n .block-timer .caret-icon .fa {\\n width: 100%;\\n text-align: center;\\n -webkit-transition: 400ms;\\n -o-transition: 400ms;\\n transition: 400ms; }\\n .block-timer .caret-icon.closed .fa {\\n -webkit-transform: rotate(180deg) translateY(1px);\\n -ms-transform: rotate(180deg) translateY(1px);\\n transform: rotate(180deg) translateY(1px); }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".challenge-popup-wrapper {\\n height: 500px;\\n border-radius: 10px; }\\n\\n.challenge-popup-header {\\n width: 100%;\\n height: 212px;\\n border-top-left-radius: 8px;\\n border-top-right-radius: 8px; }\\n\\n.challenge-popup-header-congrats {\\n background-position: center;\\n background-size: cover; }\\n\\n.challenge-popup-header-contact {\\n background-position: center;\\n background-size: auto 75%;\\n background-color: #eee;\\n background-repeat: no-repeat; }\\n\\n.challenge-popup-content {\\n padding: 30px 40px;\\n -webkit-font-smoothing: antialiased; }\\n\\n.challenge-popup-content h3 {\\n color: #24b0a6;\\n margin: 0 0 20px;\\n font-size: 24px;\\n font-family: \\\"Helvetica Neue\\\";\\n font-weight: 500; }\\n\\n.challenge-popup-content p {\\n font-size: 16px;\\n margin: 0 0 22px; }\\n\\n.challenge-popup-content b {\\n font-weight: 500; }\\n\\n.challenge-popup-content .challenge-contact-message {\\n box-shadow: none;\\n resize: none;\\n margin-bottom: 21px;\\n width: 100%;\\n min-height: 175px; }\\n\\n.challenge-popup-content label {\\n font-size: 13.8px;\\n display: block;\\n margin-bottom: 23px; }\\n\\n.challenge-popup-content input[type=\\\"checkbox\\\"] {\\n margin-right: 8px; }\\n\\n.challenge-popup-content .rating-stars {\\n color: #fdb72c;\\n font-size: 18px;\\n font-weight: bold; }\\n\\n.challenge-popup-close .fa-times {\\n font-size: 20px;\\n color: #777;\\n float: right;\\n margin: 15px;\\n border-radius: 50%;\\n cursor: pointer; }\\n\\n.challenge-popup-btn {\\n display: inline-block;\\n border-radius: 2px;\\n cursor: pointer;\\n text-decoration: none;\\n text-align: center;\\n vertical-align: middle;\\n white-space: nowrap;\\n box-shadow: none;\\n font-size: 15px;\\n font-weight: 600;\\n padding: 14px 25px;\\n border: 1px solid #00a7e5;\\n background-color: #24b0a6;\\n color: #fff; }\\n .challenge-popup-btn:hover {\\n border: 1px solid #19837c;\\n background-color: #19837c;\\n color: #fff; }\\n .challenge-popup-btn .dashicons-external {\\n margin-left: 6px; }\\n\\n.challenge-popup-content.challenge-contact p {\\n font-size: 14px; }\\n\\n.challenge-popup-content.challenge-contact textarea {\\n margin-bottom: 10px; }\\n\\n.challenge-popup-content.challenge-contact label {\\n font-size: 13px;\\n margin-bottom: 15px; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-challenge {\\n display: block;\\n position: fixed;\\n right: 1em;\\n bottom: 55px;\\n max-width: 277px;\\n z-index: 9999; }\\n .redux-templates-challenge p {\\n font-size: 14px;\\n line-height: 1.4;\\n margin-top: 0;\\n color: #23282c; }\\n .redux-templates-challenge b {\\n font-weight: 500; }\\n .redux-templates-challenge.challenge-start {\\n display: initial; }\\n\\n@media all and (max-height: 900px) {\\n #challenge-contact-popup {\\n margin: 50px 0 20px; } }\\n\\n.challenge-tooltip.tooltipster-sidetip {\\n z-index: 100100 !important; }\\n\\n.challenge-tooltip.tooltipster-sidetip.tooltipster-top .tooltipster-box {\\n margin-bottom: 18px; }\\n\\n.challenge-tooltip.tooltipster-sidetip.tooltipster-top .tooltipster-arrow {\\n bottom: 8px; }\\n\\n.challenge-tooltip.tooltipster-sidetip.tooltipster-top .tooltipster-arrow-background {\\n top: 0; }\\n\\n.challenge-tooltip.tooltipster-sidetip.tooltipster-right .tooltipster-box {\\n margin-right: 18px; }\\n\\n.challenge-tooltip.tooltipster-sidetip.tooltipster-right .tooltipster-arrow {\\n left: 8px; }\\n\\n.challenge-tooltip.tooltipster-sidetip .tooltipster-box {\\n background: #fff;\\n border: none;\\n border-radius: 4px;\\n box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.25);\\n -webkit-box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.25);\\n -moz-box-shadow: 0 10px 35px 0 rgba(0, 0, 0, 0.25); }\\n\\n.challenge-tooltip.tooltipster-sidetip .tooltipster-box .tooltipster-content {\\n color: #444;\\n padding: 16px 20px 18px; }\\n\\n.challenge-tooltip.tooltipster-sidetip .tooltipster-box .tooltipster-content h3 {\\n font-size: 15px;\\n margin: 0; }\\n\\n.challenge-tooltip.tooltipster-sidetip .tooltipster-box .tooltipster-content p {\\n margin: 10px 0 0; }\\n\\n.challenge-tooltip.tooltipster-sidetip .tooltipster-box .challenge-done-btn {\\n border-radius: 3px;\\n cursor: pointer;\\n text-decoration: none;\\n text-align: center;\\n vertical-align: middle;\\n white-space: nowrap;\\n box-shadow: none;\\n font-size: 13px;\\n font-weight: 600;\\n padding: 7px 18px;\\n border: 1px solid #00a7e5;\\n background-color: #24b0a6;\\n color: #fff;\\n display: block;\\n margin: 15px auto 0;\\n outline: none; }\\n\\n.challenge-tooltip.tooltipster-sidetip .tooltipster-box .challenge-done-btn:hover {\\n border: 1px solid #19837c;\\n background-color: #19837c; }\\n\\n.challenge-tooltip.tooltipster-sidetip .tooltipster-arrow-border {\\n border: none; }\\n\\n.challenge-tooltip.tooltipster-sidetip.tooltipster-top .tooltipster-arrow-background {\\n border-bottom-color: #fff; }\\n\\n.challenge-tooltip.tooltipster-sidetip.tooltipster-left .tooltipster-arrow-background {\\n border-right-color: #fff; }\\n\\n.challenge-tooltip.tooltipster-sidetip.tooltipster-bottom .tooltipster-arrow-background {\\n border-top-color: #fff; }\\n\\n.challenge-tooltip.tooltipster-sidetip.tooltipster-right .tooltipster-arrow-background {\\n border-left-color: #fff; }\\n\\n.block-editor-page .edit-post-layout .components-notice-list > div {\\n padding-left: 50px; }\\n\\n.block-editor-page span.wpforms-challenge-dot-step5 {\\n margin: 22px 18px;\\n z-index: 9999; }\\n\\n.block-editor-page .wpforms-challenge-tooltip.wpforms-challenge-tooltip-step5 {\\n max-width: 233px;\\n z-index: 99980 !important; }\\n\\n.challenge-wrapper {\\n position: fixed;\\n top: 0;\\n left: 0;\\n z-index: 600000; }\\n\\n.challenge-tooltip-holder {\\n position: fixed;\\n top: 0;\\n left: 0;\\n z-index: 600000; }\\n .challenge-tooltip-holder .tooltipster-box {\\n position: absolute;\\n box-shadow: 0 -10px 35px 0 rgba(0, 0, 0, 0.25);\\n z-index: 10000;\\n background: #fff;\\n padding: 15px 20px; }\\n\\n.challenge-dot {\\n display: inline-block;\\n width: 16px;\\n height: 16px;\\n background: #24b0a6;\\n box-shadow: 0 0 0 4px rgba(25, 131, 124, 0.15);\\n border-radius: 50%;\\n border: 0;\\n padding: 0; }\\n\\n.tooltipster-sidetip .tooltipster-arrow {\\n position: absolute;\\n width: 20px;\\n height: 10px;\\n z-index: 10000; }\\n\\n.tooltipster-sidetip .tooltipster-arrow-uncropped {\\n position: relative; }\\n\\n.tooltipster-sidetip .tooltipster-arrow-border {\\n left: 0;\\n top: 0;\\n border: none;\\n width: 0;\\n height: 0;\\n position: absolute; }\\n\\n.challenge-tooltip.tooltipster-sidetip .tooltipster-arrow-background {\\n top: 0;\\n left: 0;\\n width: 0;\\n height: 0;\\n position: absolute;\\n border: 10px solid transparent; }\\n\\n.challenge-tooltip.tooltipster-sidetip.tooltipster-top {\\n border-top-color: #fff; }\\n\\n.challenge-tooltip.tooltipster-sidetip.tooltipster-bottom {\\n border-bottom-color: #fff; }\\n\\n.block-timer .caret-icon .fa {\\n -webkit-transition: 400ms;\\n -o-transition: 400ms;\\n transition: 400ms;\\n line-height: 23px; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-single-section-item .block-editor-block-preview__container {\\n margin: 0 auto;\\n min-height: 130px; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-import-button-group {\\n text-align: center; }\\n .redux-templates-import-button-group.disabled span a {\\n cursor: default;\\n opacity: 0.8; }\\n\\n.redux-templates-single-section-item {\\n margin-bottom: 15px; }\\n .redux-templates-single-section-item .redux-templates-import-button-group {\\n margin-top: 10%; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-button-display-dependencies {\\n display: flex;\\n justify-content: center;\\n margin: 10px; }\\n .redux-templates-button-display-dependencies span svg {\\n margin-right: 5px;\\n cursor: pointer; }\\n .redux-templates-button-display-dependencies span svg * {\\n fill: #f7f7f7; }\\n .redux-templates-button-display-dependencies span.missing-dependency svg * {\\n fill: rgba(247, 247, 247, 0.5); }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-error-notice .components-notice {\\n display: flex;\\n font-family: -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Roboto, Oxygen-Sans, Ubuntu, Cantarell, \\\"Helvetica Neue\\\", sans-serif;\\n font-size: 13px;\\n background-color: #e5f5fa;\\n border-left: 4px solid #00a0d2;\\n margin: 5px 15px 2px;\\n padding: 8px 12px;\\n align-items: center;\\n position: absolute;\\n height: 50px;\\n z-index: 9999;\\n width: 50%;\\n right: 0;\\n top: 70px;\\n transition: opacity 2s linear; }\\n .redux-templates-error-notice .components-notice.is-dismissible {\\n padding-right: 0; }\\n .redux-templates-error-notice .components-notice.is-success {\\n border-left-color: #4ab866;\\n background-color: rgba(74, 184, 102, 0.95); }\\n .redux-templates-error-notice .components-notice.is-warning {\\n border-left-color: #f0b849;\\n background-color: rgba(254, 248, 238, 0.95); }\\n .redux-templates-error-notice .components-notice.is-error {\\n border-left-color: #d94f4f;\\n background-color: rgba(249, 226, 226, 0.95); }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".rtf {\\n box-sizing: border-box;\\n margin: 25px;\\n position: fixed;\\n white-space: nowrap;\\n z-index: 9998;\\n padding-left: 0;\\n list-style: none; }\\n .rtf.open .rtf--mb > * {\\n transform-origin: center center;\\n transform: none;\\n transition: ease-in-out transform 0.2s; }\\n .rtf.open .rtf--mb > ul {\\n list-style: none;\\n margin: 0;\\n padding: 0; }\\n .rtf.open .rtf--ab__c:hover > span {\\n transition: ease-in-out opacity 0.2s;\\n opacity: 0.9; }\\n .rtf.open .rtf--ab__c > span.always-show {\\n transition: ease-in-out opacity 0.2s;\\n opacity: 0.9; }\\n .rtf.open .rtf--ab__c:nth-child(1) {\\n transform: translateY(-60px) scale(1);\\n transition-delay: 0.03s; }\\n .rtf.open .rtf--ab__c:nth-child(1).top {\\n transform: translateY(60px) scale(1); }\\n .rtf.open .rtf--ab__c:nth-child(2) {\\n transform: translateY(-120px) scale(1);\\n transition-delay: 0.09s; }\\n .rtf.open .rtf--ab__c:nth-child(2).top {\\n transform: translateY(120px) scale(1); }\\n .rtf.open .rtf--ab__c:nth-child(3) {\\n transform: translateY(-180px) scale(1);\\n transition-delay: 0.12s; }\\n .rtf.open .rtf--ab__c:nth-child(3).top {\\n transform: translateY(180px) scale(1); }\\n .rtf.open .rtf--ab__c:nth-child(4) {\\n transform: translateY(-240px) scale(1);\\n transition-delay: 0.15s; }\\n .rtf.open .rtf--ab__c:nth-child(4).top {\\n transform: translateY(240px) scale(1); }\\n .rtf.open .rtf--ab__c:nth-child(5) {\\n transform: translateY(-300px) scale(1);\\n transition-delay: 0.18s; }\\n .rtf.open .rtf--ab__c:nth-child(5).top {\\n transform: translateY(300px) scale(1); }\\n .rtf.open .rtf--ab__c:nth-child(6) {\\n transform: translateY(-360px) scale(1);\\n transition-delay: 0.21s; }\\n .rtf.open .rtf--ab__c:nth-child(6).top {\\n transform: translateY(360px) scale(1); }\\n\\n.rtf--mb__c {\\n padding: 25px;\\n margin: -25px; }\\n .rtf--mb__c *:last-child {\\n margin-bottom: 0; }\\n .rtf--mb__c:hover > span {\\n transition: ease-in-out opacity 0.2s;\\n opacity: 0.9; }\\n .rtf--mb__c > span.always-show {\\n transition: ease-in-out opacity 0.2s;\\n opacity: 0.9; }\\n .rtf--mb__c > span {\\n opacity: 0;\\n transition: ease-in-out opacity 0.2s;\\n position: absolute;\\n top: 50%;\\n transform: translateY(-50%);\\n margin-right: 6px;\\n margin-left: 4px;\\n background: rgba(0, 0, 0, 0.75);\\n padding: 2px 4px;\\n border-radius: 2px;\\n color: #fff;\\n font-size: 13px;\\n box-shadow: 0 0 4px rgba(0, 0, 0, 0.14), 0 4px 8px rgba(0, 0, 0, 0.28); }\\n .rtf--mb__c > span.right {\\n right: 100%; }\\n\\n.rtf--mb {\\n height: 56px;\\n width: 56px;\\n z-index: 9999;\\n background-color: #666;\\n display: inline-flex;\\n justify-content: center;\\n align-items: center;\\n position: relative;\\n border: none;\\n border-radius: 50%;\\n box-shadow: 0 0 4px rgba(0, 0, 0, 0.14), 0 4px 8px rgba(0, 0, 0, 0.28);\\n cursor: pointer;\\n outline: none;\\n padding: 0;\\n -webkit-user-drag: none;\\n font-weight: bold;\\n color: #f1f1f1;\\n font-size: 18px; }\\n .rtf--mb > * {\\n transition: ease-in-out transform 0.2s; }\\n\\n.rtf--ab__c {\\n display: block;\\n position: absolute;\\n top: 0;\\n right: 1px;\\n padding: 10px 0;\\n margin: -10px 0;\\n transition: ease-in-out transform 0.2s; }\\n .rtf--ab__c > span {\\n opacity: 0;\\n transition: ease-in-out opacity 0.2s;\\n position: absolute;\\n top: 50%;\\n transform: translateY(-50%);\\n margin-right: 6px;\\n background: rgba(0, 0, 0, 0.75);\\n padding: 2px 4px;\\n border-radius: 2px;\\n color: #fff;\\n font-size: 13px;\\n box-shadow: 0 0 4px rgba(0, 0, 0, 0.14), 0 4px 8px rgba(0, 0, 0, 0.28); }\\n .rtf--ab__c > span.right {\\n right: 100%; }\\n .rtf--ab__c:nth-child(1) {\\n transform: translateY(-60px) scale(0);\\n transition-delay: 0.21s; }\\n .rtf--ab__c:nth-child(1).top {\\n transform: translateY(60px) scale(0); }\\n .rtf--ab__c:nth-child(2) {\\n transform: translateY(-120px) scale(0);\\n transition-delay: 0.18s; }\\n .rtf--ab__c:nth-child(2).top {\\n transform: translateY(120px) scale(0); }\\n .rtf--ab__c:nth-child(3) {\\n transform: translateY(-180px) scale(0);\\n transition-delay: 0.15s; }\\n .rtf--ab__c:nth-child(3).top {\\n transform: translateY(180px) scale(0); }\\n .rtf--ab__c:nth-child(4) {\\n transform: translateY(-240px) scale(0);\\n transition-delay: 0.12s; }\\n .rtf--ab__c:nth-child(4).top {\\n transform: translateY(240px) scale(0); }\\n .rtf--ab__c:nth-child(5) {\\n transform: translateY(-300px) scale(0);\\n transition-delay: 0.09s; }\\n .rtf--ab__c:nth-child(5).top {\\n transform: translateY(300px) scale(0); }\\n .rtf--ab__c:nth-child(6) {\\n transform: translateY(-360px) scale(0);\\n transition-delay: 0.03s; }\\n .rtf--ab__c:nth-child(6).top {\\n transform: translateY(360px) scale(0); }\\n\\n.rtf--ab {\\n height: 48px;\\n width: 48px;\\n background-color: #aaa;\\n display: inline-flex;\\n justify-content: center;\\n align-items: center;\\n position: relative;\\n border: none;\\n border-radius: 50%;\\n box-shadow: 0 0 4px rgba(0, 0, 0, 0.14), 0 4px 8px rgba(0, 0, 0, 0.28);\\n cursor: pointer;\\n outline: none;\\n padding: 0;\\n -webkit-user-drag: none;\\n font-weight: bold;\\n color: #f1f1f1;\\n margin-right: 4px;\\n font-size: 16px;\\n z-index: 10000; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \"/*multiple box*/\\n.redux-templates-multiple-template-box {\\n margin-bottom: 25px;\\n position: relative;\\n transition: all 0.05s ease-in-out; }\\n .redux-templates-multiple-template-box img {\\n transition: all 0.05s ease-in-out; }\\n .redux-templates-multiple-template-box .redux-templates-box-shadow {\\n transition: all 0.05s ease-in-out;\\n box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.1); }\\n .redux-templates-multiple-template-box .redux-templates-default-template-image .imageloader-loaded {\\n overflow: hidden; }\\n .redux-templates-multiple-template-box .multiple-template-view {\\n background: #fff;\\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05), 0 10px 0 -5px #fff, 0 10px 1px -4px rgba(0, 0, 0, 0.08), 0 20px 0 -10px #fff, 0 20px 1px -9px rgba(0, 0, 0, 0.08);\\n cursor: pointer;\\n min-height: 100px; }\\n .redux-templates-multiple-template-box .redux-templates-import-button-group {\\n margin-top: 15%; }\\n .redux-templates-multiple-template-box .redux-templates-tmpl-info {\\n padding: 10px 12px;\\n position: absolute;\\n bottom: 0;\\n width: 100%;\\n background: rgba(255, 255, 255, 0.95);\\n border-top: 1px solid #f2f4f7;\\n transition: all 0.2s ease-in-out; }\\n .redux-templates-multiple-template-box .redux-templates-tmpl-info h5 {\\n margin: 0;\\n font-size: 14px;\\n color: #23282d;\\n line-height: 19px; }\\n .redux-templates-multiple-template-box .redux-templates-tmpl-info h5 span {\\n font-size: 13px;\\n color: #cdcfd1;\\n line-height: 18px; }\\n .redux-templates-multiple-template-box .redux-templates-button-overlay {\\n width: 100%;\\n height: 100%;\\n position: absolute;\\n top: 0;\\n left: 0;\\n border-radius: 0px;\\n opacity: 0;\\n -webkit-transition: opacity 0.2s ease-in-out;\\n transition: opacity 0.2s ease-in-out;\\n box-sizing: border-box; }\\n .redux-templates-multiple-template-box::before {\\n z-index: 2; }\\n .redux-templates-multiple-template-box::after {\\n z-index: 1; }\\n .redux-templates-multiple-template-box .redux-templates-button-overlay {\\n background: rgba(0, 0, 0, 0.5);\\n position: absolute;\\n height: 100%;\\n width: 100%;\\n opacity: 0; }\\n .redux-templates-multiple-template-box:hover .redux-templates-box-shadow {\\n box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.3); }\\n .redux-templates-multiple-template-box:hover .multiple-template-view {\\n border-color: transparent; }\\n .redux-templates-multiple-template-box:hover .redux-templates-tmpl-info {\\n border-top-color: transparent;\\n background: #fff; }\\n .redux-templates-multiple-template-box:hover .redux-templates-button-overlay {\\n opacity: 1; }\\n .redux-templates-multiple-template-box:hover img {\\n filter: blur(2px); }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".tablenav-pages {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n margin-bottom: 20px; }\\n .tablenav-pages span.displaying-num {\\n margin-right: 20px; }\\n .tablenav-pages #table-paging {\\n margin-left: 10px;\\n margin-right: 10px; }\\n .tablenav-pages #table-paging span {\\n line-height: 30px; }\\n .tablenav-pages span.tablenav-pages-navspan.button {\\n cursor: pointer;\\n margin: 0 2px; }\\n .tablenav-pages span.tablenav-pages-navspan.button.disabled {\\n cursor: default; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".action-buttons span,\\n.action-buttons a {\\n display: inline-block;\\n padding: 0 12px 2px;\\n margin: 2px;\\n height: 33px;\\n line-height: 32px;\\n font-size: 13px;\\n color: #353535;\\n border: 1px solid #f7f7f7;\\n background: #f7f7f7;\\n box-shadow: 0 1px 2px #ddd;\\n vertical-align: top;\\n border-radius: 3px;\\n text-decoration: none;\\n cursor: pointer;\\n -webkit-transition: all 0.2s ease-in-out;\\n transition: all 0.2s ease-in-out; }\\n .action-buttons span:hover,\\n .action-buttons a:hover {\\n box-shadow: 0 1px 2px #ccc;\\n background: #f1f1f1; }\\n\\n.action-buttons span i,\\n.action-buttons a i {\\n font-size: 10px;\\n margin-right: 4px; }\\n\\n.action-buttons span {\\n background: #0085ba;\\n border-color: #006a95 #00648c #00648c;\\n box-shadow: inset 0 -1px 0 #00648c;\\n color: #fff;\\n text-decoration: none;\\n text-shadow: 0 -1px 1px #005d82, 1px 0 1px #005d82, 0 1px 1px #005d82, -1px 0 1px #005d82; }\\n\\n.action-buttons a.redux-templates-button-download {\\n border: 1px solid #f5a623;\\n background: #f5a623;\\n box-shadow: 0 1px 0 #165cb4;\\n color: #fff; }\\n\\n.action-buttons .redux-templates-button-download {\\n margin-left: 5px; }\\n\\n.action-buttons i.challenge-dot {\\n margin-top: 10px;\\n margin-left: 5px; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-single-section-item {\\n box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.2);\\n margin-bottom: 30px;\\n transition: all 0.05s ease-in-out; }\\n .redux-templates-single-section-item .redux-templates-tmpl-title {\\n background: rgba(255, 255, 255, 0.95);\\n border-top: 1px solid #f2f4f7;\\n position: absolute;\\n bottom: 0;\\n width: 100%;\\n margin: 0;\\n color: #23282d;\\n padding: 13px 15px;\\n font-size: 15px; }\\n .redux-templates-single-section-item .redux-templates-single-item-inner {\\n position: relative;\\n overflow: hidden;\\n background: #999; }\\n .redux-templates-single-section-item .redux-templates-single-item-inner .warn_notice {\\n color: #fbbc0e;\\n font-weight: bold;\\n margin-bottom: 15px;\\n font-size: 14px;\\n opacity: 0;\\n text-align: center; }\\n .redux-templates-single-section-item .redux-templates-single-item-inner .redux-templates-default-template-image {\\n max-height: 350px;\\n min-height: 100px;\\n transition: 300ms; }\\n\\n#collections-sections-list.large > div {\\n width: 50%; }\\n\\n#collections-sections-list.small > div {\\n width: 25%; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-template-filters .is-active {\\n background: #fff;\\n color: #191e23;\\n box-shadow: inset 0 0 0 1px #555d66, inset 0 0 0 2px #fff; }\\n\\n.redux-templates-template-filters .components-button:focus:not(:disabled):not(.is-active) {\\n background: transparent;\\n box-shadow: none;\\n color: #555d66; }\\n\\n.refresh-library {\\n margin-right: 10px; }\\n\\n.tour-icon {\\n font-size: 18px; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-css-editor {\\n border: 1px solid #e2e4e7;\\n margin-bottom: 20px; }\\n\\n.redux-css-editor-help {\\n background: #f7f7f7;\\n padding: 20px; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \"#redux-templatesImportCollectionBtn {\\n vertical-align: middle;\\n display: inline-flex;\\n align-items: center;\\n text-decoration: none;\\n border: 1px solid #bababa;\\n border-radius: 3px;\\n white-space: nowrap;\\n color: #555d66;\\n font-size: 13px;\\n margin: 0 15px 0 15px;\\n padding: 9px 12px;\\n background: transparent;\\n cursor: pointer;\\n -webkit-appearance: none;\\n transition: 400ms; }\\n #redux-templatesImportCollectionBtn svg {\\n height: 16px;\\n width: 16px;\\n margin-right: 8px; }\\n #redux-templatesImportCollectionBtn svg * {\\n stroke: #555d66;\\n fill: #555d66;\\n stroke-width: 0; }\\n #redux-templatesImportCollectionBtn:hover, #redux-templatesImportCollectionBtn:focus, #redux-templatesImportCollectionBtn:active {\\n text-decoration: none;\\n border: 1px solid #191e23;\\n color: #191e23; }\\n #redux-templatesImportCollectionBtn:hover svg *, #redux-templatesImportCollectionBtn:focus svg *, #redux-templatesImportCollectionBtn:active svg * {\\n stroke: #191e23 !important;\\n fill: #191e23 !important;\\n stroke-width: 0; }\\n\\n.redux-templates-editor-btn {\\n background: none;\\n border: 0;\\n color: inherit;\\n font: inherit;\\n line-height: normal;\\n overflow: visible;\\n padding: 0;\\n -webkit-appearance: button;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n -ms-user-select: none; }\\n .redux-templates-editor-btn::-moz-focus-inner {\\n border: 0;\\n padding: 0; }\\n\\n.d-flex {\\n display: flex; }\\n\\n.justify-content-center {\\n justify-content: center; }\\n\\n.redux-css-editor {\\n border: 1px solid #e2e4e7;\\n margin-bottom: 20px; }\\n\\n.redux-css-editor-help {\\n background: #f7f7f7;\\n padding: 20px; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-modal-wrapper {\\n /* ReduxTemplatesPremiumBox */ }\\n .redux-templates-modal-wrapper .redux-templates-modal-body {\\n flex: 1 1 auto;\\n padding-left: 30px;\\n padding-right: 30px;\\n box-sizing: border-box;\\n background: #fff; }\\n .redux-templates-modal-wrapper .redux-templates-modal-body h5 {\\n font-size: 1.1em;\\n font-weight: 600; }\\n .redux-templates-modal-wrapper .redux-templates-modal-body ul {\\n list-style-position: inside;\\n list-style-type: disc; }\\n .redux-templates-modal-wrapper .redux-templates-modal-body ul.redux-templates-import-wizard-missing-dependency li {\\n line-height: 1.8; }\\n .redux-templates-modal-wrapper .redux-templates-modal-body .error {\\n color: #f00; }\\n .redux-templates-modal-wrapper .redux-templates-import-wizard-spinner-wrapper {\\n position: absolute;\\n width: calc(100% - 60px);\\n height: 100%;\\n flex: 1 1 auto;\\n align-items: center;\\n justify-content: center;\\n display: flex;\\n flex-direction: column; }\\n .redux-templates-modal-wrapper .redux-templates-import-wizard-spinner-wrapper .text-transition {\\n text-align: center;\\n font-size: 18px;\\n color: #555d66;\\n margin-bottom: 20px; }\\n .redux-templates-modal-wrapper .redux-templates-import-progress {\\n font-size: 1.1em;\\n text-align: center; }\\n .redux-templates-modal-wrapper .redux-templates-import-progress li {\\n list-style: none; }\\n .redux-templates-modal-wrapper .redux-templates-import-progress li.success i {\\n color: #46b450; }\\n .redux-templates-modal-wrapper .redux-templates-import-progress li.failure i {\\n color: #dc3232; }\\n .redux-templates-modal-wrapper .redux-templates-import-progress li.info i {\\n color: #00a0d2; }\\n .redux-templates-modal-wrapper .redux-templates-import-progress {\\n width: 50%;\\n margin: 10px auto; }\\n .redux-templates-modal-wrapper .redux-templates-import-progress li {\\n display: flex;\\n justify-content: space-between; }\\n .redux-templates-modal-wrapper .section-box.premium-box {\\n margin: 35px auto;\\n text-align: center; }\\n .redux-templates-modal-wrapper .section-box.premium-box h3 {\\n font-size: 1.5em;\\n line-height: 1.1em;\\n margin-top: 0px; }\\n .redux-templates-modal-wrapper .section-box.premium-box p {\\n font-size: calc(13px + 0.2vw); }\\n .redux-templates-modal-wrapper .section-box.premium-box ul {\\n width: 50%;\\n margin: 0 auto;\\n text-align: left;\\n list-style-type: disc;\\n list-style-position: inside; }\\n .redux-templates-modal-wrapper .section-box.premium-box .redux-templates-upgrade-button {\\n border: none;\\n border-radius: 4px;\\n cursor: pointer;\\n opacity: 1;\\n background: #24b0a6;\\n transition: opacity 0.2s ease-in-out;\\n box-shadow: none !important;\\n color: #fff;\\n text-decoration: none;\\n padding: 0.75em 1.25em;\\n display: block;\\n margin: 30px auto 0 auto;\\n max-width: 200px;\\n text-align: center;\\n font-size: 1em; }\\n .redux-templates-modal-wrapper .section-box.premium-box .redux-templates-upgrade-button:hover {\\n color: #fff;\\n opacity: 0.85;\\n box-shadow: none !important;\\n background: #19837c; }\\n .redux-templates-modal-wrapper .redux-templates-importmodal-content {\\n flex: 1;\\n display: flex;\\n flex-direction: column; }\\n\\n.text-transition {\\n width: 100% !important;\\n text-align: center; }\\n .text-transition .text-transition_inner > div {\\n font-size: 1.1rem; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-collection-modal-sidebar {\\n min-width: 270px;\\n background: #fff;\\n color: #32373c;\\n /* $secondaryColor;*/\\n border-right: 1px solid #e2e4e7;\\n overflow-y: auto; }\\n .redux-templates-collection-modal-sidebar .redux-templates-template-filter-button-group {\\n margin: 10px 0;\\n border-bottom: 1px solid #e2e4e7;\\n width: 100%;\\n display: inline-flex; }\\n .redux-templates-collection-modal-sidebar .redux-templates-template-filter-button-group button {\\n font-weight: 500;\\n flex-grow: 1;\\n min-width: 30%;\\n line-height: 20px;\\n padding: 8px 0 10px 15px;\\n align-items: center;\\n text-align: left;\\n background: none;\\n position: relative;\\n margin-bottom: -1px;\\n border-width: 0;\\n z-index: 1;\\n cursor: pointer;\\n outline: none;\\n border-color: transparent;\\n box-shadow: none;\\n border-bottom: unset; }\\n .redux-templates-collection-modal-sidebar .redux-templates-template-filter-button-group button::after {\\n content: attr(data-label);\\n display: block;\\n height: 0;\\n overflow: hidden;\\n speak: none;\\n visibility: hidden; }\\n .redux-templates-collection-modal-sidebar .redux-templates-template-filter-button-group button:hover {\\n color: #007cba;\\n color: var(--wp-admin-theme-color); }\\n .redux-templates-collection-modal-sidebar .redux-templates-template-filter-button-group button:focus {\\n box-shadow: inset 0 0 0 1.5px #007cba;\\n box-shadow: inset 0 0 0 1.5px var(--wp-admin-theme-color); }\\n .redux-templates-collection-modal-sidebar .redux-templates-template-filter-button-group button.active {\\n box-shadow: inset 0 0 0 1.5px transparent, inset 0 -4px 0 0 #007cba;\\n box-shadow: inset 0 0 0 1.5px transparent, inset 0 -4px 0 0 var(--wp-admin-theme-color); }\\n .redux-templates-collection-modal-sidebar .redux-templates-template-filter-button-group button.active::before {\\n content: \\\"\\\";\\n position: absolute;\\n top: 0;\\n bottom: 1px;\\n right: 0;\\n left: 0;\\n border-bottom: 4px solid transparent; }\\n .redux-templates-collection-modal-sidebar .redux-templates-template-filter-button-group button.active:focus {\\n box-shadow: inset 0 0 0 1.5px #007cba, inset 0 -4px 0 0 #007cba;\\n box-shadow: inset 0 0 0 1.5px var(--wp-admin-theme-color), inset 0 -4px 0 0 var(--wp-admin-theme-color); }\\n .redux-templates-collection-modal-sidebar .redux-templates-template-filter-button-group button.disabled {\\n opacity: 0.4; }\\n .redux-templates-collection-modal-sidebar .redux-templates-template-filter-button-group button img {\\n display: inline-block;\\n width: auto;\\n height: 14px;\\n margin-right: 4px; }\\n .redux-templates-collection-modal-sidebar .redux-templates-template-filter-button-group button:last-child img {\\n margin-bottom: -2px; }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content {\\n padding: 0 15px 15px; }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content h3 {\\n margin: 5px 12px 10px 0;\\n color: #757575;\\n text-transform: uppercase;\\n font-size: 11px;\\n font-weight: 500; }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content ul {\\n list-style: unset;\\n -webkit-touch-callout: none;\\n /* iOS Safari */\\n -webkit-user-select: none;\\n /* Safari */\\n -khtml-user-select: none;\\n /* Konqueror HTML */\\n -moz-user-select: none;\\n /* Old versions of Firefox */\\n -ms-user-select: none;\\n /* Internet Explorer/Edge */\\n user-select: none;\\n /* Non-prefixed version, currently\\n supported by Chrome, Edge, Opera and Firefox */\\n margin: 0 15px 15px 15px;\\n padding: 0; }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content ul li {\\n display: block;\\n font-size: 13px;\\n cursor: pointer;\\n height: auto;\\n -webkit-transition: height 0.5s linear;\\n -moz-transition: height 0.5s linear;\\n -ms-transition: height 0.5s linear;\\n -o-transition: height 0.5s linear;\\n transition: height 0.5s linear; }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content ul li .redux-icon-wrapper {\\n margin-left: 10px; }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content ul li:not(.disabled):hover {\\n color: #007cba;\\n color: var(--wp-admin-theme-color); }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content ul li.active {\\n color: #007cba;\\n color: var(--wp-admin-theme-color);\\n text-shadow: 0 0 0.5px #007cba;\\n text-shadow: 0 0 0.5px var(--wp-admin-theme-color); }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content ul li.disabled {\\n display: none;\\n height: 0px;\\n -webkit-transition: height 0.5s linear;\\n -moz-transition: height 0.5s linear;\\n -ms-transition: height 0.5s linear;\\n -o-transition: height 0.5s linear;\\n transition: height 0.5s linear; }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content ul li span {\\n float: right; }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content ul li.missing-dependency i.fa-exclamation-triangle {\\n color: #b27823; }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content ul li.missing-dependency:hover i.fa-exclamation-triangle {\\n color: #f5a623; }\\n .redux-templates-collection-modal-sidebar .redux-templates-modal-sidebar-content ul li.missing-dependency.active i.fa-exclamation-triangle {\\n color: #f5a623; }\\n .redux-templates-collection-modal-sidebar ul.redux-templates-sidebar-dependencies li .components-base-control {\\n display: inline-block;\\n margin-bottom: 0 !important; }\\n .redux-templates-collection-modal-sidebar ul.redux-templates-sidebar-dependencies li .components-base-control .components-base-control__field {\\n margin-bottom: 3px; }\\n .redux-templates-collection-modal-sidebar ul.redux-templates-sidebar-dependencies li .components-base-control span {\\n float: none; }\\n .redux-templates-collection-modal-sidebar .redux-templates-select-actions {\\n margin: 0 0 10px 15px;\\n display: inline-flex; }\\n .redux-templates-collection-modal-sidebar .redux-templates-select-actions i.challenge-dot {\\n margin-left: 10px; }\\n .redux-templates-collection-modal-sidebar .redux-templates-select-actions.disabled a {\\n pointer-events: none;\\n cursor: default;\\n text-decoration: none;\\n opacity: 0.6; }\\n .redux-templates-collection-modal-sidebar .redux-templates-sidebar-dependencies li a {\\n display: inline-block;\\n margin-left: 10px; }\\n .redux-templates-collection-modal-sidebar #redux-templates-filter-dependencies h3 {\\n margin-top: 0;\\n padding-top: 3px; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-collections-modal-body {\\n display: flex;\\n flex: 1;\\n overflow-y: auto; }\\n\\n.redux-templates-builder-modal {\\n position: fixed;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n z-index: 9999;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n pointer-events: none; }\\n .redux-templates-builder-modal.hidden {\\n display: none; }\\n .redux-templates-builder-modal .wp-full-overlay-sidebar .wp-core-ui .button-group.button-hero .button,\\n .redux-templates-builder-modal .wp-full-overlay-sidebar .wp-core-ui .button.button-hero {\\n text-align: center !important; }\\n .redux-templates-builder-modal * {\\n box-sizing: border-box;\\n pointer-events: all; }\\n .redux-templates-builder-modal .redux-templates-pagelist-modal-overlay {\\n position: absolute;\\n width: 100%;\\n height: 100%;\\n background: #f00;\\n left: 0;\\n top: 0;\\n z-index: -1;\\n background: rgba(3, 8, 15, 0.75); }\\n .redux-templates-builder-modal .components-base-control__field {\\n display: flex; }\\n .redux-templates-builder-modal textarea {\\n width: 100%;\\n height: 80px; }\\n .redux-templates-builder-modal .redux-icon-wrapper {\\n display: inline-block; }\\n .redux-templates-builder-modal button.components-button {\\n z-index: unset; }\\n\\n.redux-templates-builder-modal-header {\\n display: flex;\\n border-bottom: 1px solid #e2e4e7;\\n background: #fff; }\\n .redux-templates-builder-modal-header .template-search-box {\\n position: relative;\\n width: 270px; }\\n .redux-templates-builder-modal-header .template-search-box > div {\\n padding: 10px; }\\n .redux-templates-builder-modal-header .template-search-box i {\\n font-size: 13px;\\n color: #757575;\\n position: absolute;\\n top: 50%;\\n right: 30px;\\n transform: translateY(-50%); }\\n .redux-templates-builder-modal-header .template-search-box i.challenge-dot {\\n right: 20px;\\n left: auto; }\\n .redux-templates-builder-modal-header .template-search-box i.clear-search {\\n right: 20px;\\n left: auto;\\n color: #fff;\\n font-size: 12px;\\n display: none;\\n cursor: pointer;\\n padding: 5px; }\\n .redux-templates-builder-modal-header .template-search-box input {\\n display: block;\\n width: 100%;\\n box-shadow: 0 0 0 transparent;\\n transition: box-shadow 0.1s linear;\\n border-radius: 2px;\\n line-height: normal;\\n display: block;\\n padding: 16px 48px 16px 16px;\\n background: #f3f4f5;\\n border: none;\\n width: 100%;\\n height: 40px;\\n font-size: 13px; }\\n .redux-templates-builder-modal-header .template-search-box input::-webkit-input-placeholder {\\n /* WebKit browsers */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-builder-modal-header .template-search-box input:-moz-placeholder {\\n /* Mozilla Firefox 4 to 18 */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-builder-modal-header .template-search-box input::-moz-placeholder {\\n /* Mozilla Firefox 19+ */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-builder-modal-header .template-search-box input:-ms-input-placeholder {\\n /* Internet Explorer 10+ */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-builder-modal-header .template-search-box input:focus {\\n border-color: #007cba;\\n border-color: var(--wp-admin-theme-color);\\n background: #fff;\\n box-shadow: 0 0 0 1.5px #007cba;\\n box-shadow: 0 0 0 1.5px var(--wp-admin-theme-color);\\n outline: 2px solid transparent; }\\n .redux-templates-builder-modal-header .template-search-box:hover .clear-search {\\n display: block; }\\n\\n.redux-templates-pagelist-modal-inner {\\n position: relative;\\n display: flex;\\n flex-direction: column;\\n overflow: hidden;\\n background: #f1f1f1;\\n width: 85.9375%;\\n height: 89.537037%;\\n max-width: 1650px;\\n max-height: 967px;\\n box-shadow: 0 0 45px 10px rgba(3, 8, 15, 0.2);\\n animation: components-modal__appear-animation 0.1s ease-out;\\n animation-fill-mode: forwards; }\\n .redux-templates-pagelist-modal-inner .redux-templates-collection-modal-content-area {\\n flex-grow: 1;\\n max-height: 100%;\\n overflow-y: auto;\\n position: relative; }\\n\\n.redux-templates-template-list-header {\\n text-align: center;\\n position: relative;\\n flex-grow: 1;\\n padding-right: 50px; }\\n .redux-templates-template-list-header button:not(.redux-templates-builder-close-modal) {\\n flex-grow: 1;\\n line-height: 28px;\\n margin-top: 6px;\\n padding: 14px 15px 13px 15px;\\n text-align: left;\\n font-weight: 600;\\n width: 150px;\\n align-items: center;\\n background: none;\\n position: relative;\\n margin-bottom: -1px;\\n border-width: 0;\\n z-index: 1;\\n cursor: pointer;\\n outline: none;\\n border-color: transparent;\\n box-shadow: none;\\n border-bottom: unset; }\\n .redux-templates-template-list-header button:not(.redux-templates-builder-close-modal)::after {\\n content: attr(data-label);\\n display: block;\\n height: 0;\\n overflow: hidden;\\n speak: none;\\n visibility: hidden; }\\n .redux-templates-template-list-header button:not(.redux-templates-builder-close-modal):hover {\\n color: #007cba;\\n color: var(--wp-admin-theme-color); }\\n .redux-templates-template-list-header button:not(.redux-templates-builder-close-modal):focus {\\n box-shadow: inset 0 0 0 1.5px #007cba;\\n box-shadow: inset 0 0 0 1.5px var(--wp-admin-theme-color); }\\n .redux-templates-template-list-header button:not(.redux-templates-builder-close-modal).active {\\n box-shadow: inset 0 0 0 1.5px transparent, inset 0 -4px 0 0 #007cba;\\n box-shadow: inset 0 0 0 1.5px transparent, inset 0 -4px 0 0 var(--wp-admin-theme-color); }\\n .redux-templates-template-list-header button:not(.redux-templates-builder-close-modal).active::before {\\n content: \\\"\\\";\\n position: absolute;\\n top: 0;\\n bottom: 1px;\\n right: 0;\\n left: 0;\\n border-bottom: 4px solid transparent; }\\n .redux-templates-template-list-header button:not(.redux-templates-builder-close-modal).active:focus {\\n box-shadow: inset 0 0 0 1.5px #007cba, inset 0 -4px 0 0 #007cba;\\n box-shadow: inset 0 0 0 1.5px var(--wp-admin-theme-color), inset 0 -4px 0 0 var(--wp-admin-theme-color); }\\n .redux-templates-template-list-header button:not(.redux-templates-builder-close-modal).disabled {\\n opacity: 0.5; }\\n .redux-templates-template-list-header .redux-templates-builder-close-modal {\\n position: absolute;\\n top: 0;\\n right: 0;\\n width: 60px;\\n height: 60px;\\n margin: 0;\\n padding: 0;\\n border: 1px solid transparent;\\n background: none;\\n font-size: 15px;\\n cursor: pointer;\\n outline: none;\\n transition: color 0.1s ease-in-out, background 0.1s ease-in-out; }\\n .redux-templates-template-list-header .redux-templates-builder-close-modal i {\\n -webkit-text-stroke: 1.2px #fff; }\\n .redux-templates-template-list-header .redux-templates-builder-close-modal svg {\\n margin-top: 4px; }\\n .redux-templates-template-list-header .redux-templates-builder-close-modal:hover, .redux-templates-template-list-header .redux-templates-builder-close-modal:active {\\n color: #00a0d2; }\\n .redux-templates-template-list-header .redux-templates-builder-close-modal:focus {\\n color: #00a0d2;\\n border-color: #5b9dd9;\\n box-shadow: 0 0 3px rgba(0, 115, 170, 0.8);\\n /* Only visible in Windows High Contrast mode */\\n outline: 2px solid transparent; }\\n\\n.redux-templates-template-list-sub-header {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n padding: 23px 25px 0; }\\n .redux-templates-template-list-sub-header h4 {\\n font-size: 21px;\\n color: #0e2244;\\n font-weight: 500;\\n margin: 0; }\\n .redux-templates-template-list-sub-header h4 i.challenge-dot {\\n margin-left: 10px; }\\n .redux-templates-template-list-sub-header .redux-templates-template-filters {\\n display: flex;\\n justify-content: space-between;\\n align-items: center; }\\n .redux-templates-template-list-sub-header .redux-templates-template-filter-button-group {\\n background: #f8fafb;\\n display: inline-flex;\\n border: 1px solid #d8d8d8;\\n border-radius: 4px;\\n margin-left: 10px; }\\n .redux-templates-template-list-sub-header .redux-templates-template-filter-button-group button {\\n display: inline-flex;\\n line-height: 28px;\\n padding: 5px 18px;\\n align-items: center;\\n background: none;\\n border: none;\\n color: #587e97;\\n position: relative;\\n z-index: 1;\\n cursor: pointer; }\\n .redux-templates-template-list-sub-header .redux-templates-template-filter-button-group button:focus {\\n outline: none;\\n box-shadow: 0 0 0 1.5px #007cba;\\n box-shadow: 0 0 0 1.5px var(--wp-admin-theme-color);\\n outline: 1px solid transparent; }\\n .redux-templates-template-list-sub-header .redux-templates-template-filter-button-group button:last-child {\\n color: #f5a623; }\\n .redux-templates-template-list-sub-header .redux-templates-template-filter-button-group button.active {\\n background: #f5a623;\\n color: #fff; }\\n .redux-templates-template-list-sub-header .redux-templates-template-filter-button-group button.disabled {\\n opacity: 0.5; }\\n .redux-templates-template-list-sub-header .redux-templates-template-filter-button-group button img {\\n display: inline-block;\\n width: auto;\\n height: 14px;\\n margin-right: 4px; }\\n .redux-templates-template-list-sub-header .redux-templates-template-filter-button-group button:not(:last-child)::after {\\n content: \\\"\\\";\\n height: 13px;\\n background-color: #c4cbcf;\\n width: 1px;\\n right: 0px;\\n top: 50%;\\n position: absolute;\\n transform: translateY(-50%); }\\n .redux-templates-template-list-sub-header .redux-templates-template-filter-button-group button.active::after {\\n display: none; }\\n .redux-templates-template-list-sub-header .redux-templates-template-filter-button-group button::before {\\n content: \\\"\\\";\\n position: absolute;\\n background: #f5a623;\\n height: calc(100% + 4px);\\n width: calc(100% + 4px);\\n left: -2px;\\n top: -2px;\\n z-index: -1;\\n border-radius: 4px;\\n box-shadow: 0 0 4px rgba(33, 32, 249, 0.3);\\n opacity: 0; }\\n .redux-templates-template-list-sub-header .redux-templates-template-filter-button-group button.active::before {\\n opacity: 1; }\\n\\n.redux-templates-modal-loader {\\n display: inline-block;\\n position: absolute;\\n width: 80px;\\n height: 80px;\\n line-height: 80px;\\n text-align: center;\\n left: 50%;\\n margin-left: -50px;\\n top: 50%;\\n margin-top: -50px;\\n font-size: 24px;\\n color: #1e7ed8; }\\n\\n.redux-templates-modal-loader img {\\n height: 80px;\\n width: 80px; }\\n\\n/*block style*/\\n.redux-templates-builder-template-found-empty {\\n text-align: center;\\n border-color: transparent !important; }\\n .redux-templates-builder-template-found-empty .redux-templates-builder-empty-title {\\n display: block;\\n width: 100%; }\\n\\n.redux-templates-pro-badge {\\n position: absolute;\\n background: rgba(255, 0, 0, 0.75);\\n cursor: pointer;\\n padding: 5px 6px;\\n border-radius: 3px;\\n color: #fff;\\n font-size: 10px;\\n right: 20px;\\n top: 20px;\\n line-height: 1;\\n transition: background 0.1s linear; }\\n\\n.redux-templates-missing-badge {\\n position: absolute;\\n cursor: pointer;\\n background: rgba(242, 168, 72, 0.75);\\n border-radius: 3px;\\n color: #fff;\\n font-size: 10px;\\n right: 20px;\\n top: 20px;\\n line-height: 1;\\n transition: background 0.1s linear; }\\n .redux-templates-missing-badge i {\\n margin: 5px; }\\n\\n.redux-templates-button-overlay .redux-templates-pro-badge {\\n background: rgba(255, 0, 0, 0.85); }\\n\\n.redux-templates-button-overlay .redux-templates-missing-badge {\\n background: rgba(242, 168, 72, 0.85); }\\n\\n.redux-templates-default-template-image {\\n /* background-image: url('/img/redux-templates-medium.jpg');\\n background-size: cover; */\\n background: #888;\\n transition: 300ms; }\\n .redux-templates-default-template-image .imageloader-loaded {\\n max-height: 285px; }\\n .redux-templates-default-template-image img {\\n width: 100%;\\n display: block; }\\n\\n.redux-templates-item-wrapper {\\n position: relative; }\\n .redux-templates-item-wrapper .redux-templates-button-overlay {\\n position: absolute;\\n width: 100%;\\n opacity: 0;\\n background: rgba(0, 0, 0, 0.5);\\n height: 100%;\\n top: 0;\\n left: 0;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n transition: 300ms; }\\n .redux-templates-item-wrapper .redux-templates-button-overlay .redux-templates-tmpl-title {\\n margin: 0 0 15px;\\n color: #fff;\\n font-size: 19px;\\n font-weight: 400; }\\n .redux-templates-item-wrapper.focused .redux-templates-button-overlay, .redux-templates-item-wrapper:hover .redux-templates-button-overlay {\\n opacity: 1; }\\n .redux-templates-item-wrapper.focused .redux-templates-default-template-image, .redux-templates-item-wrapper:hover .redux-templates-default-template-image {\\n filter: blur(3px); }\\n .redux-templates-item-wrapper.missing_requirements .warn_notice {\\n opacity: 1; }\\n .redux-templates-item-wrapper.missing_requirements .redux-templates-button-download {\\n background-color: #fdbb05;\\n background-image: none;\\n border-color: #ffc107; }\\n\\n.redux-templates-template-option-header {\\n padding: 20px 20px 0; }\\n .redux-templates-template-option-header .redux-templates-template-back {\\n cursor: pointer; }\\n .redux-templates-template-option-header .redux-templates-template-back .dashicons {\\n vertical-align: text-bottom; }\\n\\n#wpwrap .edit-post-visual-editor .import-collection-btn-container {\\n text-align: center;\\n margin-top: 20px; }\\n\\n#wpwrap .edit-post-visual-editor .import-collection-btn-container #importCollectionBtn {\\n color: #fff;\\n font-size: 13px; }\\n\\n.redux-templates-template-back {\\n cursor: pointer; }\\n .redux-templates-template-back .dashicons {\\n vertical-align: text-bottom; }\\n\\n.spinner-wrapper {\\n position: absolute;\\n left: 0;\\n top: 0;\\n right: 0;\\n bottom: 0;\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n background: rgba(0, 0, 0, 0.5); }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-collection-details-view {\\n padding: 40px 22.5px 60px;\\n width: 100%;\\n justify-content: center;\\n position: relative;\\n display: flex; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-left {\\n width: 600px;\\n margin: 0 37px 0 17px; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-left .details-back {\\n height: 32px;\\n line-height: 20px;\\n color: #818a91;\\n font-size: 15px;\\n font-weight: 600;\\n display: -webkit-inline-box;\\n display: -ms-inline-flexbox;\\n display: inline-flex;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n cursor: pointer;\\n margin-bottom: 20px;\\n -webkit-transition: color 0.1s ease;\\n transition: color 0.1s ease; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-left .details-preview {\\n background-position: center top;\\n background-size: contain;\\n width: 100%;\\n background-repeat: no-repeat;\\n transition: background 1.5s ease;\\n height: 84.71%; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-left .details-preview.has_full {\\n transition: background-position 1.5s linear;\\n background-position: center top;\\n background-size: cover;\\n width: 100%;\\n background-repeat: no-repeat;\\n -webkit-box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.1);\\n box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.1); }\\n .redux-templates-collection-details-view .redux-templates-collection-details-left .details-preview.has_full:hover {\\n background-position: center bottom;\\n background-size: cover; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right {\\n width: 520px; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .details-title {\\n height: 30px;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n -webkit-box-pack: justify;\\n -ms-flex-pack: justify;\\n justify-content: space-between;\\n padding: 2px 25px 0 10px;\\n margin-bottom: 20px; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .details-title h3 {\\n color: rgba(3, 8, 15, 0.92);\\n font-size: 28px;\\n font-weight: 600;\\n line-height: 34px;\\n margin: 0; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .details-title span {\\n color: #818a91;\\n font-size: 13px;\\n font-weight: 600;\\n line-height: 16px; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .details-list {\\n height: 84.71%; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .details-list .details-inner {\\n height: 100%;\\n overflow-y: auto; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select {\\n width: 150px;\\n height: 150px;\\n overflow: hidden;\\n margin: 0 8px 15px;\\n -webkit-box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.1);\\n box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.1);\\n position: relative;\\n display: inline-block;\\n cursor: pointer;\\n -webkit-transition: all 0.1s ease-in-out;\\n transition: all 0.1s ease-in-out; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select::before, .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select::after {\\n content: \\\"\\\";\\n width: 100%;\\n height: 100%;\\n position: absolute;\\n top: 0;\\n left: 0;\\n pointer-events: none;\\n opacity: 0;\\n box-sizing: border-box; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select::before {\\n opacity: 0.7;\\n z-index: 2; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select::after {\\n opacity: 0.7;\\n z-index: 1; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select .detail-image {\\n width: 100%;\\n height: 150px;\\n background-repeat: no-repeat;\\n background-size: cover;\\n border: 1px solid #ececec;\\n position: relative; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select .detail-image .pro,\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select .detail-image .install {\\n position: absolute;\\n background: #f00;\\n padding: 2px 3px;\\n border-radius: 3px;\\n color: #fff;\\n font-size: 9px;\\n right: 5px;\\n top: 5px;\\n text-transform: uppercase;\\n line-height: 1; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select .detail-image .pro {\\n background: #f00; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select .detail-image .install {\\n background: #f2a848; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select .detail-label {\\n border-top: 1px solid #f2f4f7;\\n width: 100%;\\n height: 30px;\\n opacity: 1;\\n background-color: rgba(255, 255, 255, 0.9);\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n color: #23282d;\\n font-family: pn, \\\"Open Sans\\\", Arial, sans-serif;\\n font-size: 13px;\\n font-weight: 600;\\n line-height: 30px;\\n padding-left: 10px; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select:hover {\\n -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);\\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select:hover::before, .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select:hover::after {\\n opacity: 1; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select.detail-select-active {\\n -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3); }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select.detail-select-active::before, .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select.detail-select-active::after,\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select.detail-select-active .detail-label {\\n opacity: 1; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-right .detail-select.detail-select-active::before {\\n border: 3px solid #24b0a6; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-footer {\\n width: 100%;\\n height: 60px;\\n background: #fff;\\n position: absolute;\\n bottom: 0;\\n left: 0;\\n z-index: 2; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-footer .footer-grid {\\n width: 100%;\\n padding: 0 10px;\\n height: 100%;\\n margin: auto;\\n display: flex;\\n align-items: center;\\n justify-content: flex-end; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-footer .import-button {\\n margin-left: 11.5px;\\n background-color: #3dbfe8;\\n color: #fff;\\n font-family: pn, \\\"Open Sans\\\", Arial, sans-serif;\\n font-size: 15px;\\n font-weight: 600;\\n line-height: 18px;\\n padding: 9px 32px;\\n border-radius: 3px;\\n cursor: pointer;\\n -webkit-transition: background-color 150ms linear;\\n transition: background-color 150ms linear; }\\n .redux-templates-collection-details-view .redux-templates-collection-details-footer .import-button:hover {\\n background: rgba(61, 191, 232, 0.8); }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-two-sections {\\n position: absolute;\\n width: 85.9375%;\\n height: 89.537037%;\\n max-width: 1650px;\\n max-height: 967px;\\n top: 0;\\n right: 0;\\n bottom: 0;\\n left: 0;\\n margin: auto;\\n border-radius: 5px;\\n overflow: hidden;\\n -webkit-box-shadow: 0 45px 10px rgba(3, 8, 15, 0.2);\\n box-shadow: 0 0 45px 10px rgba(3, 8, 15, 0.2); }\\n\\n.redux-templates-two-sections__grid {\\n width: 100%;\\n height: 100%;\\n padding: 40px 22.5px;\\n position: relative;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex; }\\n\\n.redux-templates-two-sections__grid__column {\\n width: 100%; }\\n\\n.redux-templates-two-sections__grid-clear {\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n -ms-flex-direction: column;\\n flex-direction: column;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n -webkit-box-pack: center;\\n -ms-flex-pack: center;\\n justify-content: center;\\n height: 100%; }\\n\\n.redux-templates-two-sections__grid-clear-text {\\n opacity: 0.9;\\n color: #818a91;\\n font-family: pn, \\\"Open Sans\\\", Arial, sans-serif;\\n font-size: 14px;\\n font-weight: 600;\\n line-height: 17px;\\n margin: 0 0 20px; }\\n\\n.redux-templates-two-sections__grid-clear-image-saved {\\n width: 322px;\\n height: 145px;\\n margin-top: -21px;\\n pointer-events: none; }\\n\\n.redux-templates-two-sections__grid-clear-image-global {\\n width: 524px;\\n height: 207px;\\n margin-top: -28px;\\n pointer-events: none; }\\n\\n.redux-templates-two-section {\\n position: relative;\\n margin: 0 17.5px 35px;\\n cursor: pointer;\\n outline: 3px solid transparent;\\n -webkit-transition: outline 0.3s ease-in-out;\\n transition: outline 0.3s ease-in-out;\\n -webkit-box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.1);\\n box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.1);\\n border-radius: 3px; }\\n .redux-templates-two-section:last-child {\\n margin-bottom: 0; }\\n .redux-templates-two-section .redux-templates-two-section-remove {\\n position: absolute;\\n z-index: 4;\\n top: -7px;\\n right: -7px;\\n opacity: 0;\\n -webkit-transform: scale(0.7);\\n transform: scale(0.7);\\n -webkit-transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;\\n transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;\\n transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;\\n transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;\\n width: 28px;\\n height: 28px;\\n display: -webkit-box;\\n display: -ms-flexbox;\\n display: flex;\\n -webkit-box-align: center;\\n -ms-flex-align: center;\\n align-items: center;\\n -webkit-box-pack: center;\\n -ms-flex-pack: center;\\n justify-content: center;\\n font-size: 12px;\\n border-radius: 28px;\\n background-color: #fff;\\n color: #03080f;\\n -webkit-box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.25);\\n box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.25);\\n cursor: pointer; }\\n .redux-templates-two-section:hover .redux-templates-two-section-remove {\\n opacity: 1;\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n -webkit-transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;\\n transition: opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;\\n transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;\\n transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out; }\\n .redux-templates-two-section:hover .redux-templates-two-section-remove:hover {\\n color: #f00; }\\n .redux-templates-two-section:hover .redux-templates-two-section-item::before {\\n border-color: #3dbfe8; }\\n .redux-templates-two-section:hover .redux-templates-two-section-item::after {\\n border-color: #ececec; }\\n\\n.redux-templates-two-section .preview-image-wrapper {\\n transition: all 0.05s ease-in-out;\\n width: 100%;\\n min-height: 130px;\\n max-height: 300px;\\n overflow: hidden; }\\n .redux-templates-two-section .preview-image-wrapper img {\\n animation-name: fadeIn;\\n animation-fill-mode: both;\\n animation-delay: 200ms;\\n animation-duration: 200ms;\\n width: 100%;\\n height: auto; }\\n\\n.redux-templates-two-section .saved-section-title {\\n border-top: 1px solid #f2f4f7;\\n background: rgba(255, 255, 255, 0.9);\\n position: absolute;\\n bottom: 0;\\n width: 100%;\\n margin: 0;\\n color: #23282d;\\n padding: 13px 15px;\\n font-size: 15px;\\n text-align: center;\\n display: flex;\\n justify-content: center;\\n align-items: center; }\\n\\n.no-section {\\n display: flex;\\n width: 100%;\\n align-items: center;\\n justify-content: center;\\n font-size: 16px; }\\n\\n.preview-image-wrapper .block-editor-block-preview__container {\\n transition: all 0.05s ease-in-out;\\n background: #fff;\\n margin: 0 auto;\\n min-height: 130px; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \"#collections-sections-list {\\n width: 100%;\\n display: flex;\\n flex-wrap: wrap;\\n padding: 10px 10px 0 10px; }\\n #collections-sections-list > div {\\n width: 33.3333%;\\n padding: 15px;\\n position: relative; }\\n @media (max-width: 1199px) {\\n #collections-sections-list > div {\\n width: 50%; } }\\n #collections-sections-list > div.redux-templates-builder-template-found-empty {\\n width: 100%;\\n text-align: center;\\n opacity: 0.5;\\n border: none !important;\\n padding-top: 70px !important; }\\n #collections-sections-list.redux-templates-frontend-section-list {\\n display: block;\\n padding-bottom: 10px;\\n padding-top: 0px; }\\n #collections-sections-list.redux-templates-frontend-section-list > div {\\n width: 100%;\\n display: flex;\\n flex-wrap: nowrap;\\n border-bottom: 1px solid #e2e4e7;\\n font-weight: 600;\\n padding: 12px 0 12px 15px;\\n margin-bottom: 0;\\n align-items: center; }\\n #collections-sections-list.redux-templates-frontend-section-list > div.redux-templates-reusable-list-title {\\n color: #adafb2; }\\n #collections-sections-list.redux-templates-frontend-section-list > div:first-child {\\n border-top: 1px solid #e2e4e7; }\\n #collections-sections-list.redux-templates-frontend-section-list > div .redux-templates-reusable-list-content {\\n flex-grow: 1; }\\n #collections-sections-list.redux-templates-frontend-section-list > div .redux-templates-reusable-list-info {\\n flex-grow: 1;\\n max-width: 165px;\\n display: flex;\\n flex-wrap: nowrap; }\\n #collections-sections-list.redux-templates-frontend-section-list > div .redux-templates-reusable-list-button {\\n margin-left: 30px; }\\n #collections-sections-list.redux-templates-frontend-section-list > div .redux-templates-reusable-list-button button {\\n display: inline-block;\\n padding: 0;\\n border: none;\\n transition: 300ms;\\n cursor: pointer;\\n background-color: transparent; }\\n #collections-sections-list.redux-templates-frontend-section-list > div .redux-templates-reusable-list-button button:not(:last-child) {\\n margin-right: 10px; }\\n #collections-sections-list.redux-templates-frontend-section-list > div .redux-templates-reusable-list-button button i {\\n font-size: 16px;\\n color: #cdcfd1; }\\n #collections-sections-list.redux-templates-frontend-section-list > div .redux-templates-reusable-list-button button:hover i {\\n color: #007cba; }\\n #collections-sections-list.redux-templates-frontend-section-list > div .redux-templates-reusable-list-button button:last-child:hover i {\\n color: #f00; }\\n #collections-sections-list .redux-templates-pagelist-column.loading {\\n height: 100px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".wp-full-overlay {\\n margin-left: 300px; }\\n\\n@media screen and (min-width: 1667px) {\\n .wp-full-overlay {\\n margin-left: 18%; } }\\n\\nbutton {\\n box-sizing: border-box;\\n pointer-events: all; }\\n\\n.wp-full-overlay.hide {\\n display: none; }\\n\\n.theme-screenshot-wrap {\\n overflow: hidden;\\n position: relative;\\n max-height: 300px;\\n margin: 15px 0;\\n border: 1px solid #ccc; }\\n\\n.install-theme-info {\\n padding-bottom: 0px; }\\n .install-theme-info h3 a {\\n float: right;\\n opacity: 0.6; }\\n .install-theme-info h3 a:hover {\\n opacity: 1; }\\n\\n.install-theme-info .theme-screenshot {\\n width: 100% !important;\\n border: none !important;\\n margin: 0 !important;\\n display: block; }\\n\\n.expanded .wp-full-overlay-footer {\\n height: 111px !important;\\n left: initial; }\\n .expanded .wp-full-overlay-footer .button-hero {\\n text-align: center; }\\n\\n.wp-full-overlay .wp-full-overlay-sidebar-content {\\n bottom: 100px; }\\n .wp-full-overlay .wp-full-overlay-sidebar-content .redux-templates-dependencies-list {\\n border-top: 1px solid #eee;\\n color: #82878c;\\n font-size: 13px;\\n font-weight: 400;\\n margin: 30px 0 0 0; }\\n .wp-full-overlay .wp-full-overlay-sidebar-content .redux-templates-dependencies-list h4 {\\n color: #23282d;\\n font-size: 1.1em;\\n text-align: center; }\\n .wp-full-overlay .wp-full-overlay-sidebar-content .redux-templates-dependencies-list .redux-templates-dependency-blocks .redux-templates-dependency-name {\\n color: #444;\\n font-weight: 600;\\n margin-right: 5px; }\\n\\n.footer-import-button-wrap {\\n padding: 10px 20px;\\n display: flex;\\n justify-content: center; }\\n\\n.wp-full-overlay-footer .view-site,\\n.wp-full-overlay-footer .go-pro,\\n.wp-full-overlay-footer .redux-templates-import {\\n width: 100%; }\\n\\n.redux-templates-button-download {\\n border: 1px solid #3dbfe8;\\n background: #3dbfe8;\\n box-shadow: 0 1px 0 #165cb4;\\n color: #fff; }\\n\\n.wp-full-overlay-main {\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n height: 100%;\\n -webkit-transition: background-color 1000ms linear;\\n -ms-transition: background-color 1000ms linear;\\n transition: background-color 1000ms linear;\\n background-color: unset; }\\n .wp-full-overlay-main.loaded::before {\\n display: none !important; }\\n .wp-full-overlay-main.loaded iframe {\\n background-color: #fff; }\\n .wp-full-overlay-main .components-spinner {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n transform: translateX(-50%) translateY(-50%); }\\n\\n.theme-install-overlay iframe {\\n height: 100%;\\n width: 100%;\\n z-index: 20;\\n transition: opacity 0.3s; }\\n\\n.redux-templates-dependency-blocks {\\n display: flex; }\\n .redux-templates-dependency-blocks .block-head {\\n text-align: center;\\n width: 60px;\\n margin-right: 10px; }\\n\\n.requirements-list {\\n width: 100%; }\\n .requirements-list ul {\\n margin: 0;\\n padding: 0;\\n list-style: none; }\\n .requirements-list ul li {\\n cursor: pointer;\\n line-height: 20px;\\n padding-bottom: 25px;\\n clear: left;\\n transition: 300ms; }\\n .requirements-list ul li svg {\\n margin-right: 5px; }\\n .requirements-list ul li svg * {\\n fill: #9a9a9a; }\\n .requirements-list ul li svg,\\n .requirements-list ul li span,\\n .requirements-list ul li div {\\n float: left; }\\n .requirements-list ul li .redux-icon-wrapper {\\n display: inline; }\\n .requirements-list ul li span.pluginURL {\\n float: right; }\\n .requirements-list ul li i {\\n font-size: 1.1em; }\\n .requirements-list ul li .redux-icon-wrapper {\\n padding-left: 5px; }\\n .requirements-list ul li i.fa-exclamation-triangle {\\n font-size: 0.9em;\\n line-height: 1.5em;\\n color: #b27823; }\\n .requirements-list ul li:hover svg * {\\n fill: dimgray; }\\n .requirements-list ul li:hover i.fa-exclamation-triangle {\\n color: #f5a623; }\\n\\n.redux-block-pills ul {\\n margin: 0;\\n padding: 0; }\\n .redux-block-pills ul li {\\n margin: 0px 5px 10px 0;\\n float: left; }\\n .redux-block-pills ul li span {\\n --bg-opacity: 1 !important;\\n background-color: #edf2f7 !important;\\n background-color: rgba(237, 242, 247, var(--bg-opacity)) !important;\\n border-radius: 9999px !important;\\n padding-top: 0.25rem !important;\\n padding-bottom: 0.25rem !important;\\n padding-left: 0.75rem !important;\\n padding-right: 0.75rem !important;\\n --text-opacity: 1 !important;\\n color: #4a5568 !important;\\n color: rgba(74, 85, 104, var(--text-opacity)) !important; }\\n\\n.redux-templates-modal-preview-box {\\n background: #f1f1f1; }\\n .redux-templates-modal-preview-box img {\\n position: absolute;\\n top: 50%;\\n left: 50%;\\n transform: translateX(-50%) translateY(-50%);\\n max-width: 100%;\\n max-height: 100%; }\\n\\n.theme-hash {\\n text-align: center;\\n font-size: 14px;\\n position: relative; }\\n .theme-hash i {\\n cursor: pointer;\\n margin-right: 5px;\\n margin-left: 5px; }\\n .theme-hash .copied {\\n color: #656a6f;\\n position: absolute;\\n line-height: 75%;\\n margin-left: 10px;\\n opacity: 0.6; }\\n .theme-hash .the-copy {\\n border-bottom-right-radius: 0 !important;\\n border-top-right-radius: 0 !important; }\\n .theme-hash .the-hash {\\n border-bottom-left-radius: 0 !important;\\n border-top-left-radius: 0 !important;\\n border-left: 0 !important; }\\n .theme-hash .hideMe {\\n -webkit-animation: cssAnimation 3s forwards;\\n animation: cssAnimation 3s forwards; }\\n\\n@keyframes cssAnimation {\\n 0% {\\n opacity: 1; }\\n 90% {\\n opacity: 1; }\\n 100% {\\n opacity: 0; } }\\n\\n@-webkit-keyframes cssAnimation {\\n 0% {\\n opacity: 1; }\\n 90% {\\n opacity: 1; }\\n 100% {\\n opacity: 0; } }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-templates-modal-overlay {\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n background: rgba(255, 255, 255, 0.6);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n z-index: 600000; }\\n\\n.redux-templates-modal-wrapper {\\n width: 550px;\\n height: 400px;\\n background: #fcfcfc;\\n position: relative;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n flex-direction: column;\\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.7); }\\n .redux-templates-modal-wrapper div {\\n width: 100%; }\\n .redux-templates-modal-wrapper .redux-templates-modal-header {\\n border-bottom: 1px solid #ddd;\\n flex: 0 0 60px;\\n padding: 10px 15px;\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n box-sizing: border-box; }\\n .redux-templates-modal-wrapper .redux-templates-modal-header h3 {\\n margin: 0;\\n font-size: 1.2rem; }\\n .redux-templates-modal-wrapper .redux-templates-modal-header button {\\n border: none;\\n cursor: pointer; }\\n .redux-templates-modal-wrapper .redux-templates-modal-header .redux-templates-modal-close {\\n font-size: 20px;\\n background: transparent;\\n color: #9b9b9b; }\\n .redux-templates-modal-wrapper .redux-templates-modal-body {\\n flex: 1 1 auto;\\n padding-left: 30px;\\n padding-right: 30px;\\n box-sizing: border-box;\\n background: #fff;\\n position: relative; }\\n .redux-templates-modal-wrapper .redux-templates-modal-body h5 {\\n font-size: 1.1em;\\n font-weight: 600; }\\n .redux-templates-modal-wrapper .redux-templates-modal-body ul {\\n list-style-position: inside;\\n list-style-type: disc; }\\n .redux-templates-modal-wrapper .redux-templates-modal-body .error {\\n color: #f00; }\\n .redux-templates-modal-wrapper .redux-templates-modal-footer {\\n border-top: 1px solid #ddd;\\n flex: 0 0 60px;\\n align-items: center;\\n display: flex;\\n padding: 0 20px;\\n box-sizing: border-box; }\\n .redux-templates-modal-wrapper .redux-templates-modal-footer .button {\\n margin-right: 20px;\\n cursor: pointer; }\\n .redux-templates-modal-wrapper .redux-templates-modal-footer i.fas {\\n margin-right: 3px; }\\n .redux-templates-modal-wrapper .redux-templates-modal-spinner-wrapper {\\n flex: 1 1 auto;\\n align-items: center;\\n justify-content: center;\\n display: flex; }\\n\", \"\"]);\n\n","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.9 17.7H7.4l-.9-1.5 2.1-2.4 2.3 3.9zm-5.3-1.6l-1.5 1.6h-4L4 13.3l1.6 2.8z\",\n fill: \"#011627\"\n});\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#00a7e5\",\n d: \"M6.1 15.6L.4 5.9h3.5l2.7 4.5 8-9.1h4.3L6.1 15.6z\"\n});\n\nvar SvgIconColor = function SvgIconColor(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 19 19\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2);\n};\n\nexport default SvgIconColor;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.9 17.7H7.4l-.9-1.5 2.1-2.4 2.3 3.9zm-5.3-1.6l-1.5 1.6h-4L4 13.3l1.6 2.8zM6.1 15.6L.4 5.9h3.5l2.7 4.5 8-9.1h4.3L6.1 15.6z\"\n});\n\nvar SvgIcon = function SvgIcon(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 19 19\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgIcon;","import {__} from '@wordpress/i18n';\n\nconst { registerBlockType } = wp.blocks;\nimport * as importBlock from './import';\nimport * as libraryBlock from './library';\n\nexport function registerBlocks() {\n\n registerBlockType( `redux/${ libraryBlock.name }`, { ...libraryBlock.settings } );\n\tregisterBlockType( `redux/${ importBlock.name }`, { ...importBlock.settings } );\n\n}\nregisterBlocks();\n","/**\n * Internal dependencies\n */\nimport importReusableBlock from '../utils/import';\nimport insertImportedBlocks from '../utils/insert';\n\n/**\n * WordPress dependencies\n */\nconst { __ } = wp.i18n;\nconst { withInstanceId } = wp.compose;\nconst { Fragment, Component } = wp.element;\nconst { MediaUploadCheck } = wp.blockEditor;\nconst { DropZone, FormFileUpload, Placeholder, Notice } = wp.components;\n\nconst ALLOWED_BG_MEDIA_TYPES = [ 'json' ];\n\n/**\n * Block edit function\n */\nclass Edit extends Component {\n constructor() {\n super( ...arguments );\n\n this.state = {\n isLoading: false,\n error: null,\n };\n\n this.isStillMounted = true;\n this.addFile = this.addFile.bind( this );\n }\n\n componentDidMount() {\n const { file } = this.props.attributes;\n\n if ( file ) {\n this.setState( { isLoading: true } );\n this.addFile( file );\n }\n }\n\n componentWillUnmount() {\n this.isStillMounted = false;\n }\n\n addFile( files ) {\n let file = files[ 0 ];\n\n if ( files.target ) {\n file = event.target.files[ 0 ];\n }\n\n if ( ! file ) {\n return;\n }\n this.setState( { isLoading: true } );\n\n importReusableBlock( file )\n .then( ( reusableBlock ) => {\n if ( ! this.isStillMounted ) {\n return;\n }\n\n this.setState( { isLoading: false } );\n insertImportedBlocks( this.props.clientId, reusableBlock, this.props.onClose );\n } )\n .catch( ( error ) => {\n if ( ! this.isStillMounted ) {\n return;\n }\n\n let uiMessage;\n switch ( error.message ) {\n case 'Invalid JSON file':\n uiMessage = __( 'Invalid JSON file', redux_templates.i18n );\n break;\n case 'Invalid Reusable Block JSON file':\n uiMessage = __( 'Invalid Reusable Block JSON file', redux_templates.i18n );\n break;\n default:\n uiMessage = __( 'Unknown error', redux_templates.i18n );\n }\n\n this.setState( { isLoading: false, error: uiMessage } );\n } );\n }\n\n render() {\n const { isLoading, error } = this.state;\n\n return (\n <Placeholder\n icon=\"download\"\n label={ __( 'Import a Template from JSON - Redux', redux_templates.i18n ) }\n instructions={ __( 'Drag a file or upload a new one from your device.', redux_templates.i18n ) }\n className=\"editor-media-placeholder\"\n notices={ error && (\n <Notice status=\"error\">\n { error }\n </Notice>\n ) }\n >\n <Fragment>\n <MediaUploadCheck>\n <DropZone\n onFilesDrop={ this.addFile }\n label={ __( 'Import from JSON', redux_templates.i18n ) }\n />\n <FormFileUpload\n isLarge\n className=\"editor-media-placeholder__button button button-primary\"\n onChange={ this.addFile }\n accept={ ALLOWED_BG_MEDIA_TYPES }\n isBusy={ isLoading }\n disabled={ isLoading }\n multiple={ false }\n >\n { __( 'Upload', redux_templates.i18n ) }\n </FormFileUpload>\n </MediaUploadCheck>\n </Fragment>\n </Placeholder>\n );\n }\n}\n\nexport default withInstanceId( Edit );\n","/**\n * WordPress dependencies\n */\nconst { SVG } = wp.components;\n\nexport default <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path fill=\"none\" d=\"M0 0h24v24H0V0z\" /><path d=\"M9.17 6l2 2H20v10H4V6h5.17M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8l-2-2z\" /></SVG>;\n","/**\n * Internal dependencies\n */\nimport edit from './components/edit';\nimport icon from './icon';\nimport transforms from './transforms';\nimport { colorizeIcon } from '../../icons';\n\n/**\n * WordPress dependencies\n */\nconst { __ } = wp.i18n;\n\n/**\n * Block constants\n */\nconst name = 'import';\n\nconst category = 'common';\nconst schema = {\n\tfile: {\n\t\ttype: 'object',\n\t},\n};\n\nconst title = __( 'Template Import', redux_templates.i18n );\n\nconst keywords = [\n __( 'import', redux_templates.i18n ),\n __( 'download', redux_templates.i18n ),\n __( 'migrate', redux_templates.i18n ),\n];\n\n\n\nconst settings = {\n\ttitle: title,\n description: __( 'Import blocks exported using Redux plugin.', redux_templates.i18n ),\n\n\tcategory: category,\n\tkeywords: keywords,\n\n attributes: schema,\n\n supports: {\n align: true,\n alignWide: false,\n alignFull: false,\n customClassName: false,\n className: false,\n html: false,\n },\n\n transforms: transforms,\n edit: edit,\n save() {\n return null;\n },\n};\n\nexport { name, title, category, icon, settings };\n","/**\n * WordPress dependencies\n */\nconst { createBlock } = wp.blocks;\n\nconst transforms = {\n from: [\n {\n type: 'files',\n isMatch( files ) {\n return files[ 0 ].type === 'application/json';\n },\n // We define a lower priorty (higher number) than the default of 10. This\n // ensures that the Import block is only created as a fallback.\n priority: 13,\n transform: ( files ) => {\n const blocks = [];\n\n blocks.push( createBlock( 'redux/import', {\n file: files,\n } ) );\n\n return blocks;\n },\n },\n ],\n};\n\nexport default transforms;\n","/**\n * Reads the textual content of the given file.\n *\n * @param {File} file File.\n * @return {Promise<string>} Content of the file.\n */\nexport function readTextFile( file ) {\n const reader = new window.FileReader();\n return new Promise( ( resolve ) => {\n reader.onload = function() {\n resolve( reader.result );\n };\n reader.readAsText( file );\n } );\n}\n","/**\n * External dependencies\n */\nimport { isString } from 'lodash';\n\n/**\n * Internal dependencies\n */\nimport { readTextFile } from './file';\nconst { dispatch, select } = wp.data;\nconst { editPost } = dispatch('core/editor');\n\n/**\n * Import a reusable block from a JSON file.\n *\n * @param {File} file File.\n * @return {Promise} Promise returning the imported reusable block.\n */\nasync function importReusableBlock( file ) {\n const fileContent = await readTextFile( file );\n let parsedContent;\n try {\n parsedContent = JSON.parse(JSON.parse(JSON.stringify(fileContent)));\n } catch ( e ) {\n throw new Error( 'Invalid JSON file' );\n }\n\n if ( parsedContent.__file === 'redux_template' ) {\n\t\teditPost( { 'template': 'redux-templates_full_width' } );\n return parsedContent.content;\n }\n\n if (\n parsedContent.__file !== 'wp_block' ||\n ! parsedContent.title ||\n ! parsedContent.content ||\n ! isString( parsedContent.title ) ||\n ! isString( parsedContent.content )\n ) {\n\t if ( '' === select( 'core/editor' ).getEditedPostAttribute( 'template' ) ) {\n\t\t editPost({'template': 'redux-templates_contained'});\n\t }\n return importCoreBlocks( parsedContent );\n }\n\n const postType = await wp.apiFetch( { path: '/wp/v2/types/wp_block' } );\n const reusableBlock = await wp.apiFetch( {\n path: `/wp/v2/${ postType.rest_base }`,\n data: {\n title: parsedContent.title,\n content: parsedContent.content,\n status: 'publish',\n },\n method: 'POST',\n } );\n\n if ( reusableBlock.id ) {\n return '<!-- wp:block {\"ref\":' + reusableBlock.id + '} /-->';\n }\n throw new Error( 'Invalid Reusable Block JSON file contents' );\n}\n\nfunction importCoreBlocks( parsedContent ) {\n if (\n parsedContent.__file !== 'core_block' ||\n ! parsedContent.content ||\n ! isString( parsedContent.content )\n ) {\n throw new Error( 'Invalid JSON file' );\n }\n\n return parsedContent.content;\n}\n\nexport default importReusableBlock;\n","/**\n * WordPress dependencies\n */\nconst { select, dispatch } = wp.data;\nconst { parse, createBlock } = wp.blocks;\n\nexport default function insertImportedBlocks( clientId, blocks, onClose ) {\n blocks = parse( blocks );\n const toSelect = [];\n const blockIndex = select( 'core/block-editor' ).getBlockInsertionPoint();\n if ( blocks.length > 0 ) {\n for ( const block in blocks ) {\n const created = createBlock( blocks[ block ].name, blocks[ block ].attributes, blocks[ block ].innerBlocks );\n dispatch( 'core/block-editor' ).insertBlocks( created, parseInt( blockIndex.index ) + parseInt( block ) );\n\n if ( typeof created !== 'undefined' ) {\n toSelect.push( created.clientId );\n }\n }\n\n //remove insertion point if empty\n dispatch( 'core/block-editor' ).removeBlock( clientId );\n\n //select inserted blocks\n if ( toSelect.length > 0 ) {\n dispatch( 'core/block-editor' ).multiSelect( toSelect[ 0 ], toSelect.reverse()[ 0 ] );\n }\n }\n\n onClose();\n}\n","/**\n * External dependencies.\n */\nimport { ReduxTemplatesIcon } from '~redux-templates/icons'\n// import { ModalDesignLibrary } from '~stackable/components'\nimport {ModalManager} from '../../modal-manager';\nimport LibraryModal from '../../modal-library';\n\n/**\n * WordPress dependencies.\n */\nimport {\n\tButton, Placeholder,\n} from '@wordpress/components'\nimport { compose } from '@wordpress/compose'\nimport { createBlock, parse } from '@wordpress/blocks'\nimport { withDispatch } from '@wordpress/data'\nimport { useState } from '@wordpress/element'\nimport { __ } from '@wordpress/i18n'\nimport { applyFilters } from '@wordpress/hooks'\n\nconst edit = ( { removeLibraryBlock, preview } ) => {\n\tif (preview) {\n\t\talert('here i am');\n\t}\n\n\treturn (\n\t\t<div className=\"redux-template-library-block\">\n\t\t\t<Placeholder\n\t\t\t\ticon={ <ReduxTemplatesIcon /> }\n\t\t\t\tlabel={ __( 'Redux Template Library', redux_templates.i18n ) }\n\t\t\t\tinstructions={ __( 'Open the Design Library and select a pre-designed block or layout.', redux_templates.i18n ) }\n\t\t\t>\n\t\t\t\t<Button\n\t\t\t\t\tisSecondary\n\t\t\t\t\tisLarge\n\t\t\t\t\thasIcon\n\t\t\t\t\tclassName=\"redux-template-library-block__button\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tModalManager.open(<LibraryModal />);\n\t\t\t\t\t\tremoveLibraryBlock()\n\t\t\t\t\t} }\n\t\t\t\t>{ __( 'Open Design Library', redux_templates.i18n ) }</Button>\n\t\t\t</Placeholder>\n\t\t</div>\n\t)\n}\n\nexport default compose( [\n\twithDispatch( ( dispatch, {\n\t\tclientId,\n\t} ) => {\n\t\tconst { removeBlocks } = dispatch( 'core/block-editor' )\n\t\treturn {\n\t\t\tremoveLibraryBlock: serializedBlock => {\n\t\t\t\tremoveBlocks( clientId );\n\t\t\t},\n\t\t}\n\t} ),\n] )( edit )\n","/**\n * BLOCK: Design Library\n */\n/**\n * External dependencies\n */\nimport { ReduxTemplatesIcon } from '~redux-templates/icons'\n\n/**\n * Internal dependencies\n */\nimport edit from './edit'\nimport InsertLibraryButton from './insert-library-button'\nconst { registerBlockType } = wp.blocks;\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n'\nimport domReady from '@wordpress/dom-ready'\nimport { render } from '@wordpress/element'\nimport { ReduxTemplatesIconColor } from '../../icons';\n\n\n\nconst name = 'library';\nconst icon = InsertLibraryButton\n\nconst category = 'common';\nconst schema = {}\n\nconst title = __( 'Template Library', redux_templates.i18n );\nconst description = __( 'Choose a section, template, or template kit from the Redux Template Library.', redux_templates.i18n );\n\nconst keywords = [\n\t__( 'Template Library', redux_templates.i18n ),\n\t__( 'Design Library', redux_templates.i18n ),\n\t__( 'Element Layouts', redux_templates.i18n ),\n\t__( 'Redux', redux_templates.i18n ),\n];\n\nconst blockAttributes = {\n\tfile: {\n\t\ttype: 'object',\n\t},\n};\n\nconst settings = {\n\ttitle: title,\n\tdescription: description,\n\ticon: ReduxTemplatesIconColor,\n\tcategory: 'layout',\n\tkeywords: keywords,\n\tattributes: schema,\n\tsupports: {\n\t\tcustomClassName: false,\n\t\t// inserter: ! disabledBlocks.includes( name ), // Hide if disabled.\n\t},\n\n\texample: {\n\t\tattributes: {\n\t\t\t// backgroundColor: '#000000',\n\t\t\t// opacity: 0.8,\n\n\t\t\t// padding: 30,\n\t\t\t// textColor: '#FFFFFF',\n\t\t\t// radius: 10,\n\t\t\t// title: __( 'I am a slide title', 'wp-presenter-pro' ),\n\t\t},\n\t},\n\n\tedit: edit,\n\n\tsave() {\n\t\treturn null;\n\t},\n};\n\nconst renderButton = function(toolbar) {\n\n\tconst buttonDiv = document.createElement( 'div' )\n\ttoolbar.appendChild( buttonDiv )\n\n\trender( <InsertLibraryButton />, buttonDiv )\n}\n\ndomReady( () => {\n\tlet toolbar = document.querySelector( '.edit-post-header__toolbar' );\n\tif ( ! toolbar ) {\n\t\ttoolbar = document.querySelector( '.edit-post-header__toolbar' );\n\t}\n\tif ( ! toolbar ) {\n\t\tsetTimeout(function(){\n\t\t\tlet toolbar = document.querySelector( '.edit-post-header__toolbar' );\n\t\t\tif ( toolbar ) {\n\t\t\t\trenderButton( toolbar );\n\t\t\t}\n\t\t}, 500);\n\t\treturn;\n\t}\n\trenderButton(toolbar);\n} )\n\nexport { name, title, category, icon, settings };\n","/**\n * External dependencies\n */\nimport { ReduxTemplatesIcon, ReduxTemplatesIconColorize } from '~redux-templates/icons'\n\n/**\n * WordPress dependencies\n */\nimport {Button, Tooltip} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {ModalManager} from '../../modal-manager';\nimport LibraryModal from '../../modal-library';\nimport './style.scss'\n\nconst InsertLibraryButton = () => {\n\treturn (\n\t\t<Tooltip text={__( 'Redux Templates Library', redux_templates.i18n )} position={'bottom'}>\n\t\t\t<Button data-tut=\"tour__library_button\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tModalManager.open(<LibraryModal />);\n\t\t\t\t\t} }\n\t\t\t\t\tclassName=\"redux-templates-insert-library-button\"\n\t\t\t\t\tlabel={ __( 'Open Library', redux_templates.i18n ) }\n\t\t\t\t\ticon={ <ReduxTemplatesIcon /> }\n\t\t\t>{ __( 'Templates', redux_templates.i18n ) }</Button>\n\t\t</Tooltip>\n\t)\n}\n\nexport default InsertLibraryButton\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/**\n * WordPress dependencies\n */\nimport {__} from '@wordpress/i18n'\nimport CONFIG from '../config';\nimport './style.scss'\n\nconst {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {useState, useEffect} = wp.element;\n\n// currentStep : indicates where the step is\n// step: 1~8 etc\nexport default function ChallengeStepItem(props) {\n const {currentStep, step, caption, finalStatus} = props;\n const [iconClassname, setIconClassname] = useState('fa circle');\n const [itemClassname, setItemClassname] = useState('challenge-item');\n useEffect(() => {\n if (currentStep < step) { // not completed step\n setItemClassname('challenge-item');\n setIconClassname('far fa-circle');\n }\n if (currentStep === step) { // current step\n setItemClassname('challenge-item challenge-item-current');\n setIconClassname('fas fa-circle');\n } \n if (currentStep > step || finalStatus) {\n setItemClassname('challenge-item challenge-item-completed');\n setIconClassname('fas fa-check-circle');\n }\n }, [step, currentStep, finalStatus]);\n \n return <li className={itemClassname}><i className={iconClassname} />{caption}</li>;\n}","const {useState, useEffect, memo} = wp.element;\nimport CONFIG from '../config';\nexport default memo(function ProgressBar({currentStep}){\n const [width, setWidth] = useState(0);\n useEffect(() => {\n setWidth( currentStep <= 0 ? 0 : (currentStep / CONFIG.totalStep * 100) );\n }, [currentStep])\n return (\n <div className='challenge-bar'>\n <div style={{width: width + '%'}}></div>\n </div>\n );\n});","/**\n * WordPress dependencies\n */\nimport {__} from '@wordpress/i18n'\nimport ChallengeStepItem from './ChallengeStepItem';\nimport ProgressBar from './ProgressBar';\nimport CONFIG from '../config';\nimport './style.scss'\n\nconst {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {useState, useEffect} = wp.element;\n\nfunction ChallengeListBlock(props) {\n const {started, onStarted} = props;\n const {challengeStep, finalStatus, setChallengeOpen, setChallengeStep} = props;\n const [buttonRowClassname, setButtonRowClassname] = useState('challenge-button-row');\n useEffect(() => {\n setButtonRowClassname(challengeStep !== CONFIG.beginningStep ? 'challenge-button-row started' : 'challenge-button-row');\n }, [challengeStep])\n \n const onCancelChallenge = () => {\n setChallengeOpen(false);\n setChallengeStep(-1);\n }\n\n return (\n <div className='challenge-list-block'>\n <p>{__('Complete the challenge and get up and running within 5 minutes', redux_templates.i18n)}</p>\n <ProgressBar currentStep={finalStatus === 'success' ? CONFIG.totalStep : challengeStep} />\n <ul className='challenge-list'>\n {\n CONFIG.list.map((item, i) => {\n return (<ChallengeStepItem key={i} step={i} currentStep={challengeStep} finalStatus={finalStatus} caption={item.caption} />);\n })\n }\n </ul>\n { finalStatus === '' &&\n <div className={buttonRowClassname}>\n {challengeStep === CONFIG.beginningStep && \n <button className='btn-challenge-start' onClick={onStarted}>{__('Start Challenge', redux_templates.i18n)}</button>}\n {challengeStep === CONFIG.beginningStep && <button className='btn-challenge-skip' onClick={onCancelChallenge}>{__('Skip Challenge', redux_templates.i18n)}</button>}\n {challengeStep !== CONFIG.beginningStep && <button className='btn-challenge-cancel' onClick={onCancelChallenge}>{__('Cancel Challenge', redux_templates.i18n)}</button>}\n </div>\n }\n </div>\n );\n\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {setChallengeOpen, setChallengeStep} = dispatch('redux-templates/sectionslist');\n return {\n setChallengeOpen,\n setChallengeStep\n };\n }),\n\n withSelect((select) => {\n const {getChallengeStep, getChallengeFinalStatus} = select('redux-templates/sectionslist');\n return {\n challengeStep: getChallengeStep(),\n finalStatus: getChallengeFinalStatus()\n };\n })\n])(ChallengeListBlock);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/**\n * WordPress dependencies\n */\nimport {__} from '@wordpress/i18n'\nimport './style.scss'\nimport config from '../config';\nimport helper from '../helper';\nimport classnames from 'classnames';\nconst {compose} = wp.compose;\nconst {withSelect, withDispatch} = wp.data;\nconst {useState, useEffect, useRef} = wp.element;\n\nfunction useInterval(callback, delay) {\n const savedCallback = useRef();\n\n // Remember the latest callback.\n useEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n\n // Set up the interval.\n useEffect(() => {\n function tick() {\n savedCallback.current();\n }\n if (delay !== null) {\n let id = setInterval(tick, delay);\n return () => clearInterval(id);\n }\n }, [delay]);\n}\n\nfunction ChallengeTimer(props) {\n const {started, expanded, setChallengeListExpanded, isChallengeOpen, finalStatus} = props;\n const [secondsLeft, setSecondsLeft] = useState(helper.getSecondsLeft());\n const [paused, setPaused] = useState(false);\n\n // only timer\n useEffect(() => {\n window.addEventListener('focus', resume);\n window.addEventListener('blur', pause);\n return () => {\n window.removeEventListener('focus', resume);\n window.removeEventListener('blur', pause);\n };\n });\n\n // setup timer\n useEffect(() => {\n setSecondsLeft(helper.getSecondsLeft());\n if (helper.loadStep() === -1) {\n setSecondsLeft(config.initialSecondsLeft);\n }\n }, [isChallengeOpen]);\n\n // run timer\n useInterval(() => {\n setSecondsLeft(secondsLeft < 0 ? 0 : secondsLeft - 1);\n helper.saveSecondsLeft(secondsLeft < 0 ? 0 : secondsLeft - 1);\n }, (started && (paused === false) && secondsLeft >= 0 && finalStatus === '') ? 1000 : null);\n\n\n // Pause the timer.\n const pause = () => {\n setPaused(true);\n }\n\n // Resume the timer.\n const resume = () => {\n setPaused(false);\n }\n\n return (\n <div className='block-timer'>\n <div>\n <h3>{__('Redux Challenge', redux_templates.i18n)}</h3>\n <p><span>{helper.getFormatted(secondsLeft)}</span>{__(' remaining', redux_templates.i18n)}</p>\n </div>\n <div className={classnames('caret-icon', {'closed': expanded})} onClick={() => setChallengeListExpanded(!expanded)}>\n <i className=\"fa fa-caret-down\"></i>\n </div>\n </div>\n );\n\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {setChallengeListExpanded} = dispatch('redux-templates/sectionslist');\n return {\n setChallengeListExpanded\n };\n }),\n withSelect((select) => {\n const {getChallengeOpen, getChallengeFinalStatus, getChallengeListExpanded} = select('redux-templates/sectionslist');\n return {\n isChallengeOpen: getChallengeOpen(),\n finalStatus: getChallengeFinalStatus(),\n expanded: getChallengeListExpanded()\n };\n })\n])(ChallengeTimer);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import {__} from '@wordpress/i18n'\nimport {animateScroll} from 'react-scroll';\nimport {dispatch, select} from '@wordpress/data';\nconst {setTourActiveButtonGroup, setImportingTemplate} = dispatch('redux-templates/sectionslist');\nconst {getPageData} = select('redux-templates/sectionslist');\nimport {ModalManager} from '~redux-templates/modal-manager';\nimport PreviewModal from '~redux-templates/modal-preview';\nexport default {\n initialSecondsLeft: 300,\n beginningStep: -1,\n totalStep: 7,\n list: [\n {\n selector: '[data-tut=\"tour__navigation\"]',\n caption: __('Template Type Tabs', redux_templates.i18n),\n offset: {\n x: 0,\n y: 50,\n arrowX: 0,\n arrowY: -20\n },\n box: {\n width: 250\n },\n direction: 'top',\n content: () => (\n <div>\n {__('These are the different types of templates we have.', redux_templates.i18n)}\n <ul>\n <li>\n <strong>{__('Sections', redux_templates.i18n)}</strong>\n {__(' are the building blocks of a page. Each \"row\" of content on a page we consider a section.', redux_templates.i18n)}\n </li>\n <li>\n <strong>{__('Pages', redux_templates.i18n)}</strong>\n {__(' are, you guessed it, a group of multiple sections making up a page.', redux_templates.i18n)}\n </li>\n <li>\n <strong>{__('Template Kits', redux_templates.i18n)}</strong>\n {__(' are groups of pages that all follow a style or theme.', redux_templates.i18n)}\n </li>\n <li>\n <strong>{__('Saved', redux_templates.i18n)}</strong>\n {__(' are reusable blocks that you may have previously saved for later.', redux_templates.i18n)}\n </li>\n </ul>\n </div>\n )\n },\n {\n selector: '[data-tut=\"tour__filtering\"]',\n caption: __('Sidebar', redux_templates.i18n),\n content: __('This area is where you can search and filter to find the right kind of templates you want.', redux_templates.i18n),\n direction: 'left',\n offset: {\n x: 40,\n y: 10,\n arrowX: -20,\n arrowY: 0\n },\n box: {\n width: 250,\n height: 130\n },\n action: () => {\n animateScroll.scrollToTop({\n containerId: 'redux-templates-collection-modal-sidebar',\n duration: 0,\n });\n },\n },\n {\n selector: '[data-tut=\"tour__filtering\"]',\n caption: __('Plugins Filter', redux_templates.i18n),\n offset: {\n x: 40,\n y: 10,\n arrowX: -20,\n arrowY: 0\n },\n box: {\n width: 290,\n height: 185\n },\n content: () => (\n <div>\n {__('Some templates require certain plugins. You can filter or select those templates. Hint, if the text is a ', redux_templates.i18n)}\n <a href=\"#\" className=\"missing-dependency\">{__('little orange', redux_templates.i18n)}</a>\n {__(', you don`t have that plugin installed yet, but don`t worry. Redux will help you with that too.', redux_templates.i18n)}\n </div>\n ),\n action: () => {\n animateScroll.scrollToBottom({\n containerId: 'redux-templates-collection-modal-sidebar',\n duration: 0,\n });\n },\n direction: 'left'\n },\n {\n selector: '[data-tut=\"tour__main_body\"]',\n caption: __('Templates List', redux_templates.i18n),\n content: __('This area is where the templates will show up that match the filters you\\'ve selected. You can click on many of them to preview or import them.', redux_templates.i18n),\n direction: 'left',\n offset: {\n x: 40,\n y: 10,\n arrowX: -20,\n arrowY: 0\n },\n box: {\n width: 250,\n height: 150\n },\n action: () => {\n animateScroll.scrollToTop({\n containerId: 'redux-templates-collection-modal-sidebar',\n duration: 0,\n });\n setTourActiveButtonGroup(null);\n }\n },\n {\n selector: '#modalContainer .redux-templates-single-item-inner:first-child',\n caption: __('Template Hover', redux_templates.i18n),\n content: __('When you hover over a template you can see via icons what plugins are required for this template. You can then choose to Preview or Import a design.', redux_templates.i18n),\n action: () => {\n ModalManager.closeCustomizer();\n const pageData = getPageData();\n if (pageData && pageData.length > 0) {\n setTourActiveButtonGroup(pageData[0])\n }\n },\n direction: 'left',\n offset: {\n x: 40,\n y: 10,\n arrowX: -20,\n arrowY: 0\n },\n box: {\n width: 240,\n height: 169\n },\n },\n {\n selector: '.wp-full-overlay-sidebar',\n caption: __('Preview Dialog', redux_templates.i18n),\n content: __('This is the preview dialog. It gives more details about the template and helps you to see what you could expect the templates to look like.', redux_templates.i18n),\n action: () => {\n setTourActiveButtonGroup(null);\n setImportingTemplate(null);\n const pageData = getPageData();\n if (pageData && pageData.length > 0) {\n ModalManager.openCustomizer(\n <PreviewModal startIndex={0} currentPageData={pageData}/>\n )\n }\n },\n position: 'center'\n },\n {\n selector: '.redux-templates-import-wizard-wrapper',\n caption: __('Import Wizard', redux_templates.i18n),\n content: __('When you click to import a template, sometimes you will be missing one of the required plugins. Redux will do its best to help you install what\\'s missing. If some of them are premium plugins, you will be provided details on where you can get them.', redux_templates.i18n),\n direction: 'right',\n offset: {\n x: 0,\n y: 85,\n arrowX: 40,\n arrowY: 25\n },\n box: {\n width: 250,\n height: 169\n },\n action: () => {\n // if (ModalManager.isModalOpened() === false) ModalManager.open(<LibraryModal autoTourStart={false} />)\n if (document.getElementsByClassName('tooltipster-box'))\n document.getElementsByClassName('tooltipster-box')[0].style.display = 'none';\n ModalManager.show();\n ModalManager.closeCustomizer();\n const pageData = getPageData();\n if (pageData && pageData.length > 0) setImportingTemplate(pageData[0]);\n setTimeout(() => {\n const openedPanel = document.getElementsByClassName('redux-templates-modal-wrapper');\n if (openedPanel && openedPanel.length > 0) {\n let openPanel = openedPanel[0].getBoundingClientRect();\n let box = {top: openPanel.top + 90, left: openPanel.left - 320};\n dispatch('redux-templates/sectionslist').setChallengeTooltipRect(box);\n }\n if (document.getElementsByClassName('tooltipster-box'))\n document.getElementsByClassName('tooltipster-box')[0].style.display = 'block';\n }, 0)\n }\n }\n ]\n};\n","/**\n * WordPress dependencies\n */\nimport {__} from '@wordpress/i18n'\nimport CONFIG from '../config';\nimport helper from '../helper';\n\nconst { compose } = wp.compose;\nconst { withDispatch, withSelect } = wp.data;\n\n\nconst ratingStars = (\n <span className=\"rating-stars\">\n <i className=\"fa fa-star\"></i>\n <i className=\"fa fa-star\"></i>\n <i className=\"fa fa-star\"></i>\n <i className=\"fa fa-star\"></i>\n <i className=\"fa fa-star\"></i>\n </span>\n);\n\nfunction ChallengeCongrats(props) {\n const {setChallengeStep, setChallengeFinalStatus, setChallengeOpen} = props;\n const closeModal = () => {\n setChallengeStep(CONFIG.beginningStep);\n setChallengeFinalStatus('');\n setChallengeOpen(false);\n }\n return (\n <div className=\"redux-templates-modal-overlay\">\n <div className=\"redux-templates-modal-wrapper challenge-popup-wrapper\">\n <div className=\"challenge-popup-header challenge-popup-header-congrats\"\n style={{backgroundImage: `url(${redux_templates.plugin + 'assets/img/popup-congrats.png'})`}}>\n <a className=\"challenge-popup-close\" onClick={closeModal}>\n <i className='fas fa-times' />\n </a>\n </div>\n <div className=\"challenge-popup-content\">\n <h3>{__( 'Congrats, you did it!', redux_templates.i18n )}</h3>\n <p>\n {__( 'You completed the Redux Challenge in ', redux_templates.i18n )}<b>{helper.getLocalizedDuration()}</b>.\n {__('Share your success story with other Redux users and help us spread the word', redux_templates.i18n)}\n <b>{__('by giving Redux a 5-star rating (', redux_templates.i18n)} {ratingStars}{__(') on WordPress.org', redux_templates.i18n)}</b>.\n {__('Thanks for your support and we look forward to bringing more awesome features.', redux_templates.i18n)}\n </p>\n <a href=\"https://wordpress.org/support/plugin/redux-framework/reviews/?filter=5#new-post\" className=\"challenge-popup-btn challenge-popup-rate-btn\" target=\"_blank\" rel=\"noopener\">\n {__( 'Rate Redux on Wordpress.org', redux_templates.i18n ) }\n <span className=\"dashicons dashicons-external\"></span>\n </a>\n </div>\n </div>\n </div>\n );\n}\n\nexport default compose([\n withDispatch((dispatch) => {\n const { setChallengeStep, setChallengeFinalStatus, setChallengeOpen } = dispatch('redux-templates/sectionslist');\n return {\n setChallengeStep,\n setChallengeFinalStatus,\n setChallengeOpen\n };\n })\n])(ChallengeCongrats);\n","/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n'\nimport CONFIG from '../config';\nimport {CheckboxControl} from '@wordpress/components';\n\nconst {compose} = wp.compose;\nconst {useState} = wp.element;\nconst {withDispatch, withSelect} = wp.data;\n\n\nconst ratingStars = (\n <span className=\"rating-stars\">\n <i className=\"fa fa-star\"></i>\n <i className=\"fa fa-star\"></i>\n <i className=\"fa fa-star\"></i>\n <i className=\"fa fa-star\"></i>\n <i className=\"fa fa-star\"></i>\n </span>\n);\n\nfunction ChallengeContact(props) {\n const { setChallengeStep, setChallengeFinalStatus, setChallengeOpen } = props;\n const [comment, setComment] = useState('');\n const [agreeToContactFurther, setAgreement] = useState(false);\n const closeModal = () => {\n setChallengeStep(CONFIG.beginningStep);\n setChallengeFinalStatus('');\n setChallengeOpen(false);\n }\n\n const handleChange = (e) => {\n setComment(e.target.value);\n }\n\n const contactRedux = () => {\n //sending data\n console.log('contact information', comment, agreeToContactFurther);\n closeModal();\n }\n\n return (\n <div className=\"redux-templates-modal-overlay\">\n <div className=\"redux-templates-modal-wrapper challenge-popup-wrapper\">\n <div className=\"challenge-popup-header challenge-popup-header-contact\"\n style={{ backgroundImage: `url(${redux_templates.plugin + 'assets/img/popup-contact.png'})` }}>\n <a className=\"challenge-popup-close\" onClick={closeModal}>\n <i className='fas fa-times' />\n </a>\n </div>\n <div className=\"challenge-popup-content challenge-contact\">\n <h3>{__('Help us improve Redux', redux_templates.i18n)}</h3>\n <p>\n {__('We\\'re sorry that it took longer than 5 minutes to try our challenge. We aim to ensure our Block Template library is as beginner friendly as possible. Please take a moment to let us know how we can improve our challenge.', redux_templates.i18n)}\n </p>\n <textarea value={comment} onChange={handleChange}></textarea>\n <CheckboxControl\n label={__('Yes, I give Redux permission to contact me for any follow up questions.', redux_templates.i18n)}\n checked={agreeToContactFurther}\n onChange={() => setAgreement(!agreeToContactFurther)}\n />\n <button className=\"challenge-popup-btn challenge-popup-rate-btn\" onClick={contactRedux}>\n {__('Submit Feedback', redux_templates.i18n)}\n </button>\n </div>\n </div>\n </div>\n );\n}\n\nexport default compose([\n withDispatch((dispatch) => {\n const { setChallengeStep, setChallengeFinalStatus, setChallengeOpen } = dispatch('redux-templates/sectionslist');\n return {\n setChallengeStep,\n setChallengeFinalStatus,\n setChallengeOpen\n };\n })\n])(ChallengeContact);\n","/**\n * WordPress dependencies\n */\nimport ChallengeCongrats from './congrats';\nimport ChallengeContact from './contact';\nimport './style.scss'\n\nexport default function ChallengeFinalTemplate({finalStatus}) {\n\treturn <ChallengeCongrats />\n\t// TODO - When feedback is working, uncomment this.\n // if (finalStatus === 'success') return <ChallengeCongrats />\n // return <ChallengeContact />;\n}\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import {__} from '@wordpress/i18n'\nimport CONFIG from './config';\nexport default {\n\n /**\n * Get number of seconds left to complete the Challenge.\n */\n getSecondsLeft: function() {\n var secondsLeft = localStorage.getItem( 'reduxChallengeSecondsLeft' );\n\n secondsLeft = isNaN(secondsLeft) || secondsLeft == null ? CONFIG.initialSecondsLeft : parseInt( secondsLeft, 10 );\n\n return secondsLeft;\n },\n\n /**\n * Save number of seconds left to complete the Challenge.\n */\n saveSecondsLeft: function( secondsLeft ) {\n\n localStorage.setItem( 'reduxChallengeSecondsLeft', secondsLeft );\n },\n\n /**\n * Get 'minutes' part of timer display.\n */\n getMinutesFormatted: function( secondsLeft ) {\n return Math.floor( secondsLeft / 60 );\n },\n\n /**\n * Get 'seconds' part of timer display.\n */\n getSecondsFormatted: function( secondsLeft ) {\n return secondsLeft % 60;\n },\n\n /**\n * Get formatted timer for display.\n */\n getFormatted: function( secondsLeft ) {\n\n if (secondsLeft < 0) return '0:00';\n\n var timerMinutes = this.getMinutesFormatted( secondsLeft );\n var timerSeconds = this.getSecondsFormatted( secondsLeft );\n\n return timerMinutes + ( 9 < timerSeconds ? ':' : ':0' ) + timerSeconds;\n },\n\n /**\n * Get Localized time string for display\n */\n getLocalizedDuration: function() {\n let secondsLeft = this.getSecondsLeft();\n secondsLeft = CONFIG.initialSecondsLeft - secondsLeft;\n\n var timerMinutes = this.getMinutesFormatted( secondsLeft );\n var timerSeconds = this.getSecondsFormatted( secondsLeft );\n\n const minutesString = timerMinutes ? timerMinutes + ' ' + __( 'minutes', redux_templates.i18n ) + ' ' : '';\n const secondsString = timerSeconds ? timerSeconds + ' ' + __( 'seconds', redux_templates.i18n ) : '';\n return minutesString + secondsString;\n },\n\n /**\n * Get last saved step.\n */\n loadStep: function() {\n\n var step = localStorage.getItem( 'reduxChallengeStep' );\n step = isNaN(step) ? -1 : parseInt( step, 10 );\n\n return step;\n },\n\n /**\n * Save Challenge step.\n */\n saveStep: function( step ) {\n localStorage.setItem( 'reduxChallengeStep', step );\n },\n};\n","/**\n * WordPress dependencies\n */\nimport {__} from '@wordpress/i18n'\nimport './style.scss'\nimport helper from './helper';\nimport CONFIG from './config';\nimport ChallengeListBlock from './challenge-list-block';\nimport ChallengeTimer from './challenge-timer';\n\nconst {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {useState, useEffect} = wp.element;\n\nfunction ReduxChallenge(props) {\n const {autoChallengeStart} = props;\n const {isOpen, challengeStep, setChallengeStep, listExpanded} = props;\n const [challengeClassname, setChallengeClassname] = useState('redux-templates-challenge');\n const [started, setStarted] = useState(false);\n\n useEffect(() => {\n if (challengeStep !== CONFIG.beginningStep && isOpen) {\n setChallengeClassname('redux-templates-challenge started')\n setStarted(true);\n }\n }, [challengeStep, isOpen]);\n\n const onStarted = () => {\n setChallengeStep(0);\n setStarted(true);\n }\n\n return (\n <div className={challengeClassname} style={{display: isOpen ? 'block' : 'none'}}>\n { listExpanded && <ChallengeListBlock onStarted={onStarted} /> }\n <ChallengeTimer started={started} />\n </div>\n );\n\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {setChallengeStep} = dispatch('redux-templates/sectionslist');\n return {\n setChallengeStep\n };\n }),\n\n withSelect((select) => {\n const {getChallengeStep, getChallengeOpen, getChallengeListExpanded} = select('redux-templates/sectionslist');\n return {\n challengeStep: getChallengeStep(),\n isOpen: getChallengeOpen(),\n listExpanded: getChallengeListExpanded()\n };\n })\n])(ReduxChallenge);\n","\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import {compose} from '@wordpress/compose';\nimport {withDispatch, withSelect} from '@wordpress/data';\nimport CONFIG from '../config';\nconst {findDOMNode, useRef, useEffect} = wp.element;\nfunction ChallengeDot(props) {\n const {step, challengeStep, isOpen, setChallengeTooltipRect} = props;\n const selectedElement = useRef(null);\n useEffect(() => {\n window.addEventListener('resize', onResize);\n return () => {\n window.removeEventListener('resize', onResize);\n };\n }, [])\n\n useEffect(() => {\n if (isOpen === false) return;\n const stepInformation = CONFIG.list[challengeStep];\n if (stepInformation && stepInformation.action && typeof stepInformation.action === 'function') {\n stepInformation.action();\n onResize();\n setTimeout(onResize, 0);\n } else\n onResize();\n }, [challengeStep, isOpen]);\n\n const isVisible = () => {\n return ((challengeStep >= 0 && challengeStep < CONFIG.totalStep) && isOpen);\n }\n\n const onResize = () => {\n const box = getElementBounding();\n if (box) setChallengeTooltipRect(box);\n };\n\n const getElementBounding = () => {\n if (selectedElement && selectedElement.current) {\n const rect = findDOMNode(selectedElement.current).getBoundingClientRect();\n return {left: rect.left, top: rect.top, width: rect.width, height: rect.height};\n }\n return null;\n }\n if (isVisible() && challengeStep === step)\n return <i className=\"challenge-dot tooltipstered\" ref={selectedElement}>\n &nbsp;\n </i>;\n return null;\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {setChallengeTooltipRect} = dispatch('redux-templates/sectionslist');\n return {\n setChallengeTooltipRect\n };\n }),\n withSelect((select, props) => {\n const { getChallengeOpen, getChallengeStep } = select('redux-templates/sectionslist');\n return {\n isOpen: getChallengeOpen(),\n challengeStep: getChallengeStep()\n };\n })\n])(ChallengeDot);\n","import {__} from '@wordpress/i18n';\n\nconst { compose } = wp.compose;\nconst { withDispatch, withSelect } = wp.data;\nconst { useState, useEffect } = wp.element;\nimport {ModalManager} from '~redux-templates/modal-manager';\nimport CONFIG from '../config';\nimport helper from '../helper';\nconst ARROW_BOX = 30;\nconst DEFAULT_BOX_WIDTH = 250;\nconst DEFAULT_BOX_HEIGHT = 300;\nconst DEFAULT_OFFSET_X = 0;\nconst DEFAULT_OFFSET_Y = 20;\nconst DEFAULT_ARROW_OFFSET_X = 20;\nconst DEFAULT_ARROW_OFFSET_Y = 20;\nfunction TooltipBox(props) {\n const { challengeStep, tooltipRect, isOpen, setChallengeStep, setChallengeFinalStatus, setChallengePassed, setChallengeListExpanded, setImportingTemplate } = props;\n const [style, setStyle] = useState({});\n const [arrowStyle, setArrowStyle] = useState({});\n const [content, setContent] = useState('');\n const [wrapperClassname, setWrapperClassname] = useState('');\n\n const isVisible = () => {\n return ((challengeStep >= 0 || challengeStep > CONFIG.totalStep) && isOpen);\n }\n\n const calculateWithStepInformation = () => {\n const stepInformation = CONFIG.list[challengeStep];\n const boxWidth = (stepInformation.box && stepInformation.box.width) ? stepInformation.box.width : DEFAULT_BOX_WIDTH;\n const boxHeight = (stepInformation.box && stepInformation.box.height) ? stepInformation.box.height : DEFAULT_BOX_HEIGHT;\n const offsetX = stepInformation.offset ? stepInformation.offset.x :DEFAULT_OFFSET_X;\n const offsetY = stepInformation.offset ? stepInformation.offset.y :DEFAULT_OFFSET_Y;\n switch(stepInformation.direction) {\n case 'right':\n return [tooltipRect.left + offsetX, tooltipRect.top + offsetY - boxHeight / 2];\n case 'left':\n return [tooltipRect.left + offsetX, tooltipRect.top + offsetY - boxHeight / 2];\n case 'top':\n return [tooltipRect.left + offsetX - boxWidth / 2, tooltipRect.top + offsetY ];\n case 'bottom':\n return [tooltipRect.left + offsetX - boxWidth / 2, tooltipRect.top - boxHeight + offsetY];\n default:\n return [tooltipRect.left + offsetX, tooltipRect.top + offsetY];\n }\n }\n\n const calculateArrowOffset = () => {\n const stepInformation = CONFIG.list[challengeStep];\n const boxWidth = (stepInformation.box && stepInformation.box.width) ? stepInformation.box.width : DEFAULT_BOX_WIDTH;\n const boxHeight = (stepInformation.box && stepInformation.box.height) ? stepInformation.box.height : DEFAULT_BOX_HEIGHT;\n const arrowOffsetX = (stepInformation.offset && isNaN(stepInformation.offset.arrowX) === false) ? stepInformation.offset.arrowX : DEFAULT_ARROW_OFFSET_X;\n const arrowOffsetY = (stepInformation.offset && isNaN(stepInformation.offset.arrowY) === false) ? stepInformation.offset.arrowY : DEFAULT_ARROW_OFFSET_Y;\n switch(stepInformation.direction) {\n case 'top':\n return [boxWidth / 2 + arrowOffsetX, arrowOffsetY];\n case 'bottom':\n return [boxWidth / 2 + arrowOffsetX, arrowOffsetY];\n case 'left':\n return [arrowOffsetX, arrowOffsetY + boxHeight / 2 - ARROW_BOX / 2];\n case 'right':\n return [boxWidth + arrowOffsetX, arrowOffsetY + boxHeight / 2 - ARROW_BOX / 2];\n default:\n return [arrowOffsetX, arrowOffsetY];\n }\n }\n // adjust position and content upon steps change\n useEffect(() => {\n if (isVisible() && tooltipRect) {\n const stepInformation = CONFIG.list[challengeStep];\n if (stepInformation) {\n const [boxLeft, boxTop] = calculateWithStepInformation();\n const [arrowOffsetX, arrowOffsetY] = calculateArrowOffset();\n setStyle({\n ...style,\n display: 'block',\n width: stepInformation.box ? stepInformation.box.width : DEFAULT_BOX_WIDTH,\n left: boxLeft,\n top: boxTop//tooltipRect.top + offsetY + PADDING_Y + ARROW_HEIGHT\n });\n setContent(stepInformation.content);\n setArrowStyle({\n ...arrowStyle,\n display: 'block',\n left: boxLeft + arrowOffsetX, // calculateLeftWithStepInformation(),\n top: boxTop + arrowOffsetY // tooltipRect.top + offsetY + PADDING_Y\n });\n }\n } else {\n setStyle({ ...style, display: 'none' });\n setArrowStyle({...arrowStyle, display: 'none'});\n }\n }, [JSON.stringify(tooltipRect), challengeStep, isOpen]);\n\n // update wrapper class name based on step change\n useEffect(() => {\n const stepInformation = CONFIG.list[challengeStep];\n if (stepInformation) {\n switch(stepInformation.direction) {\n case 'top':\n setWrapperClassname('challenge-tooltip tooltipster-sidetip tooltipster-top');\n break;\n case 'bottom':\n setWrapperClassname('challenge-tooltip tooltipster-sidetip tooltipster-bottom');\n break;\n case 'left':\n setWrapperClassname('challenge-tooltip tooltipster-sidetip tooltipster-left');\n break;\n case 'right':\n setWrapperClassname('challenge-tooltip tooltipster-sidetip tooltipster-right');\n break;\n default:\n setWrapperClassname('challenge-tooltip tooltipster-sidetip tooltipster-left');\n }\n\n }\n }, [challengeStep])\n\n const toNextStep = () => {\n if (challengeStep === CONFIG.totalStep - 1) {\n // finalize challenge\n ModalManager.show();\n setChallengeFinalStatus((helper.getSecondsLeft() > 0) ? 'success' : 'contact');\n setChallengeStep(CONFIG.beginningStep);\n setChallengePassed(true);\n setChallengeListExpanded(true);\n setImportingTemplate(null);\n } else\n setChallengeStep(challengeStep + 1);\n }\n\n\n return (\n <div className={wrapperClassname}>\n <div className=\"tooltipster-box\" style={style}>\n {content}\n <div className=\"btn-row\">\n <button className=\"challenge-done-btn\" onClick={toNextStep}>{__('Next', redux_templates.i18n)}</button>\n </div>\n </div>\n <div className=\"tooltipster-arrow\" style={arrowStyle}>\n <div className=\"tooltipster-arrow-uncropped\">\n <div className=\"tooltipster-arrow-border\"></div>\n <div className=\"tooltipster-arrow-background\"></div>\n </div>\n </div>\n </div>\n );\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const { setChallengeStep, setChallengeFinalStatus, setChallengePassed, setChallengeListExpanded, setImportingTemplate } = dispatch('redux-templates/sectionslist');\n return {\n setChallengeStep,\n setChallengeFinalStatus,\n setChallengePassed,\n setChallengeListExpanded,\n setImportingTemplate\n };\n }),\n\n withSelect((select, props) => {\n const { getChallengeTooltipRect, getChallengeOpen, getChallengeStep, getChallengeFinalStatus } = select('redux-templates/sectionslist');\n return {\n tooltipRect: getChallengeTooltipRect(),\n isOpen: getChallengeOpen(),\n challengeStep: getChallengeStep(),\n finalStatus: getChallengeFinalStatus()\n };\n })\n])(TooltipBox);\n","const {apiFetch} = wp;\nconst {useState} = wp.element;\nconst {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {parse} = wp.blocks;\n\nimport {BlockPreview} from '@wordpress/block-editor';\nimport {installedBlocksTypes} from '~redux-templates/stores/actionHelper';\nimport './style.scss'\n\nfunction BackgroundImage(props) {\n const {data, appendErrorMessage, activeItemType} = props;\n const [dataLoaded, setDataLoaded] = useState(false);\n const [blocks, setBlocks] = useState(null);\n\n if (data && dataLoaded === false) {\n const type = activeItemType === 'section' ? 'sections' : 'pages';\n let the_url = 'redux/v1/templates/template?type=' + type + '&id=' + data.id + '&uid=' + window.userSettings.uid;\n if ('source' in data) {\n the_url += '&source=' + data.source;\n }\n\n const options = {\n method: 'GET',\n path: the_url,\n headers: {'Content-Type': 'application/json', 'Registered-Blocks': installedBlocksTypes()}\n };\n\n apiFetch(options).then(response => {\n if (response.success) {\n setBlocks(response.data);\n } else {\n appendErrorMessage(response.data.error);\n }\n setDataLoaded(true);\n }).catch(error => {\n appendErrorMessage(error.code + ' : ' + error.message);\n setDataLoaded(true);\n });\n }\n\n if (dataLoaded === true) {\n let parsed = parse(blocks.template);\n return (\n <div>\n <BlockPreview blocks={parsed} />\n </div>\n );\n }\n return null;\n}\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n appendErrorMessage\n } = dispatch('redux-templates/sectionslist');\n\n return {\n appendErrorMessage\n };\n }),\n withSelect((select) => {\n const {getActiveItemType} = select('redux-templates/sectionslist');\n return {\n activeItemType: getActiveItemType()\n };\n })\n])(BackgroundImage);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","const {compose} = wp.compose;\nconst {withSelect} = wp.data;\nimport {useEffect, useState} from '@wordpress/element';\nimport PreviewImportButton from '../preview-import-button';\nimport DependentPlugins from '../dependent-plugins';\nimport './style.scss'\n\nfunction ButtonGroup (props) {\n const {importingTemplate, showDependencyBlock, index, data, pageData} = props;\n const [rootClassName, setRootClassName] = useState('redux-templates-import-button-group');\n\n // When some action is in progress, disable the button groups\n useEffect(() => {\n if (importingTemplate === null && rootClassName !== 'redux-templates-import-button-group')\n setRootClassName('redux-templates-import-button-group')\n if (importingTemplate !== null && rootClassName === 'redux-templates-import-button-group')\n setRootClassName('redux-templates-import-button-group disabled');\n }, [importingTemplate])\n return (\n <div className={rootClassName}>\n <PreviewImportButton index={index} data={data} pageData={pageData} />\n <DependentPlugins showDependencyBlock={showDependencyBlock} data={data} />\n </div>\n )\n}\n\n\n\nexport default compose([\n withSelect((select) => {\n const {getImportingTemplate} = select('redux-templates/sectionslist');\n return {importingTemplate: getImportingTemplate()};\n })\n])(ButtonGroup);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import {Tooltip} from '@wordpress/components';\nimport * as Icons from '~redux-templates/icons'\nimport './style.scss'\nconst {__} = wp.i18n;\n\nexport default function DependentPlugins (props) {\n const {data, showDependencyBlock} = props;\n const {id} = data;\n\n const isMissingPlugin = (plugin) => {\n return ((data.proDependenciesMissing && data.proDependenciesMissing.indexOf(plugin) >=0)\n || (data.installDependenciesMissing && data.installDependenciesMissing.indexOf(plugin) >=0))\n }\n\n if (showDependencyBlock) {\n\t let index = data.dependencies.indexOf('core');\n\t if ( index > -1 ) {\n\t\t data.dependencies.splice(index, 1);\n\t\t data.dependencies.push( 'core' );\n\t }\n\t return (\n\t\t <div className=\"redux-templates-button-display-dependencies\">\n\t\t\t { data.dependencies &&\n\t\t\t data.dependencies.map(plugin => {\n\t\t\t \tlet pluginInstance = null;\n\t\t\t\t const plugin_name = plugin.replace('-pro', '').replace('-premium', '').replace(/\\W/g, '').toLowerCase();\n\t\t\t \tif ( 'core' == plugin ) {\n\t\t\t\t\t pluginInstance = {\n\t\t\t\t\t \tname: 'WordPress Native'\n\t\t\t\t\t }\n\t\t\t\t } else {\n\t\t\t\t\t pluginInstance = redux_templates.supported_plugins[plugin];\n\t\t\t\t }\n\t\t\t\t\tif ( !pluginInstance ) {\n\t\t\t\t\t\tpluginInstance = redux_templates.supported_plugins[plugin.replace('-pro', '').replace('-premium', '')];\n\t\t\t\t\t}\n\n\t\t\t\t // We don't want two of the same icons showing up.\n\t\t\t\t if ( ! plugin.includes('-pro') && ! plugin.includes('-premium') ) {\n\t\t\t\t\t if ( data.dependencies.includes(plugin + '-pro') || data.dependencies.includes( plugin + '-premium' ) ) {\n\t\t\t\t\t\t return;\n\t\t\t\t\t }\n\t\t\t\t }\n\t\t\t\t if (!pluginInstance) {\n\t\t\t\t\t console.log( 'Missing plugin details for '+ plugin+' - ' + plugin.replace('-pro', '').replace('-premium', '') );\n\t\t\t\t\t console.log( redux_templates.supported_plugins );\n\t\t\t\t\t return;\n\t\t\t\t }\n\t\t\t\t if ( 'redux' === plugin_name ) {\n\t\t\t\t\t return;\n\t\t\t\t }\n\t\t\t\t const IconComponent = Icons[plugin_name];\n\t\t\t\t if (IconComponent && pluginInstance) {\n\t\t\t\t\t return (\n\t\t\t\t\t\t <Tooltip text={(isMissingPlugin(plugin) && 'core' !== plugin ? pluginInstance.name+ ' ( '+__('Not Installed', redux_templates.i18n)+' )' : pluginInstance.name)} position=\"bottom center\" key={id + plugin}>\n <span className={isMissingPlugin(plugin) && 'core' !== plugin ? 'missing-dependency' : ''}>\n <IconComponent/>\n </span>\n\t\t\t\t\t\t </Tooltip>\n\t\t\t\t\t );\n\t\t\t\t } else if ( 'shareablockcom' !== plugin_name && 'gutenberghubcom' !== plugin_name ) {\n\t\t\t\t\t console.log('Need icon for ' + plugin_name);\n\t\t\t\t }\n\n\t\t\t })\n\t\t\t }\n\t\t\t { data.dependencies['core'] &&\n\t\t\t <Tooltip text={__('WordPress Core', redux_templates.i18n)} position=\"bottom center\" key={id + 'core'}>\n\t\t\t\t <span>\n\t\t\t\t <IconComponent/>\n\t\t\t\t </span>\n\t\t\t </Tooltip>\n\n\t\t\t }\n\t\t </div>\n\t );\n }\n\n return null;\n}\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import {__} from '@wordpress/i18n';\nimport {compose} from '@wordpress/compose';\nimport {withDispatch} from '@wordpress/data';\nimport {Notice} from '@wordpress/components';\n\nimport './style.scss';\n\nexport function ErrorNotice(props) {\n const {discardAllErrorMessages, errorMessages} = props;\n return (\n <div className='redux-templates-error-notice'>\n <Notice status=\"error\" onRemove={discardAllErrorMessages}>\n <p>\n {\n errorMessages.join(', ')\n }\n </p>\n </Notice>\n </div>\n );\n\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n discardAllErrorMessages\n } = dispatch('redux-templates/sectionslist');\n\n return {\n discardAllErrorMessages\n };\n })\n])(ErrorNotice);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","export default {\n position: {\n bottom: 0,\n right: 0,\n },\n event: 'click',\n\n mainButtonStyles: {\n backgroundColor: '#24B0A6',\n fill: '#ffffff',\n transform: 'none',\n transition: 'none',\n transformOrigin: 'none',\n },\n alwaysShowTitle: false,\n actionButtonStyles: {\n backgroundColor: '#19837C',\n }\n}\n","import {Fab, Action} from 'react-tiny-fab';\nimport config from './config';\nimport './styles.scss';\nimport {__} from '@wordpress/i18n';\n\nimport * as Icons from '~redux-templates/icons'\nimport { ModalManager } from '~redux-templates/modal-manager';\nimport FeedbackDialog from '~redux-templates/modal-feedback';\n\nconst schema = {\n type: 'object',\n properties: {\n comment: {\n type: 'string'\n },\n agreeToContactFurther: {\n type: 'boolean',\n title: __('Yes, I give Redux permission to contact me for any follow up questions.', redux_templates.i18n)\n }\n }\n}\nconst uiSchema = {\n 'comment': {\n 'ui:widget': 'textarea',\n 'ui:options': {\n label: false\n }\n }\n};\n\nexport default function FabWrapper() {\n const {mainButtonStyles, actionButtonStyles, position, event, alwaysShowTitle} = config;\n\n return (\n <Fab\n mainButtonStyles={mainButtonStyles}\n position={position}\n icon={Icons.ReduxTemplatesIcon()}\n event={event}\n // onClick={testing}\n\n text={__('See Quick Links', redux_templates.i18n)}\n >\n\n {/*<Action*/}\n {/* style={actionButtonStyles}*/}\n {/* text={__('Suggest a Feature', redux_templates.i18n)}*/}\n {/* onClick={e => {*/}\n {/* window.open(redux_templates.u, \"_blank\")*/}\n {/* }}*/}\n {/*>*/}\n {/* <i className=\"fa fa-lightbulb-o\"/>*/}\n {/*</Action>*/}\n {/*<Action*/}\n {/* style={actionButtonStyles}*/}\n {/* text={__('Contact Us', redux_templates.i18n)}*/}\n {/* onClick={e => {*/}\n {/* ModalManager.openFeedback(<FeedbackDialog */}\n {/* title={__('Help us improve Redux', redux_templates.i18n)} */}\n {/* description={__('Thank you for reaching out. We will do our best to contact you ba.', redux_templates.i18n)}*/}\n {/* schema={schema}*/}\n {/* uiSchema={uiSchema}*/}\n {/* headerImage={<img className=\"header-background\" src={`${redux_templates.plugin}assets/img/popup-contact.png` } />}*/}\n {/* buttonLabel={__('Submit Feedback', redux_templates.i18n)}*/}\n {/* />)*/}\n {/* }}*/}\n {/*>*/}\n {/* <i className=\"fa fa-comments\"/>*/}\n {/*</Action>*/}\n\t <Action\n\t\t style={actionButtonStyles}\n\t\t text={__('Get Support', redux_templates.i18n)}\n\t\t onClick={e => {\n\t\t\t window.open('https://wordpress.org/support/plugin/redux-framework/#new-topic-0', '_blank')\n\t\t }}\n\t >\n\t\t <i className=\"far fa-question-circle \"/>\n\t </Action>\n <Action\n style={actionButtonStyles}\n text={__('Join our Community', redux_templates.i18n)}\n onClick={e => {\n window.open('https://www.facebook.com/groups/reduxframework', '_blank')\n }}\n >\n <i className=\"fa fa-comments\"/>\n </Action>\n\t {\n\t\t redux_templates.mokama === '1' &&\n\t\t <Action\n\t\t\t style={actionButtonStyles}\n\t\t\t text={__('Visit our Website', redux_templates.i18n)}\n\t\t\t onClick={e => {\n\t\t\t\t window.open('https://redux.io?utm_source=plugin&utm_medium=modal&utm_campaign=tinyfab', '_blank')\n\t\t\t }}\n\t\t >\n\t\t\t <i className=\"fas fa-external-link-alt\"/>\n\t\t </Action>\n\t }\n\t {/*{*/}\n\t\t {/* redux_templates.left !== 999 &&*/}\n\t\t {/* <Action*/}\n\t\t\t{/* style={actionButtonStyles}*/}\n\t\t\t{/* className=\"tour-icon\"*/}\n\t\t\t{/* text={__( 'Take the Redux Challenge', redux_templates.i18n )}*/}\n\t\t\t{/* onClick={e => {*/}\n\t\t\t{/*\t setTourOpen();*/}\n\t\t\t{/* }}*/}\n\t\t {/* >*/}\n\t\t\t{/* <i className=\"fas fa-map-signs tour-icon\"/>*/}\n\t\t {/* </Action>*/}\n\t {/*}*/}\n\n\t {\n\t\t redux_templates.mokama !== '1' &&\n\t\t <Action\n\t\t\t style={{backgroundColor:'#00a7e5'}}\n\t\t\t text={__('Upgrade to Redux Pro', redux_templates.i18n)}\n\t\t\t onClick={e => {\n\t\t\t\t window.open(redux_templates.u, '_blank')\n\t\t\t }}\n\t\t >\n\t\t\t <i className=\"fa fa-star\"/>\n\t\t </Action>\n\t }\n </Fab>\n );\n}\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./styles.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./styles.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./styles.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import ButtonGroup from '../button-group';\n\nconst {__} = wp.i18n\nimport {Tooltip} from '@wordpress/components';\nimport {requiresInstall, requiresPro} from '~redux-templates/stores/dependencyHelper';\nimport SafeImageLoad from '~redux-templates/components/safe-image-load';\nimport './style.scss'\n\nconst MultipleItem = (props) => {\n\n const {data, onSelectCollection} = props;\n const {pages, homepageData, ID, name} = data;\n const {image} = homepageData || {};\n\n return (\n <div className=\"redux-templates-multiple-template-box\">\n <div className=\"multiple-template-view\" onClick={ () => onSelectCollection( ID ) } >\n <div className=\"redux-templates-box-shadow\">\n <div className=\"redux-templates-default-template-image\">\n <SafeImageLoad url={image} alt={__('Default Template', redux_templates.i18n)} />\n {requiresPro(data) && <span className=\"redux-templates-pro-badge\">{__('Premium', redux_templates.i18n)}</span>}\n {!requiresPro(data) && requiresInstall(data) && <div className=\"redux-templates-missing-badge\"><i className=\"fas fa-exclamation-triangle\" /></div>}\n </div>\n <div className=\"redux-templates-button-overlay\">\n {requiresPro(data) && <Tooltip text={__('Premium Requirements', redux_templates.i18n)} position=\"bottom\" key={data.source+data.source_id}><span className=\"redux-templates-pro-badge\">{__('Premium', redux_templates.i18n)}</span></Tooltip>}\n {!requiresPro(data) && requiresInstall(data) && <Tooltip text={__('Not Installed', redux_templates.i18n)} position=\"bottom\" key={data.source+data.source_id}><div className=\"redux-templates-missing-badge\"><i className=\"fas fa-exclamation-triangle\" /></div></Tooltip>}\n <div className=\"redux-templates-import-button-group\">\n <div className=\"action-buttons\"><a className=\"redux-templates-button download-button\">{__('View Templates', redux_templates.i18n)}</a></div>\n </div>\n </div>\n </div>\n <div className=\"redux-templates-tmpl-info\">\n <h5 className=\"redux-templates-tmpl-title\" dangerouslySetInnerHTML={{__html:name}}/>\n <span className=\"redux-templates-temp-count\">{ pages ? pages.length : 0 } {__('Templates', redux_templates.i18n)}</span>\n </div>\n </div>\n </div>\n );\n}\n\nexport default MultipleItem\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","const { useState, useEffect, Fragment} = wp.element;\nconst {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {__} = wp.i18n\n\nimport './style.scss';\n\nimport {pageSizeMap} from '../../stores/helper';\n\nfunction Pagination(props) {\n const {currentPage, pageData, columns} = props;\n const {setCurrentPage} = props;\n const [totalPages, setTotalPages] = useState(1);\n const [firstButtonClass, setFirstButtonClass] = useState('tablenav-pages-navspan button');\n const [prevButtonClass, setPrevButtonClass] = useState('tablenav-pages-navspan button');\n const [nextButtonClass, setNextButtonClass] = useState('tablenav-pages-navspan button');\n const [lastButtonClass, setLastButtonClass] = useState('tablenav-pages-navspan button');\n\n useEffect(() => {\n const enabledClassname = 'tablenav-pages-navspan button ';\n const disabledClassname = 'tablenav-pages-navspan button disabled';\n setFirstButtonClass((currentPage === 0) ? disabledClassname : enabledClassname);\n setPrevButtonClass((currentPage === 0) ? disabledClassname : enabledClassname);\n setNextButtonClass((currentPage === totalPages - 1) ? disabledClassname : enabledClassname);\n setLastButtonClass((currentPage === totalPages - 1) ? disabledClassname : enabledClassname);\n }, [currentPage, totalPages]);\n\n useEffect(() => {\n let colStr = (columns === '') ? 'medium' : columns;\n setTotalPages(Math.ceil(pageData.length / pageSizeMap[colStr]));\n }, [pageData]);\n\n const gotoPage = (pageNum, className) => {\n if (className.indexOf('disabled') > 0) return;\n document.getElementById('modalContent').scrollTop = 0;\n setCurrentPage(pageNum);\n }\n\n\n return (\n <Fragment>\n\n {\n totalPages > 0 &&\n <div className=\"tablenav-pages\">\n <span className=\"displaying-num\">{pageData.length} items</span>\n <span className=\"pagination-links\">\n <span className={firstButtonClass} aria-hidden=\"true\"\n onClick={() => gotoPage(0, firstButtonClass)}>«</span>\n <span className={prevButtonClass} aria-hidden=\"true\"\n onClick={() => gotoPage(currentPage - 1, prevButtonClass)}>‹</span>\n <span className=\"screen-reader-text\">{__('Current Page', redux_templates.i18n)}</span>\n <span id=\"table-paging\" className=\"paging-input\">\n <span className=\"tablenav-paging-text\">{currentPage + 1} of <span\n className=\"total-pages\">{totalPages}</span></span>\n </span>\n <span className={nextButtonClass} aria-hidden=\"true\"\n onClick={() => gotoPage(currentPage + 1, nextButtonClass)}>›</span>\n <span className={lastButtonClass} aria-hidden=\"true\"\n onClick={() => gotoPage(totalPages - 1, lastButtonClass)}>»</span>\n </span>\n </div>\n }\n </Fragment>\n );\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n setCurrentPage\n } = dispatch('redux-templates/sectionslist');\n\n return {\n setCurrentPage\n };\n }),\n\n withSelect((select) => {\n const {getCurrentPage, getPageData, getColumns} = select('redux-templates/sectionslist');\n return {\n currentPage: getCurrentPage(),\n pageData: getPageData(),\n columns: getColumns()\n };\n })\n])(Pagination);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import {__} from '@wordpress/i18n';\n\nconst {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nimport {openSitePreviewModal} from '~redux-templates/stores/actionHelper';\nimport ChallengeDot from '~redux-templates/challenge/tooltip/ChallengeDot';\nimport './style.scss'\n\nfunction PreviewImportButton(props) {\n const {data, index, pageData} = props;\n const {setImportingTemplate, tourActiveButtonGroup} = props;\n let spinner = null;\n const triggerImportTemplate = (data) => {\n if (spinner === null) {\n spinner = data.ID;\n setImportingTemplate(data);\n }\n }\n\n return (\n <div className=\"action-buttons\">\n {\n pageData[index] && pageData[index]['source'] !== 'wp_block_patterns' &&\n <a className=\"redux-templates-button preview-button\" target=\"_blank\"\n onClick={() => openSitePreviewModal(index, pageData)}>\n <i className=\"fa fa-share\"/> {__('Preview', redux_templates.i18n)}\n </a>\n }\n\n <a className=\"redux-templates-button download-button\"\n onClick={() => triggerImportTemplate(data)}>\n <i className=\"fas fa-download\"/>{__('Import', redux_templates.i18n)}\n </a>\n {tourActiveButtonGroup && tourActiveButtonGroup.ID === pageData[index].ID && <ChallengeDot step={4} /> }\n </div>\n );\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n setImportingTemplate\n } = dispatch('redux-templates/sectionslist');\n\n return {\n setImportingTemplate\n };\n }),\n withSelect((select, props) => {\n const {getTourActiveButtonGroup} = select('redux-templates/sectionslist');\n return {\n tourActiveButtonGroup: getTourActiveButtonGroup()\n };\n })\n])(PreviewImportButton);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","const { Spinner } = wp.components;\nimport ImageLoader from 'react-load-image';\n\nconst placeholderImage = redux_templates.plugin + 'assets/img/reduxtemplates-medium.jpg';\nconst spinnerStyle = {height: 120, display: 'flex', alignItems: 'top', paddingTop: '40px', justifyContent: 'center', background: '#fff'};\nexport default function SafeImageLoad({url, alt, className}) {\n return (\n <ImageLoader src={url}>\n <img alt={alt} className={className} />\n <img src={placeholderImage} alt={alt} className={className} />\n <div style={spinnerStyle}>\n <Spinner />\n </div>\n </ImageLoader>\n );\n\n}\n","import {Tooltip} from '@wordpress/components';\n\nconst {__} = wp.i18n\nconst {withSelect} = wp.data;\nconst {useState, useEffect} = wp.element;\n\nimport ButtonGroup from '../button-group';\nimport SafeImageLoad from '~redux-templates/components/safe-image-load';\nimport BackgroundImage from '../background-image';\nimport {requiresInstall, requiresPro} from '~redux-templates/stores/dependencyHelper';\n\nimport './style.scss'\n\n\nfunction SingleItem (props) {\n // Decoupling props\n const {pageData, tourActiveButtonGroup, index} = props;\n const [data, setData] = useState(null);\n // const {ID, image, url, pro, source, requirements} = data;\n const [innerClassname, setInnerClassname] = useState('redux-templates-single-item-inner redux-templates-item-wrapper ');\n\n useEffect(() => {\n if (pageData) setData(pageData[index]);\n }, [index, pageData]);\n\n useEffect(() => {\n setInnerClassname((pageData && pageData[index] && tourActiveButtonGroup && tourActiveButtonGroup.ID === pageData[index].ID) ?\n 'redux-templates-single-item-inner redux-templates-item-wrapper focused' : 'redux-templates-single-item-inner redux-templates-item-wrapper');\n }, [tourActiveButtonGroup, pageData, index]);\n\n if (!data) return null;\n return (\n <div className=\"redux-templates-single-section-item\">\n <div className={innerClassname}>\n <div className=\"redux-templates-default-template-image\">\n {data.source !== 'wp_block_patterns' && <SafeImageLoad url={data.image}/> }\n {data.source === 'wp_block_patterns' && <BackgroundImage data={data} />}\n {requiresPro(data) && <span className=\"redux-templates-pro-badge\">{__('Premium', redux_templates.i18n)}</span>}\n {!requiresPro(data) && requiresInstall(data) && <span className=\"redux-templates-missing-badge\"><i className=\"fas fa-exclamation-triangle\" /></span>}\n <div className=\"redux-templates-tmpl-title\">{data.name}</div>\n </div>\n {/* redux-templates-default-template-image */}\n <div className=\"redux-templates-button-overlay\">\n\t {requiresPro(data) && <Tooltip text={__('Premium Requirements', redux_templates.i18n)} position=\"bottom\" key={data.source+data.source_id}><div className=\"redux-templates-pro-badge\">{__('Premium', redux_templates.i18n)}</div></Tooltip>}\n {!requiresPro(data) && requiresInstall(data) && <Tooltip text={__('Not Installed', redux_templates.i18n)} position=\"bottom\" key={data.source+data.source_id}><div className=\"redux-templates-missing-badge\"><i className=\"fas fa-exclamation-triangle\" /></div></Tooltip>}\n <ButtonGroup index={index} showDependencyBlock={true} data={data} pageData={pageData} />\n </div>\n\n </div>\n {/* redux-templates-item-wrapper */}\n </div>\n )\n}\n\n\nexport default withSelect((select, props) => {\n const {getTourActiveButtonGroup, getPageData} = select('redux-templates/sectionslist');\n return {\n pageData: getPageData(),\n tourActiveButtonGroup: getTourActiveButtonGroup()\n };\n})(SingleItem);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import {__} from '@wordpress/i18n';\nimport {compose} from '@wordpress/compose';\nimport {withDispatch, withSelect} from '@wordpress/data';\nimport {ModalManager} from '../../modal-manager';\nimport ChallengeDot from '~redux-templates/challenge/tooltip/ChallengeDot';\nexport function TabHeader(props) {\n const { activeItemType, searchContext, activeCollection, isChallengeOpen } = props;\n const { setActiveItemType, setSearchContext, setChallengeOpen, clearSearch } = props;\n\n const isActive = (itemType) => {\n return (activeItemType === itemType) ? 'active' : '';\n }\n\n const onSearchContextUpdate = (e) => {\n if (activeItemType !=='saved') setSearchContext(e.target.value);\n }\n\n const changeTab = (tabName) => {\n if (document.getElementById('modalContent')) document.getElementById('modalContent').scrollTop = 0;\n setActiveItemType(tabName);\n }\n\n const closeModal = () => {\n if (isChallengeOpen === false) {\n ModalManager.close();\n }\n }\n\n return (\n <div className=\"redux-templates-builder-modal-header\">\n <div className=\"template-search-box\">\n {\n ((activeItemType !== 'collection' || activeCollection === null) && activeItemType !== 'saved') &&\n <div>\n <input type=\"text\" placeholder={__('Search for a template', redux_templates.i18n)} className=\"form-control\" value={searchContext} onChange={onSearchContextUpdate} />\n <ChallengeDot step={1} />\n <i className=\"fas fa-search\" />\n </div>\n }\n </div>\n\n <div className=\"redux-templates-template-list-header\" data-tut=\"tour__navigation\">\n <button className={ isActive('section') } onClick={e => changeTab('section')}> {__('Sections', redux_templates.i18n)} </button>\n <button className={ isActive('page') } onClick={e => changeTab('page')}> {__('Templates', redux_templates.i18n)} </button>\n <button className={ isActive('collection') } onClick={e => changeTab('collection')}> {__('Template Kits', redux_templates.i18n)} </button>\n <button className={ isActive('saved') } onClick={e => changeTab('saved')}> {__('Saved', redux_templates.i18n)} </button>\n <ChallengeDot step={0} />\n <button className=\"redux-templates-builder-close-modal\" onClick={closeModal} >\n\t\t\t\t\t<svg width=\"24\" height=\"24\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" role=\"img\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M13 11.9l3.3-3.4-1.1-1-3.2 3.3-3.2-3.3-1.1 1 3.3 3.4-3.5 3.6 1 1L12 13l3.5 3.5 1-1z\"></path></svg>\n </button>\n </div>\n </div>\n );\n}\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n setActiveItemType,\n setSearchContext,\n clearSearch\n } = dispatch('redux-templates/sectionslist');\n\n return {\n setActiveItemType,\n setSearchContext,\n clearSearch\n };\n }),\n\n withSelect((select, props) => {\n const { getActiveItemType, getSearchContext, getActiveCollection, getChallengeOpen } = select('redux-templates/sectionslist');\n return { activeItemType: getActiveItemType(), searchContext: getSearchContext(), activeCollection: getActiveCollection(), isChallengeOpen: getChallengeOpen() };\n })\n\n])(TabHeader);\n","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M38 12H12v26h26V12z\"\n});\n\nvar SvgViewFew = function SvgViewFew(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgViewFew;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.5 12.5H0V0h12.5v12.5zM31.2 0H18.8v12.5h12.5V0zM50 0H37.5v12.5H50V0zM12.5 18.8H0v12.5h12.5V18.8zm18.7 0H18.8v12.5h12.5V18.8zm18.8 0H37.5v12.5H50V18.8zM12.5 37.5H0V50h12.5V37.5zm18.7 0H18.8V50h12.5V37.5zm18.8 0H37.5V50H50V37.5z\"\n});\n\nvar SvgViewMany = function SvgViewMany(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgViewMany;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21.1 5.3H5.3v15.8h15.8V5.3zm23.6 0H28.9v15.8h15.8V5.3zM21.1 28.9H5.3v15.8h15.8V28.9zm23.6 0H28.9v15.8h15.8V28.9z\"\n});\n\nvar SvgViewNormal = function SvgViewNormal(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 50 50\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgViewNormal;","const {__} = wp.i18n;\nconst {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {useState, useEffect} = wp.element;\nimport ChallengeDot from '~redux-templates/challenge/tooltip/ChallengeDot';\nimport {Button} from '@wordpress/components'\nimport SVGViewFew from './images/view-few.svg'\nimport SVGViewMany from './images/view-many.svg'\nimport SVGViewNormal from './images/view-normal.svg'\nimport {reloadLibrary} from '~redux-templates/stores/actionHelper';\nimport './style.scss'\n\nfunction TemplateListSubHeader(props) {\n const {itemType, sortBy, activeCollection, challengePassed, pageData, columns, loading} = props;\n const {setSortBy, setColumns, setChallengeOpen, setChallengeListExpanded} = props;\n const [triggerTourClassname, setTriggerTourClassname] = useState('far fa-question-circle tour-icon');\n\n useEffect(() => {\n setTriggerTourClassname(challengePassed ? 'fas fa-trophy tour-icon' : 'fas fa-map-signs tour-icon');\n }, [challengePassed]);\n\n const itemTypeLabel = () => {\n if (itemType === 'section') return __('Sections', redux_templates.i18n);\n if (itemType === 'page') return __('Templates', redux_templates.i18n);\n if (itemType === 'collection' && activeCollection === null) return __('Template Kits', redux_templates.i18n);\n if (itemType === 'collection' && activeCollection !== null) return __('Sections', redux_templates.i18n);\n };\n\n const dataLength = pageData ? pageData.length : '';\n\n let pageTitle = '';\n if (loading === false && dataLength && dataLength !== 0) {\n pageTitle = <span>{dataLength} {itemTypeLabel()}</span>;\n }\n\n return (\n <div className=\"redux-templates-template-list-sub-header\">\n <h4>\n {pageTitle}\n <ChallengeDot step={3} />\n </h4>\n <div className=\"redux-templates-template-filters\">\n <Button\n icon={<i className={triggerTourClassname} />}\n label={__('Take the Redux Challenge', redux_templates.i18n)}\n onClick={() => {setChallengeOpen(true); setChallengeListExpanded(true); }}\n />\n <Button\n icon=\"image-rotate\"\n label={__('Refresh Library', redux_templates.i18n)}\n className=\"refresh-library\"\n onClick={reloadLibrary}\n />\n <Button\n icon={<SVGViewFew width=\"18\" height=\"18\"/>}\n className={columns === 'large' ? 'is-active' : ''}\n label={__('Large preview', redux_templates.i18n)}\n onClick={() => setColumns('large')}\n />\n <Button\n icon={<SVGViewNormal width=\"18\" height=\"18\"/>}\n className={columns === '' ? 'is-active' : ''}\n label={__('Medium preview', redux_templates.i18n)}\n onClick={(e) => setColumns('')}\n />\n <Button\n icon={<SVGViewMany width=\"18\" height=\"18\"/>}\n className={columns === 'small' ? 'is-active' : ''}\n label={__('Small preview', redux_templates.i18n)}\n onClick={(e) => setColumns('small')}\n />\n <div className=\"\">\n <select name=\"sortBy\" id=\"sortBy\" value={sortBy} onChange={(e) => setSortBy(e.target.value)}>\n <option value=\"name\">{__('Name', redux_templates.i18n)}</option>\n {/*<option value=\"popularity\">{__('Popularity', redux_templates.i18n)}</option>*/}\n <option value=\"updated\">{__('Updated', redux_templates.i18n)}</option>\n </select>\n </div>\n </div>\n </div>\n );\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {setLibrary, setActivePriceFilter, setActiveCollection, setSortBy, setColumns, setChallengeOpen, setChallengeListExpanded} = dispatch('redux-templates/sectionslist');\n return {\n setLibrary,\n setActivePriceFilter,\n setActiveCollection,\n setSortBy,\n setColumns,\n setChallengeOpen,\n setChallengeListExpanded\n };\n }),\n\n withSelect((select, props) => {\n const {fetchLibraryFromAPI, getActiveItemType, getColumns, getPageData, getActiveCollection, getStatistics, getSortBy, getLoading, getChallengePassed} = select('redux-templates/sectionslist');\n return {\n fetchLibraryFromAPI,\n itemType: getActiveItemType(),\n pageData: getPageData(),\n columns: getColumns(),\n statistics: getStatistics(),\n sortBy: getSortBy(),\n activeCollection: getActiveCollection(),\n loading: getLoading(),\n challengePassed: getChallengePassed()\n };\n })\n])(TemplateListSubHeader);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/**\n * WordPress dependencies.\n */\nconst { __ } = wp.i18n;\n\nconst {\n\tFragment,\n\tuseEffect,\n\tuseRef\n} = wp.element;\n\nconst CSSEditor = ({\n\t attributes,\n\t setAttributes,\n\t clientId\n }) => {\n\tuseEffect( () => {\n\t\tlet classes = getClassName();\n\n\t\tif ( attributes.customCSS ) {\n\t\t\tconst generatedCSS = ( attributes.customCSS ).replace( /.ticss-[a-zA-Z0-9_-]*/g, 'selector' );\n\t\t\tcustomCSSRef.current = generatedCSS;\n\t\t} else {\n\t\t\tcustomCSSRef.current = 'selector {\\n}\\n';\n\t\t}\n\n\t\teditorRef.current = wp.CodeMirror( document.getElementById( 'redux-css-editor' ), {\n\t\t\tvalue: customCSSRef.current,\n\t\t\tautoCloseBrackets: true,\n\t\t\tcontinueComments: true,\n\t\t\tlineNumbers: true,\n\t\t\tlineWrapping: true,\n\t\t\tmatchBrackets: true,\n\t\t\tlint: true,\n\t\t\tgutters: [ 'CodeMirror-lint-markers' ],\n\t\t\tstyleActiveLine: true,\n\t\t\tstyleActiveSelected: true,\n\t\t\textraKeys: {\n\t\t\t\t'Ctrl-Space': 'autocomplete',\n\t\t\t\t'Alt-F': 'findPersistent',\n\t\t\t\t'Cmd-F': 'findPersistent'\n\t\t\t}\n\t\t});\n\n\t\teditorRef.current.on( 'change', () => {\n\t\t\tconst regex = new RegExp( 'selector', 'g' );\n\t\t\tconst generatedCSS = editorRef.current.getValue().replace( regex, `.${ classArRef.current }` );\n\t\t\tcustomCSSRef.current = generatedCSS;\n\n\t\t\tif ( ( 'selector {\\n}\\n' ).replace( /\\s+/g, '' ) === customCSSRef.current.replace( /\\s+/g, '' ) ) {\n\t\t\t\treturn setAttributes({ customCSS: null });\n\t\t\t}\n\n\t\t\tsetAttributes({ customCSS: customCSSRef.current });\n\t\t});\n\t}, []);\n\n\tuseEffect( () => {\n\t\tlet classes = getClassName();\n\n\t\tsetAttributes({\n\t\t\thasCustomCSS: true,\n\t\t\tclassName: classes\n\t\t});\n\t}, [ attributes ]);\n\n\tconst getClassName = () => {\n\t\tlet classes;\n\n\t\tconst uniqueId = clientId.substr( 0, 8 );\n\n\t\tif ( null !== customCSSRef.current && ( 'selector {\\n}\\n' ).replace( /\\s+/g, '' ) === customCSSRef.current.replace( /\\s+/g, '' ) ) {\n\t\t\treturn attributes.className;\n\t\t}\n\n\t\tif ( attributes.className ) {\n\t\t\tclasses = attributes.className;\n\n\t\t\tif ( ! classes.includes( 'ticss-' ) ) {\n\t\t\t\tclasses = classes.split( ' ' );\n\t\t\t\tclasses.push( `ticss-${ uniqueId }` );\n\t\t\t\tclasses = classes.join( ' ' );\n\t\t\t}\n\n\t\t\tclassArRef.current = classes.split( ' ' );\n\t\t\tclassArRef.current = classArRef.current.find( i => i.includes( 'ticss' ) );\n\t\t} else {\n\t\t\tclasses = `ticss-${ uniqueId }`;\n\t\t\tclassArRef.current = classes;\n\t\t}\n\n\t\treturn classes;\n\t};\n\n\tconst editorRef = useRef( null );\n\tconst customCSSRef = useRef( null );\n\tconst classArRef = useRef( null );\n\n\treturn (\n\t\t<Fragment>\n\t\t\t<p>{ __( 'Add your custom CSS.' ) }</p>\n\n\t\t\t<div id=\"redux-css-editor\" className=\"redux-css-editor\"/>\n\n\t\t\t<p>{ __( 'Use' ) } <code>selector</code> { __( 'to target block wrapper.' ) }</p>\n\t\t\t<p>{ __( '' ) }</p>\n\t\t\t<p>{ __( 'Example:' ) }</p>\n\n\t\t\t<pre className=\"redux-css-editor-help\">\n\t\t\t\t{ 'selector {\\n background: #000;\\n}\\n\\nselector img {\\n border-radius: 100%;\\n}'}\n\t\t\t</pre>\n\n\t\t\t<p>{ __( 'You can also use other CSS syntax here, such as media queries.' ) }</p>\n\t\t</Fragment>\n\t);\n};\n\nexport default CSSEditor;\n","/**\n * WordPress dependencies.\n */\nconst { assign } = lodash;\n\nconst { __ } = wp.i18n;\n\nconst { hasBlockSupport } = wp.blocks;\n\nconst { PanelBody } = wp.components;\n\nconst { createHigherOrderComponent } = wp.compose;\n\nconst { InspectorControls } = wp.blockEditor || wp.editor;\n\nconst { Fragment } = wp.element;\n\nconst { addFilter, removeFilter } = wp.hooks;\n\n/**\n * Internal dependencies.\n */\nimport './style.scss';\n\nimport CSSEditor from './editor.js';\n\nimport './inject-css.js';\n\nconst addAttribute = ( settings ) => {\n\tif ( hasBlockSupport( settings, 'customClassName', true ) ) {\n\t\tsettings.attributes = assign( settings.attributes, {\n\t\t\thasCustomCSS: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: false\n\t\t\t},\n\t\t\tcustomCSS: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: null\n\t\t\t}\n\t\t});\n\t}\n\n\treturn settings;\n};\n\nconst withInspectorControls = createHigherOrderComponent( ( BlockEdit ) => {\n\treturn ( props ) => {\n\t\tconst hasCustomClassName = hasBlockSupport( props.name, 'customClassName', true );\n\t\tif ( hasCustomClassName && props.isSelected ) {\n\t\t\treturn (\n\t\t\t\t<Fragment>\n\t\t\t\t\t<BlockEdit { ...props } />\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody\n\t\t\t\t\t\t\ttitle={ __( 'Custom CSS' ) }\n\t\t\t\t\t\t\ticon={<i className={'fa fa'}></i>}\n\t\t\t\t\t\t\tinitialOpen={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<CSSEditor\n\t\t\t\t\t\t\t\tclientId={ props.clientId }\n\t\t\t\t\t\t\t\tsetAttributes={ props.setAttributes }\n\t\t\t\t\t\t\t\tattributes={ props.attributes }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t</Fragment>\n\t\t\t);\n\t\t}\n\n\t\treturn <BlockEdit { ...props } />;\n\t};\n}, 'withInspectorControl' );\n\n// Remove block-css fields.\nremoveFilter( 'blocks.registerBlockType', 'themeisle-custom-css/attribute' );\nremoveFilter( 'editor.BlockEdit', 'themeisle-custom-css/with-inspector-controls' );\n\naddFilter( 'blocks.registerBlockType', 'redux-custom-css/attribute', addAttribute );\naddFilter( 'editor.BlockEdit', 'redux-custom-css/with-inspector-controls', withInspectorControls );\n\n","/**\n * WordPress dependencies.\n */\nconst { __ } = wp.i18n;\n\nconst { parse } = wp.blocks;\n\nconst {\n\tselect,\n\tsubscribe\n} = wp.data;\n\nconst addStyle = style => {\n\tlet element = document.getElementById( 'redux-css-editor-styles' );\n\n\tif ( null === element ) {\n\t\telement = document.createElement( 'style' );\n\t\telement.setAttribute( 'type', 'text/css' );\n\t\telement.setAttribute( 'id', 'redux-css-editor-styles' );\n\t\tdocument.getElementsByTagName( 'head' )[0].appendChild( element );\n\t}\n\n\tif ( element.textContent === style ) {\n\t\treturn null;\n\t}\n\n\treturn element.textContent = style;\n};\n\nlet style = '';\n\nconst cycleBlocks = ( blocks, reusableBlocks ) => {\n\tblocks.forEach( block => {\n\t\tif ( block.attributes.hasCustomCSS ) {\n\t\t\tif ( block.attributes.customCSS && ( null !== block.attributes.customCSS ) ) {\n\t\t\t\tstyle += block.attributes.customCSS + '\\n';\n\t\t\t}\n\t\t}\n\n\t\tif ( 'core/block' === block.name && null !== reusableBlocks ) {\n\t\t\tlet reBlocks = reusableBlocks.find( i => block.attributes.ref === i.id );\n\t\t\tif ( reBlocks ) {\n\t\t\t\treBlocks = parse( reBlocks.content.raw );\n\t\t\t\tcycleBlocks( reBlocks, reusableBlocks );\n\t\t\t};\n\t\t}\n\n\t\tif ( undefined !== block.innerBlocks && 0 < ( block.innerBlocks ).length ) {\n\t\t\tcycleBlocks( block.innerBlocks, reusableBlocks );\n\t\t}\n\t});\n};\n\nconst subscribed = subscribe( () => {\n\tstyle = '';\n\tconst { getBlocks } = select( 'core/block-editor' ) || select( 'core/editor' );\n\tconst blocks = getBlocks();\n\tconst reusableBlocks = select( 'core' ).getEntityRecords( 'postType', 'wp_block' );\n\tcycleBlocks( blocks, reusableBlocks );\n\taddStyle( style );\n});\n","\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./editor.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./editor.scss\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./editor.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.5 19.8v-.2V10c0-.2.1-.2.2-.3 1.7-.7 3.5-1.4 5.2-2.2 1.3-.5 2.6-1.1 3.8-1.6.3-.1.3-.1.3.2v9.1c0 .1 0 .2-.2.3-.9.4-1.9.9-2.8 1.3-.8.4-1.7.8-2.5 1.2-1 .5-1.9.9-2.9 1.4-.3.1-.7.2-1.1.4zm1-5.4v3.7c0 .2 0 .2.2.1 2.4-1.1 4.7-2.2 7.1-3.4.1-.1.2-.1.2-.3V7.4c0-.2 0-.2-.2-.1-2.4 1-4.7 2-7.1 3-.1.1-.2.1-.2.2v3.9zM19.4 4.2c-1-.4-2-.9-3-1.3-1.2-.5-2.4-1-3.7-1.6C11.8 1 10.9.6 10 .2c-.1 0-.1-.1-.2 0-.6.3-1.1.5-1.7.7-.7.3-1.4.7-2.1 1-.7.3-1.5.6-2.2 1-.7.3-1.3.6-2 .9-.6.1-1.1.3-1.7.6.2.1.4.2.6.2 1.9.8 3.8 1.6 5.7 2.5 1.1.4 2.2.9 3.2 1.4.1.1.2.1.4 0 .4-.2.8-.3 1.1-.5 1.5-.6 3-1.3 4.5-1.9 1.1-.5 2.2-.9 3.4-1.4.2-.1.5-.2.7-.3-.1-.1-.2-.1-.3-.2zm-5.9-.8h-1.1c-.1 0-.2 0-.2.2 0 .5 0 .5.5.5h.7c.1 0 .1 0 .1.1v.5c0 .1 0 .1-.1.1h-1c-.1 0-.2 0-.2.2v1c0 .1 0 .1-.1.1h-.6c-.1 0-.1 0-.1-.1v-.5c-.3.3-.5.4-.8.5-.3 0-.6 0-.9-.1 0 0-.1-.1-.2 0h-.1c-.2.1-.4.1-.6.1-.1 0-.2 0-.2-.1-.2-.4-.2-.4-.6-.4h-.6c-.1 0-.1 0-.2.1-.1.4-.1.4-.5.4h-.3c-.1 0-.2 0-.1-.1.3-.7.6-1.4.9-2.2.1-.3.3-.6.4-1 0-.1.1-.1.2-.1.4 0 .4 0 .6.4.1.2.2.5.3.7.3-.6.7-.9 1.3-1 .6-.1 1.1.1 1.6.5v-.4c0-.1 0-.1.1-.1h1.9c.1 0 .1 0 .1.1v.5c0 .1-.1.1-.2.1zM9.5 10c0-.1 0-.2-.1-.2-.3-.1-.5-.2-.7-.3-2.4-1-4.7-2-7.1-3-.5-.2-1-.4-1.6-.7v9.4c0 .1 0 .2.1.2.2.1.3.1.5.2L3 16.8c1.3.6 2.5 1.2 3.8 1.8.8.4 1.7.8 2.5 1.2.2.1.2.1.2-.1v-7V10zm-1.2 8.2c-2.4-1.1-4.8-2.3-7.2-3.4-.1 0-.1 0-.1-.1V7.5c0-.1 0-.2.2-.1l7.2 3c.1 0 .1.1.1.2v7.6c0 .1 0 .1-.2 0z\"\n});\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.4 4.3c0 .1 0 .1 0 0 0 .2 0 .3-.2.3-.1 0-.2 0-.2.2-.2.4-.6.6-1 .5-.5-.2-.8-.5-.8-1 0-.4.3-.8.7-.9.4-.1.8.1 1 .5 0 .1.1.1.2.1.3.1.3.1.3.3zM7.8 4c.1 0 .1 0 0 0 .2.3.3.5.3.7h-.6c.2-.2.3-.5.3-.7zM7.6 15.5v.1c.1.2.1.3-.1.5v.1c.1.1.1.2.1.4v.1h-.1c-.1-.1-.3-.2-.3-.3v-.2c.1.1.1.3.3.3 0-.1-.1-.3-.3-.4 0 0-.1 0-.1-.1-.1-.1-.2 0-.2.1 0 .2.1.3.4.4.1 0 .1 0 .1.1v.1c.1 0 .2.1.2.1s.1.1 0 .1h-.1c-.4-.2-.8-.4-1.3-.6l-.1-.1c0-.3-.2-.5-.4-.6-.1-.1-.3-.1-.4 0l-.1.1h.1c.4.1.7.2.7.5v.1s-.1 0-.1-.1c-.1-.2-.2-.3-.4-.3 0 .1 0 .1.1.1h.1v.1h-.1c-.2-.1-.3-.1-.5-.2-.1-.1-.1-.1 0-.2l.1-.1c-.1 0-.2-.1-.3 0l-.1.1c-.1.2-.2.1-.2 0-.2-.4-.2-.4-.4-.5 0 .1.1.2.1.3 0 .1 0 .1-.1.1s-.1 0-.2-.1c-.1 0-.2 0-.1-.2s-.2-.3-.3-.3c0 0-.1.1-.1 0v-.1c0-.1 0-.1.1-.1.2 0 .3.1.4.2 0 .1.1.1.1.2h.1v-.1c-.1-.3-.4-.5-.7-.5-.1 0-.2 0-.2.2 0 .1 0 .1-.1.1-.4-.2-.9-.4-1.3-.6 0 0-.1 0-.1-.1s.1 0 .1 0c.1 0 .2.2.2 0 0 0 .1 0 .1.1.1.1.1.1.2 0 .1 0 .1-.1.1-.2-.1-.2-.2-.3-.5-.4-.1 0-.1 0-.2.1v.1H2s0-.1.1-.1v.1c0 .1-.1.1-.2.1h-.3c-.1 0-.1-.3 0-.3.1-.1.1-.2 0-.3-.1-.1-.1-.3-.1-.4 0-.1 0-.1.1-.1s0 .1 0 .1c-.1.2 0 .4.2.6.1.1.2.1.3.2.1.1.2.2.2.4 0 .1 0 .1.1.1.1.1.2.2.2.4 0 .1.1.1.1 0 .1-.2.3-.2.5-.2 0-.1 0-.1-.1-.1-.5-.5-.9-1.1-1.2-1.7-.2-.5-.3-1-.2-1.6 0-.1.1-.2.1-.3 0-.1 0-.2-.1-.2-.2-.1-.3-.3-.4-.5V10c.1-.3 0-.6.1-1 0-.1 0-.1.1-.1.5.1.5.2.5.3v.6c0 .1.1.2.2.2s.2.1.3 0v-.1c0-.1-.1-.2-.2-.2s-.1 0-.1-.1c.2 0 .5.2.4.4 0 .1-.2.2-.3.1 0 0-.1-.1-.1 0-.1 0-.2-.1-.2 0v.3l.1.1c.2.2.2.2.4 0l.1-.1c.3-.3.3-.4.1-.8 0-.1-.1-.2-.2-.4.1 0 .1.1.2.1.1.3.3.5.6.6.1.1.2.1.3 0-.1-.1-.2-.1-.4-.2s-.4-.3-.4-.5H3c0 .1.2.2.3.4.1-.1.1-.2.1-.2.1 0 .1-.1.2 0s0 .1 0 .1c-.1.1-.1.3 0 .4.1.1.2.1.4 0 .2-.2.4-.2.6 0 .1.1.2.2.4.2s.4.2.5.4c.1.1.1.2.2.3 0 .1.1.2.2.2 0 0 .1 0 .2-.1s0-.2-.1-.2v-.1s.1 0 .1.1.1.1.1.2c0 .2.1.2.2.1h.2c.1 0 .2.1.1.2 0 .1-.1.1-.2.1s-.2-.1-.4-.1c-.1 0-.1-.1-.2 0 0 .1 0 .1.1.1.2.2.4.2.7.1.1 0 .1-.1.2 0 0 .1 0 .1-.1.1-.2.2-.2.5-.1.8l.3.6c.1 0 .2.1.4.1.1 0 .2 0 .2-.2 0-.1 0-.2-.1-.2-.1.1.1.2-.1.3-.1 0-.2 0-.2-.1s-.1-.2 0-.2c.1-.1.1.1.3.1 0-.1-.2-.2-.3-.2-.2-.2-.3-.3-.3-.5s.1-.2.3-.2c.1 0 .1.1.2.1v.1h-.1c-.1 0-.2-.2-.2 0-.1.1 0 .2.1.3.1.1.2.1.3.2.1.1.1 0 .1-.1v-.6-.1c.1 0 .1.1.1.1V13c0 .1-.2.2-.3.2 0 0-.1-.1-.1 0v.1c.2.4.2.8.1 1.2-.1.6-.4 1.1-1.1 1.2-.1 0-.2.1-.4 0 .3.2.5.4.6.7 0 .1.1.1.1 0s.1-.2.2-.1c.1 0 .1 0 .1-.1.1-.2.2-.2.3-.1.2.1.4.1.5-.1.1-.1 0-.2-.1-.3-.1-.2-.1-.2 0-.2zm-3.9-4.4c-.1-.1-.1 0-.2 0-.2.2-.4.4-.3.7.2-.1.4-.2.5-.3.1 0 .1-.1.1 0s0 .1-.1.1c-.1.1-.3.1-.4.2-.1.2-.2.2-.1.4 0 0 0 .1.1.1.5.7.9 1.4 1.4 2 .1.1.2.1.3.1.5-.2.9-.5 1.4-.7.1-.1.1-.1 0-.2-.2-.3-.4-.5-.6-.8 0 0-.1 0 0-.1h.1c0 .1.1.3.2.4.1.1.2.3.3.4 0-.5-.2-.8-.4-1.2h.1c.2.4.4.8.5 1.3v.1c.1 0 .1-.1.2-.1s0-.1 0-.1c-.1-.2-.1-.4-.2-.5-.1-.2-.2-.5-.4-.7-.1-.2-.1-.2-.2-.1s-.2.1-.3.2c0 0-.1.1-.1 0v-.1l.2-.2c.2-.1.2-.2.1-.4l-.6-.6c-.1-.1-.2-.2-.4-.1h-.1c.2.1.4.3.6.4.3.2.4.4.4.5-.3-.2-.5-.5-.9-.7.2.2.3.4.4.6 0 0 .1.1 0 .1h-.1c-.1-.2-.3-.4-.4-.6-.1-.1-.1-.1-.2-.1-.1.1-.2.1-.3.2 0 0-.1.1-.1 0s0-.1.1-.1c.1-.1.3-.1.4-.2-.1 0-.1 0-.2-.1-.2 0-.4-.1-.7-.1-.1.2-.1.2-.1.3zm2.8 2.7c-.5.2-1 .5-1.5.7 0 0-.1 0 0 0 0 0 0 .1.1.1.3.1.6.1.9-.1.2-.1.5-.3.5-.7zm-3.4-1.5c0 .2 0 .4.1.5.2.6.6 1.1 1.2 1.5h.1v-.1c-.2-.2-.3-.4-.5-.6-.3-.4-.6-.9-.9-1.3zm-.2-2.4c.1.3-.1.4-.2.6-.2.2-.3.5-.4.7 0 .2.1.2.2.2s.1-.1.1-.2c.1-.3.2-.5.4-.7.1-.1.1-.2.1-.3 0 0-.1-.1-.2-.3zm4.3 3.8c0-.4-.1-.7-.3-1.1-.1-.3-.4-.6-.3-1-.3.1-.3.2-.2.5.2.3.4.7.4 1.1.1.3.2.5.4.5zM3 9.9c0 .1.1.1.1.2.1.2.3.3.5.3h.7c.1 0 .2 0 .2-.1s-.1-.1-.2-.1c-.2-.1-.4-.1-.6-.1-.2 0-.4 0-.7-.2zm3.6 3.8c-.1.4-.1.7-.4.9-.1 0-.2.1-.2.1 0 .1.2.1.2.1.1 0 .1.1.2 0 .2-.1.3-.3.3-.5 0-.1.1-.2.1-.3 0 0-.1-.1-.2-.3zM3 12c-.1 0-.1.1-.2.1s-.1.1-.1.1c.1.3.2.7.4 1 .1.2.3.3.5.4-.4-.5-.6-1-.6-1.6zm3.5-.5c-.2-.1-.4-.1-.6-.3-.2-.3-.5-.5-.8-.7 0 0-.1-.1-.1 0v.1c.1.2.2.2.3.3.2.2.5.4.7.6.2.3.3.2.5 0zm-1.7 3.3c0 .2.1.3.2.2h.2c.5 0 .9.1 1.3.4h.2c.1-.1 0-.1-.1-.1-.2-.2-.5-.3-.8-.3-.3-.1-.5 0-.8-.1-.1-.2-.2-.2-.2-.1zm-1.9-1.4c0 .2.2.2.3.3.5.2.8.5 1.2.9.1.1.2.3.3.4 0-.4 0-.4-.2-.5-.2-.1-.4-.3-.6-.5-.2-.2-.5-.4-.8-.5-.1-.1-.1-.1-.2-.1zm.1-.1c-.2-.4-.3-.7-.4-1.1 0-.1-.1-.2-.2-.3h-.1c0 .1 0 .2.1.3 0 .3.2.6.3.9.1.2.2.2.3.2zm4.2 1c.1-.1-.1-.1-.2-.2-.1 0-.1.1-.1.1-.1.2-.2.5-.3.6-.1.2-.1.2 0 .2s.2.2.2.1c.2-.2.4-.5.4-.8zm-2.6-3.4c-.1-.1-.1-.3-.3-.3-.2-.1-.5-.1-.7-.1 0 0-.1 0-.1.1v.3c0 .1.1.1.2 0 .2-.1.4-.1.5 0h.4zm-1.7 1c0-.1.1-.1.1-.2 0-.3.2-.5.4-.7.1 0 .1-.1.1-.1 0-.1-.3-.2-.4-.1-.2.1-.3.3-.4.6 0 .1-.1.2 0 .3.1 0 .2.1.2.2zm2.6 3.3c.2 0 .5.1.7.2.1 0 .2.1.2 0s-.1-.1-.1-.1h-.1c-.4-.2-.8-.3-1.2-.1 0-.1 0 0 0 0s0 .1.1 0h.4zm-2.4-1.4c0 .1.1.2.2.3.5.2.8.5 1.1.9 0 0 0 .1.1.1V15c-.3-.6-.8-1-1.4-1.2zm1.8-3.1v-.4c0-.1-.1-.1-.1-.1h-.1c-.1.2-.1.3 0 .5 0 .1.1.1.2.1s0 0 0-.1zm.3 4.7c.3.1.6.2.9.1-.3-.2-.6-.2-.9-.1zm-2.4-3.6c0-.1-.2-.3-.4-.3l-.1.1.3.3c.2.1.2.1.2-.1zM7.1 14h.1v-.1c-.1-.1-.1-.2-.2-.2h-.2v.2s.1.1.3.1zm-3.6.3c.1.2.6.6.8.6-.1-.2-.6-.6-.8-.6zm1.2.8c-.1 0-.1.1-.1.2s.1.3.2.3c0 0 .1-.1.1-.2 0-.2-.1-.3-.2-.3zM4.1 10c.1 0 .3.1.4.1h.1V10c-.2-.2-.4-.2-.5 0zm1.3.6c0-.2-.2-.4-.4-.4h-.1v.1c.2.1.3.2.5.3z\"\n});\n\nvar _ref3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2 11.8c-.1 0-.1-.1-.1-.2v-.8-.1H2c0 .1.2.1.2.2-.2-.1-.2 0-.2.2v.7zM7.7 13.9v.5s0 .1-.1.1 0 0 0-.1v-.7c0-.1 0-.2-.1-.3l-.1-.1c0-.1.1 0 .1 0 .2 0 .2.1.2.3v.3zM2.2 10.2c.1 0 .2.1.2.2s0 .1-.1.1-.2-.1-.2-.2c-.1-.1 0-.1.1-.1zM7.2 11.4c.1 0 .3.3.2.4 0 0 0 .1-.1 0 0 0-.1-.1-.1-.4 0 .1 0 0 0 0zM6 10.7c0 .1.1.1 0 .2h-.2c-.1-.1-.1-.1-.1-.2s.1-.1.2-.1l.1.1zM2.9 9.2c-.1-.1-.2-.2-.4-.3 0 0-.1 0 0-.1h.1c.2.2.4.3.6.4v.1c-.1 0-.2-.1-.3-.1zM2.1 9.2c0-.1.1-.2.1-.2.1 0 .2.1.2.2s-.1.1-.2.1c-.1.1-.1 0-.1-.1zM7.1 11.1c-.1 0-.2-.1-.3-.1-.1-.1-.3-.1-.4-.2 0 0-.1 0 0-.1h.1c.1.1.3.2.6.4 0-.1 0-.1 0 0zM7.7 11.4v.1c-.1 0-.1-.1-.1-.1 0-.1-.2-.2-.3-.2 0 0-.1 0-.1-.1s.1 0 .1 0c.1.1.2.1.2.1l.2.2zM3.9 9.8s0 .1 0 0c-.2.1-.3 0-.3-.1s0-.1.1-.1.2 0 .2.2zM2.4 8.8c-.1 0-.2 0-.2-.1-.1 0-.2 0-.2.1h-.1v-.1-.2c.1-.1.1 0 .1 0 .2.2.3.2.4.3zM7.4 15.7c-.2 0-.3-.1-.4-.1v-.1h.1c.1 0 .2.1.3.2zM7.6 15.5c-.1-.1-.2-.1-.3-.2 0 0-.1 0 0-.1 0-.1.1 0 .1 0 .1 0 .2.1.3.1-.1.1 0 .2-.1.2zM2.2 13.1c.1.1.2.1.3.2 0 0 .1 0 0 .1h-.1s-.2-.1-.2-.3c-.1.1-.1.1 0 0-.1.1-.1.1 0 0zM2.3 12.9c0 .1 0 .1 0 0-.2 0-.3-.1-.4-.1v-.1c.2.1.3.1.4.2zM14.1 16.3c-.6 0-1-.1-1.5-.5-.3-.3-.5-.6-.6-.9 0-.3-.1-.6 0-.9 0-.6.2-1.1.4-1.6s.5-.9.8-1.3c.4-.4.8-.8 1.3-1.1.4-.3.9-.5 1.3-.6.9-.2 1.7-.1 2.3.7.2.3.3.6.4 1v.5c0 .7-.2 1.4-.5 2-.3.7-.8 1.3-1.4 1.8-.5.5-1.2.8-1.9 1-.2-.1-.4-.1-.6-.1zm4.3-4.9c0-.5-.2-1.1-.8-1.5-.4-.3-.9-.4-1.3-.4-.3 0-.6.1-.8.2-.5.2-.9.4-1.3.7-.4.3-.8.7-1.1 1.1-.4.5-.6 1-.8 1.6-.1.5-.2 1.1 0 1.6.3.9.9 1.3 1.7 1.4.4.1.7 0 1.1-.1.7-.2 1.2-.6 1.7-1 .4-.4.8-.8 1.1-1.3.2-.7.5-1.3.5-2.3zM4.5 12.7c0 .2 0 .4.2.6.1.1.2.1.3.1.1-.1.1-.2.1-.3-.1-.1-.1-.2-.2-.1 0 0-.1.1-.1 0v-.1l.1-.1c.2.2.3.2.5.1h.1v.1s-.1.1-.2.1-.1 0-.1.1 0 .3-.2.3-.3-.1-.4-.2c-.3-.2-.3-.5-.3-.8v-.1c0-.3.2-.4.5-.2.2.1.3.2.4.4v.1h-.1c-.1-.1-.1-.2-.2-.3-.1-.1-.2-.2-.4-.1-.1 0-.1.2-.1.3.1 0 .1.1.1.1zM6.6 13.3c-.1-.4-.2-.8-.5-1.1.3.1.6.8.5 1.1zM3.7 11.1c.1.1.2.3.3.5-.2-.2-.3-.3-.3-.5zM2.8 11.4c.1-.2.2-.4.4-.6h.1v.1c-.2.2-.3.4-.3.6h-.1c-.1 0 0 0-.1-.1z\"\n});\n\nvar _ref4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13 12.2c.1-.3.3-.5.4-.7.3-.4.6-.7.9-.9.4-.3.8-.5 1.2-.6.5-.1.9-.1 1.3 0 0 0 .1 0 .1.1s-.1.1-.1.1c-.4.3-.4.7-.1 1.1.3.3.3.6.2 1-.1.5-.3 1.1-.4 1.6-.1-.1-.1-.2-.2-.4-.2-.5-.4-1.1-.6-1.6-.1-.1-.1-.3-.2-.4-.1-.1 0-.1.1-.2s.2-.1.3-.2c0 0 .1-.1 0-.1 0-.1-.1 0-.1 0-.3.2-.7.3-1 .4-.1 0-.3.1-.4.1-.1 0-.1.1-.1.2s.1.1.2 0c.2-.1.3 0 .3.2l.3.6c.1.1 0 .3 0 .4-.1.2-.1.5-.2.7-.1.3-.2.6-.3 1-.2-.3-.3-.6-.4-.9l-.6-1.5c0-.1 0-.2.1-.2s.2-.1.2-.1v-.1c0-.1-.1 0-.1 0-.2.2-.5.3-.8.4z\"\n});\n\nvar _ref5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.3 13.1c.3.6.5 1.2.8 1.9v.1c-.4.3-.9.5-1.4.6-.2 0-.2 0-.2-.2.2-.6.4-1.3.6-1.9.1-.1.1-.3.2-.5zM14.1 15.7c-.5-.1-.9-.2-1.1-.6-.4-.5-.5-1-.4-1.6 0-.2.1-.4.1-.7 0 0 0-.1.1-.1l.1.1c.2.4.4.8.5 1.2.2.6.4 1.1.7 1.7zM16.7 14.6c.1-.4.2-.8.4-1.2l.6-1.8c.1-.3.2-.6.1-.9.2.2.2.4.3.6.1.5 0 1.1-.1 1.6-.1.4-.4.8-.6 1.2-.4.1-.5.3-.7.5z\"\n});\n\nvar SvgAcfBlocks = function SvgAcfBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 20 20\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2, _ref3, _ref4, _ref5);\n};\n\nexport default SvgAcfBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.4 9l.8 2.1H3.7c0-.2.3-.8.4-1.1l.3-1s0 .1 0 0zm8.7.3h1v1.5h-1c-.1.5-.5 1-1 1.3-1.6 1.1-3.9.1-4-2.1 0-1.3 1-2.3 2.1-2.5 1.3-.2 2.6.6 2.9 1.8zM0 14.5h2.3l.5-1.3c0-.1 0 0 .1-.1H6c0 .2.5 1.2.5 1.3h2.4l-.1-.3c.7.2 1.2.4 2.1.4 1 0 2-.5 2.6-1l.3-.3.3-.3v1.6h2.2v-1.7-1.7h3.5v-2h-3.5v-.8-.8H20V5.4h-5.9V7c-.4-.4-.3-.4-.8-.7-1-.7-2.4-1-3.6-.7-.9.2-1.6.6-2.2 1.2l-.2.2c-.3.2-.7.9-.8 1.3l-.1.1c-.1-.3-.8-1.8-.9-2.3-.1-.2-.2-.5-.3-.7H3.6L0 14.5z\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\"\n});\n\nvar SvgAdvancedCustomFields = function SvgAdvancedCustomFields(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 20 20\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgAdvancedCustomFields;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2 2h5v11H2V2zm6 0h5v5H8V2zm6 0h4v16h-4V2zM8 8h5v5H8V8zm-6 6h11v4H2v-4z\"\n});\n\nvar SvgAdvancedGutenbergBlocks = function SvgAdvancedGutenbergBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgAdvancedGutenbergBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.3 13.9h1.3l.7-1.9h3.3l.7 1.9h1.3l-3-7.8H9.3l-3 7.8zM10 7.8l1.2 3H8.8l1.2-3z\"\n});\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"atomic-blocks_svg__st0\",\n d: \"M18.9 5.7c.4-.5.6-1.2.6-1.9 0-1.9-1.5-3.4-3.3-3.4-.7 0-1.4.2-1.9.6-1.3-.6-2.7-1-4.2-1C4.6 0 .2 4.4.2 9.9s4.4 9.9 9.9 9.9S20 15.4 20 9.9c-.1-1.4-.5-2.9-1.1-4.2zM15.1 2h1.1c.5 0 1.1.3 1.1.9 0 .4-.3.6-.3.6s.5.2.5.8c0 .6-.5 1-1.1 1h-1.2V2zM10 18.2c-4.5 0-8.2-3.7-8.2-8.2 0-4.5 3.7-8.2 8.2-8.2 1.1 0 2.2.2 3.1.6-.2.4-.3.9-.3 1.4 0 1.9 1.5 3.4 3.3 3.4.5 0 1-.1 1.4-.3.4 1 .6 2 .6 3.1.1 4.5-3.6 8.2-8.1 8.2z\"\n});\n\nvar _ref3 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"atomic-blocks_svg__st0\",\n d: \"M16.7 3c0-.3-.2-.4-.5-.4h-.5v.8h.5c.3 0 .5-.1.5-.4zM16.8 4.4c0-.3-.2-.4-.5-.4h-.6v.9h.6c.3-.1.5-.2.5-.5z\"\n});\n\nvar SvgAtomicBlocks = function SvgAtomicBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 20 20\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2, _ref3);\n};\n\nexport default SvgAtomicBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.8 19.5c-.6.1-.8-.4-1-.8-1.5-1.8-3-3.6-4.5-5.3-.4-.5-.8-.9-1.2-1.4-.1-.2-.1-.4-.1-.6.3-1 .7-2 1.1-3 .7-2 1.5-3.9 2.2-5.9.1-.3.2-.4.5-.5 3-.5 5.9-1.1 8.9-1.5.6-.1 1 0 1.4.5 1 1.3 2 2.5 3 3.7.9 1.1 1.8 2.1 2.7 3.2.2.2.3.4.2.7-.5 1.3-.9 2.5-1.4 3.8-.6 1.7-1.2 3.3-1.9 5-.1.3-.2.4-.5.4-2.7.4-5.3.9-8 1.4-.5.1-.9.2-1.4.3zm-2.5-3.4h.9c2.4-.3 4.7-.5 7.1-.8.4 0 .5-.2.6-.6.4-2.1 1.3-4.1 2.7-5.7.2-.2.2-.3 0-.5-.9-1.1-1.9-2.2-2.8-3.4-.2-.2-.3-.2-.6-.1-1.9 1.1-4 1.6-6.2 1.6-.3 0-.5.1-.5.4-.5 1.8-1 3.5-1.6 5.3-.2.8-.5 1.6-.7 2.4 1.1-.8 2.1-1.7 3.1-2.5.5-.4.8-.9.8-1.5 0-.3.1-.6.2-.9.7-1.2 2.3-1 3.1-.4.2.2 0 .2-.1.3-.4.1-.9.3-1.3.4-.3.1-.4.3-.4.6s.1.6.3.8c.2.2.3.3.6.2.4-.2.9-.3 1.3-.4.1 0 .2-.1.3 0 .1.1 0 .2 0 .3-.4 1-1.4 1.7-2.5 1.5-.5-.1-.9 0-1.2.4-.2.2-.4.3-.6.5-.9.6-1.7 1.4-2.5 2.1zm14.5-8.6c-.1-.1-.2-.2-.2-.3-.5-.6-1.1-1.3-1.6-1.9-.8-.9-1.6-1.9-2.4-2.8-.1-.1-.2-.3-.4-.1-.4.4-.9.7-1.3 1.1-.1.1-.1.2 0 .3 1.4 1.6 2.7 3.3 4.1 4.9.1.2.2.2.4 0 .4-.4.8-.7 1.3-1.1-.1 0 0-.1.1-.1z\"\n});\n\nvar SvgBlockOptions = function SvgBlockOptions(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 20 20\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgBlockOptions;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"style\", null, \".block-slider_svg__st0{fill:#6171b5}\");\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"block-slider_svg__st0\",\n d: \"M2.9 16.2c0-1.2.2-2.3.4-3.5 0-.2.1-.5.3-.7.2-.3.5-.6.9-.6.3 0 .3.5.3.7.6 1.7 1.4 3.2 2.7 4.5.4.4.8.7 1.2.9.2.2.5.2.3.5-.1.3-.1.8-.6.8-1.8 0-3.5-.3-5.2-1-.3-.1-.4-.3-.3-.6v-1zM17 3.8c0 1.3-.2 2.6-.5 4-.1.6-.4.8-.9.9-.4.1-.6.1-.6-.4-.2-2-1-3.8-2.4-5.3l-.3-.3c-.2-.2-.7-.3-.5-.7.2-.4.5-.7 1-.7.4 0 .7 0 1.1.1.9.2 1.7.5 2.5.7.4.1.7.4.6.9v.8z\"\n});\n\nvar _ref3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.1 11.4c-1-1.5-2.3-2.7-3.6-4-1-.9-1.8-2-2.3-3.3-.5-1.4-.6-2.8.8-4.1-2.1 0-3.9.6-5.4 1.8-2.4 2-3 4.9-1.3 7.5.5.8 1.1 1.6 1.8 2.4 1.3 1.4 2.5 2.7 3.5 4.3.8 1.2 1.3 2.5.5 4 1.7 0 3.2-.5 4.6-1.4 2.1-1.5 3.5-4.2 1.4-7.2zm-2.7 7c-.2 0-.4-.1-.4-.3 0-.2.2-.3.4-.3s.3.1.3.3c0 .2-.1.3-.3.3zm1-.6c-.2 0-.3-.2-.3-.4s.1-.3.3-.3c.2 0 .3.1.3.3 0 .2-.1.4-.3.4zm.7-.9c-.2 0-.3-.2-.3-.4s.2-.3.4-.3.3.2.3.3c-.1.3-.2.4-.4.4z\",\n fill: \"#1b214c\"\n});\n\nvar SvgBlockSlider = function SvgBlockSlider(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"block-slider_svg__Layer_1\",\n viewBox: \"0 0 20 20\",\n xmlSpace: \"preserve\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2, _ref3);\n};\n\nexport default SvgBlockSlider;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.64.986l8.602-.002c1.626 0 2.217.17 2.813.489a3.342 3.342 0 011.387 1.382c.32.596.493 1.187.5 2.818l.042 8.62c.008 1.63-.158 2.222-.474 2.818a3.297 3.297 0 01-1.373 1.383c-.593.319-1.182.489-2.809.489l-8.6.001c-1.627 0-2.218-.169-2.814-.488a3.342 3.342 0 01-1.387-1.382c-.32-.596-.493-1.187-.5-2.818l-.042-8.62c-.008-1.63.158-2.222.474-2.818a3.297 3.297 0 011.373-1.383C3.425 1.156 4.014.986 5.64.986zm-.656 2.998a1 1 0 00-1 1v10a1 1 0 001 1h3a1 1 0 001-1v-10a1 1 0 00-1-1zm7 7a1 1 0 00-1 1v3a1 1 0 001 1h3a1 1 0 001-1v-3a1 1 0 00-1-1zm0-7a1 1 0 00-1 1v3a1 1 0 001 1h3a1 1 0 001-1v-3a1 1 0 00-1-1z\"\n});\n\nvar SvgCoblocks = function SvgCoblocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgCoblocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.264 39.566L38.219 5.16l16.519 53.558-38.079 38.281zM69.376 112.381l35.607-35.607-46.088-13.51-38.006 38.006zM106.68 70.824L61.239 57.415 43.697 2.22 72.022 8.8l4.6 13.991 16.77 3.792 13.288 44.241zM64.633 53.949l35.664 10.522-10.291-34.264-16.699-3.775-4.604-13.999-18.641-4.337 14.571 45.853z\"\n});\n\nvar SvgCreativeBlocks = function SvgCreativeBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgCreativeBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.4 0c1.1.1 1.9.5 2.3 1.5.5 1 .3 2-.5 2.8-1.6 1.7-7.5 7.6-8.9 8.9-.6.6-.7 1.5-1.1 2.2-.4.9-.8 1.9-1.1 2.9-.1.8-1.3.7-1.3.7l-5.4.7c-.4.1-.9.5-1.3.1-.3-.3.1-1.2.1-1.2l1-6.5s.3-.3.5-.4c1.5-.6 2.9-1.1 4.4-1.7.2 0 .4-.2.5-.3L15.4.9c.6-.5 1.2-.9 2-.9zM1.3 19c.5.1.8.1 1.1 0 1.3-.3 2.6-.4 3.9-.6 1 0 1.5-.4 1.8-1.4.7-2.2 1.4-4.4 3.4-5.8.3-.2.3-.5 0-.8-.5-.4-.9-.9-1.3-1.3-1.1-1-1.1-1-2.2.1-.5.5-.9 1.1-1.6 1.4-1.3.5-2.7 1.1-4.1 1.6-.5.2-.6.4-.7.8-.3 1.7-.5 3.3-.8 5 0 .2-.1.4.1.7 1-1 2-2 3-3.1.2-.2.2-.5.2-.7-.1-.7.4-1.3 1.1-1.3.6 0 1.2.6 1.2 1.2s-.6 1.1-1.2 1c-.3 0-.5 0-.8.2-1 .9-2 1.9-3.1 3zM17.4.8c-.6 0-1 .1-1.4.5-2 2-4 4.1-6.1 6.1-.3.2-.2.4 0 .6l2.1 2.1c.3.3.4.2.7 0l1.9-1.9L18.8 4c.5-.5.7-1.6.4-2.2-.4-.7-1-1.1-1.8-1z\"\n});\n\nvar SvgEditorplus = function SvgEditorplus(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 20 20\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgEditorplus;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.04 4.76L9.2 7.44v11.68l-8.12-2.76m10.16 2.8l8.2-2.8V4.84L11.28 7.4m-1.04-1.36l7.52-2.44-7.52-2.28L2.52 3.6\"\n});\n\nvar SvgElegantBlocks = function SvgElegantBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgElegantBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"circle\", {\n cx: 210.86,\n cy: 44.87,\n r: 12.79\n});\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M100.85 0A100.85 100.85 0 000 100.85V256h155.15A100.85 100.85 0 00256 155.15V0zm-59 149.49l-8.29 8.28a4.83 4.83 0 11-6.83-6.83l8.28-8.28a4.83 4.83 0 116.84 6.83zm34.86 53.16a9.31 9.31 0 010-13.13l10.69-10.69A9.28 9.28 0 01100.57 192l-10.69 10.65a9.31 9.31 0 01-13.13 0zm35.92 18.92l-7.41 7.43a5.75 5.75 0 01-8.13-8.13l7.45-7.45a5.75 5.75 0 018.13 8.13zM123.24 211a4.84 4.84 0 01-6.83 0l-1.23-1.24a4.81 4.81 0 010-6.8l31.07-31.48a8.4 8.4 0 000-11.88l-.89-.89a8.4 8.4 0 00-11.88 0l-16.94 16.94a8.41 8.41 0 01-11.89 0l-1.06-1.06a8.41 8.41 0 010-11.89l15.08-15.08a8.4 8.4 0 000-11.88l-.89-.89a8.41 8.41 0 00-11.89 0L90.8 149.93a8.42 8.42 0 01-13-1.35 8.61 8.61 0 011.33-10.76l16.71-16.71a8.41 8.41 0 000-11.89l-.88-.88a8.4 8.4 0 00-11.89 0L51.8 139.56a4.83 4.83 0 01-6.8-6.83l50.13-50.15 78.26 78.27zm52.54-52.54L97.52 80.19l3.28-3.28 78.27 78.26zm48.34-95.19a22.15 22.15 0 01-11.47 6.1 28.49 28.49 0 00-8.17 2.82 65.85 65.85 0 00-10.35 7.18c-10.3 11.06-12.26 20-12.25 26 0 16 14.07 26.16 9.68 37.63-1.91 5-6.41 7.87-9.38 9.38L143 113.18l-39.28-39.24c1.51-3 4.39-7.47 9.38-9.38 11.47-4.39 21.58 9.68 37.63 9.68 6 0 15-1.95 26-12.25a75.27 75.27 0 005.62-7.69 31.65 31.65 0 004.17-11 22.25 22.25 0 1137.58 19.94z\"\n});\n\nvar SvgEnhancedBlocks = function SvgEnhancedBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 256 256\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2);\n};\n\nexport default SvgEnhancedBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"filter\", {\n filterUnits: \"objectBoundingBox\",\n id: \"essential-blocks_svg__a\"\n}, /*#__PURE__*/React.createElement(\"feOffset\", {\n dy: 15,\n in: \"SourceAlpha\",\n result: \"shadowOffsetOuter1\"\n}), /*#__PURE__*/React.createElement(\"feGaussianBlur\", {\n stdDeviation: 11,\n in: \"shadowOffsetOuter1\",\n result: \"shadowBlurOuter1\"\n}), /*#__PURE__*/React.createElement(\"feColorMatrix\", {\n values: \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0\",\n in: \"shadowBlurOuter1\"\n})), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M135.028 96h103.944l.497.216h.373c6.217 0 11.273 2.774 15.169 8.322 1.326 2.305 1.989 4.683 1.989 7.133 0 5.98-3.398 10.59-10.195 13.833-2.321.937-4.642 1.405-6.963 1.405H133.909c-4.973 0-9.366-1.981-13.179-5.944-2.487-2.882-3.73-5.836-3.73-8.862v-1.297c0-4.755 2.735-8.826 8.206-12.212 2.984-1.585 5.927-2.378 8.828-2.378h.497l.497-.216zm1.242 77.273l58.078.21c3.862 0 7.995 1.544 12.397 4.632 3.503 3.158 5.255 6.596 5.255 10.316 0 5.193-3.1 9.438-9.298 12.736-3.054 1.404-6.019 2.106-8.893 2.106h-58.752c-5.75 0-10.735-2.246-14.958-6.737-2.066-2.526-3.099-5.053-3.099-7.58v-1.262c0-4.772 3.19-8.877 9.567-12.316 3.234-1.263 6.289-1.895 9.163-1.895h.27c.18 0 .27-.07.27-.21zM241.632 173h.736c5.685 0 10.14 2.968 13.369 8.905.842 2.12 1.263 4.17 1.263 6.148 0 5.936-2.912 10.495-8.737 13.675-2.105.848-3.965 1.272-5.579 1.272h-1.473c-4.772 0-8.843-2.509-12.211-7.527-1.333-2.544-2-5.052-2-7.526 0-5.795 2.877-10.318 8.632-13.569 2.175-.919 4.175-1.378 6-1.378zm-106.604 75.727h103.944c0 .142 1.284.318 3.854.53 4.31.919 7.584 2.58 9.822 4.983 2.901 2.897 4.352 6.219 4.352 9.964 0 5.725-3.398 10.248-10.195 13.57-2.073.635-3.482.953-4.228.953H131.423c-2.901 0-6.383-1.66-10.444-4.982-2.653-3.039-3.979-6.113-3.979-9.223v-.954c0-5.23 3.108-9.505 9.325-12.827 1.824-.918 4.642-1.554 8.455-1.908 0-.07.083-.106.248-.106z\",\n id: \"essential-blocks_svg__b\"\n}));\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n fillRule: \"evenodd\"\n}, /*#__PURE__*/React.createElement(\"circle\", {\n fill: \"#FFF\",\n cx: 187,\n cy: 187,\n r: 187\n}), /*#__PURE__*/React.createElement(\"use\", {\n fill: \"#000\",\n filter: \"url(#essential-blocks_svg__a)\",\n xlinkHref: \"#essential-blocks_svg__b\"\n}), /*#__PURE__*/React.createElement(\"use\", {\n fill: \"#23282D\",\n xlinkHref: \"#essential-blocks_svg__b\"\n}));\n\nvar SvgEssentialBlocks = function SvgEssentialBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2);\n};\n\nexport default SvgEssentialBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"style\", null, \".forms-gutenberg_svg__st5{opacity:.1}.forms-gutenberg_svg__st6{opacity:.16}.forms-gutenberg_svg__st7{opacity:.6}.forms-gutenberg_svg__st8{fill:#fff}.forms-gutenberg_svg__st9{opacity:.3}\");\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"forms-gutenberg_svg__SVGID_1_\",\n gradientUnits: \"userSpaceOnUse\",\n x1: 23.101,\n y1: 4.596,\n x2: 17.855,\n y2: 19.01,\n gradientTransform: \"matrix(1 0 0 -1 0 33)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0,\n stopColor: \"#4facfe\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#00f2fe\"\n}));\n\nvar _ref3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M29 13.1l-1-2.8-5.2 1.9c0 .1.1.3.1.4.1.2.1.5.1.7 0 .1 0 .3.1.4v.8c0 .5.1 1 0 1.6v1c-.1.5-.1 1-.3 1.6h.1c-.1.5-.2 1-.5 1.4-.1.4-.3.8-.4 1.2-.2.4-.3.7-.5 1.1-.1.2-.2.4-.3.5-.1.2-.2.3-.3.5-.2.4-.5.7-.7 1-.1.2-.3.4-.4.5-.1.1-.2.3-.3.4-.1.1-.2.3-.3.4l-.9.9-.4.4c-.3.2-.6.5-.9.7-.1.1-.2.2-.3.2-.2.2-.4.3-.7.5-.1.1-.2.1-.2.2-.2.1-.3.2-.5.3-.2.1-.3.2-.5.3l-.6.3c-.2.1-.3.2-.5.2-.1 0-.1.1-.2.1 0 0-.1 0-.1.1-.1 0-.2.1-.3.1-.2.1-.5.2-.7.3 1.8.3 3.7.4 5.5 0 1.8-.3 3.6-1 5.2-2 2.2-1.3 3.9-3.2 5.1-5.3 1.2-2.1 1.7-4.5 1.5-6.8-.1-1.2-.3-2.1-.7-3.1z\",\n fill: \"url(#forms-gutenberg_svg__SVGID_1_)\"\n});\n\nvar _ref4 = /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"forms-gutenberg_svg__SVGID_2_\",\n gradientUnits: \"userSpaceOnUse\",\n x1: 20.054,\n y1: 13.455,\n x2: 18.011,\n y2: 19.068,\n gradientTransform: \"matrix(1 0 0 -1 0 33)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0,\n stopColor: \"#00c6fb\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#005bea\"\n}));\n\nvar _ref5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.8 12.2l-6.4 2.3c-.4.1-.8.4-1.1.6-.3.3-.6.6-.8 1-.2.4-.3.8-.4 1.2 0 .4 0 .8.2 1.2.1.4.4.7.6 1 .3.3.6.5 1 .7.4.2.8.2 1.3.2.4 0 .9-.1 1.3-.2l4.4-1.6c.5-2.2.4-4.4-.1-6.4z\",\n fill: \"url(#forms-gutenberg_svg__SVGID_2_)\"\n});\n\nvar _ref6 = /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"forms-gutenberg_svg__SVGID_3_\",\n gradientUnits: \"userSpaceOnUse\",\n x1: 15.53,\n y1: 4.084,\n x2: 8.873,\n y2: 22.373,\n gradientTransform: \"matrix(1 0 0 -1 0 33)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0,\n stopColor: \"#89f7fe\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#66a6ff\"\n}));\n\nvar _ref7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.5 19.9c-.4.9-1 1.7-1.7 2.4s-1.6 1.2-2.6 1.6c-.4.2-.9.3-1.4.4-.5.1-.9.1-1.4.1-1.4 0-2.7-.4-3.8-1.1-.2-.1-.4-.2-.7-.3-2-1-3.7-2.5-4.9-4.3-1.2-1.8-1.8-3.9-1.9-6v-.2c-1.8 2.9-2.3 6.2-1.5 9.2s2.9 5.6 5.8 7.2c1.2.6 2.5 1.1 3.8 1.3 3.2-1.2 6-3.2 7.9-5.8 1.1-1.5 1.9-2.9 2.4-4.5z\",\n fill: \"url(#forms-gutenberg_svg__SVGID_3_)\"\n});\n\nvar _ref8 = /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"forms-gutenberg_svg__SVGID_4_\",\n gradientUnits: \"userSpaceOnUse\",\n x1: 19.95,\n y1: 23.365,\n x2: 17.904,\n y2: 28.987,\n gradientTransform: \"matrix(1 0 0 -1 0 33)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0,\n stopColor: \"#4facfe\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#00f2fe\"\n}));\n\nvar _ref9 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M24.5 1.6l-5.9 2.1c0 .1-.1.2-.1.3-.1.3-.2.5-.2.8-.2.6-.5 1.3-.8 1.9-.1.1-.1.2-.2.4v.1c-.1.2-.2.3-.3.5-.1.2-.2.3-.3.5-.1.1-.2.3-.3.4-.1.1-.1.2-.2.3l-.2.2c-.1.1-.2.2-.2.3l-.1.1c-.1.1-.2.3-.3.4v.1c-.1.1-.2.3-.4.4-.1.1-.2.3-.3.4 0 .1-.1.1-.1.1l-.3.3-.4.4-.3.3c.1-.1.3-.1.4-.2l6.4-2.3 1.2-.6c1.3-.8 2.3-1.9 2.9-3.3.4-1.2.4-2.6 0-3.9z\",\n fill: \"url(#forms-gutenberg_svg__SVGID_4_)\"\n});\n\nvar _ref10 = /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"forms-gutenberg_svg__SVGID_5_\",\n gradientUnits: \"userSpaceOnUse\",\n x1: 15.998,\n y1: 11.362,\n x2: 10.556,\n y2: 26.312,\n gradientTransform: \"matrix(1 0 0 -1 0 33)\"\n}, /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0,\n stopColor: \"#00c6fb\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#005bea\"\n}));\n\nvar _ref11 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.6 3.8l-6.8 2.5c-3 1.1-5.6 3.1-7.3 5.7-.1.1-.2.3-.3.4v1.1c0 .2 0 .4.1.6 0 .1 0 .2.1.3 0 .1.1.3.1.4 0 .1.1.2.1.3v.2l.3.9c0 .1.1.1.1.2s0 .1.1.2v.1s0 .1.1.1c0 .1.1.2.2.4 0 0 0 .1.1.1.1.2.1.3.2.5.1.1.1.2.2.3 0 .1.1.1.1.2.2.3.3.5.5.8.1.1.1.2.2.2.3.4.6.8 1 1.2l.3.3c.2.2.5.4.7.6.1.1.2.2.3.2.3.2.6.5.9.7.2.1.3.2.5.3.2.1.3.2.5.3 0 0 .1 0 .1.1.2.1.3.2.5.2-1.1-.7-1.9-1.7-2.4-2.9-.1-.8-.2-1.6-.1-2.5 0-.8.3-1.7.7-2.5.8-1.4 2.1-2.6 3.7-3.3l.3-.3.4-.4.3-.3.1-.1c.1-.1.2-.2.3-.4l.4-.4V10c.1-.1.2-.3.3-.4l.1-.1c.1-.1.2-.2.2-.3L16 9c.1-.1.1-.2.2-.3.1-.1.2-.3.3-.4.1-.2.2-.3.3-.5.1-.2.2-.3.3-.5v-.1c.1-.1.1-.2.2-.4.3-.6.6-1.2.8-1.9.1-.3.2-.5.2-.8.2-.1.3-.2.3-.3z\",\n fill: \"url(#forms-gutenberg_svg__SVGID_5_)\"\n});\n\nvar _ref12 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st5\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.2 23.8c-.4.2-.9.3-1.4.4-2 1.7-4.7 3.2-8.4 4.6 1.2.6 2.5 1.1 3.8 1.3 3.2-1.2 6-3.2 7.9-5.8 1-1.4 1.8-2.8 2.3-4.4-.4.9-1 1.7-1.7 2.4s-1.6 1.2-2.5 1.5z\"\n}));\n\nvar _ref13 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st6\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.8 12.2l-.6.2c.2 2.3-.3 4.7-1.4 6.9l2-.7c.6-2.2.5-4.4 0-6.4z\"\n}));\n\nvar _ref14 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st5\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.2 8.9c-1.1.9-2 1.9-2.8 3.1-.1.1-.2.3-.3.4v1.1c0 .2 0 .4.1.6 0 .1 0 .2.1.3 0 .1.1.3.1.4 0 .1.1.2.1.3v.2l.3.9c0 .1.1.1.1.2s0 .1.1.2v.1s0 .1.1.1c0 .1.1.2.2.4 0 0 0 .1.1.1.1.2.1.3.2.5.1.1.1.2.2.3 0 .1.1.1.1.2.2.3.3.5.5.8.1.1.1.2.2.2.3.4.6.8 1 1.2l.3.3c.2.2.5.4.7.6.1.1.2.2.3.2.3.2.6.5.9.7.2.1.3.2.5.3.2.1.3.2.5.3 0 0 .1 0 .1.1.2.1.3.2.5.2-1.1-.7-1.9-1.7-2.4-2.9C7.4 18 6 14.4 6.9 9.1c.3-.1.3-.2.3-.2z\"\n}));\n\nvar _ref15 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st5\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M22.5 2.4l-3.9 1.4c0 .1-.1.2-.1.3-.1.3-.2.5-.2.8-.2.6-.5 1.3-.8 1.9-.1.1-.1.2-.2.4v.1c-.1.2-.2.3-.3.5-.1.2-.2.3-.3.5-.1.1-.2.3-.3.4-.1.1-.1.2-.2.3-.1 0-.1 0-.2.1s-.2.2-.2.3l-.1.1c-.1.1-.2.3-.3.4v.1c-.1.1-.2.3-.4.4-.1.1-.2.3-.3.4 0 .1-.1.1-.1.1l-.3.3-.4.4-.3.3c.1-.1.3-.1.4-.2l1.7-.6c2.9-2.4 5.2-5.3 6.8-8.5-.1 0-.1-.1 0-.2z\"\n}));\n\nvar _ref16 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st7\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st7\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n className: \"forms-gutenberg_svg__st8\",\n d: \"M22.1 21.1c-.8 1.9-2 3.6-3.5 5.1-1.5 1.5-3.3 2.7-5.3 3.6.1 0 .2-.1.5-.2.2-.1.4-.1.6-.2.3-.1.5-.2.8-.3.1-.1.3-.1.4-.2.1-.1.3-.2.4-.3l.9-.6c.3-.2.6-.4.9-.7.3-.3.6-.5.9-.8.3-.3.6-.6.8-.9.3-.3.5-.6.7-.9l.6-.9c.2-.3.3-.5.5-.8.1-.3.2-.5.3-.7.1-.2.1-.4.2-.6.2-.4.2-.6.3-.6z\"\n})));\n\nvar _ref17 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st7\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st7\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n className: \"forms-gutenberg_svg__st8\",\n d: \"M18.6 3.8l-.2.4-.5 1-.3.6c-.1.2-.2.5-.4.7L16.3 8c-.3.5-.6 1-.9 1.4-.1.2-.2.4-.4.6-.2.2-.3.4-.4.6-.3.4-.5.7-.7.9-.1.2-.2.3-.2.3 2.4-2.3 4.1-5 4.9-8z\"\n})));\n\nvar _ref18 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st7\"\n}, /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st7\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n className: \"forms-gutenberg_svg__st8\",\n d: \"M4.9 16.2c-.4-1.2-.7-2.4-.7-3.6v.6c0 .5 0 1 .1 1.5.1.7.3 1.4.5 2 .1.3.2.7.4 1 .2.4.4.7.6 1.1.2.3.5.7.7 1 .1.2.3.3.4.5l.4.4c.3.3.6.5.9.7.3.2.5.4.8.6.2.2.5.3.8.4l.6.3c.3.1.5.2.5.2-2.8-1.5-4.9-3.8-6-6.7z\"\n})));\n\nvar _ref19 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st9\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M24.5 1.6L11.8 6.2c-3 1.1-5.6 3.1-7.3 5.7.3-.4.6-.7.9-1.1.3-.4.6-.7 1-1 .3-.3.6-.5.9-.8-.1 0 0 0 0 0 .4-.3.8-.6 1.1-.8.4-.3.8-.5 1.2-.7.5-.3 1-.5 1.4-.7.4-.2.9-.3 1.3-.5l1.4-.5 2.7-1 2.7-1c1.1-.4 2.1-.8 3.2-1.2.7-.2 1.3-.5 2-.8l.1.2.1.5.1.5v1l-.1.5-.1.5-.2.5-.2.6-.2.5-.4.4-.3.4-.4.4-.4.4-.4.4-.5.3c1.3-.8 2.3-1.9 2.9-3.3.6-1.3.6-2.7.2-4z\"\n}));\n\nvar _ref20 = /*#__PURE__*/React.createElement(\"g\", {\n className: \"forms-gutenberg_svg__st9\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M29 13.1l-1-2.8-4.5 1.6c.8-.2 1.5-.5 2.3-.7.7-.2 1.4-.4 2.1-.7l.7 2.2c.1.4.3.8.4 1.2l.3 1.2c.1.4.1.8.1 1.2v1.2c0 .4-.1.8-.1 1.2-.1.4-.1.8-.3 1.2-.1.4-.2.8-.4 1.2-.1.2-.2.4-.2.6l-.3.6-.3.6-.3.6c-.1.2-.2.4-.3.5-.1.2-.2.4-.4.5l-.4.5-.4.4c-.1.2-.3.3-.4.5l-.5.5c-.3.3-.7.6-1 .9-.3.3-.7.5-1.1.8 2.2-1.3 3.9-3.2 5.1-5.3 1.2-2.1 1.7-4.5 1.5-6.8 0-1-.2-1.9-.6-2.9z\"\n}));\n\nvar _ref21 = /*#__PURE__*/React.createElement(\"text\", {\n transform: \"translate(300 167.5)\",\n fontFamily: \"MyriadPro-Regular\",\n fontSize: 12\n}, \"32\");\n\nvar SvgFormsGutenberg = function SvgFormsGutenberg(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"forms-gutenberg_svg__Layer_1\",\n viewBox: \"0 0 32 32\",\n xmlSpace: \"preserve\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7, _ref8, _ref9, _ref10, _ref11, _ref12, _ref13, _ref14, _ref15, _ref16, _ref17, _ref18, _ref19, _ref20, _ref21);\n};\n\nexport default SvgFormsGutenberg;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#b3c315\",\n d: \"M70 54h41v18H70z\"\n});\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#96a40a\",\n d: \"M65 54h5v18h-5z\"\n});\n\nvar _ref3 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#b3c315\",\n d: \"M94 50h13v3H94z\"\n});\n\nvar _ref4 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#96a40a\",\n d: \"M89 50h5v3h-5z\"\n});\n\nvar _ref5 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#b3c315\",\n d: \"M74 50h13v3H74z\"\n});\n\nvar _ref6 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#96a40a\",\n d: \"M69 50h5v3h-5z\"\n});\n\nvar _ref7 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#b977c7\",\n d: \"M72 92h13v3H72z\"\n});\n\nvar _ref8 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#9e5cac\",\n d: \"M67 92h5v3h-5z\"\n});\n\nvar _ref9 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#b977c7\",\n d: \"M51 92h13v3H51z\"\n});\n\nvar _ref10 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#9e5cac\",\n d: \"M46 92h5v3h-5z\"\n});\n\nvar _ref11 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#49c3f5\",\n d: \"M92 75h19v19H92z\"\n});\n\nvar _ref12 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#109ad4\",\n d: \"M87 75h5v19h-5z\"\n});\n\nvar _ref13 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M25 97h86l-18 19H43L25 97z\",\n fill: \"#b977c7\"\n});\n\nvar _ref14 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#9e5cac\",\n d: \"M20 97l18 19h5L25 97z\"\n});\n\nvar _ref15 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M111 36H25l18-19h50l18 19z\",\n fill: \"#f1b014\"\n});\n\nvar _ref16 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#f09108\",\n d: \"M43 17h-5L20 36h5z\"\n});\n\nvar _ref17 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#f1b014\",\n d: \"M51 12h14v3H51z\"\n});\n\nvar _ref18 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#f09108\",\n d: \"M46 12h5v3h-5z\"\n});\n\nvar _ref19 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#f1b014\",\n d: \"M73 12h14v3H73z\"\n});\n\nvar _ref20 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#f09108\",\n d: \"M68 12h5v3h-5z\"\n});\n\nvar _ref21 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#49c3f5\",\n d: \"M25 39h18v26H25z\"\n});\n\nvar _ref22 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#109ad4\",\n d: \"M20 39h5v26h-5z\"\n});\n\nvar _ref23 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#d25e4d\",\n d: \"M20 68h5v26h-5z\"\n});\n\nvar _ref24 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#e67666\",\n d: \"M25 68h18v26H25z\"\n});\n\nvar SvgGetwid = function SvgGetwid(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 128 128\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7, _ref8, _ref9, _ref10, _ref11, _ref12, _ref13, _ref14, _ref15, _ref16, _ref17, _ref18, _ref19, _ref20, _ref21, _ref22, _ref23, _ref24);\n};\n\nexport default SvgGetwid;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M201 94.59h12.5H201zm-146 0h12.5H55zm20.038 115.868c-6.137-3.161-13.675-.749-16.836 5.388-3.162 6.137-.75 13.675 5.387 16.837l11.45-22.225zm117.373 22.225c6.137-3.162 8.549-10.7 5.387-16.837-3.161-6.137-10.699-8.549-16.836-5.388l11.449 22.225zM128 33.5c33.318 0 60.5 27.256 60.5 61.09h25c0-47.45-38.185-86.09-85.5-86.09v25zm60.5 61.09c0 33.835-27.182 61.091-60.5 61.091v25c47.315 0 85.5-38.639 85.5-86.09h-25zM128 155.682c-33.319 0-60.5-27.256-60.5-61.09h-25c0 47.451 38.185 86.09 85.5 86.09v-25zm-60.5-61.09C67.5 60.756 94.681 33.5 128 33.5v-25c-47.315 0-85.5 38.64-85.5 86.09h25zm-3.91 138.092c40.937 21.089 87.883 21.089 128.821 0l-11.449-22.225c-33.754 17.389-72.17 17.389-105.924 0L63.59 232.683z\"\n});\n\nvar SvgGhostkit = function SvgGhostkit(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgGhostkit;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"style\", null);\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"g\", {\n id: \"guteblock_svg__prefix__Layer_1\"\n}, /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"guteblock_svg__prefix__SVGID_1_\",\n gradientUnits: \"userSpaceOnUse\",\n x1: 68.035,\n y1: 10.602,\n x2: 33.222,\n y2: 86.651\n}, /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0,\n stopColor: \"#ffd500\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.258,\n stopColor: \"#ff683e\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.498,\n stopColor: \"#ff1d6b\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.781,\n stopColor: \"#5d25cd\"\n}), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#3eb9fa\"\n})), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M31.95 17.49L17.49 31.95c-9.14 9.14-9.14 23.96 0 33.1L34.94 82.5c9.14 9.14 23.96 9.14 33.1 0L82.5 68.04c9.14-9.14 9.14-23.96 0-33.1L65.06 17.49c-9.15-9.14-23.96-9.14-33.11 0z\",\n fill: \"url(#guteblock_svg__prefix__SVGID_1_)\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M65.81 36.74c-3.94 0-7.64 1.53-10.43 4.32l-5.85 5.85a6.488 6.488 0 000 9.17 6.488 6.488 0 009.17 0l5.85-5.85c.43-.43.92-.52 1.26-.52.34 0 .83.09 1.26.52.43.43.52.92.52 1.26 0 .34-.09.83-.52 1.26L52.98 66.83c-.05.05-.1.1-.14.15-.44.47-.96.58-1.32.58-.36.01-.88-.08-1.33-.54L32.98 49.81c-.69-.69-.72-1.79-.09-2.52l14.17-14.17c.05-.05.1-.1.14-.15.67-.71 1.78-.73 2.54-.04l.98.95c2.57 2.49 6.68 2.43 9.17-.14 2.49-2.57 2.43-6.68-.14-9.17l-1.03-1c-.03-.03-.05-.05-.08-.07-5.94-5.57-15.25-5.33-20.82.51l-14.2 14.2c-.05.05-.1.1-.14.15a14.744 14.744 0 00.33 20.61l17.21 17.22c2.8 2.81 6.51 4.34 10.47 4.34h.24c4.01-.06 7.73-1.69 10.49-4.59l14.02-14.02c2.79-2.79 4.32-6.49 4.32-10.43 0-3.94-1.53-7.64-4.32-10.43a14.668 14.668 0 00-10.43-4.32z\",\n fill: \"#fff\"\n}));\n\nvar SvgGuteblock = function SvgGuteblock(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 100 100\",\n \"aria-hidden\": \"true\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2);\n};\n\nexport default SvgGuteblock;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.388 5.75l-6.716-3.91a1.173 1.173 0 00-1.104 0l-.184.092c0 .046.046.092.046.138v2.3c0 .138-.092.276-.276.276h-2.3c-.138 0-.276-.092-.276-.276v-.828l-.506.276v2.53a.297.297 0 01-.276.276H3.22a.297.297 0 01-.276-.276v-.736l-.138.092c-.322.184-.552.598-.552.966v1.15H3.68c.138 0 .23.092.23.23v2.208c0 .138-.092.23-.23.23H2.254v3.956c0 .368.23.782.552.966l6.716 3.91c.322.184.782.184 1.104 0l6.762-3.864c.322-.184.552-.598.552-.966V6.67c0-.322-.23-.736-.552-.92zm-3.358 7.038l-3.864 2.3L6.21 12.88l-.092-4.508 3.864-2.3 3.68 2.07-.46.782-3.22-1.794-2.944 1.748.046 3.45 2.99 1.656 2.944-1.748v-.644l-2.668-.046v-.92l3.542.092v2.07zM2.3 5.014a.099.099 0 01-.092.092h-.782c-.046 0-.046-.046-.046-.092v-.736c0-.046 0-.092.046-.092h.736c.092 0 .138.046.138.092v.736zM1.518 7.222c0 .092-.046.138-.138.138H.138C.046 7.36 0 7.314 0 7.222V5.98c0-.092.046-.138.138-.138H1.38c.092 0 .138.046.138.138v1.242z\"\n});\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.496 4.048h2.162V6.21H3.496zM7.038 2.254h1.978v1.978H7.038zM3.68 3.174c0 .046-.046.138-.138.138H2.346c-.092 0-.138-.092-.138-.138V1.932c0-.092.046-.138.138-.138h1.196c.092 0 .138.092.138.138v1.242zM6.164 2.622c0 .092-.046.138-.138.138H4.83c-.092 0-.138-.046-.138-.138V1.426c0-.092.046-.138.138-.138h1.196c.092 0 .138.046.138.138v1.196zM8.05 1.38a.099.099 0 01-.092.092H6.9a.099.099 0 01-.092-.092V.322c0-.046.046-.092.092-.092h1.012c.046 0 .092.046.092.092V1.38zM1.564 8.28H3.45v1.886H1.564z\"\n});\n\nvar SvgGutentor = function SvgGutentor(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"-1.1 -0.2 20 20\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2);\n};\n\nexport default SvgGutentor;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M40.145 6.164L7.855 41.837V6.164h32.29z\",\n fillOpacity: 0.502,\n fillRule: \"nonzero\"\n});\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M40.145 41.836L7.855 6.163v35.673h32.29z\",\n fillRule: \"nonzero\"\n});\n\nvar SvgKadenceBlocks = function SvgKadenceBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 48 48\",\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n strokeLinejoin: \"round\",\n strokeMiterlimit: 1.414,\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2);\n};\n\nexport default SvgKadenceBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M23.706 7.854l.004.01c.734 2.723.003 5.708-1.395 8.169-1.669 2.927-4.184 5.357-7.464 6.256-4.204 1.164-7.863-.293-10.944-3.149C-.097 15.427-1.665 9.8 2.303 5.352a17.352 17.352 0 015.683-4.009A14.566 14.566 0 0112.498.077c1.734-.184 3.298-.075 4.885.732a14.601 14.601 0 013.615 2.583 9.982 9.982 0 012.708 4.462zm-12.659 4.272a.03.03 0 01.025.012l2.536 3.432c.25.338.66.54 1.1.54h1.573c.246 0 .485-.075.682-.213.502-.353.605-1.02.228-1.49l-2.343-2.924a1.188 1.188 0 01.05-1.558l2.045-2.26a.91.91 0 00.24-.61c0-.523-.453-.946-1.011-.946H14.66a1.37 1.37 0 00-1.07.502l-2.534 3.173a.032.032 0 01-.025.012c-.009 0-.016-.007-.016-.015V7.359c0-.69-.598-1.25-1.336-1.25h-.925c-.739 0-.81.56-.81 1.25v7.5c0 .69.071 1.25.81 1.25h.94c.738 0 1.337-.56 1.337-1.25v-2.718c0-.008.007-.015.015-.015z\"\n});\n\nvar SvgKiokenBlocks = function SvgKiokenBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 -0.5 24 24\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgKiokenBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.831 7.877l.001-.009-.001-.009a3.675 3.675 0 01-.132-.247l-.057-.115c-.277-.498-.381-.99-1.033-1.064h-.048a.91.91 0 00-.908.862v.002c.674.126 1.252.278 1.813.468l-.092-.027.283.096.147.053s.028 0 .028-.011z\"\n});\n\nvar _ref2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M23.982 13.574a68.843 68.843 0 00-.39-7.112l.026.299.07-.019a1.1 1.1 0 00.052-2.09l-.008-.002h-.026a2.306 2.306 0 01-1.149-.861l-.005-.007C19.852-.178 14.3.001 14.3.001S8.75-.178 6.05 3.782c-.28.401-.676.704-1.14.862l-.016.005a1.097 1.097 0 00-.754 1.04v.026-.001l-.001.034c0 .493.335.907.789 1.029l.007.002.045.011a65.7 65.7 0 00-.364 6.801v.012s-9.493 13.012-1.277 17.515c4.733 2.431 6.881-.769 6.881-.769s1.397-1.661-1.784-3.355v-4.609a.638.638 0 01.625-.628h1.212v-.59c0-.275.223-.498.498-.498h1.665a.498.498 0 01.496.498v.59h2.721v-.59c0-.275.223-.498.498-.498h1.665c.271.005.49.226.49.498v.59h1.209c.349 0 .633.28.639.627v4.584c-3.193 1.703-1.784 3.355-1.784 3.355s2.148 3.193 6.879.769c8.222-4.503-1.269-17.515-1.269-17.515zm-1.396-3.313a6.398 6.398 0 01-1.563 3.797l.007-.008c-1.703 2.01-4.407 3.249-6.721 4.432-2.325-1.177-5.026-2.416-6.736-4.432a6.43 6.43 0 01-1.555-3.769l-.001-.02c-.126-2.22.583-5.929 3.044-6.74 2.416-.788 3.947 1.288 4.494 2.227a.863.863 0 001.488.004l.002-.004c.551-.932 2.08-3.008 4.494-2.22 2.474.805 3.174 4.513 3.046 6.734z\"\n});\n\nvar _ref3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.463 10.087h-.028c-.192.026-.121.251-.047.356.254.349.407.787.407 1.26v.018-.001a1.277 1.277 0 01-.633 1.1l-.006.003c-.739.426-1.377-.145-2.054-.398a7.5 7.5 0 00-2.42-.455h-.009v-1.033a4.886 4.886 0 002.551-1.486l.004-.004a.916.916 0 00-.158-1.383l-.003-.002a4.738 4.738 0 00-2.764-.881 4.752 4.752 0 00-2.819.92l.013-.009a.9.9 0 00-.146 1.317l-.001-.001a4.906 4.906 0 002.553 1.53l.033.007v1.05a8.061 8.061 0 00-2.118.343l.057-.015a5.578 5.578 0 00-.908.358l.033-.015c-.519.26-1.037.436-1.58.121a1.218 1.218 0 01-.617-1.058v-.007-.007c0-.47.153-.905.411-1.257l-.004.006c.047-.068.089-.17.026-.241s-.189 0-.27.03a1.592 1.592 0 00-.479.381l-.002.002a1.716 1.716 0 00-.394 1.097v.011-.001a1.93 1.93 0 00.964 1.651l.009.005c.296.178.654.283 1.036.283.364 0 .706-.095 1.001-.263l-.01.005a6.51 6.51 0 013.225-.728h-.01.03c1.277 0 2.382.266 3.266.775.27.159.594.253.94.253h.003c.355-.002.688-.098.974-.265l-.009.005a2.028 2.028 0 001.007-1.75v-.004l.002-.086c0-.625-.34-1.171-.846-1.462l-.008-.004a.388.388 0 00-.199-.07h-.001zm-6.362-1.256c-.238.213-.468.581-.832.345a.933.933 0 01-.161-.136.352.352 0 01.081-.555l.002-.001c.594-.309 1.203-.543 1.884-.49-.324.281-.649.56-.973.837z\"\n});\n\nvar _ref4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.89 13.578a1.988 1.988 0 01-3.173.005l-.004-.005a.36.36 0 10-.576.427 2.707 2.707 0 004.323.007l.005-.007a.362.362 0 00-.072-.498l-.001-.001a.356.356 0 00-.501.071l-.001.001zM18.507 11.707a.35.35 0 11-.702 0 .35.35 0 01.702 0zM17.389 11.049a.35.35 0 11-.702 0 .35.35 0 01.702 0zM10.798 11.707a.35.35 0 11-.702 0 .35.35 0 01.702 0zM11.918 11.049a.35.35 0 11-.702 0 .35.35 0 01.702 0zM8.773 7.877l-.002-.009.002-.009c.047-.081.089-.164.132-.247.019-.038.036-.079.057-.115.275-.498.379-.99 1.033-1.064h.046c.487 0 .884.382.91.862v.002c-.678.124-1.261.277-1.827.468l.092-.027-.275.096-.1.036-.045.017s-.023 0-.023-.011z\"\n});\n\nvar SvgOtterBlocks = function SvgOtterBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 29 32\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref, _ref2, _ref3, _ref4);\n};\n\nexport default SvgOtterBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n fillRule: \"evenodd\"\n}, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M0 0h21v21H0z\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.296 9.925c.014.013.029.022.042.034l-2.456 2.455A5.376 5.376 0 014.697 10.9C4.232 10.024 4 9.02 4 7.884c0-1.134.232-2.15.697-3.045.21-.402.456-.76.732-1.081l2.514 2.514c-.245.432-.375.966-.375 1.612 0 .902.243 1.582.728 2.04zm7.782-7.707v12.19l-4.393-4.394c.053-.044.108-.08.159-.13.499-.485.749-1.172.749-2.06 0-.68-.15-1.24-.441-1.679l3.926-3.927z\",\n fill: \"#444\"\n}), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.593 11.7c-.793 1.312-1.928 1.968-3.405 1.968a4.878 4.878 0 01-2.614-.728 4.966 4.966 0 01-.691-.525L8.338 9.96c.478.433 1.054.654 1.732.654.614 0 1.15-.207 1.615-.598l4.393 4.393V19h-3.485v-7.3zm3.485-9.597v.116l-3.926 3.927a2.476 2.476 0 00-2.082-1.09c-.684 0-1.272.242-1.764.727-.144.143-.26.31-.363.49L5.43 3.759a5.031 5.031 0 011.155-1.01A4.795 4.795 0 019.188 2c1.531 0 2.666.588 3.405 1.764V2.103h3.485z\",\n fill: \"#000\"\n}));\n\nvar SvgQodeblock = function SvgQodeblock(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgQodeblock;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.38 8.8c0-2.42-.88-4.4-2.53-6.05C13.2 1.1 11.11.22 8.8.22s-4.4.88-6.05 2.53C1.1 4.4.22 6.38.22 8.8s.88 4.4 2.53 6.05c1.65 1.65 3.63 2.53 6.05 2.53.99 0 1.98-.11 2.86-.44l-2.42-2.53c-.11-.11-.33-.22-.44-.22-1.54 0-2.75-.55-3.74-1.54-1.1-.99-1.54-2.31-1.54-3.85s.55-2.86 1.54-3.85c.99-.99 2.2-1.54 3.74-1.54s2.75.55 3.74 1.54c.99.99 1.54 2.31 1.54 3.85 0 .77-.11 1.54-.44 2.2-.22.55-.88.66-1.32.22-1.21-1.21-3.08-1.32-4.4-.22l2.75 2.86 2.31 2.42c.99.99 2.64 1.1 3.74.11l.33-.33-1.43-1.43c-.22-.22-.22-.44 0-.66a8.383 8.383 0 001.76-5.17z\"\n});\n\nvar SvgQubely = function SvgQubely(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"-1 -1 20 20\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgQubely;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.982 16.711a4.48 4.48 0 01-7.965 0A4.972 4.972 0 0110 14.709c1.629 0 3.074.789 3.982 2.002zm-.748-7.657c-.314 2.56 1.248 2.919 1.248 5.603a4.5 4.5 0 01-.205 1.344 5.635 5.635 0 00-8.554 0 4.5 4.5 0 01-.205-1.344c0-2.684 1.563-3.043 1.247-5.603C6.403 6.126 2.45 6.589 2.45 3.72A2.857 2.857 0 015.308.862C7.017.862 8.073 2.42 10 2.42c1.926 0 2.982-1.558 4.691-1.558a2.857 2.857 0 012.857 2.858c.001 2.869-3.952 2.406-4.314 5.334zM8.557 4.107h-.708a.9.9 0 01-.901.9.9.9 0 01-.901-.9h-.708a1.609 1.609 0 103.218 0zm.979 7.141a.568.568 0 00-.566-.568.567.567 0 10.566.568zm2.062 0a.569.569 0 00-.568-.568.567.567 0 10.568.568zm3.062-7.141h-.707a.9.9 0 01-1.802 0h-.707a1.61 1.61 0 003.216 0z\"\n});\n\nvar SvgSnowMonkeyBlocks = function SvgSnowMonkeyBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgSnowMonkeyBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M64.08 136L23 176.66a4.75 4.75 0 003.53 8.15l86.91.14zM177.91 128.39a17 17 0 00-5-12.07L71.39 14.72 26.61 59.5a17 17 0 00-5 12.05 17 17 0 005 12.05l101.55 101.6v-.07l44.76-44.76a17 17 0 005-12zM172.95 14.69H86.12l49.42 49.62 40.92-41.16a5 5 0 00-3.51-8.46z\"\n});\n\nvar SvgStackableUltimateGutenbergBlocks = function SvgStackableUltimateGutenbergBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 200 200\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgStackableUltimateGutenbergBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M26.9.3C12.2.3.3 12.2.3 26.8s11.9 26.5 26.5 26.5c14.7 0 26.5-11.9 26.5-26.5S41.5.3 26.9.3zm-2 27.7c0 1.1-.1 2.2-.4 3.2-.3 1-.7 1.8-1.3 2.6-.6.7-1.3 1.3-2.2 1.7-.9.4-2 .6-3.2.6-1.3 0-2.4-.2-3.3-.7-.9-.4-1.7-1-2.2-1.8-.6-.7-1-1.6-1.3-2.6-.3-1-.4-2-.4-3.1v-8.3h3.8V28c0 .6.1 1.2.2 1.8s.3 1.1.6 1.5c.3.4.6.8 1.1 1.1s1 .4 1.6.4 1.2-.1 1.6-.4.8-.6 1.1-1.1c.3-.4.5-1 .6-1.5.1-.6.2-1.2.2-1.8v-8.3h3.8c-.3 0-.3 8.3-.3 8.3zm17.2 8H39v-1.6c-1.2 1.1-2.7 1.7-4.3 1.7-1.1 0-2.1-.2-3-.6-.9-.4-1.8-1-2.5-1.7s-1.3-1.6-1.7-2.6c-.4-1-.6-2.2-.6-3.4 0-1.1.2-2.2.6-3.2.4-1 1-1.9 1.7-2.6.7-.7 1.6-1.3 2.6-1.7 1-.4 2.1-.6 3.2-.6 1.5 0 2.8.3 4 1 1.1.6 2 1.5 2.5 2.6l-2.8 2.1c-.4-.7-.9-1.3-1.6-1.7-.7-.4-1.4-.6-2.3-.6-.6 0-1.2.1-1.7.4s-1 .6-1.3 1.1-.7 1-.8 1.6c-.2.6-.3 1.2-.3 1.9s.1 1.4.3 1.9c.2.6.5 1.1.9 1.5.4.4.8.8 1.4 1 .5.2 1.1.4 1.8.4 1.5 0 2.8-.7 4-2v-.5h-3.2v-2.7h6.3c-.1-.2-.1 8.3-.1 8.3z\"\n});\n\nvar SvgUltimateAddonsForGutenberg = function SvgUltimateAddonsForGutenberg(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 54 54\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgUltimateAddonsForGutenberg;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.9 10v4.1c0 .7-.3 1.2-.9 1.6-2.4 1.4-4.7 2.7-7.1 4.1-.6.4-1.3.4-1.9 0-2.3-1.4-4.6-2.8-7-4.1-.6-.4-.9-.9-.9-1.6V6c0-.7.3-1.2.9-1.6C4.4 3 6.7 1.6 9.1.3c.6-.4 1.3-.4 1.9 0 2.3 1.3 4.6 2.7 7 4 .6.4.9.9.9 1.6V10zm-8.7-6c-.5 0-1 .2-1.5.4-.3.2-.7.4-1.1.6-.9.6-1.8 1.1-2.8 1.7-.2.1-.4.4-.4.7 0 .3.2.5.4.6.3.2.6.1.9 0C7 7.3 8.2 6.5 9.5 5.8c.8-.4 1.7-.2 2.1.5.4.7.1 1.6-.6 2.1-.5.3-1 .6-1.4.8-.8.5-1.6.9-2.5 1.4-.3.2-.4.5-.4.8.1.3.3.6.6.6.2 0 .4 0 .6-.1 1.3-.7 2.5-1.5 3.8-2.2.7-.4 1.6-.2 2 .4.5.7.3 1.7-.5 2.2-1.3.7-2.6 1.5-3.8 2.2-.4.2-.5.7-.3 1.1.2.4.7.5 1.1.3 1.3-.8 2.6-1.5 4-2.3 1.2-.7 1.7-2.1 1.3-3.4-.3-1.1-1-1.8-2.1-2.1-.1 0-.2-.1-.1-.2.1-.2.1-.4.1-.6C13.4 5.5 12 4 10.2 4zm-5.8 7.3c0 .2 0 .4.1.7.5 2 2.7 3 4.5 1.9 1.3-.7 2.6-1.5 3.8-2.2.4-.2.5-.7.3-1.1-.2-.4-.7-.5-1.1-.3-.4.2-.7.4-1.1.6-.9.5-1.8 1-2.7 1.6-.6.3-1.1.3-1.7-.1-.9-.6-.8-1.9.2-2.5 1.3-.7 2.6-1.5 3.8-2.2.5-.2.7-.7.4-1-.2-.4-.7-.5-1.1-.3-1.3.7-2.6 1.5-3.9 2.2-1 .6-1.4 1.5-1.5 2.7z\"\n});\n\nvar SvgUltimateBlocks = function SvgUltimateBlocks(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 20 20\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgUltimateBlocks;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9 0C4 0 0 4 0 9s4 9 9 9 9-4 9-9-4-9-9-9zM6.5 12.6c-.1.1-.1.1-.2.1l-2 .1c-.2 0-.3-.1-.4-.3l-.1-2c0-.1 0-.2.1-.2l5.5-6.4c.1-.1.3-.2.5 0L12 5.7c.1.1.2.3 0 .5l-5.5 6.4zm7.5.2H9.5c-.2 0-.4-.2-.4-.5 0-.2.2-.5.4-.5H14c.2 0 .4.2.4.5s-.2.5-.4.5zm0-1.8h-2.8c-.2 0-.4-.2-.4-.5 0-.2.2-.5.4-.5H14c.2 0 .4.2.4.5s-.2.5-.4.5zm.1-1.8h-1.2c-.2 0-.3-.2-.3-.5s.1-.5.3-.5h1.2c.2 0 .3.2.3.5s-.1.5-.3.5z\"\n});\n\nvar SvgUltimatePost = function SvgUltimatePost(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 18 18\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgUltimatePost;","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport React from \"react\";\n\nvar _ref = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20 10c0-5.51-4.49-10-10-10C4.48 0 0 4.49 0 10c0 5.52 4.48 10 10 10 5.51 0 10-4.48 10-10zM7.78 15.37L4.37 6.22c.55-.02 1.17-.08 1.17-.08.5-.06.44-1.13-.06-1.11 0 0-1.45.11-2.37.11-.18 0-.37 0-.58-.01A8.87 8.87 0 0110 1.11c2.33 0 4.45.87 6.05 2.34-.68-.11-1.65.39-1.65 1.58 0 .74.45 1.36.9 2.1.35.61.55 1.36.55 2.46 0 1.49-1.4 5-1.4 5l-3.03-8.37c.54-.02.82-.17.82-.17.5-.05.44-1.25-.06-1.22 0 0-1.44.12-2.38.12-.87 0-2.33-.12-2.33-.12-.5-.03-.56 1.2-.06 1.22l.92.08 1.26 3.41zM17.41 10c.24-.64.74-1.87.43-4.25.7 1.29 1.05 2.71 1.05 4.25 0 3.29-1.73 6.24-4.4 7.78.97-2.59 1.94-5.2 2.92-7.78zM6.1 18.09C3.12 16.65 1.11 13.53 1.11 10c0-1.3.23-2.48.72-3.59C3.25 10.3 4.67 14.2 6.1 18.09zm4.03-6.63l2.58 6.98c-.86.29-1.76.45-2.71.45-.79 0-1.57-.11-2.29-.33.81-2.38 1.62-4.74 2.42-7.1z\"\n});\n\nvar SvgWordpress = function SvgWordpress(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"-2 -2 24 24\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _ref);\n};\n\nexport default SvgWordpress;","/**\n * External dependencies\n */\nimport React, {Component} from 'react';\n\nimport SVGRedux from '../../assets/img/icon.svg'\nimport SVGAcfBlocks from './images/acf-blocks.svg'\nimport SVGAtomicBlocks from './images/atomic-blocks.svg'\nimport SVGAdvancedCustomFields from './images/advanced-custom-fields.svg'\nimport SVGAdvancedGutenbergBlocks from './images/advanced-gutenberg-blocks.svg'\nimport SVGBlockOptions from './images/block-options.svg'\nimport SVGBlockSlider from './images/block-slider.svg'\nimport SVGCoblocks from './images/coblocks.svg'\nimport SVGCreativeBlocks from './images/creative-blocks.svg'\nimport SVGEditorPlus from './images/editorplus.svg'\nimport SVGElegantBlocks from './images/elegant-blocks.svg'\nimport SVGEnhancedBlocks from './images/enhanced-blocks.svg'\nimport SVGEssentialBlocks from './images/essential-blocks.svg'\nimport SVGFormsGutenberg from './images/forms-gutenberg.svg'\nimport SVGGetwid from './images/getwid.svg'\nimport SVGGhostkit from './images/ghostkit.svg'\nimport SVGGuteblock from './images/guteblock.svg'\n// import SVGGutenbergBlock from './images/gutenberg-blocks.png'\nimport SVGGutentor from './images/gutentor.svg'\nimport SVGKadenceBlocks from './images/kadence-blocks.svg'\nimport SVGKiokenBlocks from './images/kioken-blocks.svg'\nimport SVGOtterBlocks from './images/otter-blocks.svg'\nimport SVGQodeblock from './images/qodeblock.svg'\nimport SVGQubely from './images/qubely.svg'\nimport SVGSnowMonkeyBlocks from './images/snow-monkey-blocks.svg'\nimport SVGStackableUltimateGutenbergBlocks from './images/stackable-ultimate-gutenberg-blocks.svg'\nimport SVGUltimateAddonsForGutenberg from './images/ultimate-addons-for-gutenberg.svg'\nimport SVGUltimateBlocks from './images/ultimate-blocks.svg'\nimport SVGUltimatePost from './images/ultimate-post.svg'\nimport SVGWordPress from './images/wordpress.svg'\n\n// export const gutentor = () => {\n// \treturn <SVGGutentorIcon width=\"20\" height=\"20\"/>\n// }\n\n\nexport const redux = () => { return <SVGRedux width=\"20\" height=\"20\"/> }\nexport const acfblocks = () => { return <SVGAcfBlocks width=\"20\" height=\"20\"/> }\nexport const atomicblocks = () => { return <SVGAtomicBlocks width=\"20\" height=\"20\"/> }\nexport const advancedcustomfields = () => { return <SVGAdvancedCustomFields width=\"20\" height=\"20\"/> }\nexport const advancedgutenbergblocks = () => { return <SVGAdvancedGutenbergBlocks width=\"20\" height=\"20\"/> }\nexport const blockoptions = () => { return <SVGBlockOptions width=\"20\" height=\"20\"/> }\nexport const blockslider = () => { return <SVGBlockSlider width=\"20\" height=\"20\"/> }\nexport const coblocks = () => { return <SVGCoblocks width=\"20\" height=\"20\"/> }\nexport const creativeblocks = () => { return <SVGCreativeBlocks width=\"20\" height=\"20\"/> }\nexport const editorplus = () => { return <SVGEditorPlus width=\"20\" height=\"20\"/> }\nexport const elegantblocks = () => { return <SVGElegantBlocks width=\"20\" height=\"20\"/> }\nexport const enhancedblocks = () => { return <SVGEnhancedBlocks width=\"20\" height=\"20\"/> }\nexport const essentialblocks = () => { return <SVGEssentialBlocks width=\"20\" height=\"20\"/> }\nexport const formsgutenberg = () => { return <SVGFormsGutenberg width=\"20\" height=\"20\"/> }\nexport const getwid = () => { return <SVGGetwid width=\"20\" height=\"20\"/> }\nexport const ghostkit = () => { return <SVGGhostkit width=\"20\" height=\"20\"/> }\nexport const guteblock = () => { return <SVGGuteblock width=\"20\" height=\"20\"/> }\nexport const gutenbergblock = () => { return <SVGGutenbergBlock width=\"20\" height=\"20\"/> }\nexport const gutentor = () => { return <SVGGutentor width=\"20\" height=\"20\"/> }\nexport const kadenceblocks = () => { return <SVGKadenceBlocks width=\"20\" height=\"20\"/> }\nexport const kiokenblocks = () => { return <SVGKiokenBlocks width=\"20\" height=\"20\"/> }\nexport const otterblocks = () => { return <SVGOtterBlocks width=\"20\" height=\"20\"/> }\nexport const qodeblock = () => { return <SVGQodeblock width=\"20\" height=\"20\"/> }\nexport const qubely = () => { return <SVGQubely width=\"20\" height=\"20\"/> }\nexport const snowmonkeyblocks = () => { return <SVGSnowMonkeyBlocks width=\"20\" height=\"20\"/> }\nexport const stackableultimategutenbergblocks = () => { return <SVGStackableUltimateGutenbergBlocks width=\"20\" height=\"20\"/> }\nexport const ultimateaddonsforgutenberg = () => { return <SVGUltimateAddonsForGutenberg width=\"20\" height=\"20\"/> }\nexport const ultimateblocks = () => { return <SVGUltimateBlocks width=\"20\" height=\"20\"/> }\nexport const ultimatepost = () => { return <SVGUltimatePost width=\"20\" height=\"20\"/> }\nexport const wordpress = () => { return <SVGWordPress width=\"20\" height=\"20\"/> }\n\nimport SVGReduxTemplatesIcon from '../../assets/img/icon.svg'\nimport SVGReduxTemplatesColorIcon from '../../assets/img/icon-color.svg'\n//\n//\n// export const reqSvgs = require.context ( './images/third-party', true, /\\.svg$/ )\n//\n// export const reqSvgsKeys = reqSvgs.keys()\n//\n// const iconLoader = (path) => import(path);\n//\n// export const icons = {\n// \t'redux': iconLoader('../../assets/img/icon.svg'),\n// \t'forms-gutenberg': iconLoader('./images/forms-gutenberg.svg')\n// }\n//\n// export const svgs = reqSvgs\n// \t.keys ()\n// \t.reduce ( ( images, path ) => {\n// \t\timages[path.replace('./', '').replace('.svg', '')] = reqSvgs ( path )\n// \t\treturn images\n// \t}, {} )\n//\n// function importAll(r) {\n// \tlet images = {};\n// \tr.keys().map((item, index) => { images[item.replace('./', '').replace('.svg', '')] = r(item); });\n// \treturn images;\n// }\n// export const images = importAll(require.context( './images/third-party', false, /\\.(svg)$/));\n\n\n\n/**\n * WordPress dependencies\n */\nimport {cloneElement, render} from '@wordpress/element'\nimport domReady from '@wordpress/dom-ready'\nimport {updateCategory} from '@wordpress/blocks'\n\nexport const colorizeIcon = SvgIcon => {\n\treturn cloneElement(SvgIcon, {\n\t\tfill: 'url(#redux-gradient)',\n\t\tclassName: 'redux-icon-gradient',\n\t})\n}\n\nexport const thirdPartyIcon = (icon) => {\n\tif (icon) {\n\t\treturn <icon width=\"20\" height=\"20\"/>\n\t}\n}\n\n// Add an icon to our block category.\nif (typeof window.wp.blocks !== 'undefined' && typeof window.wp.blocks.updateCategory !== 'undefined') {\n\tupdateCategory(redux_templates.i18n, {\n\t\ticon: colorizeIcon(<SVGReduxTemplatesIcon className=\"components-panel__icon\" width=\"20\" height=\"20\"/>),\n\t})\n}\n\n// Add our SVG gradient placeholder definition that we'll reuse.\ndomReady(() => {\n\tconst redux_templatesGradient = document.createElement('DIV')\n\tdocument.querySelector('body').appendChild(redux_templatesGradient)\n\trender(\n\t\t<svg\n\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\tclassName=\"redux-gradient\"\n\t\t\theight=\"0\"\n\t\t\twidth=\"0\"\n\t\t\tstyle={{opacity: 0}}\n\t\t>\n\t\t\t<defs>\n\t\t\t\t<linearGradient id=\"redux-gradient\">\n\t\t\t\t\t<stop offset=\"0%\" stopColor=\"#8c33da\" stopOpacity=\"1\"/>\n\t\t\t\t\t<stop offset=\"100%\" stopColor=\"#f34957\" stopOpacity=\"1\"/>\n\t\t\t\t</linearGradient>\n\t\t\t</defs>\n\t\t</svg>,\n\t\tredux_templatesGradient\n\t)\n})\n\nexport const ReduxTemplatesIcon = () => {\n\treturn <SVGReduxTemplatesIcon width=\"20\" height=\"20\"/>\n}\n\nexport const ReduxTemplatesIconColor = () => {\n\treturn <SVGReduxTemplatesColorIcon width=\"20\" height=\"20\"/>\n}\n\nexport const ReduxTemplatesIconColorize = () => {\n\treturn colorizeIcon(<SVGReduxTemplatesIcon width=\"20\" height=\"20\"/>)\n}\nexport const core = () => {\n\treturn <SVGWordPress width=\"20\" height=\"20\"/>\n}\n//\n// export const AdvancedGutenbergBlocks = () => {\n// \treturn <SVGAdvancedGutenbergBlocksIcon width=\"20\" height=\"20\"/>\n// }\n// export const advancedgutenbergblocks = () => <AdvancedGutenbergBlocks/>\n//\n// export const AdvancedGutenberg = () => {\n// \treturn <SVGAdvancedGutenbergIcon width=\"20\" height=\"20\"/>\n// }\n// export const advancedgutenbergIcon = () => <AdvancedGutenberg/>\n//\n// export const AtomicBlocks = () => {\n// \treturn <SVGAtomicBlocksIcon width=\"20\" height=\"20\"/>\n// }\n// export const atomicblocks = () => <AtomicBlocks/>\n//\n// export const CoBlocks = () => {\n// \treturn <SVGCoBlocksIcon width=\"20\" height=\"20\"/>\n// }\n// export const Coblocks = () => <CoBlocks/>\n// export const coblocks = () => <CoBlocks/>\n//\n// export const Stackable = () => {\n// \treturn <SVGStackableIcon width=\"20\" height=\"20\"/>\n// }\n// export const stackable = () => <Stackable/>\n// export const stackableultimategutenbergblocks = () => <Stackable/>\n//\n// export const Qubely = () => {\n// \treturn <SVGQubelyIcon width=\"20\" height=\"20\"/>\n// }\n// export const qubely = () => <Qubely/>\n//\n// export const Kioken = () => {\n// return <SVGKiokenIcon width=\"20\" height=\"20\"/>\n// }\n// export const kioken = () => <Kioken/>\n// export const kiokenblocks = () => <Kioken/>\n//\n// export const kadenceblocks = () => {\n// \treturn <SVGKadenceIcon width=\"20\" height=\"20\"/>\n// }\n//\n// export const CreativeBlocks = () => {\n// \treturn <SVGCreativeBlocksIcon width=\"20\" height=\"20\"/>\n// }\n// export const creativeblocks = () => <CreativeBlocks/>\n// export const qb = () => <CreativeBlocks/>\n//\n// export const EssentialBlocks = () => {\n// \treturn <SVGEssentialBlocksIcon width=\"20\" height=\"20\"/>\n// }\n// export const essentialblocks = () => <EssentialBlocks/>\n// export const eb = () => <EssentialBlocks/>\n//\n// export const UltimateAddonsForGutenberg = () => {\n// \treturn <SVGUltimateAddonsForGutenbergIcon width=\"20\" height=\"20\"/>\n// }\n// export const ultimateaddonsforgutenberg = () => <UltimateAddonsForGutenberg/>\n//\n//\n// export const UltimateBlocks = () => {\n// \treturn <SVGUltimateBlocksIcon width=\"20\" height=\"20\"/>\n// }\n// export const ultimateblocks = () => <UltimateBlocks/>\n//\n// export const gutentor = () => {\n// \treturn <SVGGutentorIcon width=\"20\" height=\"20\"/>\n// }\n//\n//\n// export const GutenbergForms = () => {\n// \treturn <SVGGutenbergFormsIcon width=\"20\" height=\"20\"/>\n// }\n// export const gutenbergforms = () => <GutenbergForms/>\n// export const formsgutenberg = () => <GutenbergForms/>\n//\n","/**\n * Library Button\n */\n\n/**\n * WordPress dependencies\n */\nimport domReady from '@wordpress/dom-ready'\nimport { render } from '@wordpress/element'\n\n/**\n * External dependencies\n */\nimport './editor.scss'\nimport './blocks/blocks'\nimport './plugins/sidebar-share'\nimport './plugins/share-block-btn'\nimport './plugins/export'\nimport './plugins/export-page-menu-item'\nimport './plugins/library-context-menu-item'\nimport TooltipBox from './challenge/tooltip/TooltipBox';\nimport {handlingLocalStorageData} from './stores/helper';\nimport ReduxTemplatesChallenge from './challenge'\nimport {ModalManager} from './modal-manager';\nimport LibraryModal from './modal-library';\nimport './custom-css'\n\n\ndomReady(() => {\n setTimeout(() => {\n const challengeDiv = document.createElement('div');\n challengeDiv.className = 'challenge-tooltip-holder';\n document.body.appendChild(challengeDiv);\n const challengeWrapperDiv = document.createElement('div');\n challengeWrapperDiv.className = 'challenge-wrapper';\n document.body.appendChild(challengeWrapperDiv);\n\n if (window.location.hash == '#redux_challenge=1') {\n window.location.hash = '';\n ModalManager.open(<LibraryModal />);\n }\n\t\tif (window.location.hash == '#redux_templates=1') {\n\t\t\twindow.location.hash = '';\n\t\t\tModalManager.open(<LibraryModal />);\n }\n\n // For frontenberg, we open the dialog automatically.\n if (document.body.classList.contains( 'wp-admin' ) === false) {\n ModalManager.open(<LibraryModal />);\n }\n render(<ReduxTemplatesChallenge />, challengeWrapperDiv);\n render(<TooltipBox />, challengeDiv);\n\n handlingLocalStorageData();\n }, 500)\n});\n","/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n'\nimport { ModalManager } from '~redux-templates/modal-manager';\nimport Form from '@rjsf/core';\nimport {BlockPreview} from '@wordpress/block-editor';\nconst {useState} = wp.element;\nconst {apiFetch} = wp;\n\nfunction FeedbackDialog(props) {\n const {title, description, schema, uiSchema, headerImage, headerIcon, data, ignoreData, endpoint, width, buttonLabel} = props;\n const {closeModal, onSuccess} = props;\n\n const [loading, setLoading] = useState(false);\n const [errorMessage, setErrorMessage] = useState(null);\n\n const onSubmit = ({formData}) => {\n const path = `redux/v1/templates/${endpoint ? endpoint : 'feedback'}`;\n if (loading) return;\n setLoading(true);\n apiFetch({\n path,\n method: 'POST',\n data: ignoreData ? formData : {...data, ...formData}\n }).then(data => {\n setLoading(false);\n if (data.success) {\n setErrorMessage(null);\n if (onSuccess) onSuccess(data); else onCloseModal();\n } else {\n console.log('There was an error: ', data);\n setErrorMessage(__('An unexpected error occured, please try again later.', redux_templates.i18n));\n }\n }).catch(err => {\n setLoading(false);\n console.log('There was an error: ', err);\n setErrorMessage(__('An unexpected error occured, please try again later.', redux_templates.i18n));\n });\n }\n\n const onCloseModal = () => {\n if (closeModal) closeModal(); else ModalManager.closeFeedback();\n }\n\n const style = width ? {width} : null;\n const wrapperClassname = width ? 'redux-templates-modal-wrapper feedback-popup-wrapper less-margin' : 'redux-templates-modal-wrapper feedback-popup-wrapper';\n\n return (\n <div className=\"redux-templates-modal-overlay\">\n <div className={wrapperClassname} style={style}>\n <div className=\"feedback-popup-header feedback-popup-header-contact\">\n {headerImage}\n {headerIcon}\n <a className=\"feedback-popup-close\" onClick={onCloseModal}>\n <i className='fas fa-times' />\n </a>\n </div>\n <div className=\"feedback-popup-content\">\n <h3>{title}</h3>\n {errorMessage && <p className=\"error-message\">{errorMessage}</p>}\n <p>{description}</p>\n <div className=\"col-wrapper\">\n <Form schema={schema} uiSchema={uiSchema} onSubmit={onSubmit}>\n <button className=\"feedback-popup-btn feedback-popup-rate-btn\" type=\"submit\">\n {loading && <i className=\"fas fa-spinner fa-pulse\"/>}\n {buttonLabel}\n </button>\n </Form>\n { data && data.editor_blocks &&\n <div className=\"preview-panel\">\n <div className=\"redux-templates-block-preview-hover\" />\n <BlockPreview blocks={data.editor_blocks} />\n </div>\n }\n </div>\n </div> {/* /.feedback-popup-content */}\n </div>\n </div>\n );\n}\n\nexport default FeedbackDialog;\n","import React from 'react';\nconst {useState, useEffect, useRef} = wp.element;\nconst {Spinner} = wp.components;\nimport TextTransition, { presets } from 'react-text-transition';\nconst {__} = wp.i18n\n\nconst MESSAGE_DELAY_MILLISECONDS = 4000;\n\nconst MESSAGES_LIST = [\n __('Please wait while your template is prepared.', redux_templates.i18n),\n __('Fetching the template.', redux_templates.i18n),\n __('We\\'re getting closer now.', redux_templates.i18n),\n __('Wow, this is taking a long time.', redux_templates.i18n),\n __('Gah, this should be done by now!', redux_templates.i18n),\n __('Really, this should be done soon.', redux_templates.i18n),\n __('Are you sure your internet is working?!', redux_templates.i18n),\n __('Give up, it looks like it didn\\'t work...', redux_templates.i18n),\n];\n\nfunction useInterval(callback, delay) {\n const savedCallback = useRef();\n\n // Remember the latest callback.\n useEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n\n // Set up the interval.\n useEffect(() => {\n function tick() {\n savedCallback.current();\n }\n\n if (delay !== null) {\n let id = setInterval(tick, delay);\n return () => clearInterval(id);\n }\n }, [delay]);\n}\n\nexport default function ImportingStep(props) {\n const [messageIndex, setMessageIndex] = useState(0);\n const [loadingMessage, setLoadingMessage] = useState(MESSAGES_LIST[0]);\n\n useInterval(() => {\n if (messageIndex === MESSAGES_LIST.length) return;\n setMessageIndex(messageIndex => messageIndex + 1);\n setLoadingMessage([MESSAGES_LIST[messageIndex + 1]]);\n }, MESSAGE_DELAY_MILLISECONDS)\n\n return (\n <div className=\"redux-templates-modal-body\">\n <div className=\"redux-templates-import-wizard-spinner-wrapper\">\n <TextTransition\n text={loadingMessage}\n springConfig={presets.gentle}\n />\n <Spinner/>\n </div>\n </div>\n );\n};\n","import {pluginInfo} from '~redux-templates/stores/dependencyHelper';\n\nconst {apiFetch} = wp;\nconst {compose} = wp.compose;\nconst {withDispatch} = wp.data;\nconst {Fragment, useState} = wp.element;\nconst {__} = wp.i18n;\n\nfunction InstallPluginStep(props) {\n\n const {missingPlugins, toNextStep, onCloseWizard} = props;\n const {setInstalledDependencies} = props;\n const [installingPlugin, setInstallingPlugin] = useState(null);\n const [installedList, setInstalledList] = useState([]);\n const [failedList, setFailedList] = useState([]);\n const [waitingList, setWaitingList] = useState(missingPlugins);\n\n const preInstallInit = () => {\n setInstalledList([]);\n setFailedList([]);\n setWaitingList(missingPlugins);\n setInstallingPlugin(null);\n setInstalledDependencies(false);\n }\n\n const onInstallPlugins = async () => {\n preInstallInit();\n let localInstalledList = [];\n let localFailedList = [];\n let localWaitingList = [...waitingList];\n for (let pluginKey of missingPlugins) {\n const pluginInstance = redux_templates.supported_plugins[pluginKey];\n localWaitingList = localWaitingList.filter(key => key !== pluginKey)\n setWaitingList(localWaitingList);\n if (!pluginKey || !pluginInstance) {\n setInstallingPlugin(null);\n break;\n }\n setInstallingPlugin({...pluginInstance, pluginKey});\n const reduxProSurfix = (pluginInstance.redux_pro) ? '&redux_pro=1' : '';\n await apiFetch({\n path: 'redux/v1/templates/plugin-install?slug=' + pluginKey + reduxProSurfix,\n }).then(res => {\n if (res.success) {\n setInstalledDependencies(true);\n localInstalledList = [...localInstalledList, pluginKey];\n setInstalledList(localInstalledList);\n if (localWaitingList.length === 0) setInstallingPlugin(null);\n } else {\n localFailedList = [...localFailedList, pluginKey]\n setFailedList(localFailedList);\n if (localWaitingList.length === 0) setInstallingPlugin(null);\n }\n })\n .catch(res => {\n localFailedList = [...localFailedList, pluginKey]\n setFailedList(localFailedList);\n if (localWaitingList.length === 0) setInstallingPlugin(null);\n });\n }\n }\n if (waitingList.length === 0 && failedList.length === 0 && installingPlugin === null)\n toNextStep();\n return (\n\n <Fragment>\n <div className=\"redux-templates-modal-body\">\n <h5>{__('Install Required Plugins', redux_templates.i18n)}</h5>\n <p>{__('Plugins needed to import this template are missing. Required plugins will be installed and activated automatically.', redux_templates.i18n)}</p>\n {\n (installingPlugin === null && failedList.length > 0) &&\n (<p className='error'>\n It's us, not you, we recommend you to try again later or contact us <a href='#'>here</a>\n </p>)\n }\n\n <ul className=\"redux-templates-import-progress\">\n {\n missingPlugins &&\n missingPlugins.map(pluginKey => {\n\n let plugin = pluginInfo(pluginKey)\n\n if (installingPlugin && installingPlugin.pluginKey === pluginKey)\n return (\n <li className=\"installing\" key={installingPlugin.pluginKey}>{installingPlugin.name}\n <i className=\"fas fa-spinner fa-pulse\"/></li>);\n if (failedList.includes(pluginKey))\n return (<li className=\"failure\" key={pluginKey}>{plugin.name} <i\n className=\"fas fa-exclamation-triangle\"/></li>);\n if (waitingList.includes(pluginKey))\n return (<li className=\"todo\" key={pluginKey}>{plugin.name} {plugin.url &&\n <a href={plugin.url} target=\"_blank\"><i className=\"fas fa-external-link-alt\"/></a>\n }</li>);\n if (installedList.includes(pluginKey))\n return (<li className=\"success\" key={pluginKey}>{plugin.name} <i\n className=\"fas fa-check-square\"/></li>);\n })\n }\n </ul>\n </div>\n <div className=\"redux-templates-modal-footer\">\n {waitingList.length !== 0 &&\n <button className=\"button button-primary\" disabled={installingPlugin !== null}\n onClick={() => onInstallPlugins()}>\n {installingPlugin !== null && <i className=\"fas fa-spinner fa-pulse\"/>}\n <span>{__('Install', redux_templates.i18n)}</span>\n </button>\n }\n <button className=\"button button-secondary\" disabled={installingPlugin !== null}\n onClick={onCloseWizard}>\n {__('Cancel', redux_templates.i18n)}\n </button>\n </div>\n </Fragment>\n );\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n setInstalledDependencies\n } = dispatch('redux-templates/sectionslist');\n return {\n setInstalledDependencies\n };\n })\n])(InstallPluginStep);\n","import {pluginInfo} from '~redux-templates/stores/dependencyHelper';\nimport {Tooltip} from '@wordpress/components';\n\nconst {apiFetch} = wp;\nconst {compose} = wp.compose;\nconst {withDispatch} = wp.data;\nconst {Fragment, useState} = wp.element;\nconst {__} = wp.i18n;\n\nfunction OptionStep(props) {\n\n const {setImportToAppend, toNextStep, onCloseWizard} = props;\n\n const onNextStep = (isToAppend) => {\n setImportToAppend(isToAppend);\n toNextStep();\n }\n\n return (\n\n <Fragment>\n <div className=\"redux-templates-modal-body\">\n <h5>{__('Append or Replace', redux_templates.i18n)}</h5>\n <p>{__('You have existing content on this page. How would you like to handle the import of this page template?', redux_templates.i18n)}</p>\n\t <div style={{textAlign:'center', marginTop: '30px'}}>\n\t\t {/*<Tooltip text={__('This template will be added to the bottom of the existing content.', redux_templates.i18n)} position=\"bottom center\">*/}\n\t\t\t <button className=\"button button-primary\" onClick={() => onNextStep(true)} style={{marginRight: '10px'}}>\n\t\t\t\t {__('Append to Content', redux_templates.i18n)}\n\t\t\t </button>\n\t\t {/*</Tooltip>*/}\n\t\t {/*<Tooltip text={__('All the existing content will be replaced with this new template.', redux_templates.i18n)} position=\"top right\">*/}\n\t\t\t <button className=\"button button-primary\" onClick={() => onNextStep(false)}>\n\t\t\t\t {__('Replace all Content', redux_templates.i18n)}\n\t\t\t </button>\n\t\t {/*</Tooltip>*/}\n\t </div>\n </div>\n <div className=\"redux-templates-modal-footer\">\n <button className=\"button button-secondary\" onClick={onCloseWizard}>\n {__('Cancel', redux_templates.i18n)}\n </button>\n </div>\n </Fragment>\n );\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n setImportToAppend\n } = dispatch('redux-templates/sectionslist');\n return {\n setImportToAppend\n };\n })\n])(OptionStep);\n","const {Fragment} = wp.element;\nconst {__} = wp.i18n;\n\nimport ReduxTemplatesPremiumBox from './ReduxTemplatesPremiumBox';\nimport {pluginInfo} from '~redux-templates/stores/dependencyHelper';\nconst REDUXTEMPLATES_PRO_KEY = 'redux-pro';\nexport default function ProPluginStep(props) {\n const {missingPros, onCloseWizard} = props;\n\n if ( missingPros.indexOf(REDUXTEMPLATES_PRO_KEY) >= 0 ) return <ReduxTemplatesPremiumBox />\n return (\n <Fragment>\n <div className=\"redux-templates-modal-body\">\n <h5>{__('Additional Plugins Required', redux_templates.i18n)}</h5>\n <p>{__('The following premium plugin(s) are required to import this template:', redux_templates.i18n)}</p>\n <ul className=\"redux-templates-import-progress\">\n {\n missingPros.map(pluginKey => {\n let plugin = pluginInfo(pluginKey)\n return (\n <li className='installing' key={pluginKey}>\n {plugin.name} {plugin.url &&\n <a href={plugin.url} target=\"_blank\"><i className=\"fas fa-external-link-alt\"/></a>\n }\n </li>);\n })\n }\n </ul>\n\n </div>\n <div className=\"redux-templates-modal-footer\">\n <a className=\"button button-secondary\" onClick={onCloseWizard}>\n {__('Close', redux_templates.i18n)}\n </a>\n </div>\n </Fragment>\n );\n}\n\n","const {__} = wp.i18n\n\n\nexport default function ReduxTemplatesActivateBox({onActivateRedux, activating}) {\n\n return (\n <div className=\"redux-templates-modal-body\">\n <div className=\"section-box premium-box\">\n <h3>{__('Registration Required to Import Templates', redux_templates.i18n)}</h3>\n <p>{__(' Register now to import templates from the Redux template library in a single click.', redux_templates.i18n)}</p>\n <ul>\n <li><strong>{__('Unlimited', redux_templates.i18n)}</strong> {__('use of our free templates.', redux_templates.i18n)}</li>\n\t <li><strong>{__('Updates', redux_templates.i18n)}</strong> {__('to the library.', redux_templates.i18n)}</li>\n <li><strong>{__('Google Fonts', redux_templates.i18n)}</strong> {__('manual updates.', redux_templates.i18n)}</li>\n </ul>\n <p>\n\t <button className=\"button button-primary\"\n\t disabled={activating}\n\t onClick={() => onActivateRedux()}>\n\t\t {activating && <i className=\"fas fa-spinner fa-pulse\" style={{marginRight:'5px'}}/>}\n\t\t <span>{__('Register for Free', redux_templates.i18n)}</span>\n\t </button>\n </p>\n\t <p style={{fontSize:'1.1em'}}><small><em dangerouslySetInnerHTML={{__html: redux_templates.tos}} /></small></p>\n </div>\n </div>\n );\n}\n","const {__} = wp.i18n\n\nexport default function ReduxTemplatesPremiumBox(props) {\n return (\n <div className=\"redux-templates-modal-body\">\n <div className=\"section-box premium-box\">\n <h3>{__('Upgrade to Redux Pro', redux_templates.i18n)}</h3>\n\n <p>{__('Upgrade to unlock 1,000+ designs to build your pages quick!', redux_templates.i18n)}</p>\n <ul>\n <li><strong>{__('Unlimited', redux_templates.i18n)}</strong> {__('access to the Library', redux_templates.i18n)}</li>\n <li><strong>{__('Google Fonts', redux_templates.i18n)}</strong> {__('always up to date.', redux_templates.i18n)}</li>\n <li><strong>{__('Advanced Customizer', redux_templates.i18n)}</strong> {__('for settings.', redux_templates.i18n)}</li>\n <li><strong>{__('And so much more!', redux_templates.i18n)}</strong></li>\n </ul>\n <p>\n <a href={redux_templates.u} className=\"redux-templates-upgrade-button\" title=\"{__('Redux Pro', redux_templates.i18n)}\"\n target='_blank'>{__('Upgrade Now', redux_templates.i18n)}</a>\n </p>\n </div>\n </div>\n );\n}\n","const {__} = wp.i18n;\nconst {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {useState, useEffect} = wp.element;\nconst {apiFetch} = wp;\n\nimport InstallPluginStep from './InstallPluginStep';\nimport ProPluginStep from './ProPluginsStep';\nimport OptionStep from './OptionStep';\nimport ImportingStep from './ImportingStep';\nimport ReduxTemplatesPremiumBox from './ReduxTemplatesPremiumBox';\nimport ReduxTemplatesActivateBox from './ReduxTeamplatesActivateBox';\n\nimport {requiresInstall, requiresPro, requiresReduxPro, isReduxProInstalled} from '~redux-templates/stores/dependencyHelper'\n\nimport '../modals.scss'\nimport './style.scss'\n\nconst PRO_STEP = 0;\nconst PLUGIN_STEP = 1;\nconst OPTION_STEP = 2;\nconst IMPORT_STEP = 3;\nconst REDUX_PRO_STEP = -1;\nconst REDUX_ACTIVATE_STEP = 999;\nconst tourPlugins = ['qubely', 'kioken-blocks'];\n\nfunction ImportWizard(props) {\n const {startImportTemplate, setImportingTemplate, setActivateDialogDisplay, appendErrorMessage} = props;\n const {isChallengeOpen, importingTemplate, activateDialogDisplay, isPostEmpty, isInstalledDependencies} = props;\n const [currentStep, setCurrentStep] = useState(PRO_STEP);\n const [importing, setImporting] = useState(false);\n const [activating, setActivating] = useState(false);\n const [missingPlugins, setMissingPlugins] = useState([]);\n\n useEffect(() => {\n if (importingTemplate) {\n \tif ( !importingTemplate.proDependenciesMissing ) {\n\t\t importingTemplate.proDependenciesMissing = [];\n\t }\n\t if ( !importingTemplate.installDependenciesMissing ) {\n\t\t importingTemplate.installDependenciesMissing = [];\n\t }\n // IMPORTANT First check: can you use redux pro?\n const leftTry = isNaN(redux_templates.left) === false ? parseInt(redux_templates.left) : 0;\n if (redux_templates.mokama !== '1' && leftTry < 1) {\n setCurrentStep(REDUX_ACTIVATE_STEP);\n return;\n }\n /* Redux pro check */\n if (requiresReduxPro(importingTemplate)) {\n setCurrentStep(REDUX_PRO_STEP);\n return;\n }\n // Start with Pro step\n // When all OK with Pro Step, move to Plugin Step, on the way, prepare reduxProMergedPlugins.\n if (importingTemplate && currentStep === PRO_STEP && requiresPro(importingTemplate) === false) {\n setCurrentStep(PLUGIN_STEP);\n if (isReduxProInstalled()) {\n setMissingPlugins(\n [].concat(importingTemplate.proDependenciesMissing, importingTemplate.installDependenciesMissing)\n .filter(plugin => plugin)\n );\n } else {\n\t setMissingPlugins(importingTemplate.installDependenciesMissing.filter(plugin => plugin));\n }\n\n }\n if (importingTemplate && currentStep === PLUGIN_STEP && requiresInstall(importingTemplate) === false)\n if (isPostEmpty === false) setCurrentStep(OPTION_STEP); else setCurrentStep(IMPORT_STEP);\n if (importingTemplate && currentStep === OPTION_STEP && isPostEmpty === true)\n setCurrentStep(IMPORT_STEP);\n if (importingTemplate && currentStep === IMPORT_STEP && importing === false) {\n setImporting(true);\n try {\n startImportTemplate();\n } catch (e) {\n console.log('importing exception', e);\n setImporting(false);\n setCurrentStep(PLUGIN_STEP);\n setImportingTemplate(null);\n }\n }\n }\n }, [importingTemplate, currentStep, activateDialogDisplay])\n\n // Activate dialog disply\n useEffect(() => {\n if (activateDialogDisplay === true) { // Activate dialog hard reset case\n setCurrentStep(REDUX_ACTIVATE_STEP);\n setActivateDialogDisplay(false);\n }\n }, [activateDialogDisplay]);\n\n // On the initial loading\n useEffect(() => {\n setActivateDialogDisplay(false);\n }, []);\n\n const toNextStep = () => {\n if (isChallengeOpen) return;\n setCurrentStep(currentStep + 1);\n };\n\n const onCloseWizard = () => {\n if (isChallengeOpen) return; // When in tour mode, we don't accept mouse event.\n if (importing) return;\n setCurrentStep(PLUGIN_STEP);\n setImportingTemplate(null);\n };\n\n const activateReduxTracking = () => {\n setActivating(true);\n\t apiFetch({path: 'redux/v1/templates/activate'}).then(response => {\n\t\t if (response.success) {\n\t\t\t redux_templates.left = response.data.left;\n\t\t }\n\t\t setCurrentStep(PRO_STEP);\n\t\t setActivating(false);\n\t }).catch(error => {\n\t\t appendErrorMessage(error.code + ' : ' + error.message);\n\t\t setCurrentStep(PRO_STEP);\n\t\t setActivating(false);\n\t });\n }\n\n\n if (isChallengeOpen) {\n // exception handling for tour mode\n if (currentStep !== PLUGIN_STEP) setCurrentStep(PLUGIN_STEP)\n }\n\n if (!importingTemplate) return null;\n return (\n <div className=\"redux-templates-modal-overlay\">\n <div className=\"redux-templates-modal-wrapper\" data-tut=\"tour__import_wizard\">\n <div className=\"redux-templates-modal-header\">\n <h3>{__('Import Wizard', redux_templates.i18n)}</h3>\n <button className=\"redux-templates-modal-close\" onClick={onCloseWizard}>\n <i className={'fas fa-times'}/>\n </button>\n </div>\n <div className=\"redux-templates-importmodal-content\">\n {(currentStep === PRO_STEP) && requiresPro(importingTemplate) &&\n <ProPluginStep missingPros={importingTemplate.proDependenciesMissing } onCloseWizard={onCloseWizard} />}\n {(currentStep === PLUGIN_STEP) &&\n <InstallPluginStep missingPlugins={isChallengeOpen ? tourPlugins : missingPlugins} toNextStep={toNextStep}\n onCloseWizard={onCloseWizard}/>}\n {currentStep === OPTION_STEP && <OptionStep toNextStep={toNextStep} onCloseWizard={onCloseWizard} />}\n {currentStep === IMPORT_STEP && <ImportingStep />}\n\t {currentStep === REDUX_ACTIVATE_STEP && <ReduxTemplatesActivateBox onActivateRedux={activateReduxTracking} activating={activating} />}\n {currentStep === REDUX_PRO_STEP && <ReduxTemplatesPremiumBox />}\n {isInstalledDependencies && <iframe src='./' width=\"0\" height=\"0\" />}\n </div>\n </div>\n </div>\n );\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {setImportingTemplate, setActivateDialogDisplay, appendErrorMessage} = dispatch('redux-templates/sectionslist');\n return {\n setImportingTemplate,\n setActivateDialogDisplay,\n appendErrorMessage\n };\n }),\n\n withSelect((select, props) => {\n const {getChallengeOpen, getImportingTemplate, getActivateDialogDisplay, getInstalledDependencies} = select('redux-templates/sectionslist');\n const {isEditedPostEmpty} = select('core/editor');\n return {\n isChallengeOpen: getChallengeOpen(),\n importingTemplate: getImportingTemplate(),\n activateDialogDisplay: getActivateDialogDisplay(),\n isPostEmpty: isEditedPostEmpty(),\n isInstalledDependencies: getInstalledDependencies()\n };\n })\n])(ImportWizard);\n","\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","const {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst { useState, useEffect} = wp.element;\nimport '../stores';\n\nimport {Modal, ModalManager} from '../modal-manager'\nimport TabHeader from '../components/tab-header';\nimport WithSidebarLayout from './layout-with-sidebar';\nimport CollectionView from './view-collection';\nimport SavedView from './view-saved';\nimport ImportWizard from '../modal-import-wizard';\nimport ErrorNotice from '../components/error-notice';\nimport ChallengeFinalTemplate from '~redux-templates/challenge/final-templates';\nimport FabWrapper from '../components/fab-wrapper';\nimport {processImportHelper} from '~redux-templates/stores/actionHelper';\nimport './style.scss'\n\n\nfunction LibraryModal(props) {\n const {\n fetchLibraryFromAPI, activeCollection, activeItemType, errorMessages, importingTemplate, challengeFinalStatus, isChallengeOpen,\n setLoading, setImportingTemplate, clearSearch, clearState\n } = props;\n const [loaded, setLoaded] = useState(false);\n const [escKeyPressed, setEscKeyPressed] = useState(false);\n\n let stateLibrary = null;\n useEffect(() => {\n\t\tclearState();\n stateLibrary = fetchLibraryFromAPI();\n if (stateLibrary === null && loaded === false) { // One to be called at first.\n setLoading(true);\n setLoaded(true);\n }\n const handleKeyUp = ({keyCode}) => {\n if (keyCode === 27) {\n setEscKeyPressed(true);\n }\n }\n document.addEventListener('keyup', handleKeyUp);\n return () => {\n document.removeEventListener('keyup', handleKeyUp);\n }\n }, []);\n\n useEffect(() => {\n if (escKeyPressed) {\n setEscKeyPressed(false);\n if (ModalManager.isCustomizerOpened()) {\n ModalManager.closeCustomizer();\n } else {\n if (importingTemplate)\n setImportingTemplate(null);\n else {\n ModalManager.close();\n }\n }\n }\n }, [escKeyPressed])\n\n const hasSidebar = () => {\n return ((activeItemType !== 'collection' || activeCollection === null) && activeItemType !== 'saved');\n }\n\n // read block data to import and give the control to actual import\n const processImport = () => {\n if (importingTemplate) processImportHelper();\n }\n\n\n return (\n <Modal className=\"redux-templates-builder-modal-pages-list\"\n customClass=\"redux-templates-builder-modal-template-list\"\n openTimeoutMS={0} closeTimeoutMS={0}>\n <TabHeader/>\n {\n errorMessages && errorMessages.length > 0 &&\n <ErrorNotice errorMessages={errorMessages}/>\n }\n <div className=\"redux-templates-collections-modal-body\">\n {hasSidebar() && <WithSidebarLayout/>}\n {(hasSidebar() === false && activeItemType === 'collection') && <CollectionView/>}\n {(hasSidebar() === false && activeItemType !== 'collection') && <SavedView/>}\n </div>\n {\n importingTemplate && <ImportWizard startImportTemplate={processImport} />\n }\n { (challengeFinalStatus !== '') && <ChallengeFinalTemplate finalStatus={challengeFinalStatus} /> }\n { !isChallengeOpen && <FabWrapper /> }\n </Modal>\n );\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n setLoading,\n setLibrary,\n setImportingTemplate,\n clearSearch,\n\t\t\tclearState\n } = dispatch('redux-templates/sectionslist');\n\n return {\n setLoading,\n setLibrary,\n setImportingTemplate,\n clearSearch,\n\t\t\tclearState\n };\n }),\n\n withSelect((select) => {\n const {fetchLibraryFromAPI, getActiveCollection, getActiveItemType, getErrorMessages, getImportingTemplate, getChallengeOpen, getChallengeFinalStatus} = select('redux-templates/sectionslist');\n return {\n fetchLibraryFromAPI,\n activeCollection: getActiveCollection(),\n activeItemType: getActiveItemType(),\n errorMessages: getErrorMessages(),\n importingTemplate: getImportingTemplate(),\n challengeFinalStatus: getChallengeFinalStatus(),\n isChallengeOpen: getChallengeOpen()\n };\n })\n])(LibraryModal);\n","const { Fragment } = wp.element;\nimport Sidebar from '../sidebar';\nimport TemplateListSubHeader from '~redux-templates/components/template-list-subheader';\nimport TemplateList from '../view-template-list';\n\nexport default function WithSidebarCollection (props) {\n return (\n <Fragment>\n <div id=\"redux-templates-collection-modal-sidebar\" className=\"redux-templates-collection-modal-sidebar\">\n <Sidebar />\n </div>\n <div className=\"redux-templates-collection-modal-content-area\" data-tut=\"tour__main_body\" id=\"modalContent\">\n <TemplateListSubHeader />\n <TemplateList />\n </div>\n </Fragment>\n );\n}\n","const {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {__} = wp.i18n;\n\nimport uniq from 'lodash/uniq';\n\nfunction CategoryFilter (props) {\n const {categoryData, activeCategory, activePriceFilter, loading, itemType} = props;\n const {setActiveCategory} = props;\n\n\n // On the top, All Block, All Template, All Template Kit etc\n const itemTypeLabel = () => {\n if (itemType === 'section') return __('Section', redux_templates.i18n);\n if (itemType === 'page') return __('Template', redux_templates.i18n);\n if (itemType === 'collection') return __('Template Kit', redux_templates.i18n);\n };\n\n const totalItemCountLabel = () => {\n let totalArr = [], filteredArr = [];\n categoryData.forEach((category) => {\n if (category.hasOwnProperty('filteredData')) filteredArr = [...filteredArr, ...category.filteredData];\n totalArr = [...totalArr, ...category.ids];\n });\n return (activePriceFilter !== '') ? uniq(filteredArr).length + '/' + uniq(totalArr).length : uniq(totalArr).length;\n };\n\n const isDisabledCategory = (data) => (data && ((data.hasOwnProperty('filteredData') && data.filteredData.length === 0) || data.ids.length === 0));\n\n const onChangeCategory = (data) => {\n if (isDisabledCategory(data)) return;\n setActiveCategory(data.slug);\n };\n // Give the selected category(activeCategory) label className as \"active\"\n const activeClassname = (data) => {\n const categoryLabel = data ? data.slug : '';\n if (isDisabledCategory(data)) return 'disabled';\n return activeCategory === categoryLabel ? 'active' : '';\n };\n\n return (\n <div>\n <h3>{__('Categories', redux_templates.i18n)}</h3>\n {!loading &&\n <ul className=\"redux-templates-sidebar-categories\">\n {categoryData.length > 0 &&\n <li\n className={activeClassname(null)}\n onClick={() => setActiveCategory('')}>\n {__('All', redux_templates.i18n)} {itemTypeLabel()}s <span>{totalItemCountLabel()}</span>\n </li>\n }\n\n {categoryData &&\n categoryData.map((data, index) => (\n <li className={activeClassname(data)} onClick={() => onChangeCategory(data)}\n key={index}>\n {data.name}\n <span> {data.hasOwnProperty('filteredData') && activePriceFilter !== '' ? data.filteredData.length : data.ids.length } </span>\n </li>\n ))\n }\n </ul>\n }\n </div>\n );\n}\n\nexport default compose([\n withDispatch((dispatch) => {\n const {setActiveCategory} = dispatch('redux-templates/sectionslist');\n return {\n setActiveCategory\n };\n }),\n\n withSelect((select, props) => {\n const {getCategoryData, getActiveCategory, getActiveItemType, getLoading} = select('redux-templates/sectionslist');\n return {\n categoryData: getCategoryData(),\n activeCategory: getActiveCategory(),\n itemType: getActiveItemType(),\n loading: getLoading(),\n };\n })\n])(CategoryFilter);\n","const {Fragment} = wp.element;\nconst {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {__} = wp.i18n;\nimport ChallengeDot from '~redux-templates/challenge/tooltip/ChallengeDot';\n\nimport {CheckboxControl, Tooltip, Button, ButtonGroup} from '@wordpress/components';\nimport DependencyFilterRow from './dependencyFilterRow';\nimport {pluginInfo} from '~redux-templates/stores/dependencyHelper';\nimport {REDUXTEMPLATES_PRO_KEY, NONE_KEY} from '~redux-templates/stores/helper';\n\nfunction DependencyFilter(props) {\n const {dependencyFilters, activeItemType, loading, wholePlugins, dependencyFilterRule} = props;\n const {setDependencyFilters, selectDependencies, setDependencyFilterRule} = props;\n // Give the selected category(activeCategory) label className as \"active\"\n const isNoneChecked = () => {\n if (dependencyFilters.hasOwnProperty(NONE_KEY))\n return dependencyFilters[NONE_KEY].hasOwnProperty('value') ? dependencyFilters[NONE_KEY].value : dependencyFilters[NONE_KEY];\n return false;\n };\n\n const toggleNoneChecked = () => {\n setDependencyFilters({...dependencyFilters,\n [NONE_KEY]: { value: dependencyFilters[NONE_KEY].value === false, disabled: dependencyFilters[NONE_KEY]['disabled'] === true }\n });\n };\n return (\n <Fragment>\n {!loading && wholePlugins &&\n <div id=\"redux-templates-filter-dependencies\" data-tut=\"tour__filter_dependencies\">\n\t <>\n\t\t <ButtonGroup style={{float:'right'}}>\n\t\t\t <Tooltip text={__('Find templates which contain blocks from any of the selected plugins.', redux_templates.i18n)} position=\"top right\">\n\t\t\t\t <Button isSmall isPrimary={dependencyFilterRule === false} isSecondary={dependencyFilterRule} onClick={() => setDependencyFilterRule(false)} disabled={activeItemType === 'collection'}>{__('Any', redux_templates.i18n)}</Button>\n\t\t\t </Tooltip>\n\t\t\t <Tooltip text={__('Find templates that only contain blocks from the selected plugins.', redux_templates.i18n)} position=\"top right\">\n\t\t\t\t <Button isSmall isSecondary={dependencyFilterRule === false} isPrimary={dependencyFilterRule} onClick={() => setDependencyFilterRule(true)} disabled={activeItemType === 'collection'}>{__('Only', redux_templates.i18n)}</Button>\n\t\t\t </Tooltip>\n\t\t </ButtonGroup>\n\t\t <h3>{__('Required Plugins', redux_templates.i18n)} </h3>\n\t </>\n <div className='redux-templates-select-actions'>\n <Tooltip text={__('Select All', redux_templates.i18n)} position=\"top right\"><a href=\"#\" onClick={() => selectDependencies('all')}>{__('All', redux_templates.i18n)}</a></Tooltip>\n\t\t <span>&nbsp; / &nbsp;</span>\n\t\t <Tooltip text={__('Native Blocks Only', redux_templates.i18n)} position=\"top right\"><a href=\"#\" onClick={() => selectDependencies('none')}>{__('None', redux_templates.i18n)}</a></Tooltip>\n <span>&nbsp; / &nbsp;</span>\n <Tooltip text={__('Installed Dependencies', redux_templates.i18n)} position=\"top right\"><a href=\"#\"\n onClick={() => selectDependencies('installed')}>\n {__('Installed', redux_templates.i18n)}</a></Tooltip>\n <span>&nbsp; / &nbsp;</span>\n <Tooltip text={__('Reset Dependencies', redux_templates.i18n)} position=\"top right\">\n <a href=\"#\" onClick={() => selectDependencies('default')}>\n <i className=\"fas fa-undo\" /></a></Tooltip>\n <ChallengeDot step={2} />\n\n </div>\n <ul className=\"redux-templates-sidebar-dependencies\">\n { (loading === false) &&\n <li style={{display: activeItemType === 'collection' ? 'none': '' }}>\n <CheckboxControl\n label={__('Native', redux_templates.i18n)}\n checked={isNoneChecked()}\n onChange={toggleNoneChecked}\n />\n <Tooltip text={__('Only default WordPress blocks used.', redux_templates.i18n)} position='right'>\n <span style={{float:'right', marginRight:'2px'}}><i className=\"fa fa-info-circle\" /></span>\n </Tooltip>\n </li>\n }\n {\n Object.keys(dependencyFilters)\n .filter(pluginKey => (wholePlugins.indexOf(pluginKey)!==-1 || pluginKey === REDUXTEMPLATES_PRO_KEY))\n .sort((a, b) => {\n const pluginInstanceA = pluginInfo(a);\n const pluginInstanceB = pluginInfo(b);\n if (pluginInstanceA.name < pluginInstanceB.name)\n return -1;\n if (pluginInstanceA.name > pluginInstanceB.name)\n return 1;\n return 0;\n })\n .map(pluginKey =>\n <DependencyFilterRow key={pluginKey} pluginKey={pluginKey} />\n )\n }\n </ul>\n </div>\n }\n </Fragment>\n );\n}\n\nexport default compose([\n withDispatch((dispatch) => {\n const {setDependencyFilters, selectDependencies, setDependencyFilterRule} = dispatch('redux-templates/sectionslist');\n return {\n setDependencyFilters,\n selectDependencies,\n setDependencyFilterRule\n };\n }),\n\n withSelect((select) => {\n const {getDependencyFiltersStatistics, getLoading, getActiveItemType, getWholePlugins, getDependencyFilterRule} = select('redux-templates/sectionslist');\n return {\n loading: getLoading(),\n dependencyFilters: getDependencyFiltersStatistics(),\n wholePlugins: getWholePlugins(),\n dependencyFilterRule: getDependencyFilterRule(),\n\t activeItemType: getActiveItemType()\n };\n })\n])(DependencyFilter);\n","import React from 'react';\nconst {useState, useEffect, useRef} = wp.element;\nconst {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {__} = wp.i18n;\n\nimport {CheckboxControl, Tooltip} from '@wordpress/components';\nimport {pluginInfo} from '~redux-templates/stores/dependencyHelper';\nimport {NONE_KEY} from '~redux-templates/stores/helper';\n\nconst specialPlugins = ['gutenberghub.com', 'editorplus'];\n\nfunction DependencyFilterRow(props) {\n const {pluginKey, dependencyFilters} = props;\n const {setDependencyFilters} = props;\n const [isValidPlugin, setIsValidPlugin] = useState(false);\n const [isChecked, setIsChecked] = useState(false);\n const [pluginInstanceURL, setPluginInstanceURL] = useState('');\n const [pluginInstanceName, setPluginInstanceName] = useState('');\n const [pluginClassname, setPluginClassname] = useState('');\n\n useEffect(() => {\n const pluginInstance = pluginInfo(pluginKey);\n if (!pluginKey || pluginKey === NONE_KEY) {\n setIsValidPlugin(false);\n return;\n }\n if (!pluginInstance || pluginInstance.name == null) {\n setIsValidPlugin(false);\n return;\n }\n setPluginInstanceURL(pluginInstance.url);\n setPluginInstanceName(pluginInstance.name);\n setIsValidPlugin(true);\n }, [pluginKey]);\n\n useEffect(() => {\n const pluginInstance = pluginInfo(pluginKey);\n if (!dependencyFilters) return;\n if (dependencyFilters.hasOwnProperty(pluginKey)) {\n if (dependencyFilters[pluginKey].disabled)\n setIsChecked(false);\n else\n setIsChecked(dependencyFilters[pluginKey].hasOwnProperty('value') ? dependencyFilters[pluginKey].value : dependencyFilters[pluginKey]);\n } else\n setIsChecked(false)\n let pluginClassnameList = [];\n pluginClassnameList.push(!pluginInstance.version && !('no_plugin' in pluginInstance) ? 'missing-dependency' : '');\n pluginClassnameList.push((!dependencyFilters[pluginKey] || dependencyFilters[pluginKey].disabled) ? 'disabled' : '');\n setPluginClassname(pluginClassnameList.join(' '));\n }, [JSON.stringify(dependencyFilters)])\n\n const toggleChecked = () => {\n // disable check first\n if (dependencyFilters[pluginKey] === null || dependencyFilters[pluginKey] === undefined || dependencyFilters[pluginKey].disabled) return;\n // reflect on the item click event.\n let newDependencyFilters = {\n ...dependencyFilters,\n [pluginKey]: { value: dependencyFilters[pluginKey].value === false, disabled: dependencyFilters[pluginKey]['disabled'] === true }\n };\n\n // gutenberg.com, EditorPlus check\n if (specialPlugins.includes(pluginKey)) {\n specialPlugins.forEach((plugin) => {\n newDependencyFilters = {\n ...newDependencyFilters,\n [plugin]: { value: dependencyFilters[pluginKey].value === false, disabled: dependencyFilters[plugin]['disabled'] === true }\n }\n })\n }\n\n // if no item is selected, activate native, other wise conider to deactivate native\n // let valueCount = groupBy(Object.keys(newDependencyFilters), key => (newDependencyFilters[key] === true || newDependencyFilters[key].value === true));\n setDependencyFilters({...newDependencyFilters});\n };\n\n if (isValidPlugin === false) return null;\n\n return (\n <li className={pluginClassname}>\n <CheckboxControl\n label={pluginInstanceName}\n checked={isChecked}\n onChange={toggleChecked}\n />\n {pluginInstanceURL ?\n\t <Tooltip position={'top right'} text={__('Visit Plugin Website', redux_templates.i18n)}><span><a href={pluginInstanceURL} target=\"_blank\">\n <i className=\"fas fa-external-link-alt\" />\n\t </a></span></Tooltip> : null}\n\t {pluginClassname.includes('missing-dependency') &&\n\t <Tooltip position={'top right'} text={__('Not Installed', redux_templates.i18n)}><span className='redux-icon-wrapper'><i className=\"fa fa-exclamation-triangle\" /></span></Tooltip>\n\t }\n </li>\n );\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {setDependencyFilters} = dispatch('redux-templates/sectionslist');\n return {\n setDependencyFilters\n };\n }),\n\n withSelect((select) => {\n const {getDependencyFiltersStatistics, getLoading, getActiveCategory} = select('redux-templates/sectionslist');\n return {\n loading: getLoading(),\n dependencyFilters: getDependencyFiltersStatistics(),\n activeCategory: getActiveCategory()\n };\n })\n])(DependencyFilterRow);\n","const {withSelect} = wp.data;\n\nimport './style.scss'\n\nimport PriceFilter from './priceFilter';\nimport CategoryFilter from './categoryFilter';\nimport DependencyFilter from './dependencyFilter';\n\nfunction Sidebar(props) {\n const {itemType, layer, loading} = props;\n const hasSidebar = () => {\n return (itemType !== 'collection' || layer === null);\n };\n return (\n <div>\n {\n hasSidebar() &&\n <>\n <PriceFilter/>\n <div className=\"redux-templates-modal-sidebar-content\">\n <CategoryFilter/>\n <DependencyFilter/>\n </div>\n </>\n }\n </div>\n );\n}\n\nexport default withSelect((select) => {\n const {getActiveItemType, getActiveCollection} = select('redux-templates/sectionslist');\n return {\n itemType: getActiveItemType(),\n layer: getActiveCollection()\n };\n})(Sidebar);\n","const {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {__} = wp.i18n;\n\nfunction PriceFilter (props) {\n\tconst {setActivePriceFilter, activePriceFilter, statistics} = props;\n\n const getClassnames = (priceFilter) => {\n let classNames = [];\n classNames.push((priceFilter === activePriceFilter) ? 'active' : '');\n classNames.push(noStatistics(priceFilter) ? 'disabled' : '');\n return classNames.join(' ');\n }\n\n const noStatistics = (priceFilter) => {\n if (priceFilter === '') return false;\n if (priceFilter === 'free')\n return (!statistics['false'] || statistics['false'] < 1);\n else\n return (!statistics['true'] || statistics['true'] < 1);\n }\n\n return (\n <div className='redux-templates-template-filter-button-group'>\n <button onClick={() => setActivePriceFilter('')}\n className={getClassnames('')}>{__('All', redux_templates.i18n)}</button>\n <button onClick={() => setActivePriceFilter('free')} className={getClassnames('free')}\n disabled={noStatistics('free')}>{__('Free', redux_templates.i18n)}</button>\n <button onClick={() => setActivePriceFilter('pro')} className={getClassnames('pro')}\n disabled={noStatistics('pro')}>\n <img src={redux_templates.plugin + 'assets/img/icon-premium.svg'} alt=\"\"/>\n {__('Premium', redux_templates.i18n)}\n </button>\n </div>\n );\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {setActivePriceFilter} = dispatch('redux-templates/sectionslist');\n return {\n setActivePriceFilter\n };\n }),\n\n withSelect((select, props) => {\n const {getStatistics, getActivePriceFilter} = select('redux-templates/sectionslist');\n return {\n activePriceFilter: getActivePriceFilter(),\n statistics: getStatistics()\n };\n })\n])(PriceFilter);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","const {useState, useEffect} = wp.element;\nconst {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {__} = wp.i18n\n\nimport './style.scss'\n\nimport ButtonGroup from '~redux-templates/components/button-group';\nimport {requiresInstall, requiresPro} from '~redux-templates/stores/dependencyHelper'\n\nconst DURATION_UNIT= 500;\nconst PREVIEW_PANEL_HEIGHT = 515;\n\n// Collection Detail view: preview, item list and import\nfunction CollectionView(props) {\n const {pageData, activeCollectionData} = props;\n const {setActiveCollection} = props;\n const [previewData, setPreviewData] = useState(null);\n const [previewDataIndex, setPreviewDataIndex] = useState(0);\n const [transitionDuration, setTransitionDuration] = useState('1.5s');\n\n const dataLength = pageData.length;\n\n // To be called when switching over\n useEffect(() => {\n if (pageData && pageData[previewDataIndex]) {\n const itemData = pageData[previewDataIndex];\n const backgroundImage = new Image();\n if (itemData.image_full) {\n setPreviewData({...itemData, backgroundImage: itemData.image_full, previewImageClassname: 'details-preview has_full'});\n backgroundImage.src = itemData.image_full;\n } else {\n setPreviewData({...itemData, backgroundImage: itemData.image, previewImageClassname: 'details-preview has_full'})\n backgroundImage.src = itemData.image;\n }\n backgroundImage.onload = function () {\n setTransitionDuration((backgroundImage.height - PREVIEW_PANEL_HEIGHT) / DURATION_UNIT + 's');\n };\n }\n }, [pageData, previewDataIndex]);\n\n if (previewData)\n return (\n <div className=\"redux-templates-collection-details-view\">\n <div className=\"redux-templates-collection-details-left\">\n <div className=\"details-back\" onClick={() => setActiveCollection(null)}>\n <span className=\"dashicons dashicons-arrow-left-alt\"/>&nbsp;{__('Back to Template Kits', redux_templates.i18n)}\n </div>\n <div className={previewData.previewImageClassname} \n style={{backgroundImage: `url('${previewData.backgroundImage}')`, transitionDuration}}>\n </div>\n </div>\n <div className=\"redux-templates-collection-details-right\">\n <div className=\"details-title\">\n <h3>{activeCollectionData.name}</h3>\n <span>{dataLength} {__('pages', redux_templates.i18n)}</span>\n </div>\n <div className=\"details-list\">\n <div className=\"details-inner\">\n {\n pageData.map((detail, index) => {\n let className = (previewData.ID === detail.ID) ? 'detail-select detail-select-active' : 'detail-select';\n let divStyle = {\n backgroundImage: 'url(' + detail.image + ')',\n };\n\n return (\n <div className={className} onClick={() => setPreviewDataIndex(index)} key={index}>\n <div className=\"detail-image\" style={divStyle}>\n {requiresPro(detail) && <span className=\"pro\">{__('Premium', redux_templates.i18n)}</span>}\n {!requiresPro(detail) && requiresInstall(detail) && <span className=\"install\"><i className=\"fas fa-exclamation-triangle\" /></span>}\n <div className=\"detail-label\">{detail.name}</div>\n </div>\n </div>\n );\n })\n }\n </div>\n </div>\n </div>\n <div className=\"redux-templates-collection-details-footer\">\n <div className=\"footer-grid\">\n <ButtonGroup index={previewDataIndex} showDependencyBlock={false} data={previewData} pageData={pageData} />\n </div>\n </div>\n </div>\n );\n return null;\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n setActiveCollection\n } = dispatch('redux-templates/sectionslist');\n\n return {\n setActiveCollection\n };\n }),\n\n withSelect((select, props) => {\n const {getPageData, getLoading, getActiveCollectionData, getActiveItemType} = select('redux-templates/sectionslist');\n return {\n pageData: getPageData(),\n loading: getLoading(),\n activeItemType: getActiveItemType(),\n activeCollectionData: getActiveCollectionData()\n };\n })\n])(CollectionView);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","const {apiFetch} = wp;\nconst {useState} = wp.element;\nconst {compose} = wp.compose;\nconst {withDispatch} = wp.data;\nconst {Spinner} = wp.components;\nconst {parse} = wp.blocks;\nconst {__} = wp.i18n;\nimport {BlockPreview} from '@wordpress/block-editor';\n\nimport './style.scss'\n\nimport {Modal, ModalManager} from '../../modal-manager'\nimport reject from 'lodash/reject';\n\nfunction SavedView(props) {\n const {insertBlocks, discardAllErrorMessages, appendErrorMessage, clearSearch} = props;\n const [savedSections, setSavedSections] = useState([]);\n const [dataLoaded, setDataLoaded] = useState(false);\n if (dataLoaded === false) {\n // Initial fetch\n apiFetch({path: 'redux/v1/templates/get_saved_blocks'}).then(response => {\n if (response.success) {\n setSavedSections(response.data);\n } else {\n appendErrorMessage(response.data.error);\n }\n setDataLoaded(true);\n }).catch(error => {\n appendErrorMessage(error.code + ' : ' + error.message);\n setDataLoaded(true);\n });\n }\n\n // To display into columns, map data into column-friendly data\n const mapToColumnData = (data, n = 4, balanced = true) => {\n let out = [], i;\n\n for (i = 0; i < n; i++) out[i] = [];\n data.forEach((section, i) => {\n out[i % n].push(section);\n });\n return out;\n }\n\n // saved block import is special\n const importSections = (rawData) => {\n let pageData = parse(rawData);\n insertBlocks(pageData);\n ModalManager.close(); //close modal\n }\n\n const deleteSavedSection = (event, sectionID) => {\n event.stopPropagation();\n discardAllErrorMessages();\n const options = {\n method: 'POST',\n path: 'redux/v1/templates/delete_saved_block/?block_id=' + sectionID,\n }\n apiFetch(options).then(response => {\n if (response.success) {\n // on successful remove, we will update the blocks as well.\n setSavedSections(reject(savedSections, {'ID': sectionID}));\n } else {\n appendErrorMessage(response.data.error);\n }\n }).catch(error => {\n appendErrorMessage(error.code + ' : ' + error.message);\n });\n }\n if (dataLoaded === true)\n return (\n <div className=\"redux-templates-two-sections__grid\">\n {\n (savedSections && savedSections.length > 0) ?\n mapToColumnData(savedSections).map((column, key) => {\n let sections = column.map((section, i) => {\n let blocks = parse(section.post_content);\n return (\n <div className=\"redux-templates-two-section\" key={i}\n onClick={() => importSections(section.post_content)}>\n\n <div className=\"preview-image-wrapper\">\n <BlockPreview blocks={blocks} />\n </div>\n <div className=\"saved-section-title\">\n {section.post_title}\n </div>\n <div className=\"redux-templates-two-section-remove\"\n onClick={e => deleteSavedSection(e, section.ID)}>\n <i className=\"fas fa-trash\"></i>\n </div>\n </div>\n );\n })\n\n return (\n <div className=\"redux-templates-two-sections__grid__column\" key={key}\n style={{width: '25%', flexBasis: '25%'}}>\n {sections}\n </div>\n );\n })\n :\n <div className=\"no-section\">\n Nothing here yet, make a reusuable block first.\n </div>\n }\n </div>\n );\n else\n return (\n <div>\n <div style={{ height: '600px' }}>\n <div className=\"redux-templates-modal-loader\">\n <Spinner />\n </div>\n </div>\n </div>\n );\n}\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n insertBlocks\n } = dispatch('core/block-editor');\n\n const {\n appendErrorMessage,\n discardAllErrorMessages\n } = dispatch('redux-templates/sectionslist');\n\n return {\n insertBlocks,\n appendErrorMessage,\n discardAllErrorMessages\n };\n })\n])(SavedView);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","const { useState, useEffect } = wp.element;\nconst { compose } = wp.compose;\nconst { withDispatch, withSelect } = wp.data;\nconst { Spinner } = wp.components;\n\nimport SingleItem from '../../components/single-item'\nimport MultipleItem from '../../components/multiple-item'\nimport Pagination from '../../components/pagination'\nimport './style.scss'\n\nimport {columnMap, pageSizeMap} from '../../stores/helper';\n\nfunction TemplateList(props) {\n const { pageData, loading, activeItemType, activeCollection, columns, currentPage } = props;\n const { setActiveCollection} = props;\n const [columnizedData, setColumnizedData] = useState([]);\n const [shouldShowPagination, setShouldShowPagination] = useState(false);\n const getBackgroundImage = (url) => {\n if (!url) {\n return redux_templates.plugin + 'assets/img/redux-templates-medium.jpg';\n }\n return url;\n }\n\n const onSelectCollection = (collectionID) => {\n setActiveCollection(collectionID);\n }\n\n useEffect(() => {\n let newData = [], index = 0;\n let colStr = (columns === '') ? 'medium' : columns;\n const columnsCount = columnMap[colStr];\n const pageSize = pageSizeMap[colStr];\n for (let i = 0; i < columnsCount; i++)\n newData[i] = [];\n if (pageData) {\n const lowerLimit = activeItemType !== 'collection' ? (currentPage * pageSize) + 1 : 1;\n const upperLimit = activeItemType !== 'collection' ? (currentPage + 1) * pageSize : pageData.length;\n for ( index = lowerLimit; index <= upperLimit && index <= pageData.length; index++) {\n newData[(index - 1) % columnsCount].push({...pageData[index - 1], index: index - 1});\n }\n }\n setColumnizedData(newData);\n setShouldShowPagination(activeItemType !== 'collection' && pageData && pageSize < pageData.length);\n }, [columns, pageData]);\n\n\n if (!loading)\n return (\n <div id=\"modalContainer\" className=\"redux-templates-template-list-modal\">\n <div className=\"redux-templates-builder-template-list-container\">\n <div id=\"collections-sections-list\" className={`redux-templates-builder-page-templates ${columns}`}>\n { columnizedData &&\n columnizedData.map((columnData, colIndex) => (\n <div className=\"redux-templates-pagelist-column\" key={colIndex}>\n {\n columnData &&\n columnData.map((data, cellIndex) => (\n (activeItemType !== 'collection' || activeCollection !== null) ?\n <SingleItem\n key={cellIndex}\n index={data.index}\n />\n :\n <MultipleItem\n key={cellIndex}\n data={data}\n index={data.index}\n itemType={activeItemType}\n spinner={false}\n onSelectCollection={onSelectCollection}\n />\n ))\n }\n </div>\n ))\n }\n </div>\n { shouldShowPagination && <Pagination /> }\n </div>\n </div>\n );\n return (\n <div>\n <div style={{ height: '600px' }}>\n <div className=\"redux-templates-modal-loader\">\n <Spinner />\n </div>\n </div>\n </div>\n );\n}\n\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n setActiveCollection\n } = dispatch('redux-templates/sectionslist');\n\n return {\n setActiveCollection\n };\n }),\n\n withSelect((select, props) => {\n const { getPageData, getLoading, getColumns, getActiveItemType, getActiveCollection, getCurrentPage} = select('redux-templates/sectionslist');\n return { pageData: getPageData(), loading: getLoading(), activeItemType: getActiveItemType(), columns: getColumns(), activeCollection: getActiveCollection(), currentPage: getCurrentPage() };\n })\n])(TemplateList);\n","\nvar content = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","import {__} from '@wordpress/i18n';\nimport {Component, Fragment} from '@wordpress/element';\n\nvar onClose, node, customizerNode, feedbackNode = null;\n\nexport class Modal extends Component {\n constructor(props) {\n super(props)\n this.state = {\n afterOpen: false,\n beforeClose: false,\n }\n }\n\n close() {\n if (!this.props.onRequestClose || this.props.onRequestClose()) {\n if (customizerNode) ModalManager.closeCustomizer()\n else ModalManager.close()\n }\n }\n\n componentDidMount() {\n const {openTimeoutMS, closeTimeoutMS} = this.props\n setTimeout(() => this.setState({afterOpen: true}), openTimeoutMS ? openTimeoutMS : 150)\n\n onClose = (callback) => {\n this.setState({beforeClose: true}, () => {\n this.closeTimer = setTimeout(callback, closeTimeoutMS ? closeTimeoutMS : 150)\n });\n };\n }\n\n componentWillUnmount() {\n onClose = null;\n clearTimeout(this.closeTimer)\n }\n\n render() {\n\n return (\n <Fragment>\n <span onClick={e => {\n this.close()\n }} className={'redux-templates-pagelist-modal-overlay'}>&nbsp;</span>\n <div className={ this.props.compactMode ? 'redux-templates-modal-inner' : 'redux-templates-pagelist-modal-inner'} onClick={e => e.stopPropagation()}>\n {this.props.children}\n </div>\n </Fragment>\n );\n }\n}\n\n\nexport const ModalManager = {\n open(component) {\n if (onClose) {\n this.close();\n // throw __('There is already one modal.It must be closed before one new modal will be opened');\n }\n if (!node) {\n node = document.createElement('div')\n node.className = 'redux-templates-builder-modal'\n document.body.appendChild(node)\n }\n wp.element.render(component, node)\n document.body.classList.add('redux-templates-builder-modal-open')\n },\n close() {\n onClose && onClose(() => {\n wp.element.unmountComponentAtNode(node)\n document.body.classList.remove('redux-templates-builder-modal-open')\n });\n },\n openCustomizer(component) {\n if (!customizerNode) {\n customizerNode = document.createElement('div');\n document.body.appendChild(customizerNode);\n }\n wp.element.render(component, customizerNode);\n },\n closeCustomizer() {\n if (customizerNode) {\n wp.element.unmountComponentAtNode(customizerNode);\n customizerNode = false\n }\n },\n openFeedback(component) {\n feedbackNode = document.getElementsByClassName('feedback-wrapper');\n if (!feedbackNode || feedbackNode.length < 1) {\n feedbackNode = document.createElement('div');\n feedbackNode.className = 'feedback-wrapper';\n document.body.appendChild(feedbackNode);\n } else {\n feedbackNode = feedbackNode[0];\n }\n wp.element.render(component, feedbackNode);\n },\n closeFeedback() {\n if (feedbackNode) {\n wp.element.unmountComponentAtNode(feedbackNode);\n feedbackNode = false;\n }\n },\n isCustomizerOpened() {\n return customizerNode ? true : false;\n },\n hide () {\n document.body.classList.remove('redux-templates-builder-modal-open')\n node.classList.add('hidden')\n },\n show () {\n document.body.classList.add('redux-templates-builder-modal-open')\n if (node)\n node.classList.remove('hidden')\n }\n}\n","const {__} = wp.i18n\n\nfunction FullyOverlayFooter(props) {\n const {previewClass, expandedClass, pro} = props;\n const {onChangePreviewClass, onToggleExpanded, onImport} = props;\n const previewClassesList = [\n {className: 'preview-desktop', screenReaderText: 'Enter desktop preview mode'},\n {className: 'preview-tablet', screenReaderText: 'Enter tablet preview mode'},\n {className: 'preview-mobile', screenReaderText: 'Enter mobile preview mode'}\n ];\n\n const toggleExpanded = () => {\n let nextStatus = (expandedClass === 'collapsed') ? 'expanded' : 'collapsed';\n onToggleExpanded(nextStatus);\n }\n return (\n <div className=\"wp-full-overlay-footer\">\n <div className=\"footer-import-button-wrap redux-templates-import-button-group\">\n\n {\n pro ?\n <div className=\"action-buttons\">\n <a className=\"redux-templates-button-download\" target=\"_blank\" href=\"http://redux-templates.io/\">\n <i className=\"fas fa-upload\"></i>&nbsp;{__('Upgrade to Pro', redux_templates.i18n)}\n </a>\n </div>\n :\n <a className=\"button button-hero hide-if-no-customize button-primary redux-templates-import\"\n onClick={onImport}>\n <i className=\"fas fa-download\"></i>&nbsp;{__('Import', redux_templates.i18n)}\n </a>\n }\n\n </div>\n <button type=\"button\" className=\"collapse-sidebar button\" onClick={toggleExpanded} aria-expanded=\"true\"\n aria-label=\"Collapse Sidebar\">\n <span className=\"collapse-sidebar-arrow\"></span>\n <span className=\"collapse-sidebar-label\">{__('Collapse', redux_templates.i18n)}</span>\n </button>\n\n <div className=\"devices-wrapper\">\n <div className=\"devices\">\n {\n previewClassesList.map((previewObject, i) => {\n return (\n <button type=\"button\"\n className={previewClass === previewObject.className ? previewObject.className + ' active' : previewObject.className}\n aria-pressed=\"true\" key={i}\n onClick={() => onChangePreviewClass(previewObject.className)}>\n <span className=\"screen-reader-text\">{previewObject.screenReaderText}</span>\n </button>\n );\n })\n }\n </div>\n </div>\n\n </div>\n );\n}\n\nexport default FullyOverlayFooter;\n","const {__} = wp.i18n\n\nfunction FullyOverlayHeader(props) {\n const {onCloseCustomizer, onNextBlock, onPrevBlock, onImport, pro} = props;\n return (\n <div className=\"wp-full-overlay-header\">\n <button className=\"close-full-overlay\" onClick={onCloseCustomizer}>\n <span className=\"screen-reader-text\">{__('Close', redux_templates.i18n)}</span>\n </button>\n <button className=\"previous-theme\" onClick={onPrevBlock}>\n <span className=\"screen-reader-text\">{__('Previous', redux_templates.i18n)}</span>\n </button>\n <button className=\"next-theme\" onClick={onNextBlock}>\n <span className=\"screen-reader-text\">{__('Next', redux_templates.i18n)}</span>\n </button>\n {\n pro === false &&\n <a className=\"button hide-if-no-customize button-primary redux-templates-section-import\" onClick={onImport}\n data-import=\"disabled\">\n {__('Import', redux_templates.i18n)}\n </a>\n }\n </div>\n );\n}\n\nexport default FullyOverlayHeader;\n","import {Tooltip, Panel, PanelBody, PanelRow} from '@wordpress/components';\nimport {more} from '@wordpress/icons';\n\n\nconst {useState, useEffect} = wp.element\nconst {__} = wp.i18n\n\nimport * as Icons from '~redux-templates/icons'\nimport copy from 'clipboard-copy';\nimport SafeImageLoad from '~redux-templates/components/safe-image-load';\nimport {requiresInstall, requiresPro} from '~redux-templates/stores/dependencyHelper'\nimport React from 'react';\n\nexport default function SidebarContent(props) {\n\tconst {itemData, pro} = props;\n\tconst {hash, name, image, blocks, proDependencies, installDependencies, url, source} = itemData;\n\tconst [copied, setCopied] = useState(false);\n\n\tconst copyHash = () => {\n\t\tcopy(hash.substring(0, 7));\n\t\tsetCopied(true);\n\t\tsetTimeout(function () {\n\t\t\tsetCopied(false);\n\t\t}, 3500);\n\t}\n\n\tuseEffect(() => {\n\t\tsetCopied(false);\n\t}, [itemData]);\n\n\n\tif ('redux' === source) {\n\t\tconst source_instance = redux_templates.supported_plugins['redux-framework'];\n\t} else {\n\t\tconst source_instance = redux_templates.supported_plugins[source];\n\t}\n\n\treturn (\n\t\t<div className=\"wp-full-overlay-sidebar-content\">\n\t\t\t<div className=\"install-theme-info\">\n\t\t\t\t<h3 className=\"theme-name\">{name} { url && <Tooltip position={'top right'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttext={__('Full Preview', redux_templates.i18n)}><a href={url}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttarget=\"_blank\"><i\n\t\t\t\t\tclassName=\"fas fa-external-link-alt\"/></a></Tooltip> }</h3>\n\t\t\t\t<div className=\"theme-screenshot-wrap\">\n\t\t\t\t\t<SafeImageLoad url={image} className=\"theme-screenshot\"/>\n\t\t\t\t\t{pro ?\n\t\t\t\t\t\t<span className=\"redux-templates-pro-badge\">{__('Premium', redux_templates.i18n)}</span> : ''}\n\t\t\t\t</div>\n\n\t\t\t\t<h5 className=\"theme-hash\">\n\t\t\t\t\t<div className=\"button-container\">\n <span className=\"button button-secondary the-copy\" onClick={copyHash}\n\t\t\t\t\t\t\t title={__('Copy Identifier', redux_templates.i18n)}><i\n\t\t\t\t\t\t\tclassName=\"fa fa-copy\" aria-hidden=\"true\"></i></span>\n\t\t\t\t\t\t<span onClick={copyHash} className=\"button button-secondary the-hash\"\n\t\t\t\t\t\t\t title={__('Identifier', redux_templates.i18n)}>{hash.substring(0, 7)}</span>\n\t\t\t\t\t\t{copied && <span className=\"copied hideMe\"><br/>{__('copied', redux_templates.i18n)}</span>}\n\t\t\t\t\t</div>\n\n\t\t\t\t</h5>\n\t\t\t</div>\n\t\t\t{ blocks && blocks.length > 0 &&\n\t\t\t<PanelBody title={__('Blocks Used', redux_templates.i18n)} icon={more} initialOpen={false}>\n\t\t\t\t<PanelRow className=\"redux-block-pills\">\n\t\t\t\t\t<ul>\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tblocks.map((block, i) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<li key={i}><span>{block}</span></li>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t</ul>\n\t\t\t\t</PanelRow>\n\t\t\t</PanelBody>\n\t\t\t}\n\t\t\t{\n\t\t\t\tinstallDependencies && installDependencies.length > 0 &&\n\t\t\t\t<PanelBody title={__('Required Plugins', redux_templates.i18n)} icon={more} initialOpen={false}>\n\t\t\t\t\t<PanelRow className=\"requirements-list-div\">\n\t\t\t\t\t\t<div className=\"requirements-list\">\n\t\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tinstallDependencies.map(pluginKey => {\n\t\t\t\t\t\t\t\t\t\tconst pluginInstance = redux_templates.supported_plugins[pluginKey];\n\t\t\t\t\t\t\t\t\t\tif (!pluginInstance) {\n\t\t\t\t\t\t\t\t\t\t\tconsole.log('Missing plugin details for ' + pluginKey);\n\t\t\t\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tconst plugin_name = pluginKey.replace('-pro', '').replace('-premium', '').replace(/\\W/g, '').toLowerCase();\n\t\t\t\t\t\t\t\t\t\tif ('redux' === plugin_name) {\n\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tconst IconComponent = Icons[plugin_name];\n\t\t\t\t\t\t\t\t\t\treturn (\n\n\t\t\t\t\t\t\t\t\t\t\t<li key={pluginKey}>\n\t\t\t\t\t\t\t\t\t\t\t\t{IconComponent && <IconComponent/>}\n\t\t\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"redux-templates-dependency-name\">{pluginInstance.name}</span>\n\t\t\t\t\t\t\t\t\t\t\t\t{requiresInstall(itemData) &&\n\t\t\t\t\t\t\t\t\t\t\t\t<Tooltip position={'bottom center'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t text={__('Not Installed', redux_templates.i18n)}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div className='redux-icon-wrapper'><i\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"fa fa-exclamation-triangle\"/></div>\n\t\t\t\t\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t{pluginInstance.url ?\n\t\t\t\t\t\t\t\t\t\t\t\t\t<Tooltip position={'top right'}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t text={__('Visit Plugin Website', redux_templates.i18n)}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span className=\"pluginURL\"><a href={pluginInstance.url}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t target=\"_blank\"><i\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"fas fa-external-link-alt\"/></a></span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</Tooltip> : null}\n\t\t\t\t\t\t\t\t\t\t\t</li>);\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</PanelRow>\n\t\t\t\t</PanelBody>\n\t\t\t}\n\t\t\t{\n\t\t\t\t'redux' !== source &&\n\t\t\t\t<PanelBody title={__('Template Details', redux_templates.i18n)} icon={more} initialOpen={false}>\n\t\t\t\t\t<PanelRow className=\"redux-block-pills\">\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t{'redux' !== source && <li><strong>Author</strong>: {source.slice(0,1).toUpperCase() + source.slice(1, source.length)}</li>}\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</PanelRow>\n\t\t\t\t</PanelBody>\n\t\t\t}\n\t\t</div>\n\t);\n}\n","import FullyOverlayHeader from './FullyOverlayHeader';\nimport SidebarContent from './SidebarContent';\nimport FullyOverlayFooter from './FullyOverlayFooter';\nimport {isBlockPro} from '../stores/helper';\n\nfunction SitePreviewSidebar(props) {\n const {itemData, previewClass, expandedClass, onImport} = props;\n const {onCloseCustomizer, onChangePreviewClass, onToggleExpanded, onNextBlock, onPrevBlock} = props;\n const isPro = isBlockPro(itemData.pro, itemData.source);\n\n return (\n <div className=\"wp-full-overlay-sidebar\">\n <FullyOverlayHeader onCloseCustomizer={onCloseCustomizer} onNextBlock={onNextBlock}\n onPrevBlock={onPrevBlock}\n pro={isPro} onImport={onImport}/>\n <SidebarContent itemData={itemData} pro={isPro} />\n <FullyOverlayFooter previewClass={previewClass} expandedClass={expandedClass} pro={isPro}\n onChangePreviewClass={onChangePreviewClass} onToggleExpanded={onToggleExpanded}\n onImport={onImport}/>\n </div>\n );\n}\n\n\nexport default SitePreviewSidebar;\n","const {compose} = wp.compose;\nconst {withDispatch, withSelect} = wp.data;\nconst {useState, useEffect, useReducer} = wp.element\nconst {Spinner} = wp.components;\nimport SitePreviewSidebar from './SitePreviewSidebar';\nimport {ModalManager} from '../modal-manager'\nimport ImportWizard from '../modal-import-wizard';\nimport {Fragment} from 'react';\nimport SafeImageLoad from '~redux-templates/components/safe-image-load';\nimport {processImportHelper} from '~redux-templates/stores/actionHelper';\nimport './style.scss';\n\nconst initialState = {\n currentPageData: null,\n currentIndex: 0,\n itemData: null,\n imageURL: ''\n};\n\nconst LOADING_RESET = 0;\nconst IN_PROGRESS = 1;\nconst FULLY_LOADED = 2;\n\nconst previewReducer = (state, action) => {\n let currentPageData;\n let imageURL;\n switch(action.type) {\n case 'INDEX':\n currentPageData = state.currentPageData;\n break;\n case 'DATA':\n currentPageData = action.currentPageData;\n break;\n }\n const itemData = currentPageData[action.currentIndex];\n if (itemData.image_full)\n imageURL = itemData.image_full;\n else\n imageURL = itemData.image\n\n return {\n currentPageData,\n currentIndex: action.currentIndex,\n imageURL,\n itemData\n };\n}\n\nfunction PreviewModal(props) {\n\n const {startIndex, currentPageData} = props;\n const {setImportingTemplate, importingTemplate} = props;\n\n const [state, dispatch] = useReducer(previewReducer, initialState);\n\n const [previewClass, setPreviewClass] = useState('preview-desktop')\n const [expandedClass, toggleExpanded] = useState('expanded')\n const [pressedKey, setPressedKey] = useState(null);\n const [loading, setLoading] = useState(IN_PROGRESS);\n const [wrapperClassName, setWrapperClassName] = useState('wp-full-overlay sites-preview theme-install-overlay ');\n\n // Key event handling : event listener set up\n useEffect(() => {\n const handleKeyDown = ({keyCode}) => {\n setPressedKey(keyCode);\n }\n\n window.addEventListener('keydown', handleKeyDown);\n return () => {\n window.removeEventListener('keydown', handleKeyDown);\n }\n }, []);\n\n // Key Event handling\n useEffect(() => {\n if (pressedKey !== null) {\n if (pressedKey === 37) onPrevBlock();\n if (pressedKey === 39) onNextBlock();\n setPressedKey(null);\n }\n }, [pressedKey])\n\n useEffect(() => {\n if (isNaN(startIndex) === false && currentPageData)\n dispatch({ type: 'DATA', currentIndex: startIndex, currentPageData });\n }, [startIndex, currentPageData]);\n\n // mobile/desktop preview status and sidebar collapse/expand\n useEffect(() => {\n setWrapperClassName(['wp-full-overlay sites-preview theme-install-overlay ', previewClass, expandedClass].join(' '));\n }, [previewClass, expandedClass])\n\n const onCloseCustomizer = () => {\n ModalManager.closeCustomizer();\n }\n\n const onNextBlock = () => {\n if (state.currentIndex < currentPageData.length - 1) {\n startLoading();\n dispatch({ type: 'INDEX', currentIndex: state.currentIndex + 1 });\n }\n }\n\n const onPrevBlock = () => {\n if (state.currentIndex > 0) {\n setLoading();\n dispatch({ type: 'INDEX', currentIndex: state.currentIndex - 1 });\n }\n }\n\n const startLoading = () => {\n setLoading(LOADING_RESET);\n setTimeout(() => {\n setLoading(IN_PROGRESS);\n }, 100)\n }\n\n\n const importStarterBlock = () => {\n setImportingTemplate(state.itemData);\n ModalManager.closeCustomizer();\n }\n\n const processImport = () => {\n if (importingTemplate) processImportHelper();\n }\n\n // Called from iframe upon successful loading\n const hideSpinner = () => {\n setLoading(FULLY_LOADED);\n }\n\n if (!state || !state.itemData) return null;\n\n return (\n <Fragment>\n <div className={wrapperClassName} style={{display: 'block'}}>\n <SitePreviewSidebar itemData={state.itemData} previewClass={previewClass} expandedClass={expandedClass}\n onNextBlock={onNextBlock} onPrevBlock={onPrevBlock}\n onCloseCustomizer={onCloseCustomizer} onToggleExpanded={e => toggleExpanded(e)}\n onImport={importStarterBlock}\n onChangePreviewClass={e => setPreviewClass(e)}/>\n <div className=\"wp-full-overlay-main loaded\">\n {\n (loading < FULLY_LOADED) && <Spinner />\n }\n {state.itemData.url &&\n <iframe src={(loading === LOADING_RESET) ? '' : state.itemData.url + '?preview=1'} target='Preview' onLoad={hideSpinner}></iframe>\n }\n {!state.itemData.url &&\n <div className='redux-templates-modal-preview-box'>\n <SafeImageLoad url={state.imageURL} />\n </div>\n }\n\n </div>\n </div>\n { importingTemplate && <ImportWizard startImportTemplate={processImport} /> }\n </Fragment>\n );\n}\n\nexport default compose([\n withDispatch((dispatch) => {\n const {\n setImportingTemplate,\n setCustomizerOpened\n } = dispatch('redux-templates/sectionslist');\n\n return {\n setImportingTemplate,\n setCustomizerOpened\n };\n }),\n\n withSelect((select, props) => {\n const {getImportingTemplate} = select('redux-templates/sectionslist');\n return {\n importingTemplate: getImportingTemplate()\n };\n })\n])(PreviewModal);\n","\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","\nvar content = require(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./modals.scss\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./modals.scss\", function() {\n\t\tvar newContent = require(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./modals.scss\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","/**\n * WordPress dependencies\n */\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { compose, ifCondition } from '@wordpress/compose';\nimport { download } from '../export/file';\nconst { Fragment } = wp.element;\nimport { colorizeIcon } from '~redux-templates/icons'\n\nimport { Dashicon } from '@wordpress/components';\n\nfunction ExportPageContentMenuItem( { createNotice, editedPostContent } ) {\n if (!wp.plugins) return null;\n\n const { PluginMoreMenuItem } = wp.editPost;\n\n const exportFullpage = () => {\n const fileContent = JSON.stringify( {\n __file: 'core_block',\n content: editedPostContent,\n }, null, 2 );\n\n const fileName = 'page-template-export.json';\n download( fileName, fileContent, 'application/json' );\n }\n\n\n return (\n <Fragment>\n <PluginMoreMenuItem\n icon={ colorizeIcon( <Dashicon icon=\"migrate\" /> ) }\n role=\"menuitemcheckbox\"\n onClick={ exportFullpage }\n >\n { __( 'Export Page', redux_templates.i18n ) }\n </PluginMoreMenuItem>\n </Fragment>\n );\n}\n\nconst ExportPageContentMenu = compose(\n withSelect( ( select ) => ( {\n editedPostContent: select( 'core/editor' ).getEditedPostAttribute(\n 'content'\n ),\n } ) ),\n withDispatch( ( dispatch ) => {\n const { createNotice } = dispatch( 'core/notices' );\n\n return {\n createNotice,\n };\n } ),\n ifCondition( ( { editedPostContent } ) => editedPostContent.length > 0 )\n)( ExportPageContentMenuItem );\n\nif (wp.plugins) {\n const { registerPlugin } = wp.plugins;\n registerPlugin('redux-templates-export-page', {\n render: ExportPageContentMenu,\n });\n}\n","/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\n/**\n * Internal dependencies\n */\n\nimport exportReusableBlock from './reusable';\nimport { download } from './file';\nimport { colorizeIcon } from '~redux-templates/icons'\n\n/**\n * WordPress dependencies\n */\nconst { __ } = wp.i18n;\nconst { withSelect, select } = wp.data;\nconst { compose } = wp.compose;\nconst { Fragment } = wp.element;\nconst { withSpokenMessages } = wp.components;\nconst { serialize } = wp.blocks;\nimport { Dashicon } from '@wordpress/components';\n\n/**\n * Render plugin\n */\nfunction ExportManager(props) {\n\tconst { selectedBlockCount, selectedBlock, selectedBlocks } = props;\n\n\tif (!wp.editPost) return null;\n\n\tconst { PluginBlockSettingsMenuItem } = wp.editPost;\n\tconst saveAsJSON = () => {\n\t\tif ( selectedBlockCount < 1 ) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet blocks;\n\t\tlet title = 'redux_templates/export';\n\n\t\tif ( selectedBlockCount === 1 ) {\n\t\t\t//export as reusable when reusable is selected\n\t\t\tif ( selectedBlock.name === 'core/block' ) {\n\t\t\t\texportReusableBlock( selectedBlock.attributes.ref );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tblocks = serialize( selectedBlock );\n\t\t\ttitle = selectedBlock.name;\n\t\t}\n\n\t\tif ( selectedBlockCount > 1 ) {\n\t\t\tblocks = serialize( selectedBlocks );\n\t\t}\n\n\t\t//do export magic\n\n\t\tconst fileContent = JSON.stringify( {\n\t\t\t__file: 'core_block',\n\t\t\tcontent: blocks,\n\t\t}, null, 2 );\n\n\t\tconst fileName = 'block-template-' + kebabCase( title ) + '.json';\n\t\tdownload( fileName, fileContent, 'application/json' );\n\t}\n\n\treturn (\n\t\t<Fragment>\n\t\t\t<PluginBlockSettingsMenuItem\n\t\t\t\ticon={ colorizeIcon( <Dashicon icon=\"migrate\" /> ) }\n\t\t\t\tlabel={ __( 'Export Block', redux_templates.i18n ) }\n\t\t\t\tonClick={ saveAsJSON }\n\t\t\t>\n\n\t\t\t</PluginBlockSettingsMenuItem>\n\t\t</Fragment>\n\t);\n}\n\nexport default compose( [\n\twithSelect( () => {\n\t\tconst { getSelectedBlockCount, getSelectedBlock, getMultiSelectedBlocks } = select( 'core/block-editor' );\n\t\tconst { getBlock } = select( 'core/block-editor' );\n\n\t\treturn {\n\t\t\tselectedBlockCount: getSelectedBlockCount(),\n\t\t\tselectedBlock: getSelectedBlock(),\n\t\t\tselectedBlocks: getMultiSelectedBlocks(),\n\t\t\tgetBlock,\n\t\t};\n\t} ),\n\twithSpokenMessages,\n] )( ExportManager );\n","const block_export_json = function (el, type) {\n if (!el) {\n return\n }\n\n if (el) {\n t ? t += '.json' : t = 'block.json', 'object' === ('undefined' === typeof e ? 'undefined' : u(e)) && (el = 1 === a.count ? JSON.stringify(e.shift(), void 0, 4) : JSON.stringify(e, void 0, 4));\n var n = new Blob([el], {\n type: 'text/json'\n }),\n o = document.createEvent('MouseEvents'),\n l = document.createElement('a');\n l.download = t, l.href = window.URL.createObjectURL(n), l.dataset.downloadurl = ['text/json', l.download, l.href].join(':'), o.initMouseEvent('click', !0, !1, window, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), l.dispatchEvent(o)\n }\n}\n\nconst block_export_html = function (el, type) {\n if (!el) {\n return\n }\n\n if (el) {\n t ? t += '.json' : t = 'block.json', 'object' === ('undefined' === typeof e ? 'undefined' : u(e)) && (el = 1 === a.count ? JSON.stringify(e.shift(), void 0, 4) : JSON.stringify(e, void 0, 4));\n var n = new Blob([el], {\n type: 'text/json'\n }),\n o = document.createEvent('MouseEvents'),\n l = document.createElement('a');\n l.download = t, l.href = window.URL.createObjectURL(n), l.dataset.downloadurl = ['text/json', l.download, l.href].join(':'), o.initMouseEvent('click', !0, !1, window, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), l.dispatchEvent(o)\n }\n}\n\nconst block_export_page = function (el, type) {\n if (!el) {\n return\n }\n\n if (el) {\n t ? t += '.json' : t = 'block.json', 'object' === ('undefined' === typeof e ? 'undefined' : u(e)) && (el = 1 === a.count ? JSON.stringify(e.shift(), void 0, 4) : JSON.stringify(e, void 0, 4));\n var n = new Blob([el], {\n type: 'text/json'\n }),\n o = document.createEvent('MouseEvents'),\n l = document.createElement('a');\n l.download = t, l.href = window.URL.createObjectURL(n), l.dataset.downloadurl = ['text/json', l.download, l.href].join(':'), o.initMouseEvent('click', !0, !1, window, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), l.dispatchEvent(o)\n }\n}\n\n/**\n * Downloads a file.\n *\n * @param {string} fileName File Name.\n * @param {string} content File Content.\n * @param {string} contentType File mime type.\n */\nexport function download( fileName, content, contentType ) {\n const file = new window.Blob( [ content ], { type: contentType } );\n\n // IE11 can't use the click to download technique\n // we use a specific IE11 technique instead.\n if ( window.navigator.msSaveOrOpenBlob ) {\n window.navigator.msSaveOrOpenBlob( file, fileName );\n } else {\n const a = document.createElement( 'a' );\n a.href = URL.createObjectURL( file );\n a.download = fileName;\n\n a.style.display = 'none';\n document.body.appendChild( a );\n a.click();\n document.body.removeChild( a );\n }\n}\n","import ExportManager from './export-block-menu-item';\nif (wp.plugins) {\n\tconst { registerPlugin } = wp.plugins;\n\n\tregisterPlugin( 'redux-templates-export', {\n\t\trender: ExportManager,\n\t} );\n}\n","/**\n * External dependencies\n */\nimport { kebabCase } from 'lodash';\n\n/**\n * Internal dependencies\n */\nimport { download } from './file';\n\n/**\n * Export a reusable block as a JSON file.\n *\n * @param {number} id\n */\nasync function exportReusableBlock( id ) {\n\tconst postType = await wp.apiFetch( { path: '/wp/v2/types/wp_block' } );\n\tconst post = await wp.apiFetch( { path: '/wp/v2/' + postType.rest_base + '/' + id + '?context=edit' } );\n\tconst title = post.title.raw;\n\tconst content = post.content.raw;\n\tconst fileContent = JSON.stringify( {\n\t\t__file: 'wp_block',\n\t\ttitle,\n\t\tcontent,\n\t}, null, 2 );\n\tconst fileName = kebabCase( title ) + '.json';\n\n\tdownload( fileName, fileContent, 'application/json' );\n}\n\nexport default exportReusableBlock;","/**\n * WordPress dependencies\n */\nimport { withDispatch, withSelect } from '@wordpress/data';\nimport { __ } from '@wordpress/i18n';\nimport { compose, ifCondition } from '@wordpress/compose';\nimport {ModalManager} from '../../modal-manager';\nimport LibraryModal from '../../modal-library';\nimport { ReduxTemplatesIconColor } from '~redux-templates/icons';\n\nconst { Fragment } = wp.element;\n\nfunction OpenLibraryContentMenuItem( ) {\n\tif (!wp.plugins) return null;\n\n\tconst { PluginMoreMenuItem } = wp.editPost;\n\n\treturn (\n\t\t<Fragment>\n\t\t\t<PluginMoreMenuItem\n\t\t\t\ticon={ ReduxTemplatesIconColor() }\n\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tModalManager.open(<LibraryModal />);\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ __( 'Template Library', redux_templates.i18n ) }\n\t\t\t</PluginMoreMenuItem>\n\t\t</Fragment>\n\t);\n}\n\nconst OpenLibraryContentMenu = compose(\n\twithSelect( ( select ) => ( {\n\t} ) ),\n\twithDispatch( ( dispatch ) => {\n\t} ),\n\n)( OpenLibraryContentMenuItem );\n\nif (wp.plugins) {\n\tconst { registerPlugin } = wp.plugins;\n\tregisterPlugin('redux-open-library-context', {\n\t\trender: OpenLibraryContentMenu,\n\t});\n}\n","import {noop} from 'lodash'\nimport {Fragment} from '@wordpress/element'\nimport {__} from '@wordpress/i18n'\nimport {select, withDispatch} from '@wordpress/data'\nimport {compose} from '@wordpress/compose'\nimport {PluginBlockSettingsMenuItem} from '@wordpress/edit-post'\nimport { ReduxTemplatesIcon } from '../../icons';\nimport {ModalManager} from '../../modal-manager'\nimport FeedbackDialog from '~redux-templates/modal-feedback';\nimport sortBy from 'lodash/sortBy';\nimport map from 'lodash/map';\nimport {getWithExpiry} from '../../stores/helper';\n\n/**\n * Based on: https://github.com/WordPress/gutenberg/blob/master/packages/editor/src/components/convert-to-group-buttons/convert-button.js\n */\n\n\n/**\n * Internal dependencies\n */\n\nconst options = sortBy(getWithExpiry('page_categories_list'), 'label');\nconst schema = {\n type: 'object',\n properties: {\n title: {\n type: 'string',\n title: 'Block Title'\n },\n category: {\n type: 'string',\n title: 'Category',\n enum: map(options, 'value'),\n enumNames: map(options, 'label')\n },\n description: {\n type: 'string',\n title: 'Description'\n }\n }\n}\nconst uiSchema = {\n title: {\n classNames: 'fixed-control'\n },\n category: {\n classNames: 'fixed-control'\n },\n description: {\n 'ui:widget': 'textarea',\n }\n};\n\nexport function ShareBlockButton({clientIds})\n{\n // Only supported by WP >= 5.3.\n if (!clientIds) {\n return null\n }\n\n const onShareBlock = () => {\n const data = {\n postID: select('core/editor').getCurrentPostId(),\n editor_blocks: select('core/block-editor').getBlocksByClientId(clientIds),\n type: 'block'\n };\n ModalManager.openFeedback(\n <FeedbackDialog\n title={__('Redux Shares', redux_templates.i18n)}\n width={700}\n description={__('Share this design', redux_templates.i18n)}\n schema={schema}\n uiSchema={uiSchema}\n data={data}\n headerImage={<i className=\"fas fa-share header-icon\"></i>}\n endpoint='share'\n onSuccess={data => window.open(data.data.url, '_blank')}\n buttonLabel={__('Submit Template', redux_templates.i18n)}\n />\n )\n }\n\n return (\n <Fragment>\n <PluginBlockSettingsMenuItem\n icon={ReduxTemplatesIcon}\n label={__('Share Block', redux_templates.i18n)}\n onClick={onShareBlock}\n />\n {/*<PluginBlockSettingsMenuItem*/}\n {/* icon={ReduxTemplatesIcon}*/}\n {/* label={__('Export as Reusable Block', redux_templates.i18n)}*/}\n {/* onClick={onExportBlock}*/}\n {/*/>*/}\n </Fragment>\n )\n}\n\nexport default compose([\n\n withDispatch((dispatch, {\n clientIds, onToggle = noop, blocksSelection = [],\n }) => {\n const {\n replaceBlocks,\n } = dispatch('core/block-editor')\n\n return {\n onExportBlock() {\n if (!blocksSelection.length) {\n return\n }\n\n console.log(blocksSelection);\n\n let blocks = wp.data.select('core/block-editor').getBlocks();\n let fileName = 'blocks.json'\n\n const title = select('core/block-editor').getSelectedBlockName();\n const content = select('core/block-editor').getSelectedBlockClientId();\n // const content = post.content.raw;\n const fileContent = JSON.stringify(\n {\n __file: 'wp_block',\n title,\n content,\n },\n null,\n 2\n );\n console.log(fileContent);\n // const theFileName = kebabCase( title ) + '.json';\n //\n // download( theFileName, fileContent, 'application/json' );\n //\n //\n //\n // if (blocksSelection.length == 1) {\n // fileName = blocksSelection[0].name.replace('/', '_') + '.json'\n // }\n //\n // saveData(blocksSelection, fileName, 'json');\n\n onToggle()\n },\n }\n }),\n])(ShareBlockButton)\n","import { withSelect } from '@wordpress/data'\nimport ShareBlockButton from './buttons'\nimport { ReduxTemplatesIcon } from '~redux-templates/icons';\n\nif (wp.plugins) {\n const { registerPlugin } = wp.plugins;\n const Buttons = withSelect( select => {\n const { getSelectedBlockClientIds } = select( 'core/block-editor' )\n\n // Only supported by WP >= 5.3.\n if ( ! getSelectedBlockClientIds ) {\n return {}\n }\n\n return {\n clientIds: getSelectedBlockClientIds(),\n }\n } )( ShareBlockButton );\n\t// TODO - Finish this off and show to users.\n // registerPlugin( 'redux-templates-share-block-btn', {\n // icon: ReduxTemplatesIcon,\n // render: Buttons,\n // } );\n}\n","import Sidebar from './sidebar'\nimport { ReduxTemplatesIcon } from '~redux-templates/icons';\nif (wp.plugins) {\n\tconst { registerPlugin } = wp.plugins;\n\n\t\n\n\tregisterPlugin( 'redux-templates-share', {\n\t\ticon: ReduxTemplatesIcon,\n\t\trender: Sidebar,\n\t} );\n}\n","const {__} = wp.i18n;\nconst {compose} = wp.compose;\nconst {withSelect, select} = wp.data;\nconst {Fragment} = wp.element;\nconst {PanelBody} = wp.components\n\nimport sortBy from 'lodash/sortBy';\nimport map from 'lodash/map';\nimport {ModalManager} from '../../modal-manager'\nimport FeedbackDialog from '~redux-templates/modal-feedback';\nimport {getWithExpiry} from '../../stores/helper';\n\nconst options = sortBy(getWithExpiry('section_categories_list'), 'label');\nconst schema = {\n type: 'object',\n properties: {\n title: {\n type: 'string',\n title: 'Block Title'\n },\n category: {\n type: 'string',\n title: 'Category',\n enum: map(options, 'value'),\n enumNames: map(options, 'label')\n },\n description: {\n type: 'string',\n title: 'Description'\n }\n }\n}\nconst uiSchema = {\n title: {\n classNames: 'fixed-control'\n },\n category: {\n classNames: 'fixed-control'\n },\n description: {\n 'ui:widget': 'textarea',\n }\n};\n\nfunction Sidebar(props) {\n if (!wp.editPost) return null;\n\treturn null; // TODO - Finish fixing this experience.\n const {PluginSidebar, PluginSidebarMoreMenuItem} = wp.editPost;\n const {getEditorBlocks} = props;\n const onShare = () => {\n const data = {\n postID: select('core/editor').getCurrentPostId(),\n editor_blocks: getEditorBlocks(),\n type: 'page'\n };\n ModalManager.openFeedback(\n <FeedbackDialog\n title={__('Redux Shares', redux_templates.i18n)}\n description={__('Share this design', redux_templates.i18n)}\n schema={schema}\n uiSchema={uiSchema}\n data={data}\n width={700}\n headerImage={<i className=\"fas fa-share header-icon\"></i>}\n endpoint='share'\n onSuccess={data => window.open(data.data.url, '_blank')}\n buttonLabel={__('Submit Template', redux_templates.i18n)}\n />\n )\n }\n\n return (\n <Fragment>\n <PluginSidebarMoreMenuItem target=\"redux-templates-share\">\n {__('Redux Template', redux_templates.i18n)}\n </PluginSidebarMoreMenuItem>\n <PluginSidebar name=\"redux-templates-share\" title={__('Redux Shares', redux_templates.i18n)}>\n <PanelBody title={__('Share this Design', redux_templates.i18n)} initialOpen={true}>\n <div className=\"d-flex justify-content-center\">\n <a className=\"button button-primary\" onClick={onShare}>\n <i className=\"fas fa-share\"></i>\n &nbsp;{__('Share this design', redux_templates.i18n)}\n </a>\n </div>\n </PanelBody>\n </PluginSidebar>\n </Fragment>\n );\n}\n\nexport default compose([\n withSelect((select) => {\n const {getEditorBlocks} = select('core/editor');\n return {\n getEditorBlocks\n };\n })\n])(Sidebar);\n","const { parse, createBlock } = wp.blocks;\nconst { apiFetch } = wp;\nconst { dispatch, select } = wp.data;\nconst { getBlockOrder } = select( 'core/block-editor' );\nconst { getBlockTypes } = select('core/blocks');\nconst { savePost, editPost } = dispatch('core/editor');\nconst { insertBlocks, removeBlocks, multiSelect } = dispatch('core/block-editor');\nconst { createSuccessNotice, createErrorNotice, createNotice, removeNotice } = dispatch('core/notices');\nimport { __ } from '@wordpress/i18n'\nimport { ModalManager } from '~redux-templates/modal-manager';\nimport PreviewModal from '../modal-preview';\nimport FeedbackDialog from '~redux-templates/modal-feedback';\n\n\n// create Block to import template\nexport const handleBlock = (data, installedDependencies) => {\n let block_data = null;\n if ('template' in data) {\n block_data = parse(data.template);\n } else if ('attributes' in data) {\n if (!('innerBlocks' in data)) {\n data.innerBlocks = [];\n }\n if (!('name' in data)) {\n errorCallback('Template malformed, `name` for block not specified.');\n }\n // This kind of plugins are not ready to accept before reloading, thus, we save it into localStorage and just reload for now.\n if (installedDependencies === true) {\n window.redux_templates_tempdata = [...window.redux_templates_tempdata, data];\n return null;\n } else {\n block_data = createBlock(data.name, data.attributes, data.innerBlocks)\n }\n } else {\n errorCallback('Template error. Please try again.');\n }\n return block_data;\n}\n\nexport const processImportHelper = () => {\n const { setImportingTemplate, discardAllErrorMessages, clearSearch } = dispatch('redux-templates/sectionslist');\n const type = select('redux-templates/sectionslist').getActiveItemType() === 'section' ? 'sections' : 'pages';\n const data = select('redux-templates/sectionslist').getImportingTemplate();\n const installedDependencies = select('redux-templates/sectionslist').getInstalledDependencies();\n const isImportToAppend = select('redux-templates/sectionslist').getImportToAppend();\n\n if (type === 'pages') {\n \teditPost({'template': 'redux-templates_full_width'});\n } else {\n\t if ( '' === select( 'core/editor' ).getEditedPostAttribute( 'template' ) ) {\n\t\t editPost({'template': 'redux-templates_contained'});\n\t }\n }\n\n discardAllErrorMessages();\n let the_url = 'redux/v1/templates/template?type=' + type + '&id=' + data.id + '&uid=' + window.userSettings.uid;\n if ('source' in data) {\n the_url += '&source=' + data.source;\n }\n\n const options = {\n method: 'GET',\n path: the_url,\n headers: { 'Content-Type': 'application/json', 'Registered-Blocks': installedBlocksTypes() }\n };\n\n if (dispatch('core/edit-post') && select('core/edit-post').getEditorMode() === 'text') {\n const { switchEditorMode } = dispatch('core/edit-post');\n switchEditorMode()\n }\n window.redux_templates_tempdata = [];\n\n apiFetch(options).then(response => {\n // First, let's give user feedback.\n displayNotice(response.data, {type: 'snackbar'});\n \n if (isImportToAppend === false) {\n const rootBlocksClientIds = getBlockOrder();\n multiSelect(\n rootBlocksClientIds[0],\n rootBlocksClientIds[rootBlocksClientIds.length - 1]\n );\n removeBlocks( rootBlocksClientIds );\n }\n\n if (response.success && response.data) {\n let responseBlockData = response.data;\n\n // Important: Update left count from the response in case of no Redux PRO\n if (redux_templates.mokama !== '1' && isNaN(responseBlockData.left) === false)\n redux_templates.left = responseBlockData.left;\n\n let handledData = [];\n if (responseBlockData.hasOwnProperty('template') || responseBlockData.hasOwnProperty('attributes'))\n handledData = handleBlock(responseBlockData, installedDependencies);\n else\n handledData = Object.keys(responseBlockData).filter(key => key !== 'cache')\n .map(key => handleBlock(responseBlockData[key], installedDependencies));\n\n localStorage.setItem('importing_data', JSON.stringify(data));\n localStorage.setItem('block_data', JSON.stringify(redux_templates_tempdata));\n localStorage.setItem('is_appending', isImportToAppend);\n\n insertBlocks(handledData);\n createSuccessNotice('Template inserted', { type: 'snackbar' });\n\n if (installedDependencies === true)\n savePost()\n .then(() => window.location.reload())\n .catch(() => createErrorNotice('Error while saving the post', { type: 'snackbar' }));\n else {\n ModalManager.close();\n ModalManager.closeCustomizer();\n setImportingTemplate(null);\n }\n afterImportHandling(data, handledData);\n\n } else {\n if (response.success === false)\n errorCallback(response.data.message);\n else\n errorCallback(response.data.error);\n }\n }).catch(error => {\n errorCallback(error.code + ' : ' + error.message);\n });\n}\n\nconst detectInvalidBlocks = (handleBlock) => {\n if (Array.isArray(handleBlock) === true) return handleBlock.filter(block => block.isValid === false);\n return handleBlock && handleBlock.isValid===false ? [handleBlock] : null;\n}\n\n// used for displaying notice from response data\nconst displayNotice = (data, options) => {\n if (data && data.message) {\n const noticeType = data.messageType || 'info';\n createNotice(noticeType, data.message, options)\n }\n}\n\n// show notice or feedback modal dialog based on imported block valid status\nexport const afterImportHandling = (data, handledBlock) => {\n const invalidBlocks = detectInvalidBlocks(handledBlock);\n // get the description from the invalid blocks\n let description = '';\n if (invalidBlocks && invalidBlocks.length < 1)\n description = invalidBlocks.map(block => {\n if (block.validationIssues && Array.isArray(block.validationIssues))\n return block.validationIssues.map(error => {\n return sprintf(...error.args)\n }).join('\\n');\n else\n return null;\n }).join('\\n');\n\n // Prepare Form schema object\n const schema = {\n type: 'object',\n properties: {\n theme_plugins: {\n type: 'boolean',\n title: __('Send theme and plugins', redux_templates.i18n),\n default: true\n },\n send_page_content: {\n type: 'boolean',\n title: __('Send page content', redux_templates.i18n),\n default: true\n },\n template_id: {\n type: 'string',\n default: data.hash,\n title: __('Template ID', redux_templates.i18n)\n },\n description: {\n type: 'string',\n default: description,\n title: __('Description', redux_templates.i18n)\n },\n\n }\n }\n const uiSchema = {\n description: {\n 'ui:widget': 'textarea',\n },\n template_id: {\n 'ui:disabled': true,\n classNames: 'fixed-control'\n }\n };\n\n const feedbackData = {\n content: handledBlock\n };\n if (invalidBlocks && invalidBlocks.length > 0) { // in case there\n createNotice('error', 'Please let us know if there was an issue importing this Redux template.', {\n isDismissible: true,\n id: 'redux-templatesimportfeedback',\n actions: [\n {\n onClick: () => ModalManager.openFeedback(<FeedbackDialog\n title={__('Thank you for reporting an issue.', redux_templates.i18n)}\n description={__('We want to make Redux perfect. Please send whatever you are comfortable sending, and we will do our best to resolve the problem.', redux_templates.i18n)}\n schema={schema}\n uiSchema={uiSchema}\n data={feedbackData}\n ignoreData={true}\n headerImage={<img className=\"header-background\" src={`${redux_templates.plugin}assets/img/popup-contact.png` } />}\n buttonLabel={__('Submit Feedback', redux_templates.i18n)}\n />),\n label: 'Report an Issue',\n isPrimary: true,\n }\n ],\n });\n }\n}\n\n// reload library button handler\nexport const reloadLibrary = () => {\n const { setLoading, setLibrary } = dispatch('redux-templates/sectionslist');\n setLoading(true);\n apiFetch({\n path: 'redux/v1/templates/library?no_cache=1',\n method: 'POST',\n data: {\n 'registered_blocks': installedBlocksTypes(),\n }\n }).then((newLibrary) => {\n setLoading(false);\n setLibrary(newLibrary.data);\n }).catch((error) => {\n errorCallback(error);\n });\n}\n\n\nexport const installedBlocks = () => {\n let installed_blocks = getBlockTypes();\n return Object.keys(installed_blocks).map(key => {\n return installed_blocks[key]['name'];\n })\n}\nexport const installedBlocksTypes = () => {\n let installed_blocks = getBlockTypes();\n\n let names = Object.keys(installed_blocks).map(key => {\n if (!installed_blocks[key]['name'].includes('core')) {\n return installed_blocks[key]['name'].split('/')[0];\n }\n })\n let unique = [...new Set(names)];\n var filtered = unique.filter(function (el) {\n return el;\n });\n\n return filtered\n}\n\nexport const openSitePreviewModal = (index, pageData) => {\n ModalManager.openCustomizer(\n <PreviewModal startIndex={index} currentPageData={pageData} />\n )\n}\n\nconst errorCallback = (errorMessage) => {\n const { appendErrorMessage, setImportingTemplate, setActivateDialogDisplay } = dispatch('redux-templates/sectionslist');\n if (errorMessage === 'Please activate Redux') {\n setActivateDialogDisplay(true);\n redux_templates.left = 0;\n } else {\n appendErrorMessage(errorMessage);\n setImportingTemplate(null);\n }\n}\n","export const actions = {\n setLibrary( library ) {\n return {\n type: 'SET_LIBRARY',\n library\n };\n },\n fetchLibraryFromAPI( path ) {\n return {\n type: 'FETCH_LIBRARY_FROM_API',\n path,\n };\n },\n setActiveItemType( activeItemType ) {\n return {\n type: 'SET_ACTIVE_ITEM_TYPE',\n activeItemType\n }\n },\n setActiveCategory( activeCategory ) {\n return {\n type: 'SET_ACTIVE_CATEGORY',\n activeCategory\n }\n },\n setActiveCollection( activeCollection ) {\n return {\n type: 'SET_ACTIVE_COLLECTION',\n activeCollection\n }\n },\n setActivePriceFilter( activePriceFilter ) {\n return {\n type: 'SET_ACTIVE_PRICE_FILTER',\n activePriceFilter\n }\n },\n setSearchContext( searchContext ) {\n return {\n type: 'SET_SEARCH_CONTEXT',\n searchContext\n }\n },\n setDependencyFilters( dependencyFilters ) {\n return {\n type: 'SET_DEPENDENCY_FILTERS',\n dependencyFilters\n }\n },\n setCurrentPage( currentPage ) {\n return {\n type: 'SET_CURRENT_PAGE',\n currentPage\n }\n },\n setLoading( loading ) {\n return {\n type: 'SET_LOADING',\n loading\n }\n },\n setColumns( columns ) {\n return {\n type: 'SET_COLUMNS',\n columns\n }\n },\n setSortBy( sortBy ) {\n return {\n type: 'SET_SORT_BY',\n sortBy\n }\n },\n appendErrorMessage( errorMessage ) {\n return {\n type: 'APPEND_ERROR_MESSAGE',\n errorMessage: errorMessage || 'Unknown Error'\n }\n },\n discardAllErrorMessages() {\n return {\n type: 'DISCARD_ALL_ERROR_MESSAGES'\n }\n },\n setInstalledDependencies(installedDependencies) {\n return {\n type: 'SET_INSTALLED_DEPENDENCIES',\n installedDependencies\n }\n },\n setTourOpen(isTourOpen) {\n return {\n type: 'SET_TOUR_OPEN',\n isTourOpen\n }\n },\n setTourActiveButtonGroup(data) {\n return {\n type: 'SET_TOUR_ACTIVE_BUTTON_GROUP',\n data\n }\n },\n setTourPreviewVisible(isVisible) {\n return {\n type: 'SET_PREVIEW_VISIBLE',\n isVisible\n }\n },\n setImportingTemplate(importingTemplate) {\n return {\n type: 'SET_IMPORTING_TEMPLATE',\n importingTemplate\n }\n },\n setChallengeStep(data) {\n return {\n type: 'SET_CHALLENGE_STEP',\n data\n }\n },\n setChallengeOpen(data) {\n return {\n type: 'SET_CHALLENGE_OPEN',\n data\n }\n },\n setChallengeTooltipRect(data) {\n return {\n type: 'SET_CHALLENGE_TOOLTIP_RECT',\n data\n }\n },\n setChallengeFinalStatus(data) {\n return {\n type: 'SET_CHALLENGE_FINAL_STATUS',\n data\n }\n },\n setChallengePassed(data) {\n return {\n type: 'SET_CHALLENGE_PASSED',\n data\n }\n },\n setChallengeListExpanded(data){\n return {\n type: 'SET_CHALLENGE_LIST_EXPANDED',\n data\n }\n },\n setActivateDialogDisplay(data) {\n return {\n type: 'SET_ACTIVATE_DIALOG_DISPLAY',\n data\n }\n },\n setImportToAppend(data) {\n return {\n type: 'SET_IMPORT_TO_APPEND',\n data\n }\n },\n setDependencyFilterRule(data) {\n return {\n type: 'SET_DEPENDENCY_FILTER_RULE',\n data\n }\n },\n selectDependencies(data) {\n return {\n type: 'SELECT_DEPENDENCIES',\n data\n }\n },\n clearSearch() {\n return {\n type: 'CLEAR_SEARCH'\n }\n },\n\tclearState() {\n\t\treturn {\n\t\t\ttype: 'CLEAR_STATE'\n\t\t}\n\t}\n};\n","export const getPluginInstance = (pluginKey) => {\n if (pluginKey in redux_templates.supported_plugins) {\n return redux_templates.supported_plugins[pluginKey];\n }\n return false; // Deal with unknown plugins\n}\n\nexport const needsPluginInstall = (pluginKey) => {\n const pluginInstance = getPluginInstance(pluginKey);\n return !pluginInstance || pluginInstance.hasOwnProperty('version') === false;\n}\n\nexport const needsPluginPro = (pluginKey) => {\n const pluginInstance = getPluginInstance(pluginKey);\n return (pluginInstance && pluginInstance.hasOwnProperty('has_pro') && pluginInstance.has_pro &&\n (pluginInstance.hasOwnProperty('is_pro') === false || pluginInstance.is_pro === false));\n}\n\n\nexport const pluginInfo = (pluginKey) => {\n let pluginInstance = processPlugin(pluginKey);\n if (!pluginInstance) return {name: null, slug: null, url: null};\n return pluginInstance\n}\n\n\nexport const processPlugin = (pluginKey) => {\n let pluginInstance = {...getPluginInstance(pluginKey)};\n if (!pluginInstance) {\n return pluginInstance\n }\n\n if ('free_slug' in pluginInstance && pluginInstance['free_slug'] in redux_templates.supported_plugins) {\n let new_instance = {...getPluginInstance(pluginInstance.free_slug)}\n new_instance.free_slug = pluginInstance.free_slug\n new_instance.name = pluginInstance.name\n if (!('is_pro' in new_instance)) {\n delete new_instance.version\n }\n pluginInstance = new_instance\n }\n pluginInstance.slug = pluginInstance.slug ? pluginInstance.slug : pluginKey;\n\n return pluginInstance\n}\n\nexport const requiresPro = (data) => {\n if (data && data.proDependenciesMissing && data.proDependenciesMissing.length > 0) {\n if (isReduxProInstalled()) { // redux pro installed, then skip merged plugins\n return data.proDependenciesMissing.filter((plugin) => isPluginReduxProMerged(plugin) === false).length > 0\n }\n return true;\n }\n return false;\n}\nexport const requiresInstall = (data) => {\n if (data && data.installDependenciesMissing && data.installDependenciesMissing.length > 0) {\n return true;\n }\n if (isReduxProInstalled() && data.proDependenciesMissing) { // redux pro installed, then include merged plugins\n return data.proDependenciesMissing.filter((plugin) => isPluginReduxProMerged(plugin)).length > 0\n }\n return false;\n}\n// Check if redux pro should be installed.\nexport const requiresReduxPro = (data) => {\n if (!data) return false;\n const missingDependencies = [].concat(data.installDependenciesMissing, data.proDependenciesMissing);\n return missingDependencies.reduce((acc, curKey) => {\n if (curKey === 'redux-pro') return true;\n return acc || (isPluginReduxProMerged(curKey) && isReduxProInstalled() === false); // main logic, above were execpetion handling\n }, false);\n}\n\nexport const isPluginReduxProMerged = (pluginKey) => {\n const pluginInstance = getPluginInstance(pluginKey);\n return (pluginInstance !== false && pluginInstance.redux_pro === true);\n}\n\nexport const isTemplateReadyToInstall = (data) => {\n return (requiresInstall(data) || requiresPro(data)) ? false : true;\n}\n\nexport const isTemplatePremium = (data, activeDependencyFilter) => {\n if (data && data.proDependencies !== undefined && data.proDependencies.length > 0) {\n return data.proDependencies.reduce((acc, cur) => {\n if (activeDependencyFilter[cur] === undefined) \n return false;\n return (acc || activeDependencyFilter[cur].value);\n }, false);\n }\n return (data && data.proDependenciesMissing !== undefined && data.proDependenciesMissing.length > 0);\n}\n\nexport const isReduxProInstalled = () => {\n const reduxProPluginInstance = redux_templates.supported_plugins['redux-framework'];\n return reduxProPluginInstance && reduxProPluginInstance.hasOwnProperty('is_pro');\n}","import {isTemplatePremium} from './dependencyHelper';\nimport {missingPluginsArray, NONE_KEY} from './helper';\nconst REDUXTEMPLATES_PRO_KEY = 'redux-pro';\n// Just get current Page Data\nexport const applyCategoryFilter = (pageData, activeCategory) => {\n let currentPageData = [];\n let tempDataID = [];\n if (activeCategory && pageData[activeCategory] && Array.isArray(pageData[activeCategory]) && pageData[activeCategory].length > 0) {\n pageData[activeCategory].map(value => {\n if (!(tempDataID.indexOf(value.ID) > -1)) {\n currentPageData.push(value);\n tempDataID.push(value.ID);\n }\n });\n } else\n for (let key in pageData) {\n Array.isArray(pageData[key]) && pageData[key].map(value => {\n if (!(tempDataID.indexOf(value.ID) > -1)) {\n currentPageData.push(value);\n tempDataID.push(value.ID);\n }\n else {\n if (value.parentID && !(tempDataID.indexOf(value.ID) > -1)) {\n currentPageData.push(value);\n tempDataID.push(value.ID);\n }\n }\n })\n }\n return currentPageData;\n};\n\nexport const applySearchFilter = (pageData, searchContext) => {\n let lowercasedSearchContext = searchContext.toLowerCase();\n if (Array.isArray(pageData)) {\n return pageData.filter(item => (item.name.toLowerCase().indexOf(lowercasedSearchContext) !== -1))\n } else {\n let newPageData = {};\n Object.keys(pageData).forEach(key => {\n newPageData[key] = pageData[key].filter(item => (item.name.toLowerCase().indexOf(lowercasedSearchContext) != -1))\n });\n return newPageData;\n }\n}\n\n\n\nexport const applyHashFilter = (pageData, searchContext) => {\n let lowercasedSearchContext = searchContext.toLowerCase();\n if (Array.isArray(pageData)) {\n return pageData.filter(item => (item.hash && item.hash.toLowerCase().indexOf(lowercasedSearchContext) !== -1))\n } else {\n let newPageData = [];\n Object.keys(pageData).forEach(key => {\n let filteredData = pageData[key].filter(item => (item.hash && item.hash.toLowerCase().indexOf(lowercasedSearchContext) !== -1));\n newPageData = [...newPageData, ...filteredData];\n });\n return newPageData;\n }\n}\n\n// Apply Price filter afterwards : Should make sure if it is a best practise to split this filtering\nexport const applyPriceFilter = (pageData, activePriceFilter, activeDependencyFilter) => {\n if (activePriceFilter !== '') {\n if (Array.isArray(pageData)) {\n return pageData.filter(item => {\n if (activePriceFilter === 'free') return (isTemplatePremium(item, activeDependencyFilter) === false);\n if (activePriceFilter === 'pro') return isTemplatePremium(item, activeDependencyFilter);\n });\n } else {\n let newPageData = {};\n Object.keys(pageData).forEach(key => {\n newPageData[key] = pageData[key].filter(item => {\n if (activePriceFilter === 'free') return (isTemplatePremium(item, activeDependencyFilter) === false);\n if (activePriceFilter === 'pro') return isTemplatePremium(item, activeDependencyFilter);\n });\n });\n return newPageData;\n }\n }\n return pageData;\n}\n\n\nexport const applyDependencyFilters = (pageData, dependencyFilters, dependencyFilterRule) => {\n const truthyDependenciesList = truthyDependencyFiltersList(dependencyFilters);\n if (Array.isArray(pageData)) {\n return pageData.filter(item => isTemplateDependencyFilterIncluded(item, truthyDependenciesList, dependencyFilterRule));\n } else {\n let newPageData = {};\n Object.keys(pageData).forEach(key => {\n newPageData[key] = pageData[key].filter(item => isTemplateDependencyFilterIncluded(item, truthyDependenciesList, dependencyFilterRule));\n });\n return newPageData;\n }\n}\n\nconst isTemplateDependencyFilterIncluded = (item, truthyDependenciesList, dependencyFilterRule) => {\n // console.log(\"now\", item.dependencies, dependencyFilters);\n // No dependencies at all case\n if (!item.dependencies || Object.keys(item.dependencies).length === 0) return truthyDependenciesList.includes(NONE_KEY);\n\n // Normal dependencies filter check\n const filteredList = item.dependencies.filter((dependency) => truthyDependenciesList.includes(dependency));\n\n return dependencyFilterRule ? item.dependencies.length === filteredList.length : filteredList.length > 0; // filter rule = ture => AND operation\n}\n\n// check dependency filter is selected on sidebar\n// Input: dependencyFilter={'qubely', \nexport const valueOfDependencyFilter = (dependencyFilter) => {\n if (dependencyFilter != null && dependencyFilter.hasOwnProperty('value')) return (dependencyFilter.value === true);\n return (dependencyFilter === true);\n}\n\nconst truthyDependencyFiltersList = (dependencyFilters) => {\n return Object.keys(dependencyFilters).filter((key) => dependencyFilters[key].value === true);\n}","import kebabCase from 'lodash/kebabCase'\nimport uniq from 'lodash/uniq';\nimport concat from 'lodash/concat';\nimport flatten from 'lodash/flatten';\nimport sortBy from 'lodash/sortBy';\nimport map from 'lodash/map';\nimport flattenDeep from 'lodash/flattenDeep';\nimport {afterImportHandling} from './actionHelper';\nimport {getPluginInstance, isPluginReduxProMerged} from './dependencyHelper';\nconst {createBlock} = wp.blocks;\nconst {dispatch} = wp.data;\nconst {createSuccessNotice} = dispatch('core/notices');\nconst {insertBlocks} = dispatch('core/block-editor');\n\nconst prefix = 'redux_';\nexport const REDUXTEMPLATES_PRO_KEY = 'redux-pro';\nexport const NONE_KEY = 'core';\nconst EXIPRY_TIME = 5 * 24 * 3600 * 1000;\n\nexport const getCurrentState = (state) => state[state.activeItemType]\n// Helper function not to be exported\nconst convertObjectToArray = (list) => {\n if (!list)\n return [];\n return Object.keys(list).map(key => {\n return {...list[key], ID: key};\n })\n};\n\n// parse categories and section data from section server data\nexport const categorizeData = (list) => {\n let categories = [];\n let data = {};\n\n list.forEach(item => {\n if (item.categories) {\n item.categories.map(catName => {\n let catSlug = kebabCase(catName);\n if (catSlug in data) {\n data[catSlug].push(item)\n } else {\n data[catSlug] = [];\n data[catSlug].push(item)\n }\n let index = -1;\n categories.forEach((change, i) => {\n if (catSlug == change.slug) {\n index = i\n categories[i].ids.push(item.id);\n }\n });\n if (index === -1) {\n categories.push({name: catName, slug: catSlug, ids: [item.id]})\n }\n })\n }\n });\n\n return {categories, data};\n}\n\nexport const parseSectionData = (sections) => {\n const librarySectionData = convertObjectToArray(sections);\n const wholePlugins = uniq(flattenDeep(map(librarySectionData, 'dependencies')));\n const toBeReturned = categorizeData(librarySectionData);\n const categoriesList = toBeReturned.categories.map((category) => {return {label: category.name, value: category.slug}; });\n setWithExpiry('section_categories_list', categoriesList, EXIPRY_TIME);\n return {...toBeReturned, wholePlugins};\n}\n\nexport const parsePageData = (pages) => {\n const libraryPageData = convertObjectToArray(pages);\n const wholePlugins = uniq(flattenDeep(map(libraryPageData, 'dependencies')));\n const toBeReturned = categorizeData(libraryPageData);\n const categoriesList = toBeReturned.categories.map((category) => {return {label: category.name, value: category.slug}; });\n setWithExpiry('page_categories_list', categoriesList, EXIPRY_TIME);\n return {...toBeReturned, wholePlugins};\n}\n\nexport const parseCollectionData = (library) => {\n let libraryCollectionData = convertObjectToArray(library.collections);\n // filter out incomplete data\n libraryCollectionData = libraryCollectionData.filter(collection => collection.pages && collection.pages.length > 0);\n // After common handling, we need to populate homepage data\n libraryCollectionData = libraryCollectionData.map(collection => {\n if (collection.homepage && library.pages[collection.homepage]) collection.homepageData = library.pages[collection.homepage];\n else {\n collection.homepageData = library.pages[collection.pages[0]];\n }\n\n if (collection.pages) {\n collection.installDependenciesMissing = uniq(concat(flatten(collection.pages.map(page => library.pages[page].installDependenciesMissing || []))));\n collection.proDependenciesMissing = uniq(concat(flatten(collection.pages.map(page => library.pages[page].proDependenciesMissing || []))));\n }\n\n return collection;\n });\n const wholePlugins = uniq(flattenDeep(map(libraryCollectionData, 'dependencies')));\n return {...categorizeData(libraryCollectionData), dependencyFilters: {[NONE_KEY]: true, ...library.dependencies}, wholePlugins};\n}\n\n// one of important function\n// get collection children data upon clicking on collection in collections tab\n// always homepage page first, sort alphabetically afterward\nexport const getCollectionChildrenData = (library, activeCollection) => {\n let activeCollectionData = library.collections[activeCollection];\n // sort page except homepage\n let childrenPages = activeCollectionData.pages\n .filter(page => page !== activeCollectionData.homepage)\n .map(child => {\n return {...library.pages[child], ID: child}\n });\n childrenPages = sortBy(childrenPages, 'name');\n // insert homepage at the beginning of the array\n if (activeCollectionData.homepage && library.pages[activeCollectionData.homepage]) {\n childrenPages.unshift(library.pages[activeCollectionData.homepage]);\n }\n return childrenPages;\n}\n\n// Check if the block is pro\nexport const isBlockPro = (pro, source) => {\n if (source && redux_templates.supported_plugins.hasOwnProperty(source))\n return (pro && !redux_templates.supported_plugins[source].is_pro);\n else\n return pro && redux_templates.mokama !== '1';\n}\n\nexport const missingPro = (pro) => {\n return (redux_templates.mokama !== '1' && pro === true);\n}\n\nexport const missingRequirement = (pro, requirements) => {\n if (!requirements) return missingPro(pro);\n else {\n const supported_plugins = redux_templates.supported_plugins;\n for (let i = 0; i < requirements.length; i++) {\n let requirement = requirements[i];\n if (!supported_plugins.hasOwnProperty(requirement.slug))\n return true; // Doesn't have the plugin installed\n else {\n let installedPlugin = supported_plugins[requirement.slug];\n if (Number(requirement.version) > Number(installedPlugin.version) ||\n (requirement.pro === true && installedPlugin.pro === false))\n return true;\n }\n }\n return proCheck;\n }\n}\n\n\nexport const setWithExpiry = (key, value, ttl) => {\n const prefixedKey = prefix + key;\n const now = new Date();\n\n // `item` is an object which contains the original value\n // as well as the time when it's supposed to expire\n const item = {\n value: value,\n expiry: now.getTime() + ttl\n };\n localStorage.setItem(prefixedKey, JSON.stringify(item));\n}\n\nexport const getWithExpiry = (key, defaultValue = null) => {\n const prefixedKey = prefix + key;\n const itemStr = localStorage.getItem(prefixedKey);\n\n // if the item doesn't exist, return null\n if (!itemStr) {\n return defaultValue;\n }\n\n const item = JSON.parse(itemStr);\n const now = new Date();\n\n // compare the expiry time of the item with the current time\n if (now.getTime() > item.expiry) {\n // If the item is expired, delete the item from storage\n // and return null\n localStorage.removeItem(prefixedKey);\n return defaultValue;\n }\n return item.value;\n}\n\n\nexport const handlingLocalStorageData = () => {\n try {\n let blockData = localStorage.getItem('block_data');\n if (!blockData || blockData == null) return;\n blockData = JSON.parse(blockData);\n if (!blockData || blockData == null || blockData.length < 1) return;\n\n blockData = blockData.filter(block => (block.name && block.attributes && block.innerBlocks) )\n .map(block => {\n if (block.name && block.attributes && block.innerBlocks) return createBlock(block.name, block.attributes, block.innerBlocks);\n });\n if (blockData.length > 0) {\n insertBlocks(blockData);\n createSuccessNotice('Template inserted', {type: 'snackbar'});\n }\n // preparing to call after import handling\n let data = localStorage.getItem('importing_data');\n if (!data || data == null) return;\n data = JSON.parse(data);\n afterImportHandling(data, blockData);\n\n // reset the localstorage\n localStorage.setItem('block_data', null);\n localStorage.setItem('importing_data', null);\n } catch (error) {\n alert(error.code + ' : ' + error.message);\n }\n}\n\n\nexport const columnMap = {\n 'large': 2,\n 'medium': 3,\n 'small': 4\n};\n\nexport const pageSizeMap = {\n 'large': 20,\n 'medium': 30,\n 'small': 40\n};\n\nexport const getOnlySelectedDependencyFilters = (dependencyFilters) => {\n return Object.keys(dependencyFilters).filter(key => dependencyFilters[key]);\n}\n\n/*\nInput: dependencies: {getwid: 38, qubely: 82...}\nInput: dependencies: ['getwid', 'qubely', ...]\nResult: {getwid: {value: true, disabled: true}, }\n*/\nexport const getDefaultDependencies = (dependencies) => {\n const unSupportedPlugins = Object.keys(redux_templates.supported_plugins).filter(key => isPluginProActivated(key) === false);\n return dependencies.reduce(\n (acc, cur) => {\n // special handling for pro plugin not activated.\n let value = true;\n if (isProPlugin(cur) && (cur !== REDUXTEMPLATES_PRO_KEY) && isPluginReduxProMerged(cur) === false) value = false; // Not including pro plugin in redux templates\n return {...acc, [cur]: {value, disabled: false}};\n },\n {\n [NONE_KEY]: {value: true, disabled: false}, // Native element is included in default dependencies\n [REDUXTEMPLATES_PRO_KEY]: {value: true, disabled: false} // Redux pro is included in default dependencies\n }\n );\n}\n\nexport const getInstalledDependencies = (dependencies) => {\n const unSupportedPlugins = Object.keys(redux_templates.supported_plugins).filter(key => isPluginProActivated(key) === false);\n return dependencies\n .filter(key => key !== NONE_KEY)\n .reduce(\n (acc, cur) => {\n // special handling for pro plugin not activated.\n let value = true;\n const pluginInstance = getPluginInstance(cur);\n if (pluginInstance) {\n if (isProPlugin(cur) && unSupportedPlugins.indexOf(cur) !== -1) value = false;\n if (isProPlugin(cur) === false && pluginInstance.hasOwnProperty('version') === false) value = false;\n if (cur === REDUXTEMPLATES_PRO_KEY) value = false;\n } else\n value = false;\n return {...acc, [cur]: {value, disabled: false}};\n },\n {\n [NONE_KEY]: {value: true, disabled: false}\n }\n );\n}\n\nconst isProPlugin = (pluginKey) => {\n const pluginInstance = getPluginInstance(pluginKey);\n return (pluginInstance && pluginInstance.hasOwnProperty('free_slug'));\n}\n\nconst isPluginProActivated = (pluginKey) => {\n const pluginInstance = getPluginInstance(pluginKey);\n const freePluginInstance = getPluginInstance(pluginInstance.free_slug);\n return (freePluginInstance.hasOwnProperty('version') && freePluginInstance.hasOwnProperty('is_pro') && freePluginInstance.is_pro !== false);\n}\n\nexport const missingPluginsArray = () => {\n return Object.keys(redux_templates.supported_plugins).filter(pluginKey => isProPlugin(pluginKey) && isPluginProActivated(pluginKey) === false);\n}\n\n\n\n/**\n * Get last saved step.\n */\nexport const loadChallengeStep = () => {\n var step = localStorage.getItem( 'reduxChallengeStep' );\n if (step === null)\n return -1;\n step = parseInt( step, 10 );\n return step;\n}\n\n/**\n * Save Challenge step.\n */\nexport const saveChallengeStep = (step) => {\n localStorage.setItem( 'reduxChallengeStep', step );\n}\n","const {apiFetch} = wp;\nconst {registerStore} = wp.data;\n\nimport {initialState, reducer} from './reducer';\nimport {actions} from './actions';\nimport cloneDeep from 'lodash/cloneDeep';\nimport sortBy from 'lodash/sortBy';\nimport countBy from 'lodash/countBy';\nimport map from 'lodash/map';\nimport flattenDeep from 'lodash/flattenDeep';\nimport uniq from 'lodash/uniq';\nimport uniqBy from 'lodash/uniqBy';\nimport {applyCategoryFilter, applySearchFilter, applyHashFilter, applyPriceFilter, applyDependencyFilters, valueOfDependencyFilter} from './filters'\nimport {getCurrentState, getCollectionChildrenData, loadChallengeStep, NONE_KEY} from './helper';\nimport {isTemplatePremium} from './dependencyHelper'\nimport {installedBlocksTypes} from './actionHelper';\n\nconst getOriginalPageData = (state) => {\n if (state.activeItemType === 'collection' && state.collection.activeCollection !== null)\n return getCollectionChildrenData(state.library, state.collection.activeCollection);\n return getCurrentState(state).data;\n};\n\nconst getActivePriceFilter = (state) => {\n return getCurrentState(state).priceFilter;\n};\nconst getSearchContext = (state) => {\n return (state.activeItemType !== 'saved') ? getCurrentState(state).searchContext : null;\n};\n\nconst getActiveCategory = (state) => {\n return state[state.activeItemType].activeCategory;\n};\n\nconst getCurrentPage = (state) => {\n return state[state.activeItemType].currentPage;\n};\nconst getActiveItemType = (state) => {\n return state.activeItemType;\n};\n\n// get relevant page data, apply category, price, search, dependent filters\nconst getPageData = (state, applyDependencyFilter = true) => {\n let pageData = getOriginalPageData(state);\n const searchKeyword = getSearchContext(state);\n let hashFilteredData = [];\n // Hash filter to take priority\n if (state.activeItemType !== 'collection' && searchKeyword.length > 5) hashFilteredData = applyHashFilter(pageData, searchKeyword);\n // Full search for pageData\n if (pageData && Object.keys(pageData).length > 0) {\n pageData = applySearchFilter(pageData, searchKeyword);\n if (applyDependencyFilter) pageData = applyDependencyFilters(pageData, getDependencyFilters(state), getDependencyFilterRule(state));\n\n pageData = applyPriceFilter(pageData, getActivePriceFilter(state), getDependencyFilters(state));\n if (state.collection.activeCollection === null || state.activeItemType !== 'collection') {\n pageData = applyCategoryFilter(pageData, getActiveCategory(state));\n pageData = sortBy(pageData, getCurrentState(state).sortBy);\n }\n return uniqBy([...pageData, ...hashFilteredData], 'ID');\n }\n return null;\n};\n\nconst getDependencyFilters = (state) => {\n return {...getAllDependencFilters(state), ...getCurrentState(state).dependencyFilters};\n};\n\nconst getAllDependencFilters = (state) => {\n return state[state.activeItemType || 'section'].wholePlugins.reduce((acc, cur) => {\n return {...acc, [cur]: {value: false} };\n }, undefined)\n};\n\n\nconst getDependencyFiltersStatistics = (state) => {\n const pageData = getPageData(state, false);\n const dependentPluginsArray = uniq(flattenDeep(map(pageData, 'dependencies')));\n let dependencyFilters = getDependencyFilters(state);\n Object.keys(dependencyFilters)\n .forEach((plugin) => {\n dependencyFilters[plugin] = {...dependencyFilters[plugin], disabled: dependentPluginsArray.indexOf(plugin) === -1}\n })\n dependencyFilters[NONE_KEY] = {value: valueOfDependencyFilter(dependencyFilters[NONE_KEY]), disabled: false};\n return dependencyFilters;\n};\nconst getDependencyFilterRule = (state) => {\n return state[state.activeItemType].dependencyFilterRule;\n};\nregisterStore('redux-templates/sectionslist', {\n\n reducer,\n actions,\n\n selectors: {\n fetchLibraryFromAPI(state) {\n return state.library;\n },\n receive(state) {\n return state.sections;\n },\n\n getActivePriceFilter,\n getSearchContext,\n getDependencyFilters,\n getDependencyFiltersStatistics,\n getActiveItemType,\n getCurrentPage,\n getActiveCategory,\n getDependencyFilterRule,\n getWholePlugins(state) {\n return (state.activeItemType !== 'saved') ? getCurrentState(state).wholePlugins : null;\n },\n // get categories from currentState, sortBy alphabetically, with the count of pageData within the current category\n getCategoryData(state) {\n let categories = [];\n let pageData = getOriginalPageData(state);\n if (pageData && Object.keys(pageData).length > 0) {\n pageData = applySearchFilter(pageData, getSearchContext(state));\n pageData = applyDependencyFilters(pageData, getDependencyFilters(state), getDependencyFilterRule(state));\n pageData = applyPriceFilter(pageData, getActivePriceFilter(state), getDependencyFilters(state));\n }\n if (state.collection.activeCollection === null || state.activeItemType !== 'collection') {\n categories = cloneDeep(getCurrentState(state).categories);\n categories = categories.map(category => {\n const filteredData = map(pageData[category.slug], 'id');\n return {...category, filteredData};\n });\n }\n\n categories = sortBy(categories, 'name');\n return categories;\n },\n // get relevant page data, apply category, price, search, dependent filters\n getPageData,\n\n getStatistics(state) {\n let pageData = getOriginalPageData(state);\n let staticsData = {true: 0, false: 0};\n if (pageData && Object.keys(pageData).length > 0) {\n pageData = applySearchFilter(pageData, getSearchContext(state));\n pageData = applyDependencyFilters(pageData, getDependencyFilters(state), getDependencyFilterRule(state));\n if (state.collection.activeCollection === null || state.activeItemType !== 'collection') pageData = applyCategoryFilter(pageData, getActiveCategory(state));\n staticsData = countBy(pageData, (item) => isTemplatePremium(item, getDependencyFilters(state)) === true);\n }\n return staticsData;\n },\n getLoading(state) {\n return state.loading;\n },\n getColumns(state) {\n return state.columns;\n },\n getSortBy(state) {\n return getCurrentState(state).sortBy;\n },\n getActiveCollection(state) {\n return state.collection.activeCollection;\n },\n getActiveCollectionData(state) {\n if (state.library && state.library.collections && state.collection)\n return state.library.collections[state.collection.activeCollection];\n return null;\n },\n getSaved(state) {\n return state.saved;\n },\n getErrorMessages(state) {\n return state.errorMessages;\n },\n getInstalledDependencies(state) {\n return state.installedDependencies;\n },\n getTourOpen(state) {\n return state.tour.isOpen;\n },\n getTourActiveButtonGroup(state) {\n return state.tour.activeButtonGroup;\n },\n getTourPreviewVisible(state) {\n return state.tour.isPreviewVisible;\n },\n getImportingTemplate(state) {\n return state.importingTemplate;\n },\n getChallengeStep(state) {\n return loadChallengeStep();\n },\n getChallengeOpen(state) {\n return state.challenge.isOpen;\n },\n getChallengeTooltipRect(state) {\n return state.challenge.tooltipRect;\n },\n getChallengeFinalStatus(state) {\n return state.challenge.finalStatus;\n },\n getChallengePassed(state) {\n return state.challenge.passed;\n },\n getChallengeListExpanded(state) {\n return state.challenge.listExpanded;\n },\n getActivateDialogDisplay(state) {\n return state.activateDialog;\n },\n getImportToAppend(state) {\n return state.isImportToAppend;\n }\n },\n\n controls: {\n FETCH_LIBRARY_FROM_API(action) {\n return apiFetch({path: action.path, method: 'POST', data: {registered_blocks: installedBlocksTypes()}});\n },\n FETCH_SAVED_FROM_API(action) {\n return apiFetch({path: action.path, method: 'POST', data: {registered_blocks: installedBlocksTypes()}});\n }\n },\n\n resolvers: {\n * fetchLibraryFromAPI(state) {\n try {\n const receiveSectionResult = yield actions.fetchLibraryFromAPI('redux/v1/templates/library');\n return actions.setLibrary(receiveSectionResult.data);\n } catch (error) {\n return actions.appendErrorMessage(error.code + ' ' + error.message)\n }\n }\n },\n\n initialState\n});\n","import {parseSectionData, parsePageData, parseCollectionData, getInstalledDependencies, NONE_KEY} from './helper';\nimport {getDefaultDependencies} from './helper';\nimport {loadChallengeStep, saveChallengeStep, setWithExpiry, getWithExpiry} from './helper';\nconst EXIPRY_TIME = 5 * 24 * 3600 * 1000;\nexport const initialState = {\n loading: false,\n activeItemType: getWithExpiry('itemType', 'section'),\n library: null,\n columns: getWithExpiry('column', ''),\n errorMessages: [],\n section: {\n categories: [],\n data: {},\n priceFilter: getWithExpiry('section_price', ''),\n activeCategory: getWithExpiry('section_category', ''),\n dependencyFilters: {},\n dependencyFilterRule: getWithExpiry('section_filterRule', true),\n searchContext: '',\n wholePlugins: [],\n sortBy: getWithExpiry('section_sort', 'name'),\n currentPage: getWithExpiry('section_page', 0)\n },\n page: {\n categories: [],\n data: {},\n priceFilter: getWithExpiry('page_price', ''),\n activeCategory: getWithExpiry('page_category', ''),\n dependencyFilters: {},\n dependencyFilterRule: getWithExpiry('page_filterRule', true),\n searchContext: '',\n wholePlugins: [],\n sortBy: getWithExpiry('page_sort', 'name'),\n currentPage: getWithExpiry('page_page', 0)\n },\n collection: {\n categories: [],\n data: {},\n priceFilter: getWithExpiry('collection_price', ''),\n activeCategory: getWithExpiry('collection_category', 'name'),\n dependencyFilters: {},\n dependencyFilterRule: false,\n searchContext: '',\n wholePlugins: [],\n activeCollection: null,\n sortBy: getWithExpiry('collection_sort', 'name'),\n currentPage: getWithExpiry('collection_page', 0)\n },\n installedDependencies: false, // used when deciding should or not reload page after importing the template\n isImportToAppend: true, // append to or replace the current page content for importing\n tour: {\n isOpen: false,\n activeButtonGroup: null,\n isPreviewVisible: false\n },\n challenge: {\n isOpen: false,\n currentStep: loadChallengeStep(),\n tooltipRect: {},\n finalStatus: '',\n passed: getWithExpiry('reduxChallengePassed', false),\n listExpanded: true\n },\n plugins: {},\n importingTemplate: null,\n activateDialog: false\n};\n\nexport const reducer = ( state = initialState, action ) => {\n\n switch ( action.type ) {\n case 'SET_LIBRARY':\n if (!action.library.dependencies) return state;\n redux_templates.supported_plugins = action.library.plugins;\n const dependencies = getDefaultDependencies(Object.keys(action.library.dependencies));\n const parsedSection = parseSectionData(action.library.sections);\n const parsedPage = parsePageData(action.library.pages);\n\t\t\tconst parsedCollection = parseCollectionData(action.library);\n return {\n ...state,\n loading: false,\n library: action.library,\n section: {\n ...state.section,\n ...parsedSection,\n dependencyFilters: getWithExpiry('section_plugin') ? getWithExpiry('section_plugin') : dependencies\n },\n page: {\n ...state.page,\n ...parsedPage,\n dependencyFilters: getWithExpiry('page_plugin') ? getWithExpiry('page_plugin') : dependencies\n },\n collection: {\n ...state.collection,\n ...parsedCollection,\n dependencyFilters: getWithExpiry('collection_plugin') ? getWithExpiry('collection_plugin') : dependencies\n }\n };\n case 'SET_ACTIVE_CATEGORY':\n setWithExpiry(state.activeItemType + '_category', action.activeCategory, EXIPRY_TIME);\n setWithExpiry(state.activeItemType + '_page', 0, EXIPRY_TIME);\n return {\n ...state,\n [state.activeItemType]: {\n ...state[state.activeItemType],\n currentPage: 0,\n activeCategory: action.activeCategory\n }\n };\n case 'SET_SEARCH_CONTEXT':\n setWithExpiry(state.activeItemType + '_search', action.searchContext, EXIPRY_TIME);\n setWithExpiry(state.activeItemType + '_page', 0, EXIPRY_TIME);\n return {\n ...state,\n [state.activeItemType]: {\n ...state[state.activeItemType],\n currentPage: 0,\n searchContext: action.searchContext\n }\n };\n case 'SET_ACTIVE_PRICE_FILTER':\n setWithExpiry(state.activeItemType + '_price', action.activePriceFilter, EXIPRY_TIME);\n setWithExpiry(state.activeItemType + '_page', 0, EXIPRY_TIME);\n return {\n ...state,\n [state.activeItemType]: {\n ...state[state.activeItemType],\n currentPage: 0,\n priceFilter: action.activePriceFilter\n }\n };\n case 'SET_ACTIVE_ITEM_TYPE':\n setWithExpiry('itemType', action.activeItemType, EXIPRY_TIME);\n return {\n ...state,\n activeItemType: action.activeItemType\n };\n case 'SET_DEPENDENCY_FILTERS':\n setWithExpiry(state.activeItemType + '_plugin', action.dependencyFilters, EXIPRY_TIME);\n setWithExpiry(state.activeItemType + '_page', 0, EXIPRY_TIME);\n return {\n ...state,\n [state.activeItemType]: {\n ...state[state.activeItemType],\n currentPage: 0,\n dependencyFilters: action.dependencyFilters\n }\n }\n case 'SET_SORT_BY':\n setWithExpiry(state.activeItemType + '_sort', action.sortBy, EXIPRY_TIME);\n setWithExpiry(state.activeItemType + '_page', 0, EXIPRY_TIME);\n return {\n ...state,\n [state.activeItemType]: {\n ...state[state.activeItemType],\n currentPage: 0,\n sortBy: action.sortBy\n }\n };\n case 'SET_CURRENT_PAGE':\n setWithExpiry(state.activeItemType + '_page', action.currentPage, EXIPRY_TIME);\n return {\n ...state,\n [state.activeItemType]: {\n ...state[state.activeItemType],\n currentPage: action.currentPage\n }\n };\n case 'SET_ACTIVE_COLLECTION':\n return {\n ...state,\n collection: {\n ...state.collection,\n activeCollection: action.activeCollection\n }\n };\n case 'SET_LOADING':\n return {\n ...state,\n loading: action.loading\n }\n case 'SET_COLUMNS':\n setWithExpiry('column', action.columns, EXIPRY_TIME);\n return {\n ...state,\n columns: action.columns\n }\n case 'APPEND_ERROR_MESSAGE':\n return {\n ...state,\n errorMessages: state.errorMessages.concat([action.errorMessage])\n }\n case 'DISCARD_ALL_ERROR_MESSAGES':\n return {\n ...state,\n errorMessages: []\n }\n case 'SET_INSTALLED_DEPENDENCIES':\n return {\n ...state,\n installedDependencies: action.installedDependencies\n }\n case 'SET_TOUR_OPEN':\n return {\n ...state,\n tour: {\n ...state.tour,\n isOpen: action.isTourOpen\n }\n };\n case 'SET_TOUR_ACTIVE_BUTTON_GROUP':\n return {\n ...state,\n tour: {\n ...state.tour,\n activeButtonGroup: action.data\n }\n };\n case 'SET_PREVIEW_VISIBLE':\n return {\n ...state,\n tour: {\n ...state.tour,\n isPreviewVisible: action.isVisible\n }\n };\n case 'SET_IMPORTING_TEMPLATE':\n return {\n ...state,\n importingTemplate: action.importingTemplate\n }\n case 'SET_CHALLENGE_STEP':\n saveChallengeStep(action.data);\n return {\n ...state,\n challenge: {\n ...state.challenge,\n currentStep: action.data\n }\n }\n case 'SET_CHALLENGE_OPEN':\n return {\n ...state,\n challenge: {\n ...state.challenge,\n isOpen: action.data\n }\n }\n case 'SET_CHALLENGE_TOOLTIP_RECT':\n return {\n ...state,\n challenge: {\n ...state.challenge,\n tooltipRect: action.data\n }\n }\n case 'SET_CHALLENGE_FINAL_STATUS':\n return {\n ...state,\n challenge: {\n ...state.challenge,\n finalStatus: action.data\n }\n }\n case 'SET_CHALLENGE_PASSED':\n setWithExpiry('reduxChallengePassed', action.data, EXIPRY_TIME);\n return {\n ...state,\n challenge: {\n ...state.challenge,\n passed: action.data\n }\n }\n case 'SET_CHALLENGE_LIST_EXPANDED':\n return {\n ...state,\n challenge: {\n ...state.challenge,\n listExpanded: action.data\n }\n }\n case 'SET_ACTIVATE_DIALOG_DISPLAY':\n return {\n ...state,\n activateDialog: action.data\n }\n case 'SET_IMPORT_TO_APPEND':\n return {\n ...state,\n isImportToAppend: action.data\n }\n case 'SET_DEPENDENCY_FILTER_RULE':\n setWithExpiry(state.activeItemType + '_filterRule', action.data, EXIPRY_TIME);\n return {\n ...state,\n [state.activeItemType]: {\n ...state[state.activeItemType],\n dependencyFilterRule: action.data\n }\n }\n // Dependency Shortcut click handler: All, None, Installed and Reset\n case 'SELECT_DEPENDENCIES':\n const types = ['section', 'page', 'collection'];\n let atomHandler;\n switch(action.data) {\n case 'all':\n case 'none':\n const newValue = action.data === 'all';\n atomHandler = (plugins) => plugins\n .filter(plugin => [ NONE_KEY, 'gutenberghub.com', 'shareablock.com' ].includes(plugin) === false )\n .reduce(\n (acc, key) => {\n return { ...acc, [key]: { value: newValue, disabled: false } }\n },\n {\n [NONE_KEY]: {value: true, disabled: false},\n 'gutenberghub.com': {value: true, disabled: false},\n 'shareablock.com': {value: true, disabled: false}\n }\n )\n break;\n case 'installed':\n atomHandler = (plugins) => getInstalledDependencies(plugins);\n break;\n default:\n atomHandler = (plugins) => getDefaultDependencies(plugins);\n break;\n }\n const filtered = types.reduce( (acc, cur) => {\n // save to the local storage as well\n setWithExpiry(cur + '_plugin', atomHandler(state[cur].wholePlugins), EXIPRY_TIME);\n return {\n ...acc,\n [cur]: {\n ...state[cur],\n searchContext: '',\n dependencyFilterRule: cur !== 'collection', // We must always use false for collection to get template kits to work.\n dependencyFilters: atomHandler(state[cur].wholePlugins)\n }\n }\n }, {});\n return {\n ...state,\n ...filtered\n };\n case 'CLEAR_SEARCH':\n return {\n ...state,\n section: {\n ...state.section,\n searchContext: ''\n },\n page: {\n ...state.page,\n searchContext: ''\n },\n collection: {\n ...state.collection,\n searchContext: ''\n }\n }\n\t\tcase 'CLEAR_STATE':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\tsection: {\n\t\t\t\t\t...state.section,\n\t\t\t\t\tpriceFilter: '',\n\t\t\t\t\tactiveCategory: '',\n\t\t\t\t\tsearchContext: '',\n\t\t\t\t},\n\t\t\t\tpage: {\n\t\t\t\t\t...state.page,\n\t\t\t\t\tpriceFilter: '',\n\t\t\t\t\tactiveCategory: '',\n\t\t\t\t\tsearchContext: '',\n\t\t\t\t},\n\t\t\t\tcollection: {\n\t\t\t\t\t...state.collection,\n\t\t\t\t\tpriceFilter: '',\n\t\t\t\t\tactiveCategory: '',\n\t\t\t\t\tsearchContext: '',\n\t\t\t\t}\n\t\t\t}\n }\n\n return state;\n};\n","module.exports = wp.blockEditor;","module.exports = wp.blocks;","module.exports = wp.components;","module.exports = wp.compose;","module.exports = wp.data;","module.exports = wp.editPost;","module.exports = wp.element;","module.exports = wp.hooks;","module.exports = wp.i18n;","module.exports = lodash;","module.exports = React;","module.exports = ReactDOM;"],"mappings":";AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACvJA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;ACHA;AACA;AACA;AACA;;;;;;;;;;;;;ACHA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACrBA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;ACfA;AAEA;AACA;AACA;AAEA;AAEA;AACA;AAEA;AACA;;;;;;;;;;;;ACZA;AAAA;AAAA;AAAA;;;AAGA;AACA;AAEA;;;;AAGA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAEA;AAEA;;;;AAGA;AACA;AACA;AAEA;AACA;AACA;AAFA;AAKA;AACA;AACA;AACA;AACA;AAAA;AACA;AAEA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAEA;AAEA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AARA;AACA;AAUA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAGA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AANA;AAcA;AACA;AAFA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AAeA;AACA;AAzGA;AACA;AA0GA;;;;;;;;;;;;AC/HA;AAAA;;;AAGA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;;;;;ACLA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AACA;AACA;AACA;AAEA;;;;AAGA;AAEA;;;;AAGA;AAEA;AACA;AACA;AACA;AADA;AADA;AACA;AAKA;AACA;AACA;AAQA;AACA;AACA;AAEA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AASA;AACA;AACA;AAAA;AACA;AACA;AACA;AAvBA;;;;;;;;;;;;;ACnCA;AAAA;;;AAGA;AAEA;AACA;AAEA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AADA;AAIA;AACA;AAhBA;AAFA;AAuBA;;;;;;;;;;;;AC5BA;AAAA;AAAA;;;;;;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;;;;;;;;;;;;ACdA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AAEA;;;;AAGA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAEA;;;;;;;;AAMA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAOA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AAPA;AACA;AASA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC1EA;AAAA;AAAA;;;AAGA;AAAA;AAAA;AACA;AAAA;AAAA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC9BA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AACA;AACA;AACA;AAEA;;;;AAGA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AACA;AACA;AAHA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AARA;AAaA;AACA;AACA;AAEA;AADA;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;;;;AC1DA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;AAGA;;;AAGA;AAEA;;;;AAGA;AACA;AACA;AAEA;;;;AAGA;AACA;AACA;AACA;AAIA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAOA;AACA;AACA;AADA;AADA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAKA;AACA;AAEA;AAEA;AACA;AACA;AACA;AAPA;AADA;AAYA;AACA;AACA;AACA;AACA;AACA;AA7BA;AACA;AA8BA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;;;;;;;;;;;;;ACrGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AAEA;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAUA;AACA;AACA;;;;;;;;;;;AC7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBA;;;AAGA;AACA;AACA;AAEA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAGA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;ACjCA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACZA;;;AAGA;AACA;AACA;AACA;AACA;AAEA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AAAA;AACA;AAAA;AAGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAIA;AAAA;AAEA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAMA;AACA;AAEA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAIA;AAEA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAIA;;;;;;;;;;;AClEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAKA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAKA;AACA;AAEA;AACA;AAAA;AACA;AACA;AACA;AADA;AAGA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;;;ACrGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AADA;AAGA;AACA;AAbA;AAsCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AAFA;AAIA;AApBA;AAuBA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AAFA;AAIA;AAGA;AAAA;AAAA;AAIA;AACA;AACA;AACA;AAFA;AAIA;AACA;AA1BA;AA6BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AAFA;AAIA;AACA;AArBA;AAwBA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AAFA;AAlBA;AAwBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AAEA;AACA;AACA;AAdA;AAiBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAEA;AACA;AAjCA;AA1JA;;;;;;;;;;;;ACPA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AACA;AACA;AAEA;AACA;AAAA;AAAA;AAGA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAGA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AADA;AAEA;AAAA;AAAA;AACA;AAAA;AAGA;AAAA;AAQA;AAAA;AAAA;AAAA;AAAA;AAEA;AAAA;AAMA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/DA;;;AAGA;AACA;AACA;AAEA;AACA;AACA;AAAA;AAAA;AAGA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAGA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AADA;AAEA;AAAA;AAAA;AACA;AAAA;AAGA;AAAA;AAKA;AAAA;AAAA;AAEA;AACA;AACA;AAHA;AAKA;AAAA;AAAA;AAOA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;;;;AC/EA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AACA;AACA;AAEA;AAAA;AAAA;AACA;AAEA;AACA;AACA;;;;;;;;;;;ACZA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAEA;;;AAGA;AACA;AAEA;AAEA;AACA;AACA;AACA;;;AAGA;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;;;AAGA;AAEA;AAEA;AACA;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AAEA;AACA;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AA/EA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACFA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AAIA;AACA;AAEA;AACA;AAAA;AACA;AACA;AACA;AADA;AAGA;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;;;ACzDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AAGA;AACA;AACA;AAEA;AACA;AAAA;AACA;AACA;AACA;AADA;AAGA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC9DA;AAEA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAVA;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAVA;AAYA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAEA;AAEA;AACA;AACA;AACA;AACA;AANA;AAOA;AACA;AAEA;AACA;AAAA;AACA;AACA;AALA;AAMA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AAdA;AAiBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AAAA;AACA;AAAA;AAAA;AAEA;AAAA;AACA;AAAA;AAAA;AAGA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AAKA;AACA;AAEA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1KA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAIA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAHA;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAAA;AAGA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AAIA;AACA;AADA;AAGA;AACA;AAAA;AACA;AACA;AACA;AADA;AAGA;;;;;;;;;;;ACnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AACA;AAGA;AACA;AAEA;AAEA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAGA;AACA;AAGA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;;;;;;;;;;;AChCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAGA;AACA;AACA;AAAA;AACA;AACA;AADA;AAGA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAKA;AACA;AACA;AAEA;AAGA;AAAA;AAAA;AAAA;AASA;AACA;AACA;AACA;;;;;;;;;;;AC/EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAEA;AAEA;AAAA;AAAA;AAEA;AACA;AAAA;AACA;AAAA;AAAA;AAUA;AAGA;AACA;AAAA;AACA;AAIA;AACA;AADA;AAGA;;;;;;;;;;;ACjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AAEA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AACA;AACA;AADA;AAfA;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;AACA;AAFA;AAJA;AAFA;AAYA;AACA;AACA;AACA;AACA;AADA;AAFA;AADA;AASA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA;AAEA;AACA;AACA;AACA;AAJA;AAOA;AAPA;AAoCA;AACA;AACA;AACA;AACA;AALA;AAOA;AAAA;AAGA;AACA;AACA;AACA;AACA;AALA;AAOA;AAAA;AAKA;AACA;AACA;AACA;AACA;AALA;AAOA;AAAA;AAoBA;AAAA;AAAA;AACA;AACA;AACA;AACA;AALA;AAOA;AAAA;AAKA;;;;;;;;;;;AC/HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AACA;AAKA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAEA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAIA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAKA;AACA;AACA;;;;;;;;;;;ACxCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAEA;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAKA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AADA;AAEA;AAAA;AACA;AADA;AAEA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AADA;AAGA;AAAA;AACA;AADA;AAEA;AAAA;AACA;AADA;AAOA;AACA;AAEA;AACA;AAAA;AACA;AAIA;AACA;AADA;AAGA;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;;;ACtFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAGA;AAAA;AACA;AADA;AAEA;AAAA;AAIA;AACA;AADA;AAEA;AAAA;AAEA;AAAA;AAGA;AACA;AAEA;AACA;AAAA;AACA;AAIA;AACA;AADA;AAGA;AACA;AAAA;AACA;AACA;AACA;AADA;AAGA;;;;;;;;;;;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChBA;AAEA;AACA;AACA;AAAA;AAAA;AAEA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AADA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AACA;AAFA;AAAA;AAAA;AAAA;AACA;AAMA;AACA;AACA;AAEA;AACA;AAEA;AAEA;AACA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAGA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAOA;AACA;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAIA;;;;;;;;;;;AC7DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AAKA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA;AAEA;AACA;AAAA;AAAA;AAAA;AACA;AAMA;AACA;AACA;AACA;AAHA;AAKA;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;;;;;;;;;;;;ACzEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACfA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAGA;AAAA;AAEA;AAAA;AAEA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAHA;AAMA;AACA;AACA;AACA;AAJA;AAOA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAJA;AAOA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAJA;AAOA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAJA;AAMA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAEA;AAAA;AAMA;AACA;AAEA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AASA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA;AAWA;;;;;;;;;;;AC/GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;;;AAGA;AAMA;AAHA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAXA;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAIA;AAAA;AAAA;AAMA;AAAA;AAOA;AACA;AACA;;;;;;;;;;;;ACrHA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AAAA;AAEA;AAEA;AAEA;AAEA;AACA;AACA;AAAA;AACA;AACA;AAEA;AAAA;AAAA;AAEA;;;;AAGA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AAFA;AALA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAKA;AACA;AAAA;AAAA;AACA;AAHA;AAMA;AACA;AACA;AAHA;AASA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;;;;;;;;;;;AC9EA;;;AAGA;AAEA;AAKA;AAFA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC/BA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACjBA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACdA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACzBA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACzBA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACdA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACdA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACdA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACrBA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC9CA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC7LA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnIA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACdA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC9CA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC1BA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;AC3BA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACvBA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACdA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACfA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;;;;AAGA;AACA;AACA;AAEA;AACA;AACA;AACA;AAFA;AAIA;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AAAA;AALA;AAQA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAMA;AAEA;AACA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnPA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;AAIA;;;AAGA;AACA;AAEA;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvDA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAMA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAEA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAGA;AAAA;AAAA;AACA;AAAA;AAGA;AAAA;AAEA;AAAA;AAEA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAKA;AAAA;AACA;AAAA;AACA;AAAA;AAQA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClFA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAUA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AAEA;AACA;AAAA;AACA;AAAA;AAEA;AACA;AAFA;AAQA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC7DA;AAEA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AAGA;AAAA;AAKA;AAAA;AACA;AAAA;AAIA;AAAA;AAKA;AAEA;AAEA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AADA;AAEA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAEA;AACA;AAAA;AAAA;AACA;AADA;AAEA;AAIA;AAAA;AAEA;AAAA;AACA;AADA;AAEA;AAAA;AAIA;AAAA;AACA;AADA;AAOA;AACA;AAEA;AACA;AAAA;AACA;AAGA;AACA;AADA;AAGA;;;;;;;;;;;;AC/HA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AAGA;AAAA;AAGA;AAAA;AAAA;AAAA;AAAA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA;AAAA;AAAA;AAMA;AAAA;AACA;AAAA;AAAA;AAMA;AACA;AAEA;AACA;AAAA;AACA;AAGA;AACA;AADA;AAGA;;;;;;;;;;;;ACvDA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AAAA;AAAA;AAGA;AACA;AAEA;AAAA;AAGA;AAAA;AAGA;AACA;AACA;AAAA;AAAA;AAEA;AAAA;AAAA;AAAA;AAAA;AAGA;AAKA;AAAA;AACA;AAAA;AAAA;AAMA;;;;;;;;;;;;ACrCA;AAAA;AAAA;AAGA;AAAA;AAAA;AAAA;AAEA;AACA;AAAA;AACA;AAAA;AASA;AACA;AACA;AAFA;AAGA;AAAA;AAAA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA;;;;;;;;;;;;AC3BA;AAAA;AAAA;AAEA;AACA;AACA;AAAA;AACA;AAAA;AAWA;AAAA;AAAA;AACA;AADA;AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACtBA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AACA;AACA;AACA;AAEA;AACA;AACA;AADA;AACA;AACA;AAAA;AACA;AAIA;AACA;AACA;AAEA;AACA;AAAA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAEA;AAAA;AAAA;AACA;AAAA;AAGA;AAAA;AAEA;AAAA;AAAA;AAEA;AAAA;AACA;AADA;AAEA;AAAA;AAAA;AAEA;AAAA;AAAA;AAEA;AAAA;AAAA;AAAA;AAKA;AACA;AAEA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;;;;;;;;;;;ACnLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAOA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAA;AAFA;AAMA;AAAA;AAEA;AAAA;AAMA;AAAA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AAA;AAQA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAIA;;;;;;;;;;;;ACnCA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AAAA;AACA;AACA;AADA;AAEA;AAAA;AACA;AADA;AAEA;AAAA;AACA;AADA;AAEA;AAAA;AAAA;AAKA;AACA;AAEA;AACA;AAAA;AACA;AACA;AACA;AADA;AAGA;AAEA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAIA;;;;;;;;;;;ACpDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAEA;AAEA;AACA;AAEA;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAMA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAEA;AAEA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAEA;AACA;AAAA;AAAA;AAAA;AADA;AAIA;AAAA;AACA;AAAA;AAIA;AAAA;AACA;AAAA;AAGA;AACA;AACA;AADA;AAIA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAIA;AAKA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAKA;AACA;AACA;AAEA;AACA;AAAA;AACA;AAIA;AACA;AADA;AAGA;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;;;;;;;;;;;AC9GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AAAA;AAIA;AACA;AACA;AACA;AAAA;AACA;AADA;AAGA;AAAA;AACA;AAAA;AAEA;AAAA;AAGA;AACA;AADA;AAEA;AAAA;AAIA;AAEA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AADA;AAKA;AAEA;AAAA;AASA;AAAA;AAAA;AAAA;AACA;AAAA;AAMA;AACA;AACA;AACA;AAAA;AACA;AADA;AAAA;AAAA;AACA;AASA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;;;ACzIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAIA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AAGA;AAEA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AAGA;AAAA;AAAA;AAMA;AACA;AAFA;AAMA;AACA;AACA;AACA;AACA;AACA;AANA;AAkBA;AAEA;AAAA;AAAA;AAAA;AACA;AAAA;AAMA;AACA;AAEA;AACA;AAAA;AACA;AAIA;AACA;AADA;AAGA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;;;;;;;;;;;AC5GA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AAAA;AAAA;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAEA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AAAA;AAFA;AAGA;AAAA;AAAA;AAKA;AACA;AA7CA;AAgDA;AACA;AACA;AACA;AAEA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAEA;AACA;AA9DA;;;;;;;;;;;;ACrDA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AAIA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAIA;AACA;AADA;AAEA;AAAA;AAKA;AAAA;AAAA;AAAA;AACA;AADA;AAEA;AAAA;AACA;AAAA;AAGA;AAAA;AACA;AAAA;AAGA;AACA;AACA;AACA;AAAA;AACA;AAHA;AAIA;AAAA;AAGA;AAOA;AACA;AACA;;;;;;;;;;;;AC7DA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAEA;AAAA;AAAA;AACA;AAAA;AAEA;AAAA;AAAA;AACA;AAAA;AAIA;AAAA;AACA;AADA;AAOA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1BA;AACA;AAGA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AADA;AACA;AACA;AADA;AAEA;AADA;AAEA;AAAA;AACA;AAAA;AAAA;AAEA;AAAA;AAGA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AADA;AAEA;AAAA;AADA;AAEA;AAAA;AACA;AADA;AAEA;AAAA;AAMA;AAAA;AAAA;AAAA;AACA;AAAA;AAIA;AACA;AAAA;AAEA;AAQA;AAAA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AAIA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AAEA;AAAA;AAGA;AADA;AAGA;AACA;AADA;AAEA;AAAA;AACA;AADA;AAKA;AACA;AADA;AAEA;AAAA;AAAA;AACA;AADA;AAEA;AADA;AAIA;AASA;AAAA;AAAA;AAAA;AACA;AAAA;AASA;;;;;;;;;;;;ACvIA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA;AAEA;AACA;AAAA;AACA;AAAA;AACA;AACA;AAAA;AAFA;AAGA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AAFA;AAKA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxBA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAJA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AANA;AACA;AAOA;AACA;AAKA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AACA;AAYA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AACA;AACA;AAJA;AAKA;AAAA;AAKA;AAAA;AAAA;AAAA;AAGA;AAAA;AACA;AAAA;AAMA;AAAA;AAGA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAKA;AACA;AACA;AAFA;AAIA;AAEA;AAAA;AACA;AACA;AACA;AADA;AAGA;;;;;;;;;;;ACpLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACnBA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AADA;AACA;AAIA;AACA;AACA;AACA;AAFA;AAKA;AACA;AACA;AACA;AAEA;AAGA;AAAA;AAAA;AACA;AACA;AAHA;AASA;AACA;AACA;AAEA;AADA;AAKA;AAAA;AACA;AAEA;AACA;AADA;AAGA;AACA;AAAA;AACA;AAEA;AAAA;AAEA;AACA;AADA;AAGA;;;;;;;;;;;;AC9DA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AACA;;;;AAIA;AACA;AACA;AAEA;;;;AAGA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAEA;;;;AAGA;AAAA;AAAA;AAAA;AAGA;AAHA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAFA;AAKA;AACA;AACA;AACA;AACA;AAGA;AAAA;AAAA;AACA;AACA;AAHA;AASA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AAJA;AAMA;;;;;;;;;;;;AC1FA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAAA;AAAA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAAA;AAAA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAAA;AAAA;AAKA;AACA;AACA;AAEA;;;;;;;;;AAOA;AACA;AAAA;AAAA;AAGA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACxEA;AAAA;AAAA;AACA;AAAA;AAAA;AAGA;AACA;AADA;AAGA;;;;;;;;;;;;ACPA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AAEA;;;;AAGA;AAEA;;;;;;AAKA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AAEA;AACA;AACA;AACA;;;;;;;;;;;;AC9BA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AADA;AAKA;AAGA;AACA;AACA;AACA;AACA;AALA;AAWA;AACA;AACA;AACA;AAOA;AAAA;AAEA;AACA;AADA;AAGA;;;;;;;;;;;;AC7CA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;;;AAKA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AAFA;AAXA;AAFA;AAmBA;AACA;AACA;AADA;AAGA;AACA;AADA;AAGA;AACA;AADA;AAPA;AAYA;AAAA;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAVA;AAaA;AACA;AACA;AAGA;AACA;AACA;AAHA;AAYA;AAEA;AAGA;AAAA;AAAA;AADA;AAEA;AAAA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AAHA;AAQA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAtCA;AAuCA;;;;;;;;;;;;ACnJA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAEA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AAEA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACvBA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAKA;AACA;AACA;AAFA;AAIA;;;;;;;;;;;;ACXA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AACA;AACA;AACA;AAJA;AAMA;AACA;AACA;AAFA;AAXA;AAFA;AAmBA;AACA;AACA;AADA;AAGA;AACA;AADA;AAGA;AACA;AADA;AAPA;AACA;AAWA;AACA;AACA;AACA;AAHA;AAAA;AAAA;AAAA;AACA;AAIA;AACA;AACA;AACA;AACA;AAHA;AAKA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAVA;AAaA;AACA;AACA;AAEA;AAAA;AAGA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAQA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AADA;AAGA;;;;;;;;;;;;AChGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAHA;AACA;AAKA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAEA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AAEA;AAGA;AACA;AAMA;AACA;AACA;AAEA;AACA;AAAA;AAAA;AAEA;AAGA;AAAA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAGA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AAHA;AAhBA;AAFA;AA0BA;AACA;AACA;AADA;AAGA;AACA;AACA;AAFA;AAJA;AAUA;AACA;AADA;AACA;AAEA;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AARA;AAUA;AACA;AAZA;AAJA;AAoBA;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAHA;AAOA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AAAA;AAAA;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;ACpRA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AADA;AAGA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AACA;AAFA;AAIA;AACA;AAAA;AACA;AACA;AADA;AAGA;AACA;AAAA;AACA;AACA;AADA;AAGA;AACA;AAxLA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAA;AACA;AACA;AACA;AACA;AAAA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AAGA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAGA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAEA;AACA;AAEA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAA;AACA;AAEA;AACA;AACA;AACA;;;;;;;;;;;;ACjGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAEA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAGA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAGA;AACA;AACA;AADA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AACA;AAAA;AACA;AACA;AACA;AAGA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAEA;AACA;AAIA;AAEA;AACA;AACA;AAEA;AACA;AAEA;AACA;AAAA;AACA;AACA;AAAA;AAGA;AACA;AAGA;AACA;AACA;AAAA;AACA;AACA;AAGA;AACA;AACA;AAGA;AACA;AAAA;AACA;AACA;AAFA;AAIA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AAHA;AAMA;AACA;AACA;AACA;AAHA;AAMA;AACA;AACA;AAEA;;;;;;AAKA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AAHA;AAKA;AAEA;AACA;AACA;AAIA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AAAA;AAAA;AAAA;AADA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;;;;AAGA;AACA;AACA;AAEA;AACA;AACA;AAEA;;;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvTA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AAEA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAnHA;AAqHA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAPA;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AATA;AAWA;AA9IA;;;;;;;;;;;;;;;;;;;;;;ACxFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAVA;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAVA;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAXA;AAaA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AA5DA;AA+DA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAGA;AAHA;AAKA;AAGA;AAHA;AAKA;AAGA;AAHA;AAdA;AACA;AAmBA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAHA;AAFA;AACA;AAOA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAHA;AAFA;AACA;AAOA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAHA;AAFA;AACA;AAOA;AACA;AACA;AAEA;AAFA;AACA;AAGA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAHA;AAFA;AACA;AAOA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAHA;AAFA;AACA;AAOA;AACA;AACA;AAEA;AAEA;AAFA;AAFA;AACA;AAMA;AACA;AAEA;AAEA;AAFA;AAFA;AACA;AAMA;AACA;AAEA;AAFA;AACA;AAGA;AACA;AACA;AAEA;AAFA;AACA;AAGA;AACA;AAEA;AAFA;AACA;AAGA;AACA;AAEA;AAFA;AACA;AAGA;AACA;AAEA;AAFA;AACA;AAGA;AACA;AAEA;AAEA;AAFA;AAFA;AACA;AAMA;AACA;AAEA;AAEA;AAFA;AAFA;AACA;AAMA;AACA;AAEA;AAEA;AAFA;AAFA;AACA;AAMA;AACA;AAEA;AAFA;AACA;AAGA;AACA;AACA;AAEA;AAEA;AAFA;AAFA;AACA;AAMA;AACA;AAEA;AAEA;AAFA;AAFA;AACA;AAMA;AACA;AAEA;AAEA;AAFA;AAFA;AACA;AAMA;AACA;AAEA;AAEA;AAFA;AAFA;AACA;AAMA;AACA;AACA;AAEA;AAEA;AAFA;AAFA;AACA;AAMA;AACA;AAEA;AAEA;AAFA;AAFA;AACA;AAMA;AACA;AAEA;AAFA;AACA;AAGA;AACA;AAEA;AAFA;AACA;AAGA;AACA;AACA;AAEA;AAEA;AAFA;AAFA;AAOA;AACA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAEA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAHA;AACA;AAKA;AACA;AAAA;AACA;AACA;AAAA;AACA;AAAA;AACA;AACA;AAAA;AAtBA;AACA;AAuBA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAAA;AACA;AAJA;AAFA;AASA;AACA;AACA;AAGA;AACA;AAEA;AAEA;AAFA;AAIA;AAEA;AAFA;AAIA;AAEA;AAFA;AAVA;AACA;AAcA;AACA;AAEA;AAEA;AACA;AACA;AAJA;AAMA;AAEA;AACA;AACA;AAJA;AAMA;AAEA;AACA;AACA;AAJA;AAdA;AApSA;AACA;AA0TA;AACA;;;;;;;;;;;ACjYA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;;;;;;;;ACAA;;;;A","sourceRoot":""}
1
+ {"version":3,"file":"redux-templates.js","sources":["webpack:///webpack/bootstrap","webpack:///./redux-templates/src/blocks/library/style.scss","webpack:///./redux-templates/src/challenge/challenge-list-block/style.scss","webpack:///./redux-templates/src/challenge/challenge-timer/style.scss","webpack:///./redux-templates/src/challenge/final-templates/style.scss","webpack:///./redux-templates/src/challenge/style.scss","webpack:///./redux-templates/src/components/background-image/style.scss","webpack:///./redux-templates/src/components/button-group/style.scss","webpack:///./redux-templates/src/components/dependent-plugins/style.scss","webpack:///./redux-templates/src/components/error-notice/style.scss","webpack:///./redux-templates/src/components/fab-wrapper/styles.scss","webpack:///./redux-templates/src/components/multiple-item/style.scss","webpack:///./redux-templates/src/components/pagination/style.scss","webpack:///./redux-templates/src/components/preview-import-button/style.scss","webpack:///./redux-templates/src/components/single-item/style.scss","webpack:///./redux-templates/src/components/template-list-subheader/style.scss","webpack:///./redux-templates/src/custom-css/style.scss","webpack:///./redux-templates/src/editor.scss","webpack:///./redux-templates/src/modal-import-wizard/style.scss","webpack:///./redux-templates/src/modal-library/sidebar/style.scss","webpack:///./redux-templates/src/modal-library/style.scss","webpack:///./redux-templates/src/modal-library/view-collection/style.scss","webpack:///./redux-templates/src/modal-library/view-saved/style.scss","webpack:///./redux-templates/src/modal-library/view-template-list/style.scss","webpack:///./redux-templates/src/modal-preview/style.scss","webpack:///./redux-templates/src/modals.scss","webpack:///./redux-templates/assets/img/icon-color.svg","webpack:///./redux-templates/assets/img/icon.svg","webpack:///./redux-templates/src/blocks/blocks.js","webpack:///./redux-templates/src/blocks/import/components/edit.js","webpack:///./redux-templates/src/blocks/import/icon.js","webpack:///./redux-templates/src/blocks/import/index.js","webpack:///./redux-templates/src/blocks/import/transforms.js","webpack:///./redux-templates/src/blocks/import/utils/file.js","webpack:///./redux-templates/src/blocks/import/utils/import.js","webpack:///./redux-templates/src/blocks/import/utils/insert.js","webpack:///./redux-templates/src/blocks/library/edit.js","webpack:///./redux-templates/src/blocks/library/index.js","webpack:///./redux-templates/src/blocks/library/insert-library-button.js","webpack:///./redux-templates/src/blocks/library/style.scss?eec2","webpack:///./redux-templates/src/challenge/challenge-list-block/ChallengeStepItem.js","webpack:///./redux-templates/src/challenge/challenge-list-block/ProgressBar.js","webpack:///./redux-templates/src/challenge/challenge-list-block/index.js","webpack:///./redux-templates/src/challenge/challenge-list-block/style.scss?9f45","webpack:///./redux-templates/src/challenge/challenge-timer/index.js","webpack:///./redux-templates/src/challenge/challenge-timer/style.scss?1c53","webpack:///./redux-templates/src/challenge/config.js","webpack:///./redux-templates/src/challenge/final-templates/congrats.js","webpack:///./redux-templates/src/challenge/final-templates/contact.js","webpack:///./redux-templates/src/challenge/final-templates/index.js","webpack:///./redux-templates/src/challenge/final-templates/style.scss?54b2","webpack:///./redux-templates/src/challenge/helper.js","webpack:///./redux-templates/src/challenge/index.js","webpack:///./redux-templates/src/challenge/style.scss?5d1a","webpack:///./redux-templates/src/challenge/tooltip/ChallengeDot.js","webpack:///./redux-templates/src/challenge/tooltip/TooltipBox.js","webpack:///./redux-templates/src/components/background-image/index.js","webpack:///./redux-templates/src/components/background-image/style.scss?1987","webpack:///./redux-templates/src/components/button-group/index.js","webpack:///./redux-templates/src/components/button-group/style.scss?5c67","webpack:///./redux-templates/src/components/dependent-plugins/index.js","webpack:///./redux-templates/src/components/dependent-plugins/style.scss?77c8","webpack:///./redux-templates/src/components/error-notice/index.js","webpack:///./redux-templates/src/components/error-notice/style.scss?3b1b","webpack:///./redux-templates/src/components/fab-wrapper/config.js","webpack:///./redux-templates/src/components/fab-wrapper/index.js","webpack:///./redux-templates/src/components/fab-wrapper/styles.scss?0dab","webpack:///./redux-templates/src/components/multiple-item/index.js","webpack:///./redux-templates/src/components/multiple-item/style.scss?3037","webpack:///./redux-templates/src/components/pagination/index.js","webpack:///./redux-templates/src/components/pagination/style.scss?7abf","webpack:///./redux-templates/src/components/preview-import-button/index.js","webpack:///./redux-templates/src/components/preview-import-button/style.scss?db94","webpack:///./redux-templates/src/components/safe-image-load/index.js","webpack:///./redux-templates/src/components/single-item/index.js","webpack:///./redux-templates/src/components/single-item/style.scss?1c09","webpack:///./redux-templates/src/components/tab-header/index.js","webpack:///./redux-templates/src/components/template-list-subheader/images/view-few.svg","webpack:///./redux-templates/src/components/template-list-subheader/images/view-many.svg","webpack:///./redux-templates/src/components/template-list-subheader/images/view-normal.svg","webpack:///./redux-templates/src/components/template-list-subheader/index.js","webpack:///./redux-templates/src/components/template-list-subheader/style.scss?349f","webpack:///./redux-templates/src/custom-css/editor.js","webpack:///./redux-templates/src/custom-css/index.js","webpack:///./redux-templates/src/custom-css/inject-css.js","webpack:///./redux-templates/src/custom-css/style.scss?7049","webpack:///./redux-templates/src/editor.scss?b1ec","webpack:///./redux-templates/src/icons/images/acf-blocks.svg","webpack:///./redux-templates/src/icons/images/advanced-custom-fields.svg","webpack:///./redux-templates/src/icons/images/advanced-gutenberg-blocks.svg","webpack:///./redux-templates/src/icons/images/atomic-blocks.svg","webpack:///./redux-templates/src/icons/images/block-options.svg","webpack:///./redux-templates/src/icons/images/block-slider.svg","webpack:///./redux-templates/src/icons/images/coblocks.svg","webpack:///./redux-templates/src/icons/images/creative-blocks.svg","webpack:///./redux-templates/src/icons/images/editorplus.svg","webpack:///./redux-templates/src/icons/images/elegant-blocks.svg","webpack:///./redux-templates/src/icons/images/enhanced-blocks.svg","webpack:///./redux-templates/src/icons/images/essential-blocks.svg","webpack:///./redux-templates/src/icons/images/forms-gutenberg.svg","webpack:///./redux-templates/src/icons/images/getwid.svg","webpack:///./redux-templates/src/icons/images/ghostkit.svg","webpack:///./redux-templates/src/icons/images/guteblock.svg","webpack:///./redux-templates/src/icons/images/gutentor.svg","webpack:///./redux-templates/src/icons/images/kadence-blocks.svg","webpack:///./redux-templates/src/icons/images/kioken-blocks.svg","webpack:///./redux-templates/src/icons/images/otter-blocks.svg","webpack:///./redux-templates/src/icons/images/qodeblock.svg","webpack:///./redux-templates/src/icons/images/qubely.svg","webpack:///./redux-templates/src/icons/images/snow-monkey-blocks.svg","webpack:///./redux-templates/src/icons/images/stackable-ultimate-gutenberg-blocks.svg","webpack:///./redux-templates/src/icons/images/ultimate-addons-for-gutenberg.svg","webpack:///./redux-templates/src/icons/images/ultimate-blocks.svg","webpack:///./redux-templates/src/icons/images/ultimate-post.svg","webpack:///./redux-templates/src/icons/images/wordpress.svg","webpack:///./redux-templates/src/icons/index.js","webpack:///./redux-templates/src/index.js","webpack:///./redux-templates/src/modal-feedback/index.js","webpack:///./redux-templates/src/modal-import-wizard/ImportingStep.js","webpack:///./redux-templates/src/modal-import-wizard/InstallPluginStep.js","webpack:///./redux-templates/src/modal-import-wizard/OptionStep.js","webpack:///./redux-templates/src/modal-import-wizard/ProPluginsStep.js","webpack:///./redux-templates/src/modal-import-wizard/ReduxTeamplatesActivateBox.js","webpack:///./redux-templates/src/modal-import-wizard/ReduxTemplatesPremiumBox.js","webpack:///./redux-templates/src/modal-import-wizard/index.js","webpack:///./redux-templates/src/modal-import-wizard/style.scss?9a4a","webpack:///./redux-templates/src/modal-library/index.js","webpack:///./redux-templates/src/modal-library/layout-with-sidebar/index.js","webpack:///./redux-templates/src/modal-library/sidebar/categoryFilter.js","webpack:///./redux-templates/src/modal-library/sidebar/dependencyFilter.js","webpack:///./redux-templates/src/modal-library/sidebar/dependencyFilterRow.js","webpack:///./redux-templates/src/modal-library/sidebar/index.js","webpack:///./redux-templates/src/modal-library/sidebar/priceFilter.js","webpack:///./redux-templates/src/modal-library/sidebar/style.scss?e89b","webpack:///./redux-templates/src/modal-library/style.scss?f8e2","webpack:///./redux-templates/src/modal-library/view-collection/index.js","webpack:///./redux-templates/src/modal-library/view-collection/style.scss?bea7","webpack:///./redux-templates/src/modal-library/view-saved/index.js","webpack:///./redux-templates/src/modal-library/view-saved/style.scss?fe19","webpack:///./redux-templates/src/modal-library/view-template-list/index.js","w