Version Description
- Fixed: Fixed connection banner to hide even if JS is broken by jQuery migrate issue (WP 5.5).
- Fixed: Resolved all remaining legacy extension compatibility issues.
- Fixed: Custom callback with select field.
- Fixed: Typography bug when style was hidden.
- Fixed: Issue with text labels.
- Fixed: Google fonts html validation issues.
- Added: Feedback modal.
- Fixed: Import logic flaw.
- Fixed: Security bug. Thanks @lenonleite of www.lenonleite.com.br.
- Release date: Oct 08, 2020
Download this release
Release Info
Developer | dovyp |
Plugin | Redux Framework |
Version | 4.1.21 |
Comparing to | |
See all releases |
Code changes from version 4.1.20 to 4.1.21
- CHANGELOG.md +12 -0
- readme.txt +14 -140
- redux-core/assets/css/redux-fields.min.css +1 -1
- redux-core/assets/css/redux-fields.min.css.map +1 -1
- redux-core/assets/js/redux.js +1 -1
- redux-core/assets/js/redux.min.js +1 -1
- redux-core/assets/js/redux/ajax-save.js +1 -1
- redux-core/framework.php +1 -1
- redux-core/inc/classes/class-redux-admin-notices.php +1 -1
- redux-core/inc/classes/class-redux-ajax-save.php +1 -1
- redux-core/inc/classes/class-redux-api.php +0 -6
- redux-core/inc/classes/class-redux-connection-banner.php +197 -118
- redux-core/inc/classes/class-redux-enable-gutenberg.php +3 -8
- redux-core/inc/classes/class-redux-enqueue.php +2 -2
- redux-core/inc/classes/class-redux-extensions.php +13 -0
- redux-core/inc/classes/class-redux-instances.php +1 -1
- redux-core/inc/classes/class-redux-options-constructor.php +2 -2
- redux-core/inc/classes/class-redux-output.php +3 -4
- redux-core/inc/extensions/options_object/class-redux-extension-options-object.php +10 -3
- redux-core/inc/fields/image_select/redux-image-select.min.js +1 -1
- redux-core/inc/fields/text/class-redux-text.php +1 -1
- redux-core/inc/fields/typography/class-redux-typography.php +1 -1
- redux-core/inc/fields/typography/redux-typography.js +1 -1
- redux-core/inc/fields/typography/redux-typography.min.js +1 -1
- redux-core/inc/welcome/class-redux-welcome.php +2 -2
- redux-framework.php +1 -1
- redux-templates/assets/js/redux-templates.js +192 -12
- redux-templates/assets/js/redux-templates.js.map +1 -1
CHANGELOG.md
CHANGED
@@ -1,5 +1,17 @@
|
|
1 |
# Redux Changelog
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
## 4.1.20
|
4 |
* Added: Properly adjust the blocked editor page width based on template selected.
|
5 |
* Added: Remove Qubely Pro update notice if Redux Pro is activated.
|
1 |
# Redux Changelog
|
2 |
|
3 |
+
## 4.1.21
|
4 |
+
* Fixed: Fixed connection banner to hide even if JS is broken by jQuery migrate issue (WP 5.5).
|
5 |
+
* Fixed: Resolved all remaining legacy extension compatibility issues.
|
6 |
+
* Fixed: Custom callback with select field.
|
7 |
+
* Fixed: Typography bug when style was hidden.
|
8 |
+
* Fixed: Issue with text labels.
|
9 |
+
* Fixed: Google fonts html validation issues.
|
10 |
+
* Added: Feedback modal.
|
11 |
+
* Fixed: Import logic flaw.
|
12 |
+
* Fixed: Security bug. Thanks @lenonleite of www.lenonleite.com.br.
|
13 |
+
* Release date: Oct 08, 2020
|
14 |
+
|
15 |
## 4.1.20
|
16 |
* Added: Properly adjust the blocked editor page width based on template selected.
|
17 |
* Added: Remove Qubely Pro update notice if Redux Pro is activated.
|
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.
|
9 |
License: GPL-2.0+
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.txt
|
11 |
|
@@ -154,6 +154,18 @@ If you want, you can use the [Gutenberg](https://wordpress.org/plugins/gutenberg
|
|
154 |
|
155 |
== Changelog ==
|
156 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
157 |
= 4.1.20 =
|
158 |
* Added: Properly adjust the blocked editor page width based on template selected.
|
159 |
* Added: Broke out third-party premium plugins for filtering to help with understanding of what comes with Redux Pro.
|
@@ -167,145 +179,7 @@ If you want, you can use the [Gutenberg](https://wordpress.org/plugins/gutenberg
|
|
167 |
* Fixed: Invalid logic causing some extensions not to run.
|
168 |
* Release date: Sep 18, 2020
|
169 |
|
170 |
-
|
171 |
-
* Fixed: Bug with typography output and non-array values for CSS selectors.
|
172 |
-
* Fixed: Bug with spacing field not adding the units when a default is provided.
|
173 |
-
* Added: Redux Pro install and activation flow.
|
174 |
-
* Fixed: Templates trial wasn't working properly! It works now. :)
|
175 |
-
* Release date: Sept 9, 2020
|
176 |
-
|
177 |
-
= 4.1.17 =
|
178 |
-
* Fixed: Edge case where enable Gutenberg notice doesn't disappear. Sorry everyone!
|
179 |
-
* Release date: Aug 27, 2020
|
180 |
-
|
181 |
-
= 4.1.16 =
|
182 |
-
* Fixed: Issue when null values were sent to Redux::set();
|
183 |
-
* Fixed: Default for Google fonts is now swap.
|
184 |
-
* Fixed: Fix for developers calling the API without checking for files.
|
185 |
-
* Fixed: Edge case for filter var not working on some sites.
|
186 |
-
* Fixed: Proper loading to override Redux 3 plugin.
|
187 |
-
* Added: Site name to WP data return.
|
188 |
-
* Fixed: Set height for library button when other plugins modify the CSS for the Gutenberg toolbar.
|
189 |
-
* Fixed: Don't show template messages on the front-end if an extension is missing. How did that get through?
|
190 |
-
* Fixed: Non-array values for WP data. Thanks @wilokecom.
|
191 |
-
* Added: Notification so users can enable Gutenberg when disabled.
|
192 |
-
* Added: Welcome guide to Gutenberg screen.
|
193 |
-
* Fixed: Some readme issues.
|
194 |
-
* Release date: Aug 26, 2020
|
195 |
-
|
196 |
-
= 4.1.15 =
|
197 |
-
* Fixed: Defaults were not saving in some situations.
|
198 |
-
* Added: Various fallback calls for JS when fetching opt_names.
|
199 |
-
* Fixed: Warnings with Rest API due to WP 5.5.
|
200 |
-
* Fixed: Subsets now are full-width in typography when rendered after page load.
|
201 |
-
* Fixed: for subsets loading when font-family is not specified.
|
202 |
-
* Added: No opt-in to tracking when embedded. Google Fonts and panel notices are still there though.
|
203 |
-
* Fixed: Is local checks conflicting with some servers.
|
204 |
-
* Fixed: WooCommerce race condition with their autoloader causing issues with some sites.
|
205 |
-
* Updated: Complete overhaul of WordPress data class.
|
206 |
-
* Fixed: Backtrace errors when blocked on servers.
|
207 |
-
* Fixed: Select2 and required fixes.
|
208 |
-
* Fixed: Customizer sidebar not showing in some cases.
|
209 |
-
* Added: Google Fonts now load ~20% faster!!!
|
210 |
-
* Release date: Aug 19, 2020
|
211 |
-
|
212 |
-
= 4.1.14 =
|
213 |
-
* Added: Shim for ReduxFramework->get_default_value()
|
214 |
-
* Fixed: Local issue with WP and strtolower. Sites that couldn't find classes should work now.
|
215 |
-
* Fixed: Ajax for select boxes is now working again.
|
216 |
-
* Fixed: Autoloading to bypass other embedded versions of Redux.
|
217 |
-
* Fixed: Customizer interactions are MUCH faster now. Had a greedy CSS selector before.
|
218 |
-
* Fixed: If opt_names had multiple dashes in them, JS errors occurred by a non-global replace.
|
219 |
-
* Fixed: Fix for servers that disable output buffers.
|
220 |
-
* Fixed: Ajax now does not load anything else, faster calls.
|
221 |
-
* Fixed: .folds replace issue when opt_name selector wasn't properly found.
|
222 |
-
* Release date: Aug 11, 2020
|
223 |
-
|
224 |
-
= 4.1.13 =
|
225 |
-
* Fixed: Major typography bug affecting saving in the panel as well as third-party extensions.
|
226 |
-
* Fixed: Customizer issue with some external extensions.
|
227 |
-
* Added: Removed `FS_METHOD` define completely.
|
228 |
-
* Release date: Aug 5, 2020
|
229 |
-
|
230 |
-
= 4.1.12 =
|
231 |
-
* Fixed: Direct calls to ReduxFramework were causing unexpected errors.
|
232 |
-
* Fixed: JS error on .replace because opt_name wasn't found.
|
233 |
-
* Added: `FS_METHOD` define location, had to move lower in the stack.
|
234 |
-
* Release date: Aug 5, 2020
|
235 |
-
|
236 |
-
= 4.1.11 =
|
237 |
-
* Fixed: Templates JS not loading and conflicting with other plugins. Need to namespace or something.
|
238 |
-
* Added: `FS_METHOD` define method for environments where it is not properly defined.
|
239 |
-
* Release date: Aug 4, 2020
|
240 |
-
|
241 |
-
= 4.1.10 =
|
242 |
-
* Fixed: Minified templates directory now loads.
|
243 |
-
* Added: Shadow files from old repo to stop errors from previously included third-party developer includes.
|
244 |
-
* Release date: Aug 4, 2020
|
245 |
-
|
246 |
-
= 4.1.9 =
|
247 |
-
* Fixed: Compatibility issue when developers made custom panel templates. The opt_name wasn't fetched and thus saving broke.
|
248 |
-
* Release date: Aug 1, 2020
|
249 |
-
|
250 |
-
= 4.1.8 =
|
251 |
-
* Fixed: Map files are now all present.
|
252 |
-
* Fixed: Path fix for how developers called the typography file directory.
|
253 |
-
* Release date: Aug 1, 2020
|
254 |
-
|
255 |
-
= 4.1.7 =
|
256 |
-
* Fixed: Issue with sortable in text mode not properly passing the name attribute and thus not saving properly.
|
257 |
-
* Fixed: Compatibility with old extension names to not crash other plugins.
|
258 |
-
* Release date: July 31, 2020
|
259 |
-
|
260 |
-
= 4.1.6 =
|
261 |
-
* Fixed: Issue with customizer double loading the PHP classes and causing an exception.
|
262 |
-
* Fixed: Chanced a class name as to not conflict with a 6+ year old version of Redux.
|
263 |
-
* Release date: July 30, 2020
|
264 |
-
|
265 |
-
= 4.1.5 =
|
266 |
-
* Fixed: Google fonts not working when old configs used string vs an array for output.
|
267 |
-
* Release date: July 30, 2020
|
268 |
-
|
269 |
-
= 4.1.4 =
|
270 |
-
* Fixed: Google fonts loading over non-secure breaks fonts. Forced all SSL for Google fonts. :)
|
271 |
-
* Release date: July 30, 2020
|
272 |
-
|
273 |
-
= 4.1.3 =
|
274 |
-
* Fixed: Issue where theme devs tried to bypass the framework. Literally I made an empty file to fix their coding. :P
|
275 |
-
* Release date: July 29, 2020
|
276 |
-
|
277 |
-
= 4.1.2 =
|
278 |
-
* Fixed: Don't try to set empty defaults when none are present.
|
279 |
-
* Fixed: Issue where the WP Data argument was misused.
|
280 |
-
* Release date: July 29, 2020
|
281 |
-
|
282 |
-
= 4.1.1 =
|
283 |
-
* Fixed: CSS decode when esc_attr replaces the HTML characters and CSS outputs are set with >'s.
|
284 |
-
* Release date: July 29, 2020
|
285 |
-
|
286 |
-
= 4.1.0 =
|
287 |
-
* Fixed: Compatibility with certain themes using the deprecated $_is_plugin variable.
|
288 |
-
* Release date: July 29, 2020
|
289 |
-
|
290 |
-
= 4.0.9 =
|
291 |
-
* Fixed: Complete compatibility fix for older Redux extensions.
|
292 |
-
* Release date: July 28, 2020
|
293 |
-
|
294 |
-
= 4.0.8 =
|
295 |
-
* Fixed: Initial library load was failing on some server setups.
|
296 |
-
* Release date: July 28, 2020
|
297 |
-
|
298 |
-
= 4.0.7 =
|
299 |
-
* Fixed: Race condition for PHP include for Redux_Typography causing blank white screens.
|
300 |
-
* Release date: July 28, 2020
|
301 |
-
|
302 |
-
= 4.0.5 =
|
303 |
-
* Fixed: Issues where the site crashes because of varied ways Redux was called.
|
304 |
-
* Fixed: Varied implementations of opt_names resulting in option panels not working as expected.
|
305 |
-
* Release date: July 28, 2020
|
306 |
-
|
307 |
-
= 4.0.4 =
|
308 |
-
* Release date: July 24, 2020
|
309 |
|
310 |
== Frequently Asked Questions ==
|
311 |
|
5 |
Requires at least: 4.0
|
6 |
Requires PHP: 5.3
|
7 |
Tested up to: 5.5
|
8 |
+
Stable tag: 4.1.21
|
9 |
License: GPL-2.0+
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.txt
|
11 |
|
154 |
|
155 |
== Changelog ==
|
156 |
|
157 |
+
= 4.1.21 =
|
158 |
+
* Fixed: Fixed connection banner to hide even if JS is broken by jQuery migrate issue (WP 5.5).
|
159 |
+
* Fixed: Resolved all remaining legacy extension compatibility issues.
|
160 |
+
* Fixed: Custom callback with select field.
|
161 |
+
* Fixed: Typography bug when style was hidden.
|
162 |
+
* Fixed: Issue with text labels.
|
163 |
+
* Fixed: Google fonts html validation issues.
|
164 |
+
* Added: Feedback modal.
|
165 |
+
* Fixed: Import logic flaw.
|
166 |
+
* Fixed: Security bug. Thanks @lenonleite of www.lenonleite.com.br.
|
167 |
+
* Release date: Oct 08, 2020
|
168 |
+
|
169 |
= 4.1.20 =
|
170 |
* Added: Properly adjust the blocked editor page width based on template selected.
|
171 |
* Added: Broke out third-party premium plugins for filtering to help with understanding of what comes with Redux Pro.
|
179 |
* Fixed: Invalid logic causing some extensions not to run.
|
180 |
* Release date: Sep 18, 2020
|
181 |
|
182 |
+
** For a full changelog, see https://github.com/reduxframework/redux-framework-4/blob/master/CHANGELOG.md **
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
183 |
|
184 |
== Frequently Asked Questions ==
|
185 |
|
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)}#ui-datepicker-div{z-index:15 !important}.ui-datepicker-header{background-color:#00abef}.redux-dimensions-container select,.redux-dimensions-container .select_wrapper{width:80px !important;float:left}.redux-dimensions-container .field-dimensions-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-dimensions-container .field-dimensions-input input{display:inline-block !important;width:100px !important}.redux-dimensions-container .field-dimensions-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-dimensions-container .select_wrapper{margin-top:6px}}.redux-main .divide{height:20px;line-height:20px;float:none;border-color:#e7e7e7;display:block;width:100%;height:35px !important;line-height:35px !important;position:relative;margin:15px 0 10px 0}.redux-main .divide .inner{width:42% !important;left:40% !important;margin-left:-6%;background-color:#fcfcfc;border-color:#e7e7e7;position:absolute;height:1px;top:50%;width:100%;margin-top:-1px;border-top-width:1px;border-top-style:solid}.redux-main .divide .inner span{background-color:#fcfcfc;border-color:#e7e7e7;height:5px;width:5px;border-width:2px;border-style:solid;display:block;position:absolute;left:50%;margin-left:-5px;margin-top:-5px}.wp-customizer .redux-container-divide .divide .inner{width:82% !important;left:18% !important;margin-left:-8%}.redux-container-editor .mceLayout td{border-width:1px;margin:0;padding:1px}.redux-container-editor input,.redux-container-editor textarea{margin:inherit}.redux-container-editor textarea{border-style:none;border:0;border-width:0}.redux-container-editor .wp-editor-container{border-radius:3px}.redux-container-editor .wp-editor-container textarea{border-radius:0;border-style:inherit}.redux-container-editor .quicktags-toolbar input{margin:2px 1px 4px;display:inline-block;min-width:26px;padding:2px 4px;font:12px/18px Arial, Helvetica, sans-serif normal;color:#464646;border:1px solid #c3c3c3;border-radius:3px;background:#eee;background-image:-webkit-gradient(linear, left bottom, left top, from(#e3e3e3), to(#fff));background-image:-webkit-linear-gradient(bottom, #e3e3e3, #fff);background-image:linear-gradient(to top, #e3e3e3, #fff)}.redux-container-image_select .redux-table-container{display:table;table-layout:fixed;width:100%}.redux-container-image_select .redux-image-select{margin:0 !important}.redux-container-image_select .redux-image-select .tiles{display:block;background-color:#fff;background-repeat:repeat;width:40px;height:40px}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select .tiles{border-color:#d9d9d9}.redux-container-image_select .redux-image-select li:last-child{margin-bottom:0}.redux-container-image_select .redux-image-select input[type="radio"]{display:none}.redux-container-image_select .redux-image-select-presets img{width:100%}.redux-container-image_select ul.redux-image-select li{margin:0 10px 3px 10px;display:inline-block;padding:2px 2px;padding-left:0}.redux-container-image_select .redux-image-select-selected{background-color:#f9f9f9}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select-selected img,.redux-container-image_select .redux-image-select .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-width:4px;border-style:solid}.redux-container-image_select .redux-image-select-selected .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-color:#7a7a7a}.redux-info-field{min-height:20px;padding:8px 19px;margin:10px 0;border:1px solid;border-radius:4px;border:1px solid;position:relative}.redux-info-field h1,.redux-info-field h2,.redux-info-field h3,.redux-info-field h4,.redux-info-field h5,.redux-info-field h6{border-bottom:0 !important}.redux-info-field h3{color:#777}.redux-info-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-info-field .redux-info-icon i{font-size:2em}.redux-info-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-info-field.redux-normal{background-color:#eee;border-color:#ccc;color:#666}.redux-info-field.redux-normal i{color:#c5c5c5}.redux-info-field.redux-warning{background-color:#fbeba4;border-color:#d7c281;color:#958234}.redux-info-field.redux-warning i{color:#dcca81}.redux-info-field.redux-success{background-color:#c4ee91;border-color:#71af5d;color:#4d7615}.redux-info-field.redux-success i{color:#a0ca6c}.redux-info-field.redux-critical{background-color:#fba1a3;border-color:#b84f5b;color:#981225}.redux-info-field.redux-critical i{color:#dd767d}.redux-info-field.redux-info{background-color:#d3e4f4;border-color:#a9b6c2;color:#5c80a1}.redux-info-field.redux-info i{color:#afc6da}.redux-notice-field{margin:15px 0 0;background-color:#fff;border:0;border-left:4px solid #f3f3f3;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);padding:1px 12px}.redux-notice-field h1,.redux-notice-field h2,.redux-notice-field h3,.redux-notice-field h4,.redux-notice-field h5,.redux-notice-field h6{border-bottom:0 !important}.redux-notice-field p{margin:0.5em 0;padding:2px}.redux-notice-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-notice-field .redux-info-icon i{font-size:2em}.redux-notice-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-notice-field.redux-info{border-left:4px solid #0099d5}.redux-notice-field.redux-success{border-left:4px solid #7ad03a}.redux-notice-field.redux-warning{border-left:4px solid #fbeba4}.redux-notice-field.redux-critical{border-left:4px solid #dd3d36}.redux-main .redux-field-container.redux-container-info{padding:0}.wp-customizer .hasIcon.redux-notice-field .redux-info-desc,.wp-customizer .hasIcon.redux-info-field .redux-info-desc{display:block;margin-left:43px}.wp-customizer .hasIcon.redux-notice-field .redux-info-icon,.wp-customizer .hasIcon.redux-info-field .redux-info-icon{float:left}.wp-customizer .redux-main .customize-control.customize-control-redux-info{border-bottom:0}.redux-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-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-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-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-slides .redux-slides-list .select2-container{margin-bottom:10px;width:100%}.redux-container-slides .ui-accordion-header{margin-bottom:0}.redux-container-slides .full-text,.redux-container-slides .large-text{width:100%}.redux-container-slides .redux-slides-accordion-group{border:1px solid #dfdfdf !important;border-radius:3px !important;margin-top:0px !important;margin-bottom:10px;background:#f9f9f9;padding:5px}.redux-container-slides .redux-slides-accordion-group h3{border:1px solid #dfdfdf;cursor:move !important;font-weight:bold;padding:0 10px !important;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;border-radius:3px;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-slides #redux-slides-accordion .redux-slides-image{height:250px;padding:5px;margin-top:10px;margin-bottom:10px;border:1px solid #e3e3e3;background:#f7f7f7;border-radius:3px}.redux-container-slides .redux-slides-add{float:right;margin-right:10%;display:block;margin-bottom:10px}.redux-container-slides .redux-slides-remove{color:#ef521d !important;float:right;margin-top:5px}.redux-container-slides .redux-slides-header{font-weight:bold}.redux-container-slides .redux_slides_add_remove{margin-bottom:10px}.redux-container-slides input{width:100% !important}.wp-customizer .redux-container-slides .ui-accordion .ui-accordion-content{padding:10px}.redux-container-sorter{margin-right:-20px}.redux-container-sorter ul{background:#f9f9f9;border:1px solid #e3e3e3;min-height:40px;padding:10px 10px 0;width:145px;float:left;margin:0 15px 0 0}.redux-container-sorter ul.filled{opacity:0.7;filter:alpha(opacity=70);background:#efecec}.redux-container-sorter ul li{border:1px solid #dfdfdf;cursor:move;font-weight:bold;margin-bottom:10px !important;padding:0 10px;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;border-radius:3px;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-sorter ul li h3{margin:0 0 10px;text-align:center;color:#777;text-transform:capitalize;word-wrap:break-word}.redux-container-sorter ul li.placeholder{height:40px}.wp-customizer .redux-container-sorter ul{width:85%;margin:0 0 5px 0}.redux-container-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 */
|
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-dimensions-container select,.redux-dimensions-container .select_wrapper{width:80px !important;float:left}.redux-dimensions-container .field-dimensions-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-dimensions-container .field-dimensions-input input{display:inline-block !important;width:100px !important}.redux-dimensions-container .field-dimensions-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-dimensions-container .select_wrapper{margin-top:6px}}.redux-main .divide{height:20px;line-height:20px;float:none;border-color:#e7e7e7;display:block;width:100%;height:35px !important;line-height:35px !important;position:relative;margin:15px 0 10px 0}.redux-main .divide .inner{width:42% !important;left:40% !important;margin-left:-6%;background-color:#fcfcfc;border-color:#e7e7e7;position:absolute;height:1px;top:50%;width:100%;margin-top:-1px;border-top-width:1px;border-top-style:solid}.redux-main .divide .inner span{background-color:#fcfcfc;border-color:#e7e7e7;height:5px;width:5px;border-width:2px;border-style:solid;display:block;position:absolute;left:50%;margin-left:-5px;margin-top:-5px}.wp-customizer .redux-container-divide .divide .inner{width:82% !important;left:18% !important;margin-left:-8%}.redux-container-editor .mceLayout td{border-width:1px;margin:0;padding:1px}.redux-container-editor input,.redux-container-editor textarea{margin:inherit}.redux-container-editor textarea{border-style:none;border:0;border-width:0}.redux-container-editor .wp-editor-container{border-radius:3px}.redux-container-editor .wp-editor-container textarea{border-radius:0;border-style:inherit}.redux-container-editor .quicktags-toolbar input{margin:2px 1px 4px;display:inline-block;min-width:26px;padding:2px 4px;font:12px/18px Arial, Helvetica, sans-serif normal;color:#464646;border:1px solid #c3c3c3;border-radius:3px;background:#eee;background-image:-webkit-gradient(linear, left bottom, left top, from(#e3e3e3), to(#fff));background-image:-webkit-linear-gradient(bottom, #e3e3e3, #fff);background-image:linear-gradient(to top, #e3e3e3, #fff)}.redux-container-image_select .redux-table-container{display:table;table-layout:fixed;width:100%}.redux-container-image_select .redux-image-select{margin:0 !important}.redux-container-image_select .redux-image-select .tiles{display:block;background-color:#fff;background-repeat:repeat;width:40px;height:40px}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select .tiles{border-color:#d9d9d9}.redux-container-image_select .redux-image-select li:last-child{margin-bottom:0}.redux-container-image_select .redux-image-select input[type="radio"]{display:none}.redux-container-image_select .redux-image-select-presets img{width:100%}.redux-container-image_select ul.redux-image-select li{margin:0 10px 3px 10px;display:inline-block;padding:2px 2px;padding-left:0}.redux-container-image_select .redux-image-select-selected{background-color:#f9f9f9}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select-selected img,.redux-container-image_select .redux-image-select .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-width:4px;border-style:solid}.redux-container-image_select .redux-image-select-selected .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-color:#7a7a7a}.redux-info-field{min-height:20px;padding:8px 19px;margin:10px 0;border:1px solid;border-radius:4px;border:1px solid;position:relative}.redux-info-field h1,.redux-info-field h2,.redux-info-field h3,.redux-info-field h4,.redux-info-field h5,.redux-info-field h6{border-bottom:0 !important}.redux-info-field h3{color:#777}.redux-info-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-info-field .redux-info-icon i{font-size:2em}.redux-info-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-info-field.redux-normal{background-color:#eee;border-color:#ccc;color:#666}.redux-info-field.redux-normal i{color:#c5c5c5}.redux-info-field.redux-warning{background-color:#fbeba4;border-color:#d7c281;color:#958234}.redux-info-field.redux-warning i{color:#dcca81}.redux-info-field.redux-success{background-color:#c4ee91;border-color:#71af5d;color:#4d7615}.redux-info-field.redux-success i{color:#a0ca6c}.redux-info-field.redux-critical{background-color:#fba1a3;border-color:#b84f5b;color:#981225}.redux-info-field.redux-critical i{color:#dd767d}.redux-info-field.redux-info{background-color:#d3e4f4;border-color:#a9b6c2;color:#5c80a1}.redux-info-field.redux-info i{color:#afc6da}.redux-notice-field{margin:15px 0 0;background-color:#fff;border:0;border-left:4px solid #f3f3f3;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);padding:1px 12px}.redux-notice-field h1,.redux-notice-field h2,.redux-notice-field h3,.redux-notice-field h4,.redux-notice-field h5,.redux-notice-field h6{border-bottom:0 !important}.redux-notice-field p{margin:0.5em 0;padding:2px}.redux-notice-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-notice-field .redux-info-icon i{font-size:2em}.redux-notice-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-notice-field.redux-info{border-left:4px solid #0099d5}.redux-notice-field.redux-success{border-left:4px solid #7ad03a}.redux-notice-field.redux-warning{border-left:4px solid #fbeba4}.redux-notice-field.redux-critical{border-left:4px solid #dd3d36}.redux-main .redux-field-container.redux-container-info{padding:0}.wp-customizer .hasIcon.redux-notice-field .redux-info-desc,.wp-customizer .hasIcon.redux-info-field .redux-info-desc{display:block;margin-left:43px}.wp-customizer .hasIcon.redux-notice-field .redux-info-icon,.wp-customizer .hasIcon.redux-info-field .redux-info-icon{float:left}.wp-customizer .redux-main .customize-control.customize-control-redux-info{border-bottom:0}.redux-container-link_color .linkColor{display:inline-block;padding-right:10px;padding-bottom:7px}.redux-container-link_color .linkColor strong{display:table;margin-bottom:5px;margin-left:3px;font-size:12px;font-weight:normal;color:#999}.redux-main .redux-media-slider{width:40%;display:inline-block;margin-left:30px}.redux-main .redux-media-filter-container{padding-top:20px}.redux-main .redux-media-filter-container .container-label{margin-bottom:20px;padding-bottom:1px;border-bottom:1px solid #e7e7e7;font-weight:600;font-size:12px;color:#999}.redux-main .redux-media-filter-container .media-filter{display:inline-block;width:47%;margin-bottom:5px}.redux-main .redux-media-filter-container .media-filter label{display:inline-block;width:130px;color:#999}.redux-main .redux-media-filter-container .media-filter label.disabled .filter-value{color:#ccc}.redux-container-multi_text ul.redux-multi-text{margin:0;padding:0}.redux-container-multi_text .redux-multi-text-add{clear:both;margin:5px 0}.redux-container-multi_text a.redux-multi-text-remove.deletion{color:#f00;padding:2px 4px;margin-left:5px}.redux-container-multi_text a.redux-multi-text-remove.deletion:hover{background:#ff0;color:#fff;text-decoration:none}@media screen and (max-width: 782px){.redux-container-multi_text input{clear:both}.redux-container-multi_text .redux-multi-text-remove{margin:0;float:right}}.wp-customizer .redux-container-multi_text .button{float:right}.wp-customizer .redux-container-multi_text .redux-multi-text-remove{float:right;margin-bottom:5px}.wp-customizer .redux-container-multi_text ul.redux-multi-text input{width:100% !important}.redux-container-palette label{border:3px solid transparent;border-color:transparent !important;border-radius:0;width:100% !important;display:block}.redux-container-palette label.ui-button.ui-widget{width:95%;background:none;padding:0}.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-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-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 */
|
redux-core/assets/css/redux-fields.min.css.map
CHANGED
@@ -1 +1 @@
|
|
1 |
-
{"version":3,"sources":["redux-fields.min.css"],"names":[],"mappings":"AAAA,yCAAyC,eAAe,CAAC,wCAAwC,YAAY,CAAkD,iBAAiB,CAAC,wCAAwC,oBAAoB,CAAC,0zBAA0zB,sBAAsB,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,4DAA4D,aAAa,CAAC,UAAU,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,2DAA2D,iBAAiB,CAAC,kBAAkB,CAAC,6DAA6D,kBAAkB,CAAC,gDAAgD,UAAU,CAAC,iBAAiB,CAAC,0DAA0D,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,81BAA81B,qBAAqB,CAAC,2CAA2C,UAAU,CAAC,aAAa,CAAC,iBAAiB,CAAC,wCAAwC,UAAU,CAAC,aAAa,CAAC,+CAA+C,UAAU,CAAC,UAAU,CAAC,4CAA4C,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,kDAAkD,+BAA+B,CAAC,sBAAsB,CAAC,oDAAoD,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,wCAAwC,cAAc,CAAC,CAAC,gCAAgC,kBAAkB,CAAC,UAAU,CAAC,4CAA4C,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,wDAAwD,YAAY,CAAC,eAAe,CAAC,iBAAiB,CAAC,oGAAoG,oBAAoB,CAAC,iBAAiB,CAAC,kHAAkH,aAAa,CAAC,iBAAiB,CAAC,eAAe,CAAC,cAAc,CAAC,UAAU,CAAC,qCAAqC,+CAA+C,aAAa,CAAC,4BAA4B,CAAC,CAAC,cAAc,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,8DAA8D,CAAC,sDAAsD,CAAC,kBAAkB,CAAC,aAAa,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,8DAA8D,CAAC,sDAAsD,CAAC,kBAAkB,CAAC,4EAA4E,kBAAkB,CAAC,iBAAiB,CAAC,UAAU,CAAC,sCAAsC,qEAAqE,CAAC,6DAA6D,CAAC,0BAA0B,0GAA0G,CAAC,kGAAkG,CAAC,kEAAkE,eAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,uDAAuD,CAAC,+CAA+C,CAAC,mBAAmB,qBAAqB,CAAC,sBAAsB,wBAAwB,CAAC,+EAA+E,qBAAqB,CAAC,UAAU,CAAC,oDAAoD,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,0DAA0D,+BAA+B,CAAC,sBAAsB,CAAC,4DAA4D,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,4CAA4C,cAAc,CAAC,CAAC,oBAAoB,WAAW,CAAC,gBAAgB,CAAC,UAAU,CAAC,oBAAoB,CAAC,aAAa,CAAC,UAAU,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,2BAA2B,oBAAoB,CAAC,mBAAmB,CAAC,eAAe,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,oBAAoB,CAAC,sBAAsB,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,UAAU,CAAC,SAAS,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,eAAe,CAAC,sDAAsD,oBAAoB,CAAC,mBAAmB,CAAC,eAAe,CAAC,sCAAsC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,+DAA+D,cAAc,CAAC,iCAAiC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,6CAA8F,iBAAiB,CAAC,sDAAmG,eAAe,CAAC,oBAAoB,CAAC,iDAAiD,kBAAkB,CAAC,oBAAoB,CAAC,cAAc,CAAC,eAAe,CAAC,kDAAkD,CAAC,aAAa,CAAC,wBAAwB,CAA2B,iBAAiB,CAAC,eAAe,CAAC,yFAAyF,CAAC,+DAA+D,CAAyH,uDAAuD,CAAC,qDAAqD,aAAa,CAAC,kBAAkB,CAAC,UAAU,CAAC,kDAAkD,mBAAmB,CAAC,yDAAyD,aAAa,CAAC,qBAAqB,CAAC,wBAAwB,CAAC,UAAU,CAAC,WAAW,CAAC,+GAA+G,oBAAoB,CAAC,gEAAgE,eAAe,CAAC,sEAAsE,YAAY,CAAC,8DAA8D,UAAU,CAAC,uDAAuD,sBAAsB,CAAC,oBAAoB,CAAC,eAAe,CAAC,cAAc,CAAC,2DAA2D,wBAAwB,CAAC,gPAAgP,gBAAgB,CAAC,kBAAkB,CAAC,oIAAoI,oBAAoB,CAAC,kBAAkB,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,8HAA8H,0BAA0B,CAAC,qBAAqB,UAAU,CAAC,mCAAmC,oBAAoB,CAAC,iBAAiB,CAAC,qCAAqC,aAAa,CAAC,mCAAmC,oBAAoB,CAAC,kBAAkB,CAAC,+BAA+B,qBAAqB,CAAC,iBAAiB,CAAC,UAAU,CAAC,iCAAiC,aAAa,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,kCAAkC,aAAa,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,kCAAkC,aAAa,CAAC,iCAAiC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,mCAAmC,aAAa,CAAC,6BAA6B,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,+BAA+B,aAAa,CAAC,oBAAoB,eAAe,CAAC,qBAAqB,CAAC,QAAQ,CAAC,6BAA6B,CAAC,8CAA8C,CAAC,sCAAsC,CAAC,gBAAgB,CAAC,0IAA0I,0BAA0B,CAAC,sBAAsB,cAAc,CAAC,WAAW,CAAC,qCAAqC,oBAAoB,CAAC,iBAAiB,CAAC,uCAAuC,aAAa,CAAC,qCAAqC,oBAAoB,CAAC,kBAAkB,CAAC,+BAA+B,6BAA6B,CAAC,kCAAkC,6BAA6B,CAAC,kCAAkC,6BAA6B,CAAC,mCAAmC,6BAA6B,CAAC,wDAAwD,SAAS,CAAC,sHAAsH,aAAa,CAAC,gBAAgB,CAAC,sHAAsH,UAAU,CAAC,2EAA2E,eAAe,CAAC,gCAAgC,SAAS,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,0CAA0C,gBAAgB,CAAC,2DAA2D,kBAAkB,CAAC,kBAAkB,CAAC,+BAA+B,CAAC,eAAe,CAAC,cAAc,CAAC,UAAU,CAAC,wDAAwD,oBAAoB,CAAC,SAAS,CAAC,iBAAiB,CAAC,8DAA8D,oBAAoB,CAAC,WAAW,CAAC,UAAU,CAAC,qFAAqF,UAAU,CAAC,uCAAuC,oBAAoB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,8CAA8C,aAAa,CAAC,iBAAiB,CAAC,eAAe,CAAC,cAAc,CAAC,kBAAkB,CAAC,UAAU,CAAC,gDAAgD,QAAQ,CAAC,SAAS,CAAC,kDAAkD,UAAU,CAAC,YAAY,CAAC,+DAA+D,UAAU,CAAC,eAAe,CAAC,eAAe,CAAC,qEAAqE,eAAe,CAAC,UAAU,CAAC,oBAAoB,CAAC,qCAAqC,kCAAkC,UAAU,CAAC,qDAAqD,QAAQ,CAAC,WAAW,CAAC,CAAC,mDAAmD,WAAW,CAAC,oEAAoE,WAAW,CAAC,iBAAiB,CAAC,qEAAqE,qBAAqB,CAAC,+BAA+B,4BAA4B,CAAC,mCAAmC,CAAC,eAAe,CAAC,qBAAqB,CAAC,aAAa,CAAC,mDAAmD,SAAS,CAAC,eAAe,CAAC,SAAS,CAAC,mEAAmE,mBAAW,CAAX,oBAAW,CAAX,mBAAW,CAAX,YAAY,CAAC,wEAAwE,YAAY,CAAC,kBAAW,CAAX,mBAAW,CAAX,mBAAW,CAAX,WAAW,CAAC,WAAW,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,wCAAwC,CAAgH,gCAAgC,CAAC,aAAa,CAAC,8EAA8E,kBAAW,CAAX,mBAAW,CAAX,mBAAW,CAAX,WAAW,CAAC,gBAAgB,CAAC,cAAc,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,sCAAsC,CAAC,+CAA+C,gCAAgC,CAAC,0DAA0D,iBAAiB,CAAC,yCAAyC,SAAS,CAAC,yBAAyB,CAAC,kEAAkE,sBAAsB,CAAC,eAAe,eAAe,CAAC,8DAA8D,YAAY,CAAC,oEAAoE,eAAe,CAAC,8CAA8C,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,uBAAuB,qBAAqB,CAAC,6KAA6K,eAAe,CAAC,8BAA8B,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,qBAAqB,gBAAgB,CAAC,eAAe,CAAC,WAAW,CAAC,eAAe,CAAC,wBAAwB,CAAC,kBAAkB,CAA2E,iBAAiB,CAAC,gDAAgD,gBAAgB,CAAC,iBAAiB,CAAC,WAAW,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,8IAA8I,sBAAsB,CAAC,iBAAiB,CAAC,4CAA4C,iBAAiB,CAAC,gBAAgB,CAAC,gDAAgD,iBAAiB,CAAC,iBAAiB,CAAC,gDAAgD,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,qCAAqC,8BAA8B,+BAA+B,CAAC,CAAC,qCAAqC,wBAAwB,iBAAiB,CAAC,oJAAoJ,wBAAwB,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,gDAAgD,cAAc,CAAC,SAAS,CAAC,CAAC,2DAA2D,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,iBAAiB,CAAC,aAAa,CAAC,2LAA2L,oBAAoB,CAAC,+DAA+D,SAAS,CAAC,cAAc,CAAC,cAAc,CAAC,0EAA0E,WAAW,CAAC,eAAe,CAAC,gCAAgC,iBAAiB,CAAC,uCAAuC,4BAA4B,CAAC,yBAAyB,CAAC,UAAU,CAAC,gCAAgC,iBAAiB,CAAC,8CAA8C,UAAU,CAAC,oDAAoD,4BAA4B,CAAC,cAAc,CAAC,oDAAoD,WAAW,CAAC,gBAAgB,CAAC,yCAAyC,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,CAAC,4BAA4B,CAAC,+DAA+D,eAAe,CAAC,iBAAiB,CAAC,cAAc,CAAC,mDAAmD,UAAU,CAAC,sBAAsB,CAAC,yEAAyE,UAAU,CAAC,wCAAwC,4BAA4B,CAAC,6BAA6B,2BAA2B,CAAC,gDAAgD,WAAW,CAAC,WAAW,CAAC,kBAAkB,CAAC,yCAAyC,WAAW,CAAC,aAAa,CAAC,kDAAkD,SAAS,CAAC,oCAAoC,eAAe,CAAC,6DAA6D,aAAa,CAAC,8DAA8D,cAAc,CAAC,8DAA8D,kBAAkB,CAAC,UAAU,CAAC,6CAA6C,eAAe,CAAC,uEAAuE,UAAU,CAAC,sDAAsD,mCAAmC,CAAC,4BAA4B,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,WAAW,CAAC,yDAAyD,wBAAwB,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,WAAW,CAAC,2BAA2B,CAAC,wBAAwB,CAAqL,4FAA4F,CAAC,+DAA+D,CAAC,6DAA6D,CAAC,eAAe,CAAkD,iBAAiB,CAAoC,qCAAqC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,oEAAoE,YAAY,CAAC,WAAW,CAAC,eAAe,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,kBAAkB,CAA2E,iBAAiB,CAAC,0CAA0C,WAAW,CAAC,gBAAgB,CAAC,aAAa,CAAC,kBAAkB,CAAC,6CAA6C,wBAAwB,CAAC,WAAW,CAAC,cAAc,CAAC,6CAA6C,gBAAgB,CAAC,iDAAiD,kBAAkB,CAAC,8BAA8B,qBAAqB,CAAC,2EAA2E,YAAY,CAAC,wBAAwB,kBAAkB,CAAC,2BAA2B,kBAAkB,CAAC,wBAAwB,CAAC,eAAe,CAAC,mBAAmB,CAAC,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,kCAAkC,WAAW,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,8BAA8B,wBAAwB,CAAC,WAAW,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,cAAc,CAAC,WAAW,CAAC,2BAA2B,CAAC,wBAAwB,CAAqL,4FAA4F,CAAC,+DAA+D,CAAC,6DAA6D,CAAC,eAAe,CAAkD,iBAAiB,CAAoC,qCAAqC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,iCAAiC,eAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,yBAAyB,CAAC,oBAAoB,CAAC,0CAA0C,WAAW,CAAC,0CAA0C,SAAS,CAAC,gBAAgB,CAAC,yEAAyE,qBAAqB,CAAC,UAAU,CAAC,8CAA8C,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,oDAAoD,+BAA+B,CAAC,qBAAqB,CAAC,sDAAsD,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,yCAAyC,cAAc,CAAC,CAAC,uCAAuC,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,eAAe,CAAC,sDAAsD,4BAA4B,CAAC,SAAS,CAAC,qBAAqB,CAAC,sBAAsB,CAAC,0BAA0B,CAAC,mCAAmC,CAAC,yBAAyB,CAAC,wBAAwB,CAAoE,0BAA0B,CAAC,qCAAqC,eAAe,CAAC,cAAc,CAAC,6CAA6C,iBAAiB,CAAC,SAAS,CAAC,uDAAuD,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,gBAAgB,CAAC,eAAe,CAAC,cAAc,CAA6F,mFAAmF,CAAC,iDAAyC,CAAzC,yCAAyC,CAAC,qBAAqB,CAAC,WAAW,CAAC,uBAAuB,CAAsB,eAAe,CAAC,2FAAuL,mFAAmF,CAAC,iDAAyC,CAAzC,yCAAyC,CAAC,wBAAwB,CAAC,yGAA0K,yBAAyB,CAAC,yGAA0K,yBAAyB,CAAC,qDAAqD,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,gBAAgB,CAAC,kFAAkF,oBAAoB,CAAC,6BAAqB,CAArB,qBAAqB,CAAC,0BAA0B,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,WAAW,CAAC,iBAAiB,iBAAiB,CAAC,8HAA8H,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,UAAU,CAAC,qCAAqC,CAAC,sBAAsB,CAAC,gJAAgJ,wBAAwB,CAAC,qBAAqB,2BAA2B,CAAC,8BAA8B,CAAC,qBAAqB,0BAA0B,CAAC,6BAA6B,CAAC,uBAAuB,UAAU,CAAC,qBAAqB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,6FAAoF,CAApF,qFAAqF,CAAC,gCAAgC,qBAAqB,CAAC,wCAAwC,eAAe,CAAC,iBAAiB,CAAC,8CAA8C,cAAc,CAAC,8CAA8C,YAAY,CAAC,uEAAuE,cAAc,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,6BAA6B,CAA4B,qBAAqB,CAAC,iFAAiF,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC,wBAAwB,CAAyB,qBAAqB,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,wJAAwJ,aAAa,CAAC,UAAU,CAAC,mCAAmC,cAAc,CAAC,6BAA6B,CAAC,kCAAkC,CAAC,qCAAqC,CAAC,4CAA4C,UAAU,CAAC,oCAAoC,aAAa,CAAC,6BAA6B,CAAC,kCAAkC,CAAC,qCAAqC,CAAC,6CAA6C,UAAU,CAAC,4BAA4B,aAAa,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,eAAe,CAAC,UAAU,CAAC,6BAA6B,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,4BAA4B,UAAU,CAAC,qCAAqC,aAAa,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,oDAAoD,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,wCAAwC,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC,kDAAkD,UAAU,CAAC,yDAAyD,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,gIAAgI,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,WAAW,CAAC,yBAAyB,CAAC,YAAY,CAAC,eAAe,CAAC,yBAAyB,CAAC,wDAAwD,aAAa,CAAC,iBAAiB,CAAC,UAAU,CAAC,UAAU,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,0BAA0B,CAAC,0BAA0B,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uEAAuE,4BAA4B,CAAC,wEAAwE,4BAA4B,CAAC,6FAA6F,UAAU,CAAC,0EAA0E,yBAAyB,CAAC,aAAa,CAAC,UAAU,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,6DAA6D,UAAU,CAAC,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAkD,iBAAiB,CAAC,uDAAuD,aAAa,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,iEAAiE,aAAa,CAAC,kEAAkE,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,SAAS,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,oBAAoB,CAAkD,iBAAiB,CAAC,wDAAwD,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,8CAA8C,iBAAiB,CAAC,yBAAyB,CAAC,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,4DAA4D,YAAY,CAAC,UAAU,CAAC,yBAAyB,CAAC,eAAe,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,iBAAiB,CAAC,6BAA6B,CAA4B,qBAAqB,CAAC,eAAe,CAAC,0DAA0D,aAAa,CAAC,QAAQ,CAAC,oEAAoE,gBAAgB,CAAC,qCAAqC,oDAAoD,eAAe,CAAC,aAAa,CAAC,oEAAoE,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,mEAAmE,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC,wBAAwB,CAAC,2BAA2B,CAAC,8EAA8E,SAAS,CAAC,0EAA0E,SAAS,CAAC,sBAAsB,CAAC,+EAA+E,cAAc,CAAC,CAAC,qCAAqC,kEAAkE,eAAe,CAAC,CAAC,0DAA0D,SAAS,CAAC,aAAa,CAAC,aAAa,CAAC,qEAAqE,SAAS,CAAC,2DAA2D,qBAAqB,CAAC,gCAAgC,gBAAgB,CAAC,kDAAkD,mBAAmB,CAAC,gEAAgE,4BAA4B,CAAC,2BAA2B,CAAC,yBAAyB,CAAC,8DAA8D,eAAe,CAAC,qBAAqB,CAAC,qEAAqE,cAAc,CAAC,gEAAgE,QAAQ,CAAC,gDAAgD,aAAa,CAAC,mDAAmD,eAAe,CAAC,6EAA6E,kBAAkB,CAAC,qKAAqK,gBAAgB,CAAC,6CAA6C,kBAAkB,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,0BAA0B,CAAC,eAAe,CAAC,kBAAkB,CAAC,+BAA+B,wBAAwB,CAAC,kDAAkD,cAAc,CAAC,2CAA2C,UAAU,CAAC,UAAU,CAAC,oBAAoB,CAAC,8CAA8C,yBAAyB,CAAC,4BAA4B,CAAC,qBAAqB,CAAC,0DAA0D,cAAc,CAAC,+CAA+C,wBAAwB,CAAC,eAAe,CAAC,8CAA8C,4BAA4B,CAAC,kBAAkB,CAAC,yDAAyD,eAAe,CAAC,gBAAgB,CAAC,mCAAmC,qBAAqB,CAAC,8BAA8B,kBAAkB,CAAC,gDAAgD,eAAe,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,2DAA2D,UAAU,CAAC,+DAA+D,cAAc,CAAC,4CAA4C,eAAe,CAAC,sDAAsD,YAAY,CAAC,4CAA4C,YAAY,CAAC,0BAA0B,aAAa,CAAC,sBAAsB,aAAa,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,cAAc","file":"redux-fields.min.css","sourcesContent":[".redux-container-ace_editor .ace-wrapper{position:static}.redux-container-ace_editor .ace_editor{height:200px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.redux-container-ace_editor .ace_gutter{z-index:1 !important}.redux-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-dimensions-container select,.redux-dimensions-container .select_wrapper{width:80px !important;float:left}.redux-dimensions-container .field-dimensions-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-dimensions-container .field-dimensions-input input{display:inline-block !important;width:100px !important}.redux-dimensions-container .field-dimensions-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-dimensions-container .select_wrapper{margin-top:6px}}.redux-main .divide{height:20px;line-height:20px;float:none;border-color:#e7e7e7;display:block;width:100%;height:35px !important;line-height:35px !important;position:relative;margin:15px 0 10px 0}.redux-main .divide .inner{width:42% !important;left:40% !important;margin-left:-6%;background-color:#fcfcfc;border-color:#e7e7e7;position:absolute;height:1px;top:50%;width:100%;margin-top:-1px;border-top-width:1px;border-top-style:solid}.redux-main .divide .inner span{background-color:#fcfcfc;border-color:#e7e7e7;height:5px;width:5px;border-width:2px;border-style:solid;display:block;position:absolute;left:50%;margin-left:-5px;margin-top:-5px}.wp-customizer .redux-container-divide .divide .inner{width:82% !important;left:18% !important;margin-left:-8%}.redux-container-editor .mceLayout td{border-width:1px;margin:0;padding:1px}.redux-container-editor input,.redux-container-editor textarea{margin:inherit}.redux-container-editor textarea{border-style:none;border:0;border-width:0}.redux-container-editor .wp-editor-container{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.redux-container-editor .wp-editor-container textarea{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;border-style:inherit}.redux-container-editor .quicktags-toolbar input{margin:2px 1px 4px;display:inline-block;min-width:26px;padding:2px 4px;font:12px/18px Arial, Helvetica, sans-serif normal;color:#464646;border:1px solid #c3c3c3;-webkit-border-radius:3px;border-radius:3px;background:#eee;background-image:-webkit-gradient(linear, left bottom, left top, from(#e3e3e3), to(#fff));background-image:-webkit-linear-gradient(bottom, #e3e3e3, #fff);background-image:-moz-linear-gradient(bottom, #e3e3e3, #fff);background-image:-o-linear-gradient(bottom, #e3e3e3, #fff);background-image:linear-gradient(to top, #e3e3e3, #fff)}.redux-container-image_select .redux-table-container{display:table;table-layout:fixed;width:100%}.redux-container-image_select .redux-image-select{margin:0 !important}.redux-container-image_select .redux-image-select .tiles{display:block;background-color:#fff;background-repeat:repeat;width:40px;height:40px}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select .tiles{border-color:#d9d9d9}.redux-container-image_select .redux-image-select li:last-child{margin-bottom:0}.redux-container-image_select .redux-image-select input[type=\"radio\"]{display:none}.redux-container-image_select .redux-image-select-presets img{width:100%}.redux-container-image_select ul.redux-image-select li{margin:0 10px 3px 10px;display:inline-block;padding:2px 2px;padding-left:0}.redux-container-image_select .redux-image-select-selected{background-color:#f9f9f9}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select-selected img,.redux-container-image_select .redux-image-select .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-width:4px;border-style:solid}.redux-container-image_select .redux-image-select-selected .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-color:#7a7a7a}.redux-info-field{min-height:20px;padding:8px 19px;margin:10px 0;border:1px solid;border-radius:4px;border:1px solid;position:relative}.redux-info-field h1,.redux-info-field h2,.redux-info-field h3,.redux-info-field h4,.redux-info-field h5,.redux-info-field h6{border-bottom:0 !important}.redux-info-field h3{color:#777}.redux-info-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-info-field .redux-info-icon i{font-size:2em}.redux-info-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-info-field.redux-normal{background-color:#eee;border-color:#ccc;color:#666}.redux-info-field.redux-normal i{color:#c5c5c5}.redux-info-field.redux-warning{background-color:#fbeba4;border-color:#d7c281;color:#958234}.redux-info-field.redux-warning i{color:#dcca81}.redux-info-field.redux-success{background-color:#c4ee91;border-color:#71af5d;color:#4d7615}.redux-info-field.redux-success i{color:#a0ca6c}.redux-info-field.redux-critical{background-color:#fba1a3;border-color:#b84f5b;color:#981225}.redux-info-field.redux-critical i{color:#dd767d}.redux-info-field.redux-info{background-color:#d3e4f4;border-color:#a9b6c2;color:#5c80a1}.redux-info-field.redux-info i{color:#afc6da}.redux-notice-field{margin:15px 0 0;background-color:#fff;border:0;border-left:4px solid #f3f3f3;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);padding:1px 12px}.redux-notice-field h1,.redux-notice-field h2,.redux-notice-field h3,.redux-notice-field h4,.redux-notice-field h5,.redux-notice-field h6{border-bottom:0 !important}.redux-notice-field p{margin:0.5em 0;padding:2px}.redux-notice-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-notice-field .redux-info-icon i{font-size:2em}.redux-notice-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-notice-field.redux-info{border-left:4px solid #0099d5}.redux-notice-field.redux-success{border-left:4px solid #7ad03a}.redux-notice-field.redux-warning{border-left:4px solid #fbeba4}.redux-notice-field.redux-critical{border-left:4px solid #dd3d36}.redux-main .redux-field-container.redux-container-info{padding:0}.wp-customizer .hasIcon.redux-notice-field .redux-info-desc,.wp-customizer .hasIcon.redux-info-field .redux-info-desc{display:block;margin-left:43px}.wp-customizer .hasIcon.redux-notice-field .redux-info-icon,.wp-customizer .hasIcon.redux-info-field .redux-info-icon{float:left}.wp-customizer .redux-main .customize-control.customize-control-redux-info{border-bottom:0}.redux-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-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-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-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-slides .redux-slides-list .select2-container{margin-bottom:10px;width:100%}.redux-container-slides .ui-accordion-header{margin-bottom:0}.redux-container-slides .full-text,.redux-container-slides .large-text{width:100%}.redux-container-slides .redux-slides-accordion-group{border:1px solid #dfdfdf !important;border-radius:3px !important;margin-top:0px !important;margin-bottom:10px;background:#f9f9f9;padding:5px}.redux-container-slides .redux-slides-accordion-group h3{border:1px solid #dfdfdf;cursor:move !important;font-weight:bold;padding:0 10px !important;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-ms-linear-gradient(top, #f9f9f9, #ececec);background-image:-moz-linear-gradient(top, #f9f9f9, #ececec);background-image:-o-linear-gradient(top, #f9f9f9, #ececec);background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-slides #redux-slides-accordion .redux-slides-image{height:250px;padding:5px;margin-top:10px;margin-bottom:10px;border:1px solid #e3e3e3;background:#f7f7f7;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.redux-container-slides .redux-slides-add{float:right;margin-right:10%;display:block;margin-bottom:10px}.redux-container-slides .redux-slides-remove{color:#ef521d !important;float:right;margin-top:5px}.redux-container-slides .redux-slides-header{font-weight:bold}.redux-container-slides .redux_slides_add_remove{margin-bottom:10px}.redux-container-slides input{width:100% !important}.wp-customizer .redux-container-slides .ui-accordion .ui-accordion-content{padding:10px}.redux-container-sorter{margin-right:-20px}.redux-container-sorter ul{background:#f9f9f9;border:1px solid #e3e3e3;min-height:40px;padding:10px 10px 0;width:145px;float:left;margin:0 15px 0 0}.redux-container-sorter ul.filled{opacity:0.7;filter:alpha(opacity=70);background:#efecec}.redux-container-sorter ul li{border:1px solid #dfdfdf;cursor:move;font-weight:bold;margin-bottom:10px !important;padding:0 10px;height:40px;line-height:40px !important;background-color:#f1f1f1;background-image:-ms-linear-gradient(top, #f9f9f9, #ececec);background-image:-moz-linear-gradient(top, #f9f9f9, #ececec);background-image:-o-linear-gradient(top, #f9f9f9, #ececec);background-image:-webkit-gradient(linear, left top, left bottom, from(#f9f9f9), to(#ececec));background-image:-webkit-linear-gradient(top, #f9f9f9, #ececec);background-image:linear-gradient(to bottom, #f9f9f9, #ececec);overflow:hidden;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;text-align:center}.redux-container-sorter ul li h3{margin:0 0 10px;text-align:center;color:#777;text-transform:capitalize;word-wrap:break-word}.redux-container-sorter ul li.placeholder{height:40px}.wp-customizer .redux-container-sorter ul{width:85%;margin:0 0 5px 0}.redux-container-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"]}
|
1 |
+
{"version":3,"sources":["redux-fields.min.css"],"names":[],"mappings":"AAAA,yCAAyC,eAAe,CAAC,wCAAwC,YAAY,CAAkD,iBAAiB,CAAC,wCAAwC,oBAAoB,CAAC,0zBAA0zB,sBAAsB,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,4DAA4D,aAAa,CAAC,UAAU,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,2DAA2D,iBAAiB,CAAC,kBAAkB,CAAC,6DAA6D,kBAAkB,CAAC,gDAAgD,UAAU,CAAC,iBAAiB,CAAC,0DAA0D,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,81BAA81B,qBAAqB,CAAC,2CAA2C,UAAU,CAAC,aAAa,CAAC,iBAAiB,CAAC,wCAAwC,UAAU,CAAC,aAAa,CAAC,+CAA+C,UAAU,CAAC,UAAU,CAAC,4CAA4C,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,kDAAkD,+BAA+B,CAAC,sBAAsB,CAAC,oDAAoD,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,wCAAwC,cAAc,CAAC,CAAC,gCAAgC,kBAAkB,CAAC,UAAU,CAAC,4CAA4C,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,wDAAwD,YAAY,CAAC,eAAe,CAAC,iBAAiB,CAAC,oGAAoG,oBAAoB,CAAC,iBAAiB,CAAC,kHAAkH,aAAa,CAAC,iBAAiB,CAAC,eAAe,CAAC,cAAc,CAAC,UAAU,CAAC,qCAAqC,+CAA+C,aAAa,CAAC,4BAA4B,CAAC,CAAC,cAAc,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,8DAA8D,CAAC,sDAAsD,CAAC,kBAAkB,CAAC,aAAa,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,8DAA8D,CAAC,sDAAsD,CAAC,kBAAkB,CAAC,4EAA4E,kBAAkB,CAAC,iBAAiB,CAAC,UAAU,CAAC,sCAAsC,qEAAqE,CAAC,6DAA6D,CAAC,0BAA0B,0GAA0G,CAAC,kGAAkG,CAAC,kEAAkE,eAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,uDAAuD,CAAC,+CAA+C,CAAC,mBAAmB,qBAAqB,CAAC,sBAAsB,wBAAwB,CAAC,+EAA+E,qBAAqB,CAAC,UAAU,CAAC,oDAAoD,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,0DAA0D,+BAA+B,CAAC,sBAAsB,CAAC,4DAA4D,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,4CAA4C,cAAc,CAAC,CAAC,oBAAoB,WAAW,CAAC,gBAAgB,CAAC,UAAU,CAAC,oBAAoB,CAAC,aAAa,CAAC,UAAU,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,2BAA2B,oBAAoB,CAAC,mBAAmB,CAAC,eAAe,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,oBAAoB,CAAC,sBAAsB,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,UAAU,CAAC,SAAS,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,eAAe,CAAC,sDAAsD,oBAAoB,CAAC,mBAAmB,CAAC,eAAe,CAAC,sCAAsC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,+DAA+D,cAAc,CAAC,iCAAiC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,6CAA8F,iBAAiB,CAAC,sDAAmG,eAAe,CAAC,oBAAoB,CAAC,iDAAiD,kBAAkB,CAAC,oBAAoB,CAAC,cAAc,CAAC,eAAe,CAAC,kDAAkD,CAAC,aAAa,CAAC,wBAAwB,CAA2B,iBAAiB,CAAC,eAAe,CAAC,yFAAyF,CAAC,+DAA+D,CAAyH,uDAAuD,CAAC,qDAAqD,aAAa,CAAC,kBAAkB,CAAC,UAAU,CAAC,kDAAkD,mBAAmB,CAAC,yDAAyD,aAAa,CAAC,qBAAqB,CAAC,wBAAwB,CAAC,UAAU,CAAC,WAAW,CAAC,+GAA+G,oBAAoB,CAAC,gEAAgE,eAAe,CAAC,sEAAsE,YAAY,CAAC,8DAA8D,UAAU,CAAC,uDAAuD,sBAAsB,CAAC,oBAAoB,CAAC,eAAe,CAAC,cAAc,CAAC,2DAA2D,wBAAwB,CAAC,gPAAgP,gBAAgB,CAAC,kBAAkB,CAAC,oIAAoI,oBAAoB,CAAC,kBAAkB,eAAe,CAAC,gBAAgB,CAAC,aAAa,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,8HAA8H,0BAA0B,CAAC,qBAAqB,UAAU,CAAC,mCAAmC,oBAAoB,CAAC,iBAAiB,CAAC,qCAAqC,aAAa,CAAC,mCAAmC,oBAAoB,CAAC,kBAAkB,CAAC,+BAA+B,qBAAqB,CAAC,iBAAiB,CAAC,UAAU,CAAC,iCAAiC,aAAa,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,kCAAkC,aAAa,CAAC,gCAAgC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,kCAAkC,aAAa,CAAC,iCAAiC,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,mCAAmC,aAAa,CAAC,6BAA6B,wBAAwB,CAAC,oBAAoB,CAAC,aAAa,CAAC,+BAA+B,aAAa,CAAC,oBAAoB,eAAe,CAAC,qBAAqB,CAAC,QAAQ,CAAC,6BAA6B,CAAC,8CAA8C,CAAC,sCAAsC,CAAC,gBAAgB,CAAC,0IAA0I,0BAA0B,CAAC,sBAAsB,cAAc,CAAC,WAAW,CAAC,qCAAqC,oBAAoB,CAAC,iBAAiB,CAAC,uCAAuC,aAAa,CAAC,qCAAqC,oBAAoB,CAAC,kBAAkB,CAAC,+BAA+B,6BAA6B,CAAC,kCAAkC,6BAA6B,CAAC,kCAAkC,6BAA6B,CAAC,mCAAmC,6BAA6B,CAAC,wDAAwD,SAAS,CAAC,sHAAsH,aAAa,CAAC,gBAAgB,CAAC,sHAAsH,UAAU,CAAC,2EAA2E,eAAe,CAAC,uCAAuC,oBAAoB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,8CAA8C,aAAa,CAAC,iBAAiB,CAAC,eAAe,CAAC,cAAc,CAAC,kBAAkB,CAAC,UAAU,CAAC,gCAAgC,SAAS,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,0CAA0C,gBAAgB,CAAC,2DAA2D,kBAAkB,CAAC,kBAAkB,CAAC,+BAA+B,CAAC,eAAe,CAAC,cAAc,CAAC,UAAU,CAAC,wDAAwD,oBAAoB,CAAC,SAAS,CAAC,iBAAiB,CAAC,8DAA8D,oBAAoB,CAAC,WAAW,CAAC,UAAU,CAAC,qFAAqF,UAAU,CAAC,gDAAgD,QAAQ,CAAC,SAAS,CAAC,kDAAkD,UAAU,CAAC,YAAY,CAAC,+DAA+D,UAAU,CAAC,eAAe,CAAC,eAAe,CAAC,qEAAqE,eAAe,CAAC,UAAU,CAAC,oBAAoB,CAAC,qCAAqC,kCAAkC,UAAU,CAAC,qDAAqD,QAAQ,CAAC,WAAW,CAAC,CAAC,mDAAmD,WAAW,CAAC,oEAAoE,WAAW,CAAC,iBAAiB,CAAC,qEAAqE,qBAAqB,CAAC,+BAA+B,4BAA4B,CAAC,mCAAmC,CAAC,eAAe,CAAC,qBAAqB,CAAC,aAAa,CAAC,mDAAmD,SAAS,CAAC,eAAe,CAAC,SAAS,CAAC,mEAAmE,mBAAW,CAAX,oBAAW,CAAX,mBAAW,CAAX,YAAY,CAAC,wEAAwE,YAAY,CAAC,kBAAW,CAAX,mBAAW,CAAX,mBAAW,CAAX,WAAW,CAAC,WAAW,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,wCAAwC,CAAgH,gCAAgC,CAAC,aAAa,CAAC,8EAA8E,kBAAW,CAAX,mBAAW,CAAX,mBAAW,CAAX,WAAW,CAAC,gBAAgB,CAAC,cAAc,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,sCAAsC,CAAC,+CAA+C,gCAAgC,CAAC,0DAA0D,iBAAiB,CAAC,8CAA8C,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,uBAAuB,qBAAqB,CAAC,6KAA6K,eAAe,CAAC,yCAAyC,SAAS,CAAC,yBAAyB,CAAC,kEAAkE,sBAAsB,CAAC,eAAe,eAAe,CAAC,8DAA8D,YAAY,CAAC,oEAAoE,eAAe,CAAC,8BAA8B,cAAc,CAAC,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,qBAAqB,gBAAgB,CAAC,eAAe,CAAC,WAAW,CAAC,eAAe,CAAC,wBAAwB,CAAC,kBAAkB,CAA2E,iBAAiB,CAAC,8DAA8D,kBAAkB,CAAC,UAAU,CAAC,6CAA6C,eAAe,CAAC,uEAAuE,UAAU,CAAC,sDAAsD,mCAAmC,CAAC,4BAA4B,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,WAAW,CAAC,yDAAyD,wBAAwB,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,WAAW,CAAC,2BAA2B,CAAC,wBAAwB,CAAqL,4FAA4F,CAAC,+DAA+D,CAAC,6DAA6D,CAAC,eAAe,CAAkD,iBAAiB,CAAoC,qCAAqC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,oEAAoE,YAAY,CAAC,WAAW,CAAC,eAAe,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,kBAAkB,CAA2E,iBAAiB,CAAC,0CAA0C,WAAW,CAAC,gBAAgB,CAAC,aAAa,CAAC,kBAAkB,CAAC,6CAA6C,wBAAwB,CAAC,WAAW,CAAC,cAAc,CAAC,6CAA6C,gBAAgB,CAAC,iDAAiD,kBAAkB,CAAC,8BAA8B,qBAAqB,CAAC,2EAA2E,YAAY,CAAC,0EAA0E,WAAW,CAAC,eAAe,CAAC,gCAAgC,iBAAiB,CAAC,uCAAuC,4BAA4B,CAAC,yBAAyB,CAAC,UAAU,CAAC,gCAAgC,iBAAiB,CAAC,8CAA8C,UAAU,CAAC,oDAAoD,4BAA4B,CAAC,cAAc,CAAC,oDAAoD,WAAW,CAAC,gBAAgB,CAAC,yCAAyC,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,CAAC,4BAA4B,CAAC,+DAA+D,eAAe,CAAC,iBAAiB,CAAC,cAAc,CAAC,mDAAmD,UAAU,CAAC,sBAAsB,CAAC,yEAAyE,UAAU,CAAC,wCAAwC,4BAA4B,CAAC,6BAA6B,2BAA2B,CAAC,gDAAgD,WAAW,CAAC,WAAW,CAAC,kBAAkB,CAAC,yCAAyC,WAAW,CAAC,aAAa,CAAC,kDAAkD,SAAS,CAAC,oCAAoC,eAAe,CAAC,6DAA6D,aAAa,CAAC,8DAA8D,cAAc,CAAC,gDAAgD,gBAAgB,CAAC,iBAAiB,CAAC,WAAW,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,8IAA8I,sBAAsB,CAAC,iBAAiB,CAAC,4CAA4C,iBAAiB,CAAC,gBAAgB,CAAC,gDAAgD,iBAAiB,CAAC,iBAAiB,CAAC,gDAAgD,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,qCAAqC,8BAA8B,+BAA+B,CAAC,CAAC,qCAAqC,wBAAwB,iBAAiB,CAAC,oJAAoJ,wBAAwB,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,gDAAgD,cAAc,CAAC,SAAS,CAAC,CAAC,2DAA2D,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,iBAAiB,CAAC,aAAa,CAAC,2LAA2L,oBAAoB,CAAC,+DAA+D,SAAS,CAAC,cAAc,CAAC,cAAc,CAAC,wBAAwB,kBAAkB,CAAC,2BAA2B,kBAAkB,CAAC,wBAAwB,CAAC,eAAe,CAAC,mBAAmB,CAAC,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,kCAAkC,WAAW,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,8BAA8B,wBAAwB,CAAC,WAAW,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,cAAc,CAAC,WAAW,CAAC,2BAA2B,CAAC,wBAAwB,CAAqL,4FAA4F,CAAC,+DAA+D,CAAC,6DAA6D,CAAC,eAAe,CAAkD,iBAAiB,CAAoC,qCAAqC,CAAC,6BAA6B,CAAC,iBAAiB,CAAC,iCAAiC,eAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,yBAAyB,CAAC,oBAAoB,CAAC,0CAA0C,WAAW,CAAC,0CAA0C,SAAS,CAAC,gBAAgB,CAAC,yEAAyE,qBAAqB,CAAC,UAAU,CAAC,8CAA8C,iBAAiB,CAAC,iBAAiB,CAAC,qCAAqC,oDAAoD,+BAA+B,CAAC,qBAAqB,CAAC,sDAAsD,eAAe,CAAC,cAAc,CAAC,eAAe,CAAC,yCAAyC,cAAc,CAAC,CAAC,uCAAuC,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,eAAe,CAAC,sDAAsD,4BAA4B,CAAC,SAAS,CAAC,qBAAqB,CAAC,sBAAsB,CAAC,0BAA0B,CAAC,mCAAmC,CAAC,yBAAyB,CAAC,wBAAwB,CAAoE,0BAA0B,CAAC,qCAAqC,eAAe,CAAC,cAAc,CAAC,6CAA6C,iBAAiB,CAAC,SAAS,CAAC,uDAAuD,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,gBAAgB,CAAC,eAAe,CAAC,cAAc,CAA6F,mFAAmF,CAAC,iDAAyC,CAAzC,yCAAyC,CAAC,qBAAqB,CAAC,WAAW,CAAC,uBAAuB,CAAsB,eAAe,CAAC,2FAAuL,mFAAmF,CAAC,iDAAyC,CAAzC,yCAAyC,CAAC,wBAAwB,CAAC,yGAA0K,yBAAyB,CAAC,yGAA0K,yBAAyB,CAAC,qDAAqD,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,gBAAgB,CAAC,kFAAkF,oBAAoB,CAAC,6BAAqB,CAArB,qBAAqB,CAAC,0BAA0B,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,WAAW,CAAC,iBAAiB,iBAAiB,CAAC,8HAA8H,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,wBAAwB,CAAC,UAAU,CAAC,qCAAqC,CAAC,sBAAsB,CAAC,gJAAgJ,wBAAwB,CAAC,qBAAqB,2BAA2B,CAAC,8BAA8B,CAAC,qBAAqB,0BAA0B,CAAC,6BAA6B,CAAC,uBAAuB,UAAU,CAAC,qBAAqB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,6FAAoF,CAApF,qFAAqF,CAAC,gCAAgC,qBAAqB,CAAC,wCAAwC,eAAe,CAAC,iBAAiB,CAAC,8CAA8C,cAAc,CAAC,8CAA8C,YAAY,CAAC,uEAAuE,cAAc,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,6BAA6B,CAA4B,qBAAqB,CAAC,iFAAiF,gBAAgB,CAAC,aAAa,CAAC,eAAe,CAAC,wBAAwB,CAAyB,qBAAqB,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,wJAAwJ,aAAa,CAAC,UAAU,CAAC,mCAAmC,cAAc,CAAC,6BAA6B,CAAC,kCAAkC,CAAC,qCAAqC,CAAC,4CAA4C,UAAU,CAAC,oCAAoC,aAAa,CAAC,6BAA6B,CAAC,kCAAkC,CAAC,qCAAqC,CAAC,6CAA6C,UAAU,CAAC,4BAA4B,aAAa,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,eAAe,CAAC,UAAU,CAAC,6BAA6B,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,CAAC,4BAA4B,UAAU,CAAC,qCAAqC,aAAa,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,oDAAoD,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,wCAAwC,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC,kDAAkD,UAAU,CAAC,yDAAyD,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,gIAAgI,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,WAAW,CAAC,yBAAyB,CAAC,YAAY,CAAC,eAAe,CAAC,yBAAyB,CAAC,wDAAwD,aAAa,CAAC,iBAAiB,CAAC,UAAU,CAAC,UAAU,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,0BAA0B,CAAC,0BAA0B,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uEAAuE,4BAA4B,CAAC,wEAAwE,4BAA4B,CAAC,6FAA6F,UAAU,CAAC,0EAA0E,yBAAyB,CAAC,aAAa,CAAC,UAAU,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,6DAA6D,UAAU,CAAC,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAkD,iBAAiB,CAAC,uDAAuD,aAAa,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,iEAAiE,aAAa,CAAC,kEAAkE,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,SAAS,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,oBAAoB,CAAkD,iBAAiB,CAAC,wDAAwD,aAAa,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,6BAA6B,CAA4B,wBAAwB,CAAC,qBAAqB,CAAC,uBAAuB,CAAC,8CAA8C,iBAAiB,CAAC,yBAAyB,CAAC,eAAe,CAAC,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,4DAA4D,YAAY,CAAC,UAAU,CAAC,yBAAyB,CAAC,eAAe,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,iBAAiB,CAAC,6BAA6B,CAA4B,qBAAqB,CAAC,eAAe,CAAC,0DAA0D,aAAa,CAAC,QAAQ,CAAC,oEAAoE,gBAAgB,CAAC,qCAAqC,oDAAoD,eAAe,CAAC,aAAa,CAAC,oEAAoE,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,mEAAmE,eAAe,CAAC,eAAe,CAAC,WAAW,CAAC,wBAAwB,CAAC,2BAA2B,CAAC,8EAA8E,SAAS,CAAC,0EAA0E,SAAS,CAAC,sBAAsB,CAAC,+EAA+E,cAAc,CAAC,CAAC,qCAAqC,kEAAkE,eAAe,CAAC,CAAC,0DAA0D,SAAS,CAAC,aAAa,CAAC,aAAa,CAAC,qEAAqE,SAAS,CAAC,2DAA2D,qBAAqB,CAAC,gCAAgC,gBAAgB,CAAC,kDAAkD,mBAAmB,CAAC,gEAAgE,4BAA4B,CAAC,2BAA2B,CAAC,yBAAyB,CAAC,8DAA8D,eAAe,CAAC,qBAAqB,CAAC,qEAAqE,cAAc,CAAC,gEAAgE,QAAQ,CAAC,gDAAgD,aAAa,CAAC,mDAAmD,eAAe,CAAC,6EAA6E,kBAAkB,CAAC,qKAAqK,gBAAgB,CAAC,6CAA6C,kBAAkB,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,uBAAuB,CAAC,0BAA0B,CAAC,eAAe,CAAC,kBAAkB,CAAC,+BAA+B,wBAAwB,CAAC,kDAAkD,cAAc,CAAC,2CAA2C,UAAU,CAAC,UAAU,CAAC,oBAAoB,CAAC,8CAA8C,yBAAyB,CAAC,4BAA4B,CAAC,qBAAqB,CAAC,0DAA0D,cAAc,CAAC,+CAA+C,wBAAwB,CAAC,eAAe,CAAC,8CAA8C,4BAA4B,CAAC,kBAAkB,CAAC,yDAAyD,eAAe,CAAC,gBAAgB,CAAC,mCAAmC,qBAAqB,CAAC,8BAA8B,kBAAkB,CAAC,gDAAgD,eAAe,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,2DAA2D,UAAU,CAAC,+DAA+D,cAAc,CAAC,4CAA4C,eAAe,CAAC,sBAAsB,aAAa,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,cAAc,CAAC,sDAAsD,YAAY,CAAC,4CAA4C,YAAY,CAAC,0BAA0B,aAAa","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-dimensions-container select,.redux-dimensions-container .select_wrapper{width:80px !important;float:left}.redux-dimensions-container .field-dimensions-input{margin-right:10px;margin-bottom:7px}@media screen and (max-width: 782px){.redux-dimensions-container .field-dimensions-input input{display:inline-block !important;width:100px !important}.redux-dimensions-container .field-dimensions-input .add-on{padding:7px 4px;font-size:16px;line-height:1.5}.redux-dimensions-container .select_wrapper{margin-top:6px}}.redux-main .divide{height:20px;line-height:20px;float:none;border-color:#e7e7e7;display:block;width:100%;height:35px !important;line-height:35px !important;position:relative;margin:15px 0 10px 0}.redux-main .divide .inner{width:42% !important;left:40% !important;margin-left:-6%;background-color:#fcfcfc;border-color:#e7e7e7;position:absolute;height:1px;top:50%;width:100%;margin-top:-1px;border-top-width:1px;border-top-style:solid}.redux-main .divide .inner span{background-color:#fcfcfc;border-color:#e7e7e7;height:5px;width:5px;border-width:2px;border-style:solid;display:block;position:absolute;left:50%;margin-left:-5px;margin-top:-5px}.wp-customizer .redux-container-divide .divide .inner{width:82% !important;left:18% !important;margin-left:-8%}.redux-container-editor .mceLayout td{border-width:1px;margin:0;padding:1px}.redux-container-editor input,.redux-container-editor textarea{margin:inherit}.redux-container-editor textarea{border-style:none;border:0;border-width:0}.redux-container-editor .wp-editor-container{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.redux-container-editor .wp-editor-container textarea{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0;border-style:inherit}.redux-container-editor .quicktags-toolbar input{margin:2px 1px 4px;display:inline-block;min-width:26px;padding:2px 4px;font:12px/18px Arial, Helvetica, sans-serif normal;color:#464646;border:1px solid #c3c3c3;-webkit-border-radius:3px;border-radius:3px;background:#eee;background-image:-webkit-gradient(linear, left bottom, left top, from(#e3e3e3), to(#fff));background-image:-webkit-linear-gradient(bottom, #e3e3e3, #fff);background-image:-moz-linear-gradient(bottom, #e3e3e3, #fff);background-image:-o-linear-gradient(bottom, #e3e3e3, #fff);background-image:linear-gradient(to top, #e3e3e3, #fff)}.redux-container-image_select .redux-table-container{display:table;table-layout:fixed;width:100%}.redux-container-image_select .redux-image-select{margin:0 !important}.redux-container-image_select .redux-image-select .tiles{display:block;background-color:#fff;background-repeat:repeat;width:40px;height:40px}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select .tiles{border-color:#d9d9d9}.redux-container-image_select .redux-image-select li:last-child{margin-bottom:0}.redux-container-image_select .redux-image-select input[type=\"radio\"]{display:none}.redux-container-image_select .redux-image-select-presets img{width:100%}.redux-container-image_select ul.redux-image-select li{margin:0 10px 3px 10px;display:inline-block;padding:2px 2px;padding-left:0}.redux-container-image_select .redux-image-select-selected{background-color:#f9f9f9}.redux-container-image_select .redux-image-select img,.redux-container-image_select .redux-image-select-selected img,.redux-container-image_select .redux-image-select .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-width:4px;border-style:solid}.redux-container-image_select .redux-image-select-selected .tiles,.redux-container-image_select .redux-image-select-selected .tiles{border-color:#7a7a7a}.redux-info-field{min-height:20px;padding:8px 19px;margin:10px 0;border:1px solid;border-radius:4px;border:1px solid;position:relative}.redux-info-field h1,.redux-info-field h2,.redux-info-field h3,.redux-info-field h4,.redux-info-field h5,.redux-info-field h6{border-bottom:0 !important}.redux-info-field h3{color:#777}.redux-info-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-info-field .redux-info-icon i{font-size:2em}.redux-info-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-info-field.redux-normal{background-color:#eee;border-color:#ccc;color:#666}.redux-info-field.redux-normal i{color:#c5c5c5}.redux-info-field.redux-warning{background-color:#fbeba4;border-color:#d7c281;color:#958234}.redux-info-field.redux-warning i{color:#dcca81}.redux-info-field.redux-success{background-color:#c4ee91;border-color:#71af5d;color:#4d7615}.redux-info-field.redux-success i{color:#a0ca6c}.redux-info-field.redux-critical{background-color:#fba1a3;border-color:#b84f5b;color:#981225}.redux-info-field.redux-critical i{color:#dd767d}.redux-info-field.redux-info{background-color:#d3e4f4;border-color:#a9b6c2;color:#5c80a1}.redux-info-field.redux-info i{color:#afc6da}.redux-notice-field{margin:15px 0 0;background-color:#fff;border:0;border-left:4px solid #f3f3f3;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);box-shadow:0 1px 1px 0 rgba(0,0,0,0.1);padding:1px 12px}.redux-notice-field h1,.redux-notice-field h2,.redux-notice-field h3,.redux-notice-field h4,.redux-notice-field h5,.redux-notice-field h6{border-bottom:0 !important}.redux-notice-field p{margin:0.5em 0;padding:2px}.redux-notice-field .redux-info-icon{display:inline-block;margin-right:15px}.redux-notice-field .redux-info-icon i{font-size:2em}.redux-notice-field .redux-info-desc{display:inline-block;vertical-align:top}.redux-notice-field.redux-info{border-left:4px solid #0099d5}.redux-notice-field.redux-success{border-left:4px solid #7ad03a}.redux-notice-field.redux-warning{border-left:4px solid #fbeba4}.redux-notice-field.redux-critical{border-left:4px solid #dd3d36}.redux-main .redux-field-container.redux-container-info{padding:0}.wp-customizer .hasIcon.redux-notice-field .redux-info-desc,.wp-customizer .hasIcon.redux-info-field .redux-info-desc{display:block;margin-left:43px}.wp-customizer .hasIcon.redux-notice-field .redux-info-icon,.wp-customizer .hasIcon.redux-info-field .redux-info-icon{float:left}.wp-customizer .redux-main .customize-control.customize-control-redux-info{border-bottom:0}.redux-container-link_color .linkColor{display:inline-block;padding-right:10px;padding-bottom:7px}.redux-container-link_color .linkColor strong{display:table;margin-bottom:5px;margin-left:3px;font-size:12px;font-weight:normal;color:#999}.redux-main .redux-media-slider{width:40%;display:inline-block;margin-left:30px}.redux-main .redux-media-filter-container{padding-top:20px}.redux-main .redux-media-filter-container .container-label{margin-bottom:20px;padding-bottom:1px;border-bottom:1px solid #e7e7e7;font-weight:600;font-size:12px;color:#999}.redux-main .redux-media-filter-container .media-filter{display:inline-block;width:47%;margin-bottom:5px}.redux-main .redux-media-filter-container .media-filter label{display:inline-block;width:130px;color:#999}.redux-main .redux-media-filter-container .media-filter label.disabled .filter-value{color:#ccc}.redux-container-multi_text ul.redux-multi-text{margin:0;padding:0}.redux-container-multi_text .redux-multi-text-add{clear:both;margin:5px 0}.redux-container-multi_text a.redux-multi-text-remove.deletion{color:#f00;padding:2px 4px;margin-left:5px}.redux-container-multi_text a.redux-multi-text-remove.deletion:hover{background:#ff0;color:#fff;text-decoration:none}@media screen and (max-width: 782px){.redux-container-multi_text input{clear:both}.redux-container-multi_text .redux-multi-text-remove{margin:0;float:right}}.wp-customizer .redux-container-multi_text .button{float:right}.wp-customizer .redux-container-multi_text .redux-multi-text-remove{float:right;margin-bottom:5px}.wp-customizer .redux-container-multi_text ul.redux-multi-text input{width:100% !important}.redux-container-palette label{border:3px solid transparent;border-color:transparent !important;border-radius:0;width:100% !important;display:block}.redux-container-palette label.ui-button.ui-widget{width:95%;background:none;padding:0}.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-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-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"]}
|
redux-core/assets/js/redux.js
CHANGED
@@ -88,7 +88,7 @@
|
|
88 |
$( '.redux-action_bar .spinner' ).removeClass( 'is-active' );
|
89 |
alert( redux.optName.ajax.alert );
|
90 |
} else {
|
91 |
-
redux.optName.
|
92 |
|
93 |
$( button ).click();
|
94 |
$( '.redux-action_bar input' ).attr( 'disabled', 'disabled' );
|
88 |
$( '.redux-action_bar .spinner' ).removeClass( 'is-active' );
|
89 |
alert( redux.optName.ajax.alert );
|
90 |
} else {
|
91 |
+
redux.optName.args.ajax_save = false;
|
92 |
|
93 |
$( button ).click();
|
94 |
$( '.redux-action_bar input' ).attr( 'disabled', 'disabled' );
|
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(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);
|
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.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/ajax-save.js
CHANGED
@@ -88,7 +88,7 @@
|
|
88 |
$( '.redux-action_bar .spinner' ).removeClass( 'is-active' );
|
89 |
alert( redux.optName.ajax.alert );
|
90 |
} else {
|
91 |
-
redux.optName.
|
92 |
|
93 |
$( button ).click();
|
94 |
$( '.redux-action_bar input' ).attr( 'disabled', 'disabled' );
|
88 |
$( '.redux-action_bar .spinner' ).removeClass( 'is-active' );
|
89 |
alert( redux.optName.ajax.alert );
|
90 |
} else {
|
91 |
+
redux.optName.args.ajax_save = false;
|
92 |
|
93 |
$( button ).click();
|
94 |
$( '.redux-action_bar input' ).attr( 'disabled', 'disabled' );
|
redux-core/framework.php
CHANGED
@@ -23,7 +23,7 @@ defined( 'ABSPATH' ) || exit;
|
|
23 |
|
24 |
require_once dirname( __FILE__ ) . '/class-redux-core.php';
|
25 |
|
26 |
-
Redux_Core::$version = '4.1.
|
27 |
Redux_Core::$redux_path = dirname( __FILE__ );
|
28 |
Redux_Core::instance();
|
29 |
|
23 |
|
24 |
require_once dirname( __FILE__ ) . '/class-redux-core.php';
|
25 |
|
26 |
+
Redux_Core::$version = '4.1.21';
|
27 |
Redux_Core::$redux_path = dirname( __FILE__ );
|
28 |
Redux_Core::instance();
|
29 |
|
redux-core/inc/classes/class-redux-admin-notices.php
CHANGED
@@ -215,7 +215,7 @@ if ( ! class_exists( 'Redux_Admin_Notices', false ) ) {
|
|
215 |
// Get the user id.
|
216 |
$userid = $current_user->ID;
|
217 |
|
218 |
-
if ( isset( $_POST['nonce'] ) && ! wp_verify_nonce( sanitize_key( wp_unslash( $_POST['nonce'] ) ), $id . $userid . 'nonce' ) ) {
|
219 |
die( 0 );
|
220 |
} else {
|
221 |
// Add the dismiss request to the user meta.
|
215 |
// Get the user id.
|
216 |
$userid = $current_user->ID;
|
217 |
|
218 |
+
if ( ! isset( $_POST['nonce'] ) || ( isset( $_POST['nonce'] ) && ! wp_verify_nonce( sanitize_key( wp_unslash( $_POST['nonce'] ) ), $id . $userid . 'nonce' ) ) ) {
|
219 |
die( 0 );
|
220 |
} else {
|
221 |
// Add the dismiss request to the user meta.
|
redux-core/inc/classes/class-redux-ajax-save.php
CHANGED
@@ -34,7 +34,7 @@ if ( ! class_exists( 'Redux_AJAX_Save', false ) ) {
|
|
34 |
public function save() {
|
35 |
$core = $this->core();
|
36 |
|
37 |
-
if ( isset( $_REQUEST['nonce'] ) && ! wp_verify_nonce( sanitize_key( wp_unslash( $_REQUEST['nonce'] ) ), 'redux_ajax_nonce' . $this->args['opt_name'] ) ) {
|
38 |
echo wp_json_encode(
|
39 |
array(
|
40 |
'status' => esc_html__( 'Invalid security credential. Please reload the page and try again.', 'redux-framework' ),
|
34 |
public function save() {
|
35 |
$core = $this->core();
|
36 |
|
37 |
+
if ( ! isset( $_POST['nonce'] ) || ( isset( $_REQUEST['nonce'] ) && ! wp_verify_nonce( sanitize_key( wp_unslash( $_REQUEST['nonce'] ) ), 'redux_ajax_nonce' . $this->args['opt_name'] ) ) ) {
|
38 |
echo wp_json_encode(
|
39 |
array(
|
40 |
'status' => esc_html__( 'Invalid security credential. Please reload the page and try again.', 'redux-framework' ),
|
redux-core/inc/classes/class-redux-api.php
CHANGED
@@ -236,12 +236,6 @@ if ( ! class_exists( 'Redux', false ) ) {
|
|
236 |
$ext_class = Redux_Functions::class_exists_ex( $field_classes );
|
237 |
if ( false !== $ext_class ) {
|
238 |
$redux_framework->extensions[ $name ] = new $ext_class( $redux_framework );
|
239 |
-
// Backwards compatibility for extensions.
|
240 |
-
if ( ! is_subclass_of( $redux_framework->extensions[ $name ], 'Redux_Extension_Abstract' ) ) {
|
241 |
-
$new_class_name = $ext_class . '_extended';
|
242 |
-
self::$extension_compatibility = true;
|
243 |
-
$redux_framework->extensions[ $name ] = Redux_Functions_Ex::extension_compatibility( $redux_framework, $extension['path'], $ext_class, $new_class_name, $name );
|
244 |
-
}
|
245 |
} elseif ( is_admin() && true === $redux_framework->args['dev_mode'] ) {
|
246 |
echo '<div id="message" class="error"><p>No class named <strong>' . esc_html( $extension['class'] ) . '</strong> exists. Please verify your extension path.</p></div>';
|
247 |
}
|
236 |
$ext_class = Redux_Functions::class_exists_ex( $field_classes );
|
237 |
if ( false !== $ext_class ) {
|
238 |
$redux_framework->extensions[ $name ] = new $ext_class( $redux_framework );
|
|
|
|
|
|
|
|
|
|
|
|
|
239 |
} elseif ( is_admin() && true === $redux_framework->args['dev_mode'] ) {
|
240 |
echo '<div id="message" class="error"><p>No class named <strong>' . esc_html( $extension['class'] ) . '</strong> exists. Please verify your extension path.</p></div>';
|
241 |
}
|
redux-core/inc/classes/class-redux-connection-banner.php
CHANGED
@@ -33,6 +33,33 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
33 |
**/
|
34 |
private static $instance = null;
|
35 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
/**
|
37 |
* Init function.
|
38 |
*
|
@@ -53,17 +80,63 @@ 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 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
57 |
add_action( 'current_screen', array( $this, 'maybe_initialize_hooks' ) );
|
58 |
}
|
59 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
60 |
public function admin_ajax() {
|
61 |
-
|
62 |
-
|
63 |
-
|
|
|
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' );
|
@@ -71,6 +144,12 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
71 |
die();
|
72 |
}
|
73 |
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
public function admin_body_class( $admin_body_class = '' ) {
|
75 |
$classes = explode( ' ', trim( $admin_body_class ) );
|
76 |
|
@@ -94,7 +173,7 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
94 |
* @param $current_screen
|
95 |
*/
|
96 |
public function maybe_initialize_hooks( $current_screen ) {
|
97 |
-
//Redux_Functions_Ex::set_deactivated(); // Test code.
|
98 |
|
99 |
if ( Redux_Functions_Ex::activated() || 'hide' === get_option( 'redux-framework_tracking_notice', null ) ) {
|
100 |
return;
|
@@ -133,7 +212,6 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
133 |
wp_enqueue_script(
|
134 |
'Redux-connect-button',
|
135 |
'_inc/connect-button.js',
|
136 |
-
|
137 |
array( 'jquery' ),
|
138 |
Redux_Core::$version,
|
139 |
true
|
@@ -141,7 +219,7 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
141 |
|
142 |
wp_enqueue_style(
|
143 |
'Redux-connect-button',
|
144 |
-
|
145 |
);
|
146 |
|
147 |
$ReduxApiUrl = wp_parse_url( Redux::connection()->api_url( '' ) );
|
@@ -188,14 +266,16 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
188 |
*/
|
189 |
public function panel_admin_notice( $args ) {
|
190 |
|
|
|
|
|
191 |
$this->client = Redux_Core::$appsero;
|
192 |
// don't show tracking if a local server
|
193 |
|
194 |
if ( empty( $this->notice ) ) {
|
195 |
$name = 'Redux';
|
196 |
-
//if ( isset( $args['display_name'] ) && !empty( $args['display_name'] )) {
|
197 |
-
//
|
198 |
-
//}
|
199 |
$notice = sprintf( __( 'Register <strong>%1$s</strong> to enable automatic Google Font updates service. Plus unlock all free block templates in the Redux template library.', 'redux-framework' ), $name );
|
200 |
} else {
|
201 |
$notice = $this->notice;
|
@@ -205,11 +285,11 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
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(
|
209 |
echo $notice;
|
210 |
echo '</p><p class="submit">';
|
211 |
-
echo ' <a href="
|
212 |
-
echo ' <a href="
|
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 |
|
@@ -246,9 +326,10 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
246 |
*/
|
247 |
public function render_banner() {
|
248 |
|
|
|
249 |
|
250 |
?>
|
251 |
-
<div id="redux-connect-message" class="updated redux-banner-container" data-nonce="<?php echo wp_create_nonce(
|
252 |
<div class="redux-banner-container-top-text">
|
253 |
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><rect x="0" fill="none" width="24" height="24"/><g><path d="M12 2C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10S17.523 2 12 2zm1 15h-2v-2h2v2zm0-4h-2l-.5-6h3l-.5 6z"/></g></svg>
|
254 |
<span>
|
@@ -256,9 +337,9 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
256 |
</span>
|
257 |
</div>
|
258 |
<div class="redux-banner-inner-container">
|
259 |
-
<a href="
|
260 |
-
|
261 |
-
|
262 |
</a>
|
263 |
|
264 |
<div class="redux-banner-content-container">
|
@@ -267,18 +348,18 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
267 |
<div class="redux-banner-slide redux-banner-slide-one redux-slide-is-active">
|
268 |
|
269 |
<div class="redux-banner-content-icon redux-illo">
|
270 |
-
<a href="<?php echo esc_url( 'https://redux.io/?utm_source=plugin&utm_medium=appsero&utm_campaign=redux_banner_logo'); ?>" target="_blank"><img
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
<?php
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
?>
|
280 |
"
|
281 |
-
|
282 |
<img
|
283 |
src="<?php echo esc_url( Redux_Core::$url ); ?>assets/img/redux-powering-up.svg"
|
284 |
class="redux-banner-hide-phone-and-smaller"
|
@@ -296,9 +377,6 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
296 |
|
297 |
<div class="redux-banner-slide-text">
|
298 |
<h2><?php esc_html_e( 'Build better sites faster with Redux', 'redux-framework' ); ?></h2>
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
<p>
|
303 |
<?php
|
304 |
esc_html_e(
|
@@ -309,23 +387,24 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
309 |
</p>
|
310 |
|
311 |
<p><em>
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
|
|
318 |
</p>
|
319 |
|
320 |
<div class="redux-banner-button-container">
|
321 |
<span class="redux-banner-tos-blurb"><?php echo self::tos_blurb( 'plugin_dashboard' ); ?></span>
|
322 |
|
323 |
-
<a href="
|
324 |
class="button button-tiny button-link redux-connection-banner-action"
|
325 |
title="<?php esc_attr_e( 'No thanks', 'redux-framework' ); ?>" data-activate="false"><?php esc_html_e( 'No Thanks', 'redux-framework' ); ?></a>
|
326 |
|
327 |
-
<a href="
|
328 |
-
|
329 |
<?php esc_html_e( 'Register', 'redux-framework' ); ?>
|
330 |
</a>
|
331 |
</div>
|
@@ -351,90 +430,90 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
351 |
}
|
352 |
if ( 'plugins' === $current_screen->base ) :
|
353 |
?>
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
src="<?php echo esc_url( Redux_Core::$url ); ?>assets/img/security.svg"
|
385 |
alt="<?php esc_attr_e( 'Security & Backups', 'redux-framework' ); ?>"
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
</p>
|
|
|
399 |
</div>
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
<img
|
404 |
src="<?php echo esc_url( Redux_Core::$url ); ?>assets/img/redux-speed.svg"
|
405 |
alt="<?php esc_attr_e( 'Built-in Performance', 'redux-framework' ); ?>"
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
</p>
|
|
|
419 |
</div>
|
420 |
</div>
|
421 |
-
</div>
|
422 |
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
|
|
436 |
</div>
|
437 |
-
</div>
|
438 |
<?php
|
439 |
endif;
|
440 |
}
|
@@ -448,13 +527,13 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
448 |
<div class="squeezer">
|
449 |
<h2>
|
450 |
<?php
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
?>
|
459 |
</h2>
|
460 |
</div>
|
@@ -470,7 +549,7 @@ if ( ! class_exists( 'Redux_Connection_Banner', false ) ) {
|
|
470 |
*
|
471 |
* @echo string
|
472 |
*/
|
473 |
-
public static function tos_blurb($campaign =
|
474 |
return sprintf(
|
475 |
__( 'By clicking the <strong>Register</strong> button, you agree to our <a href="%1$s" target="_blank">terms of service</a>, to create an account, and to share details of your usage metrics with Redux.io.', 'redux-framework' ),
|
476 |
Redux_Functions_Ex::get_site_utm_url( 'terms', 'appsero', 'activate', $campaign )
|
33 |
**/
|
34 |
private static $instance = null;
|
35 |
|
36 |
+
/**
|
37 |
+
* Register option.
|
38 |
+
*
|
39 |
+
* @var string $register_option
|
40 |
+
*/
|
41 |
+
private $register_option = 'redux-connection-register';
|
42 |
+
/**
|
43 |
+
* Dismiss option.
|
44 |
+
*
|
45 |
+
* @var string $dismiss_option
|
46 |
+
*/
|
47 |
+
private $dismiss_option = 'redux-connection-dismiss';
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Nonce slug.
|
51 |
+
*
|
52 |
+
* @var string $dismiss_options
|
53 |
+
*/
|
54 |
+
private $nonce = 'redux-connection-nonce';
|
55 |
+
|
56 |
+
/**
|
57 |
+
* URLs.
|
58 |
+
*
|
59 |
+
* @var array $urls
|
60 |
+
*/
|
61 |
+
private $urls = array();
|
62 |
+
|
63 |
/**
|
64 |
* Init function.
|
65 |
*
|
80 |
* the admin_init action fires, we know that the admin is initialized at this point.
|
81 |
*/
|
82 |
private function __construct() {
|
83 |
+
$clean_get = $_GET; // phpcs:ignore WordPress.Security.NonceVerification.Recommended
|
84 |
+
if ( isset( $clean_get['_wpnonce'] ) && wp_verify_nonce( $clean_get['_wpnonce'], $this->nonce ) ) {
|
85 |
+
if ( isset( $clean_get[ $this->register_option ] ) ) {
|
86 |
+
Redux_Functions_Ex::set_activated( $clean_get[ $this->register_option ] );
|
87 |
+
return;
|
88 |
+
}
|
89 |
+
if ( isset( $clean_get[ $this->dismiss_option ] ) ) {
|
90 |
+
Redux_Functions_Ex::set_deactivated();
|
91 |
+
update_option( 'redux-framework_tracking_notice', 'hide' );
|
92 |
+
return;
|
93 |
+
}
|
94 |
+
}
|
95 |
+
|
96 |
+
add_action( 'wp_ajax_redux_activation', array( $this, 'admin_ajax' ) ); // Executed when logged in.
|
97 |
add_action( 'current_screen', array( $this, 'maybe_initialize_hooks' ) );
|
98 |
}
|
99 |
|
100 |
+
/**
|
101 |
+
* Get the URL for the current page to fallback if JS is broken.
|
102 |
+
*
|
103 |
+
* @param bool|string $location Used to determine the location of the banner for account creation.
|
104 |
+
* @since 4.1.21
|
105 |
+
* @return array
|
106 |
+
*/
|
107 |
+
private function get_urls( $location = true ) {
|
108 |
+
if ( ! empty( $this->urls ) ) {
|
109 |
+
return $this->urls;
|
110 |
+
}
|
111 |
+
|
112 |
+
global $pagenow;
|
113 |
+
|
114 |
+
$clean_get = $_GET; // phpcs:ignore WordPress.Security.NonceVerification.Recommended
|
115 |
+
if ( isset( $clean_get[ $this->register_option ] ) ) {
|
116 |
+
unset( $clean_get[ $this->register_option ] );
|
117 |
+
}
|
118 |
+
if ( isset( $clean_get[ $this->dismiss_option ] ) ) {
|
119 |
+
unset( $clean_get[ $this->dismiss_option ] );
|
120 |
+
}
|
121 |
+
$base_url = admin_url( add_query_arg( $clean_get, $pagenow ) );
|
122 |
+
|
123 |
+
return array(
|
124 |
+
'dismiss' => wp_nonce_url( add_query_arg( $this->dismiss_option, true, $base_url ), $this->nonce ),
|
125 |
+
'register' => wp_nonce_url( add_query_arg( $this->register_option, $location, $base_url ), $this->nonce ),
|
126 |
+
);
|
127 |
+
}
|
128 |
+
|
129 |
+
/**
|
130 |
+
* AJAX callback for dismissing the notice.
|
131 |
+
*/
|
132 |
public function admin_ajax() {
|
133 |
+
// phpcs:ignore WordPress.Security.NonceVerification.Recommended
|
134 |
+
$nonce = isset( $_REQUEST['nonce'] ) ? sanitize_text_field( wp_unslash( $_REQUEST['nonce'] ) ) : '';
|
135 |
+
if ( empty( $nonce ) || ! wp_verify_nonce( $nonce, $this->nonce ) ) {
|
136 |
+
die( __( 'Security check failed.', 'redux-framework' ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
137 |
}
|
138 |
if ( 'true' === $_REQUEST['activate'] ) {
|
139 |
+
Redux_Functions_Ex::set_activated( sanitize_text_field( wp_unslash( $_REQUEST['activate'] ) ) );
|
140 |
} else {
|
141 |
Redux_Functions_Ex::set_deactivated();
|
142 |
update_option( 'redux-framework_tracking_notice', 'hide' );
|
144 |
die();
|
145 |
}
|
146 |
|
147 |
+
/**
|
148 |
+
* AJAX callback for dismissing the notice.
|
149 |
+
*
|
150 |
+
* @param string $admin_body_class Class string.
|
151 |
+
* @return string
|
152 |
+
*/
|
153 |
public function admin_body_class( $admin_body_class = '' ) {
|
154 |
$classes = explode( ' ', trim( $admin_body_class ) );
|
155 |
|
173 |
* @param $current_screen
|
174 |
*/
|
175 |
public function maybe_initialize_hooks( $current_screen ) {
|
176 |
+
// Redux_Functions_Ex::set_deactivated(); // Test code.
|
177 |
|
178 |
if ( Redux_Functions_Ex::activated() || 'hide' === get_option( 'redux-framework_tracking_notice', null ) ) {
|
179 |
return;
|
212 |
wp_enqueue_script(
|
213 |
'Redux-connect-button',
|
214 |
'_inc/connect-button.js',
|
|
|
215 |
array( 'jquery' ),
|
216 |
Redux_Core::$version,
|
217 |
true
|
219 |
|
220 |
wp_enqueue_style(
|
221 |
'Redux-connect-button',
|
222 |
+
'css/Redux-connect.css'
|
223 |
);
|
224 |
|
225 |
$ReduxApiUrl = wp_parse_url( Redux::connection()->api_url( '' ) );
|
266 |
*/
|
267 |
public function panel_admin_notice( $args ) {
|
268 |
|
269 |
+
$urls = $this->get_urls( 'panel_banner' );
|
270 |
+
|
271 |
$this->client = Redux_Core::$appsero;
|
272 |
// don't show tracking if a local server
|
273 |
|
274 |
if ( empty( $this->notice ) ) {
|
275 |
$name = 'Redux';
|
276 |
+
// if ( isset( $args['display_name'] ) && !empty( $args['display_name'] )) {
|
277 |
+
// $name = $name . ' & '.$args['display_name'];
|
278 |
+
// }
|
279 |
$notice = sprintf( __( 'Register <strong>%1$s</strong> to enable automatic Google Font updates service. Plus unlock all free block templates in the Redux template library.', 'redux-framework' ), $name );
|
280 |
} else {
|
281 |
$notice = $this->notice;
|
285 |
|
286 |
$notice .= '<p class="description" style="display:none;">' . self::tos_blurb( 'option_panel' ) . ' </p>';
|
287 |
|
288 |
+
echo '<div class="updated" id="redux-connect-message" data-nonce="' . wp_create_nonce( $this->nonce ) . '" style="border-left-color: #24b0a6;"><p>';
|
289 |
echo $notice;
|
290 |
echo '</p><p class="submit">';
|
291 |
+
echo ' <a href="' . esc_url( $urls['register'] ) . '" class="button-primary button-large redux-activate-connection redux-connection-banner-action" data-url="' . admin_url( 'admin-ajax.php' ) . '" data-activate="panel_banner">' . __( 'Register Now', 'redux-framework' ) . '</a>';
|
292 |
+
echo ' <a href="' . esc_url( $urls['dismiss'] ) . '" style="color: #aaa;" class="redux-connection-banner-action" data-activate="false" data-url="' . admin_url( 'admin-ajax.php' ) . '">' . __( 'No thanks', 'redux-framework' ) . '</a>';
|
293 |
echo '</p></div>';
|
294 |
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>';
|
295 |
|
326 |
*/
|
327 |
public function render_banner() {
|
328 |
|
329 |
+
$urls = $this->get_urls( 'main_banner' );
|
330 |
|
331 |
?>
|
332 |
+
<div id="redux-connect-message" class="updated redux-banner-container" data-nonce="<?php echo wp_create_nonce( $this->nonce ); ?>">
|
333 |
<div class="redux-banner-container-top-text">
|
334 |
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><rect x="0" fill="none" width="24" height="24"/><g><path d="M12 2C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10S17.523 2 12 2zm1 15h-2v-2h2v2zm0-4h-2l-.5-6h3l-.5 6z"/></g></svg>
|
335 |
<span>
|
337 |
</span>
|
338 |
</div>
|
339 |
<div class="redux-banner-inner-container">
|
340 |
+
<a href="<?php echo esc_url( $urls['dismiss'] ); ?>" data-url="<?php echo admin_url( 'admin-ajax.php' ); ?>"
|
341 |
+
class="notice-dismiss redux-banner-svg-dismiss redux-connection-banner-action"
|
342 |
+
title="<?php esc_attr_e( 'Dismiss this notice', 'redux-framework' ); ?>" data-activate="false">
|
343 |
</a>
|
344 |
|
345 |
<div class="redux-banner-content-container">
|
348 |
<div class="redux-banner-slide redux-banner-slide-one redux-slide-is-active">
|
349 |
|
350 |
<div class="redux-banner-content-icon redux-illo">
|
351 |
+
<a href="<?php echo esc_url( 'https://redux.io/?utm_source=plugin&utm_medium=appsero&utm_campaign=redux_banner_logo' ); ?>" target="_blank"><img
|
352 |
+
src="<?php echo esc_url( Redux_Core::$url ); ?>assets/img/logo--color.svg"
|
353 |
+
class="redux-banner-content-logo"
|
354 |
+
alt="
|
355 |
<?php
|
356 |
+
esc_attr_e(
|
357 |
+
'Visit our website to learn more!',
|
358 |
+
'redux-framework'
|
359 |
+
);
|
360 |
?>
|
361 |
"
|
362 |
+
/></a>
|
363 |
<img
|
364 |
src="<?php echo esc_url( Redux_Core::$url ); ?>assets/img/redux-powering-up.svg"
|
365 |
class="redux-banner-hide-phone-and-smaller"
|
377 |
|
378 |
<div class="redux-banner-slide-text">
|
379 |
<h2><?php esc_html_e( 'Build better sites faster with Redux', 'redux-framework' ); ?></h2>
|
|
|
|
|
|
|
380 |
<p>
|
381 |
<?php
|
382 |
esc_html_e(
|
387 |
</p>
|
388 |
|
389 |
<p><em>
|
390 |
+
<?php
|
391 |
+
esc_html_e(
|
392 |
+
'No registration is required to use Redux as you always have. By registering for our service you gain access to Google Font updates as well as access to all free templates in our block template library.',
|
393 |
+
'redux-framework'
|
394 |
+
);
|
395 |
+
?>
|
396 |
+
</em>
|
397 |
</p>
|
398 |
|
399 |
<div class="redux-banner-button-container">
|
400 |
<span class="redux-banner-tos-blurb"><?php echo self::tos_blurb( 'plugin_dashboard' ); ?></span>
|
401 |
|
402 |
+
<a href="<?php echo esc_url( $urls['dismiss'] ); ?>" data-url="<?php echo admin_url( 'admin-ajax.php' ); ?>"
|
403 |
class="button button-tiny button-link redux-connection-banner-action"
|
404 |
title="<?php esc_attr_e( 'No thanks', 'redux-framework' ); ?>" data-activate="false"><?php esc_html_e( 'No Thanks', 'redux-framework' ); ?></a>
|
405 |
|
406 |
+
<a href="<?php echo esc_url( $urls['register'] ); ?>" data-url="<?php echo admin_url( 'admin-ajax.php' ); ?>" data-activate="main_banner"
|
407 |
+
class="button button-primary button-large redux-alt-connect-button redux-connection-banner-action">
|
408 |
<?php esc_html_e( 'Register', 'redux-framework' ); ?>
|
409 |
</a>
|
410 |
</div>
|
430 |
}
|
431 |
if ( 'plugins' === $current_screen->base ) :
|
432 |
?>
|
433 |
+
?>
|
434 |
+
<div class="redux-banner-full-container">
|
435 |
+
<div class="redux-banner-full-container-card">
|
436 |
+
<div class="redux-banner-full-dismiss">
|
437 |
+
<svg class="redux-banner-svg-dismiss" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><title>Dismiss Redux Connection Window</title><rect x="0" fill="none" /><g><path d="M17.705 7.705l-1.41-1.41L12 10.59 7.705 6.295l-1.41 1.41L10.59 12l-4.295 4.295 1.41 1.41L12 13.41l4.295 4.295 1.41-1.41L13.41 12l4.295-4.295z"/></g></svg>
|
438 |
+
</div>
|
439 |
|
440 |
+
<img
|
441 |
+
src="<?php echo esc_url( Redux_Core::$url ); ?>assets/img/logo.svg"
|
442 |
+
alt="<?php esc_attr_e( 'Redux Logo', 'redux-template' ); ?>"
|
443 |
+
class="redux-banner-logo"
|
444 |
+
/>
|
445 |
|
446 |
+
<div class="redux-banner-full-step-header">
|
447 |
+
<h2 class="redux-banner-full-step-header-title"><?php esc_html_e( 'Activate essential WordPress security and performance tools by setting up Redux', 'redux-framework' ); ?></h2>
|
448 |
+
</div>
|
449 |
+
<p class="redux-banner-full-tos-blurb">
|
450 |
+
<?php self::tos_blurb( 'fullscreen' ); ?>
|
451 |
+
</p>
|
452 |
+
<p class="redux-banner-button-container">
|
453 |
+
<a href=""
|
454 |
+
class="dops-button is-primary redux-button">
|
455 |
+
<?php esc_html_e( 'Register', 'redux-framework' ); ?>
|
456 |
+
</a>
|
457 |
+
</p>
|
458 |
+
|
459 |
+
<div class="redux-banner-full-row" id="Redux-connection-cards">
|
460 |
+
<div class="redux-banner-full-slide">
|
461 |
+
<div class="redux-banner-full-slide-card illustration">
|
462 |
+
<img
|
463 |
src="<?php echo esc_url( Redux_Core::$url ); ?>assets/img/security.svg"
|
464 |
alt="<?php esc_attr_e( 'Security & Backups', 'redux-framework' ); ?>"
|
465 |
+
/>
|
466 |
+
</div>
|
467 |
+
<div class="redux-banner-full-slide-card">
|
468 |
+
<p>
|
469 |
+
<?php
|
470 |
+
esc_html_e(
|
471 |
+
'Redux protects you against brute force attacks and unauthorized logins. ' .
|
472 |
+
'Basic protection is always free, while premium plans add unlimited backups of your whole site, ' .
|
473 |
+
'spam protection, malware scanning, and automated fixes.',
|
474 |
+
'redux-framework'
|
475 |
+
);
|
476 |
+
?>
|
477 |
</p>
|
478 |
+
</div>
|
479 |
</div>
|
480 |
+
<div class="redux-banner-full-slide">
|
481 |
+
<div class="redux-banner-full-slide-card illustration">
|
482 |
+
<img
|
|
|
483 |
src="<?php echo esc_url( Redux_Core::$url ); ?>assets/img/redux-speed.svg"
|
484 |
alt="<?php esc_attr_e( 'Built-in Performance', 'redux-framework' ); ?>"
|
485 |
+
/>
|
486 |
+
</div>
|
487 |
+
<div class="redux-banner-full-slide-card">
|
488 |
+
<p>
|
489 |
+
<?php
|
490 |
+
esc_html_e(
|
491 |
+
'Activate site accelerator tools and watch your page load times decrease—' .
|
492 |
+
"we'll optimize your images and serve them from our own powerful global network of servers, " .
|
493 |
+
'and speed up your mobile site to reduce bandwidth usage.',
|
494 |
+
'redux-framework'
|
495 |
+
);
|
496 |
+
?>
|
497 |
</p>
|
498 |
+
</div>
|
499 |
</div>
|
500 |
</div>
|
|
|
501 |
|
502 |
+
<?php if ( 'plugins' === $current_screen->base ) : ?>
|
503 |
+
<p class="redux-banner-full-dismiss-paragraph">
|
504 |
+
<a>
|
505 |
+
<?php
|
506 |
+
echo esc_html_x(
|
507 |
+
'Not now, thank you.',
|
508 |
+
'a link that closes the modal window that offers to connect Redux',
|
509 |
+
'redux-framework'
|
510 |
+
);
|
511 |
+
?>
|
512 |
+
</a>
|
513 |
+
</p>
|
514 |
+
<?php endif; ?>
|
515 |
+
</div>
|
516 |
</div>
|
|
|
517 |
<?php
|
518 |
endif;
|
519 |
}
|
527 |
<div class="squeezer">
|
528 |
<h2>
|
529 |
<?php
|
530 |
+
echo wp_kses(
|
531 |
+
__(
|
532 |
+
'<strong>Redux is activated!</strong> Each site on your network must be connected individually by an admin on that site.',
|
533 |
+
'Redux'
|
534 |
+
),
|
535 |
+
array( 'strong' => array() )
|
536 |
+
);
|
537 |
?>
|
538 |
</h2>
|
539 |
</div>
|
549 |
*
|
550 |
* @echo string
|
551 |
*/
|
552 |
+
public static function tos_blurb( $campaign = 'options_panel' ) {
|
553 |
return sprintf(
|
554 |
__( 'By clicking the <strong>Register</strong> button, you agree to our <a href="%1$s" target="_blank">terms of service</a>, to create an account, and to share details of your usage metrics with Redux.io.', 'redux-framework' ),
|
555 |
Redux_Functions_Ex::get_site_utm_url( 'terms', 'appsero', 'activate', $campaign )
|
redux-core/inc/classes/class-redux-enable-gutenberg.php
CHANGED
@@ -73,7 +73,7 @@ if ( ! class_exists( 'Redux_Enable_Gutenberg', false ) ) {
|
|
73 |
*
|
74 |
* @var bool
|
75 |
*/
|
76 |
-
|
77 |
|
78 |
/**
|
79 |
* Quick fix known plugins that disable.
|
@@ -133,11 +133,6 @@ if ( ! class_exists( 'Redux_Enable_Gutenberg', false ) ) {
|
|
133 |
*/
|
134 |
public static function cleanup_options( $slug = '' ) {
|
135 |
if ( ! empty( $slug ) ) {
|
136 |
-
$data = array(
|
137 |
-
'slug' => $slug,
|
138 |
-
'name' => '',
|
139 |
-
);
|
140 |
-
|
141 |
$obj = new Redux_Enable_Gutenberg(
|
142 |
array(
|
143 |
'slug' => $slug,
|
@@ -221,10 +216,10 @@ if ( ! class_exists( 'Redux_Enable_Gutenberg', false ) ) {
|
|
221 |
$data['url'] = $deativate_url;
|
222 |
if ( 1 === count( self::$known_plugins ) ) {
|
223 |
$data['button'] = __( 'Disable Plugin', 'redux-framework' );
|
224 |
-
$data['content'] = sprintf( '<p>The following plugin is preventing Gutenberg from working: %s. To automatically fix the issue click the <strong>Disable Plugin</strong> button on the right.</p>', $plugins, esc_url( 'https://kinsta.com/blog/gutenberg-wordpress-editor/' ) );
|
225 |
} else {
|
226 |
$data['button'] = __( 'Disable Plugins', 'redux-framework' );
|
227 |
-
$data['content'] = sprintf( '<p>The following plugin is preventing Gutenberg from working: %s. To automatically fix the issue click the <strong>Disable Plugins</strong> button on the right.</p>', $plugins, esc_url( 'https://kinsta.com/blog/gutenberg-wordpress-editor/' ) );
|
228 |
}
|
229 |
}
|
230 |
|
73 |
*
|
74 |
* @var bool
|
75 |
*/
|
76 |
+
public static $is_disabled = false;
|
77 |
|
78 |
/**
|
79 |
* Quick fix known plugins that disable.
|
133 |
*/
|
134 |
public static function cleanup_options( $slug = '' ) {
|
135 |
if ( ! empty( $slug ) ) {
|
|
|
|
|
|
|
|
|
|
|
136 |
$obj = new Redux_Enable_Gutenberg(
|
137 |
array(
|
138 |
'slug' => $slug,
|
216 |
$data['url'] = $deativate_url;
|
217 |
if ( 1 === count( self::$known_plugins ) ) {
|
218 |
$data['button'] = __( 'Disable Plugin', 'redux-framework' );
|
219 |
+
$data['content'] = sprintf( '<p>The following plugin is preventing Gutenberg from working: %s. To automatically fix the issue click the <strong>Disable Plugin</strong> button on the right and Redux will enable it for you.</p>', $plugins, esc_url( 'https://kinsta.com/blog/gutenberg-wordpress-editor/' ) );
|
220 |
} else {
|
221 |
$data['button'] = __( 'Disable Plugins', 'redux-framework' );
|
222 |
+
$data['content'] = sprintf( '<p>The following plugin is preventing Gutenberg from working: %s. To automatically fix the issue click the <strong>Disable Plugins</strong> button on the right and Redux will enable it for you.</p>', $plugins, esc_url( 'https://kinsta.com/blog/gutenberg-wordpress-editor/' ) );
|
223 |
}
|
224 |
}
|
225 |
|
redux-core/inc/classes/class-redux-enqueue.php
CHANGED
@@ -741,8 +741,8 @@ if ( ! class_exists( 'Redux_Enqueue', false ) ) {
|
|
741 |
// Shim for extension compatibility.
|
742 |
if ( Redux::$extension_compatibility ) {
|
743 |
$this->repeater_data = Redux_Functions_Ex::nested_wp_parse_args(
|
744 |
-
$this->
|
745 |
-
$core->
|
746 |
);
|
747 |
}
|
748 |
|
741 |
// Shim for extension compatibility.
|
742 |
if ( Redux::$extension_compatibility ) {
|
743 |
$this->repeater_data = Redux_Functions_Ex::nested_wp_parse_args(
|
744 |
+
$this->repeater_data,
|
745 |
+
$core->localize_data
|
746 |
);
|
747 |
}
|
748 |
|
redux-core/inc/classes/class-redux-extensions.php
CHANGED
@@ -73,6 +73,19 @@ if ( ! class_exists( 'Redux_Extensions', false ) ) {
|
|
73 |
|
74 |
$path = untrailingslashit( $path );
|
75 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
Redux::set_extensions( $core->args['opt_name'], $path, true );
|
77 |
|
78 |
/**
|
73 |
|
74 |
$path = untrailingslashit( $path );
|
75 |
|
76 |
+
// Backwards compatibility for extensions.
|
77 |
+
$instance_extensions = Redux::get_extensions( $core->args['opt_name'], '' );
|
78 |
+
if ( ! empty( $instance_extensions ) ) {
|
79 |
+
foreach ( $instance_extensions as $name => $extension ) {
|
80 |
+
if ( ! is_subclass_of( $core->extensions[ $name ], 'Redux_Extension_Abstract' ) ) {
|
81 |
+
$ext_class = get_class( $core->extensions[ $name ] );
|
82 |
+
$new_class_name = $ext_class . '_extended';
|
83 |
+
Redux::$extension_compatibility = true;
|
84 |
+
$core->extensions[ $name ] = Redux_Functions_Ex::extension_compatibility( $core, $extension['path'], $ext_class, $new_class_name, $name );
|
85 |
+
}
|
86 |
+
}
|
87 |
+
}
|
88 |
+
|
89 |
Redux::set_extensions( $core->args['opt_name'], $path, true );
|
90 |
|
91 |
/**
|
redux-core/inc/classes/class-redux-instances.php
CHANGED
@@ -39,7 +39,7 @@ if ( ! class_exists( 'Redux_Instances', false ) ) {
|
|
39 |
return self::$instances[ $opt_name ];
|
40 |
}
|
41 |
|
42 |
-
return
|
43 |
}
|
44 |
|
45 |
/**
|
39 |
return self::$instances[ $opt_name ];
|
40 |
}
|
41 |
|
42 |
+
return new self();
|
43 |
}
|
44 |
|
45 |
/**
|
redux-core/inc/classes/class-redux-options-constructor.php
CHANGED
@@ -752,12 +752,12 @@ if ( ! class_exists( 'Redux_Options_Object', false ) ) {
|
|
752 |
if ( ! empty( $import ) ) {
|
753 |
$imported_options = json_decode( $import, true );
|
754 |
}
|
755 |
-
if ( ! empty( $imported_options ) && is_array( $imported_options ) && isset( $imported_options['redux-backup'] ) && 1 === $imported_options['redux-backup'] ) {
|
756 |
$core->transients['changed_values'] = array();
|
757 |
foreach ( $plugin_options as $key => $value ) {
|
758 |
if ( isset( $imported_options[ $key ] ) && $value !== $imported_options[ $key ] ) {
|
759 |
-
$core->transients['changed_values'][ $key ] = $value;
|
760 |
$plugin_options[ $key ] = $value;
|
|
|
761 |
}
|
762 |
}
|
763 |
|
752 |
if ( ! empty( $import ) ) {
|
753 |
$imported_options = json_decode( $import, true );
|
754 |
}
|
755 |
+
if ( ! empty( $imported_options ) && is_array( $imported_options ) && isset( $imported_options['redux-backup'] ) && '1' === $imported_options['redux-backup'] ) {
|
756 |
$core->transients['changed_values'] = array();
|
757 |
foreach ( $plugin_options as $key => $value ) {
|
758 |
if ( isset( $imported_options[ $key ] ) && $value !== $imported_options[ $key ] ) {
|
|
|
759 |
$plugin_options[ $key ] = $value;
|
760 |
+
$core->transients['changed_values'][ $key ] = $value;
|
761 |
}
|
762 |
}
|
763 |
|
redux-core/inc/classes/class-redux-output.php
CHANGED
@@ -214,8 +214,7 @@ if ( ! class_exists( 'Redux_Output', false ) ) {
|
|
214 |
<?php
|
215 |
} elseif ( ! $core->args['disable_google_fonts_link'] ) {
|
216 |
$url = $typography->make_google_web_font_link( $core->typography );
|
217 |
-
|
218 |
-
wp_enqueue_style( 'redux-google-fonts-' . $core->args['opt_name'], $typography->make_google_web_font_link( $core->typography ), array(), $version, 'all' );
|
219 |
add_filter( 'style_loader_tag', array( $this, 'add_style_attributes' ), 10, 4 );
|
220 |
add_filter( 'wp_resource_hints', array( $this, 'google_fonts_preconnect' ), 10, 2 );
|
221 |
}
|
@@ -259,7 +258,7 @@ if ( ! class_exists( 'Redux_Output', false ) ) {
|
|
259 |
public function add_style_attributes( $html = '', $handle = '', $href = '', $media = '' ) {
|
260 |
if ( Redux_Functions_Ex::string_starts_with( $handle, 'redux-google-fonts-' ) ) {
|
261 |
// Revamp thanks to Harry: https://csswizardry.com/2020/05/the-fastest-google-fonts/.
|
262 |
-
$href = urldecode( $href );
|
263 |
$new_html = '';
|
264 |
$new_html .= '<link rel="preload" as="style" href="' . esc_attr( $href ) . '" />';
|
265 |
$new_html .= '<link rel="stylesheet" href="' . esc_attr( $href ) . '" media="print" onload="this.media=\'all\'">'; // phpcs:ignore WordPress.WP.EnqueuedResources.NonEnqueuedStylesheet
|
@@ -357,7 +356,7 @@ if ( ! class_exists( 'Redux_Output', false ) ) {
|
|
357 |
// phpcs:ignore WordPress.NamingConventions.ValidVariableName
|
358 |
if ( ! empty( $core->outputCSS ) && ( true === $core->args['output_tag'] || ( isset( $_POST['customized'] ) && isset( $_POST['nonce'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['nonce'] ) ), 'preview-customize_' . wp_get_theme()->get_stylesheet() ) ) ) ) {
|
359 |
// phpcs:ignore WordPress.NamingConventions.ValidVariableName, WordPress.Security.EscapeOutput
|
360 |
-
echo '<style
|
361 |
}
|
362 |
}
|
363 |
|
214 |
<?php
|
215 |
} elseif ( ! $core->args['disable_google_fonts_link'] ) {
|
216 |
$url = $typography->make_google_web_font_link( $core->typography );
|
217 |
+
wp_enqueue_style( 'redux-google-fonts-' . $core->args['opt_name'], $url, array(), $version, 'all' );
|
|
|
218 |
add_filter( 'style_loader_tag', array( $this, 'add_style_attributes' ), 10, 4 );
|
219 |
add_filter( 'wp_resource_hints', array( $this, 'google_fonts_preconnect' ), 10, 2 );
|
220 |
}
|
258 |
public function add_style_attributes( $html = '', $handle = '', $href = '', $media = '' ) {
|
259 |
if ( Redux_Functions_Ex::string_starts_with( $handle, 'redux-google-fonts-' ) ) {
|
260 |
// Revamp thanks to Harry: https://csswizardry.com/2020/05/the-fastest-google-fonts/.
|
261 |
+
$href = str_replace( array( '|', ' ' ), array( '%7C', '%20' ), urldecode( $href ) );
|
262 |
$new_html = '';
|
263 |
$new_html .= '<link rel="preload" as="style" href="' . esc_attr( $href ) . '" />';
|
264 |
$new_html .= '<link rel="stylesheet" href="' . esc_attr( $href ) . '" media="print" onload="this.media=\'all\'">'; // phpcs:ignore WordPress.WP.EnqueuedResources.NonEnqueuedStylesheet
|
356 |
// phpcs:ignore WordPress.NamingConventions.ValidVariableName
|
357 |
if ( ! empty( $core->outputCSS ) && ( true === $core->args['output_tag'] || ( isset( $_POST['customized'] ) && isset( $_POST['nonce'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['nonce'] ) ), 'preview-customize_' . wp_get_theme()->get_stylesheet() ) ) ) ) {
|
358 |
// phpcs:ignore WordPress.NamingConventions.ValidVariableName, WordPress.Security.EscapeOutput
|
359 |
+
echo '<style id="' . esc_attr( $core->args['opt_name'] ) . '-dynamic-css" title="dynamic-css" class="redux-options-output">' . $core->outputCSS . '</style>';
|
360 |
}
|
361 |
}
|
362 |
|
redux-core/inc/extensions/options_object/class-redux-extension-options-object.php
CHANGED
@@ -27,6 +27,14 @@ if ( ! class_exists( 'Redux_Extension_Options_Object', false ) ) {
|
|
27 |
*/
|
28 |
public static $version = '4.0';
|
29 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
/**
|
31 |
* Is field bit.
|
32 |
*
|
@@ -47,9 +55,8 @@ if ( ! class_exists( 'Redux_Extension_Options_Object', false ) ) {
|
|
47 |
public function __construct( $parent ) {
|
48 |
parent::__construct( $parent, __FILE__ );
|
49 |
|
50 |
-
$this->add_field(
|
51 |
-
|
52 |
-
$this->is_field = Redux_Helpers::is_field_in_use( $parent, 'options_object' );
|
53 |
|
54 |
if ( ! $this->is_field && $this->parent->args['dev_mode'] && $this->parent->args['show_options_object'] ) {
|
55 |
$this->add_section();
|
27 |
*/
|
28 |
public static $version = '4.0';
|
29 |
|
30 |
+
/**
|
31 |
+
* Set the name of the field. Ideally, this will also be your extension's name.
|
32 |
+
* Please use underscores and NOT dashes.
|
33 |
+
*
|
34 |
+
* @var string
|
35 |
+
*/
|
36 |
+
private $field_name = 'my_extension';
|
37 |
+
|
38 |
/**
|
39 |
* Is field bit.
|
40 |
*
|
55 |
public function __construct( $parent ) {
|
56 |
parent::__construct( $parent, __FILE__ );
|
57 |
|
58 |
+
$this->add_field( $this->field_name );
|
59 |
+
$this->is_field = Redux_Helpers::is_field_in_use( $parent, $this->field_name );
|
|
|
60 |
|
61 |
if ( ! $this->is_field && $this->parent->args['dev_mode'] && $this->parent->args['show_options_object'] ) {
|
62 |
$this->add_section();
|
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=d.redux.getSelector(e,"image_select"),d(e).each(function(){var
|
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 l=d(this),e=l;l.hasClass("redux-field-container")||(e=l.parents(".redux-field-container:first")),e.is(":hidden")||e.hasClass("redux-field-init")&&(e.removeClass("redux-field-init"),l.find(".redux-image-select label img, .redux-image-select label .tiles").click(function(e){var t,i,s,r,a=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-"+a))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)&&(l.find('label[for="'+a+'"]').addClass("redux-image-select-selected").find('input[type="radio"]').attr("checked",!0),window.onbeforeunload=null,0===(r=d('textarea[name="'+redux.optName.args.opt_name+'[import_code]"')).length?d(this).append('<textarea id="import-code-value" style="display:none;" name="'+redux.optName.args.opt_name+'[import_code]">'+JSON.stringify(i)+"</textarea>"):r.val(JSON.stringify(i)),0!==d("#publishing-action #publish").length?d("#publish").click():d("#redux-import").click()),!1;l.find('label[for="'+a+'"]').addClass("redux-image-select-selected").find('input[type="radio"]').prop("checked",!0).trigger("change"),redux_change(d(this).closest("label").find('input[type="radio"]'))}),l.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/text/class-redux-text.php
CHANGED
@@ -100,7 +100,7 @@ if ( ! class_exists( 'Redux_Text', false ) ) {
|
|
100 |
$attributes['id'] = esc_attr( $this->field['id'] . $k );
|
101 |
|
102 |
$attributes_string = $this->render_attributes( $attributes );
|
103 |
-
echo '<div class="input_wrapper"><label for="' . $attributes['name'] . '">' . $
|
104 |
|
105 |
}
|
106 |
} else {
|
100 |
$attributes['id'] = esc_attr( $this->field['id'] . $k );
|
101 |
|
102 |
$attributes_string = $this->render_attributes( $attributes );
|
103 |
+
echo '<div class="input_wrapper"><label for="' . $attributes['name'] . '">' . $v . '</label><input placeholder="' . $v . '" ' . $attributes_string . '></div>'; // phpcs:ignore WordPress.Security.EscapeOutput
|
104 |
|
105 |
}
|
106 |
} else {
|
redux-core/inc/fields/typography/class-redux-typography.php
CHANGED
@@ -796,7 +796,7 @@ if ( ! class_exists( 'Redux_Typography', false ) ) {
|
|
796 |
|
797 |
foreach ( $fonts as $family => $font ) {
|
798 |
if ( ! empty( $link ) ) {
|
799 |
-
$link .= '
|
800 |
}
|
801 |
$link .= $family;
|
802 |
|
796 |
|
797 |
foreach ( $fonts as $family => $font ) {
|
798 |
if ( ! empty( $link ) ) {
|
799 |
+
$link .= '|'; // Append a new font to the string.
|
800 |
}
|
801 |
$link .= $family;
|
802 |
|
redux-core/inc/fields/typography/redux-typography.js
CHANGED
@@ -767,7 +767,7 @@
|
|
767 |
}
|
768 |
|
769 |
// Weight and italic.
|
770 |
-
if ( - 1 !== style.indexOf( 'italic' ) ) {
|
771 |
that.find( '.typography-preview' ).css( 'font-style', 'italic' );
|
772 |
that.find( '.typography-font-style' ).val( 'italic' );
|
773 |
style = style.replace( 'italic', '' );
|
767 |
}
|
768 |
|
769 |
// Weight and italic.
|
770 |
+
if ( style && - 1 !== style.indexOf( 'italic' ) ) {
|
771 |
that.find( '.typography-preview' ).css( 'font-style', 'italic' );
|
772 |
that.find( '.typography-font-style' ).val( 'italic' );
|
773 |
style = style.replace( 'italic', '' );
|
redux-core/inc/fields/typography/redux-typography.min.js
CHANGED
@@ -1 +1 @@
|
|
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);
|
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)),x&&-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/welcome/class-redux-welcome.php
CHANGED
@@ -299,13 +299,13 @@ if ( ! class_exists( 'Redux_Welcome', false ) ) {
|
|
299 |
?>
|
300 |
<a
|
301 |
href="<?php echo esc_url( admin_url( add_query_arg( $query_args, 'tools.php' ) ) ); ?>"
|
302 |
-
class=" button-text button-demo"><?php echo esc_html__( 'Disable Demo
|
303 |
<?php
|
304 |
} else {
|
305 |
?>
|
306 |
<a
|
307 |
href="<?php echo esc_url( admin_url( add_query_arg( $query_args, 'tools.php' ) ) ); ?>"
|
308 |
-
class=" button-text button-demo active"><?php echo esc_html__( '
|
309 |
<?php
|
310 |
}
|
311 |
|
299 |
?>
|
300 |
<a
|
301 |
href="<?php echo esc_url( admin_url( add_query_arg( $query_args, 'tools.php' ) ) ); ?>"
|
302 |
+
class=" button-text button-demo"><?php echo esc_html__( 'Disable Panel Demo', 'redux-framework' ); ?></a>
|
303 |
<?php
|
304 |
} else {
|
305 |
?>
|
306 |
<a
|
307 |
href="<?php echo esc_url( admin_url( add_query_arg( $query_args, 'tools.php' ) ) ); ?>"
|
308 |
+
class=" button-text button-demo active"><?php echo esc_html__( 'Enable Panel Demo', 'redux-framework' ); ?></a>
|
309 |
<?php
|
310 |
}
|
311 |
|
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.
|
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.21
|
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
@@ -434,7 +434,7 @@ exports.push([module.i, "#redux-templatesImportCollectionBtn {\n vertical-align
|
|
434 |
|
435 |
exports = module.exports = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
436 |
// Module
|
437 |
-
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 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 text-align: center; }\n .redux-templates-modal-wrapper .section-box.premium-box input::-webkit-input-placeholder {\n /* WebKit browsers */\n color: #606a73;\n font-style: italic;\n opacity: 1; }\n .redux-templates-modal-wrapper .section-box.premium-box input:-moz-placeholder {\n /* Mozilla Firefox 4 to 18 */\n color: #606a73;\n font-style: italic;\n opacity: 1; }\n .redux-templates-modal-wrapper .section-box.premium-box input::-moz-placeholder {\n /* Mozilla Firefox 19+ */\n color: #606a73;\n font-style: italic;\n opacity: 1; }\n .redux-templates-modal-wrapper .section-box.premium-box input:-ms-input-placeholder {\n /* Internet Explorer 10+ */\n color: #606a73;\n font-style: italic;\n opacity: 1; }\n .redux-templates-modal-wrapper .section-box.premium-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-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: 250px;\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 .section-box.premium-box .subscription_key_button {\n margin-top: 40px; }\n .redux-templates-modal-wrapper .section-box.premium-box .subscription_key_button button {\n background: #f8f8f8;\n border: 1px solid #ddd; }\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-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: 250px;\n text-align: center;\n font-size: 1em; }\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-button i {\n margin-right: 10px; }\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-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", ""]);
|
438 |
|
439 |
|
440 |
|
@@ -528,6 +528,21 @@ exports.push([module.i, ".wp-full-overlay {\n margin-left: 300px; }\n\n@media s
|
|
528 |
|
529 |
|
530 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
531 |
/***/ }),
|
532 |
|
533 |
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./redux-templates/src/modals.scss":
|
@@ -8025,12 +8040,13 @@ __webpack_require__.r(__webpack_exports__);
|
|
8025 |
/* harmony import */ var _view_collection__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./view-collection */ "./redux-templates/src/modal-library/view-collection/index.js");
|
8026 |
/* harmony import */ var _view_saved__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./view-saved */ "./redux-templates/src/modal-library/view-saved/index.js");
|
8027 |
/* harmony import */ var _modal_import_wizard__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../modal-import-wizard */ "./redux-templates/src/modal-import-wizard/index.js");
|
8028 |
-
/* harmony import */ var
|
8029 |
-
/* harmony import */ var
|
8030 |
-
/* harmony import */ var
|
8031 |
-
/* harmony import */ var
|
8032 |
-
/* harmony import */ var
|
8033 |
-
/* harmony import */ var
|
|
|
8034 |
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
8035 |
|
8036 |
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
@@ -8063,6 +8079,7 @@ const _wp$element = wp.element,
|
|
8063 |
|
8064 |
|
8065 |
|
|
|
8066 |
function LibraryModal(props) {
|
8067 |
const fetchLibraryFromAPI = props.fetchLibraryFromAPI,
|
8068 |
activeCollection = props.activeCollection,
|
@@ -8086,6 +8103,11 @@ function LibraryModal(props) {
|
|
8086 |
escKeyPressed = _useState4[0],
|
8087 |
setEscKeyPressed = _useState4[1];
|
8088 |
|
|
|
|
|
|
|
|
|
|
|
8089 |
let stateLibrary = null;
|
8090 |
useEffect(() => {
|
8091 |
clearState();
|
@@ -8097,6 +8119,8 @@ function LibraryModal(props) {
|
|
8097 |
setLoaded(true);
|
8098 |
}
|
8099 |
|
|
|
|
|
8100 |
const handleKeyUp = ({
|
8101 |
keyCode
|
8102 |
}) => {
|
@@ -8130,7 +8154,7 @@ function LibraryModal(props) {
|
|
8130 |
|
8131 |
|
8132 |
const processImport = () => {
|
8133 |
-
if (importingTemplate) Object(
|
8134 |
};
|
8135 |
|
8136 |
return wp.element.createElement(_modal_manager__WEBPACK_IMPORTED_MODULE_1__["Modal"], {
|
@@ -8138,15 +8162,17 @@ function LibraryModal(props) {
|
|
8138 |
customClass: "redux-templates-builder-modal-template-list",
|
8139 |
openTimeoutMS: 0,
|
8140 |
closeTimeoutMS: 0
|
8141 |
-
}, wp.element.createElement(_components_tab_header__WEBPACK_IMPORTED_MODULE_2__["default"], null), errorMessages && errorMessages.length > 0 && wp.element.createElement(
|
8142 |
errorMessages: errorMessages
|
8143 |
}), wp.element.createElement("div", {
|
8144 |
className: "redux-templates-collections-modal-body"
|
8145 |
}, hasSidebar() && wp.element.createElement(_layout_with_sidebar__WEBPACK_IMPORTED_MODULE_3__["default"], null), hasSidebar() === false && activeItemType === 'collection' && wp.element.createElement(_view_collection__WEBPACK_IMPORTED_MODULE_4__["default"], null), hasSidebar() === false && activeItemType !== 'collection' && wp.element.createElement(_view_saved__WEBPACK_IMPORTED_MODULE_5__["default"], null)), importingTemplate && wp.element.createElement(_modal_import_wizard__WEBPACK_IMPORTED_MODULE_6__["default"], {
|
8146 |
startImportTemplate: processImport
|
8147 |
-
}),
|
|
|
|
|
8148 |
finalStatus: challengeFinalStatus
|
8149 |
-
}), !isChallengeOpen && wp.element.createElement(
|
8150 |
}
|
8151 |
|
8152 |
/* harmony default export */ __webpack_exports__["default"] = (compose([withDispatch(dispatch => {
|
@@ -8461,7 +8487,7 @@ function DependencyFilter(props) {
|
|
8461 |
}, wp.element.createElement("i", {
|
8462 |
className: "fa fa-info-circle"
|
8463 |
})))), wp.element.createElement("h3", null, "Third-Party Premium"), wp.element.createElement("ul", {
|
8464 |
-
|
8465 |
}, thirdPartyPlugins.sort((a, b) => {
|
8466 |
const pluginInstanceA = Object(_redux_templates_stores_dependencyHelper__WEBPACK_IMPORTED_MODULE_3__["pluginInfo"])(a);
|
8467 |
const pluginInstanceB = Object(_redux_templates_stores_dependencyHelper__WEBPACK_IMPORTED_MODULE_3__["pluginInfo"])(b);
|
@@ -10238,6 +10264,160 @@ var insertInto;
|
|
10238 |
|
10239 |
|
10240 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10241 |
var options = {"hmr":true}
|
10242 |
|
10243 |
options.transform = transform
|
434 |
|
435 |
exports = module.exports = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
436 |
// Module
|
437 |
+
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 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 text-align: center; }\n .redux-templates-modal-wrapper .section-box.premium-box input::-webkit-input-placeholder {\n /* WebKit browsers */\n color: #606a73;\n font-style: italic;\n opacity: 1; }\n .redux-templates-modal-wrapper .section-box.premium-box input:-moz-placeholder {\n /* Mozilla Firefox 4 to 18 */\n color: #606a73;\n font-style: italic;\n opacity: 1; }\n .redux-templates-modal-wrapper .section-box.premium-box input::-moz-placeholder {\n /* Mozilla Firefox 19+ */\n color: #606a73;\n font-style: italic;\n opacity: 1; }\n .redux-templates-modal-wrapper .section-box.premium-box input:-ms-input-placeholder {\n /* Internet Explorer 10+ */\n color: #606a73;\n font-style: italic;\n opacity: 1; }\n .redux-templates-modal-wrapper .section-box.premium-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-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: 250px;\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 .section-box.premium-box .subscription_key_button {\n margin-top: 40px; }\n .redux-templates-modal-wrapper .section-box.premium-box .subscription_key_button button {\n background: #f8f8f8;\n border: 1px solid #ddd; }\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-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: 250px;\n text-align: center;\n font-size: 1em; }\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-button i {\n margin-right: 10px; }\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-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 .redux-templates-modal-wrapper .redux-templates-psmodal-content {\n flex: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center; }\n .redux-templates-modal-wrapper .redux-templates-modal-footer.nps-footer {\n text-align: center;\n justify-content: center; }\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", ""]);
|
438 |
|
439 |
|
440 |
|
528 |
|
529 |
|
530 |
|
531 |
+
/***/ }),
|
532 |
+
|
533 |
+
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./redux-templates/src/modal-promotor-score/style.scss":
|
534 |
+
/*!******************************************************************************************************************************************!*\
|
535 |
+
!*** ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./redux-templates/src/modal-promotor-score/style.scss ***!
|
536 |
+
\******************************************************************************************************************************************/
|
537 |
+
/*! no static exports found */
|
538 |
+
/***/ (function(module, exports, __webpack_require__) {
|
539 |
+
|
540 |
+
exports = module.exports = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
|
541 |
+
// Module
|
542 |
+
exports.push([module.i, ".components-snackbar-list {\n z-index: 99999; }\n", ""]);
|
543 |
+
|
544 |
+
|
545 |
+
|
546 |
/***/ }),
|
547 |
|
548 |
/***/ "./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./redux-templates/src/modals.scss":
|
8040 |
/* harmony import */ var _view_collection__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./view-collection */ "./redux-templates/src/modal-library/view-collection/index.js");
|
8041 |
/* harmony import */ var _view_saved__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./view-saved */ "./redux-templates/src/modal-library/view-saved/index.js");
|
8042 |
/* harmony import */ var _modal_import_wizard__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../modal-import-wizard */ "./redux-templates/src/modal-import-wizard/index.js");
|
8043 |
+
/* harmony import */ var _modal_promotor_score__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../modal-promotor-score */ "./redux-templates/src/modal-promotor-score/index.js");
|
8044 |
+
/* harmony import */ var _components_error_notice__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../components/error-notice */ "./redux-templates/src/components/error-notice/index.js");
|
8045 |
+
/* harmony import */ var _redux_templates_challenge_final_templates__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ~redux-templates/challenge/final-templates */ "./redux-templates/src/challenge/final-templates/index.js");
|
8046 |
+
/* harmony import */ var _components_fab_wrapper__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../components/fab-wrapper */ "./redux-templates/src/components/fab-wrapper/index.js");
|
8047 |
+
/* harmony import */ var _redux_templates_stores_actionHelper__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ~redux-templates/stores/actionHelper */ "./redux-templates/src/stores/actionHelper.js");
|
8048 |
+
/* harmony import */ var _style_scss__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./style.scss */ "./redux-templates/src/modal-library/style.scss");
|
8049 |
+
/* harmony import */ var _style_scss__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_style_scss__WEBPACK_IMPORTED_MODULE_12__);
|
8050 |
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
8051 |
|
8052 |
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
8079 |
|
8080 |
|
8081 |
|
8082 |
+
|
8083 |
function LibraryModal(props) {
|
8084 |
const fetchLibraryFromAPI = props.fetchLibraryFromAPI,
|
8085 |
activeCollection = props.activeCollection,
|
8103 |
escKeyPressed = _useState4[0],
|
8104 |
setEscKeyPressed = _useState4[1];
|
8105 |
|
8106 |
+
const _useState5 = useState(false),
|
8107 |
+
_useState6 = _slicedToArray(_useState5, 2),
|
8108 |
+
isPSModalVisible = _useState6[0],
|
8109 |
+
setPSModalVisible = _useState6[1];
|
8110 |
+
|
8111 |
let stateLibrary = null;
|
8112 |
useEffect(() => {
|
8113 |
clearState();
|
8119 |
setLoaded(true);
|
8120 |
}
|
8121 |
|
8122 |
+
setPSModalVisible(!!redux_templates.nps);
|
8123 |
+
|
8124 |
const handleKeyUp = ({
|
8125 |
keyCode
|
8126 |
}) => {
|
8154 |
|
8155 |
|
8156 |
const processImport = () => {
|
8157 |
+
if (importingTemplate) Object(_redux_templates_stores_actionHelper__WEBPACK_IMPORTED_MODULE_11__["processImportHelper"])();
|
8158 |
};
|
8159 |
|
8160 |
return wp.element.createElement(_modal_manager__WEBPACK_IMPORTED_MODULE_1__["Modal"], {
|
8162 |
customClass: "redux-templates-builder-modal-template-list",
|
8163 |
openTimeoutMS: 0,
|
8164 |
closeTimeoutMS: 0
|
8165 |
+
}, wp.element.createElement(_components_tab_header__WEBPACK_IMPORTED_MODULE_2__["default"], null), errorMessages && errorMessages.length > 0 && wp.element.createElement(_components_error_notice__WEBPACK_IMPORTED_MODULE_8__["default"], {
|
8166 |
errorMessages: errorMessages
|
8167 |
}), wp.element.createElement("div", {
|
8168 |
className: "redux-templates-collections-modal-body"
|
8169 |
}, hasSidebar() && wp.element.createElement(_layout_with_sidebar__WEBPACK_IMPORTED_MODULE_3__["default"], null), hasSidebar() === false && activeItemType === 'collection' && wp.element.createElement(_view_collection__WEBPACK_IMPORTED_MODULE_4__["default"], null), hasSidebar() === false && activeItemType !== 'collection' && wp.element.createElement(_view_saved__WEBPACK_IMPORTED_MODULE_5__["default"], null)), importingTemplate && wp.element.createElement(_modal_import_wizard__WEBPACK_IMPORTED_MODULE_6__["default"], {
|
8170 |
startImportTemplate: processImport
|
8171 |
+
}), isPSModalVisible && wp.element.createElement(_modal_promotor_score__WEBPACK_IMPORTED_MODULE_7__["default"], {
|
8172 |
+
propOnClose: () => setPSModalVisible(false)
|
8173 |
+
}), challengeFinalStatus !== '' && wp.element.createElement(_redux_templates_challenge_final_templates__WEBPACK_IMPORTED_MODULE_9__["default"], {
|
8174 |
finalStatus: challengeFinalStatus
|
8175 |
+
}), !isChallengeOpen && wp.element.createElement(_components_fab_wrapper__WEBPACK_IMPORTED_MODULE_10__["default"], null));
|
8176 |
}
|
8177 |
|
8178 |
/* harmony default export */ __webpack_exports__["default"] = (compose([withDispatch(dispatch => {
|
8487 |
}, wp.element.createElement("i", {
|
8488 |
className: "fa fa-info-circle"
|
8489 |
})))), wp.element.createElement("h3", null, "Third-Party Premium"), wp.element.createElement("ul", {
|
8490 |
+
className: "redux-templates-sidebar-dependencies"
|
8491 |
}, thirdPartyPlugins.sort((a, b) => {
|
8492 |
const pluginInstanceA = Object(_redux_templates_stores_dependencyHelper__WEBPACK_IMPORTED_MODULE_3__["pluginInfo"])(a);
|
8493 |
const pluginInstanceB = Object(_redux_templates_stores_dependencyHelper__WEBPACK_IMPORTED_MODULE_3__["pluginInfo"])(b);
|
10264 |
|
10265 |
|
10266 |
|
10267 |
+
var options = {"hmr":true}
|
10268 |
+
|
10269 |
+
options.transform = transform
|
10270 |
+
options.insertInto = undefined;
|
10271 |
+
|
10272 |
+
var update = __webpack_require__(/*! ../../../node_modules/style-loader/lib/addStyles.js */ "./node_modules/style-loader/lib/addStyles.js")(content, options);
|
10273 |
+
|
10274 |
+
if(content.locals) module.exports = content.locals;
|
10275 |
+
|
10276 |
+
if(false) {}
|
10277 |
+
|
10278 |
+
/***/ }),
|
10279 |
+
|
10280 |
+
/***/ "./redux-templates/src/modal-promotor-score/index.js":
|
10281 |
+
/*!***********************************************************!*\
|
10282 |
+
!*** ./redux-templates/src/modal-promotor-score/index.js ***!
|
10283 |
+
\***********************************************************/
|
10284 |
+
/*! exports provided: default */
|
10285 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
10286 |
+
|
10287 |
+
"use strict";
|
10288 |
+
__webpack_require__.r(__webpack_exports__);
|
10289 |
+
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return PromotorScoreModal; });
|
10290 |
+
/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @wordpress/components */ "@wordpress/components");
|
10291 |
+
/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_0__);
|
10292 |
+
/* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/compose */ "@wordpress/compose");
|
10293 |
+
/* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_compose__WEBPACK_IMPORTED_MODULE_1__);
|
10294 |
+
/* harmony import */ var _modals_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../modals.scss */ "./redux-templates/src/modals.scss");
|
10295 |
+
/* harmony import */ var _modals_scss__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_modals_scss__WEBPACK_IMPORTED_MODULE_2__);
|
10296 |
+
/* harmony import */ var _style_scss__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./style.scss */ "./redux-templates/src/modal-promotor-score/style.scss");
|
10297 |
+
/* harmony import */ var _style_scss__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_style_scss__WEBPACK_IMPORTED_MODULE_3__);
|
10298 |
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
10299 |
+
|
10300 |
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
10301 |
+
|
10302 |
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
10303 |
+
|
10304 |
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
10305 |
+
|
10306 |
+
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
10307 |
+
|
10308 |
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
10309 |
+
|
10310 |
+
const __ = wp.i18n.__;
|
10311 |
+
const _wp = wp,
|
10312 |
+
apiFetch = _wp.apiFetch;
|
10313 |
+
const dispatch = wp.data.dispatch;
|
10314 |
+
const useState = wp.element.useState;
|
10315 |
+
|
10316 |
+
const _dispatch = dispatch('core/notices'),
|
10317 |
+
createSuccessNotice = _dispatch.createSuccessNotice,
|
10318 |
+
createErrorNotice = _dispatch.createErrorNotice;
|
10319 |
+
|
10320 |
+
|
10321 |
+
|
10322 |
+
|
10323 |
+
|
10324 |
+
function PromotorScoreModal(props) {
|
10325 |
+
const propOnClose = props.propOnClose; // from parent
|
10326 |
+
|
10327 |
+
const _useState = useState(-1),
|
10328 |
+
_useState2 = _slicedToArray(_useState, 2),
|
10329 |
+
score = _useState2[0],
|
10330 |
+
setScore = _useState2[1];
|
10331 |
+
|
10332 |
+
const message = useState('');
|
10333 |
+
|
10334 |
+
const afterPost = response => {
|
10335 |
+
if (response.success) {
|
10336 |
+
createSuccessNotice(__('Thanks for your feedback, your input is very much valued.'), {
|
10337 |
+
type: 'snackbar'
|
10338 |
+
});
|
10339 |
+
} else {// createErrorNotice(response.data.message || __('Error'), { type: 'snackbar' });
|
10340 |
+
}
|
10341 |
+
|
10342 |
+
delete redux_templates.nps;
|
10343 |
+
};
|
10344 |
+
|
10345 |
+
const onCloseWizard = () => {
|
10346 |
+
apiFetch({
|
10347 |
+
path: 'redux/v1/templates/nps',
|
10348 |
+
method: 'POST',
|
10349 |
+
data: {
|
10350 |
+
nps: 'no-thanks'
|
10351 |
+
}
|
10352 |
+
}).then(afterPost).catch(afterPost);
|
10353 |
+
propOnClose();
|
10354 |
+
};
|
10355 |
+
|
10356 |
+
const submitScore = () => {
|
10357 |
+
apiFetch({
|
10358 |
+
path: 'redux/v1/templates/nps',
|
10359 |
+
method: 'POST',
|
10360 |
+
data: {
|
10361 |
+
nps: score + 1
|
10362 |
+
}
|
10363 |
+
}).then(afterPost).catch(afterPost);
|
10364 |
+
propOnClose();
|
10365 |
+
};
|
10366 |
+
|
10367 |
+
return wp.element.createElement("div", {
|
10368 |
+
className: "redux-templates-modal-overlay"
|
10369 |
+
}, wp.element.createElement("div", {
|
10370 |
+
className: "redux-templates-modal-wrapper"
|
10371 |
+
}, wp.element.createElement("div", {
|
10372 |
+
className: "redux-templates-modal-header"
|
10373 |
+
}, wp.element.createElement("h3", null, __('Can we ask you a question?', redux_templates.i18n)), wp.element.createElement("button", {
|
10374 |
+
className: "redux-templates-modal-close",
|
10375 |
+
onClick: onCloseWizard
|
10376 |
+
}, wp.element.createElement("i", {
|
10377 |
+
className: 'fas fa-times'
|
10378 |
+
}))), wp.element.createElement("div", {
|
10379 |
+
className: "redux-templates-psmodal-content"
|
10380 |
+
}, wp.element.createElement("h3", null, redux_templates.nps), wp.element.createElement(_wordpress_components__WEBPACK_IMPORTED_MODULE_0__["ButtonGroup"], null, [...Array(10).keys()].map(i => wp.element.createElement(_wordpress_components__WEBPACK_IMPORTED_MODULE_0__["Button"], {
|
10381 |
+
key: i,
|
10382 |
+
isPrimary: score === i,
|
10383 |
+
onClick: () => setScore(i)
|
10384 |
+
}, i + 1))), -1 !== score && score < 5 && wp.element.createElement(_wordpress_components__WEBPACK_IMPORTED_MODULE_0__["TextareaControl"] // label="Could you tell us more?"
|
10385 |
+
, {
|
10386 |
+
help: "Could you give us more details?",
|
10387 |
+
value: message // onChange={() => setState( { message } ) }
|
10388 |
+
|
10389 |
+
})), wp.element.createElement("div", {
|
10390 |
+
className: "redux-templates-modal-footer nps-footer"
|
10391 |
+
}, wp.element.createElement("button", {
|
10392 |
+
className: "button button-primary",
|
10393 |
+
disabled: -1 === score,
|
10394 |
+
onClick: () => submitScore()
|
10395 |
+
}, __('Submit', redux_templates.i18n)), wp.element.createElement("a", {
|
10396 |
+
href: "#",
|
10397 |
+
onClick: onCloseWizard
|
10398 |
+
}, __('Close', redux_templates.i18n)))));
|
10399 |
+
}
|
10400 |
+
;
|
10401 |
+
|
10402 |
+
/***/ }),
|
10403 |
+
|
10404 |
+
/***/ "./redux-templates/src/modal-promotor-score/style.scss":
|
10405 |
+
/*!*************************************************************!*\
|
10406 |
+
!*** ./redux-templates/src/modal-promotor-score/style.scss ***!
|
10407 |
+
\*************************************************************/
|
10408 |
+
/*! no static exports found */
|
10409 |
+
/***/ (function(module, exports, __webpack_require__) {
|
10410 |
+
|
10411 |
+
|
10412 |
+
var content = __webpack_require__(/*! !../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./style.scss */ "./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./redux-templates/src/modal-promotor-score/style.scss");
|
10413 |
+
|
10414 |
+
if(typeof content === 'string') content = [[module.i, content, '']];
|
10415 |
+
|
10416 |
+
var transform;
|
10417 |
+
var insertInto;
|
10418 |
+
|
10419 |
+
|
10420 |
+
|
10421 |
var options = {"hmr":true}
|
10422 |
|
10423 |
options.transform = transform
|
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/components/welcome-guide/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-change/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/components/welcome-guide/images.js","webpack:///./redux-templates/src/components/welcome-guide/index.js","webpack:///./redux-templates/src/components/welcome-guide/style.scss?55ff","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/ReduxTemplatesActivateBox.js","webpack:///./redux-templates/src/modal-import-wizard/ReduxTemplatesPremiumActivate.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.components-button.has-icon.redux-templates-insert-library-button {\\n height: 100%; }\\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.trial_notice * {\\n vertical-align: middle; }\\n\\n.trial_notice .components-notice__content {\\n margin-right: 0; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-edit-post-welcome-guide {\\n width: 412px; }\\n .redux-edit-post-welcome-guide__image {\\n background: #00a0d2;\\n width: 412px;\\n border-bottom: 1px solid #ddd; }\\n .redux-edit-post-welcome-guide__image__prm-r {\\n display: none; }\\n @media (prefers-reduced-motion: reduce) {\\n .redux-edit-post-welcome-guide__image__prm-r {\\n display: block; }\\n .redux-edit-post-welcome-guide__image__prm-np {\\n display: none; } }\\n .redux-edit-post-welcome-guide__heading {\\n font-family: \\\"Noto Serif\\\", serif;\\n font-size: 24px;\\n line-height: 1.4;\\n margin: 0 0 16px 0;\\n padding: 0 32px; }\\n .redux-edit-post-welcome-guide__text {\\n font-size: 16px;\\n line-height: 1.4;\\n margin: 0 0 24px 0;\\n padding: 0 32px;\\n font-weight: normal; }\\n .redux-edit-post-welcome-guide__inserter-icon {\\n margin: 0 4px;\\n vertical-align: text-top; }\\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-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 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 text-align: center; }\\n .redux-templates-modal-wrapper .section-box.premium-box input::-webkit-input-placeholder {\\n /* WebKit browsers */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-modal-wrapper .section-box.premium-box input:-moz-placeholder {\\n /* Mozilla Firefox 4 to 18 */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-modal-wrapper .section-box.premium-box input::-moz-placeholder {\\n /* Mozilla Firefox 19+ */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-modal-wrapper .section-box.premium-box input:-ms-input-placeholder {\\n /* Internet Explorer 10+ */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-modal-wrapper .section-box.premium-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-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: 250px;\\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 .section-box.premium-box .subscription_key_button {\\n margin-top: 40px; }\\n .redux-templates-modal-wrapper .section-box.premium-box .subscription_key_button button {\\n background: #f8f8f8;\\n border: 1px solid #ddd; }\\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-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: 250px;\\n text-align: center;\\n font-size: 1em; }\\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-button i {\\n margin-right: 10px; }\\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-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 \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( redux_templates.u + '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 + 'help_bubble', '_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","const {compose} = wp.compose;\nconst {withSelect} = wp.data;\nimport {useEffect} from '@wordpress/element';\n\nfunction TemplateChange (props) {\n\tconst {template} = props;\n\tuseEffect(() => {\n\t\tif ( template.includes('redux-templates_') ) {\n\t\t\tdocument.body.className += ' redux-template';\n\t\t} else {\n\t\t\tdocument.querySelector('body').classList.remove('redux-template');\n\t\t}\n\t}, [template])\n\treturn ( <div /> )\n}\n\nexport default compose([\n\twithSelect((select) => {\n\t\tconst {getEditedPostAttribute} = select('core/editor');\n\t\treturn {template: getEditedPostAttribute('template')};\n\t})\n])(TemplateChange);\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 {__, sprintf} = 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, Notice} 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 * as Icons from '~redux-templates/icons';\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\n <div className=\"redux-templates-template-filters\">\n\t <div className='trial_notice'>\n\t\t { ! redux_templates.mokama &&\n\t\t <div style={{verticalAlign:'middle'}}>\n\t\t\t <Notice status=\"info\" isDismissible={false}>\n\t\t\t\t <strong style={{display:'inline-block', marginRight:'10px', verticalAlign:'middle'}}>\n\t\t\t\t\t { redux_templates.left <= 0 &&\n\t\t\t\t\t \t<>\n\t\t\t\t\t\t\t {sprintf( __( 'Trial Ended: %d/%d Imported', redux_templates.i18n ), 5-redux_templates.left, 5 )}\n\t\t\t\t\t\t </>\n\t\t\t\t\t }\n\t\t\t\t\t { redux_templates.left > 0 &&\n\t\t\t\t\t <>\n\t\t\t\t\t\t {sprintf( __( 'Trial: %d/%d Imports Remaining', redux_templates.i18n ), redux_templates.left, 5 )}\n\t\t\t\t\t </>\n\t\t\t\t\t }\n\t\t\t\t </strong>\n\t\t\t\t <Button isPrimary\n\t\t\t\t isSmall\n\t\t\t\t icon={Icons.redux}\n\t\t\t\t label={__('Upgrade to Redux Pro', redux_templates.i18n)}\n\t\t\t\t onClick={()=> window.open( redux_templates.u + 'subheader', '_blank')}>Get Pro</Button>\n\t\t\t </Notice>\n\n\n\t\t </div>\n\n\t\t }</div>\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\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 */\nimport { __ } from '@wordpress/i18n';\n\nexport const GuideImage1 = ( props ) => (\n\t<>\n\t\t<img\n\t\t\tclassName=\"redux-edit-post-welcome-guide__image redux-edit-post-welcome-guide__image__prm-np\"\n\t\t\talt=\"\"\n\t\t\tsrc={ `${ redux_templates.plugin }assets/img/welcome-guide-1.png` }\n\t\t\t{ ...props }\n\t\t/>\n\t</>\n);\n\nexport const GuideImage2 = ( props ) => (\n\t<>\n\t\t<img\n\t\t\tclassName=\"redux-edit-post-welcome-guide__image redux-edit-post-welcome-guide__image__prm-np\"\n\t\t\talt=\"\"\n\t\t\tsrc={ `${ redux_templates.plugin }assets/img/welcome-guide-2.gif` }\n\t\t\t{ ...props }\n\t\t/>\n\t</>\n);\nexport const GuideImage3 = ( props ) => (\n\t<>\n\t\t<img\n\t\t\tclassName=\"redux-edit-post-welcome-guide__image redux-edit-post-welcome-guide__image__prm-np\"\n\t\t\talt=\"\"\n\t\t\tsrc={ `${ redux_templates.plugin }assets/img/welcome-guide-3.png` }\n\t\t\t{ ...props }\n\t\t/>\n\t</>\n);\n","/**\n * WordPress dependencies\n */\nconst { useState } = wp.element;\nimport { useSelect } from '@wordpress/data';\nimport { ExternalLink, Guide } from '@wordpress/components';\nconst {apiFetch} = wp;\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tGuideImage1,\n\tGuideImage2,\n\tGuideImage3,\n} from './images';\nimport './style.scss';\n\nexport default function WelcomeGuide() {\n\n\tconst [ isOpen, setIsOpen ] = useState( true );\n\n\tconst isActive = useSelect(\n\t\t( select ) =>\n\t\t\tselect( 'core/edit-post' ).isFeatureActive( 'welcomeGuide' ),\n\t\t[]\n\t);\n\n\tif ( isActive ) { // Don't want to show during the WP guide.\n\t\tdelete redux_templates.welcome; // In fact, we don't want to show it until the next page load!\n\t\treturn null;\n\t}\n\n\tif ( ! isOpen || 'undefined' === typeof( redux_templates.welcome ) ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Guide\n\t\t\tclassName=\"redux-edit-post-welcome-guide\"\n\t\t\tcontentLabel={ __( 'Say hello to the Redux template library', redux_templates.i18n ) }\n\t\t\tonFinish={ () => {\n\t\t\t\tsetIsOpen( false );\n\t\t\t\tconst options = {\n\t\t\t\t\tmethod: 'POST',\n\t\t\t\t\tpath: 'redux/v1/templates/welcome/?uid=' + window.userSettings.uid,\n\t\t\t\t}\n\t\t\t\tapiFetch(options).then(response => {\n\t\t\t\t}).catch(error => {\n\t\t\t\t});\n\t\t\t} }\n\t\t\tpages={ [\n\t\t\t\t{\n\t\t\t\t\timage: <GuideImage1 />,\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"redux-edit-post-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Try the Redux Template Library', redux_templates.i18n ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<h3 className=\"redux-edit-post-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Redux brings you over 1,000 importable templates and blocks that allow you to build Gutenberg powered pages and websites in minutes not days.',\n\t\t\t\t\t\t\t\t\tredux_templates.i18n\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</h3>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: <GuideImage2 />,\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"redux-edit-post-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Using the Template Library', redux_templates.i18n ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<h3 className=\"redux-edit-post-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'To use the template library click on the library button then pick your favourite template and import! Redux allows you to import beautiful Gutenberg pages in seconds.',\n\t\t\t\t\t\t\t\t\tredux_templates.i18n\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</h3>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: <GuideImage3 />,\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"redux-edit-post-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Import 5 templates for free or go Pro!', redux_templates.i18n ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<h3 className=\"redux-edit-post-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Redux allows you 5 free imports or you can go Pro now and import unlimited templates for just $49/year (limited time only).',\n\t\t\t\t\t\t\t\t\tredux_templates.i18n\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<br /><br />\n\t\t\t\t\t\t\t\t<center>\n\t\t\t\t\t\t\t\t\t<ExternalLink href={ `${ redux_templates.u }welcome-guide` }>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Learn more at Redux.io', redux_templates.i18n ) }\n\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t</center>\n\t\t\t\t\t\t\t</h3>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t}\n\t\t\t] }\n\t\t/>\n\t);\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}","/**\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 WelcomeGuide from './components/welcome-guide';\nimport TemplateChange from './components/template-change';\nimport './custom-css';\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\t\trender(<WelcomeGuide />, challengeDiv)\n\t render(<TemplateChange />, challengeDiv)\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 installError'>\n\t {__('The following plugin(s) failed to install properly. Please manually install them yourself before attempting another import.', redux_templates.i18n)}\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} <a href={plugin.url} target=\"_blank\"><i className=\"fas fa-external-link-alt\"/></a></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 {__, sprintf} = wp.i18n;\nconst {useState} = wp.element;\nconst {apiFetch} = wp;\n\nexport default function ReduxTemplatesPremiumActivate(props) {\n\n\tconst [installing, setInstalling] = useState(null);\n\tconst [status, setStatus] = useState(__('Enter your API key to activate and install your copy of Redux Pro.', redux_templates.i18n));\n\tconst [statusType, setStatusType] = useState('');\n\tconst [proKey, setProKey] = useState( atob( redux_templates.key ) );\n\tconst {toPluginStep} = props;\n\n\tconst installReduxPlugin = async () => {\n\t\tif ( ! redux_templates.supported_plugins['redux-framework'].plugin ) {\n\t\t\tsetStatus(__('Installing the redux-framework plugin.', redux_templates.i18n));\n\t\t\tawait apiFetch({\n\t\t\t\tpath: 'redux/v1/templates/plugin-install?slug=redux-framework',\n\t\t\t}).then(res => {\n\t\t\t\tif (res.success) {\n\t\t\t\t\tinstallReduxPro();\n\t\t\t\t} else {\n\t\t\t\t\tsetStatus(__('Install of Redux Pro failed, please try again.', redux_templates.i18n));\n\t\t\t\t\tsetInstalling(null);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch(res => {\n\t\t\t\tsetStatus(__('There seems to be an API issue. Please contact Redux support or try again.', redux_templates.i18n));\n\t\t\t\tsetInstalling(null);\n\t\t\t});\n\t\t} else {\n\t\t\tinstallReduxPro();\n\t\t}\n\t};\n\n\tconst installReduxPro = async () => {\n\t\tif ( ! redux_templates.supported_plugins['redux-pro'].version ) {\n\t\t\tsetStatus(__('Installing Redux Pro.', redux_templates.i18n));\n\t\t\tawait apiFetch({\n\t\t\t\tpath: 'redux/v1/templates/plugin-install?slug=redux-pro&redux_pro=1',\n\t\t\t}).then(res => {\n\t\t\t\tif (res.success) {\n\t\t\t\t\tsetStatus(__('Redux Pro successfully installed!', redux_templates.i18n));\n\t\t\t\t\tredux_templates.mokama = true;\n\t\t\t\t\tdelete redux_templates.left;\n\t\t\t\t\ttoPluginStep();\n\t\t\t\t} else {\n\t\t\t\t\tsetStatus(__('Install of Redux Pro failed, please try again.', redux_templates.i18n));\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch(res => {\n\t\t\t\tsetStatus(__('There seems to be an API issue. Please contact Redux support or try again.', redux_templates.i18n));\n\t\t\t\tsetInstalling(null);\n\t\t\t});\n\t\t} else {\n\t\t\tredux_templates.mokama = true;\n\t\t\tdelete redux_templates.left;\n\t\t\ttoPluginStep();\n\t\t}\n\t};\n\n\tconst activateKey = async () => {\n\t\tsetInstalling(true);\n\t\tsetStatus(__('Validating license key.', redux_templates.i18n));\n\t\tawait apiFetch({\n\t\t\tpath: 'redux/v1/templates/license?key=' + proKey,\n\t\t}).then(res => {\n\t\t\tif (res.success) {\n\t\t\t\tsetStatus(__('API key activated, installing Redux Pro.', redux_templates.i18n));\n\t\t\t\tinstallReduxPlugin();\n\t\t\t} else {\n\t\t\t\tif ( res.msg ) {\n\t\t\t\t\tsetStatus(res.msg);\n\t\t\t\t} else {\n\t\t\t\t\tsetStatus(__('License key failed to activate. Please try again.', redux_templates.i18n));\n\t\t\t\t}\n\t\t\t\tsetInstalling(null);\n\t\t\t}\n\t\t}).catch(res => {\n\t\t\tsetStatus(__('There seems to be an API issue. Please contact Redux support or try again.', redux_templates.i18n));\n\t\t\tsetInstalling(null);\n\t\t});\n\t};\n\n\tconst updateProKey = (e) => {\n\t\tsetProKey(e.target.value);\n\t}\n\n\treturn (\n\t\t<div className=\"redux-templates-modal-body\">\n\t\t\t<div className=\"section-box premium-box\">\n\t\t\t\t<h3>{__('Activate Redux Pro', redux_templates.i18n)}</h3>\n\n\t\t\t\t<div className={statusType}>{status}</div>\n\n\t\t\t\t<p>\n\t\t\t\t\t<input type=\"text\" placeholder={__('Enter your subscription key', redux_templates.i18n)} value={proKey} onChange={updateProKey} disabled={installing !== null} />\n\t\t\t\t</p>\n\t\t\t\t<p className=\"subscription_key\">\n\t\t\t\t\t<button className=\"redux-pro-activate-button\" aria-label=\"Activate my key\" disabled={installing !== null}\n\t\t\t\t\t onClick={() => activateKey()}>\n\t\t\t\t\t\t{installing !== null && <i className=\"fas fa-spinner fa-pulse\"/>}\n\t\t\t\t\t\t<span>{__('Activate & Install Pro', redux_templates.i18n)}</span>\n\t\t\t\t\t</button>\n\t\t\t\t</p>\n\t\t\t\t<p style={{fontSize:'1.1em', paddingTop:'10px'}}><small><em dangerouslySetInnerHTML={{__html: redux_templates.tos.replace(__('Register', redux_templates.i18n), __('Activate', redux_templates.i18n))}} /> <br /><span dangerouslySetInnerHTML={{__html: sprintf( __( 'Visit the <a href=\"%s\" target=\"_blank\">account dashboard</a> to recover your subscription key.', redux_templates.i18n ), 'https://redux.io/account/?utm_source=plugin-installation&utm_campaign=import_wizard&utm_medium=appsero&utm_content=activate_pro' )}} /></small>\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","const {__} = wp.i18n\n\nexport default function ReduxTemplatesPremiumBox(props) {\n\n\tconst {toProActivateStep} = props;\n\n\tconst onNextStep = () => {\n\t\ttoProActivateStep();\n\t}\n\n\treturn (\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>{__('Thanks for giving our library a try! Upgrade to Redux Pro to unlock even more designs and to continue using our library.', redux_templates.i18n)}</p>\n\n <p>\n <a href={redux_templates.u + 'import_wizard'} className=\"redux-templates-upgrade-button\" title=\"{__('Redux Pro', redux_templates.i18n)}\"\n target='_blank'>{__('Upgrade Now Just $49', redux_templates.i18n)}</a>\n\t <small><em>Limited time only</em></small>\n </p>\n\t <p className=\"subscription_key_button\">\n\t\t <button type=\"button\" className=\"components-button\" aria-label=\"I have a subscription key\" onClick={() => onNextStep()}>I have a subscription key\n\t\t </button>\n\t </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 ReduxTemplatesPremiumActivate from './ReduxTemplatesPremiumActivate';\nimport ReduxTemplatesActivateBox from './ReduxTemplatesActivateBox';\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 = -10;\nconst REDUX_PRO_ACTIVATE_STEP = -9;\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) === false) && leftTry < 1 && currentStep !== REDUX_PRO_ACTIVATE_STEP ) {\n \tif ( currentStep !== REDUX_ACTIVATE_STEP ) {\n\t\t setCurrentStep(REDUX_PRO_STEP);\n\t\t return;\n\t }\n }\n /* Redux pro check */\n if (requiresReduxPro(importingTemplate)) {\n\t if (currentStep !== REDUX_PRO_ACTIVATE_STEP) 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 display\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\tconst toPluginStep = () => {\n\t\tsetCurrentStep(PRO_STEP);\n\t};\n\tconst toProActivateStep = () => {\n\t\tsetCurrentStep(REDUX_PRO_ACTIVATE_STEP);\n\t};\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\t {currentStep === REDUX_PRO_ACTIVATE_STEP && <ReduxTemplatesPremiumActivate toPluginStep={toPluginStep} />}\n\t {currentStep === REDUX_PRO_STEP && <ReduxTemplatesPremiumBox toProActivateStep={toProActivateStep} />}\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, thirdPartyPlugins, 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={__('Templates which contain blocks from any of the selected plugins.', redux_templates.i18n)} position=\"top center\">\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={__('Templates that only contain blocks from the selected plugins.', redux_templates.i18n)} position=\"top center\">\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 center\">\n\t <a href=\"#\" onClick={() => selectDependencies('all')}>{__('All', redux_templates.i18n)}</a>\n </Tooltip>\n\t\t <span> / </span>\n\t <Tooltip text={__('Installed Dependencies', redux_templates.i18n)} position=\"top center\">\n\t\t <a href=\"#\" onClick={() => selectDependencies('installed')}>{__('Installed', redux_templates.i18n)}</a>\n\t </Tooltip>\n <span> / </span>\n\t <Tooltip text={__('Native Blocks Only', redux_templates.i18n)} position=\"top center\">\n\t\t <a href=\"#\" onClick={() => selectDependencies('none')}>{__('None', redux_templates.i18n)}</a>\n\t </Tooltip>\n <ChallengeDot step={2} />\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='top center'>\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 (!pluginInstanceB.name || pluginInstanceA.name < pluginInstanceB.name)\n return -1;\n if (!pluginInstanceA.name || 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 role=\"group\" className=\"components-button-group\" style={{float: 'right'}}>\n\t <Tooltip text={__('Third-party premium plugins required.', redux_templates.i18n)} position='top center'>\n\t\t <span style={{float:'right', marginRight:'15px', cursor:'pointer'}}><i className=\"fa fa-info-circle\" /></span>\n\t </Tooltip>\n </div>\n\n <h3>Third-Party Premium</h3>\n <ul class=\"redux-templates-sidebar-dependencies\">\n {\n thirdPartyPlugins\n .sort((a, b) => {\n const pluginInstanceA = pluginInfo(a);\n const pluginInstanceB = pluginInfo(b);\n if (!pluginInstanceB.name || pluginInstanceA.name < pluginInstanceB.name)\n return -1;\n if (!pluginInstanceA.name || 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, getThirdPartyPlugins, getDependencyFilterRule} = select('redux-templates/sectionslist');\n return {\n loading: getLoading(),\n dependencyFilters: getDependencyFiltersStatistics(),\n wholePlugins: getWholePlugins(),\n thirdPartyPlugins: getThirdPartyPlugins(),\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 center'} 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 center'} 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\"/> {__('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'}> </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> {__('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> {__('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<Tooltip position={'top center'} text={__('Copy the template identifier', redux_templates.i18n)}>\n\t\t\t\t\t\t<div className=\"button-container\" onClick={copyHash}>\n\t <span className=\"button button-secondary the-copy\">\n\t\t <i className=\"fa fa-copy\" aria-hidden=\"true\"></i>\n\t </span>\n\t\t\t\t\t\t\t<span className=\"button button-secondary the-hash\">{hash.substring(0, 7)}</span>\n\t\t\t\t\t\t\t{copied && <span className=\"copied hideMe\"><br/>{__('copied', redux_templates.i18n)}</span>}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t</h5>\n\t\t\t</div>\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={true}>\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 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 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 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{ blocks && blocks.length > 0 &&\n\t\t\t<PanelBody title={__('Blocks Used', redux_templates.i18n)} icon={more} initialOpen={true}>\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\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 {__('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 ((isReduxProInstalled() === false) && 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 (!!(redux_templates.mokama) == true) || 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}\n\nexport const flattenPageData = (pageData) => {\n const currentPageData = [];\n if (Array.isArray(pageData) === false) {\n for (let key in pageData) {\n Array.isArray(pageData[key]) && pageData[key].map(value => {\n currentPageData.push(value);\n })\n }\n return currentPageData;\n }\n return pageData;\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\n/* Parse section data */\n// - convert `sections` object to array\n// - make fullPluginsList from dependency, like ['redux-pro', 'qubely', 'getwid', ...]\n// -- filter wholePlugins from fullPluginsList\n// -- filter thirdPartyPlugins from fullPluginsList\n// - categorize the plugin information and save it to local storage\nexport const parseSectionData = (sections) => {\n const librarySectionData = convertObjectToArray(sections);\n const fullPluginsList = uniq(flattenDeep(map(librarySectionData, 'dependencies')));\n const wholePlugins = fullPluginsList.filter(pluginKey => !isThirdPartyPlugin(pluginKey));\n const thirdPartyPlugins = fullPluginsList.filter(pluginKey => isThirdPartyPlugin(pluginKey));\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, thirdPartyPlugins};\n}\n\nexport const parsePageData = (pages) => {\n const libraryPageData = convertObjectToArray(pages);\n const fullPluginsList = uniq(flattenDeep(map(libraryPageData, 'dependencies')));\n const wholePlugins = fullPluginsList.filter(pluginKey => !isThirdPartyPlugin(pluginKey));\n const thirdPartyPlugins = fullPluginsList.filter(pluginKey => isThirdPartyPlugin(pluginKey));\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, thirdPartyPlugins};\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 fullPluginsList = uniq(flattenDeep(map(libraryCollectionData, 'dependencies')));\n const wholePlugins = fullPluginsList.filter(pluginKey => !isThirdPartyPlugin(pluginKey));\n const thirdPartyPlugins = fullPluginsList.filter(pluginKey => isThirdPartyPlugin(pluginKey));\n return {...categorizeData(libraryCollectionData), dependencyFilters: {[NONE_KEY]: true, ...library.dependencies}, wholePlugins, thirdPartyPlugins};\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\n\nconst isThirdPartyPlugin = (pluginKey) => {\n const pluginInstance = getPluginInstance(pluginKey);\n return pluginInstance.free_slug && !pluginInstance.redux_pro && !pluginInstance.version;\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, flattenPageData} 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 const activeState = state[state.activeItemType || 'section'];\n return [...activeState.wholePlugins, ...activeState.thirdPartyPlugins].reduce((acc, cur) => {\n return {...acc, [cur]: {value: false} };\n }, undefined)\n};\n\n\nconst getDependencyFiltersStatistics = (state) => {\n const pageData = flattenPageData(getOriginalPageData(state));\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 getThirdPartyPlugins(state) {\n return (state.activeItemType !== 'saved') ? getCurrentState(state).thirdPartyPlugins : 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 thirdPartyPlugins: [],\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 thirdPartyPlugins: [],\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 thirdPartyPlugins: [],\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\t\t\tredux_templates.stats = {\n\t\t\t\t'dependencies': Object.keys(action.library.dependencies).length,\n\t\t\t\t'pages': Object.keys(action.library.pages).length,\n\t\t\t\t'sections': Object.keys(action.library.sections).length,\n\t\t\t\t'collections': Object.keys(action.library.collections).length,\n\t\t\t}\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', {...state[cur].dependencyFilters, ...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: {...state[cur].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;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;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AACA;;;;;;;;;;;;ACpBA;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;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;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;AAGA;AAAA;AACA;AAAA;AAEA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYA;AACA;AACA;AACA;AACA;AAJA;AAYA;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;AAOA;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;;;;;;;;;;;AC7IA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;ACnBA;;;AAGA;AAEA;AAGA;AACA;AACA;AAHA;AASA;AAGA;AACA;AACA;AAHA;AAQA;AAGA;AACA;AACA;AAHA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC5BA;;;AAGA;AACA;AACA;AACA;AAAA;AACA;AAEA;;;;AAGA;AAKA;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AAKA;AAAA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAFA;AAIA;AAGA;AACA;AAEA;AACA;AAEA;AAAA;AAGA;AAAA;AAPA;AAiBA;AACA;AAEA;AAAA;AAGA;AAAA;AAPA;AAiBA;AACA;AAEA;AAAA;AAGA;AAAA;AAOA;AAAA;AAdA;AA9CA;AAuEA;;;;;;;;;;;AC9GA;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;AAAA;AAAA;;;;AAIA;;;AAGA;AACA;AAEA;;;;AAGA;AACA;AACA;AACA;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;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzDA;;;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;AAKA;AAAA;AAKA;AAEA;AAEA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;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;;;;;;;;;;;;AC9HA;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;AACA;AACA;AAAA;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AAAA;AAAA;AAAA;AACA;AADA;AACA;AAOA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AADA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAGA;AAAA;AAGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AAAA;AACA;AAAA;AAAA;AACA;AADA;AAEA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA;;;;;;;;;;;;AC7GA;AAAA;AAAA;AAEA;AAAA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AAMA;AAAA;AAAA;AACA;AADA;AAIA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC7BA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAEA;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;AAOA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AACA;AACA;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;AACA;AAAA;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;AACA;AAAA;AACA;AAAA;AACA;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;;;;;;;;;;;AC/LA;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;AAEA;AAAA;AAIA;AACA;AAEA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AALA;AAOA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA;AASA;;;;;;;;;;;;AC5HA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAEA;AACA;AAEA;AAAA;AAAA;AAGA;AAAA;AAAA;AAAA;AAMA;;;;;;;;;;;;ACjBA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AAAA;AAGA;AACA;AAFA;AASA;AAAA;AACA;AADA;AAWA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AADA;AAGA;AAEA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;;;;;;;;;;;;;;;;;;;;;;;;;ACpFA;AACA;AACA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAGA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AADA;AAGA;AACA;AAAA;AAGA;AAAA;AAAA;AAEA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAGA;AAAA;AAAA;AACA;AAAA;AAAA;AAGA;AAAA;AAAA;AACA;AAAA;AAAA;AAEA;AAAA;AAEA;AAAA;AAEA;AAAA;AAAA;AAAA;AAEA;AACA;AACA;AAHA;AAKA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA;AACA;AACA;AAEA;AAEA;AACA;AAEA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA;AAAA;AAIA;AACA;AACA;AAEA;AAEA;AACA;AAEA;AAAA;AAAA;AAQA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvIA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;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;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAAA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AAFA;AACA;AACA;AAIA;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AAFA;AAIA;AACA;AAGA;AACA;AACA;AADA;AACA;AACA;AACA;AAEA;AACA;AAAA;AAEA;AACA;AACA;AAHA;AAMA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA;AACA;AAEA;AACA;AAAA;AACA;AACA;AACA;AADA;AAGA;AAEA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAHA;AAKA;;;;;;;;;;;;AChHA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AAEA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAAA;AAMA;AAAA;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;AAAA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AAAA;AAAA;AAEA;AAAA;AACA;AAAA;AAOA;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;AAQA;AAAA;AAAA;AAAA;AACA;AAAA;AAIA;AACA;AAAA;AAEA;AASA;AAAA;AAAA;AAAA;AACA;AAAA;AASA;;;;;;;;;;;;ACxIA;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;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;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AACA;AAAA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClIA;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;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;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;AACA;AAEA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzUA;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;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;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;AAtHA;AAwHA;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;AAjJA;;;;;;;;;;;;;;;;;;;;;;ACzFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAXA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAXA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAZA;AAcA;AAAA;AACA;AAAA;AACA;AACA;AACA;AACA;AAHA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAQA;AACA;AACA;AA/DA;AAkEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAJA;AAMA;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;AA1SA;AACA;AAgUA;AACA;;;;;;;;;;;AC1YA;;;;;;;;;;;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/components/welcome-guide/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/modal-promotor-score/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-change/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/components/welcome-guide/images.js","webpack:///./redux-templates/src/components/welcome-guide/index.js","webpack:///./redux-templates/src/components/welcome-guide/style.scss?55ff","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/ReduxTemplatesActivateBox.js","webpack:///./redux-templates/src/modal-import-wizard/ReduxTemplatesPremiumActivate.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/modal-promotor-score/index.js","webpack:///./redux-templates/src/modal-promotor-score/style.scss?2491","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.components-button.has-icon.redux-templates-insert-library-button {\\n height: 100%; }\\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.trial_notice * {\\n vertical-align: middle; }\\n\\n.trial_notice .components-notice__content {\\n margin-right: 0; }\\n\", \"\"]);\n\n","exports = module.exports = require(\"../../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".redux-edit-post-welcome-guide {\\n width: 412px; }\\n .redux-edit-post-welcome-guide__image {\\n background: #00a0d2;\\n width: 412px;\\n border-bottom: 1px solid #ddd; }\\n .redux-edit-post-welcome-guide__image__prm-r {\\n display: none; }\\n @media (prefers-reduced-motion: reduce) {\\n .redux-edit-post-welcome-guide__image__prm-r {\\n display: block; }\\n .redux-edit-post-welcome-guide__image__prm-np {\\n display: none; } }\\n .redux-edit-post-welcome-guide__heading {\\n font-family: \\\"Noto Serif\\\", serif;\\n font-size: 24px;\\n line-height: 1.4;\\n margin: 0 0 16px 0;\\n padding: 0 32px; }\\n .redux-edit-post-welcome-guide__text {\\n font-size: 16px;\\n line-height: 1.4;\\n margin: 0 0 24px 0;\\n padding: 0 32px;\\n font-weight: normal; }\\n .redux-edit-post-welcome-guide__inserter-icon {\\n margin: 0 4px;\\n vertical-align: text-top; }\\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-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 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 text-align: center; }\\n .redux-templates-modal-wrapper .section-box.premium-box input::-webkit-input-placeholder {\\n /* WebKit browsers */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-modal-wrapper .section-box.premium-box input:-moz-placeholder {\\n /* Mozilla Firefox 4 to 18 */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-modal-wrapper .section-box.premium-box input::-moz-placeholder {\\n /* Mozilla Firefox 19+ */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-modal-wrapper .section-box.premium-box input:-ms-input-placeholder {\\n /* Internet Explorer 10+ */\\n color: #606a73;\\n font-style: italic;\\n opacity: 1; }\\n .redux-templates-modal-wrapper .section-box.premium-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-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: 250px;\\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 .section-box.premium-box .subscription_key_button {\\n margin-top: 40px; }\\n .redux-templates-modal-wrapper .section-box.premium-box .subscription_key_button button {\\n background: #f8f8f8;\\n border: 1px solid #ddd; }\\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-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: 250px;\\n text-align: center;\\n font-size: 1em; }\\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-button i {\\n margin-right: 10px; }\\n .redux-templates-modal-wrapper .section-box.premium-box .redux-pro-activate-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 .redux-templates-modal-wrapper .redux-templates-psmodal-content {\\n flex: 1;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n text-align: center; }\\n .redux-templates-modal-wrapper .redux-templates-modal-footer.nps-footer {\\n text-align: center;\\n justify-content: center; }\\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, \".components-snackbar-list {\\n z-index: 99999; }\\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 \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( redux_templates.u + '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 + 'help_bubble', '_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","const {compose} = wp.compose;\nconst {withSelect} = wp.data;\nimport {useEffect} from '@wordpress/element';\n\nfunction TemplateChange (props) {\n\tconst {template} = props;\n\tuseEffect(() => {\n\t\tif ( template.includes('redux-templates_') ) {\n\t\t\tdocument.body.className += ' redux-template';\n\t\t} else {\n\t\t\tdocument.querySelector('body').classList.remove('redux-template');\n\t\t}\n\t}, [template])\n\treturn ( <div /> )\n}\n\nexport default compose([\n\twithSelect((select) => {\n\t\tconst {getEditedPostAttribute} = select('core/editor');\n\t\treturn {template: getEditedPostAttribute('template')};\n\t})\n])(TemplateChange);\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 {__, sprintf} = 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, Notice} 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 * as Icons from '~redux-templates/icons';\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\n <div className=\"redux-templates-template-filters\">\n\t <div className='trial_notice'>\n\t\t { ! redux_templates.mokama &&\n\t\t <div style={{verticalAlign:'middle'}}>\n\t\t\t <Notice status=\"info\" isDismissible={false}>\n\t\t\t\t <strong style={{display:'inline-block', marginRight:'10px', verticalAlign:'middle'}}>\n\t\t\t\t\t { redux_templates.left <= 0 &&\n\t\t\t\t\t \t<>\n\t\t\t\t\t\t\t {sprintf( __( 'Trial Ended: %d/%d Imported', redux_templates.i18n ), 5-redux_templates.left, 5 )}\n\t\t\t\t\t\t </>\n\t\t\t\t\t }\n\t\t\t\t\t { redux_templates.left > 0 &&\n\t\t\t\t\t <>\n\t\t\t\t\t\t {sprintf( __( 'Trial: %d/%d Imports Remaining', redux_templates.i18n ), redux_templates.left, 5 )}\n\t\t\t\t\t </>\n\t\t\t\t\t }\n\t\t\t\t </strong>\n\t\t\t\t <Button isPrimary\n\t\t\t\t isSmall\n\t\t\t\t icon={Icons.redux}\n\t\t\t\t label={__('Upgrade to Redux Pro', redux_templates.i18n)}\n\t\t\t\t onClick={()=> window.open( redux_templates.u + 'subheader', '_blank')}>Get Pro</Button>\n\t\t\t </Notice>\n\n\n\t\t </div>\n\n\t\t }</div>\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\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 */\nimport { __ } from '@wordpress/i18n';\n\nexport const GuideImage1 = ( props ) => (\n\t<>\n\t\t<img\n\t\t\tclassName=\"redux-edit-post-welcome-guide__image redux-edit-post-welcome-guide__image__prm-np\"\n\t\t\talt=\"\"\n\t\t\tsrc={ `${ redux_templates.plugin }assets/img/welcome-guide-1.png` }\n\t\t\t{ ...props }\n\t\t/>\n\t</>\n);\n\nexport const GuideImage2 = ( props ) => (\n\t<>\n\t\t<img\n\t\t\tclassName=\"redux-edit-post-welcome-guide__image redux-edit-post-welcome-guide__image__prm-np\"\n\t\t\talt=\"\"\n\t\t\tsrc={ `${ redux_templates.plugin }assets/img/welcome-guide-2.gif` }\n\t\t\t{ ...props }\n\t\t/>\n\t</>\n);\nexport const GuideImage3 = ( props ) => (\n\t<>\n\t\t<img\n\t\t\tclassName=\"redux-edit-post-welcome-guide__image redux-edit-post-welcome-guide__image__prm-np\"\n\t\t\talt=\"\"\n\t\t\tsrc={ `${ redux_templates.plugin }assets/img/welcome-guide-3.png` }\n\t\t\t{ ...props }\n\t\t/>\n\t</>\n);\n","/**\n * WordPress dependencies\n */\nconst { useState } = wp.element;\nimport { useSelect } from '@wordpress/data';\nimport { ExternalLink, Guide } from '@wordpress/components';\nconst {apiFetch} = wp;\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tGuideImage1,\n\tGuideImage2,\n\tGuideImage3,\n} from './images';\nimport './style.scss';\n\nexport default function WelcomeGuide() {\n\n\tconst [ isOpen, setIsOpen ] = useState( true );\n\n\tconst isActive = useSelect(\n\t\t( select ) =>\n\t\t\tselect( 'core/edit-post' ).isFeatureActive( 'welcomeGuide' ),\n\t\t[]\n\t);\n\n\tif ( isActive ) { // Don't want to show during the WP guide.\n\t\tdelete redux_templates.welcome; // In fact, we don't want to show it until the next page load!\n\t\treturn null;\n\t}\n\n\tif ( ! isOpen || 'undefined' === typeof( redux_templates.welcome ) ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Guide\n\t\t\tclassName=\"redux-edit-post-welcome-guide\"\n\t\t\tcontentLabel={ __( 'Say hello to the Redux template library', redux_templates.i18n ) }\n\t\t\tonFinish={ () => {\n\t\t\t\tsetIsOpen( false );\n\t\t\t\tconst options = {\n\t\t\t\t\tmethod: 'POST',\n\t\t\t\t\tpath: 'redux/v1/templates/welcome/?uid=' + window.userSettings.uid,\n\t\t\t\t}\n\t\t\t\tapiFetch(options).then(response => {\n\t\t\t\t}).catch(error => {\n\t\t\t\t});\n\t\t\t} }\n\t\t\tpages={ [\n\t\t\t\t{\n\t\t\t\t\timage: <GuideImage1 />,\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"redux-edit-post-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Try the Redux Template Library', redux_templates.i18n ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<h3 className=\"redux-edit-post-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Redux brings you over 1,000 importable templates and blocks that allow you to build Gutenberg powered pages and websites in minutes not days.',\n\t\t\t\t\t\t\t\t\tredux_templates.i18n\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</h3>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: <GuideImage2 />,\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"redux-edit-post-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Using the Template Library', redux_templates.i18n ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<h3 className=\"redux-edit-post-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'To use the template library click on the library button then pick your favourite template and import! Redux allows you to import beautiful Gutenberg pages in seconds.',\n\t\t\t\t\t\t\t\t\tredux_templates.i18n\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</h3>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: <GuideImage3 />,\n\t\t\t\t\tcontent: (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<h1 className=\"redux-edit-post-welcome-guide__heading\">\n\t\t\t\t\t\t\t\t{ __( 'Import 5 templates for free or go Pro!', redux_templates.i18n ) }\n\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t<h3 className=\"redux-edit-post-welcome-guide__text\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'Redux allows you 5 free imports or you can go Pro now and import unlimited templates for just $49/year (limited time only).',\n\t\t\t\t\t\t\t\t\tredux_templates.i18n\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<br /><br />\n\t\t\t\t\t\t\t\t<center>\n\t\t\t\t\t\t\t\t\t<ExternalLink href={ `${ redux_templates.u }welcome-guide` }>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Learn more at Redux.io', redux_templates.i18n ) }\n\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t</center>\n\t\t\t\t\t\t\t</h3>\n\t\t\t\t\t\t</>\n\t\t\t\t\t),\n\t\t\t\t}\n\t\t\t] }\n\t\t/>\n\t);\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}","/**\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\tc
|