CTX Feed – WooCommerce Product Feed Manager Plugin - Version 4.2.7

Version Description

(2020-11-25) = * Added : Status page. * Added : Top black banner.

Download this release

Release Info

Developer wahid0003
Plugin Icon 128x128 CTX Feed – WooCommerce Product Feed Manager Plugin
Version 4.2.7
Comparing to
See all releases

Code changes from version 4.2.6 to 4.2.7

README.txt CHANGED
@@ -8,7 +8,7 @@ Google Product Review feed, product variations, rakuteen, shopping, skroutz, TSV
8
  Requires at least: 3.6
9
  Tested Up To: 5.6
10
  Requires PHP: 5.6
11
- Stable tag: 4.2.6
12
  License: GPLv2 or later
13
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
14
 
@@ -311,6 +311,10 @@ Using pro version:
311
 
312
  == Changelog ==
313
 
 
 
 
 
314
  = 4.2.6 (2020-11-24) =
315
  * Version bump : Checked compatibility with Wordpress 5.6.
316
  * Version bump : Checked compatibility with WooCommerce 4.7.
8
  Requires at least: 3.6
9
  Tested Up To: 5.6
10
  Requires PHP: 5.6
11
+ Stable tag: 4.2.7
12
  License: GPLv2 or later
13
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
14
 
311
 
312
  == Changelog ==
313
 
314
+ = 4.2.7 (2020-11-25) =
315
+ * Added : Status page.
316
+ * Added : Top black banner.
317
+
318
  = 4.2.6 (2020-11-24) =
319
  * Version bump : Checked compatibility with Wordpress 5.6.
320
  * Version bump : Checked compatibility with WooCommerce 4.7.
admin/class-woo-feed-admin.php CHANGED
@@ -236,6 +236,7 @@ class Woo_Feed_Admin {
236
  add_submenu_page( 'webappick-manage-feeds', __( 'Make Feed', 'woo-feed' ), __( 'Make Feed', 'woo-feed' ), 'manage_woocommerce', 'webappick-new-feed', 'woo_feed_generate_new_feed' );
237
  add_submenu_page( 'webappick-manage-feeds', __( 'Category Mapping', 'woo-feed' ), __( 'Category Mapping', 'woo-feed' ), 'manage_woocommerce', 'webappick-feed-category-mapping', 'woo_feed_category_mapping' );
238
  add_submenu_page( 'webappick-manage-feeds', __( 'Settings', 'woo-feed' ), __( 'Settings', 'woo-feed' ), 'manage_woocommerce', 'webappick-feed-settings', 'woo_feed_config_feed' );
 
239
  add_submenu_page( 'webappick-manage-feeds', __( 'Documentation', 'woo-feed' ), '<span class="woo-feed-docs">' . __( 'Docs', 'woo-feed' ) . '</span>', 'manage_woocommerce', 'webappick-feed-docs', array( WooFeedDocs::getInstance(), 'woo_feed_docs' ) );
240
  }
241
  }
236
  add_submenu_page( 'webappick-manage-feeds', __( 'Make Feed', 'woo-feed' ), __( 'Make Feed', 'woo-feed' ), 'manage_woocommerce', 'webappick-new-feed', 'woo_feed_generate_new_feed' );
237
  add_submenu_page( 'webappick-manage-feeds', __( 'Category Mapping', 'woo-feed' ), __( 'Category Mapping', 'woo-feed' ), 'manage_woocommerce', 'webappick-feed-category-mapping', 'woo_feed_category_mapping' );
238
  add_submenu_page( 'webappick-manage-feeds', __( 'Settings', 'woo-feed' ), __( 'Settings', 'woo-feed' ), 'manage_woocommerce', 'webappick-feed-settings', 'woo_feed_config_feed' );
239
+ add_submenu_page( 'webappick-manage-feeds', __( 'Status', 'woo-feed' ), __( 'Status', 'woo-feed' ), 'manage_woocommerce', 'webappick-wp-status', 'woo_feed_system_status' );
240
  add_submenu_page( 'webappick-manage-feeds', __( 'Documentation', 'woo-feed' ), '<span class="woo-feed-docs">' . __( 'Docs', 'woo-feed' ) . '</span>', 'manage_woocommerce', 'webappick-feed-docs', array( WooFeedDocs::getInstance(), 'woo_feed_docs' ) );
241
  }
242
  }
admin/css/woo-feed-admin.css CHANGED
@@ -50,6 +50,26 @@
50
  .woo_feed_manage_list_table .wf_update_interval_btn:hover {
51
  background: linear-gradient(125deg, #3cb0fd 0, #152f8c 140%); }
52
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
53
  .wftooltip {
54
  display: none;
55
  position: absolute;
@@ -1325,3 +1345,21 @@ table.wf-rate-table a.review-star:after {
1325
  .wf_clean_cache_wrapper button:hover {
1326
  background: #ff7979;
1327
  color: #fff; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50
  .woo_feed_manage_list_table .wf_update_interval_btn:hover {
51
  background: linear-gradient(125deg, #3cb0fd 0, #152f8c 140%); }
52
 
53
+ .woo-feed-promotion {
54
+ position: relative; }
55
+ .woo-feed-promotion .woo-feed-campaign-close-button {
56
+ position: absolute;
57
+ top: 50%;
58
+ -webkit-transform: translateY(-50%);
59
+ transform: translateY(-50%);
60
+ right: 15px;
61
+ width: 24px;
62
+ height: 24px;
63
+ border-radius: 12px;
64
+ background: #595d6b;
65
+ line-height: 24px;
66
+ color: #fff;
67
+ cursor: pointer;
68
+ transition: .3s ease; }
69
+ .woo-feed-promotion .woo-feed-campaign-close-button:hover {
70
+ background: #fff;
71
+ color: #d61e48; }
72
+
73
  .wftooltip {
74
  display: none;
75
  position: absolute;
1345
  .wf_clean_cache_wrapper button:hover {
1346
  background: #ff7979;
1347
  color: #fff; }
1348
+
1349
+ /* Status Page Style */
1350
+ .woo-feed-status-table-wrapper .woo-feed-status-table {
1351
+ width: 100%;
1352
+ max-width: 900px;
1353
+ border-collapse: collapse;
1354
+ border-spacing: 0.5rem;
1355
+ box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1); }
1356
+ .woo-feed-status-table-wrapper .woo-feed-status-table tr:nth-child(even) {
1357
+ background: #f1f1f1; }
1358
+ .woo-feed-status-table-wrapper .woo-feed-status-table tr:nth-child(odd) {
1359
+ background: #fafafc; }
1360
+ .woo-feed-status-table-wrapper .woo-feed-status-table tr th {
1361
+ background: #353b48;
1362
+ color: #fff; }
1363
+ .woo-feed-status-table-wrapper .woo-feed-status-table tr th, .woo-feed-status-table-wrapper .woo-feed-status-table tr td {
1364
+ padding: 0.5rem 20px;
1365
+ text-align: left; }
admin/css/woo-feed-admin.min.css CHANGED
@@ -1 +1 @@
1
- .wpf_spin{-webkit-animation:spin 1s infinite linear;animation:spin 1s infinite linear}.wpf_spin.reverse_spin{animation-direction:reverse}.wpf_regenerate.disabled{color:#737373;box-shadow:none;cursor:not-allowed}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.wfbtn{background:#3498db;background-image:linear-gradient(125deg,#3cb0fd 0,#152f8c 140%);border-radius:17px;box-shadow:inset 0 1px 3px #666;font-family:Arial,sans-serif;color:#fff;font-size:20px;padding:10px 20px 10px 20px;border:solid #2b698f 0;text-decoration:none}.wfbtn:hover{background:#3cb0fd;background-image:linear-gradient(to bottom,#3cb0fd,#3498db);text-decoration:none}.woo_feed_manage_list_table .wf_update_interval_btn{background:linear-gradient(125deg,#3cb0fd 0,#152f8c 140%)}.woo_feed_manage_list_table .wf_update_interval_btn:hover{background:linear-gradient(125deg,#3cb0fd 0,#152f8c 140%)}.wftooltip{display:none;position:absolute;border:1px solid #333;background-color:#161616;border-radius:5px;padding:10px;color:#fff;font-size:12px}.feed-actions .makeFeedResponse{width:70%;color:green}.woo-feed-mapping-input{width:100%}.requiredIn{color:red}.generalInput{width:200px}.generalInput:not(.selectize-control){margin:5px auto}.error{color:red}.widefat td input,.widefat td select{max-width:100%}#wf_newRow{margin-left:0}.mtable tbody tr{height:25px;border:1px solid #ccc;text-align:left;-ms-flex-align:baseline;align-items:baseline;font-weight:700}.mtable th:nth-child(1){width:17px}.mtable th:nth-child(2){width:160px}.mtable th:nth-child(3){width:100px}.mtable th:nth-child(4){width:100px}.mtable th:nth-child(5){width:150px}.mtable th:nth-child(6){width:100px}.mtable th:nth-child(7){width:150px}.mtable th:nth-child(8){width:90px}.mtable th:nth-child(9){width:29px}.mtable2 tbody tr{height:25px;border:1px solid #ccc;text-align:left;-ms-flex-align:baseline;align-items:baseline;font-weight:700}.mtable2 th:nth-child(1){width:30px}.mtable2 th:nth-child(2){width:150px}.mtable2 th:nth-child(3){width:230px}.mtable2 th:nth-child(4){width:220px}.mtable2 th:nth-child(7){width:50px}.mtable2 th:nth-child(8){width:50px}.mtable2 th:nth-child(9){width:29px}.wp-admin select.wf_mattributes{width:150px;left:0;height:25px}div#wf-tab-content1 select:not([name^=output_type]){width:100%}div#wf-tab-content1 input{width:100%}div#wf-tab-content1 .dashicons{vertical-align:middle}.wf_attributes{width:150px;left:0}.wf_compare{max-width:245px;left:0}.wf_ps{width:100px;left:0}.wf_sortedtable{cursor:move}.sorted_table{position:relative}.sorted_table .dragged{position:absolute;opacity:.8;z-index:9999;background:#fff;width:100%;display:table}.sorted_table tbody tr.placeholder td{border:1px dashed #2cc185;height:46px}.wfnoempty{width:120px}p{color:#222}.wf_tabs{position:relative;margin:0 auto;width:100%;list-style:none}.wf_tabs:after{display:table;clear:both;content:""}.wf_tabs li{float:left;width:20%;display:block;border:2px solid #ccc}.wf_tabs li>input[type=radio][name=wf_tabs]{position:absolute;top:auto;left:-9999px}.wf-tab-name{display:block;padding:15px;font-size:15px;font-weight:700;line-height:1;background:#fff;cursor:pointer;position:relative;text-align:center;text-transform:uppercase;color:#2cc185}.wf-tab-name:hover{background:#2cc185;color:#fff}.wf_tabs [id^=tab]:checked+label{background:#2cc185;color:#fff}.wf_tabs .wf-tab-content{z-index:2;display:none;width:100%;font-size:.9rem;position:absolute;left:0;background:#fff;border:2px solid #ccc}.wf_tabs [id^=tab]:checked~[id^=wf-tab-content]{display:block}[id^=wf-tab-content]{margin-bottom:40px}div#wf-tab-content2 table:first-child{padding:10px 0}div#wf-tab-content2 table:first-child td:nth-child(1){width:260px}div#wf-tab-content2 table:first-child td:nth-child(2){width:260px}table.feed-actions tr td:last-child{text-align:right}select.selectize{display:none}body.no-js select.selectize{display:block!important}.wp-list-table .option_name .wf_feed_option_name_link{font-weight:700;color:#30336b}.wp-list-table #option_name a{color:#32373c}.selectize-dropdown .active{background-color:#edf9ff}.selectize-dropdown .create{padding:5px 8px}.wapk-selectize-item{background:#0073aa!important;color:#f1f1f1!important;font-weight:700!important;border-color:#0073aa!important;padding-left:5px;padding-right:5px}.selectize-input.full #googleTaxonomyId-selectized{opacity:0;position:absolute;left:-10000px}.selectize-dropdown [data-selectable].option{cursor:default}.selectize-control.plugin-remove_button [data-value] .remove{border-left:1px solid #f1f1f1!important}.selectize-dropdown .optgroup-header{font-weight:700;background:#efefef;color:#5a5a5a}.selectize-dropdown [data-selectable].option{cursor:pointer}.wf_status_wrap label{width:55px;height:30px;box-sizing:border-box;float:left;border-radius:100px;position:relative;cursor:pointer;transition:.3s ease;background:#d3d3d3}input[class=woo_feed_status_input]:checked+label{background:#4fbe79}input[class=woo_feed_status_input]:checked+label:before{left:29px}.wf_status_wrap label:before{transition:.3s ease;content:'';width:20px;height:20px;position:absolute;background:#fff;left:6px;top:5px;box-sizing:border-box;color:#000;border-radius:100px;box-shadow:0 1.5px 2px 0 #000}.view span.dashicons.dashicons-external{color:#30336b}.view span.dashicons.dashicons-sos{color:#22a6b3}.view span.dashicons.dashicons-download{color:#ee5253}.view span.dashicons.dashicons-media-code{color:#576574}.column-url,.widefat td.column-url,.widefat th.column-url{color:#1e8f9a;font-weight:700}.feed-progress-container{width:100%;color:#fff;text-align:center;font-weight:300}.feed-progress-bar{width:100%;background:#eee;padding:3px;border-radius:50px;box-shadow:inset 0 1px 3px rgba(0,0,0,.2)}.feed-progress-bar-fill{height:20px;display:block;background:linear-gradient(to right top,#10ac84,#13b389,#15ba8f,#18c194,#1ac89a,#13cba1,#0acfa9,#00d2b0,#00d2ba,#00d2c3,#00d2cb,#00d2d3);width:0;border-radius:50px;transition:width .8s ease}.feed-progress-status{float:left;font-weight:700;color:#00008b}.feed-progress-percentage{text-align:right;font-weight:bolder;color:#1dd1a1;font-family:'Arial Black',sans-serif;font-size:large}#wpbody-content.woofeed-body-content{overflow:visible!important}.clippy{position:relative;width:13px;margin-top:-3px;margin-left:3px;top:3px}.column-url .clippy{display:none}.column-url:hover .clippy{display:inline-block}.tooltipped{position:relative}.tooltipped:after{position:absolute;z-index:1000000;display:none;padding:5px 8px;font:normal normal 11px/1.5 Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,"Segoe UI Emoji","Segoe UI Symbol";color:#fff;text-align:center;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-wrap:break-word;white-space:pre;pointer-events:none;content:attr(aria-label);background:rgba(0,0,0,.8);border-radius:3px;-webkit-font-smoothing:subpixel-antialiased}.tooltipped:before{position:absolute;z-index:1000001;display:none;width:0;height:0;color:rgba(0,0,0,.8);pointer-events:none;content:"";border:5px solid transparent}.tooltipped:hover:before{display:inline-block;text-decoration:none}.tooltipped:hover:after{display:inline-block;text-decoration:none}.tooltipped:active:before{display:inline-block;text-decoration:none}.tooltipped:active:after{display:inline-block;text-decoration:none}.tooltipped:focus:before{display:inline-block;text-decoration:none}.tooltipped:focus:after{display:inline-block;text-decoration:none}.tooltipped-multiline:hover:after{display:table-cell}.tooltipped-multiline:active:after{display:table-cell}.tooltipped-multiline:focus:after{display:table-cell}.tooltipped-multiline:after{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:250px;word-break:break-word;word-wrap:normal;white-space:pre-line;border-collapse:separate}.tooltipped-s:after{top:100%;right:50%;margin-top:5px;-webkit-transform:translateX(50%);transform:translateX(50%)}.tooltipped-s:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-se:after{top:100%;margin-top:5px;right:auto;left:50%;margin-left:-15px}.tooltipped-se:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-sw:after{top:100%;right:50%;margin-top:5px;margin-right:-15px}.tooltipped-sw:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-n:after{right:50%;bottom:100%;margin-bottom:5px;-webkit-transform:translateX(50%);transform:translateX(50%)}.tooltipped-n:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-ne:after{bottom:100%;margin-bottom:5px;right:auto;left:50%;margin-left:-15px}.tooltipped-ne:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-nw:after{right:50%;bottom:100%;margin-bottom:5px;margin-right:-15px}.tooltipped-nw:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-w:after{right:100%;bottom:50%;margin-right:5px;-webkit-transform:translateY(50%);transform:translateY(50%)}.tooltipped-w:before{top:50%;bottom:50%;left:-5px;margin-top:-5px;border-left-color:rgba(0,0,0,.8)}.tooltipped-e:after{bottom:50%;left:100%;margin-left:5px;-webkit-transform:translateY(50%);transform:translateY(50%)}.tooltipped-e:before{top:50%;right:-5px;bottom:50%;margin-top:-5px;border-right-color:rgba(0,0,0,.8)}.tooltipped-multiline.tooltipped-s:after{right:auto;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tooltipped-multiline.tooltipped-n:after{right:auto;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tooltipped-multiline.tooltipped-w:after{right:100%}.tooltipped-multiline.tooltipped-e:after{right:100%}.tooltipped-sticky:before{display:inline-block}.tooltipped-sticky:after{display:inline-block}.tooltipped-sticky.tooltipped-multiline:after{display:table-cell}.fullscreen-overlay-enabled.dark-theme .tooltipped:after{color:#000;background:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-s:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-se:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-sw:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-n:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-ne:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-nw:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-e:before{border-right-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-w:before{border-left-color:rgba(255,255,255,.8)}@media screen and (min-width:0\0){.tooltipped-multiline:after{width:250px}}ul.tracker_collection_list{list-style:initial;padding:initial;margin:-10px 0 0 30px;font-size:11px!important}ul.tracker_collection_list li{margin:0}table.wf-info-table,table.wf-rate-table{vertical-align:middle;text-align:center;max-width:100%;font-weight:500}table.wf-info-table th,table.wf-rate-table th{text-align:center}table.wf-info-table th .woo-feed-top-header,table.wf-rate-table th .woo-feed-top-header{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}table.wf-info-table th .woo-feed-top-header .get-woo-feed-pro,table.wf-rate-table th .woo-feed-top-header .get-woo-feed-pro{margin-left:20px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons{float:right;display:-ms-flexbox;display:flex;border-radius:7px;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a{padding:8px 20px;background:#576574;color:#fff;box-sizing:border-box;display:inline-block;transition:.3s ease}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-doc-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-doc-link{background:#576574;border-top-left-radius:5px;border-bottom-left-radius:5px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-video-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-video-link{background:#ee5253}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-support-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-support-link{background:#22a6b3;border-top-right-radius:5px;border-bottom-right-radius:5px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a span.dashicons,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a span.dashicons{font-size:18px;line-height:1.2}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a:hover,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a:hover{background:#30336b;box-shadow:0 0 33px 0 rgba(0,0,0,.12)}table.wf-info-table strong,table.wf-rate-table strong{font-weight:700}table.wf-info-table th:first-child img{margin:0 0 -5px 5px}table.wf-rate-table a{color:#0073aa}table.wf-rate-table a.review-star:after{content:"\f155\f155\f155\f155\f155"!important;font-family:dashicons;font-size:10px;font-weight:100;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#0073aa;text-decoration:underline}#adminmenu #toplevel_page_webappick-manage-feeds div.wp-menu-image::before{content:"";background:url(../images/woo-feed-icon.svg) no-repeat center center;background-size:20px 20px;opacity:.6}#adminmenu #toplevel_page_webappick-manage-feeds:hover div.wp-menu-image::before{opacity:1}#adminmenu #toplevel_page_webappick-manage-feeds.wp-has-current-submenu div.wp-menu-image::before{opacity:1}.wapk-admin,.wapk-admin *{box-sizing:border-box}.wapk-admin{position:relative;display:block;-webkit-hyphens:manual;-ms-hyphens:manual;-moz-hyphens:manual;hyphens:manual;color:#1b2730;margin:0 0 0 -10px}@media screen and (min-width:783px){.wapk-admin{margin:0 0 0 -20px}}.text-center{text-align:center}.wapk-admin h1,.wapk-admin h2,.wapk-admin h3,.wapk-admin h4,.wapk-admin h5,.wapk-admin h6,.wapk-admin p{color:#1b2730}.wapk-admin sup{vertical-align:baseline;position:relative;top:-6px}.wapk-admin sub{vertical-align:baseline;position:relative;top:4px}.wapk-admin .wapk-section{margin:10px 20px 0 22px;position:relative;display:block}.wapk-admin .wapk-section [class$=icon32]+h2{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin .wapk-section h1{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin .wapk-section>h2:first-child{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin>.notice{margin:10px 20px 0 22px;position:relative;display:block}.wapk-admin span.help{display:block;float:left;width:100%;font-size:.9em;color:#636363;margin-top:5px;font-weight:500}.wapk-admin span.help .dashicons{width:11px;height:12px;font-size:inherit;vertical-align:middle}.clear:after{content:"";display:table;clear:both}.wapk-feed-docs .postbox{width:355px;margin-right:20px;display:inline-block;vertical-align:top}.wapk-feed-docs .postbox .hndle{font-size:14px;padding:8px 12px;margin:0;line-height:1.4;cursor:pointer}.wapk-feed-docs .postbox .dashicons{color:#ccc}.wapk-feed-docs .postbox a{text-decoration:none}.wapk-feed-docs .postbox .inside{margin-bottom:0}.wapk-feed-docs .postbox ul{margin-bottom:0}.wapk-feed-docs .postbox .toggle-indicator:before{content:"\F142";display:inline-block;font:400 20px/1 dashicons;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none!important}.wapk-feed-docs .postbox li{width:100%;display:block;float:left}.wapk-feed-docs .postbox li span{display:inline-block;float:left;margin-right:4px}.wapk-feed-docs .postbox li a{display:inline-block;float:left;width:calc(100% - 24px)}.wapk-feed-docs .postbox.closed .toggle-indicator:before{content:"\F140"}.wapk-section #post-body.columns-2 #side-sortables{min-height:196px}#poststuff #feed_merchant_info .inside{margin:0;padding:0}#feed_merchant_info ul.data{margin-left:24px;margin-top:5px}#feed_merchant_info ul.data li{margin-bottom:5px}.merchant-info-section{padding:6px 10px 8px}.generateFeed .wf-tab-content table:first-child{border:none;box-shadow:none}.generateFeed table th{font-weight:700}@media only screen and (max-width:850px){.wapk-feed-docs .postbox{display:block;width:auto;float:none;margin-right:auto}}.wp-submenu li span.woo-feed-docs{font-weight:700;color:#f18500}.wp-submenu li:hover span.woo-feed-docs{color:#ce7304}.wp-submenu li.current span.woo-feed-docs{color:#ce7304}.wapk-admin .wapk-feed-docs .postbox .hndle{cursor:default}.wapk-cta{position:relative;display:-ms-flexbox;display:flex;width:100%;padding:100px 15px;background:linear-gradient(45deg,#6cd5ff 33%,#c2efef 100%);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.wapk-cta-icon .dashicons{font-size:100px;width:100px;height:auto;margin:0 10px -8px 0;color:#02658c}.wapk-cta-content{width:50%}.wapk-cta-content h2{font-size:2em;margin:.5em 0}.wapk-cta-action a.wapk-button{font-size:24px;height:auto!important;padding:10px 20px}@media (max-width:600px){.wapk-cta{display:block;text-align:center;padding:4em 0}.wapk-cta-content{width:100%;margin:2em 0}}.wapk-button{color:#00d4d4;border-color:#00d4d4;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wapk-button>svg{width:15px;margin-left:5px;fill:#00d4d4}.wapk-button>.dashicons{color:#00d4d4}.wapk-button:hover{border-color:#0bb;color:#0bb}.wapk-button:hover>svg{fill:#0bb}.wapk-button:hover>.dashicons{color:#0bb}.wapk-button:focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button:focus>svg{fill:#0bb}.wapk-button:focus>.dashicons{color:#0bb}.wapk-button:active{background:#0bb;border-color:#0bb}.wapk-button-secondary{color:#00d4d4;border-color:#00d4d4;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wapk-button-secondary>svg{width:15px;margin-left:5px;fill:#00d4d4}.wapk-button-secondary>.dashicons{color:#00d4d4}.wapk-button-secondary:hover{border-color:#0bb;color:#0bb}.wapk-button-secondary:hover>svg{fill:#0bb}.wapk-button-secondary:hover>.dashicons{color:#0bb}.wapk-button-secondary:focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button-secondary:focus>svg{fill:#0bb}.wapk-button-secondary:focus>.dashicons{color:#0bb}.wapk-button-primary{display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box;background:#00d4d4;border-color:#00d4d4;color:#fff;box-shadow:0 1px 0 #0bb;text-shadow:0 -1px 1px #0bb,1px 0 1px #0bb,0 1px 1px #0bb,-1px 0 1px #0bb}.wapk-button-primary>svg{fill:#fff}.wapk-button-primary:hover{background:#00e3e3;border-color:#00c5c5;color:#fff}.wapk-button-primary:hover>svg{fill:#fff}.wapk-button-primary:focus{background:#00e3e3;border-color:#00c5c5;color:#fff;box-shadow:0 0 0 1px #fff,0 0 0 3px #00d4d4}.wapk-button-primary:focus>svg{fill:#fff}.wapk-button-primary:active{background:#0bb;border-color:#0bb;color:#fff}.wapk-button-primary:active>svg{fill:#fff}.wapk-button-primary:disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary:disabled>svg{fill:#c7d1d1!important}.wapk-button.hover{border-color:#0bb;color:#0bb}.wapk-button.hover>svg{fill:#0bb}.wapk-button.hover>.dashicons{color:#0bb}.wapk-button.focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button.focus>svg{fill:#0bb}.wapk-button.focus>.dashicons{color:#0bb}.wapk-button.active{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:focus{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:focus>svg{fill:#0bb}.wapk-button.active:focus>.dashicons{color:#0bb}.wapk-button.active:hover{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:hover>svg{fill:#0bb}.wapk-button.active:hover>.dashicons{color:#0bb}.wapk-button.active>svg{fill:#0bb}.wapk-button.active>.dashicons{color:#0bb}.wapk-button-primary.active{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:focus{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:focus>svg{fill:#fff}.wapk-button-primary.active:hover{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:hover>svg{fill:#fff}.wapk-button-primary.active>svg{fill:#fff}.wapk-button-primary[disabled]{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary[disabled]>svg{fill:#c7d1d1!important}.wapk-button-primary.wapk-button-primary-disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary.wapk-button-primary-disabled>svg{fill:#c7d1d1!important}.wapk-button-primary.disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary.disabled>svg{fill:#c7d1d1!important}.wapk-button-primary.wapk-button-hero{box-shadow:0 2px 0 #0bb}.wapk-button-primary.wapk-button-hero:focus{box-shadow:0 2px 0 #0bb,0 1px 0 #00c5c5,0 0 2px 1px #0ee}.wapk-button-primary.wapk-button-hero:active{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-primary.wapk-button-hero.active{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-primary.wapk-button-hero.active:focus,.wapk-button-primary.wapk-button-hero.active:hover{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-group>.wapk-button.active{border-color:#00d4d4}.wapk-button.wapk-button-xl{height:30px;line-height:28px;padding:0 12px 2px}.wapk-button-group.wapk-button-xl .wapk-button{height:30px;line-height:28px;padding:0 12px 2px}.wapk-button.wapk-button-hero{font-size:18px;height:50px;line-height:48px;padding:0 36px;min-height:46px}.wapk-button-group.wapk-button-hero .wapk-button{font-size:18px;height:50px;line-height:48px;padding:0 36px;min-height:46px}@media screen and (min-width:782px){th#provider,th#status{width:80px}th#type{width:50px}th#option_name{width:100px}td.option_name.column-option_name>span:first-child{display:none}th#last_updated{width:90px}th#view{width:111px}}@media screen and (min-width:960px){th#provider,th#status{width:100px}th#type{width:80px}th#option_name{width:150px}th#last_updated{width:140px}}@media screen and (max-width:782px){table.wf-info-table{margin-top:10px}table.wf-info-table th:first-child img{margin:0 auto;display:block}.wapk-button.wapk-button-xl{padding:6px 14px;line-height:normal;font-size:14px;vertical-align:middle;height:auto;margin-bottom:4px}}.wapk-feed-docs .wapk-feed-cta{margin:0}.campaign_configurator{background:#fff;padding:20px 0}.campaign_configurator table{margin:0 auto;width:51%;min-width:574px;border:none;box-shadow:none}.campaign_configurator th{min-width:120px}@media screen and (max-width:782px){.campaign_configurator{padding:0}.campaign_configurator table{width:auto;min-width:auto;max-width:100%}.campaign_configurator th{min-width:auto}}#wf-tab-content-config td>input:not([type=checkbox]):not([type=radio]),#wf-tab-content-config td>select,#wf-tab-content-config td>textarea{width:100%!important}.woo-feed-filters td>div:nth-child(2n):not(.clear):not(.selectize){width:120px;display:block}.woo-feed-filters td>div:not(.clear){float:left;margin-right:10px}.woo-feed-filters tr>td:first-child{width:290px;padding-left:40px}.woo-feed-filters,.woo-feed-ftp{margin:15px auto 25px}.wf_clean_cache_wrapper{display:-ms-flexbox;display:flex;margin-left:auto}@-webkit-keyframes LoaderClockWise{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes LoaderClockWise{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.woo-feed-cache-loader{width:18px;margin-right:5px;animation:LoaderClockWise 1s linear infinite;-webkit-animation:LoaderClockWise 1s linear infinite;display:none}.woo-feed-table-heading .woo-feed-table-heading-title{float:left;margin-right:auto;display:inline-block;line-height:30px}.woo-feed-table-heading .wf_clean_cache_wrapper{float:right;font-weight:400}.wf_clean_cache_wrapper button{background:linear-gradient(125deg,#eb4d4b 0,#ff9671 130%);color:#fff;border:none;font-weight:500;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;border-radius:3px;cursor:pointer;outline:0}.wf_clean_cache_wrapper button:hover{background:#ff7979;color:#fff}
1
+ .wpf_spin{-webkit-animation:spin 1s infinite linear;animation:spin 1s infinite linear}.wpf_spin.reverse_spin{animation-direction:reverse}.wpf_regenerate.disabled{color:#737373;box-shadow:none;cursor:not-allowed}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.wfbtn{background:#3498db;background-image:linear-gradient(125deg,#3cb0fd 0,#152f8c 140%);border-radius:17px;box-shadow:inset 0 1px 3px #666;font-family:Arial,sans-serif;color:#fff;font-size:20px;padding:10px 20px 10px 20px;border:solid #2b698f 0;text-decoration:none}.wfbtn:hover{background:#3cb0fd;background-image:linear-gradient(to bottom,#3cb0fd,#3498db);text-decoration:none}.woo_feed_manage_list_table .wf_update_interval_btn{background:linear-gradient(125deg,#3cb0fd 0,#152f8c 140%)}.woo_feed_manage_list_table .wf_update_interval_btn:hover{background:linear-gradient(125deg,#3cb0fd 0,#152f8c 140%)}.woo-feed-promotion{position:relative}.woo-feed-promotion .woo-feed-campaign-close-button{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);right:15px;width:24px;height:24px;border-radius:12px;background:#595d6b;line-height:24px;color:#fff;cursor:pointer;transition:.3s ease}.woo-feed-promotion .woo-feed-campaign-close-button:hover{background:#fff;color:#d61e48}.wftooltip{display:none;position:absolute;border:1px solid #333;background-color:#161616;border-radius:5px;padding:10px;color:#fff;font-size:12px}.feed-actions .makeFeedResponse{width:70%;color:green}.woo-feed-mapping-input{width:100%}.requiredIn{color:red}.generalInput{width:200px}.generalInput:not(.selectize-control){margin:5px auto}.error{color:red}.widefat td input,.widefat td select{max-width:100%}#wf_newRow{margin-left:0}.mtable tbody tr{height:25px;border:1px solid #ccc;text-align:left;-ms-flex-align:baseline;align-items:baseline;font-weight:700}.mtable th:nth-child(1){width:17px}.mtable th:nth-child(2){width:160px}.mtable th:nth-child(3){width:100px}.mtable th:nth-child(4){width:100px}.mtable th:nth-child(5){width:150px}.mtable th:nth-child(6){width:100px}.mtable th:nth-child(7){width:150px}.mtable th:nth-child(8){width:90px}.mtable th:nth-child(9){width:29px}.mtable2 tbody tr{height:25px;border:1px solid #ccc;text-align:left;-ms-flex-align:baseline;align-items:baseline;font-weight:700}.mtable2 th:nth-child(1){width:30px}.mtable2 th:nth-child(2){width:150px}.mtable2 th:nth-child(3){width:230px}.mtable2 th:nth-child(4){width:220px}.mtable2 th:nth-child(7){width:50px}.mtable2 th:nth-child(8){width:50px}.mtable2 th:nth-child(9){width:29px}.wp-admin select.wf_mattributes{width:150px;left:0;height:25px}div#wf-tab-content1 select:not([name^=output_type]){width:100%}div#wf-tab-content1 input{width:100%}div#wf-tab-content1 .dashicons{vertical-align:middle}.wf_attributes{width:150px;left:0}.wf_compare{max-width:245px;left:0}.wf_ps{width:100px;left:0}.wf_sortedtable{cursor:move}.sorted_table{position:relative}.sorted_table .dragged{position:absolute;opacity:.8;z-index:9999;background:#fff;width:100%;display:table}.sorted_table tbody tr.placeholder td{border:1px dashed #2cc185;height:46px}.wfnoempty{width:120px}p{color:#222}.wf_tabs{position:relative;margin:0 auto;width:100%;list-style:none}.wf_tabs:after{display:table;clear:both;content:""}.wf_tabs li{float:left;width:20%;display:block;border:2px solid #ccc}.wf_tabs li>input[type=radio][name=wf_tabs]{position:absolute;top:auto;left:-9999px}.wf-tab-name{display:block;padding:15px;font-size:15px;font-weight:700;line-height:1;background:#fff;cursor:pointer;position:relative;text-align:center;text-transform:uppercase;color:#2cc185}.wf-tab-name:hover{background:#2cc185;color:#fff}.wf_tabs [id^=tab]:checked+label{background:#2cc185;color:#fff}.wf_tabs .wf-tab-content{z-index:2;display:none;width:100%;font-size:.9rem;position:absolute;left:0;background:#fff;border:2px solid #ccc}.wf_tabs [id^=tab]:checked~[id^=wf-tab-content]{display:block}[id^=wf-tab-content]{margin-bottom:40px}div#wf-tab-content2 table:first-child{padding:10px 0}div#wf-tab-content2 table:first-child td:nth-child(1){width:260px}div#wf-tab-content2 table:first-child td:nth-child(2){width:260px}table.feed-actions tr td:last-child{text-align:right}select.selectize{display:none}body.no-js select.selectize{display:block!important}.wp-list-table .option_name .wf_feed_option_name_link{font-weight:700;color:#30336b}.wp-list-table #option_name a{color:#32373c}.selectize-dropdown .active{background-color:#edf9ff}.selectize-dropdown .create{padding:5px 8px}.wapk-selectize-item{background:#0073aa!important;color:#f1f1f1!important;font-weight:700!important;border-color:#0073aa!important;padding-left:5px;padding-right:5px}.selectize-input.full #googleTaxonomyId-selectized{opacity:0;position:absolute;left:-10000px}.selectize-dropdown [data-selectable].option{cursor:default}.selectize-control.plugin-remove_button [data-value] .remove{border-left:1px solid #f1f1f1!important}.selectize-dropdown .optgroup-header{font-weight:700;background:#efefef;color:#5a5a5a}.selectize-dropdown [data-selectable].option{cursor:pointer}.wf_status_wrap label{width:55px;height:30px;box-sizing:border-box;float:left;border-radius:100px;position:relative;cursor:pointer;transition:.3s ease;background:#d3d3d3}input[class=woo_feed_status_input]:checked+label{background:#4fbe79}input[class=woo_feed_status_input]:checked+label:before{left:29px}.wf_status_wrap label:before{transition:.3s ease;content:'';width:20px;height:20px;position:absolute;background:#fff;left:6px;top:5px;box-sizing:border-box;color:#000;border-radius:100px;box-shadow:0 1.5px 2px 0 #000}.view span.dashicons.dashicons-external{color:#30336b}.view span.dashicons.dashicons-sos{color:#22a6b3}.view span.dashicons.dashicons-download{color:#ee5253}.view span.dashicons.dashicons-media-code{color:#576574}.column-url,.widefat td.column-url,.widefat th.column-url{color:#1e8f9a;font-weight:700}.feed-progress-container{width:100%;color:#fff;text-align:center;font-weight:300}.feed-progress-bar{width:100%;background:#eee;padding:3px;border-radius:50px;box-shadow:inset 0 1px 3px rgba(0,0,0,.2)}.feed-progress-bar-fill{height:20px;display:block;background:linear-gradient(to right top,#10ac84,#13b389,#15ba8f,#18c194,#1ac89a,#13cba1,#0acfa9,#00d2b0,#00d2ba,#00d2c3,#00d2cb,#00d2d3);width:0;border-radius:50px;transition:width .8s ease}.feed-progress-status{float:left;font-weight:700;color:#00008b}.feed-progress-percentage{text-align:right;font-weight:bolder;color:#1dd1a1;font-family:'Arial Black',sans-serif;font-size:large}#wpbody-content.woofeed-body-content{overflow:visible!important}.clippy{position:relative;width:13px;margin-top:-3px;margin-left:3px;top:3px}.column-url .clippy{display:none}.column-url:hover .clippy{display:inline-block}.tooltipped{position:relative}.tooltipped:after{position:absolute;z-index:1000000;display:none;padding:5px 8px;font:normal normal 11px/1.5 Helvetica,arial,nimbussansl,liberationsans,freesans,clean,sans-serif,"Segoe UI Emoji","Segoe UI Symbol";color:#fff;text-align:center;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-wrap:break-word;white-space:pre;pointer-events:none;content:attr(aria-label);background:rgba(0,0,0,.8);border-radius:3px;-webkit-font-smoothing:subpixel-antialiased}.tooltipped:before{position:absolute;z-index:1000001;display:none;width:0;height:0;color:rgba(0,0,0,.8);pointer-events:none;content:"";border:5px solid transparent}.tooltipped:hover:before{display:inline-block;text-decoration:none}.tooltipped:hover:after{display:inline-block;text-decoration:none}.tooltipped:active:before{display:inline-block;text-decoration:none}.tooltipped:active:after{display:inline-block;text-decoration:none}.tooltipped:focus:before{display:inline-block;text-decoration:none}.tooltipped:focus:after{display:inline-block;text-decoration:none}.tooltipped-multiline:hover:after{display:table-cell}.tooltipped-multiline:active:after{display:table-cell}.tooltipped-multiline:focus:after{display:table-cell}.tooltipped-multiline:after{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:250px;word-break:break-word;word-wrap:normal;white-space:pre-line;border-collapse:separate}.tooltipped-s:after{top:100%;right:50%;margin-top:5px;-webkit-transform:translateX(50%);transform:translateX(50%)}.tooltipped-s:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-se:after{top:100%;margin-top:5px;right:auto;left:50%;margin-left:-15px}.tooltipped-se:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-sw:after{top:100%;right:50%;margin-top:5px;margin-right:-15px}.tooltipped-sw:before{top:auto;right:50%;bottom:-5px;margin-right:-5px;border-bottom-color:rgba(0,0,0,.8)}.tooltipped-n:after{right:50%;bottom:100%;margin-bottom:5px;-webkit-transform:translateX(50%);transform:translateX(50%)}.tooltipped-n:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-ne:after{bottom:100%;margin-bottom:5px;right:auto;left:50%;margin-left:-15px}.tooltipped-ne:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-nw:after{right:50%;bottom:100%;margin-bottom:5px;margin-right:-15px}.tooltipped-nw:before{top:-5px;right:50%;bottom:auto;margin-right:-5px;border-top-color:rgba(0,0,0,.8)}.tooltipped-w:after{right:100%;bottom:50%;margin-right:5px;-webkit-transform:translateY(50%);transform:translateY(50%)}.tooltipped-w:before{top:50%;bottom:50%;left:-5px;margin-top:-5px;border-left-color:rgba(0,0,0,.8)}.tooltipped-e:after{bottom:50%;left:100%;margin-left:5px;-webkit-transform:translateY(50%);transform:translateY(50%)}.tooltipped-e:before{top:50%;right:-5px;bottom:50%;margin-top:-5px;border-right-color:rgba(0,0,0,.8)}.tooltipped-multiline.tooltipped-s:after{right:auto;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tooltipped-multiline.tooltipped-n:after{right:auto;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tooltipped-multiline.tooltipped-w:after{right:100%}.tooltipped-multiline.tooltipped-e:after{right:100%}.tooltipped-sticky:before{display:inline-block}.tooltipped-sticky:after{display:inline-block}.tooltipped-sticky.tooltipped-multiline:after{display:table-cell}.fullscreen-overlay-enabled.dark-theme .tooltipped:after{color:#000;background:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-s:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-se:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped .tooltipped-sw:before{border-bottom-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-n:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-ne:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-nw:before{border-top-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-e:before{border-right-color:rgba(255,255,255,.8)}.fullscreen-overlay-enabled.dark-theme .tooltipped.tooltipped-w:before{border-left-color:rgba(255,255,255,.8)}@media screen and (min-width:0\0){.tooltipped-multiline:after{width:250px}}ul.tracker_collection_list{list-style:initial;padding:initial;margin:-10px 0 0 30px;font-size:11px!important}ul.tracker_collection_list li{margin:0}table.wf-info-table,table.wf-rate-table{vertical-align:middle;text-align:center;max-width:100%;font-weight:500}table.wf-info-table th,table.wf-rate-table th{text-align:center}table.wf-info-table th .woo-feed-top-header,table.wf-rate-table th .woo-feed-top-header{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}table.wf-info-table th .woo-feed-top-header .get-woo-feed-pro,table.wf-rate-table th .woo-feed-top-header .get-woo-feed-pro{margin-left:20px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons{float:right;display:-ms-flexbox;display:flex;border-radius:7px;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a{padding:8px 20px;background:#576574;color:#fff;box-sizing:border-box;display:inline-block;transition:.3s ease}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-doc-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-doc-link{background:#576574;border-top-left-radius:5px;border-bottom-left-radius:5px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-video-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-video-link{background:#ee5253}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-support-link,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a.woo-feed-support-link{background:#22a6b3;border-top-right-radius:5px;border-bottom-right-radius:5px}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a span.dashicons,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a span.dashicons{font-size:18px;line-height:1.2}table.wf-info-table th .woo-feed-top-header .woo-feed-top-buttons a:hover,table.wf-rate-table th .woo-feed-top-header .woo-feed-top-buttons a:hover{background:#30336b;box-shadow:0 0 33px 0 rgba(0,0,0,.12)}table.wf-info-table strong,table.wf-rate-table strong{font-weight:700}table.wf-info-table th:first-child img{margin:0 0 -5px 5px}table.wf-rate-table a{color:#0073aa}table.wf-rate-table a.review-star:after{content:"\f155\f155\f155\f155\f155"!important;font-family:dashicons;font-size:10px;font-weight:100;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#0073aa;text-decoration:underline}#adminmenu #toplevel_page_webappick-manage-feeds div.wp-menu-image::before{content:"";background:url(../images/woo-feed-icon.svg) no-repeat center center;background-size:20px 20px;opacity:.6}#adminmenu #toplevel_page_webappick-manage-feeds:hover div.wp-menu-image::before{opacity:1}#adminmenu #toplevel_page_webappick-manage-feeds.wp-has-current-submenu div.wp-menu-image::before{opacity:1}.wapk-admin,.wapk-admin *{box-sizing:border-box}.wapk-admin{position:relative;display:block;-webkit-hyphens:manual;-ms-hyphens:manual;-moz-hyphens:manual;hyphens:manual;color:#1b2730;margin:0 0 0 -10px}@media screen and (min-width:783px){.wapk-admin{margin:0 0 0 -20px}}.text-center{text-align:center}.wapk-admin h1,.wapk-admin h2,.wapk-admin h3,.wapk-admin h4,.wapk-admin h5,.wapk-admin h6,.wapk-admin p{color:#1b2730}.wapk-admin sup{vertical-align:baseline;position:relative;top:-6px}.wapk-admin sub{vertical-align:baseline;position:relative;top:4px}.wapk-admin .wapk-section{margin:10px 20px 0 22px;position:relative;display:block}.wapk-admin .wapk-section [class$=icon32]+h2{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin .wapk-section h1{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin .wapk-section>h2:first-child{font-size:23px;font-weight:400;margin:0;padding:9px 0 4px 0;line-height:1.3}.wapk-admin>.notice{margin:10px 20px 0 22px;position:relative;display:block}.wapk-admin span.help{display:block;float:left;width:100%;font-size:.9em;color:#636363;margin-top:5px;font-weight:500}.wapk-admin span.help .dashicons{width:11px;height:12px;font-size:inherit;vertical-align:middle}.clear:after{content:"";display:table;clear:both}.wapk-feed-docs .postbox{width:355px;margin-right:20px;display:inline-block;vertical-align:top}.wapk-feed-docs .postbox .hndle{font-size:14px;padding:8px 12px;margin:0;line-height:1.4;cursor:pointer}.wapk-feed-docs .postbox .dashicons{color:#ccc}.wapk-feed-docs .postbox a{text-decoration:none}.wapk-feed-docs .postbox .inside{margin-bottom:0}.wapk-feed-docs .postbox ul{margin-bottom:0}.wapk-feed-docs .postbox .toggle-indicator:before{content:"\F142";display:inline-block;font:400 20px/1 dashicons;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none!important}.wapk-feed-docs .postbox li{width:100%;display:block;float:left}.wapk-feed-docs .postbox li span{display:inline-block;float:left;margin-right:4px}.wapk-feed-docs .postbox li a{display:inline-block;float:left;width:calc(100% - 24px)}.wapk-feed-docs .postbox.closed .toggle-indicator:before{content:"\F140"}.wapk-section #post-body.columns-2 #side-sortables{min-height:196px}#poststuff #feed_merchant_info .inside{margin:0;padding:0}#feed_merchant_info ul.data{margin-left:24px;margin-top:5px}#feed_merchant_info ul.data li{margin-bottom:5px}.merchant-info-section{padding:6px 10px 8px}.generateFeed .wf-tab-content table:first-child{border:none;box-shadow:none}.generateFeed table th{font-weight:700}@media only screen and (max-width:850px){.wapk-feed-docs .postbox{display:block;width:auto;float:none;margin-right:auto}}.wp-submenu li span.woo-feed-docs{font-weight:700;color:#f18500}.wp-submenu li:hover span.woo-feed-docs{color:#ce7304}.wp-submenu li.current span.woo-feed-docs{color:#ce7304}.wapk-admin .wapk-feed-docs .postbox .hndle{cursor:default}.wapk-cta{position:relative;display:-ms-flexbox;display:flex;width:100%;padding:100px 15px;background:linear-gradient(45deg,#6cd5ff 33%,#c2efef 100%);-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.wapk-cta-icon .dashicons{font-size:100px;width:100px;height:auto;margin:0 10px -8px 0;color:#02658c}.wapk-cta-content{width:50%}.wapk-cta-content h2{font-size:2em;margin:.5em 0}.wapk-cta-action a.wapk-button{font-size:24px;height:auto!important;padding:10px 20px}@media (max-width:600px){.wapk-cta{display:block;text-align:center;padding:4em 0}.wapk-cta-content{width:100%;margin:2em 0}}.wapk-button{color:#00d4d4;border-color:#00d4d4;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wapk-button>svg{width:15px;margin-left:5px;fill:#00d4d4}.wapk-button>.dashicons{color:#00d4d4}.wapk-button:hover{border-color:#0bb;color:#0bb}.wapk-button:hover>svg{fill:#0bb}.wapk-button:hover>.dashicons{color:#0bb}.wapk-button:focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button:focus>svg{fill:#0bb}.wapk-button:focus>.dashicons{color:#0bb}.wapk-button:active{background:#0bb;border-color:#0bb}.wapk-button-secondary{color:#00d4d4;border-color:#00d4d4;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wapk-button-secondary>svg{width:15px;margin-left:5px;fill:#00d4d4}.wapk-button-secondary>.dashicons{color:#00d4d4}.wapk-button-secondary:hover{border-color:#0bb;color:#0bb}.wapk-button-secondary:hover>svg{fill:#0bb}.wapk-button-secondary:hover>.dashicons{color:#0bb}.wapk-button-secondary:focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button-secondary:focus>svg{fill:#0bb}.wapk-button-secondary:focus>.dashicons{color:#0bb}.wapk-button-primary{display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box;background:#00d4d4;border-color:#00d4d4;color:#fff;box-shadow:0 1px 0 #0bb;text-shadow:0 -1px 1px #0bb,1px 0 1px #0bb,0 1px 1px #0bb,-1px 0 1px #0bb}.wapk-button-primary>svg{fill:#fff}.wapk-button-primary:hover{background:#00e3e3;border-color:#00c5c5;color:#fff}.wapk-button-primary:hover>svg{fill:#fff}.wapk-button-primary:focus{background:#00e3e3;border-color:#00c5c5;color:#fff;box-shadow:0 0 0 1px #fff,0 0 0 3px #00d4d4}.wapk-button-primary:focus>svg{fill:#fff}.wapk-button-primary:active{background:#0bb;border-color:#0bb;color:#fff}.wapk-button-primary:active>svg{fill:#fff}.wapk-button-primary:disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary:disabled>svg{fill:#c7d1d1!important}.wapk-button.hover{border-color:#0bb;color:#0bb}.wapk-button.hover>svg{fill:#0bb}.wapk-button.hover>.dashicons{color:#0bb}.wapk-button.focus{border-color:#00d4d4;color:#0bb;box-shadow:0 0 0 1px #00d4d4}.wapk-button.focus>svg{fill:#0bb}.wapk-button.focus>.dashicons{color:#0bb}.wapk-button.active{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:focus{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:focus>svg{fill:#0bb}.wapk-button.active:focus>.dashicons{color:#0bb}.wapk-button.active:hover{border-color:#0bb;color:#0bb;box-shadow:inset 0 2px 5px -3px #0bb}.wapk-button.active:hover>svg{fill:#0bb}.wapk-button.active:hover>.dashicons{color:#0bb}.wapk-button.active>svg{fill:#0bb}.wapk-button.active>.dashicons{color:#0bb}.wapk-button-primary.active{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:focus{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:focus>svg{fill:#fff}.wapk-button-primary.active:hover{background:#00d4d4;color:#fff;border-color:#088;box-shadow:inset 0 2px 5px -3px #000}.wapk-button-primary.active:hover>svg{fill:#fff}.wapk-button-primary.active>svg{fill:#fff}.wapk-button-primary[disabled]{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary[disabled]>svg{fill:#c7d1d1!important}.wapk-button-primary.wapk-button-primary-disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary.wapk-button-primary-disabled>svg{fill:#c7d1d1!important}.wapk-button-primary.disabled{color:#c7d1d1!important;background:#2ff!important;border-color:#2ff!important;text-shadow:none!important}.wapk-button-primary.disabled>svg{fill:#c7d1d1!important}.wapk-button-primary.wapk-button-hero{box-shadow:0 2px 0 #0bb}.wapk-button-primary.wapk-button-hero:focus{box-shadow:0 2px 0 #0bb,0 1px 0 #00c5c5,0 0 2px 1px #0ee}.wapk-button-primary.wapk-button-hero:active{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-primary.wapk-button-hero.active{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-primary.wapk-button-hero.active:focus,.wapk-button-primary.wapk-button-hero.active:hover{box-shadow:inset 0 3px 0 #00a1a1}.wapk-button-group>.wapk-button.active{border-color:#00d4d4}.wapk-button.wapk-button-xl{height:30px;line-height:28px;padding:0 12px 2px}.wapk-button-group.wapk-button-xl .wapk-button{height:30px;line-height:28px;padding:0 12px 2px}.wapk-button.wapk-button-hero{font-size:18px;height:50px;line-height:48px;padding:0 36px;min-height:46px}.wapk-button-group.wapk-button-hero .wapk-button{font-size:18px;height:50px;line-height:48px;padding:0 36px;min-height:46px}@media screen and (min-width:782px){th#provider,th#status{width:80px}th#type{width:50px}th#option_name{width:100px}td.option_name.column-option_name>span:first-child{display:none}th#last_updated{width:90px}th#view{width:111px}}@media screen and (min-width:960px){th#provider,th#status{width:100px}th#type{width:80px}th#option_name{width:150px}th#last_updated{width:140px}}@media screen and (max-width:782px){table.wf-info-table{margin-top:10px}table.wf-info-table th:first-child img{margin:0 auto;display:block}.wapk-button.wapk-button-xl{padding:6px 14px;line-height:normal;font-size:14px;vertical-align:middle;height:auto;margin-bottom:4px}}.wapk-feed-docs .wapk-feed-cta{margin:0}.campaign_configurator{background:#fff;padding:20px 0}.campaign_configurator table{margin:0 auto;width:51%;min-width:574px;border:none;box-shadow:none}.campaign_configurator th{min-width:120px}@media screen and (max-width:782px){.campaign_configurator{padding:0}.campaign_configurator table{width:auto;min-width:auto;max-width:100%}.campaign_configurator th{min-width:auto}}#wf-tab-content-config td>input:not([type=checkbox]):not([type=radio]),#wf-tab-content-config td>select,#wf-tab-content-config td>textarea{width:100%!important}.woo-feed-filters td>div:nth-child(2n):not(.clear):not(.selectize){width:120px;display:block}.woo-feed-filters td>div:not(.clear){float:left;margin-right:10px}.woo-feed-filters tr>td:first-child{width:290px;padding-left:40px}.woo-feed-filters,.woo-feed-ftp{margin:15px auto 25px}.wf_clean_cache_wrapper{display:-ms-flexbox;display:flex;margin-left:auto}@-webkit-keyframes LoaderClockWise{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes LoaderClockWise{from{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.woo-feed-cache-loader{width:18px;margin-right:5px;animation:LoaderClockWise 1s linear infinite;-webkit-animation:LoaderClockWise 1s linear infinite;display:none}.woo-feed-table-heading .woo-feed-table-heading-title{float:left;margin-right:auto;display:inline-block;line-height:30px}.woo-feed-table-heading .wf_clean_cache_wrapper{float:right;font-weight:400}.wf_clean_cache_wrapper button{background:linear-gradient(125deg,#eb4d4b 0,#ff9671 130%);color:#fff;border:none;font-weight:500;display:inline-block;text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:0 10px;border-radius:3px;cursor:pointer;outline:0}.wf_clean_cache_wrapper button:hover{background:#ff7979;color:#fff}.woo-feed-status-table-wrapper .woo-feed-status-table{width:100%;max-width:900px;border-collapse:collapse;border-spacing:.5rem;box-shadow:0 0 20px rgba(0,0,0,.1)}.woo-feed-status-table-wrapper .woo-feed-status-table tr:nth-child(even){background:#f1f1f1}.woo-feed-status-table-wrapper .woo-feed-status-table tr:nth-child(odd){background:#fafafc}.woo-feed-status-table-wrapper .woo-feed-status-table tr th{background:#353b48;color:#fff}.woo-feed-status-table-wrapper .woo-feed-status-table tr td,.woo-feed-status-table-wrapper .woo-feed-status-table tr th{padding:.5rem 20px;text-align:left}
admin/css/woo-feed-admin.scss CHANGED
@@ -69,6 +69,28 @@
69
  }
70
  }
71
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
72
 
73
  .wftooltip {
74
  display: none;
@@ -1822,3 +1844,33 @@ table {
1822
  color: #fff;
1823
  }
1824
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
69
  }
70
  }
71
 
72
+ .woo-feed-promotion {
73
+ position: relative;
74
+ .woo-feed-campaign-close-button {
75
+ position: absolute;
76
+ top: 50%;
77
+ transform: translateY(-50%);
78
+ right: 15px;
79
+ width: 24px;
80
+ height: 24px;
81
+ border-radius: 12px;
82
+ background: #595d6b;
83
+ line-height: 24px;
84
+ color: #fff;
85
+ cursor: pointer;
86
+ transition: .3s ease;
87
+
88
+ &:hover {
89
+ background: #fff;
90
+ color: #d61e48;
91
+ }
92
+ }
93
+ }
94
 
95
  .wftooltip {
96
  display: none;
1844
  color: #fff;
1845
  }
1846
 
1847
+ /* Status Page Style */
1848
+ .woo-feed-status-table-wrapper {
1849
+ .woo-feed-status-table {
1850
+ width: 100%;
1851
+ max-width: 900px;
1852
+ border-collapse: collapse;
1853
+ border-spacing: 0.5rem;
1854
+ box-shadow: 0px 0px 20px rgba(0,0,0,0.10);
1855
+
1856
+ tr {
1857
+ &:nth-child(even) {
1858
+ background: #f1f1f1;
1859
+ }
1860
+
1861
+ &:nth-child(odd) {
1862
+ background: #fafafc;
1863
+ }
1864
+
1865
+ th {
1866
+ background: #353b48;
1867
+ color: #fff;
1868
+ }
1869
+
1870
+ th,td {
1871
+ padding: 0.5rem 20px;
1872
+ text-align: left;
1873
+ }
1874
+ }
1875
+ }
1876
+ }
admin/images/woo-feed-black-friday.svg ADDED
@@ -0,0 +1,115 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 1221 72.32">
2
+ <defs>
3
+ <style>
4
+ .cls-1 {
5
+ fill: none;
6
+ }
7
+
8
+ .cls-2 {
9
+ fill: #191a1d;
10
+ }
11
+
12
+ .cls-3 {
13
+ fill: #24262d;
14
+ }
15
+
16
+ .cls-4 {
17
+ fill: #d61e48;
18
+ }
19
+
20
+ .cls-5 {
21
+ fill: #fff;
22
+ }
23
+
24
+ .cls-6 {
25
+ clip-path: url(#clip-path);
26
+ }
27
+
28
+ .cls-7 {
29
+ fill: #cf1e46;
30
+ }
31
+
32
+ .cls-8 {
33
+ clip-path: url(#clip-path-2);
34
+ }
35
+ </style>
36
+ <clipPath id="clip-path">
37
+ <rect class="cls-1" x="530.97" y="29.2" width="61.7" height="16.2" transform="translate(55.1 282.8) rotate(-29.65)"/>
38
+ </clipPath>
39
+ <clipPath id="clip-path-2">
40
+ <rect class="cls-1" x="653" y="31" width="16.1" height="16.1"/>
41
+ </clipPath>
42
+ </defs>
43
+ <title>black-friday-woo-feed</title>
44
+ <g id="bg">
45
+ <rect class="cls-2" width="1221" height="72"/>
46
+ <path class="cls-3" d="M462.5,0C321.3,66.8,95.33,75.5,0,71.5V0Z"/>
47
+ <path class="cls-3" d="M1221,72V0c-68.27,0-178,20-240,72Z"/>
48
+ <g id="button">
49
+ <path class="cls-4" d="M1070.94,20h98.12A15.93,15.93,0,0,1,1185,35.94h0a15.93,15.93,0,0,1-15.94,15.93h-98.12A15.93,15.93,0,0,1,1055,35.94h0A15.93,15.93,0,0,1,1070.94,20Z"/>
50
+ <path class="cls-5" d="M1074,41l-2.46-4.35h-1.06V41h-2.24V29.83h4.19a4.81,4.81,0,0,1,2.21.47,3,3,0,0,1,1.36,1.23,3.28,3.28,0,0,1,.47,1.73,3.43,3.43,0,0,1-.64,2,3.35,3.35,0,0,1-1.91,1.21l2.67,4.53Zm-3.52-6h1.87a1.93,1.93,0,0,0,1.36-.43,1.67,1.67,0,0,0,.45-1.24,1.53,1.53,0,0,0-.45-1.18,1.88,1.88,0,0,0-1.36-.43h-1.87Zm16.25,1.41a5.61,5.61,0,0,1-.06.86h-6.48a2.15,2.15,0,0,0,.67,1.5,2,2,0,0,0,1.46.55,1.83,1.83,0,0,0,1.77-1.07h2.42a4.16,4.16,0,0,1-1.47,2.11,4.37,4.37,0,0,1-2.68.81,4.64,4.64,0,0,1-2.3-.56,4.08,4.08,0,0,1-1.58-1.61,5.47,5.47,0,0,1,0-4.82,3.94,3.94,0,0,1,1.56-1.6,4.77,4.77,0,0,1,2.32-.56,4.53,4.53,0,0,1,2.26.55,3.74,3.74,0,0,1,1.55,1.55A4.6,4.6,0,0,1,1086.71,36.38Zm-2.32-.64a1.76,1.76,0,0,0-.62-1.38,2.21,2.21,0,0,0-1.49-.53,2.05,2.05,0,0,0-1.41.51,2.25,2.25,0,0,0-.69,1.4Zm12.2.64a5.54,5.54,0,0,1-.07.86H1090a2.24,2.24,0,0,0,.67,1.5,2.06,2.06,0,0,0,1.46.55,1.85,1.85,0,0,0,1.78-1.07h2.41a4,4,0,0,1-1.47,2.11,4.36,4.36,0,0,1-2.67.81,4.67,4.67,0,0,1-2.31-.56,4.08,4.08,0,0,1-1.58-1.61,5.47,5.47,0,0,1,0-4.82,4,4,0,0,1,1.57-1.6,4.71,4.71,0,0,1,2.32-.56,4.52,4.52,0,0,1,2.25.55,3.76,3.76,0,0,1,1.56,1.55A4.6,4.6,0,0,1,1096.59,36.38Zm-2.32-.64a1.74,1.74,0,0,0-.63-1.38,2.19,2.19,0,0,0-1.49-.53,2,2,0,0,0-1.4.51,2.16,2.16,0,0,0-.69,1.4Zm3.38.8a5.25,5.25,0,0,1,.52-2.39,4.09,4.09,0,0,1,1.48-1.6,3.91,3.91,0,0,1,2.06-.56,3.67,3.67,0,0,1,1.65.39,3.17,3.17,0,0,1,1.25,1V29.16h2.27V41h-2.27V39.69a3,3,0,0,1-1.17,1.05,3.64,3.64,0,0,1-1.75.4,3.8,3.8,0,0,1-2-.57,4.15,4.15,0,0,1-1.48-1.62A5.34,5.34,0,0,1,1097.65,36.54Zm7,0a2.83,2.83,0,0,0-.32-1.39,2.14,2.14,0,0,0-.86-.9,2.31,2.31,0,0,0-1.17-.32,2.27,2.27,0,0,0-1.15.3,2.51,2.51,0,0,0-.87.9,2.82,2.82,0,0,0-.32,1.38,3,3,0,0,0,.32,1.4,2.57,2.57,0,0,0,.87.92,2.24,2.24,0,0,0,1.15.32,2.41,2.41,0,0,0,1.17-.31,2.3,2.3,0,0,0,.86-.89A3,3,0,0,0,1104.62,36.57Zm12.68-.19a5.61,5.61,0,0,1-.06.86h-6.48a2.19,2.19,0,0,0,.67,1.5,2.06,2.06,0,0,0,1.46.55,1.83,1.83,0,0,0,1.77-1.07h2.42a4.16,4.16,0,0,1-1.47,2.11,4.36,4.36,0,0,1-2.67.81,4.67,4.67,0,0,1-2.31-.56,4.08,4.08,0,0,1-1.58-1.61,5.47,5.47,0,0,1,0-4.82,3.9,3.9,0,0,1,1.57-1.6,4.71,4.71,0,0,1,2.32-.56,4.52,4.52,0,0,1,2.25.55,3.74,3.74,0,0,1,1.55,1.55A4.49,4.49,0,0,1,1117.3,36.38Zm-2.32-.64a1.73,1.73,0,0,0-.62-1.38,2.19,2.19,0,0,0-1.49-.53,2.07,2.07,0,0,0-1.41.51,2.2,2.2,0,0,0-.68,1.4ZM1130,32a3.47,3.47,0,0,1,2.62,1,3.73,3.73,0,0,1,1,2.78V41h-2.24V36.1a2.19,2.19,0,0,0-.53-1.58,1.89,1.89,0,0,0-1.44-.56,1.93,1.93,0,0,0-1.45.56,2.14,2.14,0,0,0-.53,1.58V41h-2.24V36.1a2.19,2.19,0,0,0-.53-1.58,1.89,1.89,0,0,0-1.44-.56,2,2,0,0,0-1.47.56,2.19,2.19,0,0,0-.53,1.58V41h-2.24V32.14h2.24v1.07a3,3,0,0,1,1.1-.88,3.44,3.44,0,0,1,1.51-.32,3.75,3.75,0,0,1,1.85.45,3,3,0,0,1,1.27,1.24,3.21,3.21,0,0,1,1.25-1.23A3.59,3.59,0,0,1,1130,32Zm19.12,9h-2.24l-5.07-7.66V41h-2.24V29.82h2.24l5.07,7.68V29.82h2.24Zm6.15.14a4.64,4.64,0,0,1-2.3-.56A4.11,4.11,0,0,1,1151.3,39a5,5,0,0,1-.58-2.4,4.7,4.7,0,0,1,.6-2.4,4.07,4.07,0,0,1,1.64-1.6,4.67,4.67,0,0,1,2.32-.58,4.62,4.62,0,0,1,2.32.58,4,4,0,0,1,1.64,1.6,4.7,4.7,0,0,1,.6,2.4,4.57,4.57,0,0,1-.62,2.4,4.28,4.28,0,0,1-1.66,1.61A4.82,4.82,0,0,1,1155.22,41.14Zm0-2a2.28,2.28,0,0,0,1.14-.29,2.17,2.17,0,0,0,.86-.89,3.06,3.06,0,0,0,.32-1.44,2.63,2.63,0,0,0-.67-1.94,2.15,2.15,0,0,0-1.62-.69,2.12,2.12,0,0,0-1.61.69,2.7,2.7,0,0,0-.64,1.94,2.79,2.79,0,0,0,.62,2A2.11,2.11,0,0,0,1155.22,39.19Zm18.55-7L1171.18,41h-2.41l-1.62-6.19L1165.53,41h-2.43l-2.61-8.86h2.28l1.56,6.75,1.7-6.75h2.37l1.66,6.73,1.57-6.73Z"/>
51
+ </g>
52
+ </g>
53
+ <g id="pattern">
54
+ <g class="cls-6">
55
+ <g>
56
+ <path class="cls-7" d="M574.81,36.58a1.2,1.2,0,1,0,1.64.45A1.15,1.15,0,0,0,574.81,36.58Z"/>
57
+ <path class="cls-7" d="M568.81,40a1.2,1.2,0,1,0,1.64.45A1.16,1.16,0,0,0,568.81,40Z"/>
58
+ <path class="cls-7" d="M562.82,43.4a1.2,1.2,0,1,0,1.63.45A1.16,1.16,0,0,0,562.82,43.4Z"/>
59
+ <path class="cls-7" d="M556.91,46.77a1.2,1.2,0,1,0,1.63.45A1.27,1.27,0,0,0,556.91,46.77Z"/>
60
+ <path class="cls-7" d="M550.91,50.18a1.2,1.2,0,1,0,1.64.45A1.29,1.29,0,0,0,550.91,50.18Z"/>
61
+ <path class="cls-7" d="M544.91,53.59a1.16,1.16,0,0,0-.44,1.64,1.14,1.14,0,0,0,1.63.45,1.16,1.16,0,0,0,.45-1.64A1.23,1.23,0,0,0,544.91,53.59Z"/>
62
+ <path class="cls-7" d="M538.92,57a1.13,1.13,0,0,0-.5,1.55,1.2,1.2,0,1,0,2.09-1.19A1.2,1.2,0,0,0,538.92,57Z"/>
63
+ <path class="cls-7" d="M578.48,26.44a1.2,1.2,0,1,0,1.63.45A1.21,1.21,0,0,0,578.48,26.44Z"/>
64
+ <path class="cls-7" d="M572.48,29.85a1.2,1.2,0,1,0,1.63.45A1.21,1.21,0,0,0,572.48,29.85Z"/>
65
+ <path class="cls-7" d="M566.57,33.22a1.14,1.14,0,0,0-.45,1.63,1.16,1.16,0,0,0,1.64.45,1.17,1.17,0,0,0,.45-1.64A1.38,1.38,0,0,0,566.57,33.22Z"/>
66
+ <path class="cls-7" d="M560.57,36.63a1.2,1.2,0,1,0,1.64.45A1.39,1.39,0,0,0,560.57,36.63Z"/>
67
+ <path class="cls-7" d="M554.58,40a1.2,1.2,0,1,0,1.63.45A1.28,1.28,0,0,0,554.58,40Z"/>
68
+ <path class="cls-7" d="M548.58,43.46a1.14,1.14,0,0,0-.45,1.63,1.16,1.16,0,0,0,1.64.45,1.17,1.17,0,0,0,.45-1.64A1.29,1.29,0,0,0,548.58,43.46Z"/>
69
+ <path class="cls-7" d="M542.58,46.87a1.22,1.22,0,0,0-.45,1.63,1.2,1.2,0,0,0,2.09-1.18A1.29,1.29,0,0,0,542.58,46.87Z"/>
70
+ <path class="cls-7" d="M583.67,15.54a1.16,1.16,0,0,0-.45,1.64,1.14,1.14,0,0,0,1.63.45A1.16,1.16,0,0,0,585.3,16,1.29,1.29,0,0,0,583.67,15.54Z"/>
71
+ <path class="cls-7" d="M577.67,19a1.2,1.2,0,1,0,1.64.45A1.22,1.22,0,0,0,577.67,19Z"/>
72
+ <path class="cls-7" d="M571.67,22.37a1.2,1.2,0,1,0,1.64.45A1.22,1.22,0,0,0,571.67,22.37Z"/>
73
+ <path class="cls-7" d="M565.68,25.78a1.16,1.16,0,0,0-.45,1.64,1.14,1.14,0,0,0,1.63.45,1.16,1.16,0,0,0,.45-1.64A1.22,1.22,0,0,0,565.68,25.78Z"/>
74
+ <path class="cls-7" d="M559.68,29.2a1.2,1.2,0,1,0,1.19,2.08,1.2,1.2,0,1,0-1.19-2.08Z"/>
75
+ <path class="cls-7" d="M553.68,32.61a1.2,1.2,0,1,0,1.64.45A1.16,1.16,0,0,0,553.68,32.61Z"/>
76
+ <path class="cls-7" d="M547.69,36a1.21,1.21,0,0,0-.45,1.64,1.14,1.14,0,0,0,1.63.45A1.2,1.2,0,0,0,547.69,36Z"/>
77
+ </g>
78
+ </g>
79
+ <g class="cls-8">
80
+ <path class="cls-3" d="M669.1,39A8.05,8.05,0,0,1,653,39a8.05,8.05,0,0,1,16.1,0Z"/>
81
+ </g>
82
+ <path class="cls-7" d="M618,18a5,5,0,0,1-10,0,5,5,0,0,1,10,0Z"/>
83
+ </g>
84
+ <path id="sale" class="cls-5" d="M246.21,27.05V38.39a3.77,3.77,0,0,0,.84,2.62,3.13,3.13,0,0,0,2.45.91A3.27,3.27,0,0,0,252,41a3.73,3.73,0,0,0,.86-2.62V27.05h4.62V38.36a8,8,0,0,1-1.08,4.29,6.92,6.92,0,0,1-2.92,2.65,9.06,9.06,0,0,1-4.05.89,9.19,9.19,0,0,1-4-.86,6.69,6.69,0,0,1-2.78-2.65,8.48,8.48,0,0,1-1-4.32V27.05Zm29,6.1a6.21,6.21,0,0,1-.76,3,5.6,5.6,0,0,1-2.32,2.19,8.17,8.17,0,0,1-3.89.84h-2.86V46h-4.62V27.05h7.48a8.52,8.52,0,0,1,3.83.78A5.32,5.32,0,0,1,274.37,30,6.31,6.31,0,0,1,275.16,33.15Zm-7.32,2.37a2.72,2.72,0,0,0,2-.62,2.32,2.32,0,0,0,.65-1.75,2.34,2.34,0,0,0-.65-1.76,2.77,2.77,0,0,0-2-.62h-2.51v4.75Zm23.36-8.47v3.7h-5V46h-4.61V30.75h-5v-3.7Zm11.28,19.14A10,10,0,0,1,297.56,45,9.55,9.55,0,0,1,294,41.49a9.88,9.88,0,0,1-1.29-5,9.78,9.78,0,0,1,1.29-5A9.6,9.6,0,0,1,297.56,28a10,10,0,0,1,4.92-1.24A9.76,9.76,0,0,1,307.36,28a9,9,0,0,1,3.51,3.45,9.69,9.69,0,0,1,1.3,5,9.78,9.78,0,0,1-1.3,5A9.18,9.18,0,0,1,307.36,45,9.76,9.76,0,0,1,302.48,46.19Zm0-4.21a4.62,4.62,0,0,0,3.61-1.51,5.7,5.7,0,0,0,1.38-4,5.64,5.64,0,0,0-1.38-4A4.62,4.62,0,0,0,302.48,31a4.79,4.79,0,0,0-3.68,1.49,5.75,5.75,0,0,0-1.35,4,5.82,5.82,0,0,0,1.35,4A4.79,4.79,0,0,0,302.48,42Zm31.4-11.67h-8.43V34a3.87,3.87,0,0,1,1.52-1,5.56,5.56,0,0,1,2.1-.38,5.68,5.68,0,0,1,3.35.92,5.33,5.33,0,0,1,2,2.37,8.1,8.1,0,0,1,.62,3.16,6.94,6.94,0,0,1-1.78,5,6.65,6.65,0,0,1-5,1.84,9,9,0,0,1-3.76-.73A5.78,5.78,0,0,1,322,43.19a6,6,0,0,1-.95-3h4.51a2.44,2.44,0,0,0,.79,1.4,2.5,2.5,0,0,0,1.7.54,2.27,2.27,0,0,0,1.89-.8,3.5,3.5,0,0,0,.62-2.16,2.89,2.89,0,0,0-.65-2,2.43,2.43,0,0,0-1.89-.7,2.36,2.36,0,0,0-1.51.46,2,2,0,0,0-.79,1.16h-4.45V26.26h12.61Zm3.68,5.57a13,13,0,0,1,1.78-7.32c1.21-1.78,3.14-2.67,5.81-2.67s4.59.89,5.78,2.67a13,13,0,0,1,1.8,7.32,13.08,13.08,0,0,1-1.8,7.37q-1.79,2.67-5.78,2.67c-2.67,0-4.6-.89-5.81-2.67A13.17,13.17,0,0,1,337.56,35.88Zm10.64,0a11.69,11.69,0,0,0-.59-4.19,2.78,2.78,0,0,0-4.92,0,11.69,11.69,0,0,0-.59,4.19,18.42,18.42,0,0,0,.21,3,4,4,0,0,0,.87,1.94,2.53,2.53,0,0,0,2,.73,2.45,2.45,0,0,0,1.94-.73,3.84,3.84,0,0,0,.89-1.94A17.27,17.27,0,0,0,348.2,35.88Zm6.6-4.62A4.45,4.45,0,0,1,356,27.88a4.57,4.57,0,0,1,3.26-1.19,4.2,4.2,0,0,1,4.49,4.57,4.46,4.46,0,0,1-1.24,3.37,4.52,4.52,0,0,1-3.25,1.19A4.57,4.57,0,0,1,356,34.63,4.42,4.42,0,0,1,354.8,31.26ZM373.13,27l-10.4,19h-4.45l10.39-19ZM359.28,29.4c-.87,0-1.3.62-1.3,1.86s.43,1.83,1.3,1.83a1.14,1.14,0,0,0,1-.46,2.25,2.25,0,0,0,.35-1.37Q360.6,29.4,359.28,29.4Zm8.37,12.33a4.44,4.44,0,0,1,1.24-3.37,5,5,0,0,1,6.48,0,4.44,4.44,0,0,1,1.24,3.37,4.45,4.45,0,0,1-1.24,3.38,5,5,0,0,1-6.48,0A4.45,4.45,0,0,1,367.65,41.73Zm4.45-1.86a1.14,1.14,0,0,0-1,.46,2.5,2.5,0,0,0-.32,1.4c0,1.23.43,1.84,1.29,1.84a1.16,1.16,0,0,0,1-.46,2.88,2.88,0,0,0,0-2.75A1.14,1.14,0,0,0,372.1,39.87Zm21.71,6.32A9.92,9.92,0,0,1,388.9,45a9.4,9.4,0,0,1-3.54-3.46,9.88,9.88,0,0,1-1.29-5,9.78,9.78,0,0,1,1.29-5A9.45,9.45,0,0,1,388.9,28a9.92,9.92,0,0,1,4.91-1.24A9.82,9.82,0,0,1,398.7,28a9.09,9.09,0,0,1,3.51,3.45,9.78,9.78,0,0,1,1.3,5,9.88,9.88,0,0,1-1.3,5A9.25,9.25,0,0,1,398.7,45,9.82,9.82,0,0,1,393.81,46.19Zm0-4.21a4.64,4.64,0,0,0,3.62-1.51,5.7,5.7,0,0,0,1.38-4,5.64,5.64,0,0,0-1.38-4A4.64,4.64,0,0,0,393.81,31a4.77,4.77,0,0,0-3.67,1.49,5.75,5.75,0,0,0-1.35,4,5.82,5.82,0,0,0,1.35,4A4.77,4.77,0,0,0,393.81,42Zm24.6-14.93v3.7h-7.72v4h5.78v3.59h-5.78V46h-4.62V27.05Zm14.77,0v3.7h-7.72v4h5.77v3.59h-5.77V46h-4.62V27.05Z"/>
85
+ <g id="woo-feed">
86
+ <path class="cls-5" d="M852.78,28c.36,1.15.71,2.29,1.06,3.52s.8,2.47,1.16,3.7.8,2.37,1.24,3.61.8,2.28,1.16,3.34a37.31,37.31,0,0,0,.88-3.7c.27-1.32.62-2.72.89-4.13s.62-2.91.89-4.31.53-3,.8-4.4h4.08c-.71,3.87-1.51,7.65-2.4,11.26a107.34,107.34,0,0,1-3.1,10.3h-3.82c-1.6-4.14-3.19-8.72-4.7-13.73q-1.2,3.82-2.4,7.13t-2.39,6.6h-3.82q-1.6-4.89-2.93-10.3c-.89-3.61-1.68-7.39-2.4-11.26h4.18c.26,1.4.53,2.81.79,4.31s.54,2.9.89,4.31.62,2.82.89,4.14.62,2.55.89,3.69c.44-1,.79-2.2,1.24-3.34s.8-2.38,1.24-3.61.8-2.46,1.16-3.61.71-2.37,1.06-3.52Z"/>
87
+ <path class="cls-4" d="M906.29,47.53l.09-21.65,13.76.09v3.34h-9.86l-.08,5.46h8.69v3.34H910.2v9.42Z"/>
88
+ <path class="cls-4" d="M922.53,39.52a11,11,0,0,1,.62-3.78,8.43,8.43,0,0,1,1.69-2.64,6.61,6.61,0,0,1,2.48-1.59,7.9,7.9,0,0,1,2.84-.61,6.66,6.66,0,0,1,2.93.44,6.5,6.5,0,0,1,2.4,1.67,8.85,8.85,0,0,1,1.86,6.25v1.4H926.43a3.77,3.77,0,0,0,.36,1.68,5.07,5.07,0,0,0,1,1.4,5.31,5.31,0,0,0,3.64,1.06,13.26,13.26,0,0,0,2.57-.26,7.65,7.65,0,0,0,1.86-.53l.53,3.08a9,9,0,0,1-.88.35,7.1,7.1,0,0,1-1.33.26l-1.51.27a10.7,10.7,0,0,1-1.69.09,10.4,10.4,0,0,1-3.73-.62,6.74,6.74,0,0,1-2.66-1.76A6.63,6.63,0,0,1,923.06,43,8.36,8.36,0,0,1,922.53,39.52Zm11-1.67a8.51,8.51,0,0,0-.17-1.5,3.32,3.32,0,0,0-.62-1.23,2.44,2.44,0,0,0-1.07-.79,2.75,2.75,0,0,0-1.42-.27,2.91,2.91,0,0,0-1.51.36,3.44,3.44,0,0,0-1.15.88,5.49,5.49,0,0,0-.71,1.23,8.11,8.11,0,0,0-.36,1.41Z"/>
89
+ <path class="cls-4" d="M940.81,39.61a11.08,11.08,0,0,1,.62-3.79,8.67,8.67,0,0,1,1.69-2.64,6.71,6.71,0,0,1,2.48-1.58,7.82,7.82,0,0,1,2.84-.53,6.78,6.78,0,0,1,2.93.44,6.54,6.54,0,0,1,2.4,1.67,8.85,8.85,0,0,1,1.86,6.25v1.41H944.8a3.73,3.73,0,0,0,.36,1.67,5,5,0,0,0,1,1.41A5.4,5.4,0,0,0,949.77,45a12.56,12.56,0,0,0,2.58-.27,5.78,5.78,0,0,0,1.77-.53l.54,3.08c-.27.09-.54.27-.89.36a8,8,0,0,1-1.33.26c-.45.09-1,.18-1.51.26a10.64,10.64,0,0,1-1.69.09,10.4,10.4,0,0,1-3.73-.61,6.85,6.85,0,0,1-2.66-1.76,6.77,6.77,0,0,1-1.51-2.64A8.58,8.58,0,0,1,940.81,39.61Zm11-1.67a8.53,8.53,0,0,0-.18-1.5,3.32,3.32,0,0,0-.62-1.23,2.39,2.39,0,0,0-1.07-.79,2.67,2.67,0,0,0-1.42-.27,3,3,0,0,0-1.51.35,3.72,3.72,0,0,0-1.15.88,5.8,5.8,0,0,0-.71,1.24,8,8,0,0,0-.36,1.4Z"/>
90
+ <path class="cls-4" d="M973.91,47.35c-1,.27-1.86.44-2.84.62a25.15,25.15,0,0,1-3.64.26,9.28,9.28,0,0,1-3.46-.61,8.6,8.6,0,0,1-2.66-1.68,8.43,8.43,0,0,1-1.69-2.64,9.76,9.76,0,0,1-.53-3.52,11.86,11.86,0,0,1,.53-3.52A7.87,7.87,0,0,1,961,33.62a6.66,6.66,0,0,1,2.31-1.84,7.55,7.55,0,0,1,3.11-.62,9.13,9.13,0,0,1,2.13.26,13,13,0,0,1,1.59.62V24.12l3.82-.53ZM963,39.61a6.29,6.29,0,0,0,1.15,4,3.54,3.54,0,0,0,1.51,1,3.9,3.9,0,0,0,1.77.36,9.48,9.48,0,0,0,1.6-.09,4.28,4.28,0,0,0,1.06-.18V35.38a4.52,4.52,0,0,0-1.33-.61A5.61,5.61,0,0,0,967,34.5a3.67,3.67,0,0,0-1.69.27,3.93,3.93,0,0,0-1.33,1A6.4,6.4,0,0,0,963,39.61Z"/>
91
+ <path class="cls-4" d="M790.48,14h26.09a5.93,5.93,0,0,1,4.09,1.67,5.8,5.8,0,0,1,1.68,4v34.5a3.73,3.73,0,0,1-1.06,2.64,3.8,3.8,0,0,1-2.67,1H791.46a3.51,3.51,0,0,1-2.48-1,3.08,3.08,0,0,1-1-2.38V16.38a2.42,2.42,0,0,1,.71-1.68A2.48,2.48,0,0,1,790.48,14Z"/>
92
+ <path class="cls-5" d="M822.34,21.83h-3.81a4.2,4.2,0,0,1-2.93-1.23,4,4,0,0,1-1.24-2.9V14c2.13,0,4.79.09,6.38,1.58S822.34,19.72,822.34,21.83Z"/>
93
+ <path class="cls-5" d="M810.1,20.51h-9.85a1.07,1.07,0,0,0-.8.44,1.6,1.6,0,0,0-.36.79,1,1,0,0,0,.36.8,1.22,1.22,0,0,0,.8.44h9.85a1.09,1.09,0,0,0,.8-.44,1.66,1.66,0,0,0,.35-.8,1,1,0,0,0-.35-.79A1.52,1.52,0,0,0,810.1,20.51ZM808,43H796.16a1.14,1.14,0,0,0-.88.35,1.13,1.13,0,0,0-.36.88,1.1,1.1,0,0,0,.36.88,1.11,1.11,0,0,0,.88.36H808a1.11,1.11,0,0,0,.88-.36,1.1,1.1,0,0,0,.36-.88,1.13,1.13,0,0,0-.36-.88A1,1,0,0,0,808,43Zm6.21-5.1h-18a1.06,1.06,0,0,0-.8.44,1.45,1.45,0,0,0-.26.79,1,1,0,0,0,.35.79,1.2,1.2,0,0,0,.8.44h18a1.06,1.06,0,0,0,.8-.44,1.62,1.62,0,0,0,.35-.79,1,1,0,0,0-.35-.79A2.06,2.06,0,0,0,814.18,37.85Zm0-5.19h-18a1.06,1.06,0,0,0-.8.44,1.43,1.43,0,0,0-.26.79,1,1,0,0,0,.35.79.93.93,0,0,0,.71.44h18a1.07,1.07,0,0,0,.8-.44,1.54,1.54,0,0,0,.35-.79,1,1,0,0,0-.35-.79A1.36,1.36,0,0,0,814.18,32.66Z"/>
94
+ <path class="cls-5" d="M812,45.33A1.32,1.32,0,1,0,810.63,44,1.32,1.32,0,0,0,812,45.33Z"/>
95
+ <path class="cls-5" d="M882.69,39.17a11.56,11.56,0,0,1-.54,3.52,8.46,8.46,0,0,1-1.59,2.73,8,8,0,0,1-2.49,1.76,8.21,8.21,0,0,1-3.19.61,8,8,0,0,1-3.2-.61,8.57,8.57,0,0,1-2.48-1.76,8.38,8.38,0,0,1-1.6-2.64,9.33,9.33,0,0,1-.53-3.52,9.33,9.33,0,0,1,.62-3.52,7,7,0,0,1,1.69-2.64,9.56,9.56,0,0,1,2.48-1.76,8.54,8.54,0,0,1,6.39,0,6.05,6.05,0,0,1,2.48,1.76,7.59,7.59,0,0,1,1.6,2.72A20.1,20.1,0,0,1,882.69,39.17Zm-3.91,0a6.09,6.09,0,0,0-1.06-3.87,4,4,0,0,0-1.33-1.06,3.59,3.59,0,0,0-1.6-.35,3.35,3.35,0,0,0-1.6.35,4,4,0,0,0-1.33,1.06,6,6,0,0,0-1.07,3.87,6.29,6.29,0,0,0,1.07,4,3.93,3.93,0,0,0,1.33,1,3.57,3.57,0,0,0,1.69.36,3.77,3.77,0,0,0,1.68-.36,3.83,3.83,0,0,0,1.33-1A7.54,7.54,0,0,0,878.78,39.17Z"/>
96
+ <path class="cls-5" d="M901.85,39.26a9.4,9.4,0,0,1-.62,3.52,8.68,8.68,0,0,1-1.68,2.72,7.86,7.86,0,0,1-2.49,1.76,8.23,8.23,0,0,1-3.19.62,8,8,0,0,1-3.2-.62,7,7,0,0,1-2.48-1.76,8.63,8.63,0,0,1-1.6-2.72,9.53,9.53,0,0,1-.53-3.52,9.53,9.53,0,0,1,.62-3.52,7.06,7.06,0,0,1,1.68-2.64,9.79,9.79,0,0,1,2.49-1.76,8.54,8.54,0,0,1,6.39,0,6,6,0,0,1,2.48,1.76,7.59,7.59,0,0,1,1.6,2.72A10.6,10.6,0,0,1,901.85,39.26Zm-3.9,0a6.52,6.52,0,0,0-1-3.88,3.83,3.83,0,0,0-1.33-1.05A3.41,3.41,0,0,0,894,34a3.17,3.17,0,0,0-1.59.35,4.75,4.75,0,0,0-1.33,1.05,6,6,0,0,0-1.07,3.88,6.24,6.24,0,0,0,1.07,4,3.74,3.74,0,0,0,1.33,1.05,3.52,3.52,0,0,0,1.68.35,3.78,3.78,0,0,0,1.69-.35,3.83,3.83,0,0,0,1.33-1.05A8.63,8.63,0,0,0,898,39.26Z"/>
97
+ </g>
98
+ <g id="black-friday">
99
+ <g>
100
+ <path class="cls-5" d="M56.79,22.13A6,6,0,0,1,58,25.92,5.6,5.6,0,0,1,55.5,30.8Q53,32.51,48.3,32.51H35.8V8.34H47.61c2.94,0,5.21.56,6.78,1.69a5.35,5.35,0,0,1,2.37,4.59,5.81,5.81,0,0,1-3.21,5.32A6.39,6.39,0,0,1,56.79,22.13ZM41.36,12.55v5.7h5.56a5.54,5.54,0,0,0,3.14-.73,2.41,2.41,0,0,0,1.07-2.14,2.38,2.38,0,0,0-1.07-2.12,5.72,5.72,0,0,0-3.14-.71Zm9.86,15a2.49,2.49,0,0,0,1.12-2.24c0-2-1.49-3-4.46-3H41.36v6h6.52A6.15,6.15,0,0,0,51.22,27.57Z"/>
101
+ <path class="cls-5" d="M62.21,8.34h5.6V28H79.93v4.56H62.21Z"/>
102
+ <path class="cls-5" d="M99.2,27.33H88l-2.14,5.18H80.1L90.88,8.34H96.4l10.81,24.17h-5.87Zm-1.76-4.25L93.6,13.83l-3.83,9.25Z"/>
103
+ <path class="cls-5" d="M114.27,31.32a12,12,0,0,1-4.69-4.46,12.23,12.23,0,0,1-1.71-6.44A12.28,12.28,0,0,1,109.58,14a12,12,0,0,1,4.69-4.45,14.95,14.95,0,0,1,12.4-.5,11.32,11.32,0,0,1,4.26,3.18l-3.59,3.31a7.7,7.7,0,0,0-6.07-2.83,8.13,8.13,0,0,0-4,1,7.06,7.06,0,0,0-2.75,2.75,8.12,8.12,0,0,0-1,4,8.13,8.13,0,0,0,1,4,7.13,7.13,0,0,0,2.75,2.75,8.13,8.13,0,0,0,4,1,7.68,7.68,0,0,0,6.07-2.87l3.59,3.32a11.2,11.2,0,0,1-4.28,3.21,14.14,14.14,0,0,1-5.7,1.11A13.89,13.89,0,0,1,114.27,31.32Z"/>
104
+ <path class="cls-5" d="M143.5,23l-3.24,3.39v6.11H134.7V8.34h5.56V19.63L151,8.34h6.22l-10,10.77,10.61,13.4h-6.53Z"/>
105
+ </g>
106
+ <g>
107
+ <path class="cls-4" d="M52,36.72l.15-.13.22-.16A25.63,25.63,0,0,1,55,34.61a31.33,31.33,0,0,1,5.25-2.47.31.31,0,0,1,.19-.09l.18,0,.6-.22.61-.22L63,31.17l1.17-.38h0a1.15,1.15,0,0,1,.33-.1,1.33,1.33,0,0,0,.37-.09l.18-.05a.48.48,0,0,0,.18-.06,1,1,0,0,0,.33-.07l1.67-.35,1.59-.31.92-.13.84-.09a2.11,2.11,0,0,1,.33,0l.33,0c.32,0,.9,0,1.74-.06a24.62,24.62,0,0,1,2.91.17.16.16,0,0,0,.11,0l.15,0a.5.5,0,0,0,.18,0c.29.05.69.14,1.19.26a7,7,0,0,1,1.5.55,5.29,5.29,0,0,1,1.36.95,2.79,2.79,0,0,1,.78,1.5,2.21,2.21,0,0,1,0,.81,3.13,3.13,0,0,1-.23.67,1.21,1.21,0,0,1-.57.57H80.2c-.12,0-.15-.05-.07-.14s0-.18-.06-.15-.13,0-.13-.07a1.78,1.78,0,0,1,0-.26,1.44,1.44,0,0,0,0-.5,1.34,1.34,0,0,0-.26-.54,1.4,1.4,0,0,0-.67-.46h-.11l-.44-.11a14.82,14.82,0,0,0-2-.24q-1.14-.06-2-.06a36.69,36.69,0,0,0-3.94.08,34.18,34.18,0,0,0-3.79.51q-.51,1.32-1.26,3.15c-.5,1.22-1,2.53-1.56,3.92,1.22-.27,2.42-.49,3.59-.68s2.32-.33,3.44-.46l.42,0c.21,0,.42-.05.64-.06l.57,0c.16,0,.23,0,.2.08a.93.93,0,0,1,.41,0,.43.43,0,0,1,.23.14c.07.08.06.2,0,.37a6.25,6.25,0,0,0-.28.73,1.34,1.34,0,0,1-.2.44c0,.1-.2.17-.44.22,0,0,0,.06-.07.11a1.08,1.08,0,0,1-.48.18.46.46,0,0,0,0,.21.28.28,0,0,1,0,.18.38.38,0,0,1-.24.15,3.39,3.39,0,0,1-.68.05c-.93.07-1.89.12-2.89.13a21,21,0,0,0-3,.24l-1.06.16-1.06.17c-.59,1.58-1.13,3.16-1.61,4.72v.11l-.08.15c-.34,1.1-.63,2.14-.88,3.13A24.74,24.74,0,0,0,60,53.16a7.33,7.33,0,0,0,0,2,1.55,1.55,0,0,0,.57,1.1q.15.07.15.18a.78.78,0,0,1,0,.22,2,2,0,0,1-.15.26,1,1,0,0,0-.18.11c-.15.1-.22.2-.22.29s-.1.06-.22-.11l-.22-.29a7.52,7.52,0,0,1-1.13-2.2A10.35,10.35,0,0,1,58,51.88a20,20,0,0,1,.22-3.71,39.69,39.69,0,0,1,1-4.86,5.46,5.46,0,0,0-.66.19c-.22.07-.43.14-.63.22a1,1,0,0,1-.73-.26,2.12,2.12,0,0,0-.44-.4c-.1-.08-.14-.15-.13-.22a.76.76,0,0,1,.08-.21l.09-.16a.13.13,0,0,0,0-.15l0,0c.47-.2.94-.38,1.41-.55l1.45-.52a8.13,8.13,0,0,0-.75-1.7,4.06,4.06,0,0,0-1.15-1.28,4.18,4.18,0,0,0-1.63-.68,5.33,5.33,0,0,0-2.18.11,10.19,10.19,0,0,0-1.1.33l-.92-1.17Zm6.49-1.14-.41.17a.74.74,0,0,1-.44,0,3.19,3.19,0,0,1,.53.3,3.75,3.75,0,0,1,.74.6,8.32,8.32,0,0,1,.8,1,7.81,7.81,0,0,1,.79,1.48c.34-1,.68-2,1-2.78s.65-1.6,1-2.31l-.57.2-.57.21-.82.27a8.29,8.29,0,0,0-.83.31l-.6.24ZM59.32,46c.1-.32.15-.53.17-.63a3.34,3.34,0,0,1,.16-.58c.07-.3.14-.55.18-.75s.14-.49.26-.83v0a2.06,2.06,0,0,0,.11-.3,3.57,3.57,0,0,0,.11-.4,2.44,2.44,0,0,1,.15-.44,1.44,1.44,0,0,0,0-.24.59.59,0,0,1,.09-.24,3.58,3.58,0,0,1,.19-.55,4.27,4.27,0,0,0,.18-.54c.05-.13.09-.25.13-.37a3.3,3.3,0,0,1,.13-.37c.19-.48.36-.94.51-1.37s.27-.75.37-1,.15-.4.18-.46.06-.18.11-.35a1.85,1.85,0,0,1,.13-.29l.09-.22,0-.07h0v.07s0,0,0,.07a.55.55,0,0,0-.07.19.09.09,0,0,0,0,.07.7.7,0,0,0-.14.29c0,.15-.09.25-.11.3l-.19.47c-.05.12-.11.29-.2.5s-.15.37-.2.49a1,1,0,0,0-.09.22l-.13.33a3.56,3.56,0,0,0-.13.39c0,.13-.08.26-.13.38a3.18,3.18,0,0,0-.11.33,1.15,1.15,0,0,1-.11.29,1.31,1.31,0,0,0-.07.19c0,.07,0,.15-.07.25s-.14.39-.19.51a5.67,5.67,0,0,0-.18.59c-.1.27-.16.45-.18.53s-.06.23-.11.42a.27.27,0,0,1,0,.11.31.31,0,0,0,0,.11c-.05.17-.1.35-.16.53s-.12.38-.17.57,0,.25-.07.37a2.47,2.47,0,0,1-.11.36,1.92,1.92,0,0,0-.11.37c0,.12,0,.24-.07.37a1,1,0,0,0-.1.29,1.17,1.17,0,0,1-.09.33c0,.12,0,.23-.05.31a2.61,2.61,0,0,1-.06.27v0s0,0,0,.11v0s0,0,0,0v-.11a3.39,3.39,0,0,0,.11-.37C59.26,46.27,59.3,46.11,59.32,46Zm.15.69v0a.28.28,0,0,1,0,.15.1.1,0,0,1,0,.07.22.22,0,0,0,0,.08.52.52,0,0,0,0,.21.36.36,0,0,1,0,.19.11.11,0,0,1,0,.07.51.51,0,0,1,0,.13.27.27,0,0,0,0,.13v0a.1.1,0,0,1,0-.08.34.34,0,0,1,0-.09.15.15,0,0,0,0-.09v0a.24.24,0,0,1,0-.13.18.18,0,0,1,0-.11l0-.11V47a.57.57,0,0,1,0-.22ZM60,44.92a.27.27,0,0,0,0-.16.56.56,0,0,1,.07-.24,1.12,1.12,0,0,0,0-.22.36.36,0,0,1,0-.11s0-.06,0,0a.1.1,0,0,0,0,.08.89.89,0,0,0-.05.24,1.62,1.62,0,0,1-.1.34v.08a1.21,1.21,0,0,0,0,.14,1.3,1.3,0,0,1-.06.19.39.39,0,0,0,0,.14.12.12,0,0,1,0,.11.39.39,0,0,1,0,.15.89.89,0,0,0,0,.11.09.09,0,0,0,0-.07.12.12,0,0,1,0-.11.55.55,0,0,1,0-.17.3.3,0,0,0,0-.13.19.19,0,0,1,0-.07.19.19,0,0,0,0-.07s0-.08,0-.09a.11.11,0,0,0,0-.06v0Zm-.07-12.05s0,0,.07,0v0c1-.34,1.86-.63,2.64-.88l.57-.18.2-.07c.19-.1.17-.1-.08,0a7.39,7.39,0,0,0-1.06.33l-.53.14a1,1,0,0,0-.2.08l-.17.07-.38.14-.55.21a2.2,2.2,0,0,1-.37.12s0,0,0,0,0,0,0,0,0,0,0,0h0Zm.33,11s0,0,0,0,0-.13.05-.25a1.65,1.65,0,0,0,.11-.26,1,1,0,0,1,.07-.29,2.2,2.2,0,0,0,.08-.26.36.36,0,0,1,0-.11v0a.13.13,0,0,1,0,.08.84.84,0,0,0-.09.22,1.89,1.89,0,0,0-.06.18,1.94,1.94,0,0,0-.05.2c0,.06,0,.15-.06.28A.73.73,0,0,0,60.24,43.86Zm4.17-8.13s0,0-.07,0h-.07a.1.1,0,0,0,0,.08v.14l-.07.08a.09.09,0,0,0,0,.07v0a4.49,4.49,0,0,0-.31.67l-.2.54-.09.23-.13.32q-.07.18-.15.33l-.11.21a1,1,0,0,0-.11.3,1.65,1.65,0,0,1-.11.36,2.44,2.44,0,0,0-.15.44,3.92,3.92,0,0,0-.14.44l-.07.2a1.38,1.38,0,0,1-.08.17s0,0,0,0a.13.13,0,0,0,0,.06l-.08.15a1.45,1.45,0,0,0-.11.29,1.82,1.82,0,0,1-.11.33c0,.12-.08.22-.11.31a1,1,0,0,1-.11.27c0,.1-.05.2-.07.3s-.06.22-.11.36a1.42,1.42,0,0,0-.07.26l-.11.42a3.9,3.9,0,0,0-.11.42v0c0,.12-.05.24-.08.37s0,.24-.07.36l-.06.2a1.94,1.94,0,0,1-.05.2,1.45,1.45,0,0,0-.06.19.78.78,0,0,1-.05.18.93.93,0,0,1-.11.4.27.27,0,0,1,0,.11.31.31,0,0,0,0,.11.18.18,0,0,0,0,.11.08.08,0,0,1,0,.06.08.08,0,0,0,0,0c0,.15-.09.29-.13.42s-.07.27-.09.39a2,2,0,0,0-.07.36.47.47,0,0,0-.06.19.78.78,0,0,1,0,.18,2.73,2.73,0,0,0-.06.31,2.46,2.46,0,0,0,0,.28,0,0,0,0,0,0,0v0a.21.21,0,0,1,0,.15l0,0h0l0,0v0s0,0,0,0,0,0,0,0v0c0-.1.06-.23.11-.4s.1-.36.15-.55a.56.56,0,0,1,.07-.26.31.31,0,0,1,0-.11.19.19,0,0,0,0-.07,1.1,1.1,0,0,0,.07-.29,3.73,3.73,0,0,1,.18-.66,5.23,5.23,0,0,0,.2-.81,9.21,9.21,0,0,1,.24-.92.12.12,0,0,0,0-.1c0-.15.08-.27.11-.37a1.71,1.71,0,0,0,.07-.18c0-.08,0-.16.08-.26s0-.15.07-.24,0-.18.07-.27a3.64,3.64,0,0,1,.19-.55,2.29,2.29,0,0,1,.07-.28,2.4,2.4,0,0,1,.11-.31,3,3,0,0,1,.18-.55.85.85,0,0,0,.09-.25,2,2,0,0,1,.09-.26v0a.62.62,0,0,0,.1-.22.57.57,0,0,1,.09-.22c.19-.56.38-1.08.55-1.55a12,12,0,0,1,.44-1.12,2.54,2.54,0,0,0,.18-.51c0-.15.1-.28.15-.41a1.61,1.61,0,0,0,.09-.25.88.88,0,0,1,0-.15h0l0,0,0,0V35.8S64.44,35.76,64.41,35.73ZM61.12,41a1.33,1.33,0,0,0-.08.3.84.84,0,0,0-.11.27.78.78,0,0,1-.11.28c0,.07,0,.15-.07.24s0,.16-.07.23,0,.07,0,0,.06-.19.11-.32a2.31,2.31,0,0,1,.1-.23,2.18,2.18,0,0,1,.09-.24,1.21,1.21,0,0,0,.09-.3,1.83,1.83,0,0,1,.09-.32l.07-.15.41-1.21a3.3,3.3,0,0,1,.22-.55,2.47,2.47,0,0,1,.11-.4.94.94,0,0,0,.07-.19.43.43,0,0,1,0-.14s.06-.09,0-.11a.12.12,0,0,1,0-.11l-.07.15a1.05,1.05,0,0,0-.15.4,1,1,0,0,0-.09.2l-.09.2-.19.55a1.15,1.15,0,0,1-.07.22.75.75,0,0,0-.07.18.7.7,0,0,0-.08.2.76.76,0,0,1-.07.24.9.9,0,0,0-.07.22,1.63,1.63,0,0,1,0,.18A.58.58,0,0,0,61.12,41Zm9.74-10.58-.7.07c-.24,0-.49.06-.73.11-.51.08-1,.16-1.5.26l-1.32.26c-.78.19-1.48.37-2.09.55-.31.07-.6.14-.84.22l-.62.18a3.65,3.65,0,0,0-.44.13l-.26.09-.51.18-.42.17-.35.12-.07,0a.09.09,0,0,0,.07,0,.4.4,0,0,0,.15,0,.59.59,0,0,0,.22-.08.32.32,0,0,1,.14,0l.9-.33c.28-.1.52-.17.71-.22a5.88,5.88,0,0,0,.74-.22,2.17,2.17,0,0,1,.42-.11l.35-.07c.17-.05.45-.13.86-.22l1.11-.3a3,3,0,0,1,.5-.09,1.24,1.24,0,0,0,.38-.09l.37-.06a2.29,2.29,0,0,0,.44-.09,1.21,1.21,0,0,0,.4-.07l.2,0,.17,0a.48.48,0,0,1,.18,0,.85.85,0,0,0,.22,0l.22,0,.26-.05.29,0,.22,0a.42.42,0,0,1,.16,0,.43.43,0,0,0,.17,0l.27,0,.35-.06h.46l.53-.06h1a10.63,10.63,0,0,1,1.13,0l1.06.07a.6.6,0,0,0,.22,0,.54.54,0,0,1,.22,0h.26a.61.61,0,0,0,.22,0l.48.08.4.07h0s0,0,.07,0h0s0,0-.07,0a.19.19,0,0,1-.11,0l-.5-.07c-.21,0-.45-.06-.71-.11l-.11,0-.08,0h-.14a1,1,0,0,0-.26,0l-.24,0-.16,0h-.33a2.72,2.72,0,0,0-.51,0H72.64c-.21,0-.45,0-.72,0Zm-8.53,7.33a.25.25,0,0,1,0-.13.68.68,0,0,0,.08-.17,2.55,2.55,0,0,1,.18-.4,2,2,0,0,1,.11-.33l.07-.15a.2.2,0,0,1,0-.13,1.46,1.46,0,0,0,.11-.27l.14-.35.11-.24v0s0,0,0-.08,0,0,0,0v0c-.12.29-.25.58-.38.88s-.25.56-.35.8a1.41,1.41,0,0,0-.14.41s0,.07,0,.14S62.28,37.82,62.33,37.75Zm1.5-6.23-.06,0a.14.14,0,0,1,.09,0,.28.28,0,0,0,.15,0l.66-.18a.42.42,0,0,1,.16,0,.47.47,0,0,0,.17,0,.28.28,0,0,1,.15,0,.27.27,0,0,0,.14,0l.35-.09.46-.13a1.07,1.07,0,0,1,.35-.07,1.38,1.38,0,0,0,.31,0,1.68,1.68,0,0,1,.33-.09l.36-.05.3-.09a1.12,1.12,0,0,1,.25-.06,1.3,1.3,0,0,1,.4-.09,2.37,2.37,0,0,0,.41-.06,2.55,2.55,0,0,1,.44-.07,1.29,1.29,0,0,1,.25,0,.5.5,0,0,0,.19,0l.18,0,.22,0a.42.42,0,0,1,.16,0,.43.43,0,0,0,.17,0c.12,0,.12,0,0,0l-.49.05a1.25,1.25,0,0,1-.26,0,.28.28,0,0,0-.15,0,1.69,1.69,0,0,0-.33,0,.81.81,0,0,1-.25,0,.54.54,0,0,0-.22,0,.83.83,0,0,1-.22,0,2,2,0,0,0-.29,0,1.77,1.77,0,0,1-.44.11l-.55.11-.61.13a2.93,2.93,0,0,0-.53.13,8.06,8.06,0,0,0-.86.18l-.6.18a1.21,1.21,0,0,1-.24.08.76.76,0,0,0-.24.07l-.16.07ZM71,30.05c-.07,0-.09,0,0,0H71a1.1,1.1,0,0,0,.37,0,1.12,1.12,0,0,0,.29,0H72l.19,0,.22,0h.29a.24.24,0,0,0,.11,0c.07,0,.07,0,0,0h-.35a1.62,1.62,0,0,0-.4,0h-.22a1.23,1.23,0,0,0-.29,0h-.33Zm2.34-.14q-.11,0,0,0l.11,0h1.5a.85.85,0,0,0,.25,0h.19a.83.83,0,0,1,.2,0h.2v0h-.29a.49.49,0,0,0-.24,0H75a.88.88,0,0,0-.3,0h-.21l0,0H73.31Zm3.81.33.26.07a.62.62,0,0,1,.25,0l.3,0a.83.83,0,0,1,.25.06.4.4,0,0,0,.15,0,.48.48,0,0,0,.18.06.74.74,0,0,1,.19.05s0,0,0,0l0,0H78.7a.13.13,0,0,0-.08,0,.67.67,0,0,0-.33-.08c.08,0,0,0-.11-.07l-.11,0-.07,0h-.07a.18.18,0,0,0-.11,0,.28.28,0,0,0-.15,0,1.15,1.15,0,0,1-.33,0l-.18,0Z"/>
108
+ <path class="cls-4" d="M76.57,48.4a.67.67,0,0,1,0-.18s-.08-.07-.22-.07A.45.45,0,0,1,76,48a.22.22,0,0,1-.08-.15,5.14,5.14,0,0,0,.42-.38l.39-.39A7.43,7.43,0,0,0,77.56,46a8.71,8.71,0,0,0,.51-1,5,5,0,0,0,.26-.71,1.79,1.79,0,0,0,.07-.35,7.5,7.5,0,0,0-.71.66q-.64.61-1.56,1.65a28.65,28.65,0,0,0-1.9,2.41,20.92,20.92,0,0,0-1.76,3,3.2,3.2,0,0,0-.22.49,2.7,2.7,0,0,0-.18.65c-.08.31-.17.42-.3.33s-.18,0-.34.09a.47.47,0,0,1-.46,0,1.25,1.25,0,0,0-.51-.14,1.37,1.37,0,0,1-.55-.18,2.15,2.15,0,0,1-.57-.77,2.72,2.72,0,0,1-.15-1.4,8.83,8.83,0,0,1,.61-2.18,22.45,22.45,0,0,1,1.61-3.13,1.64,1.64,0,0,0,.14-.22,1.83,1.83,0,0,0,.15-.25l.29-.5q.15-.24.3-.45s0,0,0,0l1.19-1.81c.38-.57.61-.94.68-1.08l0,0,.06,0a.29.29,0,0,0,.16,0,.47.47,0,0,1,.17,0,.34.34,0,0,0,.18,0h.18c-.12.2-.24.38-.36.55s-.23.32-.33.44l-.15.26,0,.11c0,.07,0,.06,0,0l.32-.46c.07-.1.12-.16.14-.2l.06-.09,0-.08.13-.18a1,1,0,0,0,.11-.18,1,1,0,0,0,.07-.15c.1.05.15.09.15.11a.91.91,0,0,0,.22.22c.1.07.17.14.22.18l.2.21a.32.32,0,0,1,.13.2c-.39.75-.72,1.43-1,2s-.56,1.25-.88,2-.6,1.44-.84,2.12l.18-.25a29.2,29.2,0,0,1,2-2.49,28,28,0,0,1,2.11-2.13,13.47,13.47,0,0,1,2.47-1.83,1.74,1.74,0,0,1,.18-.22c.15-.15.23-.22.26-.22a.29.29,0,0,0,.16,0,.47.47,0,0,1,.17,0,.3.3,0,0,0,.25.06.26.26,0,0,1,.26.09l.18.18a.28.28,0,0,0,.15,0,.79.79,0,0,0,.33,0,1.21,1.21,0,0,1,.4.07.59.59,0,0,1,.3.18.71.71,0,0,0,.2.22c.11.1.1.27,0,.52A9.46,9.46,0,0,1,81.81,45,13.37,13.37,0,0,1,80.56,47c-.29.34-.58.65-.86.93a6.38,6.38,0,0,1-.82.71,1.61,1.61,0,0,1-.62.33c-.25.08-.48.14-.7.19a6.74,6.74,0,0,1-.8.11c-.13,0-.17,0-.13-.13a.87.87,0,0,0,.05-.28A.92.92,0,0,0,76.57,48.4ZM71.63,46a8.89,8.89,0,0,1,.58-1.1l.37-.64a5.1,5.1,0,0,1,.37-.57l.53-.9a5.08,5.08,0,0,1,.42-.64l.18-.27.15-.24a.91.91,0,0,1,.13-.2l.09-.13v0h0a.13.13,0,0,0,0,.07s0,.05,0,.08l-.07.07a7.63,7.63,0,0,0-.44.7c0,.07-.13.17-.22.31a1.62,1.62,0,0,0-.22.35,3.18,3.18,0,0,0-.22.36l-.3.48c-.09.17-.17.3-.22.38s-.12.2-.22.35l-.18.31-.22.39c-.12.19-.19.32-.22.38a1.62,1.62,0,0,1-.15.28,2.56,2.56,0,0,1-.2.42c-.08.16-.16.31-.23.46s-.16.31-.24.49l-.24.49c0,.13-.1.27-.17.43a2.1,2.1,0,0,0-.12.42s0,0,0,0v0a.16.16,0,0,0,0-.11.19.19,0,0,0,.05-.09.49.49,0,0,1,.06-.13s0-.08,0-.09,0,0,0-.09a.22.22,0,0,0,.08-.15c.12-.24.19-.4.22-.46a3.28,3.28,0,0,1,.18-.38,1.65,1.65,0,0,1,.11-.26.44.44,0,0,1,.15-.25c0-.1.08-.19.1-.26S71.53,46.13,71.63,46Zm-.81,2.41s0,0,0,0a.34.34,0,0,0,0,.11s0,0,0,.11,0,0,0,.08v.07a.16.16,0,0,0,0,.11.09.09,0,0,0,0,.07.24.24,0,0,1,0,.08.14.14,0,0,0,0,.07v0s0,0,0,0,0,0,0,0v0c0-.05,0-.08,0-.08v-.07l.07-.15a0,0,0,0,0,0-.07.42.42,0,0,0,0-.15A.3.3,0,0,0,70.82,48.4Zm.81-1.68s0,0,0,0l0,0a.21.21,0,0,0-.07.14,1.12,1.12,0,0,0,0,.13,1.39,1.39,0,0,1-.06.13l0,0-.11.22a.68.68,0,0,0-.08.19.24.24,0,0,1-.07.18s.07-.05.07-.15a.2.2,0,0,0,.06-.09.41.41,0,0,1,.05-.09.08.08,0,0,1,0-.05.11.11,0,0,0,0-.06s0,0,0,0,0,0,0,0l0,0,.15-.29A1.5,1.5,0,0,0,71.63,46.72Zm.51-1a0,0,0,0,1,0,0,.61.61,0,0,0-.09.12A1.12,1.12,0,0,1,72,46a.3.3,0,0,0-.09.15.44.44,0,0,1-.1.15.67.67,0,0,0-.07.22s0,0,.11-.19a.45.45,0,0,0,.11-.14L72,46a.78.78,0,0,0,.07-.17Zm.44-.73.13-.2a2.39,2.39,0,0,0,.13-.24l.23-.42a3.28,3.28,0,0,1,.32-.46c.07-.12.14-.24.2-.37a1,1,0,0,1,.16-.25c0-.05.08-.09.08-.11a.3.3,0,0,1,0-.11l.08-.15s0,0,0,0a.09.09,0,0,0,0,.07,2.21,2.21,0,0,0-.18.3.35.35,0,0,0-.09.11l-.09.11a1.05,1.05,0,0,0-.08.18.42.42,0,0,1-.11.18.71.71,0,0,0-.09.17.38.38,0,0,1-.09.13.29.29,0,0,0-.09.12.31.31,0,0,1-.09.13.36.36,0,0,0-.08.17.3.3,0,0,1,0,.12.87.87,0,0,0-.19.33.52.52,0,0,0-.12.19.83.83,0,0,1-.13.18,1.38,1.38,0,0,0-.08.17c0,.06,0,.11-.07.16s0,.05,0,0a1.27,1.27,0,0,0,.13-.22,1,1,0,0,1,.09-.16Zm6,.8v0h0l0,0,.07-.07a.48.48,0,0,0,.11-.15,1.74,1.74,0,0,0,.18-.22s0-.06.08-.11,0-.07,0-.07a.1.1,0,0,1,0-.08,1.3,1.3,0,0,0,.15-.33,1.51,1.51,0,0,0,.11-.22.75.75,0,0,1,.07-.18s0-.07,0-.07,0,0,0-.08v-.07h0l0,0v0a0,0,0,0,1,0,0,.34.34,0,0,0,0,.18.41.41,0,0,0,0,.09.15.15,0,0,1-.06.09v0s0,0,0,0,0,0,0,0a.08.08,0,0,1,0,.06.08.08,0,0,0,0,.05.29.29,0,0,1-.06.1.31.31,0,0,0-.05.09.75.75,0,0,0-.07.18.22.22,0,0,0-.08.15.17.17,0,0,1-.07.09.17.17,0,0,0-.07.09s0,.06-.08.11a.09.09,0,0,0,0,.06l0,0-.07.07-.08.08Zm.3.15h0v0l-.07.07,0,0h0v0h.07v0s0,0,0,0Zm.29-.29a0,0,0,1,0,0-.08s0,.05,0,.06a.09.09,0,0,1,0,0l0,0a.09.09,0,0,0,0,.07l0,0h0v0s0,0,0,0l0,0h0Zm.15-.3,0,.08,0,.07s0,0,0,0l0,0,.07-.07v-.08Zm.29-.58a.09.09,0,0,1,0,.07.18.18,0,0,0,0,.11s0,0,0,0,0,0,0,0v.08c-.05,0-.07.08-.07.11a.09.09,0,0,0,0,.07l0,0,0,0s0,0,0,0l0,0s0,0,0-.06a.24.24,0,0,1,0-.11l.07-.15a.19.19,0,0,0,0-.11s0,0,0-.07v-.11l0,0s0,0,0,.07l0,.07Zm.29,1.76-.14.14a.48.48,0,0,0-.11.15l-.11.11,0,0h0a0,0,0,0,0,0,0v0h0v0l.22-.15a.72.72,0,0,0,.15-.11l.07-.15.13-.14.16-.22,0-.08.07-.07a1.33,1.33,0,0,0,.11-.26s.08-.08.08-.11a.11.11,0,0,0,0-.07.13.13,0,0,1,0-.07s0-.06.07-.11a.08.08,0,0,1,0-.06.08.08,0,0,0,0-.05A1,1,0,0,0,81,45,.42.42,0,0,1,81,44.7c0-.07.06-.12,0-.14s0-.06,0-.11v-.11h.07l0,0s0,0,0,0H81v.08l0,0a.42.42,0,0,0,0,.15.4.4,0,0,1,0,.15.08.08,0,0,1,0,0,.11.11,0,0,0,0,.06l-.07.14s0,0,0,.15a.18.18,0,0,0,0,.11.11.11,0,0,1,0,.07c0,.08,0,.13-.08.15l-.11.11a1.12,1.12,0,0,0,0,.13.7.7,0,0,1-.09.16.24.24,0,0,0,0,.13.35.35,0,0,1,0,.13,1.3,1.3,0,0,1-.15.33Zm-.11-2.17a.36.36,0,0,0,0,.11c0,.1,0,.05.07-.14s.07-.08,0-.08,0,0,0-.07V44h0c0,.05,0,.11-.07.17A.37.37,0,0,0,79.83,44.37Z"/>
109
+ <path class="cls-4" d="M83.6,53.13l-.45,0a2,2,0,0,1-.79-.24,2,2,0,0,1-.73-.67,2.23,2.23,0,0,1-.31-1.36,7.34,7.34,0,0,1,.51-2.25,20.44,20.44,0,0,1,1.7-3.39l.15-.22a1.26,1.26,0,0,0,.14-.26,4.07,4.07,0,0,0,.32-.49,2.17,2.17,0,0,1,.27-.42c.42-.64.81-1.24,1.17-1.81s.6-.93.7-1,.08-.07.11-.07a.42.42,0,0,0,.16,0,.47.47,0,0,1,.17,0A.3.3,0,0,0,87,41a.23.23,0,0,1,.26.09,1.13,1.13,0,0,0,.22.22,1.64,1.64,0,0,1,.22.18l.2.2c.09.09.13.16.13.2a7.36,7.36,0,0,1-.35.72c-.23.45-.51,1-.82,1.7s-.65,1.44-1,2.25-.63,1.6-.86,2.33a9.34,9.34,0,0,0-.42,1.92q-.07.83.36,1.05a.72.72,0,0,0,.74-.06A3.69,3.69,0,0,0,86.5,51a11.58,11.58,0,0,0,.91-1.23c.32-.47.63-1,.92-1.48.68-1.2,1.4-2.61,2.16-4.25a.48.48,0,0,1,.18,0,.29.29,0,0,1,.22.08.14.14,0,0,0,.17,0c.06,0,.09,0,.09,0s.12,0,.27,0,.22-.07.17,0a5.93,5.93,0,0,0-.33.79c-.2.5-.45,1.11-.77,1.82S89.8,48.22,89.37,49A17.62,17.62,0,0,1,88,51.24a9.41,9.41,0,0,1-1.5,1.65,2,2,0,0,1-1.54.53l-.59-.14a1.65,1.65,0,0,0-.44-.1A1.94,1.94,0,0,1,83.6,53.13Zm-1.46-2.2c0,.1,0,.21,0,.35s0,.26,0,.38a.36.36,0,0,1,0,.19.4.4,0,0,0,.07.22.89.89,0,0,0,.15.36,1.24,1.24,0,0,0,.18.33l.26.26,0,0v0l-.08,0c-.05,0-.14-.17-.29-.37,0,0,0-.07,0-.07v0a.15.15,0,0,1,0-.06s0,0,0-.05a.1.1,0,0,0,0-.08v0a.13.13,0,0,1,0-.08.13.13,0,0,0,0-.07.14.14,0,0,0,0-.07.31.31,0,0,1,0-.11.37.37,0,0,1-.07-.21.54.54,0,0,0,0-.2v-.88a3.41,3.41,0,0,1,.08-.51,4.51,4.51,0,0,1,.09-.55,2.1,2.1,0,0,1,.13-.44c.07-.27.14-.51.22-.73s.13-.39.18-.51a2.18,2.18,0,0,0,.09-.24,1.27,1.27,0,0,1,.09-.2,1.65,1.65,0,0,0,.11-.26v0s0,0,0,0a.09.09,0,0,0,0,.07s0,0,0,0a2.75,2.75,0,0,0-.22.58,1.63,1.63,0,0,0-.22.52,2.74,2.74,0,0,0-.09.29,3.14,3.14,0,0,1-.13.4,1.21,1.21,0,0,0-.09.3c0,.07,0,.17,0,.29a.27.27,0,0,0,0,.14.28.28,0,0,1,0,.15,1.69,1.69,0,0,1,0,.33.77.77,0,0,1,0,.29Zm.37.29a.24.24,0,0,0,0,.15v-.62s0,0,0,0v.47Zm.25-1.75a.47.47,0,0,0,.06-.19.78.78,0,0,1,.05-.18,1.29,1.29,0,0,0,.09-.29.39.39,0,0,1,.1-.19s0-.08,0-.09,0,0,0-.09v-.11s0,0,0,0a1.8,1.8,0,0,0-.08.25.25.25,0,0,0-.07.19.41.41,0,0,0-.07.29l-.06.11,0,.11a.85.85,0,0,1,0,.22.57.57,0,0,0,0,.22.79.79,0,0,1,0,.26.78.78,0,0,1,0,.14.77.77,0,0,0,0,.15s0,.07,0,.14v.11h0a.49.49,0,0,1,0-.18.16.16,0,0,0,0-.11.18.18,0,0,1,0-.11,1.15,1.15,0,0,1,0-.33A.77.77,0,0,0,82.76,49.47Zm-.22,2.08a1.33,1.33,0,0,0,.08.3v0s0,.08,0,.09a.07.07,0,0,1,0,.06l.08.15a.07.07,0,0,0,0,0s0,0,0,.06h0a0,0,0,0,1,0,0v-.07s0,0,0-.08,0,0,0,0V52a.09.09,0,0,1,0-.07v0a.1.1,0,0,0,0-.07.31.31,0,0,1,0-.11.16.16,0,0,0,0-.11v-.07h0ZM83.42,53v0h0s0,0-.06,0,0,0,0,0l0,0s0,0,0,0,0,0,0-.06h0l-.08-.07a.09.09,0,0,0-.07,0l0,.08.07,0,.07.08s0,0,0,0a0,0,0,0,1,0,0h0a.2.2,0,0,0,.11.07h0Zm.26-5.93a2.82,2.82,0,0,0-.26.44c-.07.14-.13.28-.18.4a1.13,1.13,0,0,0-.07.2v.09c0,.13,0,0,.18-.36a.77.77,0,0,0,.07-.26.56.56,0,0,0,.11-.18l.15-.3Zm2.12-2.42h.08l0,0a.18.18,0,0,0,0-.07l.1-.11a.45.45,0,0,0,.07-.15.2.2,0,0,1,.07-.11l.19-.36a.31.31,0,0,1,.05-.09l0-.09.11-.22.11-.22.11-.22a.21.21,0,0,0,.06-.08l0-.07a.25.25,0,0,0,0-.09.25.25,0,0,1,0-.09.42.42,0,0,1,.11-.22s.06-.09,0-.11a.16.16,0,0,1,0-.11s0,0,0-.08h.07v0l0,0s0,0,0,0l0,0,0,0,0,0s0,0,0,0,0,0,0,0a.31.31,0,0,0-.15.25.2.2,0,0,1-.09.11.24.24,0,0,0-.09.11l-.08.15a.53.53,0,0,1-.07.18.35.35,0,0,1-.07.11l-.11.11a1.39,1.39,0,0,0-.06.13,1.12,1.12,0,0,1,0,.13q-.07.1-.06.15s0,.06,0,.11a.86.86,0,0,1,0,.18L86.1,44a1.3,1.3,0,0,1-.1.15l-.09.14-.07.15a.28.28,0,0,0,0,.15h0v0Zm1.83-4.32a1.45,1.45,0,0,1-.44-.07c-.27-.1-.4-.24-.4-.41s0-.42,0-.62,0-.34,0-.44a4,4,0,0,1,.15-.42,5.57,5.57,0,0,1,.4-.82,8.53,8.53,0,0,1,.55-.83,1.14,1.14,0,0,1,.59-.46l.66-.11h.29a1.12,1.12,0,0,0,.48,0,.53.53,0,0,1,.44.1,1.46,1.46,0,0,0,.51.14c.19,0,.21.17,0,.44s-.21.36-.39.63-.37.55-.57.86-.37.59-.55.86l-.36.58a1.63,1.63,0,0,1-.59.64A.56.56,0,0,1,87.63,40.31Zm-.47-1.5,0,0a.22.22,0,0,1,.08-.15.32.32,0,0,0,0-.14.52.52,0,0,0,.08-.11,1.12,1.12,0,0,0,.05-.13.71.71,0,0,1,.09-.17.19.19,0,0,0,.08-.14l.05-.07a.21.21,0,0,1,.06-.08,2.69,2.69,0,0,1,.22-.36,1.34,1.34,0,0,0,.16-.22.7.7,0,0,1,.13-.19s.07-.08.07-.09,0,0,0-.05a.51.51,0,0,0,0-.11h0s0,0,0,0a1,1,0,0,0-.15.22l-.14.15a.35.35,0,0,0-.08.11l-.07.15a1,1,0,0,0-.15.18l0,.11-.06.11a.84.84,0,0,0-.11.18c0,.1-.08.19-.11.26a.21.21,0,0,0-.07.14.2.2,0,0,0-.07.11.1.1,0,0,0,0,.08.09.09,0,0,1,0,.07.11.11,0,0,1,0,.06s0,0,0,.05Zm.33.11v0s0,0,0,0v0h0V39l0,0h0v0l0,0,0,0Zm.22-.44a.13.13,0,0,0,0-.08s0,0,0,0,0,0-.08.11a.13.13,0,0,1,0,.08v.07a.11.11,0,0,0,0-.07l0,0A.13.13,0,0,0,87.71,38.48Zm.18-.37h0a.13.13,0,0,0,0,.08.08.08,0,0,1,0,.05.08.08,0,0,0,0,0s0,0,0,0l0,0a.26.26,0,0,1,0-.1l0,0Zm.51-.8s0,0,0,0a.09.09,0,0,0,0,.07l-.07.07s0,0,0,0v.07s0,0-.07,0a.12.12,0,0,0,0,.11.13.13,0,0,0,0,.07s0,0,0,.06a.07.07,0,0,0,0,0A.07.07,0,0,0,88,38a.15.15,0,0,0,0,.1A.13.13,0,0,1,88,38L88,38s0,0,0,0,0,0,0-.06l0,0a.52.52,0,0,0,.07-.11l.08-.15s.07-.05.07-.07a.08.08,0,0,1,0-.07s0,0,0,0,0,0,0,0Zm.15-.19s.07-.07,0-.07,0,0,.06-.07a.2.2,0,0,0,.07-.11L88.6,37a1.58,1.58,0,0,1-.12.15l0,.07C88.44,37.28,88.48,37.24,88.55,37.12Z"/>
110
+ <path class="cls-4" d="M107.38,44c0,.05.11,0,.27,0s.21-.07.16,0-.15.29-.38.79-.54,1.11-.92,1.82-.81,1.46-1.3,2.27a22.35,22.35,0,0,1-1.53,2.23,10,10,0,0,1-1.63,1.67,2.15,2.15,0,0,1-1.6.53.24.24,0,0,1-.11,0,1.1,1.1,0,0,1-.29-.07l-.53-.13a2,2,0,0,0-.42,0,.3.3,0,0,0-.22,0,.68.68,0,0,1-.33-.06s0,0,0,0,0,0,0,0a.83.83,0,0,1-.36-.33.35.35,0,0,1-.09-.1L98,52.43a.09.09,0,0,1,0,0s0,0,0-.06,0,0,0,0,0,0,0,0l0,0a.86.86,0,0,0-.08-.18.51.51,0,0,1-.09-.22.78.78,0,0,0-.05-.18.54.54,0,0,1,0-.2,1.16,1.16,0,0,0,0-.28,4.67,4.67,0,0,1-.07-.91c0-.2,0-.38,0-.55a3.88,3.88,0,0,1,0-.44c0-.27.09-.53.11-.77a5.34,5.34,0,0,1,.08-.55.58.58,0,0,0,.05-.24.38.38,0,0,1,0-.2c0-.1,0-.15,0-.17l0-.13v0s0,0,0,0l0,0a.11.11,0,0,1,0,.06s0,0,0,.05v0a2,2,0,0,0-.11.58,1.67,1.67,0,0,0-.07.3,1.1,1.1,0,0,0,0,.25,1.8,1.8,0,0,0-.06.33c0,.15,0,.28,0,.41a2.69,2.69,0,0,1,0,.31,2.54,2.54,0,0,0,0,.31v.91a.44.44,0,0,0,0,.1.37.37,0,0,1,0,.12c0,.13,0,.25,0,.37a1.86,1.86,0,0,0,.1.37l.07.18a1.89,1.89,0,0,0,.29.55,1.31,1.31,0,0,0,.26.29.43.43,0,0,0,.29.18v0h0l-.33-.07a3.18,3.18,0,0,1-.33-.11,2.17,2.17,0,0,1-.68-.55,1.78,1.78,0,0,1-.38-1,3.14,3.14,0,0,1,0-.62,5.49,5.49,0,0,1,.09-.74c-.42.35-.79.64-1.14.88s-.63.44-.87.59-.53.32-.77.44a6.29,6.29,0,0,1-1.72.7,3.85,3.85,0,0,1-2.57-.11,2.93,2.93,0,0,1-1.21-1.21,4.25,4.25,0,0,1-.36-2V49a8.24,8.24,0,0,1,.51-2.38,9.12,9.12,0,0,1,1.46-2.46,8.66,8.66,0,0,1,1.51-1.45,10.36,10.36,0,0,1,1.7-1.06A6.68,6.68,0,0,1,95,41.11a1.84,1.84,0,0,1,1.17.08,1.08,1.08,0,0,1,.39.14,4.21,4.21,0,0,1,.58.39,5.41,5.41,0,0,1,.63.57,3.9,3.9,0,0,1,.53.73,31.64,31.64,0,0,1,1.81-5.09A21.51,21.51,0,0,1,102,34.65a8.59,8.59,0,0,1,1.54-1.74,1.72,1.72,0,0,1,1-.48,2,2,0,0,1,.75.41,9.23,9.23,0,0,1,.83.73c.26.27.49.52.67.75a4.52,4.52,0,0,1,.32.42,2.39,2.39,0,0,1,0,.31,2.22,2.22,0,0,1-.11.39l-.18.51a36.58,36.58,0,0,1-3.61,7,37.19,37.19,0,0,1-3.76,4.72V48.7a8.26,8.26,0,0,0,.08,1.1,3.26,3.26,0,0,0,.31,1.39,1.75,1.75,0,0,0,.57.55.77.77,0,0,0,.77-.06,4.41,4.41,0,0,0,1-.75,12.77,12.77,0,0,0,1.06-1.23c.37-.47.72-1,1.06-1.48.81-1.2,1.66-2.61,2.57-4.25h.18a.34.34,0,0,1,.22.07.1.1,0,0,0,.16,0C107.34,44,107.38,44,107.38,44Zm-18.24,3.7a.07.07,0,0,1,0-.05s0,0,0-.06a.33.33,0,0,0,.08-.16.12.12,0,0,1,0-.09.11.11,0,0,1,0-.06.08.08,0,0,0,0,0l.07-.15a2.93,2.93,0,0,1,.13-.29l.16-.33a2.91,2.91,0,0,0,.17-.28l.2-.34.26-.35a1.6,1.6,0,0,1,.22-.28,3.46,3.46,0,0,1,.36-.49c.13-.13.22-.24.3-.31a.72.72,0,0,0,.12-.15l.1-.11a.63.63,0,0,0,.14-.18h0v0a.09.09,0,0,1-.07,0s0,0,0,0a.93.93,0,0,0-.18.16l-.15.17a.51.51,0,0,1-.12.16l-.17.17a.84.84,0,0,1-.15.2,3,3,0,0,0-.18.24c-.07.1-.13.16-.16.2a.62.62,0,0,0-.13.2.8.8,0,0,1-.13.16,2,2,0,0,0-.17.24,1.44,1.44,0,0,1-.09.2.56.56,0,0,1-.09.17,1.36,1.36,0,0,0-.13.24c0,.08-.08.17-.12.27a2.37,2.37,0,0,0-.15.28,1.45,1.45,0,0,0-.11.31,1.6,1.6,0,0,0-.11.25A.6.6,0,0,0,89,48v0a.13.13,0,0,1,0-.08.27.27,0,0,1,0-.14A.1.1,0,0,1,89.14,47.74Zm.25.22,0,.08,0,.07a.14.14,0,0,1,0,.07.24.24,0,0,0,0,.08v0s0,.05,0,.06a.07.07,0,0,0,0,0s0,0,0,0v-.11s0,0,0,0a.08.08,0,0,0,0-.05s0,0,0,0,0,0,0,0v-.07a.11.11,0,0,1,0-.07Zm.4-1h0a.47.47,0,0,0-.06.09,1.12,1.12,0,0,1,0,.13v0a.12.12,0,0,0,0,.11l-.07.11v.11l0-.08v-.07a0,0,0,0,1,0,0l0-.07,0,0a.08.08,0,0,0,0-.07.24.24,0,0,1,0-.11.52.52,0,0,1,.07-.11Zm.33-.58,0,0a1.49,1.49,0,0,0-.11.15l-.08.15a.7.7,0,0,0,0,.14.2.2,0,0,1,.07-.11.21.21,0,0,0,0-.11.2.2,0,0,1,.07-.11s.07-.07.06-.07,0,0,0,0Zm0-.11s0,0,0,0a.36.36,0,0,1,.09-.12.48.48,0,0,0,.11-.15,1.74,1.74,0,0,1,.18-.22,1.07,1.07,0,0,0,.17-.24,1.09,1.09,0,0,1,.16-.24.47.47,0,0,0,.1-.11l.05-.07a.48.48,0,0,1,.11-.15s0,0,0-.05l0-.06a.08.08,0,0,0,0-.07h0s0,0,0,0a.19.19,0,0,0-.06.07.18.18,0,0,1,0,.07l-.11.11a.86.86,0,0,0-.11.19c0,.05-.08.07-.09.07s0,0-.06.07a.48.48,0,0,0-.11.15l-.07.15a.56.56,0,0,0-.11.18,1,1,0,0,1-.15.18.31.31,0,0,1,0,.09A.64.64,0,0,0,90.16,46.32Zm.51,1.86.08-.22a2.93,2.93,0,0,1,.13-.29,3.3,3.3,0,0,1,.16-.29,3,3,0,0,0,.15-.26l.18-.33a3.32,3.32,0,0,1,.48-.66c.14-.17.27-.33.38-.49a1.1,1.1,0,0,1,.28-.31c.09-.08.14-.13.14-.17a.28.28,0,0,1,.07-.13l.11-.11h.08v-.07s0,0,0,0,0,0,0,0l0,0a.08.08,0,0,1,0,.07.09.09,0,0,1-.07,0,.52.52,0,0,0-.18.18,1,1,0,0,1-.15.19l-.17.14-.16.15a1.12,1.12,0,0,0-.17.22L91.7,46a.84.84,0,0,1-.18.19.59.59,0,0,0-.19.18.8.8,0,0,1-.13.16,1.28,1.28,0,0,0-.12.24L91,46.9A.31.31,0,0,0,91,47a.13.13,0,0,0,0,.07.3.3,0,0,1,0,.11,1.24,1.24,0,0,1-.07.26s0,0,0,.06,0,0,0,.05,0,.08,0,.09,0,0,0,.06L90.6,48a1.33,1.33,0,0,0-.11.26.08.08,0,0,1,0,.05.08.08,0,0,0,0,.06.22.22,0,0,0,0,.14s0,.09,0,.19v.07a.13.13,0,0,0,.07,0v0s0,0,0,0a.37.37,0,0,1,0-.14.21.21,0,0,1,.07-.15.36.36,0,0,0,.08-.15A.36.36,0,0,1,90.67,48.18Zm6.82-1.68c.14-.68.29-1.34.44-2a5.8,5.8,0,0,0-.44-.62l-.33-.4q-.25-.37-.81-.15L96,43.5a4.12,4.12,0,0,0-.53.29h0A13.73,13.73,0,0,0,94,45.22a17.68,17.68,0,0,0-1.36,1.64A11.53,11.53,0,0,0,91.41,49,7.9,7.9,0,0,0,91,50.44a1.38,1.38,0,0,0,.13,1.15c.09.12.28.15.55.07A4.3,4.3,0,0,0,93.26,51a12.85,12.85,0,0,0,2.1-1.74v0l.33-.35.33-.34a9.2,9.2,0,0,0,.64-.81ZM92,44.08a1.62,1.62,0,0,0-.55.51l-.15.15s0,0,.22-.18.15-.16.15-.19l.11-.11a1.16,1.16,0,0,0,.22-.18v0Zm5.75,6v.55s0,0,0-.18v-.59a1.11,1.11,0,0,0,0-.33,1.8,1.8,0,0,1,0-.22,1.41,1.41,0,0,0,0-.18,2.19,2.19,0,0,0,0-.31.53.53,0,0,1,0-.2v-.3l0,0v0a.43.43,0,0,0,0,.22.37.37,0,0,1,0,.12.44.44,0,0,0,0,.1,1.12,1.12,0,0,1,0,.29.27.27,0,0,1,0,.11s0,.06,0,.11v.73Zm.11,1.36v-.15a.51.51,0,0,0,0-.13.57.57,0,0,1,0-.16.5.5,0,0,0,0-.19s0,0,0,0v0a.43.43,0,0,0,0,.22v.11a.11.11,0,0,0,0,.06s0,0,0,0a.14.14,0,0,0,0,.09A.08.08,0,0,1,97.89,51.41Zm.37.88a.08.08,0,0,0,0-.06s0,0,0,0,0,0,0-.08a0,0,0,0,0,0,0s0,0,0-.08l0-.07c0-.05,0-.09,0-.11l0-.11c0-.05,0-.07,0-.07s0,0,0-.08h0v0a.4.4,0,0,0,0,.15.19.19,0,0,0,0,.07.19.19,0,0,1,0,.07,0,0,0,0,1,0,0l.07.15a.2.2,0,0,0,.07.11S98.21,52.24,98.26,52.29Zm0-5.39h0v0a2.91,2.91,0,0,0-.13.47c0,.18-.07.32-.09.44S98,48,98,48.06a.14.14,0,0,1,0,.09c0,.09,0,0,.11-.41a2.35,2.35,0,0,0,0-.25,1.94,1.94,0,0,1,0-.22l.08-.29s0,0,0,0Zm.81,4.69,0,0,0,0a.09.09,0,0,1,0-.07.18.18,0,0,1,0-.11.18.18,0,0,1,0-.11l0,0v0a.1.1,0,0,1,0-.07.07.07,0,0,0,0,0s0,0,0-.06l0-.07,0-.08v-.11a11.34,11.34,0,0,1-.11-.6v-.53a.53.53,0,0,0,0-.13.15.15,0,0,1,0-.13s0-.08,0-.09,0,0,0-.09,0-.07,0-.07h0l0,0,0,0h-.14v0h0s0,0,0,0a.78.78,0,0,0,0,.29.24.24,0,0,1,0,.11.3.3,0,0,0,0,.11,1.13,1.13,0,0,0,.07.33.24.24,0,0,1,0,.16.28.28,0,0,0,0,.13.35.35,0,0,1,0,.13.38.38,0,0,0,0,.13.37.37,0,0,0,0,.14.27.27,0,0,0,.09.11s0,.1.06.13a.31.31,0,0,0,.09.13c0,.05,0,.08,0,.09a.2.2,0,0,1,0,.09s0,.05,0,.08,0,.07,0,.07a1.77,1.77,0,0,0,.14.22v0h0s0,0,0,0,0,0,0,0ZM99,52.8h0l0,0h0l0,0,0,0s0,0-.06,0,0,0,0,0h0s0,0,0,0-.07,0-.07,0,0,0,0,.07h0l0,0s0,0,0,0l.06,0,.07,0,0,0H99v0s0,0,0,0Zm1.13-11.06a.16.16,0,0,0,0,.11.51.51,0,0,1,0,.13.43.43,0,0,0,0,.12c.46-.9,1-1.9,1.45-3s1-2.32,1.59-3.66A8.43,8.43,0,0,0,102,37c-.3.53-.62,1.2-1,2a18.35,18.35,0,0,0-1,2.84Zm3.48-4.87a2.23,2.23,0,0,1-.18.44l-.17.34a2.36,2.36,0,0,1-.16.32,2.93,2.93,0,0,1-.13.29,3.77,3.77,0,0,0-.16.36l-.19.3-.11.25a2.53,2.53,0,0,1-.18.37,3.06,3.06,0,0,0-.18.4.7.7,0,0,0-.13.19l-.13.22c-.1.19-.17.33-.22.4a5.9,5.9,0,0,0-.4.69l0,.08v0h0l0-.07a.69.69,0,0,0,.12-.19,1.86,1.86,0,0,1,.17-.25,2.07,2.07,0,0,0,.2-.37,2.09,2.09,0,0,1,.16-.33l.24-.42.28-.49a1,1,0,0,1,.09-.17,3.33,3.33,0,0,0,.24-.49.81.81,0,0,0,.14-.3l.15-.29.15-.29c0-.1.09-.19.12-.28a1.71,1.71,0,0,1,.13-.23c.12-.3.24-.57.35-.83s.2-.46.28-.6a1.82,1.82,0,0,1,.09-.28l.09-.24a3.18,3.18,0,0,0,.11-.33h0v0h0v0s0,0,0,0,0,0,0,.06a.07.07,0,0,0,0,0v.07a1.72,1.72,0,0,0-.17.37,1.13,1.13,0,0,1-.13.29,1.2,1.2,0,0,0-.14.3,3.05,3.05,0,0,0-.11.29Zm-1.94,4.57-.07.08s0,0,0,0,0,0,0,.06l-.11.22a0,0,0,0,0,0,0,.21.21,0,0,0-.07.15h0s0,0,0,0v0c0-.05.07-.08.07-.11s0,0,.07,0a.72.72,0,0,1,.07-.11.1.1,0,0,0,0-.08.08.08,0,0,1,0,0,.14.14,0,0,0,0-.09Zm.44-.69s0,0,0-.07a.16.16,0,0,1,.07-.11l0-.08a2.8,2.8,0,0,1,.14-.25,1.44,1.44,0,0,0,.11-.19,0,0,0,0,0,0,0s0,0,0,0l-.18.37,0,0a.31.31,0,0,0,0,.09.42.42,0,0,1,0,.09l-.08.09a.09.09,0,0,1,0,.05.22.22,0,0,1-.08.15s.08,0,.08-.11Zm3.08-4a.48.48,0,0,0-.06.18.9.9,0,0,1-.09.26l0,.12-.06.13a2.06,2.06,0,0,1-.11.3,1.59,1.59,0,0,1-.22.42,1.67,1.67,0,0,0-.22.34,3.17,3.17,0,0,0-.16.37c0,.1-.11.24-.2.44l-.19.38c0,.07-.06.17-.11.32s0,.14-.07.22a2.41,2.41,0,0,1-.11.25l-.11.22a1.39,1.39,0,0,0-.06.13.31.31,0,0,1-.09.13c-.1.17-.19.33-.29.47l-.15.28a.86.86,0,0,1-.14.2l-.11.22a.83.83,0,0,0-.15.22,1.41,1.41,0,0,0-.18.33s0,0,0,.07l0,0s0,0,0,0l0,0s0,0,0,0h0v0h0l0,0v0a1.14,1.14,0,0,0,.16-.22l.24-.33a3.94,3.94,0,0,1,.29-.4l.22-.4.15-.28.15-.23.05-.13a.31.31,0,0,1,.09-.13,2.24,2.24,0,0,1,.19-.33l.11-.22a.71.71,0,0,1,.14-.29s0-.11.08-.17a.77.77,0,0,1,.07-.16.32.32,0,0,0,.09-.17.29.29,0,0,1,.09-.16.69.69,0,0,0,.07-.19,1.59,1.59,0,0,1,.08-.18.29.29,0,0,0,.09-.16.6.6,0,0,1,.09-.21.59.59,0,0,0,.07-.16c0-.06,0-.12.08-.17a.71.71,0,0,0,.14-.29,4.19,4.19,0,0,0,.44-1,3.6,3.6,0,0,1,.3-.75.76.76,0,0,0,.13-.34.46.46,0,0,1,0-.28l.11-.26,0,0,0,0v0s0,0,0-.07a.09.09,0,0,1-.07,0H106a.24.24,0,0,1,0,.08.19.19,0,0,0,0,.07l-.07.15a1.82,1.82,0,0,0-.17.44,1.36,1.36,0,0,1-.13.36s-.05.11-.07.17a.81.81,0,0,1-.11.2.81.81,0,0,0-.11.2C105.23,36.65,105.2,36.71,105.18,36.76Zm-2.6,3.11c0,.05,0,0,.07-.15a2.22,2.22,0,0,0,.18-.33l.08-.12a.33.33,0,0,1,0-.1s0,0,0,0a.83.83,0,0,0-.15.22.2.2,0,0,1,0,.13s0,.08-.07.13A.53.53,0,0,0,102.58,39.87Zm.47-.92c0,.08,0,0,.11-.18a.36.36,0,0,0,.08-.15.33.33,0,0,1,.07-.14l.18-.37s.05-.1.08-.16a2.15,2.15,0,0,1,.11-.24,1.33,1.33,0,0,0,.11-.24.43.43,0,0,1,.11-.2c0-.12.09-.24.12-.35a.66.66,0,0,1,.13-.24,1.59,1.59,0,0,1,.08-.18s0-.07,0-.07,0,0,0-.08,0,0,0,0,0,0,0,0a.1.1,0,0,0,0,.08,2.41,2.41,0,0,1-.11.25l-.07.13a.2.2,0,0,0,0,.13.85.85,0,0,0-.15.33s-.07.13-.14.26l-.11.25s-.07.09-.06.13a.16.16,0,0,1,0,.13l-.07.15-.07.14-.1.17-.09.16-.07.15A.37.37,0,0,0,103.05,39Zm1.87-4.21c-.1.2-.19.39-.27.59a4.64,4.64,0,0,0-.21.51,1.67,1.67,0,0,0-.1.24s0,0,0,.09,0,0,0,0a4,4,0,0,0,.21-.4c.08-.22.11-.32.11-.31a1.44,1.44,0,0,0,.11-.24,2.43,2.43,0,0,1,.15-.4Z"/>
111
+ <path class="cls-4" d="M118.36,44.23c0,.07,0,.09.09.05s.1,0,.1,0-.18.32-.52.88-.74,1.19-1.21,1.89-.91,1.36-1.35,2-.76,1.06-1,1.28a2.71,2.71,0,0,1-1,.77,1.36,1.36,0,0,1-.82,0,1,1,0,0,1-.44-.24,3.14,3.14,0,0,1-.5-.47,3.23,3.23,0,0,1-.4-.59,1.31,1.31,0,0,1-.17-.6c-.39.49-.75.94-1.09,1.35s-.59.68-.89,1-.53.55-.67.68a2.77,2.77,0,0,1-.68.38.92.92,0,0,1-.49,0,1.73,1.73,0,0,1-.66-.4c-.24-.22-.46-.4-.65-.55a3.49,3.49,0,0,1-.69-.82,2,2,0,0,1-.33-1.34,12.37,12.37,0,0,1,.6-3.08,9.67,9.67,0,0,1,1.66-3.07,5.41,5.41,0,0,1,1.33-1.23,7.39,7.39,0,0,1,1.54-.81,3.57,3.57,0,0,1,1.43-.22,1.4,1.4,0,0,1,1,.5c.49.58.84,1,1.06,1.33a1.79,1.79,0,0,1,.37.76.17.17,0,0,1-.07.2.33.33,0,0,1-.24,0,1.29,1.29,0,0,1-.29-.19.73.73,0,0,1-.24-.31,1.32,1.32,0,0,0-.46-.58c-.18-.13-.41-.09-.68.11a7.65,7.65,0,0,0-.84.93,15.3,15.3,0,0,0-1.2,1.74,20.84,20.84,0,0,0-1.17,2.27,9.69,9.69,0,0,0-.72,2.53.22.22,0,0,0,.14,0l.22,0a1.09,1.09,0,0,0,.33-.18,4.94,4.94,0,0,0,.65-.65c.25-.28.47-.56.68-.84s.39-.53.56-.75l.33-.44a1.81,1.81,0,0,0,.18-.42l.26-.75a6.2,6.2,0,0,1,.38-.92,5.1,5.1,0,0,1,.57-.88,3.74,3.74,0,0,1,.4-.4,1.55,1.55,0,0,1,.33-.15c.1,0,.18,0,.26.15a1.13,1.13,0,0,0,.18.33.47.47,0,0,0-.15.18.79.79,0,0,0-.12.15l-.13.15-.11.22s0,0,0,0,0-.06.08-.11a.35.35,0,0,0,0-.08l.06-.07.07-.15s0,0,0,0,0,0,0-.06l.08-.09c0-.05.07-.08.07-.11a.2.2,0,0,0,.11.07s.06,0,.11.15.13.18.26.11.16-.05.11.07a2.62,2.62,0,0,1-.19.37c-.09.17-.2.37-.31.59a5.28,5.28,0,0,0-.29.69,3.57,3.57,0,0,0-.17.66c0,.2,0,.28,0,.26a.55.55,0,0,0,.11-.2,3.68,3.68,0,0,0,.15-.41,1.4,1.4,0,0,1,.15-.34c0-.08.08-.22.16-.43l.29-.64a5.59,5.59,0,0,1,.35-.6,1.12,1.12,0,0,1,.33-.35c.2-.07.33-.06.39,0a.44.44,0,0,1,0,.4,1.63,1.63,0,0,0-.13.49,1.43,1.43,0,0,1-.09.43c0,.07-.12.27-.28.6s-.32.69-.49,1.08a10.45,10.45,0,0,0-.42,1.12c-.11.35-.13.58-.06.68a.38.38,0,0,0,.22-.15,3.69,3.69,0,0,0,.7-.77l.75-1L116.42,46l1.39-1.79a.35.35,0,0,1,.08-.11c.07-.08.12-.08.14,0s0,.14.08.07,0-.07,0,0,0,.09.09,0S118.34,44.18,118.36,44.23Zm-12.52,4a1.38,1.38,0,0,0,.12-.36c0-.15.08-.31.13-.48s.11-.33.17-.49.11-.3.16-.42.1-.24.15-.35l.15-.35c0-.1.09-.19.12-.28l.09-.2a1.34,1.34,0,0,0,.13-.22l.09-.14a1.65,1.65,0,0,0,.11-.26l0,0h0v0l0,0a.09.09,0,0,0,0,.07s0,0,0,0a5.57,5.57,0,0,0-.25.51.35.35,0,0,1-.08.11.72.72,0,0,0-.07.11c0,.05,0,.09-.07.13a.18.18,0,0,0,0,.13.67.67,0,0,0-.14.27c0,.14-.1.26-.15.39s-.09.21-.11.27l-.11.28a.34.34,0,0,0,0,.12.35.35,0,0,1,0,.13,1.31,1.31,0,0,0-.11.29.22.22,0,0,1,0,.1.14.14,0,0,0,0,.09.14.14,0,0,1,0,.11.89.89,0,0,1,0,.22,1.25,1.25,0,0,1-.08.33.48.48,0,0,1,0,.18v.18a1.24,1.24,0,0,0-.08.37.16.16,0,0,1,0,.11.16.16,0,0,0,0,.11v.18a1.42,1.42,0,0,0,0,.33v.41s0,0,0,0v-.08a.48.48,0,0,1,0-.18v-.25a.32.32,0,0,1,.06-.22v-.11a1.49,1.49,0,0,1,0-.33.27.27,0,0,1,0-.11.31.31,0,0,0,0-.11.5.5,0,0,1,0-.19.48.48,0,0,1,0-.18.51.51,0,0,1,0-.13A.44.44,0,0,0,105.84,48.18Zm.07,2.06v0a.11.11,0,0,0,0-.06.08.08,0,0,1,0,0v.11l0,.18,0,0,0,.14h0v-.14s0,0,0,0Zm.11-1.36a.42.42,0,0,0,0-.15s0,0,0,0v0a.27.27,0,0,0,0,.15.48.48,0,0,1,0,.18v0l0,.15a.17.17,0,0,0-.07.14v.15s0,0,0-.11l0-.15a.1.1,0,0,0,0-.07V49.1A.82.82,0,0,0,106,48.88Zm.22-.92s0,0,0,0l0,0a.34.34,0,0,0,0,.18.49.49,0,0,1-.07.22v.15s0,0,.07-.11a.92.92,0,0,1,0-.29l0-.11Zm.58-1.57a1.24,1.24,0,0,0,.1-.26A.31.31,0,0,1,107,46a.4.4,0,0,0,0-.15.21.21,0,0,0,0-.11,0,0,0,0,0,0,0,.3.3,0,0,0-.07.11.24.24,0,0,1,0,.11.11.11,0,0,1,0,.07.52.52,0,0,0-.08.11,1.24,1.24,0,0,1-.07.26.31.31,0,0,1,0,.09s0,0-.06.09l-.07.22a3,3,0,0,1-.11.48,1.39,1.39,0,0,0-.06.13l-.05.12a1.42,1.42,0,0,0-.07.26s0,0,.07-.15a2.41,2.41,0,0,0,.11-.25.38.38,0,0,0,0-.13.35.35,0,0,1,.07-.17.85.85,0,0,1,.11-.32.25.25,0,0,1,.07-.19A1.32,1.32,0,0,1,106.82,46.39Zm.77,1.43c0-.17.11-.34.17-.5s.11-.3.16-.42.23-.5.32-.71a4.11,4.11,0,0,1,.23-.5.37.37,0,0,0,.11-.22.25.25,0,0,0,0-.09.25.25,0,0,1,0-.09.41.41,0,0,0,.07-.18h.07s0,0,0,0l0,0a0,0,0,0,0,0,0l0,0h0l0,.07-.08.08a.92.92,0,0,0-.16.31.66.66,0,0,1-.13.24c0,.05-.07.12-.13.23a1.09,1.09,0,0,1-.16.24.71.71,0,0,0-.13.3,3.76,3.76,0,0,1-.13.4,1.72,1.72,0,0,1-.13.27c0,.06-.08.16-.13.28a1.21,1.21,0,0,0,0,.14.47.47,0,0,1-.06.15.35.35,0,0,0,0,.13.73.73,0,0,1,0,.16,1.14,1.14,0,0,0-.07.3v.4a.14.14,0,0,1,0,.09.14.14,0,0,0,0,.09,1.76,1.76,0,0,1,0,.19,1.41,1.41,0,0,0,0,.18v.18a.5.5,0,0,0,0,.19.41.41,0,0,0,0,.22s0,0,0,.07v.4a.51.51,0,0,0,0,.13.51.51,0,0,1,0,.13v.11h.11l0,0h0l0,0v-.18a1,1,0,0,1,0-.26.7.7,0,0,1,0-.32v-.3c0-.14,0-.27,0-.36a3.1,3.1,0,0,1,.09-.44c0-.1.06-.22.1-.37S107.54,48,107.59,47.82Zm.15-3.3c-.2.29-.35.55-.48.77l-.07.18,0,.08c0,.05,0,0,0,0l.2-.31c0-.15.09-.22.11-.22a.35.35,0,0,1,.11-.19l.15-.29,0,0h0Zm4.32,2.27a6.7,6.7,0,0,1,.33-.84,4.26,4.26,0,0,1,.51-1,1.79,1.79,0,0,1,.1-.22.53.53,0,0,1,.09-.11,1.42,1.42,0,0,0,.14-.22l0,0h0v0h0s0,.05,0,.07,0,0,0,0l-.14.24a.86.86,0,0,1-.15.2,1.44,1.44,0,0,1-.11.2,1,1,0,0,1-.14.2,1.42,1.42,0,0,0-.11.24l-.15.35a1.62,1.62,0,0,0-.09.26l-.09.22-.11.25a1.73,1.73,0,0,1-.08.26.22.22,0,0,1,0,.14v.11s0,.09,0,.19a.78.78,0,0,0,0,.29.48.48,0,0,0,0,.18.22.22,0,0,1,0,.15,4.48,4.48,0,0,1-.07.7V49a.79.79,0,0,0,0,.26s0,.07,0,.07v-.48a.57.57,0,0,1,0-.16.51.51,0,0,0,0-.13v-.29a1.34,1.34,0,0,0,0-.33.5.5,0,0,0,0-.19.36.36,0,0,1,0-.11.27.27,0,0,0,0-.11Zm.08,1.36a.4.4,0,0,0,0-.15s0,0,0,0a0,0,0,0,0,0,0v.29l0,0v.37l0-.08V48.4a.1.1,0,0,0,0-.07Zm0,1.28s0,0,0-.06a.08.08,0,0,0,0,0,0,0,0,0,0,0,0V49.1s0,0,0,.07v.08a.26.26,0,0,0,0,.18v0Zm.18-2.09s0,0,0,0v0a.34.34,0,0,0,0,.18.27.27,0,0,1,0,.11.36.36,0,0,0,0,.11s0,.08,0,.08,0,0,0,0a.24.24,0,0,1,0-.11.66.66,0,0,1,0-.25.18.18,0,0,0,0-.11Zm.73-2a0,0,0,0,0,0,0,.68.68,0,0,0-.08.19.28.28,0,0,0-.1.18.29.29,0,0,0-.08.22.31.31,0,0,1,0,.09s0,0-.06.09a1.31,1.31,0,0,0-.07.19.32.32,0,0,0,0,.18.12.12,0,0,0,0,.09.38.38,0,0,1,0,.13.2.2,0,0,1,0,.13.25.25,0,0,0,0,.13.22.22,0,0,0-.08.18c0,.1,0,.05.08-.15,0,0,.06-.08,0-.09s0,0,0-.09a1.12,1.12,0,0,0,0-.13s0-.09.06-.16v0s0,0,0,0,0,0,0,0a.21.21,0,0,1,.07-.15l.11-.33a1.36,1.36,0,0,0,.11-.2c0-.06,0-.12.07-.17s.07-.08.06-.09,0,0,0-.05a.37.37,0,0,1,0-.11Z"/>
112
+ <path class="cls-4" d="M134.4,44.23a3.73,3.73,0,0,1-.71.49l-1.78,1.12-2.51,1.57c-.94.59-1.91,1.21-2.91,1.87-.29.81-.61,1.64-1,2.51s-.75,1.73-1.19,2.58-.92,1.69-1.44,2.51a21,21,0,0,1-1.71,2.29,16,16,0,0,1-2.53,2.51A13.48,13.48,0,0,1,116.6,63a6.49,6.49,0,0,1-1.41.55l-.6.11a.44.44,0,0,1-.4-.3.38.38,0,0,0-.19,0l-.18,0a1.24,1.24,0,0,1-.53-.18l-.35-.22,0,0a2.29,2.29,0,0,1-.87-1.68A4.25,4.25,0,0,1,112.9,59a18.86,18.86,0,0,1,2.31-2.67,35.57,35.57,0,0,1,3.28-2.8c1.23-.94,2.5-1.85,3.79-2.73.1-.22.2-.44.29-.66l.3-.66a8.48,8.48,0,0,1-1.5,1.54,2,2,0,0,1-1.51.47l-.55-.14a1.71,1.71,0,0,0-.45-.09,1.63,1.63,0,0,1-.35-.06l-.44,0a2.4,2.4,0,0,1-.79-.23,1.88,1.88,0,0,1-.73-.68,2.26,2.26,0,0,1-.29-1.34,7.3,7.3,0,0,1,.51-2.23,20.44,20.44,0,0,1,1.7-3.39,3,3,0,0,1,.15-.26,1.48,1.48,0,0,0,.14-.25l.3-.5a3.82,3.82,0,0,1,.29-.42h0l.28-.44a3.1,3.1,0,0,1,.27-.4.67.67,0,0,1,.41-.29l-.08.14-.14.28a1.44,1.44,0,0,0-.11.2.83.83,0,0,0-.15.22c-.05.1-.09.17-.11.22a1,1,0,0,0-.16.25,4,4,0,0,0-.17.37l-.26.51a1.35,1.35,0,0,1-.12.22,1.23,1.23,0,0,0-.13.26,1.62,1.62,0,0,0-.09.26s0,.12-.1.21a.88.88,0,0,0-.05.15.3.3,0,0,1-.09.15,1.8,1.8,0,0,0-.11.29.32.32,0,0,0-.09.17,1.59,1.59,0,0,1-.09.2s0,.1-.08.16,0,.12-.07.17a1,1,0,0,0-.11.29,1.45,1.45,0,0,1-.11.29l0,0h0a3.63,3.63,0,0,0,.18-.48l.15-.29a.38.38,0,0,0,0-.13.21.21,0,0,1,.07-.13,1.88,1.88,0,0,1,.15-.34c0-.09.11-.22.18-.39l.16-.35.2-.42.22-.44.22-.4q.19-.33.33-.6c.1-.19.17-.34.22-.46a.65.65,0,0,0,.11-.22.36.36,0,0,1,.08-.15.31.31,0,0,0,.07-.15.16.16,0,0,1,.07-.1.19.19,0,0,1,.15.1s0,0,0,0,0,0,.06,0a1.36,1.36,0,0,0-.13.24,1.71,1.71,0,0,1-.13.23l-.07.19,0,.07.22-.33q.12-.25.09-.24l.1-.16a1.35,1.35,0,0,0,.29,0c.1,0,.17.06.22.18a1.07,1.07,0,0,0,.16.14l.21.15c0,.05,0,.11-.08.17s-.05.11-.07.16a2.42,2.42,0,0,1-.15.24,1.47,1.47,0,0,1-.18.24,2.37,2.37,0,0,0-.13.31c-.06.16-.12.3-.16.42a.84.84,0,0,1-.17.27.83.83,0,0,0-.16.28c0,.12-.1.21-.13.27s-.09.16-.17.28a2.51,2.51,0,0,0-.09.29,1.62,1.62,0,0,1-.09.26.34.34,0,0,1,0,.16c0,.06,0,.12-.07.17a2.76,2.76,0,0,1-.11.36c-.07.13-.13.25-.18.37l-.11.22a.22.22,0,0,0-.08.15l-.07.16c0,.06,0,.12-.07.17a.43.43,0,0,1,0,.12.51.51,0,0,0,0,.13,0,0,0,0,0,0,0s0,.07,0,.07l0,0h.08v0s0,0,0,0v0l.07-.15a1.6,1.6,0,0,0,.11-.25.55.55,0,0,0,.15-.3,1.12,1.12,0,0,0,0-.13.7.7,0,0,1,.09-.16.24.24,0,0,0,0-.11.24.24,0,0,1,0-.11.62.62,0,0,0,.07-.18.4.4,0,0,0,.11-.19,1.6,1.6,0,0,1,.11-.25l.18-.37q0-.1.09-.24a1.71,1.71,0,0,1,.13-.23,4.5,4.5,0,0,1,.48-1c.15-.27.27-.51.37-.73a4.06,4.06,0,0,1,.25-.51.4.4,0,0,0,.11-.22.62.62,0,0,1,.15.29,1.39,1.39,0,0,1,0,.51c-.32.71-.65,1.47-1,2.29s-.62,1.6-.84,2.33a10,10,0,0,0-.4,1.9c0,.54.07.88.36,1a.76.76,0,0,0,.88-.15,5.89,5.89,0,0,0,1.08-1.06A16.47,16.47,0,0,0,123,47.05c.39-.61.75-1.22,1.1-1.81s.64-1.15.89-1.65.46-.89.61-1.16c0-.07.07-.19.14-.36s.16-.34.26-.52.2-.32.29-.45.19-.19.26-.17a.66.66,0,0,0,.35,0,.93.93,0,0,1,.31,0h.42A.63.63,0,0,1,128,41c0,.08.14.08.29,0s.23-.06.26,0,0,.13,0,.32,0,.4-.07.66-.09.53-.15.84-.13.6-.2.9-.23.89-.4,1.59-.4,1.47-.66,2.32l2.38-1.41,1.9-1.11c.64-.37,1.21-.69,1.72-1l.19-.07c.14,0,.22,0,.22,0s0,.06.09,0l.18-.08.18,0c.06,0,.09,0,.09,0s0,.08.1.08h.33S134.43,44.15,134.4,44.23ZM114.52,61.59a4.16,4.16,0,0,0,1.52-1,13.52,13.52,0,0,0,1.68-2c.57-.79,1.16-1.68,1.76-2.67s1.18-2,1.74-3.13l-1.5,1.13c-.47.35-.88.68-1.25,1a33.74,33.74,0,0,0-3,3,13.42,13.42,0,0,0-.92,1.17,4.82,4.82,0,0,0-.58,1.08,1.38,1.38,0,0,0-.08.88A.83.83,0,0,0,114.52,61.59Zm3.7-15.93,0,.07s0,0,0,0,0,0,0,0a.36.36,0,0,0,0,.11s0,.05,0,.08v.07s0,0,0,.11h0v0a.12.12,0,0,0,0-.11s0,0,0,0a.08.08,0,0,0,0,0l.07-.11v0a.12.12,0,0,1,0-.11Zm.51-1.18a0,0,0,0,0,0,0l-.11.29,0,0a.11.11,0,0,1,0,.06s0,0,0,.09-.1.11-.07.11,0,0,0,0,0,0,0,0v.07l0,0a.15.15,0,0,1,0-.06v-.07a0,0,0,0,1,0,0s0,0,0-.05a.08.08,0,0,0,0-.06.09.09,0,0,0,0-.07h0a.62.62,0,0,1,.07-.18l.07-.15S118.75,44.48,118.73,44.48Zm.14-.22A1.28,1.28,0,0,0,119,44a.68.68,0,0,0,.08-.19v0l0,0A.55.55,0,0,0,119,44l-.11.22a.43.43,0,0,0,0,.14S118.83,44.36,118.87,44.26Zm.26-.58s0,0,.11-.15.07-.08.06-.11,0-.06,0-.11a1.39,1.39,0,0,0,.06-.13.7.7,0,0,1,.09-.16.94.94,0,0,0,.16-.28l.17-.34c.09-.25.16-.39.18-.44s.07-.08.06-.08,0,0,0-.07a.21.21,0,0,0,0-.11l0,0A.31.31,0,0,0,120,42c-.07.07-.11.12-.11.14a1.12,1.12,0,0,0,0,.13.49.49,0,0,1-.06.13.31.31,0,0,1,0,.09l-.06.09,0,.11a.64.64,0,0,1-.06.11.69.69,0,0,1-.07.19,2.41,2.41,0,0,0-.11.25,1.12,1.12,0,0,0,0,.13.2.2,0,0,1-.06.09s0,.09-.07.13A.2.2,0,0,0,119.13,43.68Zm.07,14.39a2.93,2.93,0,0,0,.26-.33.89.89,0,0,0,.2-.24,1.29,1.29,0,0,1,.17-.23,1.65,1.65,0,0,1,.22-.3l0-.07a.19.19,0,0,1,.06-.07l.11-.22a2.33,2.33,0,0,0,.22-.3l.11-.2a1,1,0,0,1,.11-.2l.14-.22.15-.22c.1-.19.17-.33.22-.4.24-.44.44-.79.58-1.06l.19-.37a2.49,2.49,0,0,0,.11-.26l0,0h0v0l0,0a.13.13,0,0,0,0,.07s0,0,0,0l-.08.15a.61.61,0,0,1-.07.14l-.11.22-.11.22a1.21,1.21,0,0,1-.14.22.2.2,0,0,0-.06.11.3.3,0,0,1-.09.15,3.15,3.15,0,0,1-.18.33.85.85,0,0,1-.15.26.69.69,0,0,0-.15.22,1.1,1.1,0,0,1-.13.25l-.16.26-.15.24-.11.16a.88.88,0,0,0,0,.15.28.28,0,0,1-.09.14A1,1,0,0,0,120,57l0,.07a.21.21,0,0,1-.06.08.31.31,0,0,1,0,.09l-.06.09-.11.13-.11.13a.88.88,0,0,1-.18.25.53.53,0,0,0-.09.11.35.35,0,0,1-.09.11v0l0,0h0v0Zm.33.11s0,0-.07,0a.09.09,0,0,1,0,.07.48.48,0,0,1-.11.15l0,0s-.08.08-.08.11h0v0a.07.07,0,0,0,.08-.07s0,0,0,0a.07.07,0,0,0,0-.05.2.2,0,0,0,.11-.07v0l.08-.07Zm.3-.36s0,0,0,0l0,0,0-.07s0,0,0,0l.08-.07a.13.13,0,0,0,0-.07l.15-.15a.53.53,0,0,1,.07-.15v0l0,0s-.09.09-.19.26-.07.08-.07.09,0,0,0,.06a.11.11,0,0,0,0,.07,0,0,0,0,1,0,0A.16.16,0,0,0,119.83,57.82Zm3.88-4.18s0,0,0,0l0,0-.07,0a.1.1,0,0,0-.08,0s0,0,0,0,0,0,0,0v.08l-.08.07a1.53,1.53,0,0,0-.16.35,1.13,1.13,0,0,1-.13.27.86.86,0,0,1-.15.28l-.18.27a.32.32,0,0,0,0,.13.75.75,0,0,1-.1.2.55.55,0,0,0-.11.2.35.35,0,0,1-.11.2,1.15,1.15,0,0,1-.18.3.33.33,0,0,0-.09.14.3.3,0,0,1-.09.15c-.08.12-.13.21-.17.28s-.1.16-.2.31l-.14.29a1.16,1.16,0,0,0-.11.26,7.84,7.84,0,0,1-.41.69,2.78,2.78,0,0,1-.29.39,3.53,3.53,0,0,0-.29.35.13.13,0,0,0-.06.07l-.05.07-.08.08a.09.09,0,0,0,0,0s0,0,0,.05a.38.38,0,0,0-.09.13.31.31,0,0,1-.09.13h0a.09.09,0,0,1,0,.07v0s0,0,0,0h0v0h0v0l0,0h0a.21.21,0,0,0,.06-.08.25.25,0,0,1,.09-.07l.11-.11s0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0a2.68,2.68,0,0,0,.26-.33,1.48,1.48,0,0,1,.22-.29,1.43,1.43,0,0,1,.14-.2l.15-.17a.83.83,0,0,0,.13-.18,1.68,1.68,0,0,1,.16-.26c.1-.14.18-.27.26-.36l.14-.26a2,2,0,0,0,.15-.26l.33-.55.13-.25a1.59,1.59,0,0,1,.13-.22,4.14,4.14,0,0,0,.44-.77,3.79,3.79,0,0,1,.25-.55c.1-.12.14-.21.13-.26a.38.38,0,0,1,.06-.22l.11-.22h0l0,0Zm-3,2.89a.67.67,0,0,0-.15.19c0,.05,0,.08,0,.09a.17.17,0,0,0-.07.09q-.08.08-.06.09s0,0,0,.06l.11-.11.05-.11a.35.35,0,0,1,.09-.11l.08-.11,0-.08ZM122,54.41l0,0,0,0a1.65,1.65,0,0,1-.11.19.3.3,0,0,1-.11.18.74.74,0,0,0-.11.26.93.93,0,0,1-.15.18.42.42,0,0,0,0,.09l-.08.09a.84.84,0,0,1-.07.18c0,.05,0,.1-.06.13a1.12,1.12,0,0,1,0,.13.48.48,0,0,0-.11.15.3.3,0,0,1-.07.11l-.11.22s0,0,.11-.15.07-.08.07-.11a.2.2,0,0,1,.07-.11.31.31,0,0,0,.09-.13.48.48,0,0,1,.1-.12c0-.08.1-.18.16-.32l.17-.34c0-.08.09-.16.12-.24a.63.63,0,0,1,.13-.2l.07-.15s0,0,0,0S121.93,54.46,122,54.41Zm.62-1.17c-.07.12-.15.25-.23.4a3.15,3.15,0,0,0-.21.4l-.11.19,0,.07c0,.05,0,0,0,0a2,2,0,0,0,.19-.31l.13-.24s0,0,.09-.2l.14-.29v0Zm2.68-7.66a.19.19,0,0,0,.07-.14.28.28,0,0,1,0-.15.88.88,0,0,0,0-.15.59.59,0,0,1,.09-.18c0-.12.13-.33.22-.62s.19-.54.26-.73.13-.38.18-.55a2.61,2.61,0,0,1,.15-.41,1.82,1.82,0,0,0,.11-.33.74.74,0,0,0,0-.18h0v0h0a.08.08,0,0,1,0,.06.08.08,0,0,0,0,.05v0a1.92,1.92,0,0,0-.15.44l-.09.2a.71.71,0,0,0-.05.2,1.32,1.32,0,0,0-.08.22,1.21,1.21,0,0,1-.11.3,1,1,0,0,0-.09.21.84.84,0,0,1-.09.22c0,.08,0,.14-.05.19l-.1.22a.76.76,0,0,0-.07.24.45.45,0,0,1,0,.16.56.56,0,0,0-.07.26,1.28,1.28,0,0,0-.11.25,1,1,0,0,0-.11.28.67.67,0,0,1-.11.27,1.3,1.3,0,0,0-.18.48v0a.32.32,0,0,0,0-.13,1.13,1.13,0,0,1,.09-.2l.1-.24S125.2,45.71,125.25,45.58Zm0,.81,0,.07,0,0a.14.14,0,0,1,0,.09.08.08,0,0,0,0,.06l0,0a.12.12,0,0,1,0,.11s0,0,0,0v0l0-.08v0l.08-.08v0a.13.13,0,0,1,0-.08Zm.41-1s0,0,0,0a1.28,1.28,0,0,0-.11.25c0,.05,0,.08,0,.08s0,0,0,.07a.16.16,0,0,0,0,.11s0,0,0,0v.07a.09.09,0,0,1,0-.07l0-.08v0a.1.1,0,0,0,0-.08.13.13,0,0,0,0-.07l.07-.15A.37.37,0,0,0,125.69,45.44Zm.18-.59,0,.09a.29.29,0,0,1,0,.09s0,0-.08.19v.11a.37.37,0,0,1,0-.11.36.36,0,0,1,.06-.11l.05-.11a1.17,1.17,0,0,0,0-.15Zm.66-1.87,0,0v0a.11.11,0,0,0,0,.07.13.13,0,0,1,0,.07.29.29,0,0,1,0,.09.44.44,0,0,0,0,.1l-.07.22-.07.14a.25.25,0,0,0,0,.09.22.22,0,0,1,0,.1.39.39,0,0,1,0,.14.27.27,0,0,1,0,.11.31.31,0,0,0,0,.11l-.11.22a.27.27,0,0,1,0,.11.25.25,0,0,0,0,.07v0a.24.24,0,0,1,.08-.13,1.71,1.71,0,0,1,.07-.18.38.38,0,0,0,0-.13.39.39,0,0,1,0-.13.42.42,0,0,0,.11-.25.88.88,0,0,1,.11-.29,1,1,0,0,0,.06-.22.74.74,0,0,1,0-.19c0-.05,0-.07,0-.07s0,0,0,0Zm.37-1-.15.36a2.63,2.63,0,0,1-.15.33,1.34,1.34,0,0,1,0,.17v0c0,.08,0,0,.14-.29.05-.12.07-.18.06-.17s0,0,0-.16a1.15,1.15,0,0,1,.08-.26Z"/>
113
+ </g>
114
+ </g>
115
+ </svg>
admin/js/woo-feed-admin.js CHANGED
@@ -344,6 +344,24 @@
344
  if ( '' !== this._feed && this._regenerate && false === window.isRegenerating ) {
345
  this.generate();
346
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
347
  $(document).on('click', '.wpf_regenerate', function(event) {
348
  event.preventDefault();
349
  self._current_btn = $( this );
344
  if ( '' !== this._feed && this._regenerate && false === window.isRegenerating ) {
345
  this.generate();
346
  }
347
+ $(document).on('click', '.woo-feed-campaign-close-button', function(event) {
348
+ event.preventDefault();
349
+
350
+ $(this).parent('.woo-feed-promotion').hide();
351
+ let condition = $(this).data('condition');
352
+ if(1 === condition) {
353
+ wpAjax.post( 'woo_feed_hide_promotion', {
354
+ _ajax_nonce: opts.nonce,
355
+ condition: condition,
356
+ } ).then( response => {
357
+ self._log( response );
358
+ } ).fail( error => {
359
+ self._log( error );
360
+ self._updateProgressStatus( error.message );
361
+ self._color = 'red';
362
+ } );
363
+ }
364
+ });
365
  $(document).on('click', '.wpf_regenerate', function(event) {
366
  event.preventDefault();
367
  self._current_btn = $( this );
admin/js/woo-feed-admin.min.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function _createClass(e,t,n){return t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n),e}!function(s,a,n,o,c){s.fn.disabled=function(n){return s(this).each(function(){var e=s(this),t="disabled";void 0!==e.prop(t)?e.prop(t,void 0===n||!0===n):!0===n?e.addClass(t):e.removeClass(t)}),self},s.fn.isDisabled=function(){var e=s(this),t="disabled";return void 0!==e.prop(t)?e.prop(t):e.hasClass(t)};function e(e){s(e.currentTarget).removeClass(function(e,t){return(t.match(/\btooltipped-\S+/g)||[]).join(" ")}).removeClass("tooltipped").removeAttr("aria-label")}function r(e,t){s(e).addClass("tooltipped tooltipped-s").attr("aria-label",t)}function i(e,t){return s.extend(!0,{},e,t)}function t(){l=s(".toClipboard"),!ClipboardJS.isSupported()||/iPhone|iPad/i.test(navigator.userAgent)?l.find("img").hide(0):(l.each(function(){s(this).on("mouseleave",e).on("blur",e)}),new ClipboardJS(".toClipboard").on("error",function(e){var t,n;r(e.trigger,(t=e.action,n="cut"===t?"X":"C",/iPhone|iPad/i.test(navigator.userAgent)?"No support :(":/Mac/i.test(navigator.userAgent)?"Press ⌘-"+n+" to "+t:"Press Ctrl-"+n+" to "+t))}).on("success",function(e){r(e.trigger,"Copied!")}))}var l,_,f={in_array:function(e,t){try{return-1!==t.indexOf(e)}catch(e){return!1}},selectize_render_item:function(e,t){return'<div class="item wapk-selectize-item">'.concat(t(e.text),"</div>")},ajax_fail:function(e){console.warn(e),alert(e.hasOwnProperty("statusText")&&e.hasOwnProperty("status")?c.ajax.error+"\n"+e.statusText+" ("+e.status+")":e)},sortable:function(e,n,a,r){return(e||s(".sorted_table")).each(function(){var e=s(this),t=e.find("tbody > tr:eq(0) > td").length||a||9;e.wf_sortable(i({containerSelector:"table",itemPath:"> tbody",itemSelector:"tr",handle:"i.wf_sortedtable",placeholder:'<tr class="placeholder"><td colspan="'.concat(t,'"></td></tr>'),onDrop:function(e,t,n,a){e.removeClass(t.group.options.draggedClass).removeAttr("style"),s("body").removeClass(t.group.options.bodyClass),r&&"function"==typeof r&&r(e,t,n,a)}},n))})},selectize:function(e,t){return(e||s("select.selectize")).not(".selectized").each(function(){var e=s(this);e.selectize(i({create:e.data("create")||!1,plugins:e.data("plugins")?e.data("plugins").split(",").map(function(e){return e.trim()}):[],render:{item:f.selectize_render_item}},t))})},fancySelect:function(e,t){return(e||s("select.fancySelect")).not(".FancySelectInit").each(function(){s(this).fancySelect(i({maxItemShow:3},t))})},reindex_config_table:function(){s("#table-1").find("tbody tr").each(function(n,e){s(e).find("[name]").each(function(e,t){s(t).attr("name",s(t).attr("name").replace(/(\[\d\])/g,"[".concat(n,"]")))})})},common:function(){f.sortable(s(".sorted_table"),{},9,f.reindex_config_table),f.selectize(),f.fancySelect(s(".outputType"))}},d={form:null,init:function(){this.form=s(".generateFeed"),this.form.length&&(f.common(),s(n).trigger(new jQuery.Event("feedEditor.init",{target:this.form})))},renderMerchantInfo:function(n,a,r){function e(e){var t;r.hasOwnProperty(e)&&(n.find(".merchant-info-section."+e+" .data").html(r[e]),"feed_file_type"===e&&((t=r[e].split(",").map(function(e){return e.trim().toLowerCase()}).filter(function(e){return""!==e&&e!==c.na.toLowerCase()})).length?(a.find("option").removeAttr("selected").each(function(){var e=s(this);e.val()&&!f.in_array(e.val(),t)?e.disabled(!0):e.disabled(!1)}),1===t.length&&a.find('option[value="'+t[0]+'"]').attr("selected","selected")):a.find("option").disabled(!1)))}for(var t in r)e(t);n.find(".spinner").removeClass("is-active"),a.disabled(!1),a.trigger("change"),a.parent().find(".spinner").removeClass("is-active")},renderMerchantTemplate:function(n,a){function e(t){if(a.hasOwnProperty(t))if("tabs"===t)n.html(a[t]);else{var e=s('[name="'+t+'"]');e.length&&e.each(function(){var e=s(this);e.is("select")?e.find('[value="'+a[t]+'"]').prop("selected",!0):(e.is("[type=checkbox]")||e.is("[type=radio]"))&&e.val()===a[t]?e.prop("checked",!0):e.val(a[t])}).trigger("change")}}for(var t in a)e(t);d.init()}},u=[],p=[],h=function(){function e(){_classCallCheck(this,e),this._feed=c.generator.feed,this._limit=c.generator.limit,this._progress=0,this._timer=null,this._color=!1,this._total_batch=0,this._current_batch=0,this._product_ids=[],this._progress_per_batch=0,this._refresh=!0,this._regenerate=c.generator.regenerate,a.isRegenerating=!1,this._all_btn=s(".wpf_regenerate"),this._current_btn=s("#".concat(this._feed.replace("wf_config","wf_feed_"))),this._current_btn_label=""}return _createClass(e,[{key:"init",value:function(){var t=this;return""!==this._feed&&this._regenerate&&!1===a.isRegenerating&&this.generate(),s(n).on("click",".wpf_regenerate",function(e){e.preventDefault(),t._current_btn=s(this),t._current_btn.hasClass("disabled")||!0===a.isRegenerating||(t._feed=t._current_btn.attr("id").replace("wf_feed_","wf_config"),""!==t._feed&&t.generate())}),this}},{key:"_block_button",value:function(){this._all_btn.length&&this._all_btn.addClass("disabled"),this._current_btn.length&&(this._current_btn.find("span").addClass("wpf_spin reverse_spin"),this._current_btn_label=this._current_btn.attr("title"),this._current_btn.attr("aria-label",c.regenerate).attr("title",c.regenerate))}},{key:"_unblock_button",value:function(){this._all_btn.length&&this._all_btn.removeClass("disabled"),this._current_btn.length&&(this._current_btn.find("span").removeClass("wpf_spin"),this._current_btn.find("span").removeClass("reverse_spin"),this._current_btn.attr("aria-label",this._current_btn_label).attr("title",this._current_btn_label))}},{key:"generate",value:function(){var t=this,n=this;a.isRegenerating=!0,this._block_button(),this._resetProgressBar(),this._progressBarActive(),this._log("Counting Total Products"),this._updateProgressStatus("Fetching products."),this._get_product_ids().then(function(e){t._progress=10,n._log({response:e}),e.success?(n._log("Total ".concat(e.total," Products found.")),n._product_ids=e.product,n._total_batch=t._product_ids.length,n._current_batch=0,n._progress_per_batch=(90-t._progress)/t._total_batch,n._process_batch(),n._updateProgressStatus("Processing Products...")):n._updateProgressStatus(e.data.message)}).fail(function(e){n._log(e),n._updateProgressStatus(e.message),n._color="red",setTimeout(function(){n._stopProgressBar(),n._unblock_button()},1500)})}},{key:"_get_product_ids",value:function(){return this._progress=5,o.post("get_product_information",{_ajax_nonce:c.nonce,feed:this._feed,limit:this._limit})}},{key:"_process_batch",value:function(){var t=this,e="Processing Batch ".concat(this._current_batch+1," of ").concat(this._total_batch);this._updateProgressStatus(e),this._log(e),o.post("make_batch_feed",{_ajax_nonce:c.nonce,feed:this._feed,products:this._product_ids[this._current_batch],loop:this._current_batch}).then(function(e){t._current_batch++,t._log("Batch ".concat(t._current_batch," Completed")),t._log(e),t._current_batch<t._total_batch&&(t._process_batch(),t._progress+=t._progress_per_batch),t._current_batch===t._total_batch&&t._save_feed_file()}).fail(function(e){t._log(e),t._updateProgressStatus(e.message),t._color="red",setTimeout(function(){t._stopProgressBar(),t._unblock_button()},1500)})}},{key:"_save_feed_file",value:function(){var t=this;this._log("Saving feed file"),this._updateProgressStatus("Saving feed file"),o.post("save_feed_file",{_ajax_nonce:c.nonce,feed:this._feed}).then(function(e){t._log(e),t._progress=100,t._refresh&&(a.location.href="".concat(c.pages.list.feed,"&link=").concat(e.url,"&cat=").concat(e.cat)),setTimeout(function(){t._stopProgressBar(),setTimeout(function(){t._resetProgressBar(!0),t._unblock_button()},3e3)},2500)}).fail(function(e){t._log(e),t._updateProgressStatus(e.message),t._color="red",setTimeout(function(){t._stopProgressBar(),t._unblock_button()},1500)})}},{key:"_log",value:function(e){return c.wpf_debug&&console.log(e),this}},{key:"_progressBarActive",value:function(e){var t=0<arguments.length&&void 0!==e?e:0,n=this;return this._toggleProgressBar(!0),this._timer=setInterval(function(){n._updateProgressBar()},t||1e3),this}},{key:"_stopProgressBar",value:function(){return clearInterval(this._timer),this}},{key:"_resetProgressBar",value:function(e){return this._toggleProgressBar(!1),this._updateProgressStatus(""),clearInterval(this._timer),this._color=!1,this._timer=null,this._progress=0,e&&this._updateProgressBar(),this}},{key:"_toggleProgressBar",value:function(e){var t=s("#feed_progress_table");return e?t.show():t.hide(),this}},{key:"_updateProgressStatus",value:function(e){return s(".feed-progress-status").text(e),this}},{key:"_updateProgressBar",value:function(){var e=s(".feed-progress-percentage"),t=s(".feed-progress-bar-fill"),n="".concat(Math.round(this._progress),"%");t.css({width:n}),e.text(n)}}]),e}();a.wf={helper:f,feedEditor:d,generator:h},s(a).load(function(){null!==s(location).attr("href").match(/webappick.*feed/g)&&s("#wpbody-content").addClass("woofeed-body-content");var e=a.location.search;"edit-feed"===new URLSearchParams(e).get("action")&&s(".itemWrapper").show(),t(),postboxes.add_postbox_toggles(pagenow),(new h).init(),""!==c.generator.feed&&c.generator.regenerate,d.init(),f.common(),s(".wfmasterTooltip").hover(function(){var e=s(this),t=e.attr("wftitle");e.data("tipText",t).removeAttr("wftitle"),s('<p class="wftooltip"></p>').text(t).appendTo("body").fadeIn("slow")},function(){var e=s(this);e.attr("wftitle",e.data("tipText")),s(".wftooltip").remove()}).mousemove(function(e){s(".wftooltip").css({top:e.pageY+10,left:e.pageX+20})}),s(".generateFeed").validate(),s(n).on("click","[data-toggle_slide]",function(e){e.preventDefault(),s(s(this).data("toggle_slide")).slideToggle("fast")}).on("click","#wf_newRow",function(){var e=s("#table-1 tbody"),t=s("#feed_config_template").text().trim().replace(/__idx__/g,e.find("tr").length);e.append(t),f.fancySelect(s(".outputType"))}).on("click",".single-feed-delete",function(e){e.preventDefault(),confirm(c.form.del_confirm)&&(a.location.href=s(this).attr("val"))}).on("click",".wf_clean_cache_wrapper",function(e){e.preventDefault();var t=s(".woo-feed-clean-cache-nonce").val(),n=s(".woo-feed-cache-loader");n.show(),o.post("clear_cache_data",{_ajax_clean_nonce:t}).then(function(e){e.success&&n.hide()}).fail(function(e){console.log("something wrong")})}).on("change",".wf_attr.wf_attributes",function(e){e.preventDefault(),s(".fancy-picker-picked").trigger("click");var t,n,a=s(this).val(),r=s(this).parents("tr").find(".outputType"),i=s(this).parents("tr").find(".fancy-picker-content .fancy-picker-option"),o=s(this).parents("tr").find(".fancy-picker-data span");""!==a&&-1!==a.indexOf("wf_taxo")&&(t="for_custom_taxo",n="parent_if_empty"),["price","current_price","sale_price","price_with_tax","current_price_with_tax","sale_price_with_tax"].includes(a)&&(t="for_price",n="Price"),i.removeClass("selected"),"for_custom_taxo"!==t&&"for_price"!==t||i.each(function(e){n===s(this).text()&&(s(this).addClass("selected"),o.text(n),r.find("option").text(n),r.find("option").val(s(this).data("value")))})}).on("click","#doaction, #doaction2",function(){return confirm(c.form.del_confirm_multi)}).on("change",".dType",function(){var e=s(this),t=e.val(),n=e.closest("tr");"pattern"===t?(n.find(".value_attribute").hide(),n.find(".value_pattern").show()):"attribute"===t?(n.find(".value_attribute").show(),n.find(".value_pattern").hide()):"remove"===t&&(n.find(".value_attribute").hide(),n.find(".value_pattern").hide())}).on("click",".delRow",function(e){e.preventDefault(),s(this).closest("tr").remove(),f.reindex_config_table()}).on("submit","#generateFeed",function(){s(this).validate(),s(this).valid()&&s(".makeFeedResponse").show().html('<b style="color: darkblue;"><i class="dashicons dashicons-sos wpf_spin"></i> '.concat(c.form.generate,"</b>"))}).on("submit","#updatefeed",function(e,t){s(this).validate(),s(this).valid()&&s(".makeFeedResponse").show().html('<b style="color: darkblue;"><i class="dashicons dashicons-sos wpf_spin"></i> '.concat(t&&t.save?c.form.save:c.form.generate,"</b>"))}).on("change",".ftporsftp",function(){var e=s(this).val(),t=s(".ssh2_status");"sftp"===e?(t.show().css("color","dodgerblue").text(c.form.sftp_checking),o.post("get_ssh2_status",{_ajax_nonce:c.nonce,server:e}).then(function(e){"exists"===e?(t.css("color","#2CC185").text(c.form.sftp_available),setTimeout(function(){t.hide()},1500)):t.show().css("color","red").text(c.form.sftp_warning)}).fail(function(e){t.hide(),f.ajax_fail(e)})):t.hide()}).on("click",'[name="save_feed_config"]',function(e){e.preventDefault(),s("#updatefeed").trigger("submit",{save:!0})}).on("change","#provider",function(e){if(e.preventDefault(),s(this).closest(".generateFeed").hasClass("add-new")){var t=s(this).val(),n=s("#feedType"),a=s("#providerPage"),r=s("#feed_merchant_info");a.html('<h3><span style="float:none;margin: -3px 0 0;" class="spinner is-active"></span> '+c.form.loading_tmpl+"</h3>"),r.find(".spinner").addClass("is-active"),n.disabled(!0),n.parent().find(".spinner").addClass("is-active"),r.find(".merchant-info-section .data").html(""),u.hasOwnProperty(t)?d.renderMerchantInfo(r,n,u[t]):o.send("woo_feed_get_merchant_info",{type:"GET",data:{nonce:c.nonce,provider:t}}).then(function(e){u[t]=e,d.renderMerchantInfo(r,n,e)}).fail(f.ajax_fail),p.hasOwnProperty(t)?d.renderMerchantTemplate(a,p[t]):o.post("get_feed_merchant",{_ajax_nonce:c.nonce,merchant:t}).then(function(e){p[t]=e,d.renderMerchantTemplate(a,e),"bing"===t&&(s("#delimiter option").removeAttr("selected"),s('#delimiter option[value="tab"]').attr("selected","selected"),s("#enclosure option").removeAttr("selected"),s('#enclosure option[value=" "]').attr("selected","selected")),"google_product_review"!==t&&s('.wf_attributes option[value="reviewer_name"]').hide()}).fail(f.ajax_fail)}}).on("change",".woo_feed_status_input",function(){var e=s(this);o.post("update_feed_status",{_ajax_nonce:c.nonce,feedName:e.val(),status:e[0].checked?1:0})}),s(n).on("change",'[name="is_outOfStock"], [name="product_visibility"]',function(){var e=s(".out-of-stock-visibility");"n"===s('[name="is_outOfStock"]:checked').val()&&"1"===s('[name="product_visibility"]:checked').val()?e.show():e.hide()}).on("change",".attr_type",function(){var e=s(this),t=e.val(),n=e.closest("tr");"pattern"===t?(n.find(".wf_attr").hide(),n.find(".wf_attr").val(""),n.find(".wf_default").show()):(n.find(".wf_attr").show(),n.find(".wf_default").hide(),n.find(".wf_default").val(""))}).on("change",".wf_mattributes, .attr_type",function(){var e=s(this).closest("tr"),t=e.find(".wf_mattributes"),n=e.find(".attr_type"),a=e.find("td:eq(4)"),r=s("#provider").val();if(c.form.google_category.hasOwnProperty(t.val())&&"pattern"===n.val()&&f.in_array(r,c.form.google_category[t.val()])){if(0===a.find("select.selectize").length){a.find("input.wf_default").remove(),a.append('<span class="wf_default wf_attributes"><select name="default[]" class="selectize"></select></span>'),a.append('<span style="font-size:x-small;"><a style="color: red" href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">'.concat(c.learn_more,"</a></span>")),_||a.append('<span class="spinner is-active" style="margin: 0;"></span>');var i=a.find(".wf_attributes select");f.selectize(i,{preload:!0,placeholder:c.form.select_category,load:function(e,t){_?t(_):o.send("get_google_categories",{type:"GET",data:{_ajax_nonce:c.nonce,action:"get_google_categories",provider:r}}).then(function(e){t(_=e),a.find(".spinner").remove()}).fail(f.ajax_fail)}})}}else"current_category"!==t.val()&&0===a.find("input.wf_default").length&&(a.find("span").remove(),a.append('<input autocomplete="off" class="wf_default wf_attributes" type="text" name="default[]" value="">'),"pattern"!==n.val()&&a.find("input.wf_default").hide())}).on("change","#feedType,#provider",function(){var e=s("#feedType").val(),t=s("#provider").val(),n=s(".itemWrapper"),a=s(".wf_csvtxt");""!==e&&f.in_array(t,c.form.item_wrapper_hidden)?n.hide():"xml"===e?(n.show(),a.hide()):"csv"===e||"txt"===e?(n.hide(),a.show()):(n.hide(),a.hide())}).trigger("change")})}(jQuery,window,document,wp.ajax,wpf_ajax_obj);
2
- //# sourceMappingURL=woo-feed-admin.min.js.map
1
+ "use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function _createClass(e,t,n){return t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n),e}!function(s,a,t,i,c){s.fn.disabled=function(n){return s(this).each(function(){var e=s(this),t="disabled";void 0!==e.prop(t)?e.prop(t,void 0===n||!0===n):!0===n?e.addClass(t):e.removeClass(t)}),self},s.fn.isDisabled=function(){var e=s(this),t="disabled";return void 0!==e.prop(t)?e.prop(t):e.hasClass(t)};function e(e){s(e.currentTarget).removeClass(function(e,t){return(t.match(/\btooltipped-\S+/g)||[]).join(" ")}).removeClass("tooltipped").removeAttr("aria-label")}function r(e,t){s(e).addClass("tooltipped tooltipped-s").attr("aria-label",t)}function o(e,t){return s.extend(!0,{},e,t)}function n(){l=s(".toClipboard"),!ClipboardJS.isSupported()||/iPhone|iPad/i.test(navigator.userAgent)?l.find("img").hide(0):(l.each(function(){s(this).on("mouseleave",e).on("blur",e)}),new ClipboardJS(".toClipboard").on("error",function(e){var t,n;r(e.trigger,(t=e.action,n="cut"===t?"X":"C",/iPhone|iPad/i.test(navigator.userAgent)?"No support :(":/Mac/i.test(navigator.userAgent)?"Press ⌘-"+n+" to "+t:"Press Ctrl-"+n+" to "+t))}).on("success",function(e){r(e.trigger,"Copied!")}))}var l,_,f={in_array:function(e,t){try{return-1!==t.indexOf(e)}catch(e){return!1}},selectize_render_item:function(e,t){return'<div class="item wapk-selectize-item">'.concat(t(e.text),"</div>")},ajax_fail:function(e){console.warn(e),alert(e.hasOwnProperty("statusText")&&e.hasOwnProperty("status")?c.ajax.error+"\n"+e.statusText+" ("+e.status+")":e)},sortable:function(e,n,a,r){return(e||s(".sorted_table")).each(function(){var e=s(this),t=e.find("tbody > tr:eq(0) > td").length||a||9;e.wf_sortable(o({containerSelector:"table",itemPath:"> tbody",itemSelector:"tr",handle:"i.wf_sortedtable",placeholder:'<tr class="placeholder"><td colspan="'.concat(t,'"></td></tr>'),onDrop:function(e,t,n,a){e.removeClass(t.group.options.draggedClass).removeAttr("style"),s("body").removeClass(t.group.options.bodyClass),r&&"function"==typeof r&&r(e,t,n,a)}},n))})},selectize:function(e,t){return(e||s("select.selectize")).not(".selectized").each(function(){var e=s(this);e.selectize(o({create:e.data("create")||!1,plugins:e.data("plugins")?e.data("plugins").split(",").map(function(e){return e.trim()}):[],render:{item:f.selectize_render_item}},t))})},fancySelect:function(e,t){return(e||s("select.fancySelect")).not(".FancySelectInit").each(function(){s(this).fancySelect(o({maxItemShow:3},t))})},reindex_config_table:function(){s("#table-1").find("tbody tr").each(function(n,e){s(e).find("[name]").each(function(e,t){s(t).attr("name",s(t).attr("name").replace(/(\[\d\])/g,"[".concat(n,"]")))})})},common:function(){f.sortable(s(".sorted_table"),{},9,f.reindex_config_table),f.selectize(),f.fancySelect(s(".outputType"))}},d={form:null,init:function(){this.form=s(".generateFeed"),this.form.length&&(f.common(),s(t).trigger(new jQuery.Event("feedEditor.init",{target:this.form})))},renderMerchantInfo:function(n,a,r){function e(e){var t;r.hasOwnProperty(e)&&(n.find(".merchant-info-section."+e+" .data").html(r[e]),"feed_file_type"===e&&((t=r[e].split(",").map(function(e){return e.trim().toLowerCase()}).filter(function(e){return""!==e&&e!==c.na.toLowerCase()})).length?(a.find("option").removeAttr("selected").each(function(){var e=s(this);e.val()&&!f.in_array(e.val(),t)?e.disabled(!0):e.disabled(!1)}),1===t.length&&a.find('option[value="'+t[0]+'"]').attr("selected","selected")):a.find("option").disabled(!1)))}for(var t in r)e(t);n.find(".spinner").removeClass("is-active"),a.disabled(!1),a.trigger("change"),a.parent().find(".spinner").removeClass("is-active")},renderMerchantTemplate:function(n,a){function e(t){if(a.hasOwnProperty(t))if("tabs"===t)n.html(a[t]);else{var e=s('[name="'+t+'"]');e.length&&e.each(function(){var e=s(this);e.is("select")?e.find('[value="'+a[t]+'"]').prop("selected",!0):(e.is("[type=checkbox]")||e.is("[type=radio]"))&&e.val()===a[t]?e.prop("checked",!0):e.val(a[t])}).trigger("change")}}for(var t in a)e(t);d.init()}},u=[],p=[],h=function(){function e(){_classCallCheck(this,e),this._feed=c.generator.feed,this._limit=c.generator.limit,this._progress=0,this._timer=null,this._color=!1,this._total_batch=0,this._current_batch=0,this._product_ids=[],this._progress_per_batch=0,this._refresh=!0,this._regenerate=c.generator.regenerate,a.isRegenerating=!1,this._all_btn=s(".wpf_regenerate"),this._current_btn=s("#".concat(this._feed.replace("wf_config","wf_feed_"))),this._current_btn_label=""}return _createClass(e,[{key:"init",value:function(){var n=this;return""!==this._feed&&this._regenerate&&!1===a.isRegenerating&&this.generate(),s(t).on("click",".woo-feed-campaign-close-button",function(e){e.preventDefault(),s(this).parent(".woo-feed-promotion").hide();var t=s(this).data("condition");1===t&&i.post("woo_feed_hide_promotion",{_ajax_nonce:c.nonce,condition:t}).then(function(e){n._log(e)}).fail(function(e){n._log(e),n._updateProgressStatus(e.message),n._color="red"})}),s(t).on("click",".wpf_regenerate",function(e){e.preventDefault(),n._current_btn=s(this),n._current_btn.hasClass("disabled")||!0===a.isRegenerating||(n._feed=n._current_btn.attr("id").replace("wf_feed_","wf_config"),""!==n._feed&&n.generate())}),this}},{key:"_block_button",value:function(){this._all_btn.length&&this._all_btn.addClass("disabled"),this._current_btn.length&&(this._current_btn.find("span").addClass("wpf_spin reverse_spin"),this._current_btn_label=this._current_btn.attr("title"),this._current_btn.attr("aria-label",c.regenerate).attr("title",c.regenerate))}},{key:"_unblock_button",value:function(){this._all_btn.length&&this._all_btn.removeClass("disabled"),this._current_btn.length&&(this._current_btn.find("span").removeClass("wpf_spin"),this._current_btn.find("span").removeClass("reverse_spin"),this._current_btn.attr("aria-label",this._current_btn_label).attr("title",this._current_btn_label))}},{key:"generate",value:function(){var t=this,n=this;a.isRegenerating=!0,this._block_button(),this._resetProgressBar(),this._progressBarActive(),this._log("Counting Total Products"),this._updateProgressStatus("Fetching products."),this._get_product_ids().then(function(e){t._progress=10,n._log({response:e}),e.success?(n._log("Total ".concat(e.total," Products found.")),n._product_ids=e.product,n._total_batch=t._product_ids.length,n._current_batch=0,n._progress_per_batch=(90-t._progress)/t._total_batch,n._process_batch(),n._updateProgressStatus("Processing Products...")):n._updateProgressStatus(e.data.message)}).fail(function(e){n._log(e),n._updateProgressStatus(e.message),n._color="red",setTimeout(function(){n._stopProgressBar(),n._unblock_button()},1500)})}},{key:"_get_product_ids",value:function(){return this._progress=5,i.post("get_product_information",{_ajax_nonce:c.nonce,feed:this._feed,limit:this._limit})}},{key:"_process_batch",value:function(){var t=this,e="Processing Batch ".concat(this._current_batch+1," of ").concat(this._total_batch);this._updateProgressStatus(e),this._log(e),i.post("make_batch_feed",{_ajax_nonce:c.nonce,feed:this._feed,products:this._product_ids[this._current_batch],loop:this._current_batch}).then(function(e){t._current_batch++,t._log("Batch ".concat(t._current_batch," Completed")),t._log(e),t._current_batch<t._total_batch&&(t._process_batch(),t._progress+=t._progress_per_batch),t._current_batch===t._total_batch&&t._save_feed_file()}).fail(function(e){t._log(e),t._updateProgressStatus(e.message),t._color="red",setTimeout(function(){t._stopProgressBar(),t._unblock_button()},1500)})}},{key:"_save_feed_file",value:function(){var t=this;this._log("Saving feed file"),this._updateProgressStatus("Saving feed file"),i.post("save_feed_file",{_ajax_nonce:c.nonce,feed:this._feed}).then(function(e){t._log(e),t._progress=100,t._refresh&&(a.location.href="".concat(c.pages.list.feed,"&link=").concat(e.url,"&cat=").concat(e.cat)),setTimeout(function(){t._stopProgressBar(),setTimeout(function(){t._resetProgressBar(!0),t._unblock_button()},3e3)},2500)}).fail(function(e){t._log(e),t._updateProgressStatus(e.message),t._color="red",setTimeout(function(){t._stopProgressBar(),t._unblock_button()},1500)})}},{key:"_log",value:function(e){return c.wpf_debug&&console.log(e),this}},{key:"_progressBarActive",value:function(e){var t=0<arguments.length&&void 0!==e?e:0,n=this;return this._toggleProgressBar(!0),this._timer=setInterval(function(){n._updateProgressBar()},t||1e3),this}},{key:"_stopProgressBar",value:function(){return clearInterval(this._timer),this}},{key:"_resetProgressBar",value:function(e){return this._toggleProgressBar(!1),this._updateProgressStatus(""),clearInterval(this._timer),this._color=!1,this._timer=null,this._progress=0,e&&this._updateProgressBar(),this}},{key:"_toggleProgressBar",value:function(e){var t=s("#feed_progress_table");return e?t.show():t.hide(),this}},{key:"_updateProgressStatus",value:function(e){return s(".feed-progress-status").text(e),this}},{key:"_updateProgressBar",value:function(){var e=s(".feed-progress-percentage"),t=s(".feed-progress-bar-fill"),n="".concat(Math.round(this._progress),"%");t.css({width:n}),e.text(n)}}]),e}();a.wf={helper:f,feedEditor:d,generator:h},s(a).load(function(){null!==s(location).attr("href").match(/webappick.*feed/g)&&s("#wpbody-content").addClass("woofeed-body-content");var e=a.location.search;"edit-feed"===new URLSearchParams(e).get("action")&&s(".itemWrapper").show(),n(),postboxes.add_postbox_toggles(pagenow),(new h).init(),""!==c.generator.feed&&c.generator.regenerate,d.init(),f.common(),s(".wfmasterTooltip").hover(function(){var e=s(this),t=e.attr("wftitle");e.data("tipText",t).removeAttr("wftitle"),s('<p class="wftooltip"></p>').text(t).appendTo("body").fadeIn("slow")},function(){var e=s(this);e.attr("wftitle",e.data("tipText")),s(".wftooltip").remove()}).mousemove(function(e){s(".wftooltip").css({top:e.pageY+10,left:e.pageX+20})}),s(".generateFeed").validate(),s(t).on("click","[data-toggle_slide]",function(e){e.preventDefault(),s(s(this).data("toggle_slide")).slideToggle("fast")}).on("click","#wf_newRow",function(){var e=s("#table-1 tbody"),t=s("#feed_config_template").text().trim().replace(/__idx__/g,e.find("tr").length);e.append(t),f.fancySelect(s(".outputType"))}).on("click",".single-feed-delete",function(e){e.preventDefault(),confirm(c.form.del_confirm)&&(a.location.href=s(this).attr("val"))}).on("click",".wf_clean_cache_wrapper",function(e){e.preventDefault();var t=s(".woo-feed-clean-cache-nonce").val(),n=s(".woo-feed-cache-loader");n.show(),i.post("clear_cache_data",{_ajax_clean_nonce:t}).then(function(e){e.success&&n.hide()}).fail(function(e){console.log("something wrong")})}).on("change",".wf_attr.wf_attributes",function(e){e.preventDefault(),s(".fancy-picker-picked").trigger("click");var t,n,a=s(this).val(),r=s(this).parents("tr").find(".outputType"),o=s(this).parents("tr").find(".fancy-picker-content .fancy-picker-option"),i=s(this).parents("tr").find(".fancy-picker-data span");""!==a&&-1!==a.indexOf("wf_taxo")&&(t="for_custom_taxo",n="parent_if_empty"),["price","current_price","sale_price","price_with_tax","current_price_with_tax","sale_price_with_tax"].includes(a)&&(t="for_price",n="Price"),o.removeClass("selected"),"for_custom_taxo"!==t&&"for_price"!==t||o.each(function(e){n===s(this).text()&&(s(this).addClass("selected"),i.text(n),r.find("option").text(n),r.find("option").val(s(this).data("value")))})}).on("click","#doaction, #doaction2",function(){return confirm(c.form.del_confirm_multi)}).on("change",".dType",function(){var e=s(this),t=e.val(),n=e.closest("tr");"pattern"===t?(n.find(".value_attribute").hide(),n.find(".value_pattern").show()):"attribute"===t?(n.find(".value_attribute").show(),n.find(".value_pattern").hide()):"remove"===t&&(n.find(".value_attribute").hide(),n.find(".value_pattern").hide())}).on("click",".delRow",function(e){e.preventDefault(),s(this).closest("tr").remove(),f.reindex_config_table()}).on("submit","#generateFeed",function(){s(this).validate(),s(this).valid()&&s(".makeFeedResponse").show().html('<b style="color: darkblue;"><i class="dashicons dashicons-sos wpf_spin"></i> '.concat(c.form.generate,"</b>"))}).on("submit","#updatefeed",function(e,t){s(this).validate(),s(this).valid()&&s(".makeFeedResponse").show().html('<b style="color: darkblue;"><i class="dashicons dashicons-sos wpf_spin"></i> '.concat(t&&t.save?c.form.save:c.form.generate,"</b>"))}).on("change",".ftporsftp",function(){var e=s(this).val(),t=s(".ssh2_status");"sftp"===e?(t.show().css("color","dodgerblue").text(c.form.sftp_checking),i.post("get_ssh2_status",{_ajax_nonce:c.nonce,server:e}).then(function(e){"exists"===e?(t.css("color","#2CC185").text(c.form.sftp_available),setTimeout(function(){t.hide()},1500)):t.show().css("color","red").text(c.form.sftp_warning)}).fail(function(e){t.hide(),f.ajax_fail(e)})):t.hide()}).on("click",'[name="save_feed_config"]',function(e){e.preventDefault(),s("#updatefeed").trigger("submit",{save:!0})}).on("change","#provider",function(e){if(e.preventDefault(),s(this).closest(".generateFeed").hasClass("add-new")){var t=s(this).val(),n=s("#feedType"),a=s("#providerPage"),r=s("#feed_merchant_info");a.html('<h3><span style="float:none;margin: -3px 0 0;" class="spinner is-active"></span> '+c.form.loading_tmpl+"</h3>"),r.find(".spinner").addClass("is-active"),n.disabled(!0),n.parent().find(".spinner").addClass("is-active"),r.find(".merchant-info-section .data").html(""),u.hasOwnProperty(t)?d.renderMerchantInfo(r,n,u[t]):i.send("woo_feed_get_merchant_info",{type:"GET",data:{nonce:c.nonce,provider:t}}).then(function(e){u[t]=e,d.renderMerchantInfo(r,n,e)}).fail(f.ajax_fail),p.hasOwnProperty(t)?d.renderMerchantTemplate(a,p[t]):i.post("get_feed_merchant",{_ajax_nonce:c.nonce,merchant:t}).then(function(e){p[t]=e,d.renderMerchantTemplate(a,e),"bing"===t&&(s("#delimiter option").removeAttr("selected"),s('#delimiter option[value="tab"]').attr("selected","selected"),s("#enclosure option").removeAttr("selected"),s('#enclosure option[value=" "]').attr("selected","selected")),"google_product_review"!==t&&s('.wf_attributes option[value="reviewer_name"]').hide()}).fail(f.ajax_fail)}}).on("change",".woo_feed_status_input",function(){var e=s(this);i.post("update_feed_status",{_ajax_nonce:c.nonce,feedName:e.val(),status:e[0].checked?1:0})}),s(t).on("change",'[name="is_outOfStock"], [name="product_visibility"]',function(){var e=s(".out-of-stock-visibility");"n"===s('[name="is_outOfStock"]:checked').val()&&"1"===s('[name="product_visibility"]:checked').val()?e.show():e.hide()}).on("change",".attr_type",function(){var e=s(this),t=e.val(),n=e.closest("tr");"pattern"===t?(n.find(".wf_attr").hide(),n.find(".wf_attr").val(""),n.find(".wf_default").show()):(n.find(".wf_attr").show(),n.find(".wf_default").hide(),n.find(".wf_default").val(""))}).on("change",".wf_mattributes, .attr_type",function(){var e=s(this).closest("tr"),t=e.find(".wf_mattributes"),n=e.find(".attr_type"),a=e.find("td:eq(4)"),r=s("#provider").val();if(c.form.google_category.hasOwnProperty(t.val())&&"pattern"===n.val()&&f.in_array(r,c.form.google_category[t.val()])){if(0===a.find("select.selectize").length){a.find("input.wf_default").remove(),a.append('<span class="wf_default wf_attributes"><select name="default[]" class="selectize"></select></span>'),a.append('<span style="font-size:x-small;"><a style="color: red" href="http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category" target="_blank">'.concat(c.learn_more,"</a></span>")),_||a.append('<span class="spinner is-active" style="margin: 0;"></span>');var o=a.find(".wf_attributes select");f.selectize(o,{preload:!0,placeholder:c.form.select_category,load:function(e,t){_?t(_):i.send("get_google_categories",{type:"GET",data:{_ajax_nonce:c.nonce,action:"get_google_categories",provider:r}}).then(function(e){t(_=e),a.find(".spinner").remove()}).fail(f.ajax_fail)}})}}else"current_category"!==t.val()&&0===a.find("input.wf_default").length&&(a.find("span").remove(),a.append('<input autocomplete="off" class="wf_default wf_attributes" type="text" name="default[]" value="">'),"pattern"!==n.val()&&a.find("input.wf_default").hide())}).on("change","#feedType,#provider",function(){var e=s("#feedType").val(),t=s("#provider").val(),n=s(".itemWrapper"),a=s(".wf_csvtxt");""!==e&&f.in_array(t,c.form.item_wrapper_hidden)?n.hide():"xml"===e?(n.show(),a.hide()):"csv"===e||"txt"===e?(n.hide(),a.show()):(n.hide(),a.hide())}).trigger("change")})}(jQuery,window,document,wp.ajax,wpf_ajax_obj);
2
+ //# sourceMappingURL=woo-feed-admin.min.js.map
admin/js/woo-feed-admin.min.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["woo-feed-admin.js"],"names":["_defineProperties","target","props","descriptor","i","_createClass","Constructor","protoProps","staticProps","prototype","window","wpAjax","self","prop","showTooltip","$","hasClass","currentTarget","clearTooltip","removeClass","actionMsg","className","match","index","action","removeAttr","actionKey","elem","addClass","attr","msg","extend","_default","_args","clip","$copyBtn","feedGenerator","left","event","trigger","test","navigator","on","console","googleCategories","in_array","needle","haystack","sortable","escape","data","text","ajax_fail","column_count","find","warn","wf_sortable","selectize_render_item","e","hasOwnProperty","opts","ajax","error","statusText","status","el","config","column","_onDrop","each","this","length","selectize","itemPath","create","concat","plugins","$item","container","containerSelector","group","options","bodyClass","itemSelector","handle","onDrop","fancySelect","maxItemShow","split","map","s","trim","helper","render","item","replace","x","form","merchantInfo","document","jQuery","k","init","renderMerchantInfo","opt","feedType","r","types","html","t","toLowerCase","na","disabled","val","_loop2","feedForm","contentSettings","renderMerchantTemplate","feedEditor","is","merchantInfoCache","tooltip","css","top","isRegenerating","_feed","_current_btn","feed","_limit","generator","limit","_progress","_product_ids","_progress_per_batch","_refresh","_all_btn","generate","key","value","_regenerate","_current_btn_label","regenerate","_this","_log","response","_updateProgressStatus","message","product","setTimeout","_stopProgressBar","_process_batch","_color","_resetProgressBar","_ajax_nonce","post","_save_feed_file","_current_batch","_total_batch","_unblock_button","then","refreshInterval","arguments","undefined","_timer","setInterval","_updateProgressBar","clearInterval","update","table","show","hide","width","bar","wf","load","current_page_url_query","page_action","postboxes","add_postbox_toggles","preventDefault","pagenow","template","common","hover","title","appendTo","userAgent","merchantTemplateCache","remove","ClipboardJS","clipboard","location","slideToggle","loader","tbody","confirm","del_confirm","fail","_ajax_clean_nonce","current_attribute_value","outputSelect","fancyOption","fancyDataPicker","log","selectKey","parents","percentage","indexOf","selectIf","includes","urlParams","URLSearchParams","row","del_confirm_multi","closest","reindex_config_table","type","valid","validate","save","server","sftp_checking","sftp_available","price_attributes","send","provider","merchant","nonce","checked","outOfStockVisibilityRow","feedName","valueColumn","select","preload","learn_more","append","cb","query","itemWrapper","wf_csv_txt"],"mappings":"yHAAA,SAAAA,kBAAAC,EAAAC,+BACA,IAAAC,EAAAD,EAAAE,kHADA,SAAAC,aAAAC,EAAAC,EAAAC,GAWC,OAFDD,GAAAP,kBAAAM,EAAAG,UAAAF,GARAC,GAAAE,kBAAAC,EAAAH,GAUCF,gFA0BGM,IAAAA,EAAAA,EAAAA,MACAC,EAAAD,gBAEA,IAAAA,EAAAA,KAAAC,GAHAD,EAAAA,KAAAA,OAAAA,IAAAA,IAAAA,IAAAA,4EAYF,IAAAE,EAAAA,EAAAA,MAEAC,EAAA,WACA,YAHA,IAAAH,EAAAC,KAAAA,GAAAD,EAAAC,KAAAA,GAAAD,EAAAI,SAAAH,IAUQI,SAWRC,EAXuBC,GAAaC,EAAAA,EAAAA,eAAuBC,YAAUC,SAAMC,EAAhBC,GAAvB,OAA+EL,EAAAA,MAAAA,sBAAAA,IAAAA,KAAAA,OADpHC,YAAA,cAAAK,WAAAC,cAKGC,SAAFZ,EAAAA,EAAAA,GACAA,EAEDY,GAAAC,SAAA,2BAAAC,KAAA,aAAAC,GAiCyB,SAAAC,EAAAC,EAAAC,GAAA,OAvBvBlB,EAAAgB,QAAA,EAAA,GAAAC,EAAAC,GAHAb,SA8MEc,IAEAtB,EAAAA,EAAAA,4GAxRLuB,EA4RMC,KAAAA,WAEAC,EAAAA,MAAAA,GAAAA,aAAAA,GAAAA,GAAAA,OAAAA,oEAvMLvB,EAAAwB,EAAAC,WA2MQD,EAAAd,oEA5NG,gBAATO,OAAAS,KAAAC,UAAAT,WAAAZ,WAAAA,EAAAA,OAAAA,EAEAA,cAAAA,EAAAA,OAAAA,MA0NMsB,GAAA,UAAA,SAAAJ,6BAxOPvB,IA0CE4B,EAfYC,KAAfC,SAAA,SAAAC,EAAAC,uFAQIC,MAAAA,yCAAwBF,OAAaG,EAAAC,EAAAC,MAAA,WAErCC,UACAC,SAAAC,GANM1C,QAAA2C,KAAAC,GAQRC,MAAAA,EAAAA,eAAAA,eARQC,EAAAC,eAAA,UAAAC,EAAAC,KAAAC,MAAA,KAAAJ,EAAAK,WAAA,KAAAL,EAAAM,OAAA,IAAAN,IAoCHV,SAAA,SAAAiB,EAAAC,EAAAC,EAAAC,GACD,OAAAH,GAAAlD,EAAA,kBAAAsD,KAAA,WArCI,IAAAzD,EAsCHsD,EAtCGI,MAuCNjB,EAnCAzC,EAAA0C,KAAA,yBAAAiB,QAAAJ,GAAA,EAnBFvD,EAAA4C,YAAAzB,EAAA,CAwDAyC,kBAAW,QACVC,SAAU,UArBXzB,aAAU,KACTpC,OAAA4D,mBACCE,YAAI9D,wCADW+D,OAAAtB,EAAA,gBACfuB,OAAAA,SACaC,EAAAC,EAAa5B,EAAAZ,GAC1B1B,EAAAA,YAAK4C,EAAL5C,MAAAA,QAAAA,cAAAA,WAAAA,SACCmE,EAAAA,QAJc5D,YAAA2D,EAAAE,MAAAC,QAAAC,WAMdC,GAAAA,mBAAAA,GACAC,EAAAA,EAAAA,EAAQ3B,EAAAA,KAaVS,OARGM,UAAAP,SAAKoB,EAAAA,GACJA,OAAAA,GAAAA,EAAAA,qBAAAA,IAAAA,eAAAA,KAAAA,WACAzE,IAAAA,EAAA0E,EAAAA,MACDC,EAAAA,UAAAA,EAAA,CADCb,OAXqBR,EAWrBhB,KAAA,YAAA,EAGH0B,QALEhE,EAAAsC,KAAA,WAAAtC,EAAAsC,KAAA,WAAAsC,MAAA,KAAAC,IAAA,SAAAC,GAjDJ,OAAAA,EAAAC,SAwDAnB,GAEEzD,OAAAuC,CACA1C,KAAAA,EAAAA,wBAFDsD,OAOE0B,YAAA5C,SAAAiB,EAAAC,GACA2B,OAAAA,GAAAA,EAAAA,uBAAAA,IAAAA,oBAAAA,KAAAA,WACCC,EAAAA,MADOR,YAAAvD,EAAA,CApEXX,YAAAA,GAwEE8C,gIAMCqB,EAAAA,GAAAA,KA5DK,OAAAxE,EAAAkD,GAAApC,KAAA,QAAAkE,QAAA,YAAA,IAAApB,OAAAqB,EAAA,yFAkENjF,EAACyD,YACAzD,EAAAA,YAAAA,EAAAA,+CAgBHkF,KALYA,KAAAlF,EAAA,iBAKZkF,KAEAtC,KAAAA,SAwBGuC,EAAAA,SAEAnF,EAAAoF,GAAI5D,QAAA,IAAA6D,OAAqBC,MAAG,kBAAA,CAtB/BC,OAAIhC,KAAA2B,UAiCGM,mBAAIC,SAAJN,EAAAO,EAAAC,GAtBPF,SAAAA,EAAAZ,GA4BI,IAtBJW,EAkBOG,EAAA/C,eA9CK0C,KA+CNH,EAAA5C,KAAIqD,0BAA6BrD,EAAK,UAAAsD,KAAAF,EAAmBC,IAE1D,mBAtCLL,KAiBAC,EAAAA,EAAAA,GAAAA,MAAAA,KAAAA,IAAAA,SAAAA,GA5BY,OAAAM,EAAAlB,OAAAmB,mCA6BM,MAAA,KAAAD,GAAAA,IAAAjD,EAAAmD,GAAAD,iBAEfZ,QAwBFO,EAASO,KAAT,UAAAvF,WAAA,YAAA4C,KAAA,WAtBEoC,IAAAD,EAAAjE,EAAA+B,MACCmC,EAAAQ,QAAC3D,EAAWT,SAAZ2D,EAAYrF,MAAAA,GAAAqF,EAAZQ,UAAA,GAAAR,EAAAQ,UAAA,mFAGEP,EAAAnD,KAAA,UAAA0D,UAAA,KAMAP,IAAAA,IAAAA,KAAAA,EACCS,EAAAR,GAGDS,EAAAA,KAAAP,YAAUrC,YAAAA,aACVkC,EAHCD,UAGD,GACDC,EAAAlE,QAAA6E,gEAKJlB,uBAAAA,SAAAA,EAAAA,GACAO,SAAAA,EAASO,GACTP,GAAAA,EAAAA,eAAAA,GACAA,GAAAA,SAAAA,EA6BIU,EAAAP,KAAAF,EAAAL,QA1BL,CA4BG,IAAAe,EAAArG,EAAA,UAAAsF,EAAA,gBAGFe,EAAiB/C,KAAA,WA1BlBgD,IAAAA,EAAAA,EAAAA,qBAGGC,EAAAA,KAAIhB,WAAJI,EAAAL,GAAA,MAAAxF,KAAA,YAAA,IACCc,EAAA4F,GAAA,oBAAA5F,EAAA4F,GAAA,kBAAA5F,EAAAsF,QAAAP,EAAAL,GArKJjF,EAAAA,KAAAA,WAAAA,GAwKIoG,EAAAA,IAAIJ,EAAAA,MAEJK,QAAA,WAMG7G,IAAAA,IAAAsC,KAAAwD,EACA/E,EAAAA,GAGA2F,EAAAhB,SAKLvF,EAvBD2G,GAmDEC,EAnDF,GA+DCvF,EAAA,WAKAtB,SAAAA,IACAJ,gBAJDkH,KAAAA,GApNHtD,KAAAuD,MAAAC,EAAAA,UAAAC,KAuPEzD,KAAA0D,OAAApE,EAAAqE,UAAAC,MAED5D,KAAA6D,UAAA,4EAhVF7D,KAAA8D,aAAA,GAAA9D,KAAA+D,oBAAA,EAAA/D,KAAAgE,UAAA,0CAsVG5H,EAAAkH,gBAAiBC,EA1BlBvD,KAAAiE,SAAAC,EAAAA,mBAAclE,KAAAwD,aAAA/G,EAAA,IAAA4D,OAAAL,KAAAuD,MAAA9B,QAAA,YAAA,yCA0Sd,OArSCnF,aAAAA,EAAA,CAAA,CA+BE6H,IAAA,OA7BFC,MAsBA,WArBA,IAAA9H,EAAA0D,KA2CA,MA/WH,KAAAA,KAAAuD,OAAAvD,KAAAqE,cAAA,IAAAjI,EAAAkH,gBAAAtD,KAAAkE,WAyUGzH,EAAAoF,GAAAoC,GAAAA,QAAKI,kBAAL,SAAArG,GACA5B,EAAAA,wCACAE,EAAAkH,aAAKS,SAAL,cAAkB,IAAA7H,EAAAkH,iBAClBhH,EAAAiH,MAAAC,EAAAA,aAAqBjG,KAAAD,MAAAA,QAAUiG,WAAAA,aAC/B,KAAAe,EAAAA,uBAkCAtE,OA/WH,CAAAmE,IAAA,gBAkXGC,MAAA,WAzW0CpE,KAAAiE,SAAAA,QAAAjE,KAAAiE,SAAA3G,SAAA,YA4U1C0C,KAAAwD,aAAAA,kIAECxD,KAAAwD,aAAAjG,KAAA,aAAA+B,EAAAiF,YAAAhH,KAAA,QAAA+B,EAAAiF,6EAvVJvE,KAAAiE,SAAApH,YAAA,YA6VIP,KAAAA,aAAAA,gEACAF,KAAAA,aAAAkH,KAAAA,QAAAzG,YAAA,gBACCP,KAAAA,aAAAA,KAAAA,aAAAA,KAAAA,oBAAAA,KAAAA,QAAAA,KAAAA,uBAIF,gBA1V0C8H,MAAA,WAAA,IAAAI,EAAAX,KAAAvH,EAAAmI,KAAAC,EAAAA,gBAAAA,uBA8VzCpI,KAAAA,oBACAA,KAAAA,qBACDA,KAAAA,KAAAA,qHAECA,EAAAA,UAAAqI,GAEArI,EAAAA,KAAAA,CACAoI,SAAAA,eArWyCpI,EAAAA,KAAAqI,SAAAA,OAAAA,EAAAnF,MAAAoF,qBAAAtI,EAAAA,aAAAoI,EAAAG,QAyW1CC,EAAAA,aAAKN,EAAAV,aAAc7D,OAClB3D,EAAAA,eAAAyI,wDA0CCzI,EA3CG0I,iBAIJ1I,EAAAqI,sBAAA,gGAtXJrI,EAAAqI,sBAAAnF,EAAAoF,SAAAtI,EAAA2I,OAAA,MAuaGH,WAAKjB,WACLvH,EAAAyI,mBAECtB,EAAAA,mBAjayCG,UAT7C,CAAAO,IAAA,mBAobGC,MAAA,kBAhDApE,KAAA6D,UAAKqB,oCAkDLC,YAAKR,EAAAA,sBAjDLf,MAAA5D,KAAA0D,WAICpH,sBAsDAA,MAAAA,sBArDAA,EAAAA,oBAAAA,OAAAA,KAAAA,eAAAA,EAAAA,QAAAA,OAAAA,KAAAA,cAAYoI,KAAAA,sBAAAA,gBACZrI,EAAA+I,KAAA,kBAAA,qBACC9I,KAAAA,KAAAA,MA0DAA,SAAAA,KAAK+I,aAALrF,KAAAsF,gBAzDAhJ,KAAAA,KAAAA,iBACAA,KAAAA,SAAAA,GACAA,EAAAA,iBACAA,EAAAA,KAAAA,SAAAA,OAAAA,EAAAA,eAAAA,eA2DDA,EAAAA,KAAK2I,GAEJ3I,EAAAA,eAAKyI,EAALQ,kCA1DAjJ,EAFAA,WAAAA,EAAAA,qBAMDA,EAAAA,iBAAAA,EAAAA,+DAvZJA,EAAAqI,sBAAAnF,EAAAoF,SA0ZIE,EAAAA,OAAAA,4BACCxI,EAAAA,mBA+DFA,EAAAkJ,8BAOCrB,IAAA,kBACC/H,MAAAA,WACA,IAAAE,EAAA0D,KACD8E,KAAAA,KAAAA,mEA3dyCxI,EAAAA,KAAAA,iBAAA4I,qBA8Z1C5I,KAAAA,KAAAA,QACAmJ,KAAA,SA/Z0Cf,GAgazCS,EAAAA,KAAAA,GAEAvB,EAAAA,UAAKpE,IAHyClD,EAAA0H,sGAwE7C1H,WAAI,gCAEJwI,WAnEH,WAoEExI,EAvFCA,mBAAAA,GAnZwCA,EAAAkJ,+FAT7ClJ,EAAA2I,OAAA,MAAAH,WAAA,WA6fGxI,EAAAyI,mBApECI,EAAAA,mBACA1B,WA1bJU,IAAA,OAAAC,MAAA,SAAAxF,UAicoC2G,EAAtBD,WACThJ,QAAAA,IAAAA,sDAlcL,IAAAoJ,EAAA,EAAAC,UAAA1F,aAAA2F,QAAA,EAAAtJ,EAAA0D,YA4cI8E,KAAAA,oBAAYe,GA+Eb7F,KAAA6F,OAAAC,YAAA,WA5EExJ,EAAAyJ,sCAqFF5B,IAAA,oCA3hB0C,OAAA6B,cAAAA,KAAAH,QAAA7F,OAid1C,CAmFAmE,IAAA,oBAjFCgB,MAAAA,SAAAA,GA6FA,4GAzjBJnF,KAAA6F,OAAA,KAAA7F,KAAA6D,UAAA,EAieIoC,6BACC7J,0FAleLsD,EAAAwG,EAAAC,OAukBGD,EAAAE,cAjFD,CAAAjC,IAAA,0CA8FEkC,OADDC,EAAAA,yBAASzH,KAAAa,GACR2G,iCAvFDjK,MAAAmK,WACAjF,IAAAA,EADA7E,EAAA,6BAEC4B,EAAAA,EAAAA,2BACAsF,EAAA7F,GAAAA,OAAAA,KAAAA,MAAAA,KAAAA,WAAAA,KACD1B,EAAAA,IAAAoK,CACAH,MAAAxC,IAgGApH,EAAEoC,KAAAgF,OAIC4C,EA7TD,GAhSwCrK,EAAAsK,GAAAA,CAAAjK,OAAA6E,EAigBD0B,WAmG1CA,eAjGCpF,EAAAA,GAXA4I,KA8GD,WAjGElK,OADDqK,EAAAA,UAAAC,KAAAA,QAAAA,MAAcd,2EAMf,IAAAW,EAAAhD,EAAAnE,SAAAqE,OAuGiB,iFA7FjBvE,UAAAyH,oBAAAC,UAuGC,IAAAhJ,GACIkE,OACH,KA7nByC+E,EAAApD,UAAAF,MAAAnE,EAAAqE,UAAA9E,WA0hB1CmE,EAwGAhB,OAjHAV,EAUA0F,SA/REvK,EAjBI,oBAAAwK,MAAA,WA5KNnK,IA+LCkG,EAAAA,EAAAA,MACAnF,EAAAvB,EAAAiB,KAAA,qDAjLHd,EAAA,6BAAAoC,KAAAqI,GAAAC,SAAAjJ,QAAAC,OAAAiJ,SAAAvJ,WAAAA,IAAAA,EAqLCwJ,EAAAA,MArLD5K,EAsLC0G,KAAAA,UAAU7G,EAAAsC,KAAVuE,YACC1G,EAAA,cAvLF6K,WAwLE7K,UAAE,SAAA8K,GAEAC,EAAAA,cAAApE,IAAA,CACA5G,IAAAA,EAAAA,MAAWC,GAAXsB,KADAqB,EACoB8H,MADpB,OAsRF9K,EAAAA,iBAAAqL,WA2GChL,EAAAoF,GAzGDzD,GAAA,QAAA,sBAAA,SAAAgB,GAfAA,EAgBChB,iBACAJ,EAAAA,EAAAA,MAAA6I,KAAAA,iBAAAa,YAAA,UACDtJ,GAAA,QAAAuJ,aAAA,qCA8GCA,EAAOxB,EAAP,yBAEAtH,OAAAwC,OAAAI,QAAA,WAAAmG,EAAA5I,KAAA,MAAAiB,oBACA5D,EAAAA,YAAYI,EAAA,kBAAoB2B,GAAA,QAExB,sBAAoB,SAAAJ,GAtpBaA,EAAA6I,iBAAAgB,QAAAvI,EAAAqC,KAAAmG,eA6iB1C1L,EAAA2L,SAAI7B,KAAUzJ,EAAAuD,MAAAzC,KAAA,UAGba,GA/BD,QAgCC8H,0BAAAA,SAAAA,GAhCDlI,EAiCC6I,iBA+GA7I,IAAAA,EAAM6I,EAAAA,+BAANlE,MA7GDgF,EAAAlL,EAAA,8DAoHCuL,kBAAIC,IACJxC,KAAIyC,SAAAA,GACJxD,EAAIyD,SA1qBqCR,EAAAS,0BA8jB1C/J,QAAAgK,IAAA,uBAoHEjK,GAAA,SAED,yBAAA,SAAAJ,iEAprByCsK,IA0kB1ChC,EAAAA,8DAHA6B,EACItL,EAAAA,MADJ0L,QACU,MAqHTvJ,KAAA,sGAhHDwJ,KAAAA,IAAA,IAAAP,EAAAQ,QAAA,aACAC,EAAAJ,kBA9kB0C7L,EAAA,mBAAA,CAAA,QAAA,gBAAA,aAAA,iBAAA,yBAAA,uBAusBtCkM,SAAAV,KACDS,EA3HHF,YAKDlH,EAAAA,SAMA6G,EAAMV,YAAF9F,YA2HW,oBAlMd+G,GAkMoC,cAAAA,GACnCP,EAvHE1B,KAAAA,SAuHFjF,GAAA8G,IAtHEM,EAAAA,MAAgBC,sCA0HlBT,EAAavJ,KAAAyJ,GAxHfQ,EAAKpC,KAAAA,UAAAA,KAAgBN,GACpB3J,EAAEuC,KAAA,UAAFvC,IAAA0J,EAAA1J,MAAAA,KAAAA,eA8HEqM,GAAAA,QAAI9J,wBAAyBoH,WAE7B,OAAAyB,QAAAvI,EAAAqC,KAAAoH,qBAhNF3K,GAmNCA,SAnND,SAAA,WA2FDgB,IAAA9C,EAAAuK,EAAAA,MA0HEpK,EAAEH,EAAM0M,MACR1H,EAAAA,EAAO2H,QAAAA,MAGP,YAAAC,GAxHF/F,EAAAA,KAAAA,oBAAAA,wCAEE,cAAA+F,GA0HCzM,EAAAA,KAAE,oBAxHHoF,OAGApF,EAAAA,KAAAA,kBAAAA,QAHF,WAAAyM,IArGCJ,EA4GC9J,KAAA,oBAAcoH,OAAd0C,EAAA9J,KAAA,kBAAAoH,UAIAhI,GAAA,QACD,UADC,SACDgB,GACChB,EAAAA,iBAGA3B,EAAAuD,MAAAgJ,QAAA,MAAA1B,SACClL,EACA6M,yBACD7K,GAAA,SACD,gBADC,8BAKA3B,EAAAuD,MAAAmJ,SAsHCzJ,EAAAA,qBAAkByG,OAAlB7D,KAA2B,gFAA3BjC,OAAAf,EAAAqC,KAAAuC,SAAA,WAhHD7H,GAAAA,SAAM,cAAC+I,SAAAA,EAAAA,GAAyB3I,EAAAuD,MAAAoJ,WAI9BzB,EAAAA,MAAAA,SACA7C,EAAAA,qBAAAqB,OAAA7D,KAAA,gFAAAjC,OAAAzB,GAAAA,EAAAyK,KAAA/J,EAAAqC,KAAA0H,KAAA/J,EAAAqC,KAAAuC,SAAA,WAED7F,GAAAA,SAAAA,aAFC,WALF,IAAAiL,EAAgC7M,EAAhCuD,MAAA2C,MAWDjD,EAAAjD,EAAA,gBAECuB,SAAAA,GAIA0B,EAAAA,OAAA0G,IAAA,QAAA,cAAAvH,KAAAS,EAAAqC,KAAA4H,eAgHEjI,EAAAA,KAAM,kBAAN,CA/GF6D,YArBAwC,EAAAA,MAsIC2B,OAAMA,IA/GP5J,KAAAA,SAAAgF,GACA,WAAAA,GAGAtF,EAAAyH,IAAAA,QAAA,WAAAhI,KAAAS,EAAAqC,KAAA6H,gBAiHA/M,WAAE,WA9GF4M,EAAIjD,QA8GJ,OAxGA1G,EAAI+J,OAAAA,IAAAA,QAAAA,OAAAA,KAA0BxB,EAAAA,KAAAA,gBAE7BK,KAAAA,SAAS7L,GAAT6L,EACAnG,OADAmG,EAiHAzF,UAAYzD,oEAvGZ+I,EAAAA,iBACChG,EAAAA,eAAAO,QAdF,SAce,aAGZwF,GAAAA,SAAAA,YAAAA,SAAAA,MACAA,EAAAA,uEAQH9J,IAAAA,EAxFF3B,EAAAwF,MAAAA,MAyFEE,EAAA1F,EAAA,aACAJ,EAAAqN,EAAAA,iBA1FFR,EA4FCzM,EAF0BsM,uBAIzBY,EAAAA,KAAAA,oFACQrN,EAAAA,KAAAA,aAAAA,SALiByM,EAgHhB/J,KAAA,YAAa1B,SAAA,aAxGtB4F,EAAAA,UAAAA,GAEC4F,EAAAA,SAAI9J,KAAKF,YAVVxB,SAAA,aAWCsE,EAAA5C,KAAA,gCAAAsD,KAAA,IAGAY,EAHMmE,eAGahI,GACnByJ,EAAAA,mBAAA/F,EAA6BqD,EAA7BiB,EAAAuC,IAEAvN,EAAAA,KAAA+I,6BAAA,CA3GHD,KAAAA,MA8GE/G,KAAAA,CAHCyL,MAIChD,EAAAA,MACFpK,SAAAA,sBAKAA,EAAEmN,GAAFxH,EAwGGY,EAAAf,mBAAAL,EAAAO,EAAAC,KAtGH3F,KAAAA,EAAAqC,WAQArC,EAAA4C,eAAAuK,GACC5G,EAEDD,uBAAAF,EAAAwE,EAAAuC,gCACCnN,YAAE6C,EAAAuK,MAGFpN,SAAAmN,IAEDxL,KAAAA,SAAAA,GACAiJ,EAAcvI,GA9BbsD,EA8BDY,EAAAD,uBAAAF,EAAAT,GAIC,SAAAwH,IAEAvN,EAAAA,qBAAO+I,WAAP,YACCD,EAAAA,kCADD5H,KAAA,WAAA,YAA+BmC,EAAAA,qBAGvBoK,WAAA,YAHRrN,EAAAJ,gCAAAA,KAAAA,WAAAA,aASG,0BAFDuN,8DAIAG,KAAAA,EAAAA,cAGD3L,GAAA,SAAA,yBAAA,WACAsB,IACA4B,EAAAA,EAAAA,MACAjF,EAAA+I,KAAA,qBAAA,CACDD,YAAM1I,EAAAoN,MAANG,SACAtK,EAAAA,MADAA,OAEAoJ,EAAAxM,GAAAwN,QAAA,EAFA,MAOAT,EAAAA,GAAAA,GAAM,SAANA,sDAAAA,WADkCP,IAAAA,EAAnC3C,EAAAA,4BAKAnI,MAAAA,EAAAA,kCAAAA,OAAAA,MAAAA,EAAAA,uCAAAA,MAEA8K,EAAO3C,OAEP4D,EAAA3D,SAAAhI,GAAA,SAGCwD,aAAiB,WAHlB,IAAAtF,EAmGKG,EAAAuD,MAnGLkJ,EAMArG,EAAAA,MANAiG,EAqGCa,EAAAA,QAAa,MAGLhI,YAATuH,GA7FA/G,EAAAA,KAAAA,YAAAnD,OACA4C,EAAAA,KAAAA,YAAY5C,IAAZ,IACAiL,EAAAA,KAAAA,eAAA9D,SAIA8D,EAAAA,KAAAA,YAAI/G,oCAEH4F,EAAA9J,KAAA,eAFDV,IAEC,OAEC4K,GAAAA,SAAAA,8BAAAA,uCAECW,EAAAA,EAAAA,KAAOvK,0CADFgC,EAAApB,EAAAA,KAAAgK,YAFmCC,EAAAA,EAAAA,aAEnCxH,MAMNK,GAAAA,EAAAA,KAAAA,gBAAWf,eAAAA,EAAAA,QAAAA,YAAAA,EAAAA,OAAAA,EAAAA,SAAAA,EAAAA,EAAAA,KAAAA,gBAAAA,EAAAA,SACX,GAAcnD,IAAdmL,EAAElC,KAAAA,oBAAYjJ,OAAAA,CACdzC,EAAAA,KAAA,oBAAAiL,SA6FI4B,EAAAA,OAAM,sGA1FR7B,EAAAA,OAAAA,gLA2FQhH,OAAAf,EAAA8K,WAAA,gBA3FZT,GA2FYM,EAAAI,OAAA,8DAxFXC,IAAAA,EAAAA,EAGG7E,KAAAA,yBAEFzC,EAAAA,UAAAA,EAAWD,CA6FRoH,SAzGH,EAeAG,YAAAhM,EAAAA,KAAAA,gBACCkI,KAAA,SAAA+D,EAAAD,GACA7N,EAiBH6N,EAAApB,GAzCQ7M,EAAAqN,KAAA,wBAAA,CAqHNR,KAAA,MAnCFtK,KAtDGnC,CACAA,YAAEkG,EAAFlG,MACAwN,OAAAA,wBA2FDA,SAAAA,KAxFAxE,KAAAyD,SAAA9G,GAECkI,EADA7N,EAAAA,GAEDwN,EAAAjL,KAAA,YAAAsI,WACDS,KAAAzG,EAAAxC,mBAoGA,qBAAA0L,EAAAA,OAAA,IAAAP,EAAAjL,KAAA,oBAAAiB,SAxFFgK,EAADf,KACK,QAAA5B,SACHkD,EAAAA,OAAA,sGACM,YAHN3I,EAGKc,OACJoH,EAAAA,KAAAA,oBAAAA,UAJHU,GAAAA,SASK,sBATL,WAUE,IAAAvB,EAAAzM,EAAA,aAAAkG,MACAgH,EACCT,EAAAA,aA7GEpE,MApRJ0F,EAAA/N,EAAA,gBA2dAqF,EA59BHrF,EA49BmBoF","file":"woo-feed-admin.min.js","sourcesContent":["// noinspection JSUnresolvedletiable\r\n/**!\r\n * WooFeed Scripts\r\n * @version 3.3.6\r\n * @package WooFeed\r\n * @copyright 2020 WebAppick\r\n *\r\n */\r\n/* global ajaxurl, wpAjax, postboxes, pagenow, alert, deleteUserSetting, typenow, adminpage, thousandsSeparator, decimalPoint, isRtl */\r\n// noinspection JSUnresolvedVariable\r\n(function($, window, document, wpAjax, opts) {\r\n\t\"use strict\";\r\n\t/**\r\n\t * All of the code for your admin-facing JavaScript source\r\n\t * should reside in this file.\r\n\t *\r\n\t * Note: It has been assumed you will write jQuery code here, so the\r\n\t * $ function reference has been prepared for usage within the scope\r\n\t * of this function.\r\n\t *\r\n\t * This enables you to define handlers, for when the DOM is ready:\r\n\t */\r\n\r\n\t/**\r\n\t * disable element utility\r\n\t *\r\n\t * @since 3.1.9\r\n\t *\r\n\t * @param {*} status\r\n\t * @returns {jQuery|HTMLElement}\r\n\t */\r\n\t$.fn.disabled = function(status) {\r\n\t\t$(this).each(function() {\r\n\t\t\tlet self = $(this),\r\n\t\t\t\tprop = 'disabled';\r\n\r\n\t\t\tif (typeof self.prop(prop) !== 'undefined') {\r\n\t\t\t\tself.prop(prop, status === void 0 || status === true);\r\n\t\t\t} else {\r\n\t\t\t\t!0 === status ? self.addClass(prop) : self.removeClass(prop);\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn self; // method chaining\r\n\t};\r\n\t\r\n\t/**\r\n\t * Check if a HTMLElement or jQuery is disabled\r\n\t */\r\n\t$.fn.isDisabled = function() {\r\n\t\tlet self = $(this),\r\n\t\t\tprop = 'disabled';\r\n\t\treturn typeof self.prop(prop) !== 'undefined' ? self.prop(prop) : self.hasClass(prop);\r\n\t};\r\n\t\r\n\t/**\r\n\t * Clear Tooltip for clip board js\r\n\t * @param {Object} event\r\n\t */\r\n\tconst clearTooltip = (event) => {\r\n\t\t$(event.currentTarget).removeClass( (index, className) => (className.match(/\\btooltipped-\\S+/g) || []).join(' ') ).removeClass('tooltipped').removeAttr('aria-label');\r\n\t};\r\n\r\n\tconst showTooltip = (elem, msg) => {\r\n\t\t$(elem).addClass('tooltipped tooltipped-s').attr('aria-label', msg);\r\n\t};\r\n\r\n\tconst fallbackMessage = (action) =>{\r\n\t\tlet actionMsg,\r\n\t\t\tactionKey = action === 'cut' ? 'X' : 'C';\r\n\r\n\t\tif (/iPhone|iPad/i.test(navigator.userAgent)) {\r\n\t\t\tactionMsg = 'No support :(';\r\n\t\t} else if (/Mac/i.test(navigator.userAgent)) {\r\n\t\t\tactionMsg = 'Press ⌘-' + actionKey + ' to ' + action;\r\n\t\t} else {\r\n\t\t\tactionMsg = 'Press Ctrl-' + actionKey + ' to ' + action;\r\n\t\t}\r\n\r\n\t\treturn actionMsg;\r\n\t};\r\n\t\r\n\t/**\r\n\t * Alias of jQuery.extend()\r\n\t * @param {Object} _default\r\n\t * @param {Object} _args\r\n\t */\r\n\tconst extend = (_default, _args) => $.extend(true, {}, _default, _args);\r\n\t\r\n\tlet $copyBtn,\r\n\t\tclipboard,\r\n\t\tgoogleCategories,\r\n\t\thelper = {\r\n\t\t\tin_array: (needle, haystack) => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\treturn haystack.indexOf(needle) !== -1;\r\n\t\t\t\t} catch (e) {\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tselectize_render_item: (data, escape) => `<div class=\"item wapk-selectize-item\">${ escape(data.text)}</div>`, // phpcs:ignore WordPressVIPMinimum.JS.StringConcat.Found,\r\n\t\t\tajax_fail: e => {\r\n\t\t\t\tconsole.warn(e);\r\n\t\t\t\talert(e.hasOwnProperty('statusText') && e.hasOwnProperty('status') ? opts.ajax.error + '\\n' + e.statusText + ' (' + e.status + ')' : e);\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * Initialize Sortable\r\n\t\t\t * @param {jQuery|HTMLElement} el\r\n\t\t\t * @param {object} config\r\n\t\t\t * @param {int|boolean} column\r\n\t\t\t * @param {function} onDrop\r\n\t\t\t * @return {jQuery|HTMLElement}\r\n\t\t\t */\r\n\t\t\tsortable: (el, config, column, onDrop) => {\r\n\t\t\t\treturn (el || $('.sorted_table')).each(function() {\r\n\t\t\t\t\tlet self = $(this),\r\n\t\t\t\t\t\tcolumn_count = self.find('tbody > tr:eq(0) > td').length || column || 9;\r\n\t\t\t\t\tself.wf_sortable(extend({\r\n\t\t\t\t\t\tcontainerSelector: 'table',\r\n\t\t\t\t\t\titemPath: '> tbody',\r\n\t\t\t\t\t\titemSelector: 'tr',\r\n\t\t\t\t\t\thandle: 'i.wf_sortedtable',\r\n\t\t\t\t\t\tplaceholder: `<tr class=\"placeholder\"><td colspan=\"${column_count}\"></td></tr>`,\r\n\t\t\t\t\t\tonDrop: ($item, container, _super, event) => {\r\n\t\t\t\t\t\t\t$item.removeClass(container.group.options.draggedClass).removeAttr('style');\r\n\t\t\t\t\t\t\t$(\"body\").removeClass(container.group.options.bodyClass);\r\n\t\t\t\t\t\t\tif ( onDrop && 'function' === typeof( onDrop ) ) {\r\n\t\t\t\t\t\t\t\tonDrop( $item, container, _super, event );\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t}, config));\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tselectize: (el, config) => {\r\n\t\t\t\treturn (el || $('select.selectize')).not('.selectized').each(function() {\r\n\t\t\t\t\tlet self = $(this);\r\n\t\t\t\t\tself.selectize(extend({\r\n\t\t\t\t\t\tcreate: self.data('create') || false,\r\n\t\t\t\t\t\tplugins: self.data('plugins') ? self.data('plugins').split(',').map(function(s) {\r\n\t\t\t\t\t\t\treturn s.trim();\r\n\t\t\t\t\t\t}) : [],\r\n\t\t\t\t\t\t//['remove_button'],\r\n\t\t\t\t\t\trender: {\r\n\t\t\t\t\t\t\titem: helper.selectize_render_item\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, config));\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tfancySelect: (el, config) => {\r\n\t\t\t\treturn (el || $('select.fancySelect')).not('.FancySelectInit').each(function() {\r\n\t\t\t\t\tlet self = $(this);\r\n\t\t\t\t\tself.fancySelect(extend({\r\n\t\t\t\t\t\tmaxItemShow: 3\r\n\t\t\t\t\t}, config));\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\treindex_config_table: () => {\r\n\t\t\t\t$('#table-1').find('tbody tr').each( ( x, el ) => {\r\n\t\t\t\t\t$(el).find('[name]').each( ( x1, el ) => {\r\n\t\t\t\t\t\t$(el).attr('name', $(el).attr('name').replace(/(\\[\\d\\])/g, `[${x}]`));\r\n\t\t\t\t\t} );\r\n\t\t\t\t} );\r\n\t\t\t},\r\n\t\t\tcommon: () => {\r\n\t\t\t\thelper.sortable( $('.sorted_table'), {}, 9, helper.reindex_config_table );\r\n\t\t\t\thelper.selectize();\r\n\t\t\t\thelper.fancySelect($('.outputType'));\r\n\t\t\t}\r\n\t\t},\r\n\t\t// helper functions\r\n\t\tfeedEditor = {\r\n\t\t\t/**\r\n\t\t\t * The Editor Form Elem.\r\n\t\t\t * @type {jQuery|HTMLElement}\r\n\t\t\t */\r\n\t\t\tform: null,\r\n\r\n\t\t\t/**\r\n\t\t\t * Initialize The Feed Editor {Tabs...}\r\n\t\t\t * @returns {void}\r\n\t\t\t */\r\n\t\t\tinit: function () {\r\n\t\t\t\tlet self = this;\r\n\t\t\t\tself.form = $('.generateFeed');\r\n\t\t\t\tif (!self.form.length) return;\r\n\t\t\t\thelper.common();\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t$(document).trigger(new jQuery.Event('feedEditor.init', {\r\n\t\t\t\t\ttarget: this.form\r\n\t\t\t\t}));\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Render Merchant info ajax response and handle allowed feed type for selected merchant\r\n\t\t\t * @param {jQuery|HTMLElement} merchantInfo jQuery dom object\r\n\t\t\t * @param {jQuery|HTMLElement} feedType jQuery dom object\r\n\t\t\t * @param {Object} r ajax response object\r\n\t\t\t */\r\n\t\t\trenderMerchantInfo: function (merchantInfo, feedType, r) {\r\n\t\t\t\tfor (let k in r) {\r\n\t\t\t\t\tif (r.hasOwnProperty(k)) {\r\n\t\t\t\t\t\tmerchantInfo.find('.merchant-info-section.' + k + ' .data').html(r[k]); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html\r\n\r\n\t\t\t\t\t\tif ('feed_file_type' === k) {\r\n\t\t\t\t\t\t\t(function() {\r\n\t\t\t\t\t\t\t\tlet types = r[k].split(\",\").map(function(t) {\r\n\t\t\t\t\t\t\t\t\treturn t.trim().toLowerCase();\r\n\t\t\t\t\t\t\t\t}).filter(function(t) {\r\n\t\t\t\t\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\t\t\t\t\treturn t !== '' && t !== opts.na.toLowerCase();\r\n\t\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t\tif (types.length) {\r\n\t\t\t\t\t\t\t\t\tfeedType.find('option').removeAttr('selected').each(function() {\r\n\t\t\t\t\t\t\t\t\t\tlet opt = $(this);\r\n\t\t\t\t\t\t\t\t\t\topt.val() && !helper.in_array(opt.val(), types) ? opt.disabled(!0) : opt.disabled(!1);\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\tif (types.length === 1) feedType.find('option[value=\"' + types[0] + '\"]').attr('selected', 'selected');\r\n\t\t\t\t\t\t\t\t} else feedType.find('option').disabled(!1);\r\n\t\t\t\t\t\t\t})();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tmerchantInfo.find('.spinner').removeClass('is-active');\r\n\t\t\t\tfeedType.disabled(!1);\r\n\t\t\t\tfeedType.trigger('change');\r\n\t\t\t\tfeedType.parent().find('.spinner').removeClass('is-active');\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Render Feed Template Tabs and settings while creating new feed.\r\n\t\t\t * @param {jQuery|HTMLElement} feedForm feed from query dom object\r\n\t\t\t * @param {object} r merchant template ajax response object\r\n\t\t\t */\r\n\t\t\trenderMerchantTemplate: function (feedForm, r) {\r\n\t\t\t\tlet _loop = function _loop(k) {\r\n\t\t\t\t\tif (r.hasOwnProperty(k)) {\r\n\t\t\t\t\t\tif ('tabs' === k) {\r\n\t\t\t\t\t\t\t// noinspection JSUnresolvedFunction\r\n\t\t\t\t\t\t\tfeedForm.html(r[k]); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tlet contentSettings = $('[name=\"' + k + '\"]');\r\n\r\n\t\t\t\t\t\t\tif (contentSettings.length) {\r\n\t\t\t\t\t\t\t\tcontentSettings.each(function() {\r\n\t\t\t\t\t\t\t\t\tlet elem = $(this);\r\n\r\n\t\t\t\t\t\t\t\t\tif (elem.is('select')) {\r\n\t\t\t\t\t\t\t\t\t\telem.find('[value=\"' + r[k] + '\"]').prop('selected', true);\r\n\t\t\t\t\t\t\t\t\t} else if ((elem.is('[type=checkbox]') || elem.is('[type=radio]')) && elem.val() === r[k]) {\r\n\t\t\t\t\t\t\t\t\t\telem.prop('checked', true);\r\n\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\telem.val(r[k]); // type=text\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}).trigger('change');\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\r\n\t\t\t\tfor (let k in r) {\r\n\t\t\t\t\t_loop(k);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfeedEditor.init();\r\n\t\t\t}\r\n\t\t},\r\n\t\t// Feed Editor Table\r\n\t\tmerchantInfoCache = [],\r\n\t\tmerchantTemplateCache = [],\r\n\t\ttooltip = () => {\r\n\t\t\t// Tooltip only Text\r\n\t\t\t$('.wfmasterTooltip')\r\n\t\t\t\t.hover(function () {\r\n\t\t\t\t\t// Hover over code\r\n\t\t\t\t\tlet self = $(this), title = self.attr('wftitle');\r\n\t\t\t\t\tself.data('tipText', title).removeAttr('wftitle');\r\n\t\t\t\t\t$('<p class=\"wftooltip\"></p>').text(title).appendTo('body').fadeIn('slow');\r\n\t\t\t\t}, function () {\r\n\t\t\t\t\t// Hover out code\r\n\t\t\t\t\tlet self = $(this);\r\n\t\t\t\t\tself.attr('wftitle', self.data('tipText'));\r\n\t\t\t\t\t$('.wftooltip').remove();\r\n\t\t\t\t})\r\n\t\t\t\t.mousemove(function (e) {\r\n\t\t\t\t\t$('.wftooltip').css({\r\n\t\t\t\t\t\ttop: e.pageY + 10,\r\n\t\t\t\t\t\tleft: e.pageX + 20\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t},\r\n\t\tclip = () => {\r\n\t\t\t$copyBtn = $('.toClipboard');\r\n\t\t\tif (!ClipboardJS.isSupported() || /iPhone|iPad/i.test(navigator.userAgent)) {\r\n\t\t\t\t$copyBtn.find('img').hide(0);\r\n\t\t\t} else {\r\n\t\t\t\t$copyBtn.each(function() {\r\n\t\t\t\t\t$(this).on('mouseleave', clearTooltip).on('blur', clearTooltip);\r\n\t\t\t\t});\r\n\t\t\t\tclipboard = new ClipboardJS('.toClipboard');\r\n\t\t\t\tclipboard.on('error', function(event) {\r\n\t\t\t\t\tshowTooltip(event.trigger, fallbackMessage(event.action));\r\n\t\t\t\t}).on('success', function(event) {\r\n\t\t\t\t\tshowTooltip(event.trigger, 'Copied!');\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\r\n\t/**\r\n\t * Feed Generator Module\r\n\t */\r\n\tclass feedGenerator {\r\n\t\t\r\n\t\t/**\r\n\t\t * Constructor\r\n\t\t * @constructor\r\n\t\t */\r\n\t\tconstructor() {\r\n\t\t\tthis._feed = opts.generator.feed; // wf_config+xxxx\r\n\t\t\tthis._limit = opts.generator.limit;\r\n\t\t\tthis._progress = 0;\r\n\t\t\tthis._timer = null;\r\n\t\t\tthis._color = false;\r\n\t\t\t// batch info\r\n\t\t\tthis._total_batch = 0;\r\n\t\t\tthis._current_batch = 0;\r\n\t\t\tthis._product_ids = [];\r\n\t\t\tthis._progress_per_batch = 0;\r\n\t\t\tthis._refresh = true;\r\n\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\tthis._regenerate = opts.generator.regenerate;\r\n\t\t\twindow.isRegenerating = false;\r\n\t\t\tthis._all_btn = $('.wpf_regenerate');\r\n\t\t\tthis._current_btn = $(`#${this._feed.replace( 'wf_config', 'wf_feed_' )}`);\r\n\t\t\tthis._current_btn_label = '';\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Init Hooks (Event)\r\n\t\t * @return {feedGenerator}\r\n\t\t */\r\n\t\tinit() {\r\n\t\t\tlet self = this;\r\n\t\t\tif ( '' !== this._feed && this._regenerate && false === window.isRegenerating ) {\r\n\t\t\t\tthis.generate();\r\n\t\t\t}\r\n\t\t\t$(document).on('click', '.wpf_regenerate', function(event) {\r\n\t\t\t\tevent.preventDefault();\r\n\t\t\t\tself._current_btn = $( this );\r\n\t\t\t\tif( self._current_btn.hasClass('disabled') || window.isRegenerating === true ) return;\r\n\t\t\t\tself._feed = self._current_btn.attr('id').replace( 'wf_feed_', 'wf_config' );\r\n\t\t\t\tif( '' !== self._feed ) {\r\n\t\t\t\t\tself.generate();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t_block_button() {\r\n\t\t\tif ( this._all_btn.length ) {\r\n\t\t\t\tthis._all_btn.addClass('disabled');\r\n\t\t\t}\r\n\t\t\tif ( this._current_btn.length ) {\r\n\t\t\t\tthis._current_btn.find('span').addClass('wpf_spin reverse_spin');\r\n\t\t\t\tthis._current_btn_label = this._current_btn.attr('title');\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\tthis._current_btn.attr( 'aria-label', opts.regenerate ).attr( 'title', opts.regenerate );\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t_unblock_button() {\r\n\t\t\tif ( this._all_btn.length ) {\r\n\t\t\t\tthis._all_btn.removeClass('disabled');\r\n\t\t\t}\r\n\t\t\tif ( this._current_btn.length ) {\r\n\t\t\t\tthis._current_btn.find('span').removeClass('wpf_spin');\r\n\t\t\t\tthis._current_btn.find('span').removeClass('reverse_spin');\r\n\t\t\t\tthis._current_btn.attr( 'aria-label', this._current_btn_label ).attr( 'title', this._current_btn_label );\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Generate Feed\r\n\t\t * @return void\r\n\t\t */\r\n\t\tgenerate() {\r\n\t\t\tlet self = this;\r\n\t\t\twindow.isRegenerating = true;\r\n\t\t\tthis._block_button();\r\n\t\t\tthis._resetProgressBar();\r\n\t\t\tthis._progressBarActive();\r\n\t\t\tthis._log( 'Counting Total Products' );\r\n\t\t\tthis._updateProgressStatus( 'Fetching products.' );\r\n\t\t\tthis._get_product_ids().then( response => {\r\n\t\t\t\tthis._progress = 10;\r\n\t\t\t\tself._log( {response} );\r\n\t\t\t\tif(response.success) {\r\n\t\t\t\t\tself._log( `Total ${response.total} Products found.` );\r\n\t\t\t\t\tself._product_ids = response.product;\r\n\t\t\t\t\tself._total_batch = this._product_ids.length;\r\n\t\t\t\t\tself._current_batch = 0;\r\n\t\t\t\t\tself._progress_per_batch = ( 90 - this._progress ) / this._total_batch;\r\n\t\t\t\t\tself._process_batch();\r\n\t\t\t\t\tself._updateProgressStatus( 'Processing Products...' );\r\n\t\t\t\t} else {\r\n\t\t\t\t\tself._updateProgressStatus( response.data.message );\r\n\t\t\t\t}\r\n\t\t\t}).fail( error => {\r\n\t\t\t\tself._log( error );\r\n\t\t\t\tself._updateProgressStatus( error.message );\r\n\t\t\t\tself._color = 'red';\r\n\t\t\t\tsetTimeout( function(){\r\n\t\t\t\t\tself._stopProgressBar();\r\n\t\t\t\t\tself._unblock_button();\r\n\t\t\t\t}, 1500 );\r\n\t\t\t} );\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Get Product Ids\r\n\t\t * @returns {$.promise}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_get_product_ids() {\r\n\t\t\tthis._progress = 5;\r\n\t\t\treturn wpAjax.post( 'get_product_information', {\r\n\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\tfeed: this._feed,\r\n\t\t\t\tlimit: this._limit,\r\n\t\t\t} );\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Run the Batch\r\n\t\t * @private\r\n\t\t */\r\n\t\t_process_batch() {\r\n\t\t\tlet self = this;\r\n\t\t\tlet status = `Processing Batch ${this._current_batch+1} of ${this._total_batch}`;\r\n\t\t\tthis._updateProgressStatus( status );\r\n\t\t\tthis._log( status );\r\n\t\t\twpAjax.post( 'make_batch_feed', {\r\n\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\tfeed: this._feed,\r\n\t\t\t\tproducts: this._product_ids[this._current_batch],\r\n\t\t\t\tloop: this._current_batch,\r\n\t\t\t} ).then( response => {\r\n\t\t\t\tself._current_batch++;\r\n\t\t\t\tself._log( `Batch ${self._current_batch} Completed` );\r\n\t\t\t\tself._log( response );\r\n\t\t\t\tif ( self._current_batch < self._total_batch ) {\r\n\t\t\t\t\tself._process_batch();\r\n\t\t\t\t\tself._progress += self._progress_per_batch;\r\n\t\t\t\t}\r\n\t\t\t\tif ( self._current_batch === self._total_batch ) {\r\n\t\t\t\t\tself._save_feed_file();\r\n\t\t\t\t}\r\n\t\t\t} ).fail( error => {\r\n\t\t\t\tself._log( error );\r\n\t\t\t\tself._updateProgressStatus( error.message );\r\n\t\t\t\tself._color = 'red';\r\n\t\t\t\tsetTimeout( function(){\r\n\t\t\t\t\tself._stopProgressBar();\r\n\t\t\t\t\tself._unblock_button();\r\n\t\t\t\t}, 1500 );\r\n\t\t\t} );\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Save Feed Data from temp to feed file\r\n\t\t * @private\r\n\t\t */\r\n\t\t_save_feed_file() {\r\n\t\t\tlet self = this;\r\n\t\t\tthis._log( 'Saving feed file' );\r\n\t\t\tthis._updateProgressStatus( 'Saving feed file' );\r\n\t\t\twpAjax.post( 'save_feed_file', {\r\n\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\tfeed: this._feed,\r\n\t\t\t} ).then( response => {\r\n\t\t\t\tself._log( response );\r\n\t\t\t\tself._progress = 100;\r\n\t\t\t\tif ( self._refresh ) {\r\n\t\t\t\t\twindow.location.href = `${opts.pages.list.feed}&link=${response.url}&cat=${response.cat}`;\r\n\t\t\t\t}\r\n\t\t\t\tsetTimeout( function(){\r\n\t\t\t\t\tself._stopProgressBar();\r\n\t\t\t\t\tsetTimeout( function(){\r\n\t\t\t\t\t\tself._resetProgressBar( true );\r\n\t\t\t\t\t\tself._unblock_button();\r\n\t\t\t\t\t}, 3000 );\r\n\t\t\t\t}, 2500 );\r\n\t\t\t} ).fail( error => {\r\n\t\t\t\tself._log( error );\r\n\t\t\t\tself._updateProgressStatus( error.message );\r\n\t\t\t\tself._color = 'red';\r\n\t\t\t\tsetTimeout( function(){\r\n\t\t\t\t\tself._stopProgressBar();\r\n\t\t\t\t\tself._unblock_button();\r\n\t\t\t\t}, 1500 );\r\n\t\t\t} );\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Console log wrapper with debug settings.\r\n\t\t * @param data\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_log( data ) {\r\n\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\tif ( opts.wpf_debug ) {\r\n\t\t\t\tconsole.log( data );\r\n\t\t\t}\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Run the progressbar refresh interval\r\n\t\t * @param {int} refreshInterval\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_progressBarActive( refreshInterval = 0 ) {\r\n\t\t\tlet self = this;\r\n\t\t\tthis._toggleProgressBar( true );\r\n\t\t\tthis._timer = setInterval( function(){\r\n\t\t\t\tself._updateProgressBar();\r\n\t\t\t}, refreshInterval || 1000 );\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Stop Progressbar\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_stopProgressBar() {\r\n\t\t\tclearInterval( this._timer );\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Reset Progressbar\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_resetProgressBar( update ) {\r\n\t\t\tthis._toggleProgressBar( false );\r\n\t\t\tthis._updateProgressStatus( '' );\r\n\t\t\tclearInterval( this._timer );\r\n\t\t\tthis._color = false;\r\n\t\t\tthis._timer = null;\r\n\t\t\tthis._progress = 0;\r\n\t\t\tif ( update ) {\r\n\t\t\t\tthis._updateProgressBar();\r\n\t\t\t}\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Show hide the progress bar el\r\n\t\t * @param status\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_toggleProgressBar( status ) {\r\n\t\t\tlet table = $('#feed_progress_table');\r\n\t\t\tif ( status ) {\r\n\t\t\t\ttable.show();\r\n\t\t\t} else {\r\n\t\t\t\ttable.hide();\r\n\t\t\t}\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Update Progress bar text status\r\n\t\t * @param {string} status\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_updateProgressStatus( status ) {\r\n\t\t\t$( '.feed-progress-status' ).text( status );\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Update Progress Data\r\n\t\t * hooked with setInterval\r\n\t\t * @private\r\n\t\t */\r\n\t\t_updateProgressBar() {\r\n\t\t\tlet percentage = $( '.feed-progress-percentage' ),\r\n\t\t\t\tbar = $( '.feed-progress-bar-fill' ),\r\n\t\t\t\t_progress = `${Math.round( this._progress )}%`;\r\n\t\t\tbar.css( {\r\n\t\t\t\twidth: _progress,\r\n\t\t\t} );\r\n\t\t\tpercentage.text( _progress );\r\n\t\t}\r\n\t}\r\n\t// expose to the global scope\r\n\twindow.wf = {\r\n\t\thelper: helper,\r\n\t\tfeedEditor: feedEditor,\r\n\t\tgenerator: feedGenerator,\r\n\t};\r\n\t$(window).load(function() {\r\n\t\t// Template loading ui conflict\r\n\t\tif ($(location).attr(\"href\").match(/webappick.*feed/g) !== null) {\r\n\t\t\t$('#wpbody-content').addClass('woofeed-body-content');\r\n\t\t}\r\n\r\n\t\t// on edit page show item wrapper dropdown\r\n\t\tlet current_page_url_query = window.location.search;\r\n\t\tlet urlParams = new URLSearchParams(current_page_url_query);\r\n\t\tlet page_action = urlParams.get('action');\r\n\t\tif ( page_action === 'edit-feed' ) {\r\n\t\t\t$('.itemWrapper').show();\r\n\t\t}\r\n\r\n\t\t// ClipBoardJS\r\n\t\tclip();\r\n\t\t// postbox toggle\r\n\t\tpostboxes.add_postbox_toggles(pagenow);\r\n\t\t// initialize generator\r\n\t\tlet generator = new feedGenerator();\r\n\t\tgenerator.init();\r\n\t\t// noinspection JSUnresolvedVariable\r\n\t\tif( '' !== opts.generator.feed && opts.generator.regenerate ) {\r\n\t\t\r\n\t\t}\r\n\t\t// initialize editor\r\n\t\tfeedEditor.init();\r\n\t\thelper.common(); // Generate Feed Add Table Row\r\n\t\ttooltip();\r\n\t\t// validate feed editor\r\n\t\t$(\".generateFeed\").validate();\r\n\t\t// document events\r\n\t\t$(document)\r\n\t\t\t.on('click', '[data-toggle_slide]', function(e) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\t$($(this).data('toggle_slide')).slideToggle('fast');\r\n\t\t\t})\r\n\t\t\t// XML Feed Wrapper\r\n\t\t\t.on('click', '#wf_newRow', function () {\r\n\t\t\t\tlet tbody = $('#table-1 tbody'),\r\n\t\t\t\t\ttemplate = $('#feed_config_template').text().trim().replace(/__idx__/g, tbody.find('tr').length);\r\n\t\t\t\ttbody.append(template);\r\n\t\t\t\thelper.fancySelect($('.outputType'));\r\n\t\t\t})\r\n\t\t\t// feed delete alert.\r\n\t\t\t.on('click', '.single-feed-delete', function (event) {\r\n\t\t\t\tevent.preventDefault();\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\tif (confirm(opts.form.del_confirm)) {\r\n\t\t\t\t\twindow.location.href = $(this).attr('val');\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t// clear cache data.\r\n\t\t\t.on('click', '.wf_clean_cache_wrapper', function(event) {\r\n\t\t\t\tevent.preventDefault();\r\n\t\t\t\tvar nonce = $('.woo-feed-clean-cache-nonce').val();\r\n\t\t\t\tvar loader = $('.woo-feed-cache-loader');\r\n\r\n\t\t\t\t//show loader\r\n\t\t\t\tloader.show();\r\n\r\n\t\t\t\t// passed cache nonce\r\n\t\t\t\twpAjax.post('clear_cache_data', {\r\n\t\t\t\t\t_ajax_clean_nonce: nonce\r\n\t\t\t\t}).then(function (response) {\r\n\t\t\t\t\tif( response.success ) {\r\n\t\t\t\t\t\tloader.hide(); //hide loader\r\n\t\t\t\t\t}\r\n\t\t\t\t}).fail(function (e) {\r\n\t\t\t\t\tconsole.log('something wrong');\r\n\t\t\t\t});\r\n\r\n\t\t\t})\r\n\t\t\t// feed value dropdown change.\r\n\t\t\t.on('change', '.wf_attr.wf_attributes', function(event) {\r\n\t\t\t\tevent.preventDefault();\r\n\r\n\t\t\t\t$('.fancy-picker-picked').trigger(\"click\"); // trigger fancy select box clicked\r\n\r\n\t\t\t\t// price attributes\r\n\t\t\t\tvar price_attributes = ['price', 'current_price', 'sale_price', 'price_with_tax', 'current_price_with_tax', 'sale_price_with_tax'];\r\n\t\t\t\t// current value\r\n\t\t\t\tvar current_attribute_value = $(this).val();\r\n\t\t\t\tvar outputSelect = $(this).parents('tr').find('.outputType');\r\n\t\t\t\tvar fancyOption = $(this).parents('tr').find('.fancy-picker-content .fancy-picker-option');\r\n\t\t\t\tvar fancyDataPicker = $(this).parents('tr').find('.fancy-picker-data span');\r\n\t\t\t\tvar selectIf, selectKey;\r\n\r\n\t\t\t\t// when select any custom taxonomy\r\n\t\t\t\tif( \"\" !== current_attribute_value && -1 !== current_attribute_value.indexOf('wf_taxo') ) {\r\n\t\t\t\t\tselectIf = 'for_custom_taxo';\r\n\t\t\t\t\tselectKey = \"parent_if_empty\";\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// when select any price attribute\r\n\t\t\t\tif( price_attributes.includes(current_attribute_value) ) {\r\n\t\t\t\t\tselectIf = 'for_price';\r\n\t\t\t\t\tselectKey = \"Price\";\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// remove selected class from old selected option\r\n\t\t\t\tfancyOption.removeClass('selected');\r\n\r\n\t\t\t\t// when value dropdown is selected as price or any custom taxonomy\r\n\t\t\t\tif( selectIf === 'for_custom_taxo' || selectIf === 'for_price' ) {\r\n\r\n\t\t\t\t\t// update \"Option Type\" when select key matches\r\n\t\t\t\t\tfancyOption.each(function(item) {\r\n\t\t\t\t\t\tif( selectKey === $(this).text() ) {\r\n\t\t\t\t\t\t\t$(this).addClass('selected');\r\n\t\t\t\t\t\t\tfancyDataPicker.text(selectKey);\r\n\t\t\t\t\t\t\toutputSelect.find(\"option\").text(selectKey);\r\n\t\t\t\t\t\t\toutputSelect.find(\"option\").val( $(this).data('value') );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t}\r\n\r\n\t\t\t})\r\n\t\t\t// bulk delete alert.\r\n\t\t\t.on('click', '#doaction, #doaction2', function () {\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\treturn confirm(opts.form.del_confirm_multi);\r\n\t\t\t})\r\n\t\t\t// Generate Feed Table Row Delete\r\n\t\t\t.on('change', '.dType', function () {\r\n\t\t\t\tlet self = $(this),\r\n\t\t\t\t\ttype = self.val(),\r\n\t\t\t\t\trow = self.closest('tr');\r\n\t\t\t\t\r\n\t\t\t\tif (type === 'pattern') {\r\n\t\t\t\t\trow.find('.value_attribute').hide();\r\n\t\t\t\t\trow.find('.value_pattern').show();\r\n\t\t\t\t} else if (type === 'attribute') {\r\n\t\t\t\t\trow.find('.value_attribute').show();\r\n\t\t\t\t\trow.find('.value_pattern').hide();\r\n\t\t\t\t} else if (type === 'remove') {\r\n\t\t\t\t\trow.find('.value_attribute').hide();\r\n\t\t\t\t\trow.find('.value_pattern').hide();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t// Generate Feed Form Submit\r\n\t\t\t.on('click', '.delRow', function (e) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\t$(this).closest('tr').remove();\r\n\t\t\t\thelper.reindex_config_table();\r\n\t\t\t})\r\n\t\t\t.on('submit', '#generateFeed', function () {\r\n\t\t\t\t// Feed Generating form validation\r\n\t\t\t\t$(this).validate();\r\n\t\t\t\t\r\n\t\t\t\tif ($(this).valid()) {\r\n\t\t\t\t\t$(\".makeFeedResponse\")\r\n\t\t\t\t\t\t.show()\r\n\t\t\t\t\t\t.html(`<b style=\"color: darkblue;\"><i class=\"dashicons dashicons-sos wpf_spin\"></i> ${opts.form.generate}</b>`); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t// Generate Update Feed Form Submit\r\n\t\t\t.on('submit', '#updatefeed', function (e, data) {\r\n\t\t\t\t// Feed Generating form validation\r\n\t\t\t\t$(this).validate();\r\n\t\t\t\t\r\n\t\t\t\tif ($(this).valid()) {\r\n\t\t\t\t\t$(\".makeFeedResponse\")\r\n\t\t\t\t\t\t.show()\r\n\t\t\t\t\t\t.html(`<b style=\"color: darkblue;\"><i class=\"dashicons dashicons-sos wpf_spin\"></i> ${data && data.save ? opts.form.save : opts.form.generate}</b>`); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.on('change', '.ftporsftp', function () {\r\n\t\t\t\tlet server = $(this).val(),\r\n\t\t\t\t\tstatus = $('.ssh2_status');\r\n\t\t\t\t\r\n\t\t\t\tif (server === 'sftp') {\r\n\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\tstatus.show().css('color', 'dodgerblue').text(opts.form.sftp_checking);\r\n\t\t\t\t\twpAjax.post('get_ssh2_status', {\r\n\t\t\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\t\t\tserver: server\r\n\t\t\t\t\t}).then(function (response) {\r\n\t\t\t\t\t\tif (response === 'exists') {\r\n\t\t\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\t\t\tstatus.css('color', '#2CC185').text(opts.form.sftp_available);\r\n\t\t\t\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\t\t\t\tstatus.hide();\r\n\t\t\t\t\t\t\t}, 1500);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\t\t\tstatus.show().css('color', 'red').text(opts.form.sftp_warning);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}).fail(function (e) {\r\n\t\t\t\t\t\tstatus.hide();\r\n\t\t\t\t\t\thelper.ajax_fail(e);\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tstatus.hide();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.on('click', '[name=\"save_feed_config\"]', function (e) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\t$('#updatefeed').trigger('submit', {\r\n\t\t\t\t\tsave: true\r\n\t\t\t\t});\r\n\t\t\t})\r\n\t\t\t.on('change', '#provider', function (event) {\r\n\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\r\n\t\t\t\tif (!$(this).closest('.generateFeed').hasClass('add-new')) return; // only for new feed.\r\n\r\n\t\t\t\tlet merchant = $(this).val(),\r\n\t\t\t\t\tfeedType = $(\"#feedType\"),\r\n\t\t\t\t\tfeedForm = $(\"#providerPage\"),\r\n\t\t\t\t\tmerchantInfo = $('#feed_merchant_info'); // set loading..\r\n\t\t\t\t\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\tfeedForm.html('<h3><span style=\"float:none;margin: -3px 0 0;\" class=\"spinner is-active\"></span> ' + opts.form.loading_tmpl + '</h3>'); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\r\n\t\t\t\t\r\n\t\t\t\tmerchantInfo.find('.spinner').addClass('is-active');\r\n\t\t\t\tfeedType.disabled(!0); // disable dropdown\r\n\t\t\t\t\r\n\t\t\t\tfeedType.parent().find('.spinner').addClass('is-active');\r\n\t\t\t\tmerchantInfo.find('.merchant-info-section .data').html(''); // remove previous data\r\n\t\t\t\t// Get Merchant info for selected Provider/Merchant\r\n\r\n\r\n\t\t\t\t\r\n\t\t\t\tif (merchantInfoCache.hasOwnProperty(merchant)) {\r\n\t\t\t\t\tfeedEditor.renderMerchantInfo(merchantInfo, feedType, merchantInfoCache[merchant]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\twpAjax.send('woo_feed_get_merchant_info', {\r\n\t\t\t\t\t\ttype: 'GET',\r\n\t\t\t\t\t\tdata: {\r\n\t\t\t\t\t\t\tnonce: opts.nonce,\r\n\t\t\t\t\t\t\tprovider: merchant\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}).then(function (r) {\r\n\t\t\t\t\t\tmerchantInfoCache[merchant] = r;\r\n\t\t\t\t\t\tfeedEditor.renderMerchantInfo(merchantInfo, feedType, r);\r\n\t\t\t\t\t}).fail(helper.ajax_fail);\r\n\t\t\t\t} // Get FeedForm For Selected Provider/Merchant\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\tif (merchantTemplateCache.hasOwnProperty(merchant)) {\r\n\t\t\t\t\tfeedEditor.renderMerchantTemplate(feedForm, merchantTemplateCache[merchant]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\twpAjax.post('get_feed_merchant', {\r\n\t\t\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\t\t\tmerchant: merchant\r\n\t\t\t\t\t}).then(function (r) {\r\n\t\t\t\t\t\tmerchantTemplateCache[merchant] = r;\r\n\t\t\t\t\t\tfeedEditor.renderMerchantTemplate(feedForm, r);\r\n\r\n\t\t\t\t\t\t//when merchant is bing, change delimiter and enclosure\r\n\t\t\t\t\t\tif( 'bing' === merchant ) {\r\n\t\t\t\t\t\t\t//delimiter value\r\n\t\t\t\t\t\t\t$(\"#delimiter option\").removeAttr('selected');\r\n\t\t\t\t\t\t\t$(\"#delimiter option[value=\\\"tab\\\"]\").attr('selected', 'selected');\r\n\r\n\t\t\t\t\t\t\t//enclosure value\r\n\t\t\t\t\t\t\t$(\"#enclosure option\").removeAttr('selected');\r\n\t\t\t\t\t\t\t$(\"#enclosure option[value=\\\" \\\"]\").attr('selected', 'selected');\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t//reviewer options hide\r\n\t\t\t\t\t\tif( 'google_product_review' !== merchant) {\r\n\t\t\t\t\t\t\t$('.wf_attributes option[value=\"reviewer_name\"]').hide();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}).fail(helper.ajax_fail);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t// Feed Active and Inactive status change via ajax\r\n\t\t\t.on('change', '.woo_feed_status_input', function () {\r\n\t\t\t\tlet self = $(this);\r\n\t\t\t\twpAjax.post('update_feed_status', {\r\n\t\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\t\tfeedName: self.val(),\r\n\t\t\t\t\tstatus: self[0].checked ? 1 : 0\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t// event with trigger\r\n\t\t$(document)\r\n\t\t\t.on('change', '[name=\"is_outOfStock\"], [name=\"product_visibility\"]', function () {\r\n\t\t\t\tlet outOfStockVisibilityRow = $('.out-of-stock-visibility');\r\n\t\t\t\tif ($('[name=\"is_outOfStock\"]:checked').val() === 'n' && $('[name=\"product_visibility\"]:checked').val() === '1') {\r\n\t\t\t\t\toutOfStockVisibilityRow.show();\r\n\t\t\t\t} else {\r\n\t\t\t\t\toutOfStockVisibilityRow.hide();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.on('change', '.attr_type', function () {\r\n\t\t\t\t// Attribute type selection\r\n\t\t\t\tlet self = $(this),\r\n\t\t\t\t\ttype = self.val(),\r\n\t\t\t\t\trow = self.closest('tr');\r\n\t\t\t\t\r\n\t\t\t\tif (type === 'pattern') {\r\n\t\t\t\t\trow.find('.wf_attr').hide();\r\n\t\t\t\t\trow.find('.wf_attr').val('');\r\n\t\t\t\t\trow.find('.wf_default').show();\r\n\t\t\t\t} else {\r\n\t\t\t\t\trow.find('.wf_attr').show();\r\n\t\t\t\t\trow.find('.wf_default').hide();\r\n\t\t\t\t\trow.find('.wf_default').val('');\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.on('change', '.wf_mattributes, .attr_type', function () {\r\n\t\t\t\tlet row = $(this).closest('tr'),\r\n\t\t\t\t\tattribute = row.find('.wf_mattributes'),\r\n\t\t\t\t\ttype = row.find('.attr_type'),\r\n\t\t\t\t\tvalueColumn = row.find('td:eq(4)'),\r\n\t\t\t\t\tprovider = $('#provider').val();\r\n\t\t\t\t\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\tif (opts.form.google_category.hasOwnProperty(attribute.val()) && type.val() === 'pattern' && helper.in_array(provider, opts.form.google_category[attribute.val()])) {\r\n\t\t\t\t\tif (valueColumn.find('select.selectize').length === 0) {\r\n\t\t\t\t\t\tvalueColumn.find('input.wf_default').remove();\r\n\t\t\t\t\t\tvalueColumn.append('<span class=\"wf_default wf_attributes\"><select name=\"default[]\" class=\"selectize\"></select></span>');\r\n\t\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\t\tvalueColumn.append(`<span style=\"font-size:x-small;\"><a style=\"color: red\" href=\"http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category\" target=\"_blank\">${opts.learn_more}</a></span>`);\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tif (!googleCategories) {\r\n\t\t\t\t\t\t\tvalueColumn.append('<span class=\"spinner is-active\" style=\"margin: 0;\"></span>');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tlet select = valueColumn.find('.wf_attributes select');\r\n\t\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\t\thelper.selectize(select, {\r\n\t\t\t\t\t\t\tpreload: true,\r\n\t\t\t\t\t\t\tplaceholder: opts.form.select_category,\r\n\t\t\t\t\t\t\tload: function load(query, cb) {\r\n\t\t\t\t\t\t\t\tif (!googleCategories) {\r\n\t\t\t\t\t\t\t\t\twpAjax.send('get_google_categories', {\r\n\t\t\t\t\t\t\t\t\t\ttype: 'GET',\r\n\t\t\t\t\t\t\t\t\t\tdata: {\r\n\t\t\t\t\t\t\t\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\t\t\t\t\t\t\t\taction: \"get_google_categories\",\r\n\t\t\t\t\t\t\t\t\t\t\tprovider: provider\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t}).then(function (r) {\r\n\t\t\t\t\t\t\t\t\t\tgoogleCategories = r;\r\n\t\t\t\t\t\t\t\t\t\tcb(googleCategories);\r\n\t\t\t\t\t\t\t\t\t\tvalueColumn.find('.spinner').remove();\r\n\t\t\t\t\t\t\t\t\t}).fail(helper.ajax_fail);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tcb(googleCategories);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (attribute.val() !== 'current_category' && valueColumn.find('input.wf_default').length === 0) {\r\n\t\t\t\t\t\tvalueColumn.find('span').remove();\r\n\t\t\t\t\t\tvalueColumn.append('<input autocomplete=\"off\" class=\"wf_default wf_attributes\" type=\"text\" name=\"default[]\" value=\"\">');\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tif (type.val() !== 'pattern') {\r\n\t\t\t\t\t\t\tvalueColumn.find('input.wf_default').hide();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.on('change', '#feedType,#provider', function () {\r\n\t\t\t\tlet type = $('#feedType').val(),\r\n\t\t\t\t\tprovider = $('#provider').val(),\r\n\t\t\t\t\titemWrapper = $('.itemWrapper'),\r\n\t\t\t\t\twf_csv_txt = $('.wf_csvtxt');\r\n\t\t\t\t\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\tif (type !== '' && helper.in_array(provider, opts.form.item_wrapper_hidden)) {\r\n\t\t\t\t\titemWrapper.hide();\r\n\t\t\t\t} else if (type === 'xml') {\r\n\t\t\t\t\titemWrapper.show();\r\n\t\t\t\t\twf_csv_txt.hide();\r\n\t\t\t\t} else if (type === 'csv' || type === 'txt') {\r\n\t\t\t\t\titemWrapper.hide();\r\n\t\t\t\t\twf_csv_txt.show();\r\n\t\t\t\t} else {\r\n\t\t\t\t\titemWrapper.hide();\r\n\t\t\t\t\twf_csv_txt.hide();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.trigger('change');\r\n\t});\r\n})(jQuery, window, document, wp.ajax, wpf_ajax_obj);\r\n"]}
1
+ {"version":3,"sources":["woo-feed-admin.js"],"names":["_defineProperties","target","props","descriptor","i","_createClass","Constructor","protoProps","staticProps","prototype","window","wpAjax","self","prop","showTooltip","$","hasClass","currentTarget","clearTooltip","removeClass","actionMsg","className","match","index","action","removeAttr","actionKey","elem","addClass","attr","msg","extend","_default","_args","clip","$copyBtn","feedGenerator","left","event","trigger","test","navigator","on","console","googleCategories","in_array","needle","haystack","sortable","escape","data","text","ajax_fail","column_count","find","warn","wf_sortable","selectize_render_item","e","hasOwnProperty","opts","ajax","error","statusText","status","el","config","column","_onDrop","each","this","length","selectize","itemPath","create","concat","plugins","$item","container","containerSelector","group","options","bodyClass","itemSelector","handle","onDrop","fancySelect","maxItemShow","split","map","s","trim","helper","render","item","replace","x","form","merchantInfo","document","jQuery","k","init","renderMerchantInfo","opt","feedType","r","types","html","t","toLowerCase","na","disabled","val","_loop2","feedForm","contentSettings","renderMerchantTemplate","feedEditor","is","merchantInfoCache","tooltip","css","top","isRegenerating","_feed","_current_btn","feed","_limit","generator","limit","_progress","_product_ids","_progress_per_batch","_refresh","_all_btn","generate","_ajax_nonce","condition","value","_regenerate","parent","hide","_log","response","_updateProgressStatus","message","_color","preventDefault","key","regenerate","_block_button","_current_btn_label","_this","product","setTimeout","_stopProgressBar","_process_batch","_current_batch","_total_batch","post","_save_feed_file","then","fail","_resetProgressBar","_unblock_button","refreshInterval","arguments","undefined","clearInterval","_timer","_updateProgressBar","update","table","show","width","bar","wf","load","current_page_url_query","page_action","postboxes","add_postbox_toggles","pagenow","template","common","hover","title","appendTo","userAgent","merchantTemplateCache","remove","ClipboardJS","clipboard","slideToggle","loader","tbody","confirm","del_confirm","href","_ajax_clean_nonce","current_attribute_value","outputSelect","fancyOption","fancyDataPicker","log","selectKey","selectIf","parents","percentage","includes","closest","row","get","del_confirm_multi","reindex_config_table","save","server","nonce","sftp_available","sftp_warning","merchant","price_attributes","send","type","provider","checked","outOfStockVisibilityRow","valueColumn","append","select","query","attribute","google_category","learn_more","cb","itemWrapper"],"mappings":"yHAAA,SAAAA,kBAAAC,EAAAC,+BACA,IAAAC,EAAAD,EAAAE,kHADA,SAAAC,aAAAC,EAAAC,EAAAC,GAWC,OAFDD,GAAAP,kBAAAM,EAAAG,UAAAF,GARAC,GAAAE,kBAAAC,EAAAH,GAUCF,gFA0BGM,IAAAA,EAAAA,EAAAA,MACAC,EAAAD,gBAEA,IAAAA,EAAAA,KAAAC,GAHAD,EAAAA,KAAAA,OAAAA,IAAAA,IAAAA,IAAAA,4EAYF,IAAAE,EAAAA,EAAAA,MAEAC,EAAA,WACA,YAHA,IAAAH,EAAAC,KAAAA,GAAAD,EAAAC,KAAAA,GAAAD,EAAAI,SAAAH,IAUQI,SAWRC,EAXuBC,GAAaC,EAAAA,EAAAA,eAAuBC,YAAUC,SAAMC,EAAhBC,GAAvB,OAA+EL,EAAAA,MAAAA,sBAAAA,IAAAA,KAAAA,OADpHC,YAAA,cAAAK,WAAAC,cAKGC,SAAFZ,EAAAA,EAAAA,GACAA,EAEDY,GAAAC,SAAA,2BAAAC,KAAA,aAAAC,GAiCyB,SAAAC,EAAAC,EAAAC,GAAA,OAvBvBlB,EAAAgB,QAAA,EAAA,GAAAC,EAAAC,GAHAb,SA8MEc,IAEAtB,EAAAA,EAAAA,4GAxRLuB,EA4RMC,KAAAA,WAEAC,EAAAA,MAAAA,GAAAA,aAAAA,GAAAA,GAAAA,OAAAA,oEAvMLvB,EAAAwB,EAAAC,WA2MQD,EAAAd,oEA5NG,gBAATO,OAAAS,KAAAC,UAAAT,WAAAZ,WAAAA,EAAAA,OAAAA,EAEAA,cAAAA,EAAAA,OAAAA,MA0NMsB,GAAA,UAAA,SAAAJ,6BAxOPvB,IA0CE4B,EAfYC,KAAfC,SAAA,SAAAC,EAAAC,uFAQIC,MAAAA,yCAAwBF,OAAaG,EAAAC,EAAAC,MAAA,WAErCC,UACAC,SAAAC,GANM1C,QAAA2C,KAAAC,GAQRC,MAAAA,EAAAA,eAAAA,eARQC,EAAAC,eAAA,UAAAC,EAAAC,KAAAC,MAAA,KAAAJ,EAAAK,WAAA,KAAAL,EAAAM,OAAA,IAAAN,IAoCHV,SAAA,SAAAiB,EAAAC,EAAAC,EAAAC,GACD,OAAAH,GAAAlD,EAAA,kBAAAsD,KAAA,WArCI,IAAAzD,EAsCHsD,EAtCGI,MAuCNjB,EAnCAzC,EAAA0C,KAAA,yBAAAiB,QAAAJ,GAAA,EAnBFvD,EAAA4C,YAAAzB,EAAA,CAwDAyC,kBAAW,QACVC,SAAU,UArBXzB,aAAU,KACTpC,OAAA4D,mBACCE,YAAI9D,wCADW+D,OAAAtB,EAAA,gBACfuB,OAAAA,SACaC,EAAAC,EAAa5B,EAAAZ,GAC1B1B,EAAAA,YAAK4C,EAAL5C,MAAAA,QAAAA,cAAAA,WAAAA,SACCmE,EAAAA,QAJc5D,YAAA2D,EAAAE,MAAAC,QAAAC,WAMdC,GAAAA,mBAAAA,GACAC,EAAAA,EAAAA,EAAQ3B,EAAAA,KAaVS,OARGM,UAAAP,SAAKoB,EAAAA,GACJA,OAAAA,GAAAA,EAAAA,qBAAAA,IAAAA,eAAAA,KAAAA,WACAzE,IAAAA,EAAA0E,EAAAA,MACDC,EAAAA,UAAAA,EAAA,CADCb,OAXqBR,EAWrBhB,KAAA,YAAA,EAGH0B,QALEhE,EAAAsC,KAAA,WAAAtC,EAAAsC,KAAA,WAAAsC,MAAA,KAAAC,IAAA,SAAAC,GAjDJ,OAAAA,EAAAC,SAwDAnB,GAEEzD,OAAAuC,CACA1C,KAAAA,EAAAA,wBAFDsD,OAOE0B,YAAA5C,SAAAiB,EAAAC,GACA2B,OAAAA,GAAAA,EAAAA,uBAAAA,IAAAA,oBAAAA,KAAAA,WACCC,EAAAA,MADOR,YAAAvD,EAAA,CApEXX,YAAAA,GAwEE8C,gIAMCqB,EAAAA,GAAAA,KA5DK,OAAAxE,EAAAkD,GAAApC,KAAA,QAAAkE,QAAA,YAAA,IAAApB,OAAAqB,EAAA,yFAkENjF,EAACyD,YACAzD,EAAAA,YAAAA,EAAAA,+CAgBHkF,KALYA,KAAAlF,EAAA,iBAKZkF,KAEAtC,KAAAA,SAwBGuC,EAAAA,SAEAnF,EAAAoF,GAAI5D,QAAA,IAAA6D,OAAqBC,MAAG,kBAAA,CAtB/BC,OAAIhC,KAAA2B,UAiCGM,mBAAIC,SAAJN,EAAAO,EAAAC,GAtBPF,SAAAA,EAAAZ,GA4BI,IAtBJW,EAkBOG,EAAA/C,eA9CK0C,KA+CNH,EAAA5C,KAAIqD,0BAA6BrD,EAAK,UAAAsD,KAAAF,EAAmBC,IAE1D,mBAtCLL,KAiBAC,EAAAA,EAAAA,GAAAA,MAAAA,KAAAA,IAAAA,SAAAA,GA5BY,OAAAM,EAAAlB,OAAAmB,mCA6BM,MAAA,KAAAD,GAAAA,IAAAjD,EAAAmD,GAAAD,iBAEfZ,QAwBFO,EAASO,KAAT,UAAAvF,WAAA,YAAA4C,KAAA,WAtBEoC,IAAAD,EAAAjE,EAAA+B,MACCmC,EAAAQ,QAAC3D,EAAWT,SAAZ2D,EAAYrF,MAAAA,GAAAqF,EAAZQ,UAAA,GAAAR,EAAAQ,UAAA,mFAGEP,EAAAnD,KAAA,UAAA0D,UAAA,KAMAP,IAAAA,IAAAA,KAAAA,EACCS,EAAAR,GAGDS,EAAAA,KAAAP,YAAUrC,YAAAA,aACVkC,EAHCD,UAGD,GACDC,EAAAlE,QAAA6E,gEAKJlB,uBAAAA,SAAAA,EAAAA,GACAO,SAAAA,EAASO,GACTP,GAAAA,EAAAA,eAAAA,GACAA,GAAAA,SAAAA,EA6BIU,EAAAP,KAAAF,EAAAL,QA1BL,CA4BG,IAAAe,EAAArG,EAAA,UAAAsF,EAAA,gBAGFe,EAAiB/C,KAAA,WA1BlBgD,IAAAA,EAAAA,EAAAA,qBAGGC,EAAAA,KAAIhB,WAAJI,EAAAL,GAAA,MAAAxF,KAAA,YAAA,IACCc,EAAA4F,GAAA,oBAAA5F,EAAA4F,GAAA,kBAAA5F,EAAAsF,QAAAP,EAAAL,GArKJjF,EAAAA,KAAAA,WAAAA,GAwKIoG,EAAAA,IAAIJ,EAAAA,MAEJK,QAAA,WAMG7G,IAAAA,IAAAsC,KAAAwD,EACA/E,EAAAA,GAGA2F,EAAAhB,SAKLvF,EAvBD2G,GAmDEC,EAnDF,GA+DCvF,EAAA,WAKAtB,SAAAA,IACAJ,gBAJDkH,KAAAA,GApNHtD,KAAAuD,MAAAC,EAAAA,UAAAC,KAuPEzD,KAAA0D,OAAApE,EAAAqE,UAAAC,MAED5D,KAAA6D,UAAA,4EAhVF7D,KAAA8D,aAAA,GAAA9D,KAAA+D,oBAAA,EAAA/D,KAAAgE,UAAA,0CAsVG5H,EAAAkH,gBAAiBC,EA1BlBvD,KAAAiE,SAAAC,EAAAA,mBAAclE,KAAAwD,aAAA/G,EAAA,IAAA4D,OAAAL,KAAAuD,MAAA9B,QAAA,YAAA,yCA4Td,OAxRI0C,aAAAA,EAAa7E,CAAI,CA7BpB8E,IAAAA,OADAC,MAAA,WAGA/H,IAAAA,EAAAA,KAyBC,MAvBDA,KAAAA,KAAK0H,OAALhE,KAAAsE,cAAA,IAAAlI,EAAAkH,gCAEAhH,EAAAA,GAAAA,GAAKgI,QAAAA,kCAAL,SAAAtG,GACA5B,EAAAA,iBACAK,EAAAuD,MAAAuE,OAAA,uBAAAC,OACA,IAaAJ,EAAA3H,EAAAuD,MAAApB,KAAA,aAXAZ,IAAAoG,GAED9H,EAAAA,KAAAkH,0BAAA,CA8BEW,YAASX,EAAAA,MACTlH,UAAKiH,qBACLjH,EAAAmI,KAAIC,KACHpI,KAAAA,SAAK4H,GACL5H,EAAAmI,KAAAjF,GAzWwClD,EAAAqI,sBAAAnF,EAAAoF,SAT7CtI,EAAAuI,OAAA,UAuVIpI,EAAAoF,GAAAoC,GAAAA,QAAKC,kBAAL,SAAAlG,GACAA,EAAA8G,wCAmCDxI,EAAKkH,aAAKA,SAAV,cAAgC,IAAApH,EAAAkH,iBAlChC7G,EAAAA,MAAC+G,EAAAA,aAAcjG,KAASD,MAAAA,QAAA,WAAA,aACvBU,KAAAA,EAAAA,uBAIAgC,OA9VJ,CAAA+E,IAAA,gBAiWMX,MAAAA,WAFuCpE,KAAAiE,SAAAA,QAIvC3H,KAAAA,SAAAA,SAAAA,YAEAA,KAAAA,aAAAA,kIAsCF0D,KAAAwD,aAAAjG,KAAA,aAAA+B,EAAA0F,YAAAzH,KAAA,QAAA+B,EAAA0F,6EA3YJhF,KAAAiE,SAAApH,YAAA,YA6WIP,KAAAA,aAAAA,gEAEAA,KAAAA,aAAAA,KAAAA,QAAAA,YAAAA,gBAsCD0D,KAAAwD,aAAKyB,KAAL,aAAAjF,KAAAkF,oBAAA3H,KAAA,QAAAyC,KAAAkF,uBAlCC,gBACDb,MAAA,WACA,IAAAc,EAAAtB,KA5W0CvH,EAAAmI,KAAAC,EAAAA,gBAAAA,uBAAApI,KAAAA,oBA+W1CA,KAAAA,qBAECA,KAAAA,KAAAA,qHAEAA,EAAAA,UAAAqI,GACArI,EAAAA,KAAAA,CA0CCoI,SAAAA,eAtCFpI,EAAAA,KAAAqI,SAAAA,OAAAA,EAAAnF,MAAAoF,qBAxX0CtI,EAAAA,aAAAoI,EAAAU,QAAAC,EAAAA,aAAAF,EAAArB,aAAA7D,OAAA3D,EAAAA,eAAAgJ,wDA4XzChJ,EA5XyCiJ,iBAwa1CjJ,EAAAqI,sBAAA,gGAjbHrI,EAAAqI,sBAAAnF,EAAAoF,SAAAtI,EAAAuI,OAAA,MA4YGQ,WAAAxB,WAEDvH,EAAAgJ,mBA8CE7B,EAAAA,mBACAG,UA7bJ,CAAAmB,IAAA,mBAscGV,MAAA,kBAjDArE,KAAA6D,UAAKoB,oCAmDLd,YAAKQ,EAAAA,sBAlDLf,MAAA5D,KAAA0D,WA0DCpH,sBAtDDA,MAAAA,sBACCA,EAAAmI,oBAAApE,OAAAL,KAAAwF,eAAA,EAAA,QAAAnF,OAAAL,KAAAyF,cAwDAzF,KAAA2E,sBAAUa,gBAvDCnJ,EAAAqJ,KAAA,kBAAA,qBA2DXjC,KAAAzD,KAAK1D,MA1DLA,SAAAA,KAAAqJ,aAAA3F,KAAAwF,gBACClJ,KAAAA,KAAAA,iBA4DDsJ,KAAGC,SAAMnB,GA3DRpI,EAAAA,iBACAA,EAAAA,KAAAA,SAAAA,OAAAA,EAAAA,eAAAA,eACAA,EAAAA,KAAAA,GA8DAA,EAAAA,eAAKgJ,EAALG,kCAEAnJ,EA/DAA,WAAAA,EAAAA,qBAKAA,EAAAkJ,iBAAAlJ,EAAAmJ,+DAvaLnJ,EAAAqI,sBAAAnF,EAAAoF,SA0eGtI,EAAAuI,OAAW,4BA/DVvI,EAAAA,mBACA+I,EAAAA,8BAOFN,IAAA,kBAiEG3I,MAAAA,WACA,IAAAE,EAAA0D,KACDqF,KAAAA,KAAAA,mEA7eyC/I,EAAAA,KAAAA,iBAAAwJ,qBAAAxJ,KAAAA,KAAAA,QAAAsJ,KAAA,SA+exClB,GA/DFpI,EAAAmI,KAAAC,GAECP,EAAAA,UAAAA,IACAV,EAAAA,sGAGDnH,WAAA,gCAqEE+I,WA1EF,WA2EC/I,EAxFCA,mBAAAA,GApawCA,EAAAyJ,+FAT7CzJ,EAAAuI,OAAA,MAAAQ,WAAA,WA+gBG/I,EAAAgJ,mBAECjH,EAAAA,mBAvEDhC,WA1cH0I,IAAA,OAAAV,MAAA,SAAAzF,UAkdIU,EAAWoF,WA2EZrG,QAAI/B,IAAIsC,sDA7hBX,IAAAoH,EAAA,EAAAC,UAAAhG,aAAAiG,QAAA,EAAA5J,EAAA0D,YA2iBGmG,KAAAA,oBAAoBC,GA7EnBf,KAAAA,OAAAA,YAAAA,WAiFF/I,EAAA+J,sCAOCtB,IAAA,oCAEA,OADAoB,cAAAA,KAAeC,QACfpG,OA7EA,CAoFA+E,IAAA,oBAEDV,MAAA,SAAAiC,GA7EGlK,4GApfL4D,KAAAoG,OAAA,KAAApG,KAAA6D,UAAA,EAkfIvH,6BAuFD0D,0FAzkBHN,EAAA6G,EAAAC,OAylBGD,EAAA/B,cApFC,CAAAO,IAAA,0CAiGA0B,OADDC,EAAAA,yBAAS7H,KAAAa,GACR+G,iCA7lByCrK,MAAAuK,WAAArF,IAAAA,EAAA7E,EAAA,6BAsgB1CuG,EAAAA,EAAAA,2BACAW,EAAKrE,GAAAA,OAAAA,KAAAA,MAAAA,KAAAA,WAAAA,KAEJlD,EAAAA,IAAAwK,CAgGFH,MAAA5C,IA9FCpH,EAAAoC,KAAAgF,OAoGGgD,EA/UD,GAkVHzK,EAAK0K,GAAAA,CAlnBsCrK,OAAA6E,EAAA0B,WAmhBDA,eACzCpF,EAAAA,GAXCgJ,KA+GF,WAEA,OArGCG,EAAAA,UAAAC,KAAAA,QAAAA,MAAyBC,2EAIzB,IAAAJ,EAAApD,EAAAnE,SAAAqE,OA0GgB,iFAhGhBvE,UAAA0F,oBAAAmC,UA0GA,IAAAnJ,GACIkE,OACH,KACCkF,EAAQvD,UAAKF,MAAAnE,EAAAqE,UAAyB9E,WAhpBEmE,EAAAhB,OAAAV,EA4iB1C6F,SAhTE1K,EAjBI,oBAAA2K,MAAA,WA5KNtK,IA+LCkG,EAAAA,EAAAA,MACAnF,EAAAvB,EAAAiB,KAAA,qDAjLHd,EAAA,6BAAAoC,KAAAwI,GAAAC,SAAApJ,QAAAC,OAAAoJ,SAAA1J,WAAAA,IAAAA,EAqLC2J,EAAAA,MArLD/K,EAsLC0G,KAAAA,UAAU7G,EAAAsC,KAAVuE,YACC1G,EAAA,cAvLFgL,WAwLEhL,UAAE,SAAAiL,GAEAC,EAAAA,cAAAvE,IAAA,CACA5G,IAAAA,EAAAA,MAAWC,GAAXsB,KADAqB,EACoBiI,MADpB,OAsSFlB,EAAAA,iBAAAA,WAEA1J,EAAAoF,GACAzD,GAAA,QAAA,sBAAA,SAAAgB,GAjjB0CA,EA6pBzChB,iBA3GDJ,EAAAA,EAAAA,MAAA8G,KAAAA,iBAAA8C,YAAA,UAECxJ,GAAA,QAAAyJ,aAAA,qCAEDA,EAAArB,EAAA,yBA+GC3H,OAAAwC,OAAAI,QAAA,WAAAqG,EAAA9I,KAAA,MAAAiB,oBACA5D,EAAAA,YAAYI,EAAA,kBAAoB2B,GAAA,QAExB,sBAAoB,SAAAJ,GAC3BA,EAAA8G,iBAzqBwCiD,QAAAzI,EAAAqC,KAAAqG,eAAA5L,EAAAyJ,SAAAoC,KAAAxL,EAAAuD,MAAAzC,KAAA,UAgkB1Ca,GAhkB0C,QAikBzCmI,0BAAAA,SAAAA,GAjkByCvI,EAkkBzC8G,iBACAyB,IAAAA,EAAAA,EAAAA,+BAAAA,MAkHCsB,EAACpL,EAAA,8DAKFyL,kBAAIC,IACJvC,KAAIwC,SAAAA,GACJ1D,EAAI2D,SACJR,EAAIS,0BA7rBqCjK,QAAAkK,IAAA,uBAilB1CnK,GAAA,SAqHC,yBAAA,SAAAJ,iEAGCwK,IAhHFC,EAAAA,8DAzlB0CJ,EAAAxL,EAAAA,MAAA6L,QAAA,MAylB1C1J,KAAA,sGAICyH,KAAAA,IAAO5C,IAAAA,EAAAA,QAAAA,aADC4E,EAATD,kBAGAG,EAAAA,mBA0Gc,CAAZ,QAAA,gBAAA,aAAA,iBAAA,yBAAA,uBAzsBwCC,SAAAT,KAAAM,EA6lBzChC,YA+HC+B,EAAA,SApHFpM,EAAF2L,YAAepG,YAGX,oBA3mBwC8G,GA2mBZ,cAAAA,GAC9BJ,EA2HMtI,KAAO,SA3HbyB,GAAAgH,IA4HaK,EAAAA,MAAQhK,sCAxHtByJ,EAAazJ,KAAA2J,GACbM,EAAIhC,KAAAA,UAAAA,KAAwBiC,GA2HzBD,EAAS9J,KAAA,UAAT2D,IAA2B6D,EAA3BxG,MAAApB,KAAA,eAKAkK,GAAAA,QAAI9J,wBAAyBwF,WAE7B,OAAAuD,QAAAzI,EAAAqC,KAAAqH,qBAnvBwC5K,GA2nB3CA,SA3nB2C,SAAA,WA4nB3CuF,IAAAA,EAAAA,EAAAA,MA4HElH,EAAEH,EAAMuM,MA1HVvH,EAAAA,EAAI2H,QAAAA,MAIJjG,YAAAA,GACA1B,EAAAA,KAAAA,oBAAAA,wCACA6B,cAAAA,GA4HG1G,EAAAA,KAAE,oBA1HH+J,OAEDsC,EAAA9J,KAAA,kBAAAwF,QAGC/H,WAAAA,IA3oByCqM,EA6oB1C9J,KAAA,oBAAAwF,OALDsE,EAAA9J,KAAA,kBAAAwF,UASEsD,GAAAA,QAAAA,UAAAA,SAAaZ,GACb5F,EAAAA,iBAIAtD,EAAAA,MAAAA,QAAAA,MAAAA,SAyHAsD,EAvHA2H,yBACC7M,GAAAA,SAAM,gBAANA,8BAKD4B,EAAAA,MAAAA,SACA0B,EAAAA,qBAAc8G,OAAdlE,KAAc,gFAAdjC,OAAAf,EAAAqC,KAAAuC,SAAA,WAIA2D,GAAAA,SAAM,cAACrB,SAAAA,EAAAA,GAGPnK,EAAAA,MAAAA,WAAAqD,EAAAA,MAAAA,SAGC2F,EAAAA,qBAAIX,OAAAA,KAAmB,gFAAArE,OAAAzB,GAAAA,EAAAsK,KAAA5J,EAAAqC,KAAAuH,KAAA5J,EAAAqC,KAAAuC,SAAA,WAEtB9F,GAAA,SAAA,aAFD,WAHD,IAAA+K,EAAA9M,EAAA2D,MAAA2C,MAOCtE,EAAAA,EAAAA,gBAIF,SAAA8K,GAECnL,EAAAA,OAAM8G,IAAN9G,QAAAA,cAAAA,KAAAA,EAAAA,KAAAA,eAEAvB,EAAAA,KAAE,kBAAFA,CAEA0H,YAvBA7E,EAAA8J,MAyICD,OAAMA,IAjHPzJ,KAAAA,SAAAgF,GAmHC,WAAAA,GA/GDtF,EAAA0F,IAAAA,QAAA,WAAAjG,KAAAS,EAAAqC,KAAA0H,gBACA5M,WAAA,WACAyM,EAAIT,QADJ,OAyHA/I,EAAO8G,OAAMqC,IAAAA,QAAQ,OAAAhK,KAAiBnC,EAAAA,KAAS4M,gBA/G/CzD,KAAA0D,SAAIC,GAAJ9J,EACC+I,OADDnH,EAECkH,UAASpJ,oEAOVwC,EAAAA,iBAECO,EAAAA,eAAAO,QAhBA,SAgBA,aAGEjG,GAAAA,SAAE,YAAMa,SAAAA,MACRgL,EAAAA,uEAMFtF,IAAAA,EAAAvG,EAAAwF,MAAAA,MApFHE,EAuFC1F,EAAA,aACC2B,EAAGqL,EAAAA,iBACHC,EAAAjN,EADqC,uBAxFvCkN,EAAAA,KAAAA,oFAAAJ,EAAAA,KAAAA,aAAAA,SAwFuC3H,EAOpC8H,KAAAA,YAAOpM,SAAA,aADR4F,EAAAA,UAAAA,GAIAf,EAAA0D,SAAI6D,KAAS5K,YAVbV,SAAAA,aAWC0K,EAAAA,KAAAA,gCAAAA,KAAAA,IAGAA,EAAAA,eAASzJ,GACTyJ,EAAAA,mBAAA/F,EAAAF,EAAA2E,EAAA+B,IAEAT,EAAAA,KAAI9J,6BAAyBwF,CAC7BsE,KAAAA,MACAS,KAAAA,CAF6B/E,MAI/BoB,EAAAwD,MACChL,SAAAA,sBA9GF8E,EAmHKqG,GAAUnH,EACbY,EAAAf,mBAAAL,EAAAO,EAAAC,KACC3F,KAAAA,EAACqC,WAQHrC,EAAA4C,eAAAkK,GA7HDvG,EAgIEvG,uBAAAA,EAAAA,EAAAA,gCAuGE0H,YAAI7E,EAAA8J,MArGN3M,SAAA8M,IACC9M,KAAAA,SAAAA,GAGA+K,EAAA1I,GA7BAgK,EAzGH9F,EAAAD,uBAAAF,EAAAT,GA8OK,SAAUmH,IAjGZlN,EAAAA,qBAAAc,WAAA,YACAuC,EAAAA,kCADAnC,KAAA,WAAA,YAGC4G,EAAAA,qBAAWyF,WADmB,YAF/BnN,EAAA,gCAAAc,KAAA,WAAA,aASE8H,0BAAuBkE,8DAEtBM,KAAAA,EAAAA,cAGDnK,GAAAA,SAAAA,yBAAAA,WACA,IACDtB,EAAA3B,EAAAuD,MACAN,EAAAA,KAAAA,qBAAAA,CACA4B,YAAAA,EAAOxC,MAAPwC,SAhBDhF,EAAAA,MAgBCgF,OAEDwH,EArBDxM,GAqBOsN,QAAA,EAFLtI,MAOFlC,EAAAA,GAAE0F,GAAAA,SAAF1F,sDAAAA,WACA3C,IAAAA,EAAiBwB,EAAAA,4BAAkB,MAAA6K,EAAAA,kCAAAnG,OAAA,MAAAlG,EAAA,uCAAAkG,MAvKrCmG,EA2KKtC,OAGHqD,EAAArF,SAEApG,GAAA,SACC+D,aAAa,WADd,IAAA7F,EAAAG,EAAAuD,MAAA0J,EAKAI,EAAAA,MALAhB,EAqGCa,EAAAA,QAAa,MA7Fd/H,YAAAA,GACAO,EAAAA,KAAAA,YAASO,OAiGPoH,EAAAA,KAAAA,YAAY9K,IAAK,IA/FnBmD,EAAAA,KAAAA,eAAAA,SAEA2H,EAAAA,KAAAA,YAAAC,oCAIAjB,EAAA9J,KAAA,eAAIkE,IAAJ,OAAA9E,GAAA,SAAA,8BAAA,uCAIEsL,EAAAA,EAAM1K,KAAA8K,0CAELV,EAAAA,EAAAA,KAAWY,YACXL,EAAAA,EAAAA,aAFKhH,MAFmCiE,GAAAA,EAAAA,KAMvChB,gBAAKqE,eAAaC,EAAAvH,QAAA,YAAA+G,EAAA/G,OAAArB,EAAA/C,SAAAoL,EAAArK,EAAAqC,KAAAwI,gBAAAD,EAAAvH,SACpBO,GAAkBqG,IAAlBrG,EAAAA,KAAAA,oBAAkBqG,OAAAA,CAClBvG,EAAAA,KAAAA,oBAAWf,SARZyH,EAAAA,OASQpI,sGAgGF6C,EAAAA,OAAAA,gLA/FL9D,OAAAf,EAAA8K,WAAA,gBAGE5C,GAHFsC,EAAAC,OAAA,8DAOA5F,IAAAA,EAAAA,EAAAA,KAAAA,yBADD7C,EAAApB,UAGG0F,EAAK,CACP4B,SAbAtE,EAcAF,YAAAA,EAAAA,KAAAA,gBA+FG4D,KAAA,SAAAqD,EAAAI,GA5FH/L,EAgBF+L,EACDX,GAvCSrN,EACL+M,KAAAA,wBAAAA,CAuBA3M,KAAAA,MAtCHmF,KAuCGnF,CA8FF0H,YAAcxB,EAAVyG,MA3FF3M,OAAAA,wBACAA,SAAAA,KA8FDmJ,KAAI8D,SAAAtH,GA1FJiI,EA2FCP,EAAA1H,GA1FA3F,EAAAA,KAAAA,YAAAA,WACAoJ,KAAAvE,EAAAxC,mBAO+B,qBAAAwL,EAAAA,OAAA,IAAAR,EAAA9K,KAAA,oBAAAiB,SAhPpC6J,EAsPAJ,KAAA,QAAAjC,SA2FG6C,EAAAA,OAAA,sGAxFGT,YAHNH,EAGMG,OA2FHS,EAAAA,KAAY9F,oBAAZA,UAvFAqF,GAAAA,SAAAA,sBAAAA,WACA,IAAAH,EAAAjN,EAAA,aAAAkG,MACDgH,EAEAlN,EAAA,aA7GGkG,MAnRH2H,EAAA7N,EAAA,gBAiYAqF,EAn5BJrF,EAo5BYH","file":"woo-feed-admin.min.js","sourcesContent":["// noinspection JSUnresolvedletiable\r\n/**!\r\n * WooFeed Scripts\r\n * @version 3.3.6\r\n * @package WooFeed\r\n * @copyright 2020 WebAppick\r\n *\r\n */\r\n/* global ajaxurl, wpAjax, postboxes, pagenow, alert, deleteUserSetting, typenow, adminpage, thousandsSeparator, decimalPoint, isRtl */\r\n// noinspection JSUnresolvedVariable\r\n(function($, window, document, wpAjax, opts) {\r\n\t\"use strict\";\r\n\t/**\r\n\t * All of the code for your admin-facing JavaScript source\r\n\t * should reside in this file.\r\n\t *\r\n\t * Note: It has been assumed you will write jQuery code here, so the\r\n\t * $ function reference has been prepared for usage within the scope\r\n\t * of this function.\r\n\t *\r\n\t * This enables you to define handlers, for when the DOM is ready:\r\n\t */\r\n\r\n\t/**\r\n\t * disable element utility\r\n\t *\r\n\t * @since 3.1.9\r\n\t *\r\n\t * @param {*} status\r\n\t * @returns {jQuery|HTMLElement}\r\n\t */\r\n\t$.fn.disabled = function(status) {\r\n\t\t$(this).each(function() {\r\n\t\t\tlet self = $(this),\r\n\t\t\t\tprop = 'disabled';\r\n\r\n\t\t\tif (typeof self.prop(prop) !== 'undefined') {\r\n\t\t\t\tself.prop(prop, status === void 0 || status === true);\r\n\t\t\t} else {\r\n\t\t\t\t!0 === status ? self.addClass(prop) : self.removeClass(prop);\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn self; // method chaining\r\n\t};\r\n\t\r\n\t/**\r\n\t * Check if a HTMLElement or jQuery is disabled\r\n\t */\r\n\t$.fn.isDisabled = function() {\r\n\t\tlet self = $(this),\r\n\t\t\tprop = 'disabled';\r\n\t\treturn typeof self.prop(prop) !== 'undefined' ? self.prop(prop) : self.hasClass(prop);\r\n\t};\r\n\t\r\n\t/**\r\n\t * Clear Tooltip for clip board js\r\n\t * @param {Object} event\r\n\t */\r\n\tconst clearTooltip = (event) => {\r\n\t\t$(event.currentTarget).removeClass( (index, className) => (className.match(/\\btooltipped-\\S+/g) || []).join(' ') ).removeClass('tooltipped').removeAttr('aria-label');\r\n\t};\r\n\r\n\tconst showTooltip = (elem, msg) => {\r\n\t\t$(elem).addClass('tooltipped tooltipped-s').attr('aria-label', msg);\r\n\t};\r\n\r\n\tconst fallbackMessage = (action) =>{\r\n\t\tlet actionMsg,\r\n\t\t\tactionKey = action === 'cut' ? 'X' : 'C';\r\n\r\n\t\tif (/iPhone|iPad/i.test(navigator.userAgent)) {\r\n\t\t\tactionMsg = 'No support :(';\r\n\t\t} else if (/Mac/i.test(navigator.userAgent)) {\r\n\t\t\tactionMsg = 'Press ⌘-' + actionKey + ' to ' + action;\r\n\t\t} else {\r\n\t\t\tactionMsg = 'Press Ctrl-' + actionKey + ' to ' + action;\r\n\t\t}\r\n\r\n\t\treturn actionMsg;\r\n\t};\r\n\t\r\n\t/**\r\n\t * Alias of jQuery.extend()\r\n\t * @param {Object} _default\r\n\t * @param {Object} _args\r\n\t */\r\n\tconst extend = (_default, _args) => $.extend(true, {}, _default, _args);\r\n\t\r\n\tlet $copyBtn,\r\n\t\tclipboard,\r\n\t\tgoogleCategories,\r\n\t\thelper = {\r\n\t\t\tin_array: (needle, haystack) => {\r\n\t\t\t\ttry {\r\n\t\t\t\t\treturn haystack.indexOf(needle) !== -1;\r\n\t\t\t\t} catch (e) {\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tselectize_render_item: (data, escape) => `<div class=\"item wapk-selectize-item\">${ escape(data.text)}</div>`, // phpcs:ignore WordPressVIPMinimum.JS.StringConcat.Found,\r\n\t\t\tajax_fail: e => {\r\n\t\t\t\tconsole.warn(e);\r\n\t\t\t\talert(e.hasOwnProperty('statusText') && e.hasOwnProperty('status') ? opts.ajax.error + '\\n' + e.statusText + ' (' + e.status + ')' : e);\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * Initialize Sortable\r\n\t\t\t * @param {jQuery|HTMLElement} el\r\n\t\t\t * @param {object} config\r\n\t\t\t * @param {int|boolean} column\r\n\t\t\t * @param {function} onDrop\r\n\t\t\t * @return {jQuery|HTMLElement}\r\n\t\t\t */\r\n\t\t\tsortable: (el, config, column, onDrop) => {\r\n\t\t\t\treturn (el || $('.sorted_table')).each(function() {\r\n\t\t\t\t\tlet self = $(this),\r\n\t\t\t\t\t\tcolumn_count = self.find('tbody > tr:eq(0) > td').length || column || 9;\r\n\t\t\t\t\tself.wf_sortable(extend({\r\n\t\t\t\t\t\tcontainerSelector: 'table',\r\n\t\t\t\t\t\titemPath: '> tbody',\r\n\t\t\t\t\t\titemSelector: 'tr',\r\n\t\t\t\t\t\thandle: 'i.wf_sortedtable',\r\n\t\t\t\t\t\tplaceholder: `<tr class=\"placeholder\"><td colspan=\"${column_count}\"></td></tr>`,\r\n\t\t\t\t\t\tonDrop: ($item, container, _super, event) => {\r\n\t\t\t\t\t\t\t$item.removeClass(container.group.options.draggedClass).removeAttr('style');\r\n\t\t\t\t\t\t\t$(\"body\").removeClass(container.group.options.bodyClass);\r\n\t\t\t\t\t\t\tif ( onDrop && 'function' === typeof( onDrop ) ) {\r\n\t\t\t\t\t\t\t\tonDrop( $item, container, _super, event );\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t}, config));\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tselectize: (el, config) => {\r\n\t\t\t\treturn (el || $('select.selectize')).not('.selectized').each(function() {\r\n\t\t\t\t\tlet self = $(this);\r\n\t\t\t\t\tself.selectize(extend({\r\n\t\t\t\t\t\tcreate: self.data('create') || false,\r\n\t\t\t\t\t\tplugins: self.data('plugins') ? self.data('plugins').split(',').map(function(s) {\r\n\t\t\t\t\t\t\treturn s.trim();\r\n\t\t\t\t\t\t}) : [],\r\n\t\t\t\t\t\t//['remove_button'],\r\n\t\t\t\t\t\trender: {\r\n\t\t\t\t\t\t\titem: helper.selectize_render_item\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, config));\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tfancySelect: (el, config) => {\r\n\t\t\t\treturn (el || $('select.fancySelect')).not('.FancySelectInit').each(function() {\r\n\t\t\t\t\tlet self = $(this);\r\n\t\t\t\t\tself.fancySelect(extend({\r\n\t\t\t\t\t\tmaxItemShow: 3\r\n\t\t\t\t\t}, config));\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\treindex_config_table: () => {\r\n\t\t\t\t$('#table-1').find('tbody tr').each( ( x, el ) => {\r\n\t\t\t\t\t$(el).find('[name]').each( ( x1, el ) => {\r\n\t\t\t\t\t\t$(el).attr('name', $(el).attr('name').replace(/(\\[\\d\\])/g, `[${x}]`));\r\n\t\t\t\t\t} );\r\n\t\t\t\t} );\r\n\t\t\t},\r\n\t\t\tcommon: () => {\r\n\t\t\t\thelper.sortable( $('.sorted_table'), {}, 9, helper.reindex_config_table );\r\n\t\t\t\thelper.selectize();\r\n\t\t\t\thelper.fancySelect($('.outputType'));\r\n\t\t\t}\r\n\t\t},\r\n\t\t// helper functions\r\n\t\tfeedEditor = {\r\n\t\t\t/**\r\n\t\t\t * The Editor Form Elem.\r\n\t\t\t * @type {jQuery|HTMLElement}\r\n\t\t\t */\r\n\t\t\tform: null,\r\n\r\n\t\t\t/**\r\n\t\t\t * Initialize The Feed Editor {Tabs...}\r\n\t\t\t * @returns {void}\r\n\t\t\t */\r\n\t\t\tinit: function () {\r\n\t\t\t\tlet self = this;\r\n\t\t\t\tself.form = $('.generateFeed');\r\n\t\t\t\tif (!self.form.length) return;\r\n\t\t\t\thelper.common();\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t$(document).trigger(new jQuery.Event('feedEditor.init', {\r\n\t\t\t\t\ttarget: this.form\r\n\t\t\t\t}));\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Render Merchant info ajax response and handle allowed feed type for selected merchant\r\n\t\t\t * @param {jQuery|HTMLElement} merchantInfo jQuery dom object\r\n\t\t\t * @param {jQuery|HTMLElement} feedType jQuery dom object\r\n\t\t\t * @param {Object} r ajax response object\r\n\t\t\t */\r\n\t\t\trenderMerchantInfo: function (merchantInfo, feedType, r) {\r\n\t\t\t\tfor (let k in r) {\r\n\t\t\t\t\tif (r.hasOwnProperty(k)) {\r\n\t\t\t\t\t\tmerchantInfo.find('.merchant-info-section.' + k + ' .data').html(r[k]); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html\r\n\r\n\t\t\t\t\t\tif ('feed_file_type' === k) {\r\n\t\t\t\t\t\t\t(function() {\r\n\t\t\t\t\t\t\t\tlet types = r[k].split(\",\").map(function(t) {\r\n\t\t\t\t\t\t\t\t\treturn t.trim().toLowerCase();\r\n\t\t\t\t\t\t\t\t}).filter(function(t) {\r\n\t\t\t\t\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\t\t\t\t\treturn t !== '' && t !== opts.na.toLowerCase();\r\n\t\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t\tif (types.length) {\r\n\t\t\t\t\t\t\t\t\tfeedType.find('option').removeAttr('selected').each(function() {\r\n\t\t\t\t\t\t\t\t\t\tlet opt = $(this);\r\n\t\t\t\t\t\t\t\t\t\topt.val() && !helper.in_array(opt.val(), types) ? opt.disabled(!0) : opt.disabled(!1);\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\tif (types.length === 1) feedType.find('option[value=\"' + types[0] + '\"]').attr('selected', 'selected');\r\n\t\t\t\t\t\t\t\t} else feedType.find('option').disabled(!1);\r\n\t\t\t\t\t\t\t})();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tmerchantInfo.find('.spinner').removeClass('is-active');\r\n\t\t\t\tfeedType.disabled(!1);\r\n\t\t\t\tfeedType.trigger('change');\r\n\t\t\t\tfeedType.parent().find('.spinner').removeClass('is-active');\r\n\t\t\t},\r\n\r\n\t\t\t/**\r\n\t\t\t * Render Feed Template Tabs and settings while creating new feed.\r\n\t\t\t * @param {jQuery|HTMLElement} feedForm feed from query dom object\r\n\t\t\t * @param {object} r merchant template ajax response object\r\n\t\t\t */\r\n\t\t\trenderMerchantTemplate: function (feedForm, r) {\r\n\t\t\t\tlet _loop = function _loop(k) {\r\n\t\t\t\t\tif (r.hasOwnProperty(k)) {\r\n\t\t\t\t\t\tif ('tabs' === k) {\r\n\t\t\t\t\t\t\t// noinspection JSUnresolvedFunction\r\n\t\t\t\t\t\t\tfeedForm.html(r[k]); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tlet contentSettings = $('[name=\"' + k + '\"]');\r\n\r\n\t\t\t\t\t\t\tif (contentSettings.length) {\r\n\t\t\t\t\t\t\t\tcontentSettings.each(function() {\r\n\t\t\t\t\t\t\t\t\tlet elem = $(this);\r\n\r\n\t\t\t\t\t\t\t\t\tif (elem.is('select')) {\r\n\t\t\t\t\t\t\t\t\t\telem.find('[value=\"' + r[k] + '\"]').prop('selected', true);\r\n\t\t\t\t\t\t\t\t\t} else if ((elem.is('[type=checkbox]') || elem.is('[type=radio]')) && elem.val() === r[k]) {\r\n\t\t\t\t\t\t\t\t\t\telem.prop('checked', true);\r\n\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\telem.val(r[k]); // type=text\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}).trigger('change');\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\r\n\t\t\t\tfor (let k in r) {\r\n\t\t\t\t\t_loop(k);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfeedEditor.init();\r\n\t\t\t}\r\n\t\t},\r\n\t\t// Feed Editor Table\r\n\t\tmerchantInfoCache = [],\r\n\t\tmerchantTemplateCache = [],\r\n\t\ttooltip = () => {\r\n\t\t\t// Tooltip only Text\r\n\t\t\t$('.wfmasterTooltip')\r\n\t\t\t\t.hover(function () {\r\n\t\t\t\t\t// Hover over code\r\n\t\t\t\t\tlet self = $(this), title = self.attr('wftitle');\r\n\t\t\t\t\tself.data('tipText', title).removeAttr('wftitle');\r\n\t\t\t\t\t$('<p class=\"wftooltip\"></p>').text(title).appendTo('body').fadeIn('slow');\r\n\t\t\t\t}, function () {\r\n\t\t\t\t\t// Hover out code\r\n\t\t\t\t\tlet self = $(this);\r\n\t\t\t\t\tself.attr('wftitle', self.data('tipText'));\r\n\t\t\t\t\t$('.wftooltip').remove();\r\n\t\t\t\t})\r\n\t\t\t\t.mousemove(function (e) {\r\n\t\t\t\t\t$('.wftooltip').css({\r\n\t\t\t\t\t\ttop: e.pageY + 10,\r\n\t\t\t\t\t\tleft: e.pageX + 20\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t},\r\n\t\tclip = () => {\r\n\t\t\t$copyBtn = $('.toClipboard');\r\n\t\t\tif (!ClipboardJS.isSupported() || /iPhone|iPad/i.test(navigator.userAgent)) {\r\n\t\t\t\t$copyBtn.find('img').hide(0);\r\n\t\t\t} else {\r\n\t\t\t\t$copyBtn.each(function() {\r\n\t\t\t\t\t$(this).on('mouseleave', clearTooltip).on('blur', clearTooltip);\r\n\t\t\t\t});\r\n\t\t\t\tclipboard = new ClipboardJS('.toClipboard');\r\n\t\t\t\tclipboard.on('error', function(event) {\r\n\t\t\t\t\tshowTooltip(event.trigger, fallbackMessage(event.action));\r\n\t\t\t\t}).on('success', function(event) {\r\n\t\t\t\t\tshowTooltip(event.trigger, 'Copied!');\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\t\r\n\t/**\r\n\t * Feed Generator Module\r\n\t */\r\n\tclass feedGenerator {\r\n\t\t\r\n\t\t/**\r\n\t\t * Constructor\r\n\t\t * @constructor\r\n\t\t */\r\n\t\tconstructor() {\r\n\t\t\tthis._feed = opts.generator.feed; // wf_config+xxxx\r\n\t\t\tthis._limit = opts.generator.limit;\r\n\t\t\tthis._progress = 0;\r\n\t\t\tthis._timer = null;\r\n\t\t\tthis._color = false;\r\n\t\t\t// batch info\r\n\t\t\tthis._total_batch = 0;\r\n\t\t\tthis._current_batch = 0;\r\n\t\t\tthis._product_ids = [];\r\n\t\t\tthis._progress_per_batch = 0;\r\n\t\t\tthis._refresh = true;\r\n\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\tthis._regenerate = opts.generator.regenerate;\r\n\t\t\twindow.isRegenerating = false;\r\n\t\t\tthis._all_btn = $('.wpf_regenerate');\r\n\t\t\tthis._current_btn = $(`#${this._feed.replace( 'wf_config', 'wf_feed_' )}`);\r\n\t\t\tthis._current_btn_label = '';\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Init Hooks (Event)\r\n\t\t * @return {feedGenerator}\r\n\t\t */\r\n\t\tinit() {\r\n\t\t\tlet self = this;\r\n\t\t\tif ( '' !== this._feed && this._regenerate && false === window.isRegenerating ) {\r\n\t\t\t\tthis.generate();\r\n\t\t\t}\r\n\t\t\t$(document).on('click', '.woo-feed-campaign-close-button', function(event) {\r\n\t\t\t\tevent.preventDefault();\r\n\r\n\t\t\t\t$(this).parent('.woo-feed-promotion').hide();\r\n\t\t\t\tlet condition = $(this).data('condition');\r\n\t\t\t\tif(1 === condition) {\r\n\t\t\t\t\twpAjax.post( 'woo_feed_hide_promotion', {\r\n\t\t\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\t\t\tcondition: condition,\r\n\t\t\t\t\t} ).then( response => {\r\n\t\t\t\t\t\tself._log( response );\r\n\t\t\t\t\t} ).fail( error => {\r\n\t\t\t\t\t\tself._log( error );\r\n\t\t\t\t\t\tself._updateProgressStatus( error.message );\r\n\t\t\t\t\t\tself._color = 'red';\r\n\t\t\t\t\t} );\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\t$(document).on('click', '.wpf_regenerate', function(event) {\r\n\t\t\t\tevent.preventDefault();\r\n\t\t\t\tself._current_btn = $( this );\r\n\t\t\t\tif( self._current_btn.hasClass('disabled') || window.isRegenerating === true ) return;\r\n\t\t\t\tself._feed = self._current_btn.attr('id').replace( 'wf_feed_', 'wf_config' );\r\n\t\t\t\tif( '' !== self._feed ) {\r\n\t\t\t\t\tself.generate();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t_block_button() {\r\n\t\t\tif ( this._all_btn.length ) {\r\n\t\t\t\tthis._all_btn.addClass('disabled');\r\n\t\t\t}\r\n\t\t\tif ( this._current_btn.length ) {\r\n\t\t\t\tthis._current_btn.find('span').addClass('wpf_spin reverse_spin');\r\n\t\t\t\tthis._current_btn_label = this._current_btn.attr('title');\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\tthis._current_btn.attr( 'aria-label', opts.regenerate ).attr( 'title', opts.regenerate );\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t_unblock_button() {\r\n\t\t\tif ( this._all_btn.length ) {\r\n\t\t\t\tthis._all_btn.removeClass('disabled');\r\n\t\t\t}\r\n\t\t\tif ( this._current_btn.length ) {\r\n\t\t\t\tthis._current_btn.find('span').removeClass('wpf_spin');\r\n\t\t\t\tthis._current_btn.find('span').removeClass('reverse_spin');\r\n\t\t\t\tthis._current_btn.attr( 'aria-label', this._current_btn_label ).attr( 'title', this._current_btn_label );\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Generate Feed\r\n\t\t * @return void\r\n\t\t */\r\n\t\tgenerate() {\r\n\t\t\tlet self = this;\r\n\t\t\twindow.isRegenerating = true;\r\n\t\t\tthis._block_button();\r\n\t\t\tthis._resetProgressBar();\r\n\t\t\tthis._progressBarActive();\r\n\t\t\tthis._log( 'Counting Total Products' );\r\n\t\t\tthis._updateProgressStatus( 'Fetching products.' );\r\n\t\t\tthis._get_product_ids().then( response => {\r\n\t\t\t\tthis._progress = 10;\r\n\t\t\t\tself._log( {response} );\r\n\t\t\t\tif(response.success) {\r\n\t\t\t\t\tself._log( `Total ${response.total} Products found.` );\r\n\t\t\t\t\tself._product_ids = response.product;\r\n\t\t\t\t\tself._total_batch = this._product_ids.length;\r\n\t\t\t\t\tself._current_batch = 0;\r\n\t\t\t\t\tself._progress_per_batch = ( 90 - this._progress ) / this._total_batch;\r\n\t\t\t\t\tself._process_batch();\r\n\t\t\t\t\tself._updateProgressStatus( 'Processing Products...' );\r\n\t\t\t\t} else {\r\n\t\t\t\t\tself._updateProgressStatus( response.data.message );\r\n\t\t\t\t}\r\n\t\t\t}).fail( error => {\r\n\t\t\t\tself._log( error );\r\n\t\t\t\tself._updateProgressStatus( error.message );\r\n\t\t\t\tself._color = 'red';\r\n\t\t\t\tsetTimeout( function(){\r\n\t\t\t\t\tself._stopProgressBar();\r\n\t\t\t\t\tself._unblock_button();\r\n\t\t\t\t}, 1500 );\r\n\t\t\t} );\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Get Product Ids\r\n\t\t * @returns {$.promise}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_get_product_ids() {\r\n\t\t\tthis._progress = 5;\r\n\t\t\treturn wpAjax.post( 'get_product_information', {\r\n\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\tfeed: this._feed,\r\n\t\t\t\tlimit: this._limit,\r\n\t\t\t} );\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Run the Batch\r\n\t\t * @private\r\n\t\t */\r\n\t\t_process_batch() {\r\n\t\t\tlet self = this;\r\n\t\t\tlet status = `Processing Batch ${this._current_batch+1} of ${this._total_batch}`;\r\n\t\t\tthis._updateProgressStatus( status );\r\n\t\t\tthis._log( status );\r\n\t\t\twpAjax.post( 'make_batch_feed', {\r\n\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\tfeed: this._feed,\r\n\t\t\t\tproducts: this._product_ids[this._current_batch],\r\n\t\t\t\tloop: this._current_batch,\r\n\t\t\t} ).then( response => {\r\n\t\t\t\tself._current_batch++;\r\n\t\t\t\tself._log( `Batch ${self._current_batch} Completed` );\r\n\t\t\t\tself._log( response );\r\n\t\t\t\tif ( self._current_batch < self._total_batch ) {\r\n\t\t\t\t\tself._process_batch();\r\n\t\t\t\t\tself._progress += self._progress_per_batch;\r\n\t\t\t\t}\r\n\t\t\t\tif ( self._current_batch === self._total_batch ) {\r\n\t\t\t\t\tself._save_feed_file();\r\n\t\t\t\t}\r\n\t\t\t} ).fail( error => {\r\n\t\t\t\tself._log( error );\r\n\t\t\t\tself._updateProgressStatus( error.message );\r\n\t\t\t\tself._color = 'red';\r\n\t\t\t\tsetTimeout( function(){\r\n\t\t\t\t\tself._stopProgressBar();\r\n\t\t\t\t\tself._unblock_button();\r\n\t\t\t\t}, 1500 );\r\n\t\t\t} );\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Save Feed Data from temp to feed file\r\n\t\t * @private\r\n\t\t */\r\n\t\t_save_feed_file() {\r\n\t\t\tlet self = this;\r\n\t\t\tthis._log( 'Saving feed file' );\r\n\t\t\tthis._updateProgressStatus( 'Saving feed file' );\r\n\t\t\twpAjax.post( 'save_feed_file', {\r\n\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\tfeed: this._feed,\r\n\t\t\t} ).then( response => {\r\n\t\t\t\tself._log( response );\r\n\t\t\t\tself._progress = 100;\r\n\t\t\t\tif ( self._refresh ) {\r\n\t\t\t\t\twindow.location.href = `${opts.pages.list.feed}&link=${response.url}&cat=${response.cat}`;\r\n\t\t\t\t}\r\n\t\t\t\tsetTimeout( function(){\r\n\t\t\t\t\tself._stopProgressBar();\r\n\t\t\t\t\tsetTimeout( function(){\r\n\t\t\t\t\t\tself._resetProgressBar( true );\r\n\t\t\t\t\t\tself._unblock_button();\r\n\t\t\t\t\t}, 3000 );\r\n\t\t\t\t}, 2500 );\r\n\t\t\t} ).fail( error => {\r\n\t\t\t\tself._log( error );\r\n\t\t\t\tself._updateProgressStatus( error.message );\r\n\t\t\t\tself._color = 'red';\r\n\t\t\t\tsetTimeout( function(){\r\n\t\t\t\t\tself._stopProgressBar();\r\n\t\t\t\t\tself._unblock_button();\r\n\t\t\t\t}, 1500 );\r\n\t\t\t} );\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Console log wrapper with debug settings.\r\n\t\t * @param data\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_log( data ) {\r\n\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\tif ( opts.wpf_debug ) {\r\n\t\t\t\tconsole.log( data );\r\n\t\t\t}\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Run the progressbar refresh interval\r\n\t\t * @param {int} refreshInterval\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_progressBarActive( refreshInterval = 0 ) {\r\n\t\t\tlet self = this;\r\n\t\t\tthis._toggleProgressBar( true );\r\n\t\t\tthis._timer = setInterval( function(){\r\n\t\t\t\tself._updateProgressBar();\r\n\t\t\t}, refreshInterval || 1000 );\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Stop Progressbar\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_stopProgressBar() {\r\n\t\t\tclearInterval( this._timer );\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Reset Progressbar\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_resetProgressBar( update ) {\r\n\t\t\tthis._toggleProgressBar( false );\r\n\t\t\tthis._updateProgressStatus( '' );\r\n\t\t\tclearInterval( this._timer );\r\n\t\t\tthis._color = false;\r\n\t\t\tthis._timer = null;\r\n\t\t\tthis._progress = 0;\r\n\t\t\tif ( update ) {\r\n\t\t\t\tthis._updateProgressBar();\r\n\t\t\t}\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Show hide the progress bar el\r\n\t\t * @param status\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_toggleProgressBar( status ) {\r\n\t\t\tlet table = $('#feed_progress_table');\r\n\t\t\tif ( status ) {\r\n\t\t\t\ttable.show();\r\n\t\t\t} else {\r\n\t\t\t\ttable.hide();\r\n\t\t\t}\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Update Progress bar text status\r\n\t\t * @param {string} status\r\n\t\t * @returns {feedGenerator}\r\n\t\t * @private\r\n\t\t */\r\n\t\t_updateProgressStatus( status ) {\r\n\t\t\t$( '.feed-progress-status' ).text( status );\r\n\t\t\treturn this;\r\n\t\t}\r\n\t\t\r\n\t\t/**\r\n\t\t * Update Progress Data\r\n\t\t * hooked with setInterval\r\n\t\t * @private\r\n\t\t */\r\n\t\t_updateProgressBar() {\r\n\t\t\tlet percentage = $( '.feed-progress-percentage' ),\r\n\t\t\t\tbar = $( '.feed-progress-bar-fill' ),\r\n\t\t\t\t_progress = `${Math.round( this._progress )}%`;\r\n\t\t\tbar.css( {\r\n\t\t\t\twidth: _progress,\r\n\t\t\t} );\r\n\t\t\tpercentage.text( _progress );\r\n\t\t}\r\n\t}\r\n\t// expose to the global scope\r\n\twindow.wf = {\r\n\t\thelper: helper,\r\n\t\tfeedEditor: feedEditor,\r\n\t\tgenerator: feedGenerator,\r\n\t};\r\n\t$(window).load(function() {\r\n\t\t// Template loading ui conflict\r\n\t\tif ($(location).attr(\"href\").match(/webappick.*feed/g) !== null) {\r\n\t\t\t$('#wpbody-content').addClass('woofeed-body-content');\r\n\t\t}\r\n\r\n\t\t// on edit page show item wrapper dropdown\r\n\t\tlet current_page_url_query = window.location.search;\r\n\t\tlet urlParams = new URLSearchParams(current_page_url_query);\r\n\t\tlet page_action = urlParams.get('action');\r\n\t\tif ( page_action === 'edit-feed' ) {\r\n\t\t\t$('.itemWrapper').show();\r\n\t\t}\r\n\r\n\t\t// ClipBoardJS\r\n\t\tclip();\r\n\t\t// postbox toggle\r\n\t\tpostboxes.add_postbox_toggles(pagenow);\r\n\t\t// initialize generator\r\n\t\tlet generator = new feedGenerator();\r\n\t\tgenerator.init();\r\n\t\t// noinspection JSUnresolvedVariable\r\n\t\tif( '' !== opts.generator.feed && opts.generator.regenerate ) {\r\n\t\t\r\n\t\t}\r\n\t\t// initialize editor\r\n\t\tfeedEditor.init();\r\n\t\thelper.common(); // Generate Feed Add Table Row\r\n\t\ttooltip();\r\n\t\t// validate feed editor\r\n\t\t$(\".generateFeed\").validate();\r\n\t\t// document events\r\n\t\t$(document)\r\n\t\t\t.on('click', '[data-toggle_slide]', function(e) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\t$($(this).data('toggle_slide')).slideToggle('fast');\r\n\t\t\t})\r\n\t\t\t// XML Feed Wrapper\r\n\t\t\t.on('click', '#wf_newRow', function () {\r\n\t\t\t\tlet tbody = $('#table-1 tbody'),\r\n\t\t\t\t\ttemplate = $('#feed_config_template').text().trim().replace(/__idx__/g, tbody.find('tr').length);\r\n\t\t\t\ttbody.append(template);\r\n\t\t\t\thelper.fancySelect($('.outputType'));\r\n\t\t\t})\r\n\t\t\t// feed delete alert.\r\n\t\t\t.on('click', '.single-feed-delete', function (event) {\r\n\t\t\t\tevent.preventDefault();\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\tif (confirm(opts.form.del_confirm)) {\r\n\t\t\t\t\twindow.location.href = $(this).attr('val');\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t// clear cache data.\r\n\t\t\t.on('click', '.wf_clean_cache_wrapper', function(event) {\r\n\t\t\t\tevent.preventDefault();\r\n\t\t\t\tvar nonce = $('.woo-feed-clean-cache-nonce').val();\r\n\t\t\t\tvar loader = $('.woo-feed-cache-loader');\r\n\r\n\t\t\t\t//show loader\r\n\t\t\t\tloader.show();\r\n\r\n\t\t\t\t// passed cache nonce\r\n\t\t\t\twpAjax.post('clear_cache_data', {\r\n\t\t\t\t\t_ajax_clean_nonce: nonce\r\n\t\t\t\t}).then(function (response) {\r\n\t\t\t\t\tif( response.success ) {\r\n\t\t\t\t\t\tloader.hide(); //hide loader\r\n\t\t\t\t\t}\r\n\t\t\t\t}).fail(function (e) {\r\n\t\t\t\t\tconsole.log('something wrong');\r\n\t\t\t\t});\r\n\r\n\t\t\t})\r\n\t\t\t// feed value dropdown change.\r\n\t\t\t.on('change', '.wf_attr.wf_attributes', function(event) {\r\n\t\t\t\tevent.preventDefault();\r\n\r\n\t\t\t\t$('.fancy-picker-picked').trigger(\"click\"); // trigger fancy select box clicked\r\n\r\n\t\t\t\t// price attributes\r\n\t\t\t\tvar price_attributes = ['price', 'current_price', 'sale_price', 'price_with_tax', 'current_price_with_tax', 'sale_price_with_tax'];\r\n\t\t\t\t// current value\r\n\t\t\t\tvar current_attribute_value = $(this).val();\r\n\t\t\t\tvar outputSelect = $(this).parents('tr').find('.outputType');\r\n\t\t\t\tvar fancyOption = $(this).parents('tr').find('.fancy-picker-content .fancy-picker-option');\r\n\t\t\t\tvar fancyDataPicker = $(this).parents('tr').find('.fancy-picker-data span');\r\n\t\t\t\tvar selectIf, selectKey;\r\n\r\n\t\t\t\t// when select any custom taxonomy\r\n\t\t\t\tif( \"\" !== current_attribute_value && -1 !== current_attribute_value.indexOf('wf_taxo') ) {\r\n\t\t\t\t\tselectIf = 'for_custom_taxo';\r\n\t\t\t\t\tselectKey = \"parent_if_empty\";\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// when select any price attribute\r\n\t\t\t\tif( price_attributes.includes(current_attribute_value) ) {\r\n\t\t\t\t\tselectIf = 'for_price';\r\n\t\t\t\t\tselectKey = \"Price\";\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// remove selected class from old selected option\r\n\t\t\t\tfancyOption.removeClass('selected');\r\n\r\n\t\t\t\t// when value dropdown is selected as price or any custom taxonomy\r\n\t\t\t\tif( selectIf === 'for_custom_taxo' || selectIf === 'for_price' ) {\r\n\r\n\t\t\t\t\t// update \"Option Type\" when select key matches\r\n\t\t\t\t\tfancyOption.each(function(item) {\r\n\t\t\t\t\t\tif( selectKey === $(this).text() ) {\r\n\t\t\t\t\t\t\t$(this).addClass('selected');\r\n\t\t\t\t\t\t\tfancyDataPicker.text(selectKey);\r\n\t\t\t\t\t\t\toutputSelect.find(\"option\").text(selectKey);\r\n\t\t\t\t\t\t\toutputSelect.find(\"option\").val( $(this).data('value') );\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t}\r\n\r\n\t\t\t})\r\n\t\t\t// bulk delete alert.\r\n\t\t\t.on('click', '#doaction, #doaction2', function () {\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\treturn confirm(opts.form.del_confirm_multi);\r\n\t\t\t})\r\n\t\t\t// Generate Feed Table Row Delete\r\n\t\t\t.on('change', '.dType', function () {\r\n\t\t\t\tlet self = $(this),\r\n\t\t\t\t\ttype = self.val(),\r\n\t\t\t\t\trow = self.closest('tr');\r\n\t\t\t\t\r\n\t\t\t\tif (type === 'pattern') {\r\n\t\t\t\t\trow.find('.value_attribute').hide();\r\n\t\t\t\t\trow.find('.value_pattern').show();\r\n\t\t\t\t} else if (type === 'attribute') {\r\n\t\t\t\t\trow.find('.value_attribute').show();\r\n\t\t\t\t\trow.find('.value_pattern').hide();\r\n\t\t\t\t} else if (type === 'remove') {\r\n\t\t\t\t\trow.find('.value_attribute').hide();\r\n\t\t\t\t\trow.find('.value_pattern').hide();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t// Generate Feed Form Submit\r\n\t\t\t.on('click', '.delRow', function (e) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\t$(this).closest('tr').remove();\r\n\t\t\t\thelper.reindex_config_table();\r\n\t\t\t})\r\n\t\t\t.on('submit', '#generateFeed', function () {\r\n\t\t\t\t// Feed Generating form validation\r\n\t\t\t\t$(this).validate();\r\n\t\t\t\t\r\n\t\t\t\tif ($(this).valid()) {\r\n\t\t\t\t\t$(\".makeFeedResponse\")\r\n\t\t\t\t\t\t.show()\r\n\t\t\t\t\t\t.html(`<b style=\"color: darkblue;\"><i class=\"dashicons dashicons-sos wpf_spin\"></i> ${opts.form.generate}</b>`); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t// Generate Update Feed Form Submit\r\n\t\t\t.on('submit', '#updatefeed', function (e, data) {\r\n\t\t\t\t// Feed Generating form validation\r\n\t\t\t\t$(this).validate();\r\n\t\t\t\t\r\n\t\t\t\tif ($(this).valid()) {\r\n\t\t\t\t\t$(\".makeFeedResponse\")\r\n\t\t\t\t\t\t.show()\r\n\t\t\t\t\t\t.html(`<b style=\"color: darkblue;\"><i class=\"dashicons dashicons-sos wpf_spin\"></i> ${data && data.save ? opts.form.save : opts.form.generate}</b>`); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.on('change', '.ftporsftp', function () {\r\n\t\t\t\tlet server = $(this).val(),\r\n\t\t\t\t\tstatus = $('.ssh2_status');\r\n\t\t\t\t\r\n\t\t\t\tif (server === 'sftp') {\r\n\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\tstatus.show().css('color', 'dodgerblue').text(opts.form.sftp_checking);\r\n\t\t\t\t\twpAjax.post('get_ssh2_status', {\r\n\t\t\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\t\t\tserver: server\r\n\t\t\t\t\t}).then(function (response) {\r\n\t\t\t\t\t\tif (response === 'exists') {\r\n\t\t\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\t\t\tstatus.css('color', '#2CC185').text(opts.form.sftp_available);\r\n\t\t\t\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\t\t\t\tstatus.hide();\r\n\t\t\t\t\t\t\t}, 1500);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\t\t\tstatus.show().css('color', 'red').text(opts.form.sftp_warning);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}).fail(function (e) {\r\n\t\t\t\t\t\tstatus.hide();\r\n\t\t\t\t\t\thelper.ajax_fail(e);\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tstatus.hide();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.on('click', '[name=\"save_feed_config\"]', function (e) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\t$('#updatefeed').trigger('submit', {\r\n\t\t\t\t\tsave: true\r\n\t\t\t\t});\r\n\t\t\t})\r\n\t\t\t.on('change', '#provider', function (event) {\r\n\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\r\n\t\t\t\tif (!$(this).closest('.generateFeed').hasClass('add-new')) return; // only for new feed.\r\n\r\n\t\t\t\tlet merchant = $(this).val(),\r\n\t\t\t\t\tfeedType = $(\"#feedType\"),\r\n\t\t\t\t\tfeedForm = $(\"#providerPage\"),\r\n\t\t\t\t\tmerchantInfo = $('#feed_merchant_info'); // set loading..\r\n\t\t\t\t\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\tfeedForm.html('<h3><span style=\"float:none;margin: -3px 0 0;\" class=\"spinner is-active\"></span> ' + opts.form.loading_tmpl + '</h3>'); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html, WordPressVIPMinimum.JS.StringConcat.Found\r\n\t\t\t\t\r\n\t\t\t\tmerchantInfo.find('.spinner').addClass('is-active');\r\n\t\t\t\tfeedType.disabled(!0); // disable dropdown\r\n\t\t\t\t\r\n\t\t\t\tfeedType.parent().find('.spinner').addClass('is-active');\r\n\t\t\t\tmerchantInfo.find('.merchant-info-section .data').html(''); // remove previous data\r\n\t\t\t\t// Get Merchant info for selected Provider/Merchant\r\n\r\n\r\n\t\t\t\t\r\n\t\t\t\tif (merchantInfoCache.hasOwnProperty(merchant)) {\r\n\t\t\t\t\tfeedEditor.renderMerchantInfo(merchantInfo, feedType, merchantInfoCache[merchant]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\twpAjax.send('woo_feed_get_merchant_info', {\r\n\t\t\t\t\t\ttype: 'GET',\r\n\t\t\t\t\t\tdata: {\r\n\t\t\t\t\t\t\tnonce: opts.nonce,\r\n\t\t\t\t\t\t\tprovider: merchant\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}).then(function (r) {\r\n\t\t\t\t\t\tmerchantInfoCache[merchant] = r;\r\n\t\t\t\t\t\tfeedEditor.renderMerchantInfo(merchantInfo, feedType, r);\r\n\t\t\t\t\t}).fail(helper.ajax_fail);\r\n\t\t\t\t} // Get FeedForm For Selected Provider/Merchant\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\tif (merchantTemplateCache.hasOwnProperty(merchant)) {\r\n\t\t\t\t\tfeedEditor.renderMerchantTemplate(feedForm, merchantTemplateCache[merchant]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\twpAjax.post('get_feed_merchant', {\r\n\t\t\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\t\t\tmerchant: merchant\r\n\t\t\t\t\t}).then(function (r) {\r\n\t\t\t\t\t\tmerchantTemplateCache[merchant] = r;\r\n\t\t\t\t\t\tfeedEditor.renderMerchantTemplate(feedForm, r);\r\n\r\n\t\t\t\t\t\t//when merchant is bing, change delimiter and enclosure\r\n\t\t\t\t\t\tif( 'bing' === merchant ) {\r\n\t\t\t\t\t\t\t//delimiter value\r\n\t\t\t\t\t\t\t$(\"#delimiter option\").removeAttr('selected');\r\n\t\t\t\t\t\t\t$(\"#delimiter option[value=\\\"tab\\\"]\").attr('selected', 'selected');\r\n\r\n\t\t\t\t\t\t\t//enclosure value\r\n\t\t\t\t\t\t\t$(\"#enclosure option\").removeAttr('selected');\r\n\t\t\t\t\t\t\t$(\"#enclosure option[value=\\\" \\\"]\").attr('selected', 'selected');\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t//reviewer options hide\r\n\t\t\t\t\t\tif( 'google_product_review' !== merchant) {\r\n\t\t\t\t\t\t\t$('.wf_attributes option[value=\"reviewer_name\"]').hide();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}).fail(helper.ajax_fail);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t// Feed Active and Inactive status change via ajax\r\n\t\t\t.on('change', '.woo_feed_status_input', function () {\r\n\t\t\t\tlet self = $(this);\r\n\t\t\t\twpAjax.post('update_feed_status', {\r\n\t\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\t\tfeedName: self.val(),\r\n\t\t\t\t\tstatus: self[0].checked ? 1 : 0\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t// event with trigger\r\n\t\t$(document)\r\n\t\t\t.on('change', '[name=\"is_outOfStock\"], [name=\"product_visibility\"]', function () {\r\n\t\t\t\tlet outOfStockVisibilityRow = $('.out-of-stock-visibility');\r\n\t\t\t\tif ($('[name=\"is_outOfStock\"]:checked').val() === 'n' && $('[name=\"product_visibility\"]:checked').val() === '1') {\r\n\t\t\t\t\toutOfStockVisibilityRow.show();\r\n\t\t\t\t} else {\r\n\t\t\t\t\toutOfStockVisibilityRow.hide();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.on('change', '.attr_type', function () {\r\n\t\t\t\t// Attribute type selection\r\n\t\t\t\tlet self = $(this),\r\n\t\t\t\t\ttype = self.val(),\r\n\t\t\t\t\trow = self.closest('tr');\r\n\t\t\t\t\r\n\t\t\t\tif (type === 'pattern') {\r\n\t\t\t\t\trow.find('.wf_attr').hide();\r\n\t\t\t\t\trow.find('.wf_attr').val('');\r\n\t\t\t\t\trow.find('.wf_default').show();\r\n\t\t\t\t} else {\r\n\t\t\t\t\trow.find('.wf_attr').show();\r\n\t\t\t\t\trow.find('.wf_default').hide();\r\n\t\t\t\t\trow.find('.wf_default').val('');\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.on('change', '.wf_mattributes, .attr_type', function () {\r\n\t\t\t\tlet row = $(this).closest('tr'),\r\n\t\t\t\t\tattribute = row.find('.wf_mattributes'),\r\n\t\t\t\t\ttype = row.find('.attr_type'),\r\n\t\t\t\t\tvalueColumn = row.find('td:eq(4)'),\r\n\t\t\t\t\tprovider = $('#provider').val();\r\n\t\t\t\t\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\tif (opts.form.google_category.hasOwnProperty(attribute.val()) && type.val() === 'pattern' && helper.in_array(provider, opts.form.google_category[attribute.val()])) {\r\n\t\t\t\t\tif (valueColumn.find('select.selectize').length === 0) {\r\n\t\t\t\t\t\tvalueColumn.find('input.wf_default').remove();\r\n\t\t\t\t\t\tvalueColumn.append('<span class=\"wf_default wf_attributes\"><select name=\"default[]\" class=\"selectize\"></select></span>');\r\n\t\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\t\tvalueColumn.append(`<span style=\"font-size:x-small;\"><a style=\"color: red\" href=\"http://webappick.helpscoutdocs.com/article/19-how-to-map-store-category-with-merchant-category\" target=\"_blank\">${opts.learn_more}</a></span>`);\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tif (!googleCategories) {\r\n\t\t\t\t\t\t\tvalueColumn.append('<span class=\"spinner is-active\" style=\"margin: 0;\"></span>');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tlet select = valueColumn.find('.wf_attributes select');\r\n\t\t\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\t\t\thelper.selectize(select, {\r\n\t\t\t\t\t\t\tpreload: true,\r\n\t\t\t\t\t\t\tplaceholder: opts.form.select_category,\r\n\t\t\t\t\t\t\tload: function load(query, cb) {\r\n\t\t\t\t\t\t\t\tif (!googleCategories) {\r\n\t\t\t\t\t\t\t\t\twpAjax.send('get_google_categories', {\r\n\t\t\t\t\t\t\t\t\t\ttype: 'GET',\r\n\t\t\t\t\t\t\t\t\t\tdata: {\r\n\t\t\t\t\t\t\t\t\t\t\t_ajax_nonce: opts.nonce,\r\n\t\t\t\t\t\t\t\t\t\t\taction: \"get_google_categories\",\r\n\t\t\t\t\t\t\t\t\t\t\tprovider: provider\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t}).then(function (r) {\r\n\t\t\t\t\t\t\t\t\t\tgoogleCategories = r;\r\n\t\t\t\t\t\t\t\t\t\tcb(googleCategories);\r\n\t\t\t\t\t\t\t\t\t\tvalueColumn.find('.spinner').remove();\r\n\t\t\t\t\t\t\t\t\t}).fail(helper.ajax_fail);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tcb(googleCategories);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (attribute.val() !== 'current_category' && valueColumn.find('input.wf_default').length === 0) {\r\n\t\t\t\t\t\tvalueColumn.find('span').remove();\r\n\t\t\t\t\t\tvalueColumn.append('<input autocomplete=\"off\" class=\"wf_default wf_attributes\" type=\"text\" name=\"default[]\" value=\"\">');\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tif (type.val() !== 'pattern') {\r\n\t\t\t\t\t\t\tvalueColumn.find('input.wf_default').hide();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.on('change', '#feedType,#provider', function () {\r\n\t\t\t\tlet type = $('#feedType').val(),\r\n\t\t\t\t\tprovider = $('#provider').val(),\r\n\t\t\t\t\titemWrapper = $('.itemWrapper'),\r\n\t\t\t\t\twf_csv_txt = $('.wf_csvtxt');\r\n\t\t\t\t\r\n\t\t\t\t// noinspection JSUnresolvedVariable\r\n\t\t\t\tif (type !== '' && helper.in_array(provider, opts.form.item_wrapper_hidden)) {\r\n\t\t\t\t\titemWrapper.hide();\r\n\t\t\t\t} else if (type === 'xml') {\r\n\t\t\t\t\titemWrapper.show();\r\n\t\t\t\t\twf_csv_txt.hide();\r\n\t\t\t\t} else if (type === 'csv' || type === 'txt') {\r\n\t\t\t\t\titemWrapper.hide();\r\n\t\t\t\t\twf_csv_txt.show();\r\n\t\t\t\t} else {\r\n\t\t\t\t\titemWrapper.hide();\r\n\t\t\t\t\twf_csv_txt.hide();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.trigger('change');\r\n\t});\r\n})(jQuery, window, document, wp.ajax, wpf_ajax_obj);\r\n"]}
admin/partials/woo-feed-status.php ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Status Page
4
+ *
5
+ * @link https://webappick.com/
6
+ * @since 5.1.7
7
+ * @version 5.1.6
8
+ *
9
+ * @package Woo_Feed
10
+ * @subpackage Woo_Feed/admin/partial
11
+ * @author Ohidul Islam <wahid@webappick.com>
12
+ */
13
+ ?>
14
+ <div class="wrap wapk-admin">
15
+ <div class="wapk-section">
16
+ <h1 class="wp-heading-inline"><?php _e( 'System Status', 'woo-feed' ); ?></h1>
17
+ <hr class="wp-header-end">
18
+ <?php WPFFWMessage()->displayMessages(); ?>
19
+ <div class="woo-feed-status-table-wrapper">
20
+ <table class="woo-feed-status-table">
21
+ <thead>
22
+ <tr>
23
+ <th><?php esc_html_e('Environment', 'woo-feed'); ?></th>
24
+ <th><?php esc_html_e('Value', 'woo-feed'); ?></th>
25
+ </tr>
26
+ </thead>
27
+ <tbody>
28
+ <?php
29
+ $system_datas = woo_feed_get_system_status();
30
+ foreach($system_datas as $key => $value) {
31
+ $system_name = array_key_first($value);
32
+
33
+ //for debug mode rename the value
34
+ if( "wp_debug_mode" === $key ) {
35
+ $value = $value ? 'On' : 'Off';
36
+ }
37
+
38
+ //when array get the first value
39
+ $system_value = is_array($value) ? array_value_first($value) : $value;
40
+ ?>
41
+ <tr data-status="<?php esc_attr($key); ?>">
42
+ <?php echo sprintf('<td>%s</td>', esc_html__($system_name, 'woo-feed')); ?>
43
+ <?php echo sprintf('<td>%s</td>', esc_html__($system_value, 'woo-feed')); ?>
44
+ </tr>
45
+ <?php
46
+ }
47
+ ?>
48
+ </tbody>
49
+ </table>
50
+ </div>
51
+ </div>
52
+ </div>
includes/classes/class-woo-feed-admin-message.php CHANGED
@@ -92,7 +92,16 @@ final class Woo_Feed_Message {
92
  * @return void
93
  */
94
  private function display_support_links() {
95
- ?>
 
 
 
 
 
 
 
 
 
96
  <br>
97
  <table class="wf-info-table widefat fixed">
98
  <tbody>
92
  * @return void
93
  */
94
  private function display_support_links() {
95
+ $hide_promotion = (int) get_option('woo_feed_hide_promotion');
96
+ ?>
97
+ <?php if( 1 !== $hide_promotion && empty($hide_promotion) ) { ?>
98
+ <div class="woo-feed-promotion">
99
+ <a href="https://webappick.com/plugin/woocommerce-product-feed-pro/">
100
+ <img src="<?php echo WOO_FEED_PLUGIN_URL; ?>admin/images/woo-feed-black-friday.svg" alt="Woo Feed Pro Black Friday">
101
+ </a>
102
+ <span class="dashicons dashicons-no-alt woo-feed-campaign-close-button" data-condition="1"></span>
103
+ </div>
104
+ <?php } ?>
105
  <br>
106
  <table class="wf-info-table widefat fixed">
107
  <tbody>
includes/helper.php CHANGED
@@ -2854,4 +2854,84 @@ if ( ! function_exists('woo_feed_get_terms_list_hierarchical_order') ) {
2854
  }
2855
 
2856
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2857
  // End of file helper.php.
2854
  }
2855
 
2856
 
2857
+ if( ! function_exists('woo_feed_get_system_status') ) {
2858
+ /**
2859
+ * Get configuration system status.
2860
+ *
2861
+ * @since 5.1.7
2862
+ * @return array
2863
+ */
2864
+ function woo_feed_get_system_status() {
2865
+ global $wp_version;
2866
+ $system_data = array();
2867
+ $php_time_limit = ini_get('max_execution_time');
2868
+ $wp_memory_limit = ini_get('memory_limit');
2869
+
2870
+ if( class_exists('WooCommerce') ) {
2871
+ $wc_version = WooCommerce::instance()->version;
2872
+
2873
+ //get total products
2874
+ $args = array(
2875
+ 'post_type' => 'product',
2876
+ 'post_status' => 'publish',
2877
+ 'posts_per_page' => -1
2878
+ );
2879
+
2880
+ $products = get_posts( $args );
2881
+ $total_product = count($products);
2882
+
2883
+ //get variations products
2884
+ $args = array(
2885
+ 'post_type' => 'product_variation',
2886
+ 'post_status' => array('publish'),
2887
+ );
2888
+
2889
+ $variations = get_posts( $args );
2890
+ $total_variations = count($variations);
2891
+
2892
+ $system_data = array(
2893
+ 'wp_version' => array('Wordpress Version' => $wp_version),
2894
+ 'woocommerce_version' => array('WooCommerce Version' => $wc_version),
2895
+ 'php_version' => array('PHP Version' => phpversion()),
2896
+ 'wp_memory_limit' => array('Wordpress Memory Limit' => $wp_memory_limit),
2897
+ 'php_time_limit' => array('PHP Time Limit' => $php_time_limit),
2898
+ 'wp_debug_mode' => array('Wordpress Debug Mode' => WP_DEBUG),
2899
+ 'plugin_version' => array('WooFeed Version' => WOO_FEED_FREE_VERSION),
2900
+ 'total_product' => array('Total Product' => $total_product),
2901
+ 'total_variation_product' => array('Total Variation Product' => $total_variations),
2902
+ );
2903
+ }
2904
+
2905
+ return apply_filters('woo_feed_config_status', $system_data);
2906
+
2907
+ }
2908
+ }
2909
+
2910
+ if( ! function_exists( 'woo_feed_hide_promotion' ) ) {
2911
+ /**
2912
+ * Update option to hide promotion.
2913
+ *
2914
+ * @param int _ajax_nonce nonce number.
2915
+ *
2916
+ * @since 5.1.7
2917
+ */
2918
+ function woo_feed_hide_promotion() {
2919
+ if ( isset( $_REQUEST['_ajax_nonce'] ) ) {
2920
+ $hide_promotion = update_option('woo_feed_hide_promotion', 1);
2921
+ $data = array(
2922
+ 'msg' => 'Hide promotion updated successfully.'
2923
+ );
2924
+ if($hide_promotion) {
2925
+ wp_send_json_success( $data );
2926
+ }else {
2927
+ wp_send_json_error( esc_html__( 'Something is wrong.', 'woo-feed' ) );
2928
+ }
2929
+ } else {
2930
+ wp_send_json_error( esc_html__( 'Invalid Request.', 'woo-feed' ) );
2931
+ }
2932
+ wp_die();
2933
+ }
2934
+ }
2935
+ add_action('wp_ajax_woo_feed_hide_promotion', 'woo_feed_hide_promotion');
2936
+
2937
  // End of file helper.php.
woo-feed.php CHANGED
@@ -10,7 +10,7 @@
10
  * Plugin Name: WooCommerce Product Feed
11
  * Plugin URI: https://webappick.com/
12
  * Description: Easily generate woocommerce product feed for any marketing channel like Google Shopping(Merchant), Facebook Remarketing, Bing, eBay & more. Support 100+ Merchants.
13
- * Version: 4.2.6
14
  * Author: WebAppick
15
  * Author URI: https://webappick.com/
16
  * License: GPL v2
@@ -38,7 +38,7 @@ if ( ! defined( 'WOO_FEED_FREE_VERSION' ) ) {
38
  * @var string
39
  * @since 3.1.6
40
  */
41
- define( 'WOO_FEED_FREE_VERSION', '4.2.5' );
42
  }
43
 
44
  if ( ! defined( 'WOO_FEED_FREE_FILE' ) ) {
@@ -818,6 +818,19 @@ if ( ! function_exists( 'woo_feed_update_feed_status' ) ) {
818
  wp_die();
819
  }
820
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
821
  // Render and handle settings page options.
822
  if ( ! function_exists( 'woo_feed_config_feed' ) ) {
823
  /**
10
  * Plugin Name: WooCommerce Product Feed
11
  * Plugin URI: https://webappick.com/
12
  * Description: Easily generate woocommerce product feed for any marketing channel like Google Shopping(Merchant), Facebook Remarketing, Bing, eBay & more. Support 100+ Merchants.
13
+ * Version: 4.2.7
14
  * Author: WebAppick
15
  * Author URI: https://webappick.com/
16
  * License: GPL v2
38
  * @var string
39
  * @since 3.1.6
40
  */
41
+ define( 'WOO_FEED_FREE_VERSION', '4.2.7' );
42
  }
43
 
44
  if ( ! defined( 'WOO_FEED_FREE_FILE' ) ) {
818
  wp_die();
819
  }
820
  }
821
+
822
+ // Render and handle status page options.
823
+ if ( ! function_exists( 'woo_feed_system_status' ) ) {
824
+ /**
825
+ * Feed Status Page
826
+ *
827
+ * @return void
828
+ */
829
+ function woo_feed_system_status() {
830
+ require WOO_FEED_FREE_ADMIN_PATH . 'partials/woo-feed-status.php';
831
+ }
832
+ }
833
+
834
  // Render and handle settings page options.
835
  if ( ! function_exists( 'woo_feed_config_feed' ) ) {
836
  /**