WooCommerce Variation Swatches - Version 1.1.14

Version Description

  • 11-04-2021 =

  • Fix: WPML product term meta issue.

  • Update: Backend CSS

Download this release

Release Info

Developer EmranAhmed
Plugin Icon 128x128 WooCommerce Variation Swatches
Version 1.1.14
Comparing to
See all releases

Code changes from version 1.1.13 to 1.1.14

README.txt CHANGED
@@ -27,70 +27,137 @@ In the free WooCommerce attribute variation plugin, besides creating size, brand
27
  ## Key Feature Comes with Variation Swatches For WooCommerce Plugin ##
28
 
29
  👉 Auto Convert All Variation Dropdowns to Button Swatch by Default
 
 
 
30
  [Live Demo & Documentation](http://j.mp/automatic-button-swatches-readme)
31
  <hr />
32
 
33
- 👉 Enable Color Swatches For Variable Product Attribute Variations
 
 
 
34
  [Live Demo & Documentation](http://bit.ly/3rd-demo-color-swatches-readme)
35
  <hr />
36
  👉 Enable Image Swatches For Variable Product Attribute Variations
 
 
 
37
  [Live Demo & Documentation](http://bit.ly/3rd-image-demo-swatches-readme)
38
  <hr />
39
  👉 Enable Label/Text/Button Swatches For Variable Product Attribute Variations
 
 
 
40
  [Live Demo & Documentation](http://bit.ly/3rd-label-demo-readme)
41
  <hr />
42
 
43
  👉 Convert Globally Created Attribute Variations Into Color, Image, and Label Swatches
 
 
 
44
  [Video Tutorial & Preview](http://bit.ly/label-swatch-free-read-youtube)
45
  <hr />
46
  👉 Option to Globally Select ROUNDED Attribute Variation Swatches Shape.
 
 
 
47
  [Live Demo & Documentation](http://bit.ly/3rd-round-shape-readme)
48
  <hr />
49
  👉 Option to Globally Select SQUARED Attribute Variation Swatches Shape.
 
 
 
50
  [Live Demo & Documentation](http://bit.ly/3rd-demo-square-readme)
51
  <hr />
52
  👉 Show Cross Sign For Out of Stock Variation Swatches (Up To 30 Variations)
 
 
 
53
  [Live Demo & Documentation](http://bit.ly/3rd-demo-cross-out-of-stock-readme)
54
  <hr />
55
  👉 Blur For Out of Stock Variation Swatches (Up To 30 Variations)
 
 
 
56
  [Live Demo & Documentation](http://bit.ly/3rd-demo-blur-readme)
57
  <hr />
58
  👉 Hide For Out of Stock Variation Swatches (Up To 30 Variations)
 
 
 
59
  [Live Demo & Documentation](http://bit.ly/3rd-demo-hide-out-stock-readme)
60
  <hr />
61
  👉 Product Page Swatches Size Control
 
 
 
62
  [Live Demo & Documentation](http://bit.ly/3rd-demo-size-control-readme)
63
  <hr />
64
  👉 Show Selected Variation Name Beside Label
 
 
 
65
  [Live Demo & Documentation](http://bit.ly/show-selected-variation-name-beside-label)
66
  <hr />
67
  👉 Flexible Swatches Tooltip Insert and Display settings
 
 
 
68
  [Live Demo & Documentation](https://bit.ly/tooltip-swatches-disable)
69
  <hr />
70
 
71
  👉 Convert Buttons Swatches to Dropdown (If It's needed)
 
 
 
72
  [Live Demo & Documentation](http://j.mp/button-to-dropdown-readme)
73
  <hr />
74
  👉 Compatible With Eelementor Page Builder Plugin
 
 
 
75
  [Video Demo & Documentation](http://j.mp/elementor-swatches)
76
  <hr />
77
  👉 Compatible With Printful WooCommerce Plugin
 
 
 
78
  [Video Demo & Documentation](http://j.mp/printful-swatches)
79
  <hr />
80
  👉 Compatible With Dokan MultiVendor WooCommerce Plugin
 
 
 
81
  [Video Demo & Documentation](http://j.mp/swatches-dokan)
82
  <hr />
83
  👉 Compatible With AliDropship WooCommerce Plugin
84
  [Video Demo & Documentation](http://j.mp/swatches-alidropship)
85
  <hr />
86
  👉 Reorder Product Attribute Variation Swatches
87
- 👉 Flexible Swatches Tooltip Insert and Display settings
 
 
88
  👉 Work on Variable Product Quick View Popup
89
- 👉 Compatible with popular WooCommerce themes and plugins
 
 
 
 
 
 
90
  👉 Frequently Updated And Secured Codebase
 
 
 
91
  👉 Option to disable default plugin stylesheet for theme developer
 
 
 
92
  👉 Compatible With Popular WooCommerce Plugins
93
 
 
 
94
  ## 🏆 Users' Feedback For Variation Swatches For WooCommerce ##
95
 
96
  [Tim Cumming, Founder at DevisionUK](https://wordpress.org/support/topic/outstanding-support-118):
@@ -117,6 +184,9 @@ In the free WooCommerce attribute variation plugin, besides creating size, brand
117
 
118
  [youtube https://www.youtube.com/watch?v=Ny9QBY_x9cA&t]
119
 
 
 
 
120
 
121
  👉 Auto Convert All Dropdowns to Image Swatch If Variation Has a Featured Image Set
122
  [Live Demo & Documentation](http://j.mp/auto-image-swatches-insideplugin)
@@ -327,7 +397,6 @@ In the free WooCommerce attribute variation plugin, besides creating size, brand
327
  </ul>
328
  </blockquote>
329
 
330
-
331
  == Installation ==
332
 
333
  ### Automatic Install From WordPress Dashboard
@@ -414,6 +483,11 @@ And your are ready to go.
414
 
415
  == Changelog ==
416
 
 
 
 
 
 
417
  = 1.1.13 - 10-03-2021 =
418
 
419
  * Add: WooCommerce and WordPress Compatibility
27
  ## Key Feature Comes with Variation Swatches For WooCommerce Plugin ##
28
 
29
  👉 Auto Convert All Variation Dropdowns to Button Swatch by Default
30
+
31
+ You can easily convert the variation select options from drop-down to buttons just by installing this WooCommerce Variation Swatches plugin. It will automatically convert your product variation select dropdowns to button swatches once the plugin is installed.
32
+
33
  [Live Demo & Documentation](http://j.mp/automatic-button-swatches-readme)
34
  <hr />
35
 
36
+ 👉 Enable Color Swatches For Variable Product Attribute Variations
37
+
38
+ For selling variable products, adding color variations is one of the best ways to bring more life into eCommerce stores. When you enable Color Swatches instead of traditional variation dropdown, you are making your customers easier to choose their desired products.
39
+
40
  [Live Demo & Documentation](http://bit.ly/3rd-demo-color-swatches-readme)
41
  <hr />
42
  👉 Enable Image Swatches For Variable Product Attribute Variations
43
+
44
+ Image swatches will provide a pleasant way to display variations of a product.This Image Variation Swatches plugin helps to display product variations easier and more stylishly.
45
+
46
  [Live Demo & Documentation](http://bit.ly/3rd-image-demo-swatches-readme)
47
  <hr />
48
  👉 Enable Label/Text/Button Swatches For Variable Product Attribute Variations
49
+
50
+ For showing available product variation-related details (such as colors and sizes), label/text/button variation swatches extensively boost conversion. It is one of the most effective ways to make all the available options visible for products.
51
+
52
  [Live Demo & Documentation](http://bit.ly/3rd-label-demo-readme)
53
  <hr />
54
 
55
  👉 Convert Globally Created Attribute Variations Into Color, Image, and Label Swatches
56
+
57
+ Globally created product attributes are used for many different products. With these Variation Swatches for WooCommerce plugin, you can globally create attributes into color, image, and label swatches. So, you don’t need to get inside each product of your store and enable variation swatches for them separately.
58
+
59
  [Video Tutorial & Preview](http://bit.ly/label-swatch-free-read-youtube)
60
  <hr />
61
  👉 Option to Globally Select ROUNDED Attribute Variation Swatches Shape.
62
+
63
+ The round shape is one of the unique and helpful features of this swatches plugin. You could grab the attention of buyers by using rounded attribute swatches. The feature helps convert potential buyers into sales.
64
+
65
  [Live Demo & Documentation](http://bit.ly/3rd-round-shape-readme)
66
  <hr />
67
  👉 Option to Globally Select SQUARED Attribute Variation Swatches Shape.
68
+
69
+ There are many scenarios where you need to show more than two or three characters in swatches or add color and image swatch exclusively. Instead of Round, using a Squared shape is the best practice in such situations.
70
+
71
  [Live Demo & Documentation](http://bit.ly/3rd-demo-square-readme)
72
  <hr />
73
  👉 Show Cross Sign For Out of Stock Variation Swatches (Up To 30 Variations)
74
+
75
+ By default, WooCommerce doesn't cross out any variations that are out of stock. However,this plugin would help if you avoided user frustration by never letting them pick any variation product they can't purchase.
76
+
77
  [Live Demo & Documentation](http://bit.ly/3rd-demo-cross-out-of-stock-readme)
78
  <hr />
79
  👉 Blur For Out of Stock Variation Swatches (Up To 30 Variations)
80
+
81
+ WooCommerce allows users to select the variation first, then let them know it's out of stock. But, that's time-consuming. When you use this swatches plugin, you can make blur for out-of-stock variation swatches up to 30 variations.
82
+
83
  [Live Demo & Documentation](http://bit.ly/3rd-demo-blur-readme)
84
  <hr />
85
  👉 Hide For Out of Stock Variation Swatches (Up To 30 Variations)
86
+
87
+ Showing out-of-stock variation seems unnecessary. So most of the store owners want to hide out-of-stock variation products. This swatches plugin is helpful, as it has the option to hide out-of-stock variation swatches products.
88
+
89
  [Live Demo & Documentation](http://bit.ly/3rd-demo-hide-out-stock-readme)
90
  <hr />
91
  👉 Product Page Swatches Size Control
92
+
93
+ The Variation Swatches plugin has the option to control the size of the product page swatches. It will help you to present product variants more engagingly and appealingly.
94
+
95
  [Live Demo & Documentation](http://bit.ly/3rd-demo-size-control-readme)
96
  <hr />
97
  👉 Show Selected Variation Name Beside Label
98
+
99
+ This Variable Swatches plugin can show selected single color, image, and button attribute swatches name beside the label. Displaying selected variation names beside labels will help users to know about the product in a better way.
100
+
101
  [Live Demo & Documentation](http://bit.ly/show-selected-variation-name-beside-label)
102
  <hr />
103
  👉 Flexible Swatches Tooltip Insert and Display settings
104
+
105
+ The plugin has awesome tooltip features. You can show extra information about the swatches. It helps the users to understand about the variation a more elaborately. Consequently, it helps to boosts sales and conversion exponentially.
106
+
107
  [Live Demo & Documentation](https://bit.ly/tooltip-swatches-disable)
108
  <hr />
109
 
110
  👉 Convert Buttons Swatches to Dropdown (If It's needed)
111
+
112
+ If you want to convert variation select dropdown into buttons. You don’t need to configure anything. Just you install the plugin and you can notice variation select dropdown is converted to buttons. You can disable this feature on your requirement when you need.
113
+
114
  [Live Demo & Documentation](http://j.mp/button-to-dropdown-readme)
115
  <hr />
116
  👉 Compatible With Eelementor Page Builder Plugin
117
+
118
+ Elementor works well with all the themes and plugins which respect the coding. The WooCommerce Variation Swatches plugin is compatible with the Elementor page builder plugin.
119
+
120
  [Video Demo & Documentation](http://j.mp/elementor-swatches)
121
  <hr />
122
  👉 Compatible With Printful WooCommerce Plugin
123
+
124
+ The Variation Swatches plugin is compatible with the Printful WooCommerce plugin. You can enable color swatches with Printful Technology when customizing your shop.
125
+
126
  [Video Demo & Documentation](http://j.mp/printful-swatches)
127
  <hr />
128
  👉 Compatible With Dokan MultiVendor WooCommerce Plugin
129
+
130
+ Dokan Multivendor WooCommerce plugin and its functionalities are compatible with beautiful color, image, and button Variation Swatches for WooCommerce Product Attributes.
131
+
132
  [Video Demo & Documentation](http://j.mp/swatches-dokan)
133
  <hr />
134
  👉 Compatible With AliDropship WooCommerce Plugin
135
  [Video Demo & Documentation](http://j.mp/swatches-alidropship)
136
  <hr />
137
  👉 Reorder Product Attribute Variation Swatches
138
+
139
+ The Attribute Variation Swatches plugin expands your possibilities for displaying variation swatches options. You can reorder product attribute variation swatches with ease.
140
+
141
  👉 Work on Variable Product Quick View Popup
142
+
143
+ With the help of the WooCommerce Attribute Swatches plugin, you can show swatches on the product details page and archive page. In addition,, you can provide shoppers with a “quick view” of the product.
144
+
145
+ 👉 Compatible with popular WooCommerce Themes
146
+
147
+ It is the only Variation Swatches plugin in the market that runs over 200K WooCommerce stores .The plugin is compatible with major themes in the market, including OceanWP, Flatsome, Divi and many more.
148
+
149
  👉 Frequently Updated And Secured Codebase
150
+
151
+ Our plugins are frequently updated with new features. We try our best to ensure that our plugin runs correctly on your site and keeps your site functional and secure.
152
+
153
  👉 Option to disable default plugin stylesheet for theme developer
154
+
155
+ Some plugins have styles that are not that easy to override. However, we provide the option to disable our default plugin's stylesheet and use your own stylesheet instead.
156
+
157
  👉 Compatible With Popular WooCommerce Plugins
158
 
159
+ There are many other useful plugins that serve different purposes, and many users will install at least a few. Our Variation Swatches plugin is compatible with the most popular WooCommerce plugins.
160
+
161
  ## 🏆 Users' Feedback For Variation Swatches For WooCommerce ##
162
 
163
  [Tim Cumming, Founder at DevisionUK](https://wordpress.org/support/topic/outstanding-support-118):
184
 
185
  [youtube https://www.youtube.com/watch?v=Ny9QBY_x9cA&t]
186
 
187
+ === How To Show WooCommerce Variation Swatches on Shop Page ===
188
+
189
+ [youtube https://www.youtube.com/watch?v=1IhEZiGzJHs]
190
 
191
  👉 Auto Convert All Dropdowns to Image Swatch If Variation Has a Featured Image Set
192
  [Live Demo & Documentation](http://j.mp/auto-image-swatches-insideplugin)
397
  </ul>
398
  </blockquote>
399
 
 
400
  == Installation ==
401
 
402
  ### Automatic Install From WordPress Dashboard
483
 
484
  == Changelog ==
485
 
486
+ = 1.1.14 - 11-04-2021 =
487
+
488
+ * Fix: WPML product term meta issue.
489
+ * Update: Backend CSS
490
+
491
  = 1.1.13 - 10-03-2021 =
492
 
493
  * Add: WooCommerce and WordPress Compatibility
assets/css/admin.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .button.button-danger {
@@ -326,8 +326,8 @@
326
  }
327
 
328
  .woo-variation-swatches-pro_tab.pro-inactive a {
329
- background-color: #FF9800;
330
- color: #FFFFFF;
331
  }
332
 
333
  .wvs-settings-field-content {
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .button.button-danger {
326
  }
327
 
328
  .woo-variation-swatches-pro_tab.pro-inactive a {
329
+ background-color: var(--wc-primary);
330
+ color: var(--wc-content-bg);
331
  }
332
 
333
  .wvs-settings-field-content {
assets/css/admin.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
- .button.button-danger{color:#fff;background-color:#af2d2b;border-color:#a62d2b;box-shadow:0 1px 0 #a72d2b;vertical-align:top}.button.button-danger.active,.button.button-danger:active,.button.button-danger:focus,.button.button-danger:hover{color:#fff;background:#c9302c}[data-wvsdepends]{display:none}.meta-image-field-wrapper{display:table}.meta-image-field-wrapper .button{margin:5px 0;display:block}.meta-image-field-wrapper .image-preview{display:table-cell;width:60px;padding-right:10px}.meta-image-field-wrapper .button-wrapper{display:table-cell;vertical-align:top}.gwp-rate-stars{display:inline-block;color:#ffb900;position:relative;top:3px}.gwp-rate-stars svg,.gwp-rate-stars svg a{fill:#ffb900;stroke:#ffb900;cursor:pointer}.gwp-rate-stars svg:hover,.gwp-rate-stars svg a:hover{fill:#ffb900}.gwp-rate-stars svg:hover~svg,.gwp-rate-stars svg:hover~svg a,.gwp-rate-stars svg a:hover~svg,.gwp-rate-stars svg a:hover~svg a{fill:none}#wvs-meta-preview{width:30px}.wvs-preview{width:30px;height:30px;border:1px solid #000}#woo-variation-swatches-settings-wrap #settings-tabs{margin-top:30px}#woo-variation-swatches-settings-wrap #settings-tabs h2{font-size:1.5em;margin-bottom:10px}#woo-variation-swatches-settings-wrap #settings-tabs .form-table{margin-top:15px;background:#fff;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.07),0 1px 1px rgba(0,0,0,.04)}#woo-variation-swatches-settings-wrap #settings-tabs .form-table tr{border-bottom:1px solid #eee;display:block}#woo-variation-swatches-settings-wrap #settings-tabs .form-table tr:last-child{border:0}#woo-variation-swatches-settings-wrap #settings-tabs .form-table th{padding:20px 10px 20px 20px}#woo-variation-swatches-settings-wrap #settings-tabs #special .form-table,#woo-variation-swatches-settings-wrap #settings-tabs #style .form-table{margin-bottom:30px}#woo-variation-swatches-settings-wrap #tutorial .form-table tr{padding:0!important}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper img{width:100%}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper ul{margin:0}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper li{overflow:hidden;display:flex;align-items:center;padding:50px 30px;margin:0;border-bottom:1px solid #ddd;position:relative}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper li:last-child{border:0}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper,#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper{float:left;padding:0 20px;box-sizing:border-box}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper{width:60%}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper{width:40%}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper h3{margin:0 0 20px;font-size:1.5em}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-contents{font-size:15px;line-height:1.5em;margin-bottom:20px}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button{border-radius:3px;line-height:1;padding:13px 20px;font-size:13px;height:40px;box-shadow:none;text-shadow:none}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button:active{-webkit-transform:translateY(0);transform:translateY(0)}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-live-demo{background-color:#f44336;color:#fff;border:0}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-live-demo:hover{background:#c71609}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-docs{background-color:#36373a;color:#fff;border:0}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-docs:hover{background:#5d5e61;border-color:#5d5e61}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-pro{background-color:#39b54a;color:#fff;border:1px solid #39b54a}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-pro:hover{background:#3fc851;border-color:#3fc851}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper{position:relative}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper .ribbon{position:absolute;left:-5px;top:-5px;z-index:1;overflow:hidden;width:75px;height:75px;text-align:right;margin:1px 22px}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper .ribbon span{font-size:10px;font-weight:700;color:#fff;text-transform:uppercase;text-align:center;line-height:20px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);width:100px;display:block;background:#bc0808;box-shadow:0 3px 10px -5px #000;position:absolute;top:19px;left:-21px}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper .ribbon span:before{content:"";position:absolute;left:0;top:100%;z-index:-1;border-left:3px solid #8f0808;border-right:3px solid transparent;border-bottom:3px solid transparent;border-top:3px solid #8f0808}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper .ribbon span:after{content:"";position:absolute;right:0;top:100%;z-index:-1;border-left:3px solid transparent;border-right:3px solid #8f0808;border-bottom:3px solid transparent;border-top:3px solid #8f0808}#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-new-text],#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-pro-text]{position:relative}#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-new-text]:after,#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-new-text]:before,#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-pro-text]:after,#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-pro-text]:before{-webkit-transform:translateY(-50%);transform:translateY(-50%);position:absolute;right:5px;top:0;color:#fff;font-size:8px;font-weight:400;text-transform:uppercase;padding:3px 5px;line-height:1;border-radius:10px}#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-pro-text]:before{content:attr(data-pro-text);background:#f44336}#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-new-text]:after{content:attr(data-new-text);background:#2196f3}#woo-variation-swatches-settings-wrap .wvs-setting-tab .wvs-new-feature-tick{position:relative;right:-5px;top:-2px;color:#fff;background:#ff5722;font-size:8px;font-weight:400;text-transform:uppercase;padding:3px 5px;line-height:1;border-radius:10px}#woo-variation-swatches-settings-wrap .wvs-setting-tab .description{font-size:small;font-style:italic}.woo-variation-swatches-pro_tab.pro-inactive a{background-color:#ff9800;color:#fff}.wvs-settings-field-content{position:relative}.wvs-show-pro-label{display:block}.wvs-show-pro-label span{padding:2px 4px;background:#fa0000;color:#fff;text-transform:uppercase;font-size:9px;border-radius:2px}.wvs-show-pro-contents{display:inline-block;color:#fa0000;font-size:11px;text-transform:uppercase;font-style:italic;text-decoration:underline;padding:0 5px}.wvs-button-wrapper .reset{color:#a00}
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
+ .button.button-danger{color:#fff;background-color:#af2d2b;border-color:#a62d2b;box-shadow:0 1px 0 #a72d2b;vertical-align:top}.button.button-danger.active,.button.button-danger:active,.button.button-danger:focus,.button.button-danger:hover{color:#fff;background:#c9302c}[data-wvsdepends]{display:none}.meta-image-field-wrapper{display:table}.meta-image-field-wrapper .button{margin:5px 0;display:block}.meta-image-field-wrapper .image-preview{display:table-cell;width:60px;padding-right:10px}.meta-image-field-wrapper .button-wrapper{display:table-cell;vertical-align:top}.gwp-rate-stars{display:inline-block;color:#ffb900;position:relative;top:3px}.gwp-rate-stars svg,.gwp-rate-stars svg a{fill:#ffb900;stroke:#ffb900;cursor:pointer}.gwp-rate-stars svg:hover,.gwp-rate-stars svg a:hover{fill:#ffb900}.gwp-rate-stars svg:hover~svg,.gwp-rate-stars svg:hover~svg a,.gwp-rate-stars svg a:hover~svg,.gwp-rate-stars svg a:hover~svg a{fill:none}#wvs-meta-preview{width:30px}.wvs-preview{width:30px;height:30px;border:1px solid #000}#woo-variation-swatches-settings-wrap #settings-tabs{margin-top:30px}#woo-variation-swatches-settings-wrap #settings-tabs h2{font-size:1.5em;margin-bottom:10px}#woo-variation-swatches-settings-wrap #settings-tabs .form-table{margin-top:15px;background:#fff;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.07),0 1px 1px rgba(0,0,0,.04)}#woo-variation-swatches-settings-wrap #settings-tabs .form-table tr{border-bottom:1px solid #eee;display:block}#woo-variation-swatches-settings-wrap #settings-tabs .form-table tr:last-child{border:0}#woo-variation-swatches-settings-wrap #settings-tabs .form-table th{padding:20px 10px 20px 20px}#woo-variation-swatches-settings-wrap #settings-tabs #special .form-table,#woo-variation-swatches-settings-wrap #settings-tabs #style .form-table{margin-bottom:30px}#woo-variation-swatches-settings-wrap #tutorial .form-table tr{padding:0!important}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper img{width:100%}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper ul{margin:0}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper li{overflow:hidden;display:flex;align-items:center;padding:50px 30px;margin:0;border-bottom:1px solid #ddd;position:relative}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper li:last-child{border:0}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper,#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper{float:left;padding:0 20px;box-sizing:border-box}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper{width:60%}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper{width:40%}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper h3{margin:0 0 20px;font-size:1.5em}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-contents{font-size:15px;line-height:1.5em;margin-bottom:20px}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button{border-radius:3px;line-height:1;padding:13px 20px;font-size:13px;height:40px;box-shadow:none;text-shadow:none}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button:active{-webkit-transform:translateY(0);transform:translateY(0)}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-live-demo{background-color:#f44336;color:#fff;border:0}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-live-demo:hover{background:#c71609}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-docs{background-color:#36373a;color:#fff;border:0}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-docs:hover{background:#5d5e61;border-color:#5d5e61}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-pro{background-color:#39b54a;color:#fff;border:1px solid #39b54a}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-description-wrapper .tutorial-buttons .button.button-pro:hover{background:#3fc851;border-color:#3fc851}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper{position:relative}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper .ribbon{position:absolute;left:-5px;top:-5px;z-index:1;overflow:hidden;width:75px;height:75px;text-align:right;margin:1px 22px}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper .ribbon span{font-size:10px;font-weight:700;color:#fff;text-transform:uppercase;text-align:center;line-height:20px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);width:100px;display:block;background:#bc0808;box-shadow:0 3px 10px -5px #000;position:absolute;top:19px;left:-21px}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper .ribbon span:before{content:"";position:absolute;left:0;top:100%;z-index:-1;border-left:3px solid #8f0808;border-right:3px solid transparent;border-bottom:3px solid transparent;border-top:3px solid #8f0808}#woo-variation-swatches-settings-wrap #tutorial .gwp-tutorials-wrapper .tutorial-image-wrapper .ribbon span:after{content:"";position:absolute;right:0;top:100%;z-index:-1;border-left:3px solid transparent;border-right:3px solid #8f0808;border-bottom:3px solid transparent;border-top:3px solid #8f0808}#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-new-text],#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-pro-text]{position:relative}#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-new-text]:after,#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-new-text]:before,#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-pro-text]:after,#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-pro-text]:before{-webkit-transform:translateY(-50%);transform:translateY(-50%);position:absolute;right:5px;top:0;color:#fff;font-size:8px;font-weight:400;text-transform:uppercase;padding:3px 5px;line-height:1;border-radius:10px}#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-pro-text]:before{content:attr(data-pro-text);background:#f44336}#woo-variation-swatches-settings-wrap .nav-tab-wrapper [data-new-text]:after{content:attr(data-new-text);background:#2196f3}#woo-variation-swatches-settings-wrap .wvs-setting-tab .wvs-new-feature-tick{position:relative;right:-5px;top:-2px;color:#fff;background:#ff5722;font-size:8px;font-weight:400;text-transform:uppercase;padding:3px 5px;line-height:1;border-radius:10px}#woo-variation-swatches-settings-wrap .wvs-setting-tab .description{font-size:small;font-style:italic}.woo-variation-swatches-pro_tab.pro-inactive a{background-color:var(--wc-primary);color:var(--wc-content-bg)}.wvs-settings-field-content{position:relative}.wvs-show-pro-label{display:block}.wvs-show-pro-label span{padding:2px 4px;background:#fa0000;color:#fff;text-transform:uppercase;font-size:9px;border-radius:2px}.wvs-show-pro-contents{display:inline-block;color:#fa0000;font-size:11px;text-transform:uppercase;font-style:italic;text-decoration:underline;padding:0 5px}.wvs-button-wrapper .reset{color:#a00}
assets/css/frontend-tooltip.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .woo-variation-swatches .radio-variable-item[data-wvstooltip] {
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .woo-variation-swatches .radio-variable-item[data-wvstooltip] {
assets/css/frontend-tooltip.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .woo-variation-swatches .radio-variable-item[data-wvstooltip]{position:relative}.woo-variation-swatches .radio-variable-item[data-wvstooltip]:after,.woo-variation-swatches .radio-variable-item[data-wvstooltip]:before{left:8px;bottom:100%}.woo-variation-swatches .radio-variable-item .image-tooltip-wrapper{-webkit-transform:translateX(-50%);transform:translateX(-50%);left:8px}.woo-variation-swatches.wvs-archive-align-center .wvs-archive-variation-wrapper .radio-variable-item[data-wvstooltip]:after,.woo-variation-swatches.wvs-archive-align-center .wvs-archive-variation-wrapper .radio-variable-item[data-wvstooltip]:before{left:50%}.woo-variation-swatches.wvs-archive-align-center .wvs-archive-variation-wrapper .radio-variable-item .image-tooltip-wrapper{-webkit-transform:translateX(-50%);transform:translateX(-50%);left:50%}.woo-variation-swatches.wvs-archive-align-right .wvs-archive-variation-wrapper .radio-variable-item[data-wvstooltip]:after,.woo-variation-swatches.wvs-archive-align-right .wvs-archive-variation-wrapper .radio-variable-item[data-wvstooltip]:before{left:100%}.woo-variation-swatches.wvs-archive-align-right .wvs-archive-variation-wrapper .radio-variable-item .image-tooltip-wrapper{-webkit-transform:translateX(-50%);transform:translateX(-50%);left:100%}.wvs-has-image-tooltip,[data-wvstooltip]{position:relative;cursor:pointer;outline:none}.wvs-has-image-tooltip:after,.wvs-has-image-tooltip:before,[data-wvstooltip]:after,[data-wvstooltip]:before{visibility:hidden;opacity:0;pointer-events:none;box-sizing:inherit;position:absolute;bottom:130%;left:50%;z-index:999;-webkit-transform:translateZ(0);transform:translateZ(0);box-shadow:0 7px 15px rgba(0,0,0,.3);transition:opacity .3s linear,bottom .3s linear}.wvs-has-image-tooltip:before,[data-wvstooltip]:before{margin-bottom:5px;-webkit-transform:translateX(-50%);transform:translateX(-50%);padding:7px;border-radius:3px;background-color:#000;background-color:rgba(51,51,51,.9);color:#fff;text-align:center;font-size:14px;line-height:1.2}[data-wvstooltip]:before{min-width:100px;content:attr(data-wvstooltip)}.wvs-has-image-tooltip:before{content:attr(data-title);background-image:var(--tooltip-background);background-repeat:no-repeat;width:var(--tooltip-width);height:calc(var(--tooltip-height) + 20px);background-size:contain;border:2px solid;background-position:top;padding:0;line-height:20px;display:flex;align-items:flex-end;justify-content:center;font-size:12px;-webkit-backface-visibility:hidden;backface-visibility:hidden}.wvs-has-image-tooltip:after,[data-wvstooltip]:after{margin-left:-5px;width:0;border-top:5px solid #000;border-top:5px solid rgba(51,51,51,.9);border-right:5px solid transparent;border-left:5px solid transparent;content:" ";font-size:0;line-height:0}.wvs-has-image-tooltip:hover:after,.wvs-has-image-tooltip:hover:before,[data-wvstooltip]:hover:after,[data-wvstooltip]:hover:before{bottom:120%;visibility:visible;opacity:1}
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .woo-variation-swatches .radio-variable-item[data-wvstooltip]{position:relative}.woo-variation-swatches .radio-variable-item[data-wvstooltip]:after,.woo-variation-swatches .radio-variable-item[data-wvstooltip]:before{left:8px;bottom:100%}.woo-variation-swatches .radio-variable-item .image-tooltip-wrapper{-webkit-transform:translateX(-50%);transform:translateX(-50%);left:8px}.woo-variation-swatches.wvs-archive-align-center .wvs-archive-variation-wrapper .radio-variable-item[data-wvstooltip]:after,.woo-variation-swatches.wvs-archive-align-center .wvs-archive-variation-wrapper .radio-variable-item[data-wvstooltip]:before{left:50%}.woo-variation-swatches.wvs-archive-align-center .wvs-archive-variation-wrapper .radio-variable-item .image-tooltip-wrapper{-webkit-transform:translateX(-50%);transform:translateX(-50%);left:50%}.woo-variation-swatches.wvs-archive-align-right .wvs-archive-variation-wrapper .radio-variable-item[data-wvstooltip]:after,.woo-variation-swatches.wvs-archive-align-right .wvs-archive-variation-wrapper .radio-variable-item[data-wvstooltip]:before{left:100%}.woo-variation-swatches.wvs-archive-align-right .wvs-archive-variation-wrapper .radio-variable-item .image-tooltip-wrapper{-webkit-transform:translateX(-50%);transform:translateX(-50%);left:100%}.wvs-has-image-tooltip,[data-wvstooltip]{position:relative;cursor:pointer;outline:none}.wvs-has-image-tooltip:after,.wvs-has-image-tooltip:before,[data-wvstooltip]:after,[data-wvstooltip]:before{visibility:hidden;opacity:0;pointer-events:none;box-sizing:inherit;position:absolute;bottom:130%;left:50%;z-index:999;-webkit-transform:translateZ(0);transform:translateZ(0);box-shadow:0 7px 15px rgba(0,0,0,.3);transition:opacity .3s linear,bottom .3s linear}.wvs-has-image-tooltip:before,[data-wvstooltip]:before{margin-bottom:5px;-webkit-transform:translateX(-50%);transform:translateX(-50%);padding:7px;border-radius:3px;background-color:#000;background-color:rgba(51,51,51,.9);color:#fff;text-align:center;font-size:14px;line-height:1.2}[data-wvstooltip]:before{min-width:100px;content:attr(data-wvstooltip)}.wvs-has-image-tooltip:before{content:attr(data-title);background-image:var(--tooltip-background);background-repeat:no-repeat;width:var(--tooltip-width);height:calc(var(--tooltip-height) + 20px);background-size:contain;border:2px solid;background-position:top;padding:0;line-height:20px;display:flex;align-items:flex-end;justify-content:center;font-size:12px;-webkit-backface-visibility:hidden;backface-visibility:hidden}.wvs-has-image-tooltip:after,[data-wvstooltip]:after{margin-left:-5px;width:0;border-top:5px solid #000;border-top:5px solid rgba(51,51,51,.9);border-right:5px solid transparent;border-left:5px solid transparent;content:" ";font-size:0;line-height:0}.wvs-has-image-tooltip:hover:after,.wvs-has-image-tooltip:hover:before,[data-wvstooltip]:hover:after,[data-wvstooltip]:hover:before{bottom:120%;visibility:visible;opacity:1}
assets/css/frontend.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .woo-variation-swatches .woo-variation-raw-select,
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .woo-variation-swatches .woo-variation-raw-select,
assets/css/frontend.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .woo-variation-swatches .woo-variation-raw-select,.woo-variation-swatches .woo-variation-raw-select+.select2{display:none!important}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color>a{display:inline-block;position:relative}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color>a .wvs-widget-item-wrapper{display:inline-block}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color .item{display:inline-block;float:left;padding:9px;margin:0 4px;box-shadow:0 0 0 1px rgba(0,0,0,.5);height:20px;width:20px}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color .text{display:inline-block}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color .text :after{content:"";display:inline;clear:both}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color.woocommerce-widget-layered-nav-list__item--chosen .item{box-shadow:0 0 0 1px rgba(0,0,0,.9)}.woo-variation-swatches .variable-items-wrapper{display:flex;flex-wrap:wrap;margin:0!important;padding:0;list-style:none}.woo-variation-swatches .variable-items-wrapper .variable-item{margin:0;padding:0;list-style:none;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;outline:none}.woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-contents{display:flex;width:100%;height:100%}@supports (display:contents){.woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-contents{display:contents}}.woo-variation-swatches .variable-items-wrapper .variable-item.variation-disabled{display:none!important}.woo-variation-swatches .variable-items-wrapper .variable-item img{margin:0;padding:0;width:100%;height:100%;pointer-events:none}.woo-variation-swatches .variable-items-wrapper .variable-item span{pointer-events:none}.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper{display:block}.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper .radio-variable-item{box-sizing:border-box;display:block;list-style:none;cursor:pointer;margin:0}.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper .radio-variable-item input,.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper .radio-variable-item label{cursor:pointer}.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper .radio-variable-item input{margin-right:5px}.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper .radio-variable-item label{font-weight:400;font-size:14px;display:inline-block}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item){box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;align-items:center;background-color:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.3);padding:2px;margin:4px 8px 4px 0}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item):last-of-type{margin-right:0}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item):hover{box-shadow:0 0 0 3px rgba(0,0,0,.1)}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item):focus{box-shadow:0 0 0 3px rgba(0,0,0,.3)}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).selected,.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).selected:hover{box-shadow:0 0 0 2px rgba(0,0,0,.9)}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item .variable-item-span-color{width:100%;height:100%;position:relative}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item .variable-item-span-color:after{position:absolute;content:"";width:100%;height:100%;top:0;left:0;box-shadow:inset 0 0 1px 0 rgba(0,0,0,.5)}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item{text-align:center}.woo-variation-swatches.wvs-style-rounded .variable-items-wrapper .variable-item,.woo-variation-swatches.wvs-style-rounded .variable-items-wrapper .variable-item .variable-item-span,.woo-variation-swatches.wvs-style-rounded .variable-items-wrapper .variable-item .variable-item-span:after,.woo-variation-swatches.wvs-style-rounded .variable-items-wrapper .variable-item img{border-radius:100%}.woo-variation-swatches.wvs-style-squared .variable-items-wrapper .variable-item{border-radius:2px}.woo-variation-swatches.wvs-style-squared .variable-items-wrapper .variable-item.button-variable-item{width:auto}.woo-variation-swatches.wvs-style-squared .variable-items-wrapper .variable-item.button-variable-item .variable-item-span{padding:0 5px}.woo-variation-swatches.wvs-style-squared .variable-items-wrapper .variable-item.color-variable-item span:after{border-radius:0}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover{box-shadow:0 0 0 1px rgba(0,0,0,.05);pointer-events:none;cursor:not-allowed;position:relative;overflow:hidden}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover span,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled span,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover span,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock span{opacity:.3}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents:before{position:absolute;content:" "!important;width:100%;height:1px;background:red!important;left:0;right:0;bottom:0;top:50%;visibility:visible;opacity:1;border:0;margin:0!important;padding:0!important;min-width:auto;-webkit-transform-origin:center;transform-origin:center;z-index:0}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents:before{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents:after{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover{overflow:visible;pointer-events:auto;cursor:pointer}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover span,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock span{opacity:.6}.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:hover input,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:hover label,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled input,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled label{cursor:not-allowed;text-decoration:line-through;opacity:.5}.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:after,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:before,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:hover:after,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:hover:before{display:none}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled:hover,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover{pointer-events:none;box-shadow:0 0 0 1px rgba(0,0,0,.05);position:relative;overflow:hidden;cursor:not-allowed}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled:hover img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled:hover span,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled span,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover span,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock span{opacity:.3}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover{overflow:visible;pointer-events:auto;cursor:pointer}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover span,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock span{opacity:.6}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled:hover{overflow:hidden}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled:hover input,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled:hover label,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled input,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled label{pointer-events:none;opacity:.3}.woo-variation-swatches.wvs-attr-behavior-hide .variable-item.disabled{opacity:0;visibility:hidden;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center;transform-origin:center;width:0!important;height:0!important;padding:0!important;margin:0!important;min-width:0!important;min-height:0!important}.woo-variation-swatches.wvs-attr-behavior-hide .variable-item.disabled.radio-variable-item{width:auto!important}.woo-variation-swatches.rtl .variable-items-wrapper .variable-item{text-align:right}.woo-variation-swatches.rtl .variable-items-wrapper .variable-item:not(.radio-variable-item){margin:4px 0 4px 8px}.woo-variation-swatches.rtl .variable-items-wrapper.radio-variable-wrapper .radio-variable-item input{margin-right:0;margin-left:5px}.woo-variation-swatches.woocommerce .product.elementor table.variations td.value:before{display:none!important}.woo-variation-swatches.woo-variation-swatches-ie11 .variable-items-wrapper{display:block!important}.woo-variation-swatches.woo-variation-swatches-ie11 .variable-items-wrapper .variable-item:not(.radio-variable-item){float:left}.woo-variation-swatches.wvs-show-label .variations td{display:block;width:auto!important}.woo-variation-swatches.wvs-show-label .variations td .woo-selected-variation-item-name,.woo-variation-swatches.wvs-show-label .variations td label{display:inline-block;margin:0 2px}
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .woo-variation-swatches .woo-variation-raw-select,.woo-variation-swatches .woo-variation-raw-select+.select2{display:none!important}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color>a{display:inline-block;position:relative}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color>a .wvs-widget-item-wrapper{display:inline-block}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color .item{display:inline-block;float:left;padding:9px;margin:0 4px;box-shadow:0 0 0 1px rgba(0,0,0,.5);height:20px;width:20px}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color .text{display:inline-block}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color .text :after{content:"";display:inline;clear:both}.woo-variation-swatches .wvs-widget-layered-nav-list__item-color.woocommerce-widget-layered-nav-list__item--chosen .item{box-shadow:0 0 0 1px rgba(0,0,0,.9)}.woo-variation-swatches .variable-items-wrapper{display:flex;flex-wrap:wrap;margin:0!important;padding:0;list-style:none}.woo-variation-swatches .variable-items-wrapper .variable-item{margin:0;padding:0;list-style:none;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;outline:none}.woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-contents{display:flex;width:100%;height:100%}@supports (display:contents){.woo-variation-swatches .variable-items-wrapper .variable-item .variable-item-contents{display:contents}}.woo-variation-swatches .variable-items-wrapper .variable-item.variation-disabled{display:none!important}.woo-variation-swatches .variable-items-wrapper .variable-item img{margin:0;padding:0;width:100%;height:100%;pointer-events:none}.woo-variation-swatches .variable-items-wrapper .variable-item span{pointer-events:none}.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper{display:block}.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper .radio-variable-item{box-sizing:border-box;display:block;list-style:none;cursor:pointer;margin:0}.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper .radio-variable-item input,.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper .radio-variable-item label{cursor:pointer}.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper .radio-variable-item input{margin-right:5px}.woo-variation-swatches .variable-items-wrapper.radio-variable-wrapper .radio-variable-item label{font-weight:400;font-size:14px;display:inline-block}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item){box-sizing:border-box;cursor:pointer;display:flex;justify-content:center;align-items:center;background-color:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.3);padding:2px;margin:4px 8px 4px 0}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item):last-of-type{margin-right:0}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item):hover{box-shadow:0 0 0 3px rgba(0,0,0,.1)}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item):focus{box-shadow:0 0 0 3px rgba(0,0,0,.3)}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).selected,.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).selected:hover{box-shadow:0 0 0 2px rgba(0,0,0,.9)}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item .variable-item-span-color{width:100%;height:100%;position:relative}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item .variable-item-span-color:after{position:absolute;content:"";width:100%;height:100%;top:0;left:0;box-shadow:inset 0 0 1px 0 rgba(0,0,0,.5)}.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item{text-align:center}.woo-variation-swatches.wvs-style-rounded .variable-items-wrapper .variable-item,.woo-variation-swatches.wvs-style-rounded .variable-items-wrapper .variable-item .variable-item-span,.woo-variation-swatches.wvs-style-rounded .variable-items-wrapper .variable-item .variable-item-span:after,.woo-variation-swatches.wvs-style-rounded .variable-items-wrapper .variable-item img{border-radius:100%}.woo-variation-swatches.wvs-style-squared .variable-items-wrapper .variable-item{border-radius:2px}.woo-variation-swatches.wvs-style-squared .variable-items-wrapper .variable-item.button-variable-item{width:auto}.woo-variation-swatches.wvs-style-squared .variable-items-wrapper .variable-item.button-variable-item .variable-item-span{padding:0 5px}.woo-variation-swatches.wvs-style-squared .variable-items-wrapper .variable-item.color-variable-item span:after{border-radius:0}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover{box-shadow:0 0 0 1px rgba(0,0,0,.05);pointer-events:none;cursor:not-allowed;position:relative;overflow:hidden}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover span,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled span,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover span,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock span{opacity:.3}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents:before{position:absolute;content:" "!important;width:100%;height:1px;background:red!important;left:0;right:0;bottom:0;top:50%;visibility:visible;opacity:1;border:0;margin:0!important;padding:0!important;min-width:auto;-webkit-transform-origin:center;transform-origin:center;z-index:0}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents:before,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents:before{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents:after,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents:after{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover{overflow:visible;pointer-events:auto;cursor:pointer}.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock:hover span,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock img,.woo-variation-swatches.wvs-attr-behavior-blur .variable-item:not(.radio-variable-item).out-of-stock span{opacity:.6}.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:hover input,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:hover label,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled input,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled label{cursor:not-allowed;text-decoration:line-through;opacity:.5}.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:after,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:before,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:hover:after,.woo-variation-swatches.wvs-attr-behavior-blur .radio-variable-item.disabled:hover:before{display:none}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled:hover,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover{pointer-events:none;box-shadow:0 0 0 1px rgba(0,0,0,.05);position:relative;overflow:hidden;cursor:not-allowed}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled:hover img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled:hover span,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).disabled span,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover span,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock span{opacity:.3}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover{overflow:visible;pointer-events:auto;cursor:pointer}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover .variable-item-contents,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock:hover span,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock img,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .variable-item:not(.radio-variable-item).out-of-stock span{opacity:.6}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled:hover{overflow:hidden}.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled:hover input,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled:hover label,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled input,.woo-variation-swatches.wvs-attr-behavior-blur-no-cross .radio-variable-item.disabled label{pointer-events:none;opacity:.3}.woo-variation-swatches.wvs-attr-behavior-hide .variable-item.disabled{opacity:0;visibility:hidden;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center;transform-origin:center;width:0!important;height:0!important;padding:0!important;margin:0!important;min-width:0!important;min-height:0!important}.woo-variation-swatches.wvs-attr-behavior-hide .variable-item.disabled.radio-variable-item{width:auto!important}.woo-variation-swatches.rtl .variable-items-wrapper .variable-item{text-align:right}.woo-variation-swatches.rtl .variable-items-wrapper .variable-item:not(.radio-variable-item){margin:4px 0 4px 8px}.woo-variation-swatches.rtl .variable-items-wrapper.radio-variable-wrapper .radio-variable-item input{margin-right:0;margin-left:5px}.woo-variation-swatches.woocommerce .product.elementor table.variations td.value:before{display:none!important}.woo-variation-swatches.woo-variation-swatches-ie11 .variable-items-wrapper{display:block!important}.woo-variation-swatches.woo-variation-swatches-ie11 .variable-items-wrapper .variable-item:not(.radio-variable-item){float:left}.woo-variation-swatches.wvs-show-label .variations td{display:block;width:auto!important}.woo-variation-swatches.wvs-show-label .variations td .woo-selected-variation-item-name,.woo-variation-swatches.wvs-show-label .variations td label{display:inline-block;margin:0 2px}
assets/css/gwp-admin-notice.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .gwp-live-feed-contents {
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .gwp-live-feed-contents {
assets/css/gwp-admin-notice.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .gwp-live-feed-contents{position:relative;clear:both;overflow:hidden}.gwp-live-feed-contents.gwp-ad-gallery:before,.gwp-live-feed-contents.notice-info:before{content:"\F161";background:#72aee6}.gwp-live-feed-contents.notice-success:before{content:"\F147";background:#46b450}.gwp-live-feed-contents.notice-error:before{content:"\F158";background:#dc3232}.gwp-live-feed-contents.notice-warning:before{content:"\F534";background:#f6ba33}.gwp-live-feed-contents.gwp-notice-required:before{content:"\F463";background:#ce3100;text-shadow:0 -1px 1px #ce3100}.gwp-live-feed-contents.gwp-notice-recommended:before{content:"\F529";background:#3d4046;text-shadow:0 -1px 1px #3d4046}.gwp-live-feed-contents.gwp-ad-gallery,.gwp-live-feed-contents.gwp-notice-recommended,.gwp-live-feed-contents.gwp-notice-required,.gwp-live-feed-contents.notice-error,.gwp-live-feed-contents.notice-info,.gwp-live-feed-contents.notice-success,.gwp-live-feed-contents.notice-warning{display:flex;align-items:stretch;padding:0;border-radius:4px}.gwp-live-feed-contents.gwp-ad-gallery:before,.gwp-live-feed-contents.gwp-notice-recommended:before,.gwp-live-feed-contents.gwp-notice-required:before,.gwp-live-feed-contents.notice-error:before,.gwp-live-feed-contents.notice-info:before,.gwp-live-feed-contents.notice-success:before,.gwp-live-feed-contents.notice-warning:before{font-family:dashicons;font-size:20px;color:#fff;padding:10px;display:flex;align-items:center}.gwp-live-feed-contents.gwp-ad-gallery .feed-message-wrapper,.gwp-live-feed-contents.gwp-notice-recommended .feed-message-wrapper,.gwp-live-feed-contents.gwp-notice-required .feed-message-wrapper,.gwp-live-feed-contents.notice-error .feed-message-wrapper,.gwp-live-feed-contents.notice-info .feed-message-wrapper,.gwp-live-feed-contents.notice-success .feed-message-wrapper,.gwp-live-feed-contents.notice-warning .feed-message-wrapper{padding:10px 60px 10px 20px}.gwp-live-feed-contents.gwp-notice-discount{border-radius:5px;border:0;display:flex;align-items:center;padding:0;max-width:750px;margin-left:auto;margin-right:auto;background:#594679}.gwp-live-feed-contents.gwp-notice-discount .feed-thumbnail-wrapper .attachment-thumbnail{display:block}.gwp-live-feed-contents.gwp-notice-discount .feed-message-wrapper{display:flex;justify-content:space-between;align-items:center;width:100%;color:#fff;text-shadow:0 -1px 1px #594679;padding:20px 30px 20px 20px}.gwp-live-feed-contents.gwp-notice-discount .feed-message-wrapper p{font-size:14px;margin:0;padding:0}.gwp-live-feed-contents.gwp-notice-discount .feed-message-wrapper span.big{font-weight:400;font-size:18px}.gwp-live-feed-contents.gwp-notice-discount .feed-message-wrapper strong{font-weight:800}.gwp-live-feed-contents.gwp-notice-discount .feed-message-wrapper .button-primary{font-size:16px;border-radius:30px;padding:0 25px;border:0;height:40px;line-height:40px}.gwp-live-feed-contents.gwp-notice-discount .gwp-live-feed-close{color:#fff;opacity:.5;font-size:12px}.gwp-live-feed-contents.gwp-notice-discount .gwp-live-feed-close:hover{opacity:1}.gwp-live-feed-contents.gwp-notice-discount .gwp-live-feed-close:before{color:#fff}.gwp-live-feed-contents.gwp-notice-pro{border-radius:5px;border:0;display:flex;align-items:center;padding:0;max-width:750px;margin-left:auto;margin-right:auto;background:#2196f3}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper{display:flex;justify-content:space-between;align-items:center;width:100%;color:#fff;text-shadow:0 -1px 1px #2196f3;padding:20px}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper p{font-size:14px;margin:0;padding:0}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper span.big{font-weight:400;font-size:18px}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper strong{font-weight:800}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper .button-upgrade{position:relative;font-size:16px;color:#fff;font-weight:600;text-decoration:none;padding:25px 25px 25px 80px;display:block;margin:-20px;background:#673ab7;text-shadow:0 -1px 1px #673ab7}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper .button-upgrade small{font-weight:300;display:block}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper .button-upgrade i{position:absolute;left:25px;font-size:36px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:36px;height:36px}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper .button-upgrade:hover{background:#305af3;text-shadow:0 -1px 1px #305af3}.gwp-live-feed-contents.gwp-notice-pro .gwp-live-feed-close{color:#fff;opacity:.5;font-size:12px;z-index:1}.gwp-live-feed-contents.gwp-notice-pro .gwp-live-feed-close:hover{opacity:1}.gwp-live-feed-contents.gwp-notice-pro .gwp-live-feed-close:before{color:#fff}.gwp-live-feed-contents.gwp-notice-new{border:0;padding:0;max-width:750px;margin-left:auto;margin-right:auto;background:transparent;box-shadow:none}.gwp-live-feed-contents.gwp-notice-new .feed-message-wrapper,.gwp-live-feed-contents.gwp-notice-new .feed-message-wrapper img,.gwp-live-feed-contents.gwp-notice-new .feed-message-wrapper p{padding:0;margin:0}.gwp-live-feed-contents.gwp-notice-new .gwp-live-feed-close{color:rgba(0,0,0,.5);opacity:.5;font-size:12px}.gwp-live-feed-contents.gwp-notice-new .gwp-live-feed-close:hover{opacity:1}.gwp-live-feed-contents.gwp-notice-new .gwp-live-feed-close:before{color:rgba(0,0,0,.5)}.gwp-live-feed-contents .button-primary{background:#56bfd4;border-color:#3a9db1;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.3);text-shadow:0 -1px 1px #238ea5}.gwp-live-feed-contents .button-primary:active,.gwp-live-feed-contents .button-primary:focus,.gwp-live-feed-contents .button-primary:hover{background:#39b1ca;border-color:#3a9db1}.gwp-live-feed-contents .gwp-live-feed-close{display:flex;right:0;text-decoration:none;padding:10px 10px 10px 25px}.gwp-live-feed-contents .gwp-live-feed-close:before{display:inline-block}.gwp-live-feed-contents .gwp-live-feed-close-plain{display:flex;right:0;text-decoration:none;padding:15px}.gwp-live-feed-contents .gwp-live-feed-close-plain:before{display:inline-block}.wp-admin.rtl .gwp-live-feed-contents .gwp-live-feed-close-plain{left:0;right:auto}
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .gwp-live-feed-contents{position:relative;clear:both;overflow:hidden}.gwp-live-feed-contents.gwp-ad-gallery:before,.gwp-live-feed-contents.notice-info:before{content:"\F161";background:#72aee6}.gwp-live-feed-contents.notice-success:before{content:"\F147";background:#46b450}.gwp-live-feed-contents.notice-error:before{content:"\F158";background:#dc3232}.gwp-live-feed-contents.notice-warning:before{content:"\F534";background:#f6ba33}.gwp-live-feed-contents.gwp-notice-required:before{content:"\F463";background:#ce3100;text-shadow:0 -1px 1px #ce3100}.gwp-live-feed-contents.gwp-notice-recommended:before{content:"\F529";background:#3d4046;text-shadow:0 -1px 1px #3d4046}.gwp-live-feed-contents.gwp-ad-gallery,.gwp-live-feed-contents.gwp-notice-recommended,.gwp-live-feed-contents.gwp-notice-required,.gwp-live-feed-contents.notice-error,.gwp-live-feed-contents.notice-info,.gwp-live-feed-contents.notice-success,.gwp-live-feed-contents.notice-warning{display:flex;align-items:stretch;padding:0;border-radius:4px}.gwp-live-feed-contents.gwp-ad-gallery:before,.gwp-live-feed-contents.gwp-notice-recommended:before,.gwp-live-feed-contents.gwp-notice-required:before,.gwp-live-feed-contents.notice-error:before,.gwp-live-feed-contents.notice-info:before,.gwp-live-feed-contents.notice-success:before,.gwp-live-feed-contents.notice-warning:before{font-family:dashicons;font-size:20px;color:#fff;padding:10px;display:flex;align-items:center}.gwp-live-feed-contents.gwp-ad-gallery .feed-message-wrapper,.gwp-live-feed-contents.gwp-notice-recommended .feed-message-wrapper,.gwp-live-feed-contents.gwp-notice-required .feed-message-wrapper,.gwp-live-feed-contents.notice-error .feed-message-wrapper,.gwp-live-feed-contents.notice-info .feed-message-wrapper,.gwp-live-feed-contents.notice-success .feed-message-wrapper,.gwp-live-feed-contents.notice-warning .feed-message-wrapper{padding:10px 60px 10px 20px}.gwp-live-feed-contents.gwp-notice-discount{border-radius:5px;border:0;display:flex;align-items:center;padding:0;max-width:750px;margin-left:auto;margin-right:auto;background:#594679}.gwp-live-feed-contents.gwp-notice-discount .feed-thumbnail-wrapper .attachment-thumbnail{display:block}.gwp-live-feed-contents.gwp-notice-discount .feed-message-wrapper{display:flex;justify-content:space-between;align-items:center;width:100%;color:#fff;text-shadow:0 -1px 1px #594679;padding:20px 30px 20px 20px}.gwp-live-feed-contents.gwp-notice-discount .feed-message-wrapper p{font-size:14px;margin:0;padding:0}.gwp-live-feed-contents.gwp-notice-discount .feed-message-wrapper span.big{font-weight:400;font-size:18px}.gwp-live-feed-contents.gwp-notice-discount .feed-message-wrapper strong{font-weight:800}.gwp-live-feed-contents.gwp-notice-discount .feed-message-wrapper .button-primary{font-size:16px;border-radius:30px;padding:0 25px;border:0;height:40px;line-height:40px}.gwp-live-feed-contents.gwp-notice-discount .gwp-live-feed-close{color:#fff;opacity:.5;font-size:12px}.gwp-live-feed-contents.gwp-notice-discount .gwp-live-feed-close:hover{opacity:1}.gwp-live-feed-contents.gwp-notice-discount .gwp-live-feed-close:before{color:#fff}.gwp-live-feed-contents.gwp-notice-pro{border-radius:5px;border:0;display:flex;align-items:center;padding:0;max-width:750px;margin-left:auto;margin-right:auto;background:#2196f3}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper{display:flex;justify-content:space-between;align-items:center;width:100%;color:#fff;text-shadow:0 -1px 1px #2196f3;padding:20px}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper p{font-size:14px;margin:0;padding:0}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper span.big{font-weight:400;font-size:18px}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper strong{font-weight:800}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper .button-upgrade{position:relative;font-size:16px;color:#fff;font-weight:600;text-decoration:none;padding:25px 25px 25px 80px;display:block;margin:-20px;background:#673ab7;text-shadow:0 -1px 1px #673ab7}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper .button-upgrade small{font-weight:300;display:block}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper .button-upgrade i{position:absolute;left:25px;font-size:36px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:36px;height:36px}.gwp-live-feed-contents.gwp-notice-pro .feed-message-wrapper .button-upgrade:hover{background:#305af3;text-shadow:0 -1px 1px #305af3}.gwp-live-feed-contents.gwp-notice-pro .gwp-live-feed-close{color:#fff;opacity:.5;font-size:12px;z-index:1}.gwp-live-feed-contents.gwp-notice-pro .gwp-live-feed-close:hover{opacity:1}.gwp-live-feed-contents.gwp-notice-pro .gwp-live-feed-close:before{color:#fff}.gwp-live-feed-contents.gwp-notice-new{border:0;padding:0;max-width:750px;margin-left:auto;margin-right:auto;background:transparent;box-shadow:none}.gwp-live-feed-contents.gwp-notice-new .feed-message-wrapper,.gwp-live-feed-contents.gwp-notice-new .feed-message-wrapper img,.gwp-live-feed-contents.gwp-notice-new .feed-message-wrapper p{padding:0;margin:0}.gwp-live-feed-contents.gwp-notice-new .gwp-live-feed-close{color:rgba(0,0,0,.5);opacity:.5;font-size:12px}.gwp-live-feed-contents.gwp-notice-new .gwp-live-feed-close:hover{opacity:1}.gwp-live-feed-contents.gwp-notice-new .gwp-live-feed-close:before{color:rgba(0,0,0,.5)}.gwp-live-feed-contents .button-primary{background:#56bfd4;border-color:#3a9db1;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.3);text-shadow:0 -1px 1px #238ea5}.gwp-live-feed-contents .button-primary:active,.gwp-live-feed-contents .button-primary:focus,.gwp-live-feed-contents .button-primary:hover{background:#39b1ca;border-color:#3a9db1}.gwp-live-feed-contents .gwp-live-feed-close{display:flex;right:0;text-decoration:none;padding:10px 10px 10px 25px}.gwp-live-feed-contents .gwp-live-feed-close:before{display:inline-block}.gwp-live-feed-contents .gwp-live-feed-close-plain{display:flex;right:0;text-decoration:none;padding:15px}.gwp-live-feed-contents .gwp-live-feed-close-plain:before{display:inline-block}.wp-admin.rtl .gwp-live-feed-contents .gwp-live-feed-close-plain{left:0;right:auto}
assets/css/gwp-admin.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  /**
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  /**
assets/css/gwp-admin.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .gwp-backbone-modal *{box-sizing:border-box}.gwp-backbone-modal .gwp-backbone-modal-content{position:fixed;background:#fff;z-index:100000;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);max-width:100%;min-width:300px}.gwp-backbone-modal .gwp-backbone-modal-content article{overflow:auto}.gwp-backbone-modal .gwp-backbone-modal-content{width:40%}.gwp-backbone-modal .gwp-feedback-dialog-form-body h2{font-weight:700;font-size:15px;color:#495157;margin:0 0 20px}.gwp-backbone-modal .gwp-feedback-dialog-form-body .feedback-dialog-form-body .feedback-dialog-input-wrapper{line-height:1.3;overflow:hidden;margin-bottom:15px}.gwp-backbone-modal .gwp-feedback-dialog-form-body .feedback-dialog-form-body .feedback-dialog-input{float:left;margin:0 10px 0 0;box-shadow:none}.gwp-backbone-modal .gwp-feedback-dialog-form-body .feedback-dialog-form-body .feedback-text{margin:10px 0 0 25px;padding:5px;font-size:13px;box-shadow:none;background-color:#fff;width:92%;display:none}.gwp-backbone-modal .gwp-feedback-dialog-form-body .feedback-dialog-form-body .feedback-alert{color:#0273a9;background-color:#fff;font-weight:600}.gwp-backbone-modal .gwp-feedback-dialog-form-body .feedback-dialog-form-body .feedback-dialog-label{display:block;font-size:13px;color:#6d7882}.gwp-backbone-modal footer{margin-top:30px;overflow:hidden;clear:both}.gwp-backbone-modal footer .feedback-dialog-form-button-send{background-color:#56bfd4;border-radius:3px;color:#fff;line-height:1;padding:12px 20px;font-size:13px;height:40px;border:0;box-shadow:none;text-shadow:none;float:left}.gwp-backbone-modal footer .feedback-dialog-form-button-send:hover{background:#389db1}.gwp-backbone-modal footer .feedback-dialog-form-button-send:active{-webkit-transform:translateY(0);transform:translateY(0)}.gwp-backbone-modal footer .feedback-dialog-form-button-skip{font-size:12px;color:#a4afb7;background:none;float:right;width:auto;cursor:pointer;padding:10px 0;outline:0;text-decoration:none}.gwp-backbone-modal footer .feedback-dialog-form-button-skip:focus{box-shadow:none}.gwp-backbone-modal footer .feedback-dialog-form-button-skip:hover{text-decoration:underline}.woo-variation-gallery-message{background-color:#7f54b3;color:#fff;padding:5px 10px;border-radius:5px;display:none}.woo-variation-gallery-message a{color:#fff}.woo-variation-gallery-message.enable,.woo-variation-gallery-message.loading{display:block}@media screen and (max-width:782px){.gwp-backbone-modal .gwp-backbone-modal-content{width:100%;height:100%;min-width:100%}}.gwp-backbone-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;min-height:360px;background:#000;opacity:.7;z-index:99900}.gwp-backbone-modal-main{padding-bottom:55px}.gwp-backbone-modal-main article,.gwp-backbone-modal-main header{display:block;position:relative}.gwp-backbone-modal-main .gwp-backbone-modal-header{height:auto;background:#fcfcfc;padding:1em 1.5em;border-bottom:1px solid #ddd}.gwp-backbone-modal-main .gwp-backbone-modal-header h1{margin:0;color:#495157;font-weight:700;font-size:14px;background:transparent;line-height:2em;text-transform:uppercase;border:0}.gwp-backbone-modal-main .gwp-backbone-modal-header .modal-close-link{cursor:pointer;color:#777;height:54px;width:54px;padding:0;position:absolute;top:0;right:0;text-align:center;border:0;border-left:1px solid #ddd;background-color:transparent;transition:color .1s ease-in-out,background .1s ease-in-out}.gwp-backbone-modal-main .gwp-backbone-modal-header .modal-close-link:before{font:normal 22px/50px dashicons!important;color:#666;display:block;content:"\F335";font-weight:300}.gwp-backbone-modal-main .gwp-backbone-modal-header .modal-close-link:focus,.gwp-backbone-modal-main .gwp-backbone-modal-header .modal-close-link:hover{background:#ddd;border-color:#ccc;color:#000}.gwp-backbone-modal-main .gwp-backbone-modal-header .modal-close-link:focus{outline:none}.gwp-backbone-modal-main article{padding:1.5em}.gwp-backbone-modal-main article p{margin:1.5em 0}.gwp-backbone-modal-main article p:first-child{margin-top:0}.gwp-backbone-modal-main article p:last-child{margin-bottom:0}.gwp-backbone-modal-main article .pagination{padding:10px 0 0;text-align:center}.gwp-backbone-modal-main article table.widefat{margin:0;width:100%;border:0;box-shadow:none}.gwp-backbone-modal-main article table.widefat thead th{padding:0 1em 1em;text-align:left}.gwp-backbone-modal-main article table.widefat thead th:first-child{padding-left:0}.gwp-backbone-modal-main article table.widefat thead th:last-child{padding-right:0;text-align:right}.gwp-backbone-modal-main article table.widefat tbody td,.gwp-backbone-modal-main article table.widefat tbody th{padding:1em;text-align:left;vertical-align:middle}.gwp-backbone-modal-main article table.widefat tbody td:first-child,.gwp-backbone-modal-main article table.widefat tbody th:first-child{padding-left:0}.gwp-backbone-modal-main article table.widefat tbody td:last-child,.gwp-backbone-modal-main article table.widefat tbody th:last-child{padding-right:0;text-align:right}.gwp-backbone-modal-main article table.widefat tbody td .select2-container,.gwp-backbone-modal-main article table.widefat tbody td select,.gwp-backbone-modal-main article table.widefat tbody th .select2-container,.gwp-backbone-modal-main article table.widefat tbody th select{width:100%}.gwp-backbone-modal-main footer{position:absolute;left:0;right:0;bottom:0;z-index:100;padding:1em 1.5em;background:#fcfcfc;border-top:1px solid #dfdfdf;box-shadow:0 -4px 4px -4px rgba(0,0,0,.1)}.gwp-backbone-modal-main footer .inner{text-align:right;line-height:23px}.gwp-backbone-modal-main footer .inner .button{margin-bottom:0}.gwp-backbone-modal-main footer .inner .gwp-action-button-group{display:inline-block;float:left}.gwp-backbone-modal-main footer .inner .button.button-large{margin-left:10px;padding:0 10px!important;line-height:28px;height:auto;display:inline-block}.gwp-action-button-group{vertical-align:middle;line-height:26px;text-align:left}.gwp-action-button-group .gwp-action-button-group__items{display:inline-flex;flex-flow:row wrap;align-content:flex-start;justify-content:flex-start}.gwp-action-button-group .gwp-action-button{margin:0 0 0 -1px!important;border:1px solid #ccc;padding:0 10px!important;border-radius:0!important;float:none;line-height:28px;height:auto;z-index:1;position:relative;overflow:hidden;text-overflow:ellipsis;flex:1 0 auto;box-sizing:border-box;text-align:center;white-space:nowrap}.gwp-action-button-group .gwp-action-button:focus,.gwp-action-button-group .gwp-action-button:hover{border:1px solid #999;z-index:2}.gwp-action-button-group .gwp-action-button:first-child{margin-left:0!important;border-top-left-radius:3px!important;border-bottom-left-radius:3px!important}.gwp-action-button-group .gwp-action-button:last-child{border-top-right-radius:3px!important;border-bottom-right-radius:3px!important}.gwp-action-button-group .spinner{margin:10px}.gwp-action-button-group .spinner.visible{visibility:visible}
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .gwp-backbone-modal *{box-sizing:border-box}.gwp-backbone-modal .gwp-backbone-modal-content{position:fixed;background:#fff;z-index:100000;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);max-width:100%;min-width:300px}.gwp-backbone-modal .gwp-backbone-modal-content article{overflow:auto}.gwp-backbone-modal .gwp-backbone-modal-content{width:40%}.gwp-backbone-modal .gwp-feedback-dialog-form-body h2{font-weight:700;font-size:15px;color:#495157;margin:0 0 20px}.gwp-backbone-modal .gwp-feedback-dialog-form-body .feedback-dialog-form-body .feedback-dialog-input-wrapper{line-height:1.3;overflow:hidden;margin-bottom:15px}.gwp-backbone-modal .gwp-feedback-dialog-form-body .feedback-dialog-form-body .feedback-dialog-input{float:left;margin:0 10px 0 0;box-shadow:none}.gwp-backbone-modal .gwp-feedback-dialog-form-body .feedback-dialog-form-body .feedback-text{margin:10px 0 0 25px;padding:5px;font-size:13px;box-shadow:none;background-color:#fff;width:92%;display:none}.gwp-backbone-modal .gwp-feedback-dialog-form-body .feedback-dialog-form-body .feedback-alert{color:#0273a9;background-color:#fff;font-weight:600}.gwp-backbone-modal .gwp-feedback-dialog-form-body .feedback-dialog-form-body .feedback-dialog-label{display:block;font-size:13px;color:#6d7882}.gwp-backbone-modal footer{margin-top:30px;overflow:hidden;clear:both}.gwp-backbone-modal footer .feedback-dialog-form-button-send{background-color:#56bfd4;border-radius:3px;color:#fff;line-height:1;padding:12px 20px;font-size:13px;height:40px;border:0;box-shadow:none;text-shadow:none;float:left}.gwp-backbone-modal footer .feedback-dialog-form-button-send:hover{background:#389db1}.gwp-backbone-modal footer .feedback-dialog-form-button-send:active{-webkit-transform:translateY(0);transform:translateY(0)}.gwp-backbone-modal footer .feedback-dialog-form-button-skip{font-size:12px;color:#a4afb7;background:none;float:right;width:auto;cursor:pointer;padding:10px 0;outline:0;text-decoration:none}.gwp-backbone-modal footer .feedback-dialog-form-button-skip:focus{box-shadow:none}.gwp-backbone-modal footer .feedback-dialog-form-button-skip:hover{text-decoration:underline}.woo-variation-gallery-message{background-color:#7f54b3;color:#fff;padding:5px 10px;border-radius:5px;display:none}.woo-variation-gallery-message a{color:#fff}.woo-variation-gallery-message.enable,.woo-variation-gallery-message.loading{display:block}@media screen and (max-width:782px){.gwp-backbone-modal .gwp-backbone-modal-content{width:100%;height:100%;min-width:100%}}.gwp-backbone-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;min-height:360px;background:#000;opacity:.7;z-index:99900}.gwp-backbone-modal-main{padding-bottom:55px}.gwp-backbone-modal-main article,.gwp-backbone-modal-main header{display:block;position:relative}.gwp-backbone-modal-main .gwp-backbone-modal-header{height:auto;background:#fcfcfc;padding:1em 1.5em;border-bottom:1px solid #ddd}.gwp-backbone-modal-main .gwp-backbone-modal-header h1{margin:0;color:#495157;font-weight:700;font-size:14px;background:transparent;line-height:2em;text-transform:uppercase;border:0}.gwp-backbone-modal-main .gwp-backbone-modal-header .modal-close-link{cursor:pointer;color:#777;height:54px;width:54px;padding:0;position:absolute;top:0;right:0;text-align:center;border:0;border-left:1px solid #ddd;background-color:transparent;transition:color .1s ease-in-out,background .1s ease-in-out}.gwp-backbone-modal-main .gwp-backbone-modal-header .modal-close-link:before{font:normal 22px/50px dashicons!important;color:#666;display:block;content:"\F335";font-weight:300}.gwp-backbone-modal-main .gwp-backbone-modal-header .modal-close-link:focus,.gwp-backbone-modal-main .gwp-backbone-modal-header .modal-close-link:hover{background:#ddd;border-color:#ccc;color:#000}.gwp-backbone-modal-main .gwp-backbone-modal-header .modal-close-link:focus{outline:none}.gwp-backbone-modal-main article{padding:1.5em}.gwp-backbone-modal-main article p{margin:1.5em 0}.gwp-backbone-modal-main article p:first-child{margin-top:0}.gwp-backbone-modal-main article p:last-child{margin-bottom:0}.gwp-backbone-modal-main article .pagination{padding:10px 0 0;text-align:center}.gwp-backbone-modal-main article table.widefat{margin:0;width:100%;border:0;box-shadow:none}.gwp-backbone-modal-main article table.widefat thead th{padding:0 1em 1em;text-align:left}.gwp-backbone-modal-main article table.widefat thead th:first-child{padding-left:0}.gwp-backbone-modal-main article table.widefat thead th:last-child{padding-right:0;text-align:right}.gwp-backbone-modal-main article table.widefat tbody td,.gwp-backbone-modal-main article table.widefat tbody th{padding:1em;text-align:left;vertical-align:middle}.gwp-backbone-modal-main article table.widefat tbody td:first-child,.gwp-backbone-modal-main article table.widefat tbody th:first-child{padding-left:0}.gwp-backbone-modal-main article table.widefat tbody td:last-child,.gwp-backbone-modal-main article table.widefat tbody th:last-child{padding-right:0;text-align:right}.gwp-backbone-modal-main article table.widefat tbody td .select2-container,.gwp-backbone-modal-main article table.widefat tbody td select,.gwp-backbone-modal-main article table.widefat tbody th .select2-container,.gwp-backbone-modal-main article table.widefat tbody th select{width:100%}.gwp-backbone-modal-main footer{position:absolute;left:0;right:0;bottom:0;z-index:100;padding:1em 1.5em;background:#fcfcfc;border-top:1px solid #dfdfdf;box-shadow:0 -4px 4px -4px rgba(0,0,0,.1)}.gwp-backbone-modal-main footer .inner{text-align:right;line-height:23px}.gwp-backbone-modal-main footer .inner .button{margin-bottom:0}.gwp-backbone-modal-main footer .inner .gwp-action-button-group{display:inline-block;float:left}.gwp-backbone-modal-main footer .inner .button.button-large{margin-left:10px;padding:0 10px!important;line-height:28px;height:auto;display:inline-block}.gwp-action-button-group{vertical-align:middle;line-height:26px;text-align:left}.gwp-action-button-group .gwp-action-button-group__items{display:inline-flex;flex-flow:row wrap;align-content:flex-start;justify-content:flex-start}.gwp-action-button-group .gwp-action-button{margin:0 0 0 -1px!important;border:1px solid #ccc;padding:0 10px!important;border-radius:0!important;float:none;line-height:28px;height:auto;z-index:1;position:relative;overflow:hidden;text-overflow:ellipsis;flex:1 0 auto;box-sizing:border-box;text-align:center;white-space:nowrap}.gwp-action-button-group .gwp-action-button:focus,.gwp-action-button-group .gwp-action-button:hover{border:1px solid #999;z-index:2}.gwp-action-button-group .gwp-action-button:first-child{margin-left:0!important;border-top-left-radius:3px!important;border-bottom-left-radius:3px!important}.gwp-action-button-group .gwp-action-button:last-child{border-top-right-radius:3px!important;border-bottom-right-radius:3px!important}.gwp-action-button-group .spinner{margin:10px}.gwp-action-button-group .spinner.visible{visibility:visible}
assets/css/wvs-theme-override.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .wvs-theme-sober .product form.cart .variations .variable,
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .wvs-theme-sober .product form.cart .variations .variable,
assets/css/wvs-theme-override.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .wvs-theme-child-sober .product form.cart .variations .variable,.wvs-theme-sober .product form.cart .variations .variable{margin-bottom:15px!important}.wvs-theme-child-sober .product form.cart .variations .variable-options,.wvs-theme-sober .product form.cart .variations .variable-options{border:0!important}.wvs-theme-child-sober .product form.cart .variations .arrow,.wvs-theme-child-sober .product form.cart .variations .variable-options:after,.wvs-theme-sober .product form.cart .variations .arrow,.wvs-theme-sober .product form.cart .variations .variable-options:after{display:none}.wvs-theme-child-sober .product form.cart .variations .label,.wvs-theme-sober .product form.cart .variations .label{display:block;text-align:right;margin-right:10px}.wvs-theme-child-sober .product form.cart .variations .value,.wvs-theme-sober .product form.cart .variations .value{flex-grow:unset}.wvs-theme-child-sober .product form.cart .variations select,.wvs-theme-sober .product form.cart .variations select{border:1px solid #e4e6eb!important;padding:.5em 1em!important;text-align:left!important;-moz-text-align-last:left!important;text-align-last:left!important;-webkit-appearance:menulist-button!important}.wvs-theme-child-sober .product form.cart .radio-variable-item,.wvs-theme-sober .product form.cart .radio-variable-item{margin:5px;text-align:left}.wvs-theme-child-sober .product form.cart .radio-variable-item:last-child,.wvs-theme-sober .product form.cart .radio-variable-item:last-child{margin-right:0}.wvs-theme-child-sober .product form.cart .radio-variable-item label,.wvs-theme-sober .product form.cart .radio-variable-item label{padding-left:30px;margin:0}.wvs-theme-child-sober .product form.cart .radio-variable-item label:before,.wvs-theme-sober .product form.cart .radio-variable-item label:before{top:0;border-radius:100%}.wvs-theme-child-sober .product form.cart .radio-variable-item label:after,.wvs-theme-sober .product form.cart .radio-variable-item label:after{top:8px}.wvs-theme-shophistic-lite.woocommerce #main .entry-summary .variations{display:block!important}.wvs-theme-shophistic-lite .ql_custom_variations{display:none!important}.wvs-theme-shophistic-lite .radio-variable-item input[type=radio]{display:inline-block;margin:0}.wvs-theme-flatsome .variations .reset_variations{position:relative;bottom:0;left:0}.wvs-theme-child-storefront.single-product div.product,.wvs-theme-storefront.single-product div.product{overflow:visible!important}.wvs-theme-stockholm .variations .reset_variations{position:relative;bottom:0;left:0;-webkit-transform:none;transform:none}.wvs-theme-kalium-child .image-variable-item img,.wvs-theme-kalium .image-variable-item img{width:100%!important}.wvs-theme-kalium-child .radio-variable-item input,.wvs-theme-kalium .radio-variable-item input{width:16px!important;height:16px!important}.wvs-theme-kalium-child .woo-variation-items-wrapper .select-option-ui,.wvs-theme-kalium .woo-variation-items-wrapper .select-option-ui{display:none}.wvs-theme-aurum .variable-items-wrapper .image-variable-item>img,.wvs-theme-child-aurum .variable-items-wrapper .image-variable-item>img{width:100%}.wvs-theme-hestia .woo-variation-items-wrapper.value:before{display:none!important}.wvs-theme-child-thegem .woo-variation-items-wrapper .combobox-wrapper,.wvs-theme-thegem .woo-variation-items-wrapper .combobox-wrapper{display:none}.wvs-theme-child-thegem .wvs-archive-variation-wrapper .variations,.wvs-theme-thegem .wvs-archive-variation-wrapper .variations{padding:0}.wvs-theme-child-ushop .variations_form,.wvs-theme-ushop .variations_form{overflow:visible!important}.wvs-theme-child-ushop .single-product-summary .product_meta,.wvs-theme-ushop .single-product-summary .product_meta{display:inline-table}.wvs-theme-child-savoy .woo-variation-items-wrapper,.wvs-theme-savoy .woo-variation-items-wrapper{position:relative!important}.wvs-theme-child-savoy .woo-variation-items-wrapper .sod_select,.wvs-theme-savoy .woo-variation-items-wrapper .sod_select{display:none!important}.wvs-theme-child-savoy .nm-variation-row,.wvs-theme-savoy .nm-variation-row{display:flex}.wvs-theme-child-woodstock .woo-variation-items-wrapper .variation-select,.wvs-theme-woodstock .woo-variation-items-wrapper .variation-select{display:none!important}.wvs-theme-child-woodmart .wd-attr-selected,.wvs-theme-child-woodmart .woo-variation-items-wrapper>.swatches-select,.wvs-theme-woodmart .wd-attr-selected,.wvs-theme-woodmart .woo-variation-items-wrapper>.swatches-select{display:none}.wvs-theme-gecko-child .variations .value.woo-variation-items-wrapper,.wvs-theme-gecko .variations .value.woo-variation-items-wrapper{border:0!important}.wvs-theme-gecko-child .variations .value.woo-variation-items-wrapper:after,.wvs-theme-gecko .variations .value.woo-variation-items-wrapper:after{display:none!important}.woo-variation-gallery-theme-child-massive-dynamic .woo-variation-items-wrapper .clear-selection,.woo-variation-gallery-theme-massive-dynamic .woo-variation-items-wrapper .clear-selection{border:0;height:auto;width:auto}.woo-variation-gallery-theme-child-massive-dynamic .woo-variation-items-wrapper .clear-selection .reset_variations,.woo-variation-gallery-theme-massive-dynamic .woo-variation-items-wrapper .clear-selection .reset_variations{font-size:8px!important;width:20px;height:20px;padding:5px;box-sizing:border-box;border-radius:100%;border:1px solid #f04040;color:#f04040}.wvs-theme-child-claue .woo-variation-items-wrapper,.wvs-theme-claue .woo-variation-items-wrapper{border:none}.wvs-theme-child-claue .woo-variation-items-wrapper:after,.wvs-theme-claue .woo-variation-items-wrapper:after{display:none}.wvs-theme-child-jupiter table.variations,.wvs-theme-jupiter table.variations{overflow:initial}.wvs-theme-child-oxygen .woo-variation-items-wrapper .select-wrapper,.wvs-theme-oxygen .woo-variation-items-wrapper .select-wrapper{display:none}.wvs-theme-child-oxygen .variable-items-wrapper.radio-variable-wrapper .radio-variable-item input,.wvs-theme-oxygen .variable-items-wrapper.radio-variable-wrapper .radio-variable-item input{width:18px}.wvs-theme-child-simple-elegant .woo-variation-items-wrapper .wi-nice-select,.wvs-theme-simple-elegant .woo-variation-items-wrapper .wi-nice-select{display:none}.wvs-theme-child-twentytwenty table.variations,.wvs-theme-twentytwenty table.variations{overflow:auto}.wvs-theme-child-divi .et_pb_wc_add_to_cart form.variations_form.cart .variations td.value span:after,.wvs-theme-child-jevelin .sh-woo-layout table.variations td select.woo-variation-raw-select,.wvs-theme-divi .et_pb_wc_add_to_cart form.variations_form.cart .variations td.value span:after,.wvs-theme-jevelin .sh-woo-layout table.variations td select.woo-variation-raw-select{display:none!important}.wvs-theme-child-jevelin .sh-woo-layout table.variations,.wvs-theme-jevelin .sh-woo-layout table.variations{max-width:100%}.wvs-theme-child-jevelin .radio-variable-item label,.wvs-theme-jevelin .radio-variable-item label{line-height:1!important}.wvs-theme-child-stockie .woo-variation-raw-select+.select-styled,.wvs-theme-stockie .woo-variation-raw-select+.select-styled{display:none!important}
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  .wvs-theme-child-sober .product form.cart .variations .variable,.wvs-theme-sober .product form.cart .variations .variable{margin-bottom:15px!important}.wvs-theme-child-sober .product form.cart .variations .variable-options,.wvs-theme-sober .product form.cart .variations .variable-options{border:0!important}.wvs-theme-child-sober .product form.cart .variations .arrow,.wvs-theme-child-sober .product form.cart .variations .variable-options:after,.wvs-theme-sober .product form.cart .variations .arrow,.wvs-theme-sober .product form.cart .variations .variable-options:after{display:none}.wvs-theme-child-sober .product form.cart .variations .label,.wvs-theme-sober .product form.cart .variations .label{display:block;text-align:right;margin-right:10px}.wvs-theme-child-sober .product form.cart .variations .value,.wvs-theme-sober .product form.cart .variations .value{flex-grow:unset}.wvs-theme-child-sober .product form.cart .variations select,.wvs-theme-sober .product form.cart .variations select{border:1px solid #e4e6eb!important;padding:.5em 1em!important;text-align:left!important;-moz-text-align-last:left!important;text-align-last:left!important;-webkit-appearance:menulist-button!important}.wvs-theme-child-sober .product form.cart .radio-variable-item,.wvs-theme-sober .product form.cart .radio-variable-item{margin:5px;text-align:left}.wvs-theme-child-sober .product form.cart .radio-variable-item:last-child,.wvs-theme-sober .product form.cart .radio-variable-item:last-child{margin-right:0}.wvs-theme-child-sober .product form.cart .radio-variable-item label,.wvs-theme-sober .product form.cart .radio-variable-item label{padding-left:30px;margin:0}.wvs-theme-child-sober .product form.cart .radio-variable-item label:before,.wvs-theme-sober .product form.cart .radio-variable-item label:before{top:0;border-radius:100%}.wvs-theme-child-sober .product form.cart .radio-variable-item label:after,.wvs-theme-sober .product form.cart .radio-variable-item label:after{top:8px}.wvs-theme-shophistic-lite.woocommerce #main .entry-summary .variations{display:block!important}.wvs-theme-shophistic-lite .ql_custom_variations{display:none!important}.wvs-theme-shophistic-lite .radio-variable-item input[type=radio]{display:inline-block;margin:0}.wvs-theme-flatsome .variations .reset_variations{position:relative;bottom:0;left:0}.wvs-theme-child-storefront.single-product div.product,.wvs-theme-storefront.single-product div.product{overflow:visible!important}.wvs-theme-stockholm .variations .reset_variations{position:relative;bottom:0;left:0;-webkit-transform:none;transform:none}.wvs-theme-kalium-child .image-variable-item img,.wvs-theme-kalium .image-variable-item img{width:100%!important}.wvs-theme-kalium-child .radio-variable-item input,.wvs-theme-kalium .radio-variable-item input{width:16px!important;height:16px!important}.wvs-theme-kalium-child .woo-variation-items-wrapper .select-option-ui,.wvs-theme-kalium .woo-variation-items-wrapper .select-option-ui{display:none}.wvs-theme-aurum .variable-items-wrapper .image-variable-item>img,.wvs-theme-child-aurum .variable-items-wrapper .image-variable-item>img{width:100%}.wvs-theme-hestia .woo-variation-items-wrapper.value:before{display:none!important}.wvs-theme-child-thegem .woo-variation-items-wrapper .combobox-wrapper,.wvs-theme-thegem .woo-variation-items-wrapper .combobox-wrapper{display:none}.wvs-theme-child-thegem .wvs-archive-variation-wrapper .variations,.wvs-theme-thegem .wvs-archive-variation-wrapper .variations{padding:0}.wvs-theme-child-ushop .variations_form,.wvs-theme-ushop .variations_form{overflow:visible!important}.wvs-theme-child-ushop .single-product-summary .product_meta,.wvs-theme-ushop .single-product-summary .product_meta{display:inline-table}.wvs-theme-child-savoy .woo-variation-items-wrapper,.wvs-theme-savoy .woo-variation-items-wrapper{position:relative!important}.wvs-theme-child-savoy .woo-variation-items-wrapper .sod_select,.wvs-theme-savoy .woo-variation-items-wrapper .sod_select{display:none!important}.wvs-theme-child-savoy .nm-variation-row,.wvs-theme-savoy .nm-variation-row{display:flex}.wvs-theme-child-woodstock .woo-variation-items-wrapper .variation-select,.wvs-theme-woodstock .woo-variation-items-wrapper .variation-select{display:none!important}.wvs-theme-child-woodmart .wd-attr-selected,.wvs-theme-child-woodmart .woo-variation-items-wrapper>.swatches-select,.wvs-theme-woodmart .wd-attr-selected,.wvs-theme-woodmart .woo-variation-items-wrapper>.swatches-select{display:none}.wvs-theme-gecko-child .variations .value.woo-variation-items-wrapper,.wvs-theme-gecko .variations .value.woo-variation-items-wrapper{border:0!important}.wvs-theme-gecko-child .variations .value.woo-variation-items-wrapper:after,.wvs-theme-gecko .variations .value.woo-variation-items-wrapper:after{display:none!important}.woo-variation-gallery-theme-child-massive-dynamic .woo-variation-items-wrapper .clear-selection,.woo-variation-gallery-theme-massive-dynamic .woo-variation-items-wrapper .clear-selection{border:0;height:auto;width:auto}.woo-variation-gallery-theme-child-massive-dynamic .woo-variation-items-wrapper .clear-selection .reset_variations,.woo-variation-gallery-theme-massive-dynamic .woo-variation-items-wrapper .clear-selection .reset_variations{font-size:8px!important;width:20px;height:20px;padding:5px;box-sizing:border-box;border-radius:100%;border:1px solid #f04040;color:#f04040}.wvs-theme-child-claue .woo-variation-items-wrapper,.wvs-theme-claue .woo-variation-items-wrapper{border:none}.wvs-theme-child-claue .woo-variation-items-wrapper:after,.wvs-theme-claue .woo-variation-items-wrapper:after{display:none}.wvs-theme-child-jupiter table.variations,.wvs-theme-jupiter table.variations{overflow:initial}.wvs-theme-child-oxygen .woo-variation-items-wrapper .select-wrapper,.wvs-theme-oxygen .woo-variation-items-wrapper .select-wrapper{display:none}.wvs-theme-child-oxygen .variable-items-wrapper.radio-variable-wrapper .radio-variable-item input,.wvs-theme-oxygen .variable-items-wrapper.radio-variable-wrapper .radio-variable-item input{width:18px}.wvs-theme-child-simple-elegant .woo-variation-items-wrapper .wi-nice-select,.wvs-theme-simple-elegant .woo-variation-items-wrapper .wi-nice-select{display:none}.wvs-theme-child-twentytwenty table.variations,.wvs-theme-twentytwenty table.variations{overflow:auto}.wvs-theme-child-divi .et_pb_wc_add_to_cart form.variations_form.cart .variations td.value span:after,.wvs-theme-child-jevelin .sh-woo-layout table.variations td select.woo-variation-raw-select,.wvs-theme-divi .et_pb_wc_add_to_cart form.variations_form.cart .variations td.value span:after,.wvs-theme-jevelin .sh-woo-layout table.variations td select.woo-variation-raw-select{display:none!important}.wvs-theme-child-jevelin .sh-woo-layout table.variations,.wvs-theme-jevelin .sh-woo-layout table.variations{max-width:100%}.wvs-theme-child-jevelin .radio-variable-item label,.wvs-theme-jevelin .radio-variable-item label{line-height:1!important}.wvs-theme-child-stockie .woo-variation-raw-select+.select-styled,.wvs-theme-stockie .woo-variation-raw-select+.select-styled{display:none!important}
assets/js/admin.js CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
assets/js/frontend.js CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
assets/js/gwp-admin.js CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Variation Swatches for WooCommerce v1.1.13
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 3/10/2021
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
1
  /*!
2
+ * Variation Swatches for WooCommerce v1.1.14
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 4/11/2021
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
includes/class-wvs-term-meta.php CHANGED
@@ -1,323 +1,326 @@
1
  <?php
2
-
3
- defined( 'ABSPATH' ) or die( 'Keep Silent' );
4
-
5
- if ( ! class_exists( 'WVS_Term_Meta' ) ):
6
- class WVS_Term_Meta {
7
-
8
- private $taxonomy;
9
- private $post_type;
10
- private $fields = array();
11
-
12
- public function __construct( $taxonomy, $post_type, $fields = array() ) {
13
-
14
- $this->taxonomy = $taxonomy;
15
- $this->post_type = $post_type;
16
- $this->fields = $fields;
17
-
18
- // Category/term ordering
19
- // add_action( 'create_term', array( $this, 'create_term' ), 5, 3 );
20
-
21
- add_action( 'delete_term', array( $this, 'delete_term' ), 5, 4 );
22
-
23
- // Add form
24
- add_action( "{$this->taxonomy}_add_form_fields", array( $this, 'add' ) );
25
- add_action( "{$this->taxonomy}_edit_form_fields", array( $this, 'edit' ), 10 );
26
- add_action( "created_term", array( $this, 'save' ), 10, 3 );
27
- add_action( "edit_term", array( $this, 'save' ), 10, 3 );
28
- add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
29
-
30
- // Add columns
31
- add_filter( "manage_edit-{$this->taxonomy}_columns", array( $this, 'taxonomy_columns' ) );
32
- add_filter( "manage_{$this->taxonomy}_custom_column", array( $this, 'taxonomy_column' ), 10, 3 );
33
-
34
- }
35
-
36
- public function taxonomy_columns( $columns ) {
37
- $new_columns = array();
38
-
39
- if ( isset( $columns[ 'cb' ] ) ) {
40
- $new_columns[ 'cb' ] = $columns[ 'cb' ];
41
- }
42
-
43
- $new_columns[ 'wvs-meta-preview' ] = '';
44
-
45
- if ( isset( $columns[ 'cb' ] ) ) {
46
- unset( $columns[ 'cb' ] );
47
- }
48
-
49
- return array_merge( $new_columns, $columns );
50
  }
51
-
52
- public function taxonomy_column( $columns, $column, $term_id ) {
53
-
54
- $attribute = wvs_get_wc_attribute_taxonomy( $this->taxonomy );
55
- $fields = wvs_taxonomy_meta_fields( $attribute->attribute_type );
56
- $available_types = wvs_available_attributes_types( $attribute->attribute_type );
57
- if ( isset( $available_types[ 'preview' ] ) && is_callable( $available_types[ 'preview' ] ) ) {
58
- call_user_func( $available_types[ 'preview' ], $term_id, $attribute, $fields );
59
- }
60
  }
61
-
62
- public function delete_term( $term_id, $tt_id, $taxonomy, $deleted_term ) {
63
- global $wpdb;
64
-
65
- $term_id = absint( $term_id );
66
- if ( $term_id and $taxonomy == $this->taxonomy ) {
67
- $wpdb->delete( $wpdb->termmeta, array( 'term_id' => $term_id ), array( '%d' ) );
68
- }
 
 
 
 
 
 
69
  }
70
-
71
- public function enqueue_scripts() {
72
- wp_enqueue_media();
73
- wp_enqueue_style( 'wp-color-picker' );
74
- wp_enqueue_script( 'wp-color-picker' );
 
 
 
75
  }
76
-
77
- public function save( $term_id, $tt_id = '', $taxonomy = '' ) {
78
-
79
- if ( $taxonomy == $this->taxonomy ) {
80
- foreach ( $this->fields as $field ) {
81
- foreach ( $_POST as $post_key => $post_value ) {
82
- if ( $field[ 'id' ] == $post_key ) {
83
- switch ( $field[ 'type' ] ) {
84
- case 'text':
85
- case 'color':
86
- $post_value = esc_html( $post_value );
87
- break;
88
- case 'url':
89
- $post_value = esc_url( $post_value );
90
- break;
91
- case 'image':
92
- $post_value = absint( $post_value );
93
- break;
94
- case 'textarea':
95
- $post_value = esc_textarea( $post_value );
96
- break;
97
- case 'editor':
98
- $post_value = wp_kses_post( $post_value );
99
- break;
100
- case 'select':
101
- case 'select2':
102
- $post_value = sanitize_key( $post_value );
103
- break;
104
- case 'checkbox':
105
- $post_value = sanitize_key( $post_value );
106
- break;
107
- default:
108
- do_action( 'wvs_save_term_meta', $term_id, $field, $post_value, $taxonomy );
109
- break;
110
- }
111
- update_term_meta( $term_id, $field[ 'id' ], $post_value );
 
 
 
 
 
112
  }
 
113
  }
114
  }
115
- do_action( 'wvs_after_term_meta_saved', $term_id, $taxonomy );
116
  }
 
117
  }
118
-
119
- public function add() {
120
- $this->generate_fields();
 
 
 
 
 
 
 
 
 
121
  }
122
-
123
- private function generate_fields( $term = false ) {
124
-
125
- $screen = get_current_screen();
126
-
127
- if ( ( $screen->post_type == $this->post_type ) and ( $screen->taxonomy == $this->taxonomy ) ) {
128
- self::generate_form_fields( $this->fields, $term );
129
- }
130
  }
131
-
132
- public static function generate_form_fields( $fields, $term ) {
133
-
134
- $fields = apply_filters( 'wvs_term_meta_fields', $fields, $term );
135
-
136
- if ( empty( $fields ) ) {
137
- return;
 
 
 
 
138
  }
139
-
140
- foreach ( $fields as $field ) {
141
-
142
- $field = apply_filters( 'wvs_term_meta_field', $field, $term );
143
-
144
- $field[ 'id' ] = esc_html( $field[ 'id' ] );
145
-
146
- if ( ! $term ) {
147
- $field[ 'value' ] = isset( $field[ 'default' ] ) ? $field[ 'default' ] : '';
148
- } else {
149
- $field[ 'value' ] = get_term_meta( $term->term_id, $field[ 'id' ], true );
150
- }
151
-
152
-
153
- $field[ 'size' ] = isset( $field[ 'size' ] ) ? $field[ 'size' ] : '40';
154
- $field[ 'required' ] = ( isset( $field[ 'required' ] ) and $field[ 'required' ] == true ) ? ' aria-required="true"' : '';
155
- $field[ 'placeholder' ] = ( isset( $field[ 'placeholder' ] ) ) ? ' placeholder="' . $field[ 'placeholder' ] . '" data-placeholder="' . $field[ 'placeholder' ] . '"' : '';
156
- $field[ 'desc' ] = ( isset( $field[ 'desc' ] ) ) ? $field[ 'desc' ] : '';
157
-
158
- $field[ 'dependency' ] = ( isset( $field[ 'dependency' ] ) ) ? $field[ 'dependency' ] : array();
159
-
160
- self::field_start( $field, $term );
161
- switch ( $field[ 'type' ] ) {
162
- case 'text':
163
- case 'url':
164
- ob_start();
165
- ?>
166
- <input name="<?php echo $field[ 'id' ] ?>" id="<?php echo $field[ 'id' ] ?>"
167
- type="<?php echo $field[ 'type' ] ?>"
168
- value="<?php echo $field[ 'value' ] ?>"
169
- size="<?php echo $field[ 'size' ] ?>" <?php echo $field[ 'required' ] . $field[ 'placeholder' ] ?>>
170
- <?php
171
- echo ob_get_clean();
172
- break;
173
- case 'color':
174
- ob_start();
175
- ?>
176
- <input name="<?php echo $field[ 'id' ] ?>" id="<?php echo $field[ 'id' ] ?>" type="text" class="wvs-color-picker" value="<?php echo $field[ 'value' ] ?>" data-default-color="<?php echo $field[ 'value' ] ?>" size="<?php echo $field[ 'size' ] ?>" <?php echo $field[ 'required' ] . $field[ 'placeholder' ] ?>>
177
- <?php
178
- echo ob_get_clean();
179
- break;
180
- case 'textarea':
181
- ob_start();
182
- ?>
183
- <textarea name="<?php echo $field[ 'id' ] ?>" id="<?php echo $field[ 'id' ] ?>" rows="5" cols="<?php echo $field[ 'size' ] ?>" <?php echo $field[ 'required' ] . $field[ 'placeholder' ] ?>><?php echo $field[ 'value' ] ?></textarea>
184
- <?php
185
- echo ob_get_clean();
186
- break;
187
- case 'editor':
188
- $field[ 'settings' ] = isset( $field[ 'settings' ] )
189
- ? $field[ 'settings' ]
190
- : array(
191
- 'textarea_rows' => 8,
192
- 'quicktags' => false,
193
- 'media_buttons' => false
194
- );
195
- ob_start();
196
- wp_editor( $field[ 'value' ], $field[ 'id' ], $field[ 'settings' ] );
197
- echo ob_get_clean();
198
- break;
199
- case 'select':
200
- case 'select2':
201
-
202
- $field[ 'options' ] = isset( $field[ 'options' ] ) ? $field[ 'options' ] : array();
203
- $field[ 'multiple' ] = isset( $field[ 'multiple' ] ) ? ' multiple="multiple"' : '';
204
- $css_class = ( $field[ 'type' ] == 'select2' ) ? 'wvs-selectwoo' : '';
205
-
206
- ob_start();
207
- ?>
208
- <select name="<?php echo $field[ 'id' ] ?>" id="<?php echo $field[ 'id' ] ?>" class="<?php echo $css_class ?>" <?php echo $field[ 'multiple' ] ?>>
209
- <?php
210
- foreach ( $field[ 'options' ] as $key => $option ) {
211
- echo '<option' . selected( $field[ 'value' ], $key, false ) . ' value="' . $key . '">' . $option . '</option>';
212
- }
213
- ?>
214
- </select>
215
- <?php
216
- echo ob_get_clean();
217
- break;
218
- case 'image':
219
- ob_start();
220
- ?>
221
- <div class="meta-image-field-wrapper">
222
- <div class="image-preview">
223
- <img data-placeholder="<?php echo esc_url( self::placeholder_img_src() ); ?>" src="<?php echo esc_url( self::get_img_src( $field[ 'value' ] ) ); ?>" width="60px" height="60px"/>
224
- </div>
225
- <div class="button-wrapper">
226
- <input type="hidden" id="<?php echo $field[ 'id' ] ?>" name="<?php echo $field[ 'id' ] ?>" value="<?php echo esc_attr( $field[ 'value' ] ) ?>"/>
227
- <button type="button" class="wvs_upload_image_button button button-primary button-small"><?php esc_html_e( 'Upload / Add image', 'woo-variation-swatches' ); ?></button>
228
- <button type="button" style="<?php echo( empty( $field[ 'value' ] ) ? 'display:none' : '' ) ?>" class="wvs_remove_image_button button button-danger button-small"><?php esc_html_e( 'Remove image', 'woo-variation-swatches' ); ?></button>
229
- </div>
230
- </div>
231
  <?php
232
- echo ob_get_clean();
233
- break;
234
- case 'checkbox':
235
-
236
- ob_start();
237
  ?>
238
- <label for="<?php echo esc_attr( $field[ 'id' ] ) ?>">
239
-
240
- <input name="<?php echo $field[ 'id' ] ?>" id="<?php echo $field[ 'id' ] ?>"
241
- <?php checked( $field[ 'value' ], 'yes' ) ?>
242
- type="<?php echo $field[ 'type' ] ?>"
243
- value="yes" <?php echo $field[ 'required' ] . $field[ 'placeholder' ] ?>>
244
-
245
- <?php echo $field[ 'label' ] ?></label>
246
- <?php
247
- echo ob_get_clean();
248
- break;
249
- default:
250
- do_action( 'wvs_term_meta_field', $field, $term );
251
- break;
252
-
253
- }
254
- self::field_end( $field, $term );
255
-
256
- }
257
- }
258
-
259
- private static function field_start( $field, $term ) {
260
- // Example:
261
- // http://emranahmed.github.io/Form-Field-Dependency/
262
- /*'dependency' => array(
263
- array( '#show_tooltip' => array( 'type' => 'equal', 'value' => 'yes' ) )
264
- )*/
265
-
266
- $depends = empty( $field[ 'dependency' ] ) ? '' : "data-wvsdepends='" . wp_json_encode( $field[ 'dependency' ] ) . "'";
267
-
268
- ob_start();
269
- if ( ! $term ) {
270
- ?>
271
- <div <?php echo $depends ?> class="form-field <?php echo esc_attr( $field[ 'id' ] ) ?> <?php echo empty( $field[ 'required' ] ) ? '' : 'form-required' ?>">
272
- <?php if ( $field[ 'type' ] !== 'checkbox' ) { ?>
273
- <label for="<?php echo esc_attr( $field[ 'id' ] ) ?>"><?php echo $field[ 'label' ] ?></label>
274
  <?php
275
- }
276
- } else {
277
- ?>
278
- <tr <?php echo $depends ?> class="form-field <?php echo esc_attr( $field[ 'id' ] ) ?> <?php echo empty( $field[ 'required' ] ) ? '' : 'form-required' ?>">
279
- <th scope="row">
280
- <label for="<?php echo esc_attr( $field[ 'id' ] ) ?>"><?php echo $field[ 'label' ] ?></label>
281
- </th>
282
- <td>
283
- <?php
284
- }
285
- echo ob_get_clean();
286
- }
287
-
288
- private static function get_img_src( $thumbnail_id = false ) {
289
- if ( ! empty( $thumbnail_id ) ) {
290
- $image = wp_get_attachment_thumb_url( $thumbnail_id );
291
- } else {
292
- $image = self::placeholder_img_src();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
293
  }
294
-
295
- return $image;
296
- }
297
-
298
- private static function placeholder_img_src() {
299
- return woo_variation_swatches()->images_uri( 'placeholder.png' );
300
  }
301
-
302
- private static function field_end( $field, $term ) {
303
-
304
- ob_start();
305
- if ( ! $term ) {
306
- ?>
307
- <p><?php echo $field[ 'desc' ] ?></p>
308
- </div>
309
- <?php
310
- } else {
311
- ?>
312
- <p class="description"><?php echo $field[ 'desc' ] ?></p></td>
313
- </tr>
 
 
 
 
314
  <?php
315
  }
316
- echo ob_get_clean();
 
 
 
 
 
 
 
317
  }
318
-
319
- public function edit( $term ) {
320
- $this->generate_fields( $term );
 
 
 
 
 
321
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
322
  }
323
- endif;
 
1
  <?php
2
+
3
+ defined( 'ABSPATH' ) or die( 'Keep Silent' );
4
+
5
+ if ( ! class_exists( 'WVS_Term_Meta' ) ):
6
+ class WVS_Term_Meta {
7
+
8
+ private $taxonomy;
9
+ private $post_type;
10
+ private $fields = array();
11
+
12
+ public function __construct( $taxonomy, $post_type, $fields = array() ) {
13
+
14
+ $this->taxonomy = $taxonomy;
15
+ $this->post_type = $post_type;
16
+ $this->fields = $fields;
17
+
18
+ // Category/term ordering
19
+ // add_action( 'create_term', array( $this, 'create_term' ), 5, 3 );
20
+
21
+ add_action( 'delete_term', array( $this, 'delete_term' ), 5, 4 );
22
+
23
+ // Add form
24
+ add_action( "{$this->taxonomy}_add_form_fields", array( $this, 'add' ) );
25
+ add_action( "{$this->taxonomy}_edit_form_fields", array( $this, 'edit' ), 10 );
26
+ add_action( "created_term", array( $this, 'save' ), 10, 3 );
27
+ add_action( "edit_term", array( $this, 'save' ), 10, 3 );
28
+ add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
29
+
30
+ // Add columns
31
+ add_filter( "manage_edit-{$this->taxonomy}_columns", array( $this, 'taxonomy_columns' ) );
32
+ add_filter( "manage_{$this->taxonomy}_custom_column", array( $this, 'taxonomy_column' ), 10, 3 );
33
+
34
+ }
35
+
36
+ public function taxonomy_columns( $columns ) {
37
+ $new_columns = array();
38
+
39
+ if ( isset( $columns['cb'] ) ) {
40
+ $new_columns['cb'] = $columns['cb'];
 
 
 
 
 
 
 
 
 
41
  }
42
+
43
+ $new_columns['wvs-meta-preview'] = '';
44
+
45
+ if ( isset( $columns['cb'] ) ) {
46
+ unset( $columns['cb'] );
 
 
 
 
47
  }
48
+
49
+ return array_merge( $new_columns, $columns );
50
+ }
51
+
52
+ public function taxonomy_column( $columns, $column, $term_id ) {
53
+
54
+ $attribute = wvs_get_wc_attribute_taxonomy( $this->taxonomy );
55
+ $fields = wvs_taxonomy_meta_fields( $attribute->attribute_type );
56
+ $available_types = wvs_available_attributes_types( $attribute->attribute_type );
57
+
58
+ do_action( 'wvs_global_attribute_column', $column, $term_id, $this->taxonomy, $attribute, $fields, $available_types );
59
+
60
+ if ( isset( $available_types['preview'] ) && is_callable( $available_types['preview'] ) ) {
61
+ call_user_func( $available_types['preview'], $term_id, $attribute, $fields );
62
  }
63
+ }
64
+
65
+ public function delete_term( $term_id, $tt_id, $taxonomy, $deleted_term ) {
66
+ global $wpdb;
67
+
68
+ $term_id = absint( $term_id );
69
+ if ( $term_id and $taxonomy == $this->taxonomy ) {
70
+ $wpdb->delete( $wpdb->termmeta, array( 'term_id' => $term_id ), array( '%d' ) );
71
  }
72
+ }
73
+
74
+ public function enqueue_scripts() {
75
+ wp_enqueue_media();
76
+ wp_enqueue_style( 'wp-color-picker' );
77
+ wp_enqueue_script( 'wp-color-picker' );
78
+ }
79
+
80
+ public function save( $term_id, $tt_id = '', $taxonomy = '' ) {
81
+
82
+ if ( $taxonomy == $this->taxonomy ) {
83
+ foreach ( $this->fields as $field ) {
84
+ foreach ( $_POST as $post_key => $post_value ) {
85
+ if ( $field['id'] == $post_key ) {
86
+ switch ( $field['type'] ) {
87
+ case 'text':
88
+ case 'color':
89
+ $post_value = esc_html( $post_value );
90
+ break;
91
+ case 'url':
92
+ $post_value = esc_url( $post_value );
93
+ break;
94
+ case 'image':
95
+ $post_value = absint( $post_value );
96
+ break;
97
+ case 'textarea':
98
+ $post_value = esc_textarea( $post_value );
99
+ break;
100
+ case 'editor':
101
+ $post_value = wp_kses_post( $post_value );
102
+ break;
103
+ case 'select':
104
+ case 'select2':
105
+ $post_value = sanitize_key( $post_value );
106
+ break;
107
+ case 'checkbox':
108
+ $post_value = sanitize_key( $post_value );
109
+ break;
110
+ default:
111
+ do_action( 'wvs_save_term_meta', $term_id, $field, $post_value, $taxonomy );
112
+ break;
113
  }
114
+ update_term_meta( $term_id, $field['id'], $post_value );
115
  }
116
  }
 
117
  }
118
+ do_action( 'wvs_after_term_meta_saved', $term_id, $taxonomy );
119
  }
120
+ }
121
+
122
+ public function add() {
123
+ $this->generate_fields();
124
+ }
125
+
126
+ private function generate_fields( $term = false ) {
127
+
128
+ $screen = get_current_screen();
129
+
130
+ if ( ( $screen->post_type == $this->post_type ) and ( $screen->taxonomy == $this->taxonomy ) ) {
131
+ self::generate_form_fields( $this->fields, $term );
132
  }
133
+ }
134
+
135
+ public static function generate_form_fields( $fields, $term ) {
136
+
137
+ $fields = apply_filters( 'wvs_term_meta_fields', $fields, $term );
138
+
139
+ if ( empty( $fields ) ) {
140
+ return;
141
  }
142
+
143
+ foreach ( $fields as $field ) {
144
+
145
+ $field = apply_filters( 'wvs_term_meta_field', $field, $term );
146
+
147
+ $field['id'] = esc_html( $field['id'] );
148
+
149
+ if ( ! $term ) {
150
+ $field['value'] = isset( $field['default'] ) ? $field['default'] : '';
151
+ } else {
152
+ $field['value'] = get_term_meta( $term->term_id, $field['id'], true );
153
  }
154
+
155
+
156
+ $field['size'] = isset( $field['size'] ) ? $field['size'] : '40';
157
+ $field['required'] = ( isset( $field['required'] ) and $field['required'] == true ) ? ' aria-required="true"' : '';
158
+ $field['placeholder'] = ( isset( $field['placeholder'] ) ) ? ' placeholder="' . $field['placeholder'] . '" data-placeholder="' . $field['placeholder'] . '"' : '';
159
+ $field['desc'] = ( isset( $field['desc'] ) ) ? $field['desc'] : '';
160
+
161
+ $field['dependency'] = ( isset( $field['dependency'] ) ) ? $field['dependency'] : array();
162
+
163
+ self::field_start( $field, $term );
164
+ switch ( $field['type'] ) {
165
+ case 'text':
166
+ case 'url':
167
+ ob_start();
168
+ ?>
169
+ <input name="<?php echo $field['id'] ?>" id="<?php echo $field['id'] ?>"
170
+ type="<?php echo $field['type'] ?>"
171
+ value="<?php echo $field['value'] ?>"
172
+ size="<?php echo $field['size'] ?>" <?php echo $field['required'] . $field['placeholder'] ?>>
173
+ <?php
174
+ echo ob_get_clean();
175
+ break;
176
+ case 'color':
177
+ ob_start();
178
+ ?>
179
+ <input name="<?php echo $field['id'] ?>" id="<?php echo $field['id'] ?>" type="text" class="wvs-color-picker" value="<?php echo $field['value'] ?>" data-default-color="<?php echo $field['value'] ?>" size="<?php echo $field['size'] ?>" <?php echo $field['required'] . $field['placeholder'] ?>>
180
+ <?php
181
+ echo ob_get_clean();
182
+ break;
183
+ case 'textarea':
184
+ ob_start();
185
+ ?>
186
+ <textarea name="<?php echo $field['id'] ?>" id="<?php echo $field['id'] ?>" rows="5" cols="<?php echo $field['size'] ?>" <?php echo $field['required'] . $field['placeholder'] ?>><?php echo $field['value'] ?></textarea>
187
+ <?php
188
+ echo ob_get_clean();
189
+ break;
190
+ case 'editor':
191
+ $field['settings'] = isset( $field['settings'] )
192
+ ? $field['settings']
193
+ : array(
194
+ 'textarea_rows' => 8,
195
+ 'quicktags' => false,
196
+ 'media_buttons' => false
197
+ );
198
+ ob_start();
199
+ wp_editor( $field['value'], $field['id'], $field['settings'] );
200
+ echo ob_get_clean();
201
+ break;
202
+ case 'select':
203
+ case 'select2':
204
+
205
+ $field['options'] = isset( $field['options'] ) ? $field['options'] : array();
206
+ $field['multiple'] = isset( $field['multiple'] ) ? ' multiple="multiple"' : '';
207
+ $css_class = ( $field['type'] == 'select2' ) ? 'wvs-selectwoo' : '';
208
+
209
+ ob_start();
210
+ ?>
211
+ <select name="<?php echo $field['id'] ?>" id="<?php echo $field['id'] ?>" class="<?php echo $css_class ?>" <?php echo $field['multiple'] ?>>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
212
  <?php
213
+ foreach ( $field['options'] as $key => $option ) {
214
+ echo '<option' . selected( $field['value'], $key, false ) . ' value="' . $key . '">' . $option . '</option>';
215
+ }
 
 
216
  ?>
217
+ </select>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
218
  <?php
219
+ echo ob_get_clean();
220
+ break;
221
+ case 'image':
222
+ ob_start();
223
+ ?>
224
+ <div class="meta-image-field-wrapper">
225
+ <div class="image-preview">
226
+ <img data-placeholder="<?php echo esc_url( self::placeholder_img_src() ); ?>" src="<?php echo esc_url( self::get_img_src( $field['value'] ) ); ?>" width="60px" height="60px" />
227
+ </div>
228
+ <div class="button-wrapper">
229
+ <input type="hidden" id="<?php echo $field['id'] ?>" name="<?php echo $field['id'] ?>" value="<?php echo esc_attr( $field['value'] ) ?>" />
230
+ <button type="button" class="wvs_upload_image_button button button-primary button-small"><?php esc_html_e( 'Upload / Add image', 'woo-variation-swatches' ); ?></button>
231
+ <button type="button" style="<?php echo( empty( $field['value'] ) ? 'display:none' : '' ) ?>" class="wvs_remove_image_button button button-danger button-small"><?php esc_html_e( 'Remove image', 'woo-variation-swatches' ); ?></button>
232
+ </div>
233
+ </div>
234
+ <?php
235
+ echo ob_get_clean();
236
+ break;
237
+ case 'checkbox':
238
+
239
+ ob_start();
240
+ ?>
241
+ <label for="<?php echo esc_attr( $field['id'] ) ?>">
242
+
243
+ <input name="<?php echo $field['id'] ?>" id="<?php echo $field['id'] ?>"
244
+ <?php checked( $field['value'], 'yes' ) ?>
245
+ type="<?php echo $field['type'] ?>"
246
+ value="yes" <?php echo $field['required'] . $field['placeholder'] ?>>
247
+
248
+ <?php echo $field['label'] ?></label>
249
+ <?php
250
+ echo ob_get_clean();
251
+ break;
252
+ default:
253
+ do_action( 'wvs_term_meta_field', $field, $term );
254
+ break;
255
+
256
  }
257
+ self::field_end( $field, $term );
258
+
 
 
 
 
259
  }
260
+ }
261
+
262
+ private static function field_start( $field, $term ) {
263
+ // Example:
264
+ // http://emranahmed.github.io/Form-Field-Dependency/
265
+ /*'dependency' => array(
266
+ array( '#show_tooltip' => array( 'type' => 'equal', 'value' => 'yes' ) )
267
+ )*/
268
+
269
+ $depends = empty( $field['dependency'] ) ? '' : "data-wvsdepends='" . wp_json_encode( $field['dependency'] ) . "'";
270
+
271
+ ob_start();
272
+ if ( ! $term ) {
273
+ ?>
274
+ <div <?php echo $depends ?> class="form-field <?php echo esc_attr( $field['id'] ) ?> <?php echo empty( $field['required'] ) ? '' : 'form-required' ?>">
275
+ <?php if ( $field['type'] !== 'checkbox' ) { ?>
276
+ <label for="<?php echo esc_attr( $field['id'] ) ?>"><?php echo $field['label'] ?></label>
277
  <?php
278
  }
279
+ } else {
280
+ ?>
281
+ <tr <?php echo $depends ?> class="form-field <?php echo esc_attr( $field['id'] ) ?> <?php echo empty( $field['required'] ) ? '' : 'form-required' ?>">
282
+ <th scope="row">
283
+ <label for="<?php echo esc_attr( $field['id'] ) ?>"><?php echo $field['label'] ?></label>
284
+ </th>
285
+ <td>
286
+ <?php
287
  }
288
+ echo ob_get_clean();
289
+ }
290
+
291
+ private static function get_img_src( $thumbnail_id = false ) {
292
+ if ( ! empty( $thumbnail_id ) ) {
293
+ $image = wp_get_attachment_thumb_url( $thumbnail_id );
294
+ } else {
295
+ $image = self::placeholder_img_src();
296
  }
297
+
298
+ return $image;
299
+ }
300
+
301
+ private static function placeholder_img_src() {
302
+ return woo_variation_swatches()->images_uri( 'placeholder.png' );
303
+ }
304
+
305
+ private static function field_end( $field, $term ) {
306
+
307
+ ob_start();
308
+ if ( ! $term ) {
309
+ ?>
310
+ <p><?php echo $field['desc'] ?></p>
311
+ </div>
312
+ <?php
313
+ } else {
314
+ ?>
315
+ <p class="description"><?php echo $field['desc'] ?></p></td>
316
+ </tr>
317
+ <?php
318
+ }
319
+ echo ob_get_clean();
320
+ }
321
+
322
+ public function edit( $term ) {
323
+ $this->generate_fields( $term );
324
  }
325
+ }
326
+ endif;
includes/functions.php CHANGED
@@ -22,6 +22,24 @@ if ( ! function_exists( 'wvs_is_ie11' ) ):
22
  }
23
  endif;
24
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
25
  //-------------------------------------------------------------------------------
26
  // Get All Image Sizes if wp_get_registered_image_subsizes function not available
27
  //-------------------------------------------------------------------------------
@@ -944,7 +962,7 @@ if ( ! function_exists( 'wvs_variable_item' ) ):
944
  $image_size = woo_variation_swatches()->get_option( 'attribute_image_size' );
945
  $image = wp_get_attachment_image_src( $attachment_id, apply_filters( 'wvs_product_attribute_image_size', $image_size, $attribute, $product ) );
946
 
947
- $data .= sprintf( '<img aria-hidden="true" alt="%s" src="%s" width="%d" height="%d" />', esc_attr( $option ), esc_url( $image[0] ), esc_attr( $image[1] ), esc_attr( $image[2] ) );
948
 
949
  break;
950
 
@@ -1033,7 +1051,7 @@ if ( ! function_exists( 'wvs_default_variable_item' ) ):
1033
  $image_size = sanitize_text_field( woo_variation_swatches()->get_option( 'attribute_image_size' ) );
1034
  $image = wp_get_attachment_image_src( $attachment_id, apply_filters( 'wvs_product_attribute_image_size', $image_size, $attribute, $product ) );
1035
 
1036
- $data .= sprintf( '<img aria-hidden="true" alt="%s" src="%s" width="%d" height="%d" />', esc_attr( $option ), esc_url( $image[0] ), esc_attr( $image[1] ), esc_attr( $image[2] ) );
1037
  // $data .= $image_html;
1038
  break;
1039
 
@@ -1088,7 +1106,7 @@ if ( ! function_exists( 'wvs_default_variable_item' ) ):
1088
  $image_size = sanitize_text_field( woo_variation_swatches()->get_option( 'attribute_image_size' ) );
1089
  $image = wp_get_attachment_image_src( $attachment_id, apply_filters( 'wvs_product_attribute_image_size', $image_size, $attribute, $product ) );
1090
 
1091
- $data .= sprintf( '<img aria-hidden="true" alt="%s" src="%s" width="%d" height="%d" />', esc_attr( $option ), esc_url( $image[0] ), esc_attr( $image[1] ), esc_attr( $image[2] ) );
1092
  // $data .= $image_html;
1093
  break;
1094
 
@@ -1768,176 +1786,7 @@ endif;
1768
  if ( ! function_exists( 'add_wvs_pro_preview_tab_panel' ) ):
1769
  function add_wvs_pro_preview_tab_panel() {
1770
  ob_start();
1771
- ?>
1772
- <div id="wvs-pro-product-variable-swatches-options" class="panel wc-metaboxes-wrapper hidden">
1773
- <style type="text/css">
1774
- .gwp-pro-features-wrapper {
1775
- padding: 20px;
1776
- margin: 10px;
1777
- background-color: #f1f1f1;
1778
- }
1779
-
1780
- .gwp-pro-features-wrapper li span {
1781
- color: #15ce5c;
1782
- }
1783
-
1784
- .gwp-pro-features-wrapper p, .gwp-pro-features-wrapper ul {
1785
- padding: 10px 0;
1786
- }
1787
-
1788
- .gwp-pro-button span {
1789
- padding-top: 10px;
1790
- }
1791
-
1792
- .gwp-pro-features-wrapper ul {
1793
- display: block;
1794
-
1795
- }
1796
-
1797
- .gwp-pro-features-wrapper ul li {
1798
- margin-bottom: 10px;
1799
- }
1800
-
1801
- .gwp-pro-features-wrapper .gwp-pro-features-links {
1802
- margin-left: 20px;
1803
- padding: 5px;
1804
- }
1805
-
1806
- </style>
1807
- <div class="gwp-pro-features-wrapper">
1808
- <h3>Upgrade to Variation Swatches for WooCommerce - Pro</h3>
1809
- <ul>
1810
- <li>
1811
- <div class="gwp-pro-video-features-wrapper">
1812
- <iframe width="100%" height="485" src="https://www.youtube.com/embed/rg1Xg-t29Kc?rel=0&amp;showinfo=0" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
1813
- </div>
1814
- </li>
1815
- </ul>
1816
- <h4>With the premium version of Variation Swatches for WooCommerce, you can do:</h4>
1817
- <ul>
1818
- <li><span class="dashicons dashicons-yes"></span> Convert attribute variations into radio button.
1819
- <div class="gwp-pro-features-links">
1820
- <a target="_blank" href="http://bit.ly/radio-product-settings-demo">Live Demo</a> |
1821
- <a target="_blank" href="http://bit.ly/customattribute-productpage-settings">Video Tutorial</a>
1822
- </div>
1823
- </li>
1824
- <li>
1825
- <span class="dashicons dashicons-yes"></span> Show Entire Color, Image, Label And Radio Attributes Swatches In Catelog/ Category / Archive / Store/ Shop Pages
1826
- <div class="gwp-pro-features-links">
1827
- <a target="_blank" href="http://bit.ly/add-to-cart-shop-page-swatch-product-settings-demo">Live Demo</a> |
1828
- <a target="_blank" href="http://bit.ly/add-to-cart-readme-video">Video Tutorial</a></div>
1829
- </li>
1830
-
1831
- <li>
1832
- <span class="dashicons dashicons-yes"></span> Show Selected Single Color or Image Or Label Attribute Swatches In Catelog/ Category / Archive / Store / Shop Pages
1833
- <div class="gwp-pro-features-links">
1834
- <a target="_blank" href="http://bit.ly/catalog-archive-demo-product-settings">Live Demo</a> |
1835
- <a target="_blank" href="http://bit.ly/catalog-archive-readme-youtube-tuts">Video Tutorial</a>
1836
- </div>
1837
- </li>
1838
-
1839
- <li>
1840
- <span class="dashicons dashicons-yes"></span> Individual Product Basis Attribute Variation Swatches Customization
1841
-
1842
- <div class="gwp-pro-features-links">
1843
- <a target="_blank" href="http://bit.ly/product-basis-demo-product-settings">Live Demo</a> |
1844
- <a target="_blank" href="http://bit.ly/product-basis-youtube-video-link-from-readme">Video Tutorial</a>
1845
- </div>
1846
- </li>
1847
-
1848
- <li>
1849
- <span class="dashicons dashicons-yes"></span> Show Image, Color, Button Variation Swatches in Same Attribute
1850
- <div class="gwp-pro-features-links">
1851
- <a target="_blank" href="http://bit.ly/product-basis-demo-product-page-settings-same-swatches">Live Demo</a> |
1852
- <a target="_blank" href="http://bit.ly/product-basis-youtube-video-link-from-readme">Video Tutorial</a>
1853
- </div>
1854
- </li>
1855
-
1856
- <li>
1857
- <span class="dashicons dashicons-yes"></span> Convert Manually Created Attibute Variations Into Color, Image, and Label Swatches
1858
- <div class="gwp-pro-features-links">
1859
- <a target="_blank" href="http://bit.ly/manual-attribute-readme-video">Video Tutorial</a>
1860
- </div>
1861
- </li>
1862
-
1863
- <li>
1864
- <span class="dashicons dashicons-yes"></span> Change Variation Product Gallery After Selecting Single Attribute Like Amazon Or AliExpress
1865
- <div class="gwp-pro-features-links">
1866
- <a target="_blank" href="http://bit.ly/change-gallery-image-on-single-attribute-demo-from-plugin-product-page-setting">Live Demo</a> |
1867
- <a target="_blank" href="http://bit.ly/change-gallery-image-on-single-attribute-youtube-readme">Video Tutorial</a>
1868
- </div>
1869
- </li>
1870
-
1871
- <li><span class="dashicons dashicons-yes"></span> Generate Selected Attribute Variation Link
1872
- <div class="gwp-pro-features-links">
1873
- <a target="_blank" href="http://bit.ly/link-generate-product-settings-demo">Live Demo</a> |
1874
- <a target="_blank" href="http://bit.ly/link-generate-readme-youtube">Video Tutorial</a>
1875
- </div>
1876
- </li>
1877
- <li>
1878
- <span class="dashicons dashicons-yes"></span> Option to Select ROUNDED and SQUARED Attribute Variation Swatches Shape In the Same Product.
1879
- <div class="gwp-pro-features-links">
1880
- <a target="_blank" href="http://bit.ly/round-square-demo-product-settings">Live Demo</a> |
1881
- <a target="_blank" href="http://bit.ly/round-square-youtube-video-from-readme">Video Tutorial</a>
1882
- </div>
1883
- </li>
1884
-
1885
- <li>
1886
- <span class="dashicons dashicons-yes"></span> Blur Or Hide Or Show Cross Sign For Out of Stock Variation Swatches (Unlimited Variations Without hiding out of stock item from catalog)
1887
- <div class="gwp-pro-features-links">
1888
- <a target="_blank" href="http://bit.ly/bulr-premium-outstock-demo-product-settings">Live Demo</a> |
1889
- <a target="_blank" href="http://bit.ly/blur-hide-youtube-readme">Video Tutorial</a></div>
1890
- </li>
1891
-
1892
- <li><span class="dashicons dashicons-yes"></span> Shop Page Swatches Size Control
1893
- <div class="gwp-pro-features-links">
1894
- <a target="_blank" href="http://bit.ly/shop-swatches-size-readme">Live Preview</a></div>
1895
- </li>
1896
-
1897
- <li>
1898
- <span class="dashicons dashicons-yes"></span> Make Selected Attribute Variation Swatches Size Larger Than Other Default Attribute Variations
1899
- <div class="gwp-pro-features-links">
1900
- <a target="_blank" href="http://bit.ly/special-attribute-product-settings-demo">Live Demo</a> |
1901
- <a target="_blank" href="http://bit.ly/special-attribute-youtube-readme">Video Tutorial</a>
1902
- </div>
1903
- </li>
1904
-
1905
- <li>
1906
- <span class="dashicons dashicons-yes"></span> Show Custom Text in Variation Tooltip In Product and Shop Page
1907
- <div class="gwp-pro-features-links">
1908
- <a target="_blank" href="http://bit.ly/custom-tooltip-text-readme">Live Preview</a></div>
1909
- </li>
1910
-
1911
- <li>
1912
- <span class="dashicons dashicons-yes"></span> Show Custom Image in Variation Swatches Tooltip In Product And Shop Page
1913
- <div class="gwp-pro-features-links">
1914
- <a target="_blank" href="http://bit.ly/image-tooltip-product-settings">Live Demo</a> |
1915
- <a target="_blank" href="http://bit.ly/tooltip-tip-image-youtube-readme">Video Tutorial</a>
1916
- </div>
1917
- </li>
1918
-
1919
- <li><span class="dashicons dashicons-yes"></span> Archive page swatches positioning.</li>
1920
- <li><span class="dashicons dashicons-yes"></span> Archive page swatches alignment.</li>
1921
- <li><span class="dashicons dashicons-yes"></span> Tooltip display setting on archive/shop page.</li>
1922
- <li><span class="dashicons dashicons-yes"></span> Variation clear button display setting.</li>
1923
- <li><span class="dashicons dashicons-yes"></span> Customize tooltip text and background color.</li>
1924
- <li><span class="dashicons dashicons-yes"></span> Customize tooltip image and image size.</li>
1925
- <li><span class="dashicons dashicons-yes"></span> Customize font size, swatches height and width.
1926
- </li>
1927
- <li>
1928
- <span class="dashicons dashicons-yes"></span> Customize swatches colors, background and border sizes.
1929
- </li>
1930
- <li><span class="dashicons dashicons-yes"></span> Automatic updates and exclusive technical support.
1931
- </li>
1932
-
1933
- </ul>
1934
- <div class="clear"></div>
1935
- <a target="_blank" class="button button-primary button-hero gwp-pro-button" href="<?php echo esc_url( woo_variation_swatches()->get_pro_link( 'product-edit' ) ); ?>">Okay, I need the features!
1936
- <span class="dashicons dashicons-external"></span></a>
1937
- </div>
1938
- </div>
1939
- <?php
1940
-
1941
  echo ob_get_clean();
1942
  }
1943
  endif;
22
  }
23
  endif;
24
 
25
+ /**
26
+ * Returns the translated object ID (post_type or term) or original if missing
27
+ *
28
+ * @param $object_id integer|string|array The ID/s of the objects to check and return
29
+ * @param $type the object type: post, page, {custom post type name}, nav_menu, nav_menu_item, category, tag etc.
30
+ *
31
+ * @return string or array of object ids
32
+ */
33
+
34
+ // https://wpml.org/wpml-hook/wpml_object_id/
35
+ if ( ! function_exists( 'wvs_wpml_object_id' ) ) {
36
+ function wvs_wpml_object_id( $object_id, $type = 'post', $language = null ) {
37
+ $current_language = apply_filters( 'wpml_current_language', $language );
38
+
39
+ return apply_filters( 'wpml_object_id', $object_id, $type, true, $current_language );
40
+ }
41
+ }
42
+
43
  //-------------------------------------------------------------------------------
44
  // Get All Image Sizes if wp_get_registered_image_subsizes function not available
45
  //-------------------------------------------------------------------------------
962
  $image_size = woo_variation_swatches()->get_option( 'attribute_image_size' );
963
  $image = wp_get_attachment_image_src( $attachment_id, apply_filters( 'wvs_product_attribute_image_size', $image_size, $attribute, $product ) );
964
 
965
+ $data .= sprintf( '<img class="variable-item-image" aria-hidden="true" alt="%s" src="%s" width="%d" height="%d" />', esc_attr( $option ), esc_url( $image[0] ), esc_attr( $image[1] ), esc_attr( $image[2] ) );
966
 
967
  break;
968
 
1051
  $image_size = sanitize_text_field( woo_variation_swatches()->get_option( 'attribute_image_size' ) );
1052
  $image = wp_get_attachment_image_src( $attachment_id, apply_filters( 'wvs_product_attribute_image_size', $image_size, $attribute, $product ) );
1053
 
1054
+ $data .= sprintf( '<img class="variable-item-image" aria-hidden="true" alt="%s" src="%s" width="%d" height="%d" />', esc_attr( $option ), esc_url( $image[0] ), esc_attr( $image[1] ), esc_attr( $image[2] ) );
1055
  // $data .= $image_html;
1056
  break;
1057
 
1106
  $image_size = sanitize_text_field( woo_variation_swatches()->get_option( 'attribute_image_size' ) );
1107
  $image = wp_get_attachment_image_src( $attachment_id, apply_filters( 'wvs_product_attribute_image_size', $image_size, $attribute, $product ) );
1108
 
1109
+ $data .= sprintf( '<img class="variable-item-image" aria-hidden="true" alt="%s" src="%s" width="%d" height="%d" />', esc_attr( $option ), esc_url( $image[0] ), esc_attr( $image[1] ), esc_attr( $image[2] ) );
1110
  // $data .= $image_html;
1111
  break;
1112
 
1786
  if ( ! function_exists( 'add_wvs_pro_preview_tab_panel' ) ):
1787
  function add_wvs_pro_preview_tab_panel() {
1788
  ob_start();
1789
+ include_once 'preview-tab-tutorials.php';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1790
  echo ob_get_clean();
1791
  }
1792
  endif;
includes/hooks.php CHANGED
@@ -66,4 +66,43 @@ add_action( 'wvs_pro_reset_product_attributes', 'wvs_clear_transient' );
66
  // Gallery Install Notice
67
  add_action( 'woocommerce_product_after_variable_attributes', 'wvs_install_woo_variation_gallery_notice', 10, 3 );
68
 
69
- add_action( 'wp_ajax_install_woo_variation_gallery', 'wvs_install_woo_variation_gallery' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
66
  // Gallery Install Notice
67
  add_action( 'woocommerce_product_after_variable_attributes', 'wvs_install_woo_variation_gallery_notice', 10, 3 );
68
 
69
+ add_action( 'wp_ajax_install_woo_variation_gallery', 'wvs_install_woo_variation_gallery' );
70
+
71
+
72
+ // WPML Support
73
+ add_action( 'wvs_global_attribute_column', function ( $column, $term_id, $taxonomy, $attribute, $fields, $available_types ) {
74
+ if ( class_exists( 'SitePress' ) ) {
75
+
76
+ global $sitepress;
77
+
78
+ $keys = wp_list_pluck( $fields, 'id' );
79
+ // $keys = array_column($fields, 'id');
80
+
81
+ foreach ( $keys as $key ) {
82
+ $value = sanitize_text_field( get_term_meta( $term_id, $key, true ) );
83
+ // $original_element_id = $sitepress->get_original_element_id( $term_id, 'tax_' . $taxonomy );
84
+ $trid = $sitepress->get_element_trid( $term_id, 'tax_' . $taxonomy );
85
+ $translations = $sitepress->get_element_translations( $trid, 'tax_' . $taxonomy );
86
+
87
+ $current_lang = $sitepress->get_current_language();
88
+ $default_lang = $sitepress->get_default_language();
89
+
90
+ if ( $translations && empty( $value ) ) {
91
+ // source_language_code
92
+ $translation = array_values( array_filter( $translations, function ( $translation ) {
93
+ return isset( $translation->original ) && ! empty( $translation->original );
94
+ } ) );
95
+
96
+ $translation = array_shift( $translation );
97
+
98
+ if ( empty( $value ) && $translation ) {
99
+ $original_term_id = $translation->term_id;
100
+ $original_value = sanitize_text_field( get_term_meta( $original_term_id, $key, true ) );
101
+ // Copy term meta from original
102
+ update_term_meta( $term_id, $key, $original_value );
103
+ }
104
+ }
105
+
106
+ }
107
+ }
108
+ }, 10, 6 );
includes/preview-tab-tutorials.php ADDED
@@ -0,0 +1,189 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ defined( 'ABSPATH' ) or die( 'Keep Quit' );
3
+ ?>
4
+ <div id="wvs-pro-product-variable-swatches-options" class="panel wc-metaboxes-wrapper hidden">
5
+ <style type="text/css">
6
+ .gwp-pro-features-wrapper {
7
+ padding: 20px;
8
+ margin: 10px;
9
+ background-color: #f1f1f1;
10
+ }
11
+
12
+ .gwp-pro-features-wrapper li span {
13
+ color: #15ce5c;
14
+ }
15
+
16
+ .gwp-pro-features-wrapper p, .gwp-pro-features-wrapper ul {
17
+ padding: 10px 0;
18
+ }
19
+
20
+ .gwp-pro-button span {
21
+ padding-top: 10px;
22
+ }
23
+
24
+ .gwp-pro-features-wrapper ul {
25
+ display: block;
26
+
27
+ }
28
+
29
+ .gwp-pro-features-wrapper ul li {
30
+ margin-bottom: 10px;
31
+ }
32
+
33
+ .gwp-pro-features-wrapper .gwp-pro-features-links {
34
+ margin-left: 20px;
35
+ padding: 5px;
36
+ }
37
+
38
+ </style>
39
+ <div class="gwp-pro-features-wrapper">
40
+ <h2>Upgrade to Variation Swatches for WooCommerce - Pro</h2>
41
+ <hr />
42
+ <h3>How To Convert WooCommerce Custom Product Level Attribute Variation Into Color, Image, Button and Radio Swatches</h3>
43
+ <ul>
44
+ <li>
45
+ <div class="gwp-pro-video-features-wrapper">
46
+ <iframe width="100%" height="485" src="https://www.youtube.com/embed/rg1Xg-t29Kc?rel=0&amp;showinfo=0" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
47
+ </div>
48
+ </li>
49
+ </ul>
50
+ <h3>How To Show WooCommerce Variation Swatches on Shop / Archive Page</h3>
51
+ <ul>
52
+ <li>
53
+ <div class="gwp-pro-video-features-wrapper">
54
+ <iframe width="100%" height="485" src="https://www.youtube.com/embed/1IhEZiGzJHs?rel=0&amp;showinfo=0" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
55
+ </div>
56
+ </li>
57
+ </ul>
58
+ <h3>How To Convert WooCommerce Product Variation Into Dual / Multi Color Swatches</h3>
59
+ <ul>
60
+ <li>
61
+ <div class="gwp-pro-video-features-wrapper">
62
+ <iframe width="100%" height="485" src="https://www.youtube.com/embed/EgwRHfeGSZQ?rel=0&amp;showinfo=0" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
63
+ </div>
64
+ </li>
65
+ </ul>
66
+ <h4>With the premium version of Variation Swatches for WooCommerce, you can do:</h4>
67
+ <ul>
68
+ <li><span class="dashicons dashicons-yes"></span> Convert attribute variations into radio button.
69
+ <div class="gwp-pro-features-links">
70
+ <a target="_blank" href="http://bit.ly/radio-product-settings-demo">Live Demo</a> |
71
+ <a target="_blank" href="http://bit.ly/customattribute-productpage-settings">Video Tutorial</a>
72
+ </div>
73
+ </li>
74
+ <li>
75
+ <span class="dashicons dashicons-yes"></span> Show Entire Color, Image, Label And Radio Attributes Swatches In Catalog/ Category / Archive / Store/ Shop Pages
76
+ <div class="gwp-pro-features-links">
77
+ <a target="_blank" href="http://bit.ly/add-to-cart-shop-page-swatch-product-settings-demo">Live Demo</a> |
78
+ <a target="_blank" href="https://www.youtube.com/watch?v=1IhEZiGzJHs">Video Tutorial</a></div>
79
+ </li>
80
+
81
+ <li>
82
+ <span class="dashicons dashicons-yes"></span> Show Selected Single Color or Image Or Label Attribute Swatches In Catelog/ Category / Archive / Store / Shop Pages
83
+ <div class="gwp-pro-features-links">
84
+ <a target="_blank" href="http://bit.ly/catalog-archive-demo-product-settings">Live Demo</a> |
85
+ <a target="_blank" href="http://bit.ly/catalog-archive-readme-youtube-tuts">Video Tutorial</a>
86
+ </div>
87
+ </li>
88
+
89
+ <li>
90
+ <span class="dashicons dashicons-yes"></span> Individual Product Basis Attribute Variation Swatches Customization
91
+
92
+ <div class="gwp-pro-features-links">
93
+ <a target="_blank" href="http://bit.ly/product-basis-demo-product-settings">Live Demo</a> |
94
+ <a target="_blank" href="http://bit.ly/product-basis-youtube-video-link-from-readme">Video Tutorial</a>
95
+ </div>
96
+ </li>
97
+
98
+ <li>
99
+ <span class="dashicons dashicons-yes"></span> Show Image, Color, Button Variation Swatches in Same Attribute
100
+ <div class="gwp-pro-features-links">
101
+ <a target="_blank" href="http://bit.ly/product-basis-demo-product-page-settings-same-swatches">Live Demo</a> |
102
+ <a target="_blank" href="http://bit.ly/product-basis-youtube-video-link-from-readme">Video Tutorial</a>
103
+ </div>
104
+ </li>
105
+
106
+ <li>
107
+ <span class="dashicons dashicons-yes"></span> Convert Manually Created Attribute Variations Into Color, Image, and Label Swatches
108
+ <div class="gwp-pro-features-links">
109
+ <a target="_blank" href="http://bit.ly/manual-attribute-readme-video">Video Tutorial</a>
110
+ </div>
111
+ </li>
112
+
113
+ <li>
114
+ <span class="dashicons dashicons-yes"></span> Change Variation Product Gallery After Selecting Single Attribute Like Amazon Or AliExpress
115
+ <div class="gwp-pro-features-links">
116
+ <a target="_blank" href="http://bit.ly/change-gallery-image-on-single-attribute-demo-from-plugin-product-page-setting">Live Demo</a> |
117
+ <a target="_blank" href="http://bit.ly/change-gallery-image-on-single-attribute-youtube-readme">Video Tutorial</a>
118
+ </div>
119
+ </li>
120
+
121
+ <li><span class="dashicons dashicons-yes"></span> Generate Selected Attribute Variation Link
122
+ <div class="gwp-pro-features-links">
123
+ <a target="_blank" href="http://bit.ly/link-generate-product-settings-demo">Live Demo</a> |
124
+ <a target="_blank" href="http://bit.ly/link-generate-readme-youtube">Video Tutorial</a>
125
+ </div>
126
+ </li>
127
+ <li>
128
+ <span class="dashicons dashicons-yes"></span> Option to Select ROUNDED and SQUARED Attribute Variation Swatches Shape In the Same Product.
129
+ <div class="gwp-pro-features-links">
130
+ <a target="_blank" href="http://bit.ly/round-square-demo-product-settings">Live Demo</a> |
131
+ <a target="_blank" href="http://bit.ly/round-square-youtube-video-from-readme">Video Tutorial</a>
132
+ </div>
133
+ </li>
134
+
135
+ <li>
136
+ <span class="dashicons dashicons-yes"></span> Blur Or Hide Or Show Cross Sign For Out of Stock Variation Swatches (Unlimited Variations Without hiding out of stock item from catalog)
137
+ <div class="gwp-pro-features-links">
138
+ <a target="_blank" href="http://bit.ly/bulr-premium-outstock-demo-product-settings">Live Demo</a> |
139
+ <a target="_blank" href="http://bit.ly/blur-hide-youtube-readme">Video Tutorial</a></div>
140
+ </li>
141
+
142
+ <li><span class="dashicons dashicons-yes"></span> Shop Page Swatches Size Control
143
+ <div class="gwp-pro-features-links">
144
+ <a target="_blank" href="http://bit.ly/shop-swatches-size-readme">Live Preview</a></div>
145
+ </li>
146
+
147
+ <li>
148
+ <span class="dashicons dashicons-yes"></span> Make Selected Attribute Variation Swatches Size Larger Than Other Default Attribute Variations
149
+ <div class="gwp-pro-features-links">
150
+ <a target="_blank" href="http://bit.ly/special-attribute-product-settings-demo">Live Demo</a> |
151
+ <a target="_blank" href="http://bit.ly/special-attribute-youtube-readme">Video Tutorial</a>
152
+ </div>
153
+ </li>
154
+
155
+ <li>
156
+ <span class="dashicons dashicons-yes"></span> Show Custom Text in Variation Tooltip In Product and Shop Page
157
+ <div class="gwp-pro-features-links">
158
+ <a target="_blank" href="http://bit.ly/custom-tooltip-text-readme">Live Preview</a></div>
159
+ </li>
160
+
161
+ <li>
162
+ <span class="dashicons dashicons-yes"></span> Show Custom Image in Variation Swatches Tooltip In Product And Shop Page
163
+ <div class="gwp-pro-features-links">
164
+ <a target="_blank" href="http://bit.ly/image-tooltip-product-settings">Live Demo</a> |
165
+ <a target="_blank" href="http://bit.ly/tooltip-tip-image-youtube-readme">Video Tutorial</a>
166
+ </div>
167
+ </li>
168
+
169
+ <li><span class="dashicons dashicons-yes"></span> Archive page swatches positioning.</li>
170
+ <li><span class="dashicons dashicons-yes"></span> Archive page swatches alignment.</li>
171
+ <li><span class="dashicons dashicons-yes"></span> Tooltip display setting on archive/shop page.</li>
172
+ <li><span class="dashicons dashicons-yes"></span> Variation clear button display setting.</li>
173
+ <li><span class="dashicons dashicons-yes"></span> Customize tooltip text and background color.</li>
174
+ <li><span class="dashicons dashicons-yes"></span> Customize tooltip image and image size.</li>
175
+ <li><span class="dashicons dashicons-yes"></span> Customize font size, swatches height and width.
176
+ </li>
177
+ <li>
178
+ <span class="dashicons dashicons-yes"></span> Customize swatches colors, background and border sizes.
179
+ </li>
180
+ <li><span class="dashicons dashicons-yes"></span> Automatic updates and exclusive technical support.
181
+ </li>
182
+
183
+ </ul>
184
+ <div class="clear"></div>
185
+ <a target="_blank" class="button button-primary button-hero gwp-pro-button" href="<?php echo esc_url( woo_variation_swatches()->get_pro_link( 'product-edit' ) ); ?>">Okay, I need the features!
186
+ <span class="dashicons dashicons-external"></span></a>
187
+ </div>
188
+ </div>
189
+
languages/woo-variation-swatches.pot CHANGED
@@ -28,7 +28,7 @@ msgstr ""
28
  msgid "Swatches"
29
  msgstr ""
30
 
31
- #: ../includes/class-wvs-settings-api.php:160, ../includes/functions.php:1754
32
  msgid "Swatches Settings"
33
  msgstr ""
34
 
@@ -56,11 +56,11 @@ msgstr ""
56
  msgid "NEW"
57
  msgstr ""
58
 
59
- #: ../includes/class-wvs-term-meta.php:227
60
  msgid "Upload / Add image"
61
  msgstr ""
62
 
63
- #: ../includes/class-wvs-term-meta.php:228
64
  msgid "Remove image"
65
  msgstr ""
66
 
@@ -88,279 +88,279 @@ msgstr ""
88
  msgid "Skip &amp; Deactivate"
89
  msgstr ""
90
 
91
- #: ../includes/functions.php:116, ../includes/functions.php:525
92
  msgid "Color"
93
  msgstr ""
94
 
95
- #: ../includes/functions.php:122, ../includes/functions.php:534
96
  msgid "Image"
97
  msgstr ""
98
 
99
- #: ../includes/functions.php:128
100
  msgid "Button"
101
  msgstr ""
102
 
103
- #: ../includes/functions.php:235
104
  msgid "Tutorials"
105
  msgstr ""
106
 
107
- #: ../includes/functions.php:238
108
  msgid "How to tutorials"
109
  msgstr ""
110
 
111
- #: ../includes/functions.php:239
112
  msgid "How to setup and use this plugin"
113
  msgstr ""
114
 
115
- #: ../includes/functions.php:266
116
  msgid "Simple"
117
  msgstr ""
118
 
119
- #: ../includes/functions.php:269, ../includes/functions.php:316, ../includes/functions.php:471
120
  msgid "Visual Section"
121
  msgstr ""
122
 
123
- #: ../includes/functions.php:270
124
  msgid "Simple change some visual styles"
125
  msgstr ""
126
 
127
- #: ../includes/functions.php:276
128
  msgid "Enable Tooltip"
129
  msgstr ""
130
 
131
- #: ../includes/functions.php:277
132
  msgid "Enable tooltip on each product attribute."
133
  msgstr ""
134
 
135
- #: ../includes/functions.php:283
136
  msgid "Enable Stylesheet"
137
  msgstr ""
138
 
139
- #: ../includes/functions.php:284
140
  msgid "Enable default stylesheet"
141
  msgstr ""
142
 
143
- #: ../includes/functions.php:290
144
  msgid "Shape style"
145
  msgstr ""
146
 
147
- #: ../includes/functions.php:291
148
  msgid "Attribute Shape Style"
149
  msgstr ""
150
 
151
- #: ../includes/functions.php:293
152
  msgid "Rounded Shape"
153
  msgstr ""
154
 
155
- #: ../includes/functions.php:294
156
  msgid "Squared Shape"
157
  msgstr ""
158
 
159
- #: ../includes/functions.php:301
160
  msgid "Auto Dropdowns to Button"
161
  msgstr ""
162
 
163
- #: ../includes/functions.php:302
164
  msgid "Convert default dropdowns to button type"
165
  msgstr ""
166
 
167
- #: ../includes/functions.php:313
168
  msgid "Advanced"
169
  msgstr ""
170
 
171
- #: ../includes/functions.php:317
172
  msgid "Advanced change some visual styles"
173
  msgstr ""
174
 
175
- #: ../includes/functions.php:323
176
  msgid "Clear on Reselect"
177
  msgstr ""
178
 
179
- #: ../includes/functions.php:324
180
  msgid "Clear selected attribute on select again"
181
  msgstr ""
182
 
183
- #: ../includes/functions.php:330
184
  msgid "Ajax variation threshold"
185
  msgstr ""
186
 
187
- #: ../includes/functions.php:331
188
  msgid "Control the number of enable ajax variation threshold, If you set <code>1</code> all product variation will be load via ajax. Default value is <code>30</code>, <br><span style=\"color: red\">Note: Disable ajax threshold doesn't follow attribute behaviour. It's recommended to keep this number between 30 - 40.</span>"
189
  msgstr ""
190
 
191
- #: ../includes/functions.php:341
192
  msgid "Show selected attribute"
193
  msgstr ""
194
 
195
- #: ../includes/functions.php:342
196
  msgid "Show selected attribute variation name beside the title"
197
  msgstr ""
198
 
199
- #: ../includes/functions.php:350
200
  msgid "Variation label separator"
201
  msgstr ""
202
 
203
- #: ../includes/functions.php:351
204
  msgid "Variation label separator. Default: %s."
205
  msgstr ""
206
 
207
- #: ../includes/functions.php:360
208
  msgid "Attribute behavior"
209
  msgstr ""
210
 
211
- #: ../includes/functions.php:361
212
  msgid "Disabled attribute will be hide / blur. %sNote: Disable ajax threshold doesn't apply this feature.%s"
213
  msgstr ""
214
 
215
- #: ../includes/functions.php:363
216
  msgid "Blur with cross"
217
  msgstr ""
218
 
219
- #: ../includes/functions.php:364
220
  msgid "Blur without cross"
221
  msgstr ""
222
 
223
- #: ../includes/functions.php:365
224
  msgid "Hide"
225
  msgstr ""
226
 
227
- #: ../includes/functions.php:373
228
  msgid "Attribute image size"
229
  msgstr ""
230
 
231
- #: ../includes/functions.php:374
232
  msgid "<span style=\"color: red\">Attribute image size changed by <code>wvs_product_attribute_image_size</code> hook. So this option will not apply any effect.</span>"
233
  msgstr ""
234
 
235
- #: ../includes/functions.php:381
236
  msgid "Width"
237
  msgstr ""
238
 
239
- #: ../includes/functions.php:382
240
  msgid "Variation item width"
241
  msgstr ""
242
 
243
- #: ../includes/functions.php:391
244
  msgid "Height"
245
  msgstr ""
246
 
247
- #: ../includes/functions.php:392
248
  msgid "Variation item height"
249
  msgstr ""
250
 
251
- #: ../includes/functions.php:401
252
  msgid "Font Size"
253
  msgstr ""
254
 
255
- #: ../includes/functions.php:402
256
  msgid "Single product variation item font size"
257
  msgstr ""
258
 
259
- #: ../includes/functions.php:416
260
  msgid "Performance"
261
  msgstr ""
262
 
263
- #: ../includes/functions.php:419
264
  msgid "Performance Section"
265
  msgstr ""
266
 
267
- #: ../includes/functions.php:420
268
  msgid "Change for Performance"
269
  msgstr ""
270
 
271
- #: ../includes/functions.php:426
272
  msgid "Defer Load JS"
273
  msgstr ""
274
 
275
- #: ../includes/functions.php:427
276
  msgid "Defer Load JS for PageSpeed Score. If you use any caching plugin or your server have HTTP2 support you do not have to use it"
277
  msgstr ""
278
 
279
- #: ../includes/functions.php:433
280
  msgid "Use Transient Cache"
281
  msgstr ""
282
 
283
- #: ../includes/functions.php:434
284
  msgid "Use Transient Cache for PageSpeed Score. If you use any caching plugin you do not have to use it"
285
  msgstr ""
286
 
287
- #: ../includes/functions.php:446
288
  msgid "Style"
289
  msgstr ""
290
 
291
- #: ../includes/functions.php:449
292
  msgid "Visual Styling"
293
  msgstr ""
294
 
295
- #: ../includes/functions.php:450
296
  msgid "Change some visual styles"
297
  msgstr ""
298
 
299
- #: ../includes/functions.php:468
300
  msgid "Archive / Shop"
301
  msgstr ""
302
 
303
- #: ../includes/functions.php:472
304
  msgid "Advanced change some visual styles on shop / archive page"
305
  msgstr ""
306
 
307
- #: ../includes/functions.php:490
308
  msgid "Special Attribute"
309
  msgstr ""
310
 
311
- #: ../includes/functions.php:493
312
  msgid "Catalog mode"
313
  msgstr ""
314
 
315
- #: ../includes/functions.php:494
316
  msgid "Show single attribute as catalog mode on shop / archive pages"
317
  msgstr ""
318
 
319
- #: ../includes/functions.php:526
320
  msgid "Choose a color"
321
  msgstr ""
322
 
323
- #: ../includes/functions.php:535, ../woo-variation-swatches.php:460
324
  msgid "Choose an Image"
325
  msgstr ""
326
 
327
- #: ../includes/functions.php:703, ../includes/functions.php:753, ../includes/functions.php:782
328
  msgid "Select terms"
329
  msgstr ""
330
 
331
- #: ../includes/functions.php:713, ../includes/functions.php:765, ../includes/functions.php:798
332
  msgid "Select all"
333
  msgstr ""
334
 
335
- #: ../includes/functions.php:714, ../includes/functions.php:766, ../includes/functions.php:799
336
  msgid "Select none"
337
  msgstr ""
338
 
339
- #: ../includes/functions.php:722, ../includes/functions.php:720, ../includes/functions.php:807, ../includes/functions.php:805
340
  msgid "Add new"
341
  msgstr ""
342
 
343
- #: ../includes/functions.php:720, ../includes/functions.php:805
344
  msgid "Add new %s"
345
  msgstr ""
346
 
347
- #: ../includes/functions.php:1130, ../includes/functions.php:1204, ../includes/functions.php:1279, ../includes/functions.php:1350, ../includes/functions.php:1420, ../includes/functions.php:1501
348
  msgid "Choose an option"
349
  msgstr ""
350
 
351
- #: ../includes/functions.php:2034
352
  msgid "Installing Plugin..."
353
  msgstr ""
354
 
355
- #: ../includes/functions.php:2035
356
  msgid "Plugin Installed. Please refresh this page."
357
  msgstr ""
358
 
359
- #: ../includes/functions.php:2036
360
  msgid "Want to add more image? Install"
361
  msgstr ""
362
 
363
- #: ../includes/functions.php:2036
364
  msgid "Additional Variation Images Gallery for WooCommerce"
365
  msgstr ""
366
 
28
  msgid "Swatches"
29
  msgstr ""
30
 
31
+ #: ../includes/class-wvs-settings-api.php:160, ../includes/functions.php:1772
32
  msgid "Swatches Settings"
33
  msgstr ""
34
 
56
  msgid "NEW"
57
  msgstr ""
58
 
59
+ #: ../includes/class-wvs-term-meta.php:230
60
  msgid "Upload / Add image"
61
  msgstr ""
62
 
63
+ #: ../includes/class-wvs-term-meta.php:231
64
  msgid "Remove image"
65
  msgstr ""
66
 
88
  msgid "Skip &amp; Deactivate"
89
  msgstr ""
90
 
91
+ #: ../includes/functions.php:134, ../includes/functions.php:543
92
  msgid "Color"
93
  msgstr ""
94
 
95
+ #: ../includes/functions.php:140, ../includes/functions.php:552
96
  msgid "Image"
97
  msgstr ""
98
 
99
+ #: ../includes/functions.php:146
100
  msgid "Button"
101
  msgstr ""
102
 
103
+ #: ../includes/functions.php:253
104
  msgid "Tutorials"
105
  msgstr ""
106
 
107
+ #: ../includes/functions.php:256
108
  msgid "How to tutorials"
109
  msgstr ""
110
 
111
+ #: ../includes/functions.php:257
112
  msgid "How to setup and use this plugin"
113
  msgstr ""
114
 
115
+ #: ../includes/functions.php:284
116
  msgid "Simple"
117
  msgstr ""
118
 
119
+ #: ../includes/functions.php:287, ../includes/functions.php:334, ../includes/functions.php:489
120
  msgid "Visual Section"
121
  msgstr ""
122
 
123
+ #: ../includes/functions.php:288
124
  msgid "Simple change some visual styles"
125
  msgstr ""
126
 
127
+ #: ../includes/functions.php:294
128
  msgid "Enable Tooltip"
129
  msgstr ""
130
 
131
+ #: ../includes/functions.php:295
132
  msgid "Enable tooltip on each product attribute."
133
  msgstr ""
134
 
135
+ #: ../includes/functions.php:301
136
  msgid "Enable Stylesheet"
137
  msgstr ""
138
 
139
+ #: ../includes/functions.php:302
140
  msgid "Enable default stylesheet"
141
  msgstr ""
142
 
143
+ #: ../includes/functions.php:308
144
  msgid "Shape style"
145
  msgstr ""
146
 
147
+ #: ../includes/functions.php:309
148
  msgid "Attribute Shape Style"
149
  msgstr ""
150
 
151
+ #: ../includes/functions.php:311
152
  msgid "Rounded Shape"
153
  msgstr ""
154
 
155
+ #: ../includes/functions.php:312
156
  msgid "Squared Shape"
157
  msgstr ""
158
 
159
+ #: ../includes/functions.php:319
160
  msgid "Auto Dropdowns to Button"
161
  msgstr ""
162
 
163
+ #: ../includes/functions.php:320
164
  msgid "Convert default dropdowns to button type"
165
  msgstr ""
166
 
167
+ #: ../includes/functions.php:331
168
  msgid "Advanced"
169
  msgstr ""
170
 
171
+ #: ../includes/functions.php:335
172
  msgid "Advanced change some visual styles"
173
  msgstr ""
174
 
175
+ #: ../includes/functions.php:341
176
  msgid "Clear on Reselect"
177
  msgstr ""
178
 
179
+ #: ../includes/functions.php:342
180
  msgid "Clear selected attribute on select again"
181
  msgstr ""
182
 
183
+ #: ../includes/functions.php:348
184
  msgid "Ajax variation threshold"
185
  msgstr ""
186
 
187
+ #: ../includes/functions.php:349
188
  msgid "Control the number of enable ajax variation threshold, If you set <code>1</code> all product variation will be load via ajax. Default value is <code>30</code>, <br><span style=\"color: red\">Note: Disable ajax threshold doesn't follow attribute behaviour. It's recommended to keep this number between 30 - 40.</span>"
189
  msgstr ""
190
 
191
+ #: ../includes/functions.php:359
192
  msgid "Show selected attribute"
193
  msgstr ""
194
 
195
+ #: ../includes/functions.php:360
196
  msgid "Show selected attribute variation name beside the title"
197
  msgstr ""
198
 
199
+ #: ../includes/functions.php:368
200
  msgid "Variation label separator"
201
  msgstr ""
202
 
203
+ #: ../includes/functions.php:369
204
  msgid "Variation label separator. Default: %s."
205
  msgstr ""
206
 
207
+ #: ../includes/functions.php:378
208
  msgid "Attribute behavior"
209
  msgstr ""
210
 
211
+ #: ../includes/functions.php:379
212
  msgid "Disabled attribute will be hide / blur. %sNote: Disable ajax threshold doesn't apply this feature.%s"
213
  msgstr ""
214
 
215
+ #: ../includes/functions.php:381
216
  msgid "Blur with cross"
217
  msgstr ""
218
 
219
+ #: ../includes/functions.php:382
220
  msgid "Blur without cross"
221
  msgstr ""
222
 
223
+ #: ../includes/functions.php:383
224
  msgid "Hide"
225
  msgstr ""
226
 
227
+ #: ../includes/functions.php:391
228
  msgid "Attribute image size"
229
  msgstr ""
230
 
231
+ #: ../includes/functions.php:392
232
  msgid "<span style=\"color: red\">Attribute image size changed by <code>wvs_product_attribute_image_size</code> hook. So this option will not apply any effect.</span>"
233
  msgstr ""
234
 
235
+ #: ../includes/functions.php:399
236
  msgid "Width"
237
  msgstr ""
238
 
239
+ #: ../includes/functions.php:400
240
  msgid "Variation item width"
241
  msgstr ""
242
 
243
+ #: ../includes/functions.php:409
244
  msgid "Height"
245
  msgstr ""
246
 
247
+ #: ../includes/functions.php:410
248
  msgid "Variation item height"
249
  msgstr ""
250
 
251
+ #: ../includes/functions.php:419
252
  msgid "Font Size"
253
  msgstr ""
254
 
255
+ #: ../includes/functions.php:420
256
  msgid "Single product variation item font size"
257
  msgstr ""
258
 
259
+ #: ../includes/functions.php:434
260
  msgid "Performance"
261
  msgstr ""
262
 
263
+ #: ../includes/functions.php:437
264
  msgid "Performance Section"
265
  msgstr ""
266
 
267
+ #: ../includes/functions.php:438
268
  msgid "Change for Performance"
269
  msgstr ""
270
 
271
+ #: ../includes/functions.php:444
272
  msgid "Defer Load JS"
273
  msgstr ""
274
 
275
+ #: ../includes/functions.php:445
276
  msgid "Defer Load JS for PageSpeed Score. If you use any caching plugin or your server have HTTP2 support you do not have to use it"
277
  msgstr ""
278
 
279
+ #: ../includes/functions.php:451
280
  msgid "Use Transient Cache"
281
  msgstr ""
282
 
283
+ #: ../includes/functions.php:452
284
  msgid "Use Transient Cache for PageSpeed Score. If you use any caching plugin you do not have to use it"
285
  msgstr ""
286
 
287
+ #: ../includes/functions.php:464
288
  msgid "Style"
289
  msgstr ""
290
 
291
+ #: ../includes/functions.php:467
292
  msgid "Visual Styling"
293
  msgstr ""
294
 
295
+ #: ../includes/functions.php:468
296
  msgid "Change some visual styles"
297
  msgstr ""
298
 
299
+ #: ../includes/functions.php:486
300
  msgid "Archive / Shop"
301
  msgstr ""
302
 
303
+ #: ../includes/functions.php:490
304
  msgid "Advanced change some visual styles on shop / archive page"
305
  msgstr ""
306
 
307
+ #: ../includes/functions.php:508
308
  msgid "Special Attribute"
309
  msgstr ""
310
 
311
+ #: ../includes/functions.php:511
312
  msgid "Catalog mode"
313
  msgstr ""
314
 
315
+ #: ../includes/functions.php:512
316
  msgid "Show single attribute as catalog mode on shop / archive pages"
317
  msgstr ""
318
 
319
+ #: ../includes/functions.php:544
320
  msgid "Choose a color"
321
  msgstr ""
322
 
323
+ #: ../includes/functions.php:553, ../woo-variation-swatches.php:460
324
  msgid "Choose an Image"
325
  msgstr ""
326
 
327
+ #: ../includes/functions.php:721, ../includes/functions.php:771, ../includes/functions.php:800
328
  msgid "Select terms"
329
  msgstr ""
330
 
331
+ #: ../includes/functions.php:731, ../includes/functions.php:783, ../includes/functions.php:816
332
  msgid "Select all"
333
  msgstr ""
334
 
335
+ #: ../includes/functions.php:732, ../includes/functions.php:784, ../includes/functions.php:817
336
  msgid "Select none"
337
  msgstr ""
338
 
339
+ #: ../includes/functions.php:740, ../includes/functions.php:738, ../includes/functions.php:825, ../includes/functions.php:823
340
  msgid "Add new"
341
  msgstr ""
342
 
343
+ #: ../includes/functions.php:738, ../includes/functions.php:823
344
  msgid "Add new %s"
345
  msgstr ""
346
 
347
+ #: ../includes/functions.php:1148, ../includes/functions.php:1222, ../includes/functions.php:1297, ../includes/functions.php:1368, ../includes/functions.php:1438, ../includes/functions.php:1519
348
  msgid "Choose an option"
349
  msgstr ""
350
 
351
+ #: ../includes/functions.php:1883
352
  msgid "Installing Plugin..."
353
  msgstr ""
354
 
355
+ #: ../includes/functions.php:1884
356
  msgid "Plugin Installed. Please refresh this page."
357
  msgstr ""
358
 
359
+ #: ../includes/functions.php:1885
360
  msgid "Want to add more image? Install"
361
  msgstr ""
362
 
363
+ #: ../includes/functions.php:1885
364
  msgid "Additional Variation Images Gallery for WooCommerce"
365
  msgstr ""
366
 
package.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "package": "Variation Swatches for WooCommerce",
3
  "name": "woo-variation-swatches",
4
- "version": "1.1.13",
5
  "author": "Emran Ahmed <emran.bd.08@gmail.com>",
6
  "contact": "emran.bd.08@gmail.com",
7
  "license": "GNU General Public License v3",
1
  {
2
  "package": "Variation Swatches for WooCommerce",
3
  "name": "woo-variation-swatches",
4
+ "version": "1.1.14",
5
  "author": "Emran Ahmed <emran.bd.08@gmail.com>",
6
  "contact": "emran.bd.08@gmail.com",
7
  "license": "GNU General Public License v3",
webpack.mix.js CHANGED
@@ -61,7 +61,7 @@ if (Mix.inProduction()) {
61
  }
62
 
63
  mix.banner({
64
- banner : "Variation Swatches for WooCommerce v1.1.13 \n\nAuthor: Emran Ahmed ( emran.bd.08@gmail.com ) \nDate: " + new Date().toLocaleDateString('en-GB') + "\nReleased under the GPLv3 license."
65
  });
66
 
67
  mix.notification({
61
  }
62
 
63
  mix.banner({
64
+ banner : "Variation Swatches for WooCommerce v1.1.14 \n\nAuthor: Emran Ahmed ( emran.bd.08@gmail.com ) \nDate: " + new Date().toLocaleDateString('en-GB') + "\nReleased under the GPLv3 license."
65
  });
66
 
67
  mix.notification({
woo-variation-swatches.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin URI: https://wordpress.org/plugins/woo-variation-swatches/
5
  * Description: Beautiful colors, images and buttons variation swatches for woocommerce product attributes. Requires WooCommerce 3.2+
6
  * Author: Emran Ahmed
7
- * Version: 1.1.13
8
  * Domain Path: /languages
9
  * Requires PHP: 5.6
10
  * Requires at least: 4.8
@@ -21,7 +21,7 @@ if ( ! class_exists( 'Woo_Variation_Swatches' ) ):
21
 
22
  final class Woo_Variation_Swatches {
23
 
24
- protected $_version = '1.1.13';
25
 
26
  protected static $_instance = null;
27
  private $_settings_api;
4
  * Plugin URI: https://wordpress.org/plugins/woo-variation-swatches/
5
  * Description: Beautiful colors, images and buttons variation swatches for woocommerce product attributes. Requires WooCommerce 3.2+
6
  * Author: Emran Ahmed
7
+ * Version: 1.1.14
8
  * Domain Path: /languages
9
  * Requires PHP: 5.6
10
  * Requires at least: 4.8
21
 
22
  final class Woo_Variation_Swatches {
23
 
24
+ protected $_version = '1.1.14';
25
 
26
  protected static $_instance = null;
27
  private $_settings_api;