WooCommerce Variation Swatches - Version 1.0.2

Version Description

  • Added tooltip
  • Default stylesheet enable/disable option
  • Display style added to show Rounded / Squared shaped style
Download this release

Release Info

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

Code changes from version 1.0.1 to 1.0.2

README.txt CHANGED
@@ -1,6 +1,6 @@
1
  === Woo Variation Swatches ===
2
  Contributors: EmranAhmed, wpeshaan
3
- Tags: woocommerce, variation swatches, product attributes, product color, product size, variable product attributes, variation product swatches, color variation swatch, image variation swatch
4
  Requires at least: 4.8
5
  Tested up to: 4.9
6
  Requires PHP: 5.6
@@ -18,6 +18,8 @@ Woo Variation Swatches is easy to use WooCommerce product variation swatches plu
18
 
19
  Woo Variation Swatches not only offers the color, image and label attributes in the single WooCommerce product. It also enables them in product quick view. If you're using WooCommerce themes like Flatsome that comes with default Quick View option, you don’t need to hassle to load color and image swatches for variable product attributes in quick view separately.
20
 
 
 
21
  = Key Feature Comes with this Plugin =
22
 
23
  * Work on variable product
@@ -26,11 +28,46 @@ Woo Variation Swatches not only offers the color, image and label attributes in
26
  * Enable attributes into color swatches
27
  * Enable attributes into label/text/button swatches
28
  * Control attribute setting globally.
 
 
 
 
29
  * No extra option and no conclusion.
30
 
31
- = Links =
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
 
33
- > [Facebook Group](https://www.facebook.com/groups/GetWooPlugins/) | [Github](https://github.com/EmranAhmed/woo-variation-swatches/?utm_source=wordpress.org&utm_campaign=Woo+Variation+Swatches) | [Website](https://getwooplugins.com/?utm_source=wordpress.org&utm_campaign=Woo+Variation+Swatches)
34
 
35
  == Installation ==
36
 
@@ -91,9 +128,16 @@ Yes, it supports any kinds of product quick view.
91
  5. Attribute Color Type Preview
92
  6. Attribute Button / Label Type Preview
93
  7. Variation Product Edit view
 
94
 
95
  == Changelog ==
96
 
 
 
 
 
 
 
97
  = 1.0.1 =
98
 
99
  * Fix text type select list
@@ -102,4 +146,4 @@ Yes, it supports any kinds of product quick view.
102
 
103
  * Initial release
104
 
105
- == Upgrade Notice ==
1
  === Woo Variation Swatches ===
2
  Contributors: EmranAhmed, wpeshaan
3
+ Tags: woocommerce variation, woocommerce, variation swatches, woocommerce attributes, product attributes, product color, product size, variable product attributes, variation product swatches, color variation swatch, image variation swatch
4
  Requires at least: 4.8
5
  Tested up to: 4.9
6
  Requires PHP: 5.6
18
 
19
  Woo Variation Swatches not only offers the color, image and label attributes in the single WooCommerce product. It also enables them in product quick view. If you're using WooCommerce themes like Flatsome that comes with default Quick View option, you don’t need to hassle to load color and image swatches for variable product attributes in quick view separately.
20
 
21
+ In the free WooCommerce attribute variation plugin, besides creating size, brand, image, color, and label variation swatches, you can handle the swatches shape style <strong>Rounded and Circle</strong>. On top of that, it allows you beautiful tooltips on variation swatch hover. Based on your requirement you enable and disable hover from the settings. To maximize and personalize your development process, the product attributes swatches comes an option to disable default plugin stylesheet so that you can personally write your own CSS.
22
+
23
  = Key Feature Comes with this Plugin =
24
 
25
  * Work on variable product
28
  * Enable attributes into color swatches
29
  * Enable attributes into label/text/button swatches
30
  * Control attribute setting globally.
31
+ * Compatible with popular themes and plugins
32
+ * Option to select ROUNDED and CIRCLED variation shape.
33
+ * Flexible tooltip insert and dispaly settings
34
+ * Option to disable plugin stylesheet.
35
  * No extra option and no conclusion.
36
 
37
+ = Sites Built With Woo Variation Swatches Plugin =
38
+ <blockquote>
39
+ <ul>
40
+ <li> <a href="http://bit.ly/woovs-demo-01">plotnikoff.ru</a></li>
41
+ </ul>
42
+
43
+ </blockquote>
44
+
45
+ = Officially tested WooCommerce Themes =
46
+
47
+ * [Flatsome Theme](http://bit.ly/flatsomeyoutube)
48
+
49
+ = Officially tested plugins =
50
+
51
+ * WPML
52
+ * Polylang
53
+
54
+ = Forum and Feature Request =
55
+
56
+ <blockquote>
57
+ <h4>For feature request and bug reporting</h4>
58
+ <ul>
59
+ <li> <a href="http://bit.ly/getwoopluginsgroup">Join Our Facebook Group</a></li>
60
+ </ul>
61
+ <h4>For contribution</h4>
62
+ <ul>
63
+ <li><a href="https://github.com/EmranAhmed/woo-variation-swatches/?utm_source=wordpress.org&utm_campaign=Woo+Variation+Swatches">Join Project in Github</a></li>
64
+ </ul>
65
+ <h4>For more information</h4>
66
+ <ul>
67
+ <li><a href="https://getwooplugins.com/?utm_source=wordpress.org&utm_campaign=Woo+Variation+Swatches">Visit Our Official Website</a></li>
68
+ </ul>
69
+ </blockquote>
70
 
 
71
 
72
  == Installation ==
73
 
128
  5. Attribute Color Type Preview
129
  6. Attribute Button / Label Type Preview
130
  7. Variation Product Edit view
131
+ 8. Settings Panel
132
 
133
  == Changelog ==
134
 
135
+ = 1.0.2 =
136
+
137
+ * Added tooltip
138
+ * Default stylesheet enable/disable option
139
+ * Display style added to show Rounded / Squared shaped style
140
+
141
  = 1.0.1 =
142
 
143
  * Fix text type select list
146
 
147
  * Initial release
148
 
149
+ == Upgrade Notice ==
assets/css/admin.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Woo Variation Swatches v1.0.1
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2017-12-24 00:13:39
6
  * Released under the GPLv3 license.
7
  */
8
  .button.button-danger {
@@ -22,7 +22,7 @@
22
  background: #C9302C;
23
  }
24
 
25
- [data-depends].has-dependent-data {
26
  display: none;
27
  }
28
 
@@ -46,5 +46,31 @@
46
  vertical-align: top;
47
  }
48
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
49
 
50
- /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2Nzcy9hZG1pbi5jc3MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9zcmMvc2Nzcy9iYWNrZW5kLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYmFja2VuZC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL2JhY2tlbmQuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIuYnV0dG9uLmJ1dHRvbi1kYW5nZXIge1xuICBjb2xvciAgICAgICAgICAgIDogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvciA6ICNBRjJEMkI7XG4gIGJvcmRlci1jb2xvciAgICAgOiAjQTYyRDJCO1xuICBib3gtc2hhZG93ICAgICAgIDogMCAxcHggMCAjQTcyRDJCO1xuICB2ZXJ0aWNhbC1hbGlnbiAgIDogdG9wO1xuICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSwgJi5hY3RpdmUge1xuICAgIGNvbG9yICAgICAgOiAjRkZGRkZGO1xuICAgIGJhY2tncm91bmQgOiAjQzkzMDJDO1xuICAgIH1cbiAgfVxuXG5bZGF0YS1kZXBlbmRzXS5oYXMtZGVwZW5kZW50LWRhdGEge1xuICBkaXNwbGF5IDogbm9uZTtcbiAgfVxuXG4ubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyIHtcbiAgZGlzcGxheSA6IHRhYmxlO1xuICAuYnV0dG9uIHtcbiAgICBtYXJnaW4gIDogNXB4IDA7XG4gICAgZGlzcGxheSA6IGJsb2NrO1xuICAgIH1cbiAgLmltYWdlLXByZXZpZXcge1xuICAgIGRpc3BsYXkgICAgICAgOiB0YWJsZS1jZWxsO1xuICAgIHdpZHRoICAgICAgICAgOiA2MHB4O1xuICAgIHBhZGRpbmctcmlnaHQgOiAxMHB4O1xuICAgIH1cbiAgLmJ1dHRvbi13cmFwcGVyIHtcbiAgICBkaXNwbGF5ICAgICAgICA6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ24gOiB0b3A7XG4gICAgfVxuICB9XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3Njc3Mvc3JjL3Njc3MvYmFja2VuZC5zY3NzIiwiLmJ1dHRvbi5idXR0b24tZGFuZ2VyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBRjJEMkI7XG4gIGJvcmRlci1jb2xvcjogI0E2MkQyQjtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAjQTcyRDJCO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4uYnV0dG9uLmJ1dHRvbi1kYW5nZXI6aG92ZXIsXG4uYnV0dG9uLmJ1dHRvbi1kYW5nZXI6Zm9jdXMsXG4uYnV0dG9uLmJ1dHRvbi1kYW5nZXI6YWN0aXZlLFxuLmJ1dHRvbi5idXR0b24tZGFuZ2VyLmFjdGl2ZSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kOiAjQzkzMDJDO1xufVxuXG5bZGF0YS1kZXBlbmRzXS5oYXMtZGVwZW5kZW50LWRhdGEge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5tZXRhLWltYWdlLWZpZWxkLXdyYXBwZXIgLmJ1dHRvbiB7XG4gIG1hcmdpbjogNXB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyIC5pbWFnZS1wcmV2aWV3IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgd2lkdGg6IDYwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5tZXRhLWltYWdlLWZpZWxkLXdyYXBwZXIgLmJ1dHRvbi13cmFwcGVyIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vYmFja2VuZC5zY3NzIiwiLmJ1dHRvbi5idXR0b24tZGFuZ2VyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBRjJEMkI7XG4gIGJvcmRlci1jb2xvcjogI0E2MkQyQjtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAjQTcyRDJCO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4uYnV0dG9uLmJ1dHRvbi1kYW5nZXI6aG92ZXIsIC5idXR0b24uYnV0dG9uLWRhbmdlcjpmb2N1cywgLmJ1dHRvbi5idXR0b24tZGFuZ2VyOmFjdGl2ZSwgLmJ1dHRvbi5idXR0b24tZGFuZ2VyLmFjdGl2ZSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kOiAjQzkzMDJDO1xufVxuXG5bZGF0YS1kZXBlbmRzXS5oYXMtZGVwZW5kZW50LWRhdGEge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5tZXRhLWltYWdlLWZpZWxkLXdyYXBwZXIgLmJ1dHRvbiB7XG4gIG1hcmdpbjogNXB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyIC5pbWFnZS1wcmV2aWV3IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgd2lkdGg6IDYwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5tZXRhLWltYWdlLWZpZWxkLXdyYXBwZXIgLmJ1dHRvbi13cmFwcGVyIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKemIzVnlZMlZ6SWpwYkluTnlZeTl6WTNOekwySmhZMnRsYm1RdWMyTnpjeUpkTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lJdVluVjBkRzl1TG1KMWRIUnZiaTFrWVc1blpYSWdlMXh1SUNCamIyeHZjaUFnSUNBZ0lDQWdJQ0FnSURvZ0kwWkdSa1pHUmp0Y2JpQWdZbUZqYTJkeWIzVnVaQzFqYjJ4dmNpQTZJQ05CUmpKRU1rSTdYRzRnSUdKdmNtUmxjaTFqYjJ4dmNpQWdJQ0FnT2lBalFUWXlSREpDTzF4dUlDQmliM2d0YzJoaFpHOTNJQ0FnSUNBZ0lEb2dNQ0F4Y0hnZ01DQWpRVGN5UkRKQ08xeHVJQ0IyWlhKMGFXTmhiQzFoYkdsbmJpQWdJRG9nZEc5d08xeHVJQ0FtT21odmRtVnlMQ0FtT21adlkzVnpMQ0FtT21GamRHbDJaU3dnSmk1aFkzUnBkbVVnZTF4dUlDQWdJR052Ykc5eUlDQWdJQ0FnT2lBalJrWkdSa1pHTzF4dUlDQWdJR0poWTJ0bmNtOTFibVFnT2lBalF6a3pNREpETzF4dUlDQWdJSDFjYmlBZ2ZWeHVYRzViWkdGMFlTMWtaWEJsYm1SelhTNW9ZWE10WkdWd1pXNWtaVzUwTFdSaGRHRWdlMXh1SUNCa2FYTndiR0Y1SURvZ2JtOXVaVHRjYmlBZ2ZWeHVYRzR1YldWMFlTMXBiV0ZuWlMxbWFXVnNaQzEzY21Gd2NHVnlJSHRjYmlBZ1pHbHpjR3hoZVNBNklIUmhZbXhsTzF4dUlDQXVZblYwZEc5dUlIdGNiaUFnSUNCdFlYSm5hVzRnSURvZ05YQjRJREE3WEc0Z0lDQWdaR2x6Y0d4aGVTQTZJR0pzYjJOck8xeHVJQ0FnSUgxY2JpQWdMbWx0WVdkbExYQnlaWFpwWlhjZ2UxeHVJQ0FnSUdScGMzQnNZWGtnSUNBZ0lDQWdPaUIwWVdKc1pTMWpaV3hzTzF4dUlDQWdJSGRwWkhSb0lDQWdJQ0FnSUNBZ09pQTJNSEI0TzF4dUlDQWdJSEJoWkdScGJtY3RjbWxuYUhRZ09pQXhNSEI0TzF4dUlDQWdJSDFjYmlBZ0xtSjFkSFJ2YmkxM2NtRndjR1Z5SUh0Y2JpQWdJQ0JrYVhOd2JHRjVJQ0FnSUNBZ0lDQTZJSFJoWW14bExXTmxiR3c3WEc0Z0lDQWdkbVZ5ZEdsallXd3RZV3hwWjI0Z09pQjBiM0E3WEc0Z0lDQWdmVnh1SUNCOUlsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lKQlFVRkJMRUZCUVVFc1QwRkJUeXhCUVVGQkxHTkJRV01zUTBGQlF6dEZRVU53UWl4TFFVRkxMRVZCUVdNc1QwRkJUenRGUVVNeFFpeG5Ra0ZCWjBJc1JVRkJSeXhQUVVGUE8wVkJRekZDTEZsQlFWa3NSVUZCVHl4UFFVRlBPMFZCUXpGQ0xGVkJRVlVzUlVGQlV5eGxRVUZsTzBWQlEyeERMR05CUVdNc1JVRkJTeXhIUVVGSE8wTkJTM0pDT3p0QlFWWklMRUZCVFVVc1QwRk9TeXhCUVVGQkxHTkJRV01zUVVGTmJrSXNUVUZCVHl4RlFVNVVMRUZCVFZjc1QwRk9TaXhCUVVGQkxHTkJRV01zUVVGTlZpeE5RVUZQTEVWQlRteENMRUZCVFc5Q0xFOUJUbUlzUVVGQlFTeGpRVUZqTEVGQlRVUXNUMEZCVVN4RlFVNDFRaXhCUVUwNFFpeFBRVTUyUWl4QlFVRkJMR05CUVdNc1FVRk5VeXhQUVVGUkxFTkJRVU03UlVGRGJrTXNTMEZCU3l4RlFVRlJMRTlCUVU4N1JVRkRjRUlzVlVGQlZTeEZRVUZITEU5QlFVODdRMEZEYmtJN08wTkJSMHdzUVVGQlFTeEJRVUZCTEZsQlFVTXNRVUZCUVN4RFFVRmhMRzFDUVVGdFFpeERRVUZETzBWQlEyaERMRTlCUVU4c1JVRkJSeXhKUVVGSk8wTkJRMkk3TzBGQlJVZ3NRVUZCUVN4NVFrRkJlVUlzUTBGQlF6dEZRVU40UWl4UFFVRlBMRVZCUVVjc1MwRkJTenREUVdOa096dEJRV1pJTEVGQlJVVXNlVUpCUm5WQ0xFTkJSWFpDTEU5QlFVOHNRMEZCUXp0RlFVTk9MRTFCUVUwc1JVRkJTU3hMUVVGTE8wVkJRMllzVDBGQlR5eEZRVUZITEV0QlFVczdRMEZEWkRzN1FVRk1UQ3hCUVUxRkxIbENRVTUxUWl4RFFVMTJRaXhqUVVGakxFTkJRVU03UlVGRFlpeFBRVUZQTEVWQlFWTXNWVUZCVlR0RlFVTXhRaXhMUVVGTExFVkJRVmNzU1VGQlNUdEZRVU53UWl4aFFVRmhMRVZCUVVjc1NVRkJTVHREUVVOdVFqczdRVUZXVEN4QlFWZEZMSGxDUVZoMVFpeERRVmQyUWl4bFFVRmxMRU5CUVVNN1JVRkRaQ3hQUVVGUExFVkJRVlVzVlVGQlZUdEZRVU16UWl4alFVRmpMRVZCUVVjc1IwRkJSenREUVVOdVFpSjkgKi9cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9zcmMvc2Nzcy9iYWNrZW5kLnNjc3MiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFDQTtBQ0NBO0FBQ0E7QUREQTs7OztBQUNBO0FBQ0E7QUNNQTtBQUNBO0FDRkE7QUZBQTtBQ0tBO0FBQ0E7QURIQTtBQUNBO0FDS0E7QUFDQTtBRExBO0FBQ0E7QUFDQTtBQ09BO0FBQ0E7QUROQTtBQUNBO0FBQ0E7QUFDQTtBQ1FBO0FBQ0E7QURQQTtBQUNBO0FBQ0E7QUNTQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==*/
1
  /*!
2
+ * Woo Variation Swatches v1.0.2
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-1-9 02:17:48
6
  * Released under the GPLv3 license.
7
  */
8
  .button.button-danger {
22
  background: #C9302C;
23
  }
24
 
25
+ [data-depends] {
26
  display: none;
27
  }
28
 
46
  vertical-align: top;
47
  }
48
 
49
+ .gwp-rate-stars {
50
+ display: inline-block;
51
+ color: #FFB900;
52
+ position: relative;
53
+ top: 3px;
54
+ }
55
+
56
+ .gwp-rate-stars svg,
57
+ .gwp-rate-stars svg a {
58
+ fill: #FFB900;
59
+ stroke: #FFB900;
60
+ cursor: pointer;
61
+ }
62
+
63
+ .gwp-rate-stars svg:hover,
64
+ .gwp-rate-stars svg a:hover {
65
+ fill: #FFB900;
66
+ }
67
+
68
+ .gwp-rate-stars svg:hover ~ svg,
69
+ .gwp-rate-stars svg:hover ~ svg a,
70
+ .gwp-rate-stars svg a:hover ~ svg,
71
+ .gwp-rate-stars svg a:hover ~ svg a {
72
+ fill: none;
73
+ }
74
+
75
 
76
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2Nzcy9hZG1pbi5jc3MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9zcmMvc2Nzcy9iYWNrZW5kLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYmFja2VuZC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL2JhY2tlbmQuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIuYnV0dG9uLmJ1dHRvbi1kYW5nZXIge1xuICBjb2xvciAgICAgICAgICAgIDogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvciA6ICNBRjJEMkI7XG4gIGJvcmRlci1jb2xvciAgICAgOiAjQTYyRDJCO1xuICBib3gtc2hhZG93ICAgICAgIDogMCAxcHggMCAjQTcyRDJCO1xuICB2ZXJ0aWNhbC1hbGlnbiAgIDogdG9wO1xuICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSwgJi5hY3RpdmUge1xuICAgIGNvbG9yICAgICAgOiAjRkZGRkZGO1xuICAgIGJhY2tncm91bmQgOiAjQzkzMDJDO1xuICAgIH1cbiAgfVxuXG5bZGF0YS1kZXBlbmRzXSB7XG4gIGRpc3BsYXkgOiBub25lO1xuICB9XG5cbi5tZXRhLWltYWdlLWZpZWxkLXdyYXBwZXIge1xuICBkaXNwbGF5IDogdGFibGU7XG4gIC5idXR0b24ge1xuICAgIG1hcmdpbiAgOiA1cHggMDtcbiAgICBkaXNwbGF5IDogYmxvY2s7XG4gICAgfVxuICAuaW1hZ2UtcHJldmlldyB7XG4gICAgZGlzcGxheSAgICAgICA6IHRhYmxlLWNlbGw7XG4gICAgd2lkdGggICAgICAgICA6IDYwcHg7XG4gICAgcGFkZGluZy1yaWdodCA6IDEwcHg7XG4gICAgfVxuICAuYnV0dG9uLXdyYXBwZXIge1xuICAgIGRpc3BsYXkgICAgICAgIDogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbiA6IHRvcDtcbiAgICB9XG4gIH1cblxuLmd3cC1yYXRlLXN0YXJzIHtcbiAgZGlzcGxheSAgOiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yICAgIDogI0ZGQjkwMDtcbiAgcG9zaXRpb24gOiByZWxhdGl2ZTtcbiAgdG9wICAgICAgOiAzcHg7XG5cbiAgc3ZnLCBzdmcgYSB7XG4gICAgZmlsbCAgIDogI0ZGQjkwMDtcbiAgICBzdHJva2UgOiAjRkZCOTAwO1xuICAgIGN1cnNvciA6IHBvaW50ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBmaWxsIDogI0ZGQjkwMDtcbiAgICAgIH4gc3ZnLCB+IHN2ZyBhIHtcbiAgICAgICAgZmlsbCA6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9zcmMvc2Nzcy9zcmMvc2Nzcy9iYWNrZW5kLnNjc3MiLCIuYnV0dG9uLmJ1dHRvbi1kYW5nZXIge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0FGMkQyQjtcbiAgYm9yZGVyLWNvbG9yOiAjQTYyRDJCO1xuICBib3gtc2hhZG93OiAwIDFweCAwICNBNzJEMkI7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5idXR0b24uYnV0dG9uLWRhbmdlcjpob3Zlcixcbi5idXR0b24uYnV0dG9uLWRhbmdlcjpmb2N1cyxcbi5idXR0b24uYnV0dG9uLWRhbmdlcjphY3RpdmUsXG4uYnV0dG9uLmJ1dHRvbi1kYW5nZXIuYWN0aXZlIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQ6ICNDOTMwMkM7XG59XG5cbltkYXRhLWRlcGVuZHNdIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1ldGEtaW1hZ2UtZmllbGQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuXG4ubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyIC5idXR0b24ge1xuICBtYXJnaW46IDVweCAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm1ldGEtaW1hZ2UtZmllbGQtd3JhcHBlciAuaW1hZ2UtcHJldmlldyB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHdpZHRoOiA2MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xufVxuXG4ubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyIC5idXR0b24td3JhcHBlciB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5nd3AtcmF0ZS1zdGFycyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICNGRkI5MDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAzcHg7XG59XG5cbi5nd3AtcmF0ZS1zdGFycyBzdmcsXG4uZ3dwLXJhdGUtc3RhcnMgc3ZnIGEge1xuICBmaWxsOiAjRkZCOTAwO1xuICBzdHJva2U6ICNGRkI5MDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmd3cC1yYXRlLXN0YXJzIHN2Zzpob3Zlcixcbi5nd3AtcmF0ZS1zdGFycyBzdmcgYTpob3ZlciB7XG4gIGZpbGw6ICNGRkI5MDA7XG59XG5cbi5nd3AtcmF0ZS1zdGFycyBzdmc6aG92ZXIgfiBzdmcsXG4uZ3dwLXJhdGUtc3RhcnMgc3ZnOmhvdmVyIH4gc3ZnIGEsXG4uZ3dwLXJhdGUtc3RhcnMgc3ZnIGE6aG92ZXIgfiBzdmcsXG4uZ3dwLXJhdGUtc3RhcnMgc3ZnIGE6aG92ZXIgfiBzdmcgYSB7XG4gIGZpbGw6IG5vbmU7XG59XG5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2JhY2tlbmQuc2NzcyIsIi5idXR0b24uYnV0dG9uLWRhbmdlciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQUYyRDJCO1xuICBib3JkZXItY29sb3I6ICNBNjJEMkI7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgI0E3MkQyQjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmJ1dHRvbi5idXR0b24tZGFuZ2VyOmhvdmVyLCAuYnV0dG9uLmJ1dHRvbi1kYW5nZXI6Zm9jdXMsIC5idXR0b24uYnV0dG9uLWRhbmdlcjphY3RpdmUsIC5idXR0b24uYnV0dG9uLWRhbmdlci5hY3RpdmUge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZDogI0M5MzAyQztcbn1cblxuW2RhdGEtZGVwZW5kc10ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5tZXRhLWltYWdlLWZpZWxkLXdyYXBwZXIgLmJ1dHRvbiB7XG4gIG1hcmdpbjogNXB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyIC5pbWFnZS1wcmV2aWV3IHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgd2lkdGg6IDYwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5tZXRhLWltYWdlLWZpZWxkLXdyYXBwZXIgLmJ1dHRvbi13cmFwcGVyIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmd3cC1yYXRlLXN0YXJzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogI0ZGQjkwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDNweDtcbn1cblxuLmd3cC1yYXRlLXN0YXJzIHN2ZywgLmd3cC1yYXRlLXN0YXJzIHN2ZyBhIHtcbiAgZmlsbDogI0ZGQjkwMDtcbiAgc3Ryb2tlOiAjRkZCOTAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5nd3AtcmF0ZS1zdGFycyBzdmc6aG92ZXIsIC5nd3AtcmF0ZS1zdGFycyBzdmcgYTpob3ZlciB7XG4gIGZpbGw6ICNGRkI5MDA7XG59XG5cbi5nd3AtcmF0ZS1zdGFycyBzdmc6aG92ZXIgfiBzdmcsIC5nd3AtcmF0ZS1zdGFycyBzdmc6aG92ZXIgfiBzdmcgYSwgLmd3cC1yYXRlLXN0YXJzIHN2ZyBhOmhvdmVyIH4gc3ZnLCAuZ3dwLXJhdGUtc3RhcnMgc3ZnIGE6aG92ZXIgfiBzdmcgYSB7XG4gIGZpbGw6IG5vbmU7XG59XG4vKiMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSnpiM1Z5WTJWeklqcGJJbk55WXk5elkzTnpMMkpoWTJ0bGJtUXVjMk56Y3lKZExDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SXVZblYwZEc5dUxtSjFkSFJ2Ymkxa1lXNW5aWElnZTF4dUlDQmpiMnh2Y2lBZ0lDQWdJQ0FnSUNBZ0lEb2dJMFpHUmtaR1JqdGNiaUFnWW1GamEyZHliM1Z1WkMxamIyeHZjaUE2SUNOQlJqSkVNa0k3WEc0Z0lHSnZjbVJsY2kxamIyeHZjaUFnSUNBZ09pQWpRVFl5UkRKQ08xeHVJQ0JpYjNndGMyaGhaRzkzSUNBZ0lDQWdJRG9nTUNBeGNIZ2dNQ0FqUVRjeVJESkNPMXh1SUNCMlpYSjBhV05oYkMxaGJHbG5iaUFnSURvZ2RHOXdPMXh1SUNBbU9taHZkbVZ5TENBbU9tWnZZM1Z6TENBbU9tRmpkR2wyWlN3Z0ppNWhZM1JwZG1VZ2UxeHVJQ0FnSUdOdmJHOXlJQ0FnSUNBZ09pQWpSa1pHUmtaR08xeHVJQ0FnSUdKaFkydG5jbTkxYm1RZ09pQWpRemt6TURKRE8xeHVJQ0FnSUgxY2JpQWdmVnh1WEc1YlpHRjBZUzFrWlhCbGJtUnpYU0I3WEc0Z0lHUnBjM0JzWVhrZ09pQnViMjVsTzF4dUlDQjlYRzVjYmk1dFpYUmhMV2x0WVdkbExXWnBaV3hrTFhkeVlYQndaWElnZTF4dUlDQmthWE53YkdGNUlEb2dkR0ZpYkdVN1hHNGdJQzVpZFhSMGIyNGdlMXh1SUNBZ0lHMWhjbWRwYmlBZ09pQTFjSGdnTUR0Y2JpQWdJQ0JrYVhOd2JHRjVJRG9nWW14dlkyczdYRzRnSUNBZ2ZWeHVJQ0F1YVcxaFoyVXRjSEpsZG1sbGR5QjdYRzRnSUNBZ1pHbHpjR3hoZVNBZ0lDQWdJQ0E2SUhSaFlteGxMV05sYkd3N1hHNGdJQ0FnZDJsa2RHZ2dJQ0FnSUNBZ0lDQTZJRFl3Y0hnN1hHNGdJQ0FnY0dGa1pHbHVaeTF5YVdkb2RDQTZJREV3Y0hnN1hHNGdJQ0FnZlZ4dUlDQXVZblYwZEc5dUxYZHlZWEJ3WlhJZ2UxeHVJQ0FnSUdScGMzQnNZWGtnSUNBZ0lDQWdJRG9nZEdGaWJHVXRZMlZzYkR0Y2JpQWdJQ0IyWlhKMGFXTmhiQzFoYkdsbmJpQTZJSFJ2Y0R0Y2JpQWdJQ0I5WEc0Z0lIMWNibHh1TG1kM2NDMXlZWFJsTFhOMFlYSnpJSHRjYmlBZ1pHbHpjR3hoZVNBZ09pQnBibXhwYm1VdFlteHZZMnM3WEc0Z0lHTnZiRzl5SUNBZ0lEb2dJMFpHUWprd01EdGNiaUFnY0c5emFYUnBiMjRnT2lCeVpXeGhkR2wyWlR0Y2JpQWdkRzl3SUNBZ0lDQWdPaUF6Y0hnN1hHNWNiaUFnYzNabkxDQnpkbWNnWVNCN1hHNGdJQ0FnWm1sc2JDQWdJRG9nSTBaR1Fqa3dNRHRjYmlBZ0lDQnpkSEp2YTJVZ09pQWpSa1pDT1RBd08xeHVJQ0FnSUdOMWNuTnZjaUE2SUhCdmFXNTBaWEk3WEc0Z0lDQWdKanBvYjNabGNpQjdYRzRnSUNBZ0lDQm1hV3hzSURvZ0kwWkdRamt3TUR0Y2JpQWdJQ0FnSUg0Z2MzWm5MQ0IrSUhOMlp5QmhJSHRjYmlBZ0lDQWdJQ0FnWm1sc2JDQTZJRzV2Ym1VN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMWNiaUFnSUNCOVhHNGdJSDBpWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFc1FVRkJRU3hQUVVGUExFRkJRVUVzWTBGQll5eERRVUZETzBWQlEzQkNMRXRCUVVzc1JVRkJZeXhQUVVGUE8wVkJRekZDTEdkQ1FVRm5RaXhGUVVGSExFOUJRVTg3UlVGRE1VSXNXVUZCV1N4RlFVRlBMRTlCUVU4N1JVRkRNVUlzVlVGQlZTeEZRVUZUTEdWQlFXVTdSVUZEYkVNc1kwRkJZeXhGUVVGTExFZEJRVWM3UTBGTGNrSTdPMEZCVmtnc1FVRk5SU3hQUVU1TExFRkJRVUVzWTBGQll5eEJRVTF1UWl4TlFVRlBMRVZCVGxRc1FVRk5WeXhQUVU1S0xFRkJRVUVzWTBGQll5eEJRVTFXTEUxQlFVOHNSVUZPYkVJc1FVRk5iMElzVDBGT1lpeEJRVUZCTEdOQlFXTXNRVUZOUkN4UFFVRlJMRVZCVGpWQ0xFRkJUVGhDTEU5QlRuWkNMRUZCUVVFc1kwRkJZeXhCUVUxVExFOUJRVkVzUTBGQlF6dEZRVU51UXl4TFFVRkxMRVZCUVZFc1QwRkJUenRGUVVOd1FpeFZRVUZWTEVWQlFVY3NUMEZCVHp0RFFVTnVRanM3UTBGSFRDeEJRVUZCTEVGQlFVRXNXVUZCUXl4QlFVRkJMRVZCUVdNN1JVRkRZaXhQUVVGUExFVkJRVWNzU1VGQlNUdERRVU5pT3p0QlFVVklMRUZCUVVFc2VVSkJRWGxDTEVOQlFVTTdSVUZEZUVJc1QwRkJUeXhGUVVGSExFdEJRVXM3UTBGalpEczdRVUZtU0N4QlFVVkZMSGxDUVVaMVFpeERRVVYyUWl4UFFVRlBMRU5CUVVNN1JVRkRUaXhOUVVGTkxFVkJRVWtzUzBGQlN6dEZRVU5tTEU5QlFVOHNSVUZCUnl4TFFVRkxPME5CUTJRN08wRkJURXdzUVVGTlJTeDVRa0ZPZFVJc1EwRk5ka0lzWTBGQll5eERRVUZETzBWQlEySXNUMEZCVHl4RlFVRlRMRlZCUVZVN1JVRkRNVUlzUzBGQlN5eEZRVUZYTEVsQlFVazdSVUZEY0VJc1lVRkJZU3hGUVVGSExFbEJRVWs3UTBGRGJrSTdPMEZCVmt3c1FVRlhSU3g1UWtGWWRVSXNRMEZYZGtJc1pVRkJaU3hEUVVGRE8wVkJRMlFzVDBGQlR5eEZRVUZWTEZWQlFWVTdSVUZETTBJc1kwRkJZeXhGUVVGSExFZEJRVWM3UTBGRGJrSTdPMEZCUjB3c1FVRkJRU3hsUVVGbExFTkJRVU03UlVGRFpDeFBRVUZQTEVWQlFVa3NXVUZCV1R0RlFVTjJRaXhMUVVGTExFVkJRVTBzVDBGQlR6dEZRVU5zUWl4UlFVRlJMRVZCUVVjc1VVRkJVVHRGUVVOdVFpeEhRVUZITEVWQlFWRXNSMEZCUnp0RFFXRmlPenRCUVdwQ1NDeEJRVTFGTEdWQlRtRXNRMEZOWWl4SFFVRkhMRVZCVGt3c1FVRk5WeXhsUVU1SkxFTkJUVklzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXp0RlFVTlVMRWxCUVVrc1JVRkJTeXhQUVVGUE8wVkJRMmhDTEUxQlFVMHNSVUZCUnl4UFFVRlBPMFZCUTJoQ0xFMUJRVTBzUlVGQlJ5eFBRVUZQTzBOQlQyWTdPMEZCYUVKTUxFRkJUVVVzWlVGT1lTeERRVTFpTEVkQlFVY3NRVUZKUml4TlFVRlJMRVZCVmxnc1FVRk5WeXhsUVU1SkxFTkJUVklzUjBGQlJ5eERRVUZETEVOQlFVTXNRVUZKVkN4TlFVRlJMRU5CUVVNN1JVRkRUaXhKUVVGSkxFVkJRVWNzVDBGQlR6dERRVWxpT3p0QlFXWlFMRUZCV1ZFc1pVRmFUeXhEUVUxaUxFZEJRVWNzUVVGSlJpeE5RVUZSTEVkQlJVZ3NSMEZCUnl4RlFWcFlMRUZCV1cxQ0xHVkJXa29zUTBGTllpeEhRVUZITEVGQlNVWXNUVUZCVVN4SFFVVkpMRWRCUVVjc1EwRkJReXhEUVVGRExFVkJXbkJDTEVGQldWRXNaVUZhVHl4RFFVMVNMRWRCUVVjc1EwRkJReXhEUVVGRExFRkJTVlFzVFVGQlVTeEhRVVZJTEVkQlFVY3NSVUZhV0N4QlFWbHRRaXhsUVZwS0xFTkJUVklzUjBGQlJ5eERRVUZETEVOQlFVTXNRVUZKVkN4TlFVRlJMRWRCUlVrc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF6dEZRVU5pTEVsQlFVa3NSVUZCUnl4SlFVRkpPME5CUTFZaWZRPT0gKi9cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9zcmMvc2Nzcy9iYWNrZW5kLnNjc3MiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFDQTtBQ0NBO0FBQ0E7QUREQTs7OztBQUNBO0FBQ0E7QUNNQTtBQUNBO0FDRkE7QUZBQTtBQ0tBO0FBQ0E7QURIQTtBQUNBO0FDS0E7QUFDQTtBRExBO0FBQ0E7QUFDQTtBQ09BO0FBQ0E7QURaQTtBQU9BO0FBQ0E7QUFDQTtBQ1FBO0FBQ0E7QURQQTtBQUNBO0FBQ0E7QUNTQTtBQUNBO0FETkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQ1FBO0FBQ0E7QURiQTs7QUFPQTtBQUNBO0FBQ0E7QUNVQTtBQUNBO0FEcEJBOztBQVdBO0FDYUE7QUFDQTtBRHpCQTs7OztBQWFBO0FDa0JBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9*/
assets/css/admin.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Woo Variation Swatches v1.0.1
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2017-12-24 00:13:45
6
  * Released under the GPLv3 license.
7
  */
8
- .button.button-danger{color:#fff;background-color:#af2d2b;border-color:#a62d2b;-webkit-box-shadow:0 1px 0 #a72d2b;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-depends].has-dependent-data{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}
1
  /*!
2
+ * Woo Variation Swatches v1.0.2
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-1-9 02:17:54
6
  * Released under the GPLv3 license.
7
  */
8
+ .button.button-danger{color:#fff;background-color:#af2d2b;border-color:#a62d2b;-webkit-box-shadow:0 1px 0 #a72d2b;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-depends]{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}
assets/css/frontend-tooltip.css ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Woo Variation Swatches v1.0.2
3
+ *
4
+ * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-1-9 02:17:48
6
+ * Released under the GPLv3 license.
7
+ */
8
+ .variable-items-wrapper [data-tooltip] {
9
+ position: relative;
10
+ cursor: pointer;
11
+ }
12
+
13
+ .variable-items-wrapper [data-tooltip]:before,
14
+ .variable-items-wrapper [data-tooltip]:after {
15
+ visibility: hidden;
16
+ opacity: 0;
17
+ pointer-events: none;
18
+ -webkit-box-sizing: inherit;
19
+ box-sizing: inherit;
20
+ position: absolute;
21
+ bottom: 130%;
22
+ left: 50%;
23
+ z-index: 9;
24
+ }
25
+
26
+ .variable-items-wrapper [data-tooltip]:before {
27
+ margin-bottom: 5px;
28
+ margin-left: -50px;
29
+ padding: 7px;
30
+ width: 100px;
31
+ border-radius: 3px;
32
+ background-color: #000000;
33
+ background-color: rgba(51, 51, 51, 0.9);
34
+ color: #FFFFFF;
35
+ content: attr(data-tooltip);
36
+ text-align: center;
37
+ font-size: 14px;
38
+ line-height: 1.2;
39
+ }
40
+
41
+ .variable-items-wrapper [data-tooltip]:after {
42
+ margin-left: -5px;
43
+ width: 0;
44
+ border-top: 5px solid #000000;
45
+ border-top: 5px solid rgba(51, 51, 51, 0.9);
46
+ border-right: 5px solid transparent;
47
+ border-left: 5px solid transparent;
48
+ content: " ";
49
+ font-size: 0;
50
+ line-height: 0;
51
+ }
52
+
53
+ .variable-items-wrapper [data-tooltip]:hover:before,
54
+ .variable-items-wrapper [data-tooltip]:hover:after {
55
+ visibility: visible;
56
+ opacity: 1;
57
+ }
58
+
59
+
60
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2Nzcy9mcm9udGVuZC10b29sdGlwLmNzcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9zY3NzL3NyYy9zY3NzL3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi90b29sdGlwLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIge1xuICBbZGF0YS10b29sdGlwXSB7XG4gICAgcG9zaXRpb24gOiByZWxhdGl2ZTtcbiAgICBjdXJzb3IgICA6IHBvaW50ZXI7XG4gICAgfVxuXG4gIFtkYXRhLXRvb2x0aXBdOmJlZm9yZSxcbiAgW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICAgIHZpc2liaWxpdHkgICAgIDogaGlkZGVuO1xuICAgIG9wYWNpdHkgICAgICAgIDogMDtcbiAgICBwb2ludGVyLWV2ZW50cyA6IG5vbmU7XG4gICAgYm94LXNpemluZyAgICAgOiBpbmhlcml0O1xuICAgIHBvc2l0aW9uICAgICAgIDogYWJzb2x1dGU7XG4gICAgYm90dG9tICAgICAgICAgOiAxMzAlO1xuICAgIGxlZnQgICAgICAgICAgIDogNTAlO1xuICAgIHotaW5kZXggICAgICAgIDogOTtcbiAgICB9XG5cbiAgW2RhdGEtdG9vbHRpcF06YmVmb3JlIHtcbiAgICBtYXJnaW4tYm90dG9tICAgIDogNXB4O1xuICAgIG1hcmdpbi1sZWZ0ICAgICAgOiAtNTBweDtcbiAgICBwYWRkaW5nICAgICAgICAgIDogN3B4O1xuICAgIHdpZHRoICAgICAgICAgICAgOiAxMDBweDtcbiAgICBib3JkZXItcmFkaXVzICAgIDogM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3IgOiAjMDAwMDAwO1xuICAgIGJhY2tncm91bmQtY29sb3IgOiBoc2xhKDAsIDAlLCAyMCUsIDAuOSk7XG4gICAgY29sb3IgICAgICAgICAgICA6ICNGRkZGRkY7XG4gICAgY29udGVudCAgICAgICAgICA6IGF0dHIoZGF0YS10b29sdGlwKTtcbiAgICB0ZXh0LWFsaWduICAgICAgIDogY2VudGVyO1xuICAgIGZvbnQtc2l6ZSAgICAgICAgOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0ICAgICAgOiAxLjI7XG4gICAgfVxuXG4gIFtkYXRhLXRvb2x0aXBdOmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdCAgOiAtNXB4O1xuICAgIHdpZHRoICAgICAgICA6IDA7XG4gICAgYm9yZGVyLXRvcCAgIDogNXB4IHNvbGlkICMwMDAwMDA7XG4gICAgYm9yZGVyLXRvcCAgIDogNXB4IHNvbGlkIGhzbGEoMCwgMCUsIDIwJSwgMC45KTtcbiAgICBib3JkZXItcmlnaHQgOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWxlZnQgIDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGNvbnRlbnQgICAgICA6IFwiIFwiO1xuICAgIGZvbnQtc2l6ZSAgICA6IDA7XG4gICAgbGluZS1oZWlnaHQgIDogMDtcbiAgICB9XG5cbiAgW2RhdGEtdG9vbHRpcF06aG92ZXI6YmVmb3JlLFxuICBbZGF0YS10b29sdGlwXTpob3ZlcjphZnRlciB7XG4gICAgdmlzaWJpbGl0eSA6IHZpc2libGU7XG4gICAgb3BhY2l0eSAgICA6IDE7XG4gICAgfVxuICB9XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3Njc3Mvc3JjL3Njc3MvdG9vbHRpcC5zY3NzIiwiLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgW2RhdGEtdG9vbHRpcF0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgW2RhdGEtdG9vbHRpcF06YmVmb3JlLFxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTMwJTtcbiAgbGVmdDogNTAlO1xuICB6LWluZGV4OiA5O1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciBbZGF0YS10b29sdGlwXTpiZWZvcmUge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNTBweDtcbiAgcGFkZGluZzogN3B4O1xuICB3aWR0aDogMTAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MSwgNTEsIDUxLCAwLjkpO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgY29udGVudDogYXR0cihkYXRhLXRvb2x0aXApO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgW2RhdGEtdG9vbHRpcF06YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgd2lkdGg6IDA7XG4gIGJvcmRlci10b3A6IDVweCBzb2xpZCAjMDAwMDAwO1xuICBib3JkZXItdG9wOiA1cHggc29saWQgcmdiYSg1MSwgNTEsIDUxLCAwLjkpO1xuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29udGVudDogXCIgXCI7XG4gIGZvbnQtc2l6ZTogMDtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIFtkYXRhLXRvb2x0aXBdOmhvdmVyOmJlZm9yZSxcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIFtkYXRhLXRvb2x0aXBdOmhvdmVyOmFmdGVyIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbn1cblxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vdG9vbHRpcC5zY3NzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7QUFFQTtBQUNBO0FDQUE7QUFDQTtBREVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQ0FBO0FBQ0E7QURoQkE7QUFtQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FDQUE7QUFDQTtBREVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FDQUE7QUFDQTtBREVBOztBQUVBO0FBQ0E7QUNBQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==*/
assets/css/frontend-tooltip.min.css ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Woo Variation Swatches v1.0.2
3
+ *
4
+ * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-1-9 02:17:54
6
+ * Released under the GPLv3 license.
7
+ */
8
+ .variable-items-wrapper [data-tooltip]{position:relative;cursor:pointer}.variable-items-wrapper [data-tooltip]:after,.variable-items-wrapper [data-tooltip]:before{visibility:hidden;opacity:0;pointer-events:none;-webkit-box-sizing:inherit;box-sizing:inherit;position:absolute;bottom:130%;left:50%;z-index:9}.variable-items-wrapper [data-tooltip]:before{margin-bottom:5px;margin-left:-50px;padding:7px;width:100px;border-radius:3px;background-color:#000;background-color:rgba(51,51,51,.9);color:#fff;content:attr(data-tooltip);text-align:center;font-size:14px;line-height:1.2}.variable-items-wrapper [data-tooltip]: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}.variable-items-wrapper [data-tooltip]:hover:after,.variable-items-wrapper [data-tooltip]:hover:before{visibility:visible;opacity:1}
assets/css/frontend.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Woo Variation Swatches v1.0.1
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2017-12-24 00:13:39
6
  * Released under the GPLv3 license.
7
  */
8
  .variable-items-wrapper {
@@ -23,7 +23,6 @@
23
  border: 1px solid rgba(0, 0, 0, 0.2);
24
  width: 30px;
25
  height: 30px;
26
- overflow: hidden;
27
  display: -webkit-box;
28
  display: -ms-flexbox;
29
  display: flex;
@@ -35,16 +34,26 @@
35
  align-items: center;
36
  }
37
 
38
- .variable-items-wrapper .variable-item.color-variable-item,
39
- .variable-items-wrapper .variable-item.button-variable-item {
40
  border-radius: 50%;
41
  }
42
 
43
- .variable-items-wrapper .variable-item.color-variable-item span,
44
- .variable-items-wrapper .variable-item.button-variable-item span {
45
  border-radius: 50%;
46
  }
47
 
 
 
 
 
 
 
 
 
 
 
48
  .variable-items-wrapper .variable-item span {
49
  padding: 10px;
50
  font-size: small;
@@ -70,4 +79,4 @@
70
  }
71
 
72
 
73
- /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2Nzcy9mcm9udGVuZC5jc3MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9zcmMvc2Nzcy9mcm9udGVuZC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIge1xuICBkaXNwbGF5ICAgOiBmbGV4O1xuICBmbGV4LXdyYXAgOiB3cmFwO1xuXG4gIC52YXJpYWJsZS1pdGVtIHtcbiAgICBib3gtc2l6aW5nICAgICAgOiBib3JkZXItYm94O1xuICAgIGxpc3Qtc3R5bGUgICAgICA6IG5vbmU7XG4gICAgcGFkZGluZyAgICAgICAgIDogMnB4O1xuICAgIG1hcmdpbiAgICAgICAgICA6IDJweDtcbiAgICBjdXJzb3IgICAgICAgICAgOiBwb2ludGVyO1xuICAgIGJvcmRlciAgICAgICAgICA6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgd2lkdGggICAgICAgICAgIDogMzBweDtcbiAgICBoZWlnaHQgICAgICAgICAgOiAzMHB4O1xuICAgIG92ZXJmbG93ICAgICAgICA6IGhpZGRlbjtcbiAgICBkaXNwbGF5ICAgICAgICAgOiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudCA6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtcyAgICAgOiBjZW50ZXI7XG4gICAgJi5jb2xvci12YXJpYWJsZS1pdGVtLFxuICAgICYuYnV0dG9uLXZhcmlhYmxlLWl0ZW0ge1xuICAgICAgYm9yZGVyLXJhZGl1cyA6IDUwJTtcbiAgICAgIHNwYW4ge1xuICAgICAgICBib3JkZXItcmFkaXVzIDogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIHBhZGRpbmcgICA6IDEwcHg7XG4gICAgICBmb250LXNpemUgOiBzbWFsbDtcbiAgICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1yaWdodCA6IDA7XG4gICAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXIgOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICAgIH1cblxuICAgICYuc2VsZWN0ZWQsXG4gICAgJi5zZWxlY3RlZDpob3ZlciB7XG4gICAgICBib3JkZXIgOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICAgIH1cbiAgICAmLmRpc2FibGVkLFxuICAgICYuZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgY3Vyc29yICA6IG5vdC1hbGxvd2VkO1xuICAgICAgb3BhY2l0eSA6IDAuNTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9zcmMvc2Nzcy9zcmMvc2Nzcy9mcm9udGVuZC5zY3NzIiwiLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMnB4O1xuICBtYXJnaW46IDJweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbS5jb2xvci12YXJpYWJsZS1pdGVtLFxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW0uYnV0dG9uLXZhcmlhYmxlLWl0ZW0ge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtLmNvbG9yLXZhcmlhYmxlLWl0ZW0gc3Bhbixcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtLmJ1dHRvbi12YXJpYWJsZS1pdGVtIHNwYW4ge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtIHNwYW4ge1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXNpemU6IHNtYWxsO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOmhvdmVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW0uc2VsZWN0ZWQsXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbS5zZWxlY3RlZDpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtLmRpc2FibGVkLFxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW0uZGlzYWJsZWQ6aG92ZXIge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBvcGFjaXR5OiAwLjU7XG59XG5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2Zyb250ZW5kLnNjc3MiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUNDQTtBQUNBO0FESkE7QUFLQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQ0VBO0FBQ0E7QURmQTs7QUFlQTtBQ0lBO0FBQ0E7QURKQTs7QUFDQTtBQ09BO0FBQ0E7QUQ3QkE7QUEwQkE7QUFDQTtBQ01BO0FBQ0E7QURsQ0E7QUErQkE7QUNNQTtBQUNBO0FEdENBO0FBa0NBO0FDT0E7QUFDQTtBRDFDQTs7QUF1Q0E7QUNPQTtBQUNBO0FEL0NBOztBQTJDQTtBQUNBO0FDUUE7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=*/
1
  /*!
2
+ * Woo Variation Swatches v1.0.2
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-1-9 02:17:48
6
  * Released under the GPLv3 license.
7
  */
8
  .variable-items-wrapper {
23
  border: 1px solid rgba(0, 0, 0, 0.2);
24
  width: 30px;
25
  height: 30px;
 
26
  display: -webkit-box;
27
  display: -ms-flexbox;
28
  display: flex;
34
  align-items: center;
35
  }
36
 
37
+ .variable-items-wrapper .variable-item.color-variable-item.rounded-style,
38
+ .variable-items-wrapper .variable-item.button-variable-item.rounded-style {
39
  border-radius: 50%;
40
  }
41
 
42
+ .variable-items-wrapper .variable-item.color-variable-item.rounded-style span,
43
+ .variable-items-wrapper .variable-item.button-variable-item.rounded-style span {
44
  border-radius: 50%;
45
  }
46
 
47
+ .variable-items-wrapper .variable-item.color-variable-item.squared-style,
48
+ .variable-items-wrapper .variable-item.button-variable-item.squared-style {
49
+ border-radius: 0;
50
+ }
51
+
52
+ .variable-items-wrapper .variable-item.color-variable-item.squared-style span,
53
+ .variable-items-wrapper .variable-item.button-variable-item.squared-style span {
54
+ border-radius: 0;
55
+ }
56
+
57
  .variable-items-wrapper .variable-item span {
58
  padding: 10px;
59
  font-size: small;
79
  }
80
 
81
 
82
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2Nzcy9mcm9udGVuZC5jc3MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9zcmMvc2Nzcy9mcm9udGVuZC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIge1xuICBkaXNwbGF5ICAgOiBmbGV4O1xuICBmbGV4LXdyYXAgOiB3cmFwO1xuXG4gIC52YXJpYWJsZS1pdGVtIHtcbiAgICBib3gtc2l6aW5nICAgICAgOiBib3JkZXItYm94O1xuICAgIGxpc3Qtc3R5bGUgICAgICA6IG5vbmU7XG4gICAgcGFkZGluZyAgICAgICAgIDogMnB4O1xuICAgIG1hcmdpbiAgICAgICAgICA6IDJweDtcbiAgICBjdXJzb3IgICAgICAgICAgOiBwb2ludGVyO1xuICAgIGJvcmRlciAgICAgICAgICA6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgd2lkdGggICAgICAgICAgIDogMzBweDtcbiAgICBoZWlnaHQgICAgICAgICAgOiAzMHB4O1xuICAgIGRpc3BsYXkgICAgICAgICA6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50IDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zICAgICA6IGNlbnRlcjtcbiAgICAmLmNvbG9yLXZhcmlhYmxlLWl0ZW0sXG4gICAgJi5idXR0b24tdmFyaWFibGUtaXRlbSB7XG4gICAgICAmLnJvdW5kZWQtc3R5bGUge1xuICAgICAgICBib3JkZXItcmFkaXVzIDogNTAlO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzIDogNTAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgJi5zcXVhcmVkLXN0eWxlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1cyA6IDA7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXMgOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBwYWRkaW5nICAgOiAxMHB4O1xuICAgICAgZm9udC1zaXplIDogc21hbGw7XG4gICAgICB9XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tcmlnaHQgOiAwO1xuICAgICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyIDogMXB4IHNvbGlkICMwMDAwMDA7XG4gICAgICB9XG5cbiAgICAmLnNlbGVjdGVkLFxuICAgICYuc2VsZWN0ZWQ6aG92ZXIge1xuICAgICAgYm9yZGVyIDogMXB4IHNvbGlkICMwMDAwMDA7XG4gICAgICB9XG4gICAgJi5kaXNhYmxlZCxcbiAgICAmLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGN1cnNvciAgOiBub3QtYWxsb3dlZDtcbiAgICAgIG9wYWNpdHkgOiAwLjU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vc3JjL3Njc3Mvc3JjL3Njc3MvZnJvbnRlbmQuc2NzcyIsIi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDJweDtcbiAgbWFyZ2luOiAycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW0uY29sb3ItdmFyaWFibGUtaXRlbS5yb3VuZGVkLXN0eWxlLFxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW0uYnV0dG9uLXZhcmlhYmxlLWl0ZW0ucm91bmRlZC1zdHlsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW0uY29sb3ItdmFyaWFibGUtaXRlbS5yb3VuZGVkLXN0eWxlIHNwYW4sXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbS5idXR0b24tdmFyaWFibGUtaXRlbS5yb3VuZGVkLXN0eWxlIHNwYW4ge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtLmNvbG9yLXZhcmlhYmxlLWl0ZW0uc3F1YXJlZC1zdHlsZSxcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtLmJ1dHRvbi12YXJpYWJsZS1pdGVtLnNxdWFyZWQtc3R5bGUge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbS5jb2xvci12YXJpYWJsZS1pdGVtLnNxdWFyZWQtc3R5bGUgc3Bhbixcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtLmJ1dHRvbi12YXJpYWJsZS1pdGVtLnNxdWFyZWQtc3R5bGUgc3BhbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtIHNwYW4ge1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXNpemU6IHNtYWxsO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOmhvdmVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW0uc2VsZWN0ZWQsXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbS5zZWxlY3RlZDpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtLmRpc2FibGVkLFxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW0uZGlzYWJsZWQ6aG92ZXIge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBvcGFjaXR5OiAwLjU7XG59XG5cblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2Zyb250ZW5kLnNjc3MiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUNDQTtBQUNBO0FESkE7QUFLQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUNFQTtBQUNBO0FEZEE7O0FBZUE7QUNHQTtBQUNBO0FESEE7O0FBQ0E7QUNNQTtBQUNBO0FENUJBOztBQXlCQTtBQ09BO0FBQ0E7QURQQTs7QUFDQTtBQ1VBO0FBQ0E7QUR0Q0E7QUFpQ0E7QUFDQTtBQ1FBO0FBQ0E7QUR2Q0E7QUFrQ0E7QUNRQTtBQUNBO0FEM0NBO0FBcUNBO0FDU0E7QUFDQTtBRG5EQTs7QUE4Q0E7QUNTQTtBQUNBO0FEcERBOztBQThDQTtBQUNBO0FDVUE7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=*/
assets/css/frontend.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Woo Variation Swatches v1.0.1
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2017-12-24 00:13:45
6
  * Released under the GPLv3 license.
7
  */
8
- .variable-items-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.variable-items-wrapper .variable-item{-webkit-box-sizing:border-box;box-sizing:border-box;list-style:none;padding:2px;margin:2px;cursor:pointer;border:1px solid rgba(0,0,0,.2);width:30px;height:30px;overflow:hidden;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.variable-items-wrapper .variable-item.button-variable-item,.variable-items-wrapper .variable-item.button-variable-item span,.variable-items-wrapper .variable-item.color-variable-item,.variable-items-wrapper .variable-item.color-variable-item span{border-radius:50%}.variable-items-wrapper .variable-item span{padding:10px;font-size:small}.variable-items-wrapper .variable-item:last-of-type{margin-right:0}.variable-items-wrapper .variable-item.selected,.variable-items-wrapper .variable-item.selected:hover,.variable-items-wrapper .variable-item:hover{border:1px solid #000}.variable-items-wrapper .variable-item.disabled,.variable-items-wrapper .variable-item.disabled:hover{cursor:not-allowed;opacity:.5}
1
  /*!
2
+ * Woo Variation Swatches v1.0.2
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-1-9 02:17:54
6
  * Released under the GPLv3 license.
7
  */
8
+ .variable-items-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.variable-items-wrapper .variable-item{-webkit-box-sizing:border-box;box-sizing:border-box;list-style:none;padding:2px;margin:2px;cursor:pointer;border:1px solid rgba(0,0,0,.2);width:30px;height:30px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.variable-items-wrapper .variable-item.button-variable-item.rounded-style,.variable-items-wrapper .variable-item.button-variable-item.rounded-style span,.variable-items-wrapper .variable-item.color-variable-item.rounded-style,.variable-items-wrapper .variable-item.color-variable-item.rounded-style span{border-radius:50%}.variable-items-wrapper .variable-item.button-variable-item.squared-style,.variable-items-wrapper .variable-item.button-variable-item.squared-style span,.variable-items-wrapper .variable-item.color-variable-item.squared-style,.variable-items-wrapper .variable-item.color-variable-item.squared-style span{border-radius:0}.variable-items-wrapper .variable-item span{padding:10px;font-size:small}.variable-items-wrapper .variable-item:last-of-type{margin-right:0}.variable-items-wrapper .variable-item.selected,.variable-items-wrapper .variable-item.selected:hover,.variable-items-wrapper .variable-item:hover{border:1px solid #000}.variable-items-wrapper .variable-item.disabled,.variable-items-wrapper .variable-item.disabled:hover{cursor:not-allowed;opacity:.5}
assets/js/admin.js CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Woo Variation Swatches v1.0.1
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2017-12-24 00:13:39
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
@@ -76,7 +76,8 @@
76
 
77
  __webpack_require__(1);
78
  __webpack_require__(3);
79
- module.exports = __webpack_require__(4);
 
80
 
81
 
82
  /***/ }),
@@ -197,9 +198,11 @@ var PluginHelper = function ($) {
197
  value: function SelectWoo() {
198
  var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'select.wvs-selectwoo';
199
 
200
- $(selector).selectWoo({
201
- allowClear: true
202
- });
 
 
203
  }
204
  }, {
205
  key: 'ColorPicker',
@@ -237,6 +240,12 @@ var PluginHelper = function ($) {
237
 
238
  // removed by extract-text-webpack-plugin
239
 
 
 
 
 
 
 
240
  /***/ })
241
  /******/ ]);
242
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2pzL2FkbWluLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL3dlYnBhY2svYm9vdHN0cmFwIDMzMGUxNTQ1Nzg2NGJmZDhlZmM2Iiwid2VicGFjazovLy9zcmMvanMvYmFja2VuZC5qcyIsIndlYnBhY2s6Ly8vc3JjL2pzL1BsdWdpbkhlbHBlci5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9iYWNrZW5kLnNjc3M/YmU2MSIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9mcm9udGVuZC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIiBcdC8vIFRoZSBtb2R1bGUgY2FjaGVcbiBcdHZhciBpbnN0YWxsZWRNb2R1bGVzID0ge307XG5cbiBcdC8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG4gXHRmdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cbiBcdFx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG4gXHRcdGlmKGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdKSB7XG4gXHRcdFx0cmV0dXJuIGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdLmV4cG9ydHM7XG4gXHRcdH1cbiBcdFx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcbiBcdFx0dmFyIG1vZHVsZSA9IGluc3RhbGxlZE1vZHVsZXNbbW9kdWxlSWRdID0ge1xuIFx0XHRcdGk6IG1vZHVsZUlkLFxuIFx0XHRcdGw6IGZhbHNlLFxuIFx0XHRcdGV4cG9ydHM6IHt9XG4gXHRcdH07XG5cbiBcdFx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG4gXHRcdG1vZHVsZXNbbW9kdWxlSWRdLmNhbGwobW9kdWxlLmV4cG9ydHMsIG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuXG4gXHRcdC8vIEZsYWcgdGhlIG1vZHVsZSBhcyBsb2FkZWRcbiBcdFx0bW9kdWxlLmwgPSB0cnVlO1xuXG4gXHRcdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG4gXHRcdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbiBcdH1cblxuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZXMgb2JqZWN0IChfX3dlYnBhY2tfbW9kdWxlc19fKVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5tID0gbW9kdWxlcztcblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGUgY2FjaGVcbiBcdF9fd2VicGFja19yZXF1aXJlX18uYyA9IGluc3RhbGxlZE1vZHVsZXM7XG5cbiBcdC8vIGRlZmluZSBnZXR0ZXIgZnVuY3Rpb24gZm9yIGhhcm1vbnkgZXhwb3J0c1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kID0gZnVuY3Rpb24oZXhwb3J0cywgbmFtZSwgZ2V0dGVyKSB7XG4gXHRcdGlmKCFfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZXhwb3J0cywgbmFtZSkpIHtcbiBcdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgbmFtZSwge1xuIFx0XHRcdFx0Y29uZmlndXJhYmxlOiBmYWxzZSxcbiBcdFx0XHRcdGVudW1lcmFibGU6IHRydWUsXG4gXHRcdFx0XHRnZXQ6IGdldHRlclxuIFx0XHRcdH0pO1xuIFx0XHR9XG4gXHR9O1xuXG4gXHQvLyBnZXREZWZhdWx0RXhwb3J0IGZ1bmN0aW9uIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbm9uLWhhcm1vbnkgbW9kdWxlc1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5uID0gZnVuY3Rpb24obW9kdWxlKSB7XG4gXHRcdHZhciBnZXR0ZXIgPSBtb2R1bGUgJiYgbW9kdWxlLl9fZXNNb2R1bGUgP1xuIFx0XHRcdGZ1bmN0aW9uIGdldERlZmF1bHQoKSB7IHJldHVybiBtb2R1bGVbJ2RlZmF1bHQnXTsgfSA6XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0TW9kdWxlRXhwb3J0cygpIHsgcmV0dXJuIG1vZHVsZTsgfTtcbiBcdFx0X193ZWJwYWNrX3JlcXVpcmVfXy5kKGdldHRlciwgJ2EnLCBnZXR0ZXIpO1xuIFx0XHRyZXR1cm4gZ2V0dGVyO1xuIFx0fTtcblxuIFx0Ly8gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSBmdW5jdGlvbihvYmplY3QsIHByb3BlcnR5KSB7IHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqZWN0LCBwcm9wZXJ0eSk7IH07XG5cbiBcdC8vIF9fd2VicGFja19wdWJsaWNfcGF0aF9fXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnAgPSBcIlwiO1xuXG4gXHQvLyBMb2FkIGVudHJ5IG1vZHVsZSBhbmQgcmV0dXJuIGV4cG9ydHNcbiBcdHJldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fKF9fd2VicGFja19yZXF1aXJlX18ucyA9IDApO1xuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHdlYnBhY2svYm9vdHN0cmFwIDMzMGUxNTQ1Nzg2NGJmZDhlZmM2IiwialF1ZXJ5KCQgPT4ge1xuICAgIGltcG9ydCgnLi9QbHVnaW5IZWxwZXInKS50aGVuKCh7UGx1Z2luSGVscGVyfSkgPT4ge1xuICAgICAgICBQbHVnaW5IZWxwZXIuU2VsZWN0V29vKCk7XG4gICAgICAgIFBsdWdpbkhlbHBlci5Db2xvclBpY2tlcigpO1xuICAgICAgICBQbHVnaW5IZWxwZXIuRmllbGREZXBlbmRlbmN5KCk7XG4gICAgICAgIFBsdWdpbkhlbHBlci5JbWFnZVVwbG9hZGVyKCk7XG4gICAgfSk7XG59KTsgIC8vIGVuZCBvZiBqcXVlcnkgbWFpbiB3cmFwcGVyXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9qcy9iYWNrZW5kLmpzIiwiLypnbG9iYWwgV1ZTUGx1Z2luT2JqZWN0LCB3cCovXG5cbmNvbnN0IFBsdWdpbkhlbHBlciA9ICgoJCkgPT4ge1xuICAgIGNsYXNzIFBsdWdpbkhlbHBlciB7XG5cbiAgICAgICAgc3RhdGljIEltYWdlVXBsb2FkZXIoKSB7XG4gICAgICAgICAgICAkKGRvY3VtZW50KS5vZmYoJ2NsaWNrJywgJ2J1dHRvbi53dnNfdXBsb2FkX2ltYWdlX2J1dHRvbicpO1xuICAgICAgICAgICAgJChkb2N1bWVudCkub24oJ2NsaWNrJywgJ2J1dHRvbi53dnNfdXBsb2FkX2ltYWdlX2J1dHRvbicsIHRoaXMuQWRkSW1hZ2UpO1xuICAgICAgICAgICAgJChkb2N1bWVudCkub24oJ2NsaWNrJywgJ2J1dHRvbi53dnNfcmVtb3ZlX2ltYWdlX2J1dHRvbicsIHRoaXMuUmVtb3ZlSW1hZ2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIEFkZEltYWdlKGV2ZW50KSB7XG5cbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgbGV0IGZpbGVfZnJhbWU7XG5cbiAgICAgICAgICAgIGlmICh0eXBlb2Ygd3AgIT09ICd1bmRlZmluZWQnICYmIHdwLm1lZGlhICYmIHdwLm1lZGlhLmVkaXRvcikge1xuXG4gICAgICAgICAgICAgICAgLy8gSWYgdGhlIG1lZGlhIGZyYW1lIGFscmVhZHkgZXhpc3RzLCByZW9wZW4gaXQuXG4gICAgICAgICAgICAgICAgaWYgKGZpbGVfZnJhbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsZV9mcmFtZS5vcGVuKCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBDcmVhdGUgdGhlIG1lZGlhIGZyYW1lLlxuICAgICAgICAgICAgICAgIGZpbGVfZnJhbWUgPSB3cC5tZWRpYS5mcmFtZXMuc2VsZWN0X2ltYWdlID0gd3AubWVkaWEoe1xuICAgICAgICAgICAgICAgICAgICB0aXRsZSAgICA6IFdWU1BsdWdpbk9iamVjdC5tZWRpYV90aXRsZSxcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uICAgOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0IDogV1ZTUGx1Z2luT2JqZWN0LmJ1dHRvbl90aXRsZVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBtdWx0aXBsZSA6IGZhbHNlLFxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgLy8gV2hlbiBhbiBpbWFnZSBpcyBzZWxlY3RlZCwgcnVuIGEgY2FsbGJhY2suXG4gICAgICAgICAgICAgICAgZmlsZV9mcmFtZS5vbignc2VsZWN0JywgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgYXR0YWNobWVudCA9IGZpbGVfZnJhbWUuc3RhdGUoKS5nZXQoJ3NlbGVjdGlvbicpLmZpcnN0KCkudG9KU09OKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKCQudHJpbShhdHRhY2htZW50LmlkKSAhPT0gJycpIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHVybCA9ICggdHlwZW9mKGF0dGFjaG1lbnQuc2l6ZXMudGh1bWJuYWlsKSA9PT0gJ3VuZGVmaW5lZCcgKSA/IGF0dGFjaG1lbnQuc2l6ZXMuZnVsbC51cmwgOiBhdHRhY2htZW50LnNpemVzLnRodW1ibmFpbC51cmw7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucHJldigpLnZhbChhdHRhY2htZW50LmlkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykuY2xvc2VzdCgnLm1ldGEtaW1hZ2UtZmllbGQtd3JhcHBlcicpLmZpbmQoJ2ltZycpLmF0dHIoJ3NyYycsIHVybCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLm5leHQoKS5zaG93KCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLy9maWxlX2ZyYW1lLmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAvLyBXaGVuIG9wZW4gc2VsZWN0IHNlbGVjdGVkXG4gICAgICAgICAgICAgICAgZmlsZV9mcmFtZS5vbignb3BlbicsICgpID0+IHtcblxuICAgICAgICAgICAgICAgICAgICAvLyBHcmFiIG91ciBhdHRhY2htZW50IHNlbGVjdGlvbiBhbmQgY29uc3RydWN0IGEgSlNPTiByZXByZXNlbnRhdGlvbiBvZiB0aGUgbW9kZWwuXG4gICAgICAgICAgICAgICAgICAgIGxldCBzZWxlY3Rpb24gID0gZmlsZV9mcmFtZS5zdGF0ZSgpLmdldCgnc2VsZWN0aW9uJyk7XG4gICAgICAgICAgICAgICAgICAgIGxldCBjdXJyZW50ICAgID0gJCh0aGlzKS5wcmV2KCkudmFsKCk7XG4gICAgICAgICAgICAgICAgICAgIGxldCBhdHRhY2htZW50ID0gd3AubWVkaWEuYXR0YWNobWVudChjdXJyZW50KTtcbiAgICAgICAgICAgICAgICAgICAgYXR0YWNobWVudC5mZXRjaCgpO1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3Rpb24uYWRkKGF0dGFjaG1lbnQgPyBbYXR0YWNobWVudF0gOiBbXSk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAvLyBGaW5hbGx5LCBvcGVuIHRoZSBtb2RhbC5cbiAgICAgICAgICAgICAgICBmaWxlX2ZyYW1lLm9wZW4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHN0YXRpYyBSZW1vdmVJbWFnZShldmVudCkge1xuXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgICAgIGxldCBwbGFjZWhvbGRlciA9ICQodGhpcykuY2xvc2VzdCgnLm1ldGEtaW1hZ2UtZmllbGQtd3JhcHBlcicpLmZpbmQoJ2ltZycpLmRhdGEoJ3BsYWNlaG9sZGVyJyk7XG4gICAgICAgICAgICAkKHRoaXMpLmNsb3Nlc3QoJy5tZXRhLWltYWdlLWZpZWxkLXdyYXBwZXInKS5maW5kKCdpbWcnKS5hdHRyKCdzcmMnLCBwbGFjZWhvbGRlcik7XG4gICAgICAgICAgICAkKHRoaXMpLnByZXYoKS5wcmV2KCkudmFsKCcnKTtcbiAgICAgICAgICAgICQodGhpcykuaGlkZSgpO1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIFNlbGVjdFdvbyhzZWxlY3RvciA9ICdzZWxlY3Qud3ZzLXNlbGVjdHdvbycpIHtcbiAgICAgICAgICAgICQoc2VsZWN0b3IpLnNlbGVjdFdvbyh7XG4gICAgICAgICAgICAgICAgYWxsb3dDbGVhciA6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIENvbG9yUGlja2VyKHNlbGVjdG9yID0gJ2lucHV0Lnd2cy1jb2xvci1waWNrZXInKSB7XG4gICAgICAgICAgICAkKHNlbGVjdG9yKS53cENvbG9yUGlja2VyKCk7XG4gICAgICAgIH1cblxuICAgICAgICBzdGF0aWMgRmllbGREZXBlbmRlbmN5KHNlbGVjdG9yID0gJ1tkYXRhLWRlcGVuZHNdJykge1xuICAgICAgICAgICAgJChzZWxlY3RvcikuRm9ybUZpZWxkRGVwZW5kZW5jeSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIFBsdWdpbkhlbHBlcjtcbn0pKGpRdWVyeSk7XG5cbmV4cG9ydCB7IFBsdWdpbkhlbHBlciB9O1xuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBzcmMvanMvUGx1Z2luSGVscGVyLmpzIiwiLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL3NyYy9zY3NzL2JhY2tlbmQuc2Nzc1xuLy8gbW9kdWxlIGlkID0gM1xuLy8gbW9kdWxlIGNodW5rcyA9IDAiLCIvLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL3Njc3MvZnJvbnRlbmQuc2Nzc1xuLy8gbW9kdWxlIGlkID0gNFxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7OztBQzdEQTtBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7QUNQQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBREE7QUFBQTtBQUFBO0FBSUE7QUFDQTtBQUNBO0FBQ0E7QUFQQTtBQUFBO0FBQUE7QUFTQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBREE7QUFHQTtBQUxBO0FBQ0E7QUFPQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUE5REE7QUFBQTtBQUFBO0FBQ0E7QUFpRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBMUVBO0FBQUE7QUFBQTtBQTRFQTtBQUNBO0FBQUE7QUFDQTtBQURBO0FBR0E7QUFoRkE7QUFBQTtBQUFBO0FBa0ZBO0FBQ0E7QUFBQTtBQUNBO0FBcEZBO0FBQUE7QUFBQTtBQXNGQTtBQUNBO0FBQUE7QUFDQTtBQXhGQTtBQUNBO0FBREE7QUFBQTtBQUNBO0FBMEZBO0FBQ0E7QUFDQTs7Ozs7OztBQy9GQTs7Ozs7O0FDQUE7OztBIiwic291cmNlUm9vdCI6IiJ9
1
  /*!
2
+ * Woo Variation Swatches v1.0.2
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-1-9 02:17:48
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
76
 
77
  __webpack_require__(1);
78
  __webpack_require__(3);
79
+ __webpack_require__(4);
80
+ module.exports = __webpack_require__(5);
81
 
82
 
83
  /***/ }),
198
  value: function SelectWoo() {
199
  var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'select.wvs-selectwoo';
200
 
201
+ if ($().selectWoo) {
202
+ $(selector).selectWoo({
203
+ allowClear: true
204
+ });
205
+ }
206
  }
207
  }, {
208
  key: 'ColorPicker',
240
 
241
  // removed by extract-text-webpack-plugin
242
 
243
+ /***/ }),
244
+ /* 5 */
245
+ /***/ (function(module, exports) {
246
+
247
+ // removed by extract-text-webpack-plugin
248
+
249
  /***/ })
250
  /******/ ]);
251
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2pzL2FkbWluLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL3dlYnBhY2svYm9vdHN0cmFwIGM0ZThkODk0ODU3OGZmZDM2Y2QxIiwid2VicGFjazovLy9zcmMvanMvYmFja2VuZC5qcyIsIndlYnBhY2s6Ly8vc3JjL2pzL1BsdWdpbkhlbHBlci5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9iYWNrZW5kLnNjc3M/YmU2MSIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9mcm9udGVuZC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL3Rvb2x0aXAuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIgXHQvLyBUaGUgbW9kdWxlIGNhY2hlXG4gXHR2YXIgaW5zdGFsbGVkTW9kdWxlcyA9IHt9O1xuXG4gXHQvLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuIFx0ZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuXG4gXHRcdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuIFx0XHRpZihpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSkge1xuIFx0XHRcdHJldHVybiBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXS5leHBvcnRzO1xuIFx0XHR9XG4gXHRcdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG4gXHRcdHZhciBtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSA9IHtcbiBcdFx0XHRpOiBtb2R1bGVJZCxcbiBcdFx0XHRsOiBmYWxzZSxcbiBcdFx0XHRleHBvcnRzOiB7fVxuIFx0XHR9O1xuXG4gXHRcdC8vIEV4ZWN1dGUgdGhlIG1vZHVsZSBmdW5jdGlvblxuIFx0XHRtb2R1bGVzW21vZHVsZUlkXS5jYWxsKG1vZHVsZS5leHBvcnRzLCBtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKTtcblxuIFx0XHQvLyBGbGFnIHRoZSBtb2R1bGUgYXMgbG9hZGVkXG4gXHRcdG1vZHVsZS5sID0gdHJ1ZTtcblxuIFx0XHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuIFx0XHRyZXR1cm4gbW9kdWxlLmV4cG9ydHM7XG4gXHR9XG5cblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGVzIG9iamVjdCAoX193ZWJwYWNrX21vZHVsZXNfXylcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubSA9IG1vZHVsZXM7XG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlIGNhY2hlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmMgPSBpbnN0YWxsZWRNb2R1bGVzO1xuXG4gXHQvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9uIGZvciBoYXJtb255IGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uZCA9IGZ1bmN0aW9uKGV4cG9ydHMsIG5hbWUsIGdldHRlcikge1xuIFx0XHRpZighX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIG5hbWUpKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIG5hbWUsIHtcbiBcdFx0XHRcdGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4gXHRcdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuIFx0XHRcdFx0Z2V0OiBnZXR0ZXJcbiBcdFx0XHR9KTtcbiBcdFx0fVxuIFx0fTtcblxuIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbiBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbiBcdFx0cmV0dXJuIGdldHRlcjtcbiBcdH07XG5cbiBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuXG4gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCJcIjtcblxuIFx0Ly8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4gXHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyhfX3dlYnBhY2tfcmVxdWlyZV9fLnMgPSAwKTtcblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyB3ZWJwYWNrL2Jvb3RzdHJhcCBjNGU4ZDg5NDg1NzhmZmQzNmNkMSIsImpRdWVyeSgkID0+IHtcbiAgICBpbXBvcnQoJy4vUGx1Z2luSGVscGVyJykudGhlbigoe1BsdWdpbkhlbHBlcn0pID0+IHtcbiAgICAgICAgUGx1Z2luSGVscGVyLlNlbGVjdFdvbygpO1xuICAgICAgICBQbHVnaW5IZWxwZXIuQ29sb3JQaWNrZXIoKTtcbiAgICAgICAgUGx1Z2luSGVscGVyLkZpZWxkRGVwZW5kZW5jeSgpO1xuICAgICAgICBQbHVnaW5IZWxwZXIuSW1hZ2VVcGxvYWRlcigpO1xuICAgIH0pO1xufSk7ICAvLyBlbmQgb2YganF1ZXJ5IG1haW4gd3JhcHBlclxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBzcmMvanMvYmFja2VuZC5qcyIsIi8qZ2xvYmFsIFdWU1BsdWdpbk9iamVjdCwgd3AqL1xuXG5jb25zdCBQbHVnaW5IZWxwZXIgPSAoKCQpID0+IHtcbiAgICBjbGFzcyBQbHVnaW5IZWxwZXIge1xuXG4gICAgICAgIHN0YXRpYyBJbWFnZVVwbG9hZGVyKCkge1xuICAgICAgICAgICAgJChkb2N1bWVudCkub2ZmKCdjbGljaycsICdidXR0b24ud3ZzX3VwbG9hZF9pbWFnZV9idXR0b24nKTtcbiAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICdidXR0b24ud3ZzX3VwbG9hZF9pbWFnZV9idXR0b24nLCB0aGlzLkFkZEltYWdlKTtcbiAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICdidXR0b24ud3ZzX3JlbW92ZV9pbWFnZV9idXR0b24nLCB0aGlzLlJlbW92ZUltYWdlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0YXRpYyBBZGRJbWFnZShldmVudCkge1xuXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgICAgIGxldCBmaWxlX2ZyYW1lO1xuXG4gICAgICAgICAgICBpZiAodHlwZW9mIHdwICE9PSAndW5kZWZpbmVkJyAmJiB3cC5tZWRpYSAmJiB3cC5tZWRpYS5lZGl0b3IpIHtcblxuICAgICAgICAgICAgICAgIC8vIElmIHRoZSBtZWRpYSBmcmFtZSBhbHJlYWR5IGV4aXN0cywgcmVvcGVuIGl0LlxuICAgICAgICAgICAgICAgIGlmIChmaWxlX2ZyYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGVfZnJhbWUub3BlbigpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gQ3JlYXRlIHRoZSBtZWRpYSBmcmFtZS5cbiAgICAgICAgICAgICAgICBmaWxlX2ZyYW1lID0gd3AubWVkaWEuZnJhbWVzLnNlbGVjdF9pbWFnZSA9IHdwLm1lZGlhKHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGUgICAgOiBXVlNQbHVnaW5PYmplY3QubWVkaWFfdGl0bGUsXG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbiAgIDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCA6IFdWU1BsdWdpbk9iamVjdC5idXR0b25fdGl0bGVcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGUgOiBmYWxzZSxcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIC8vIFdoZW4gYW4gaW1hZ2UgaXMgc2VsZWN0ZWQsIHJ1biBhIGNhbGxiYWNrLlxuICAgICAgICAgICAgICAgIGZpbGVfZnJhbWUub24oJ3NlbGVjdCcsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGF0dGFjaG1lbnQgPSBmaWxlX2ZyYW1lLnN0YXRlKCkuZ2V0KCdzZWxlY3Rpb24nKS5maXJzdCgpLnRvSlNPTigpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICgkLnRyaW0oYXR0YWNobWVudC5pZCkgIT09ICcnKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB1cmwgPSAoIHR5cGVvZihhdHRhY2htZW50LnNpemVzLnRodW1ibmFpbCkgPT09ICd1bmRlZmluZWQnICkgPyBhdHRhY2htZW50LnNpemVzLmZ1bGwudXJsIDogYXR0YWNobWVudC5zaXplcy50aHVtYm5haWwudXJsO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLnByZXYoKS52YWwoYXR0YWNobWVudC5pZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmNsb3Nlc3QoJy5tZXRhLWltYWdlLWZpZWxkLXdyYXBwZXInKS5maW5kKCdpbWcnKS5hdHRyKCdzcmMnLCB1cmwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5uZXh0KCkuc2hvdygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC8vZmlsZV9mcmFtZS5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgLy8gV2hlbiBvcGVuIHNlbGVjdCBzZWxlY3RlZFxuICAgICAgICAgICAgICAgIGZpbGVfZnJhbWUub24oJ29wZW4nLCAoKSA9PiB7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gR3JhYiBvdXIgYXR0YWNobWVudCBzZWxlY3Rpb24gYW5kIGNvbnN0cnVjdCBhIEpTT04gcmVwcmVzZW50YXRpb24gb2YgdGhlIG1vZGVsLlxuICAgICAgICAgICAgICAgICAgICBsZXQgc2VsZWN0aW9uICA9IGZpbGVfZnJhbWUuc3RhdGUoKS5nZXQoJ3NlbGVjdGlvbicpO1xuICAgICAgICAgICAgICAgICAgICBsZXQgY3VycmVudCAgICA9ICQodGhpcykucHJldigpLnZhbCgpO1xuICAgICAgICAgICAgICAgICAgICBsZXQgYXR0YWNobWVudCA9IHdwLm1lZGlhLmF0dGFjaG1lbnQoY3VycmVudCk7XG4gICAgICAgICAgICAgICAgICAgIGF0dGFjaG1lbnQuZmV0Y2goKTtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0aW9uLmFkZChhdHRhY2htZW50ID8gW2F0dGFjaG1lbnRdIDogW10pO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgLy8gRmluYWxseSwgb3BlbiB0aGUgbW9kYWwuXG4gICAgICAgICAgICAgICAgZmlsZV9mcmFtZS5vcGVuKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzdGF0aWMgUmVtb3ZlSW1hZ2UoZXZlbnQpIHtcblxuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgICAgICBsZXQgcGxhY2Vob2xkZXIgPSAkKHRoaXMpLmNsb3Nlc3QoJy5tZXRhLWltYWdlLWZpZWxkLXdyYXBwZXInKS5maW5kKCdpbWcnKS5kYXRhKCdwbGFjZWhvbGRlcicpO1xuICAgICAgICAgICAgJCh0aGlzKS5jbG9zZXN0KCcubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyJykuZmluZCgnaW1nJykuYXR0cignc3JjJywgcGxhY2Vob2xkZXIpO1xuICAgICAgICAgICAgJCh0aGlzKS5wcmV2KCkucHJldigpLnZhbCgnJyk7XG4gICAgICAgICAgICAkKHRoaXMpLmhpZGUoKTtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0YXRpYyBTZWxlY3RXb28oc2VsZWN0b3IgPSAnc2VsZWN0Lnd2cy1zZWxlY3R3b28nKSB7XG4gICAgICAgICAgICBpZiAoJCgpLnNlbGVjdFdvbykge1xuICAgICAgICAgICAgICAgICQoc2VsZWN0b3IpLnNlbGVjdFdvbyh7XG4gICAgICAgICAgICAgICAgICAgIGFsbG93Q2xlYXIgOiB0cnVlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzdGF0aWMgQ29sb3JQaWNrZXIoc2VsZWN0b3IgPSAnaW5wdXQud3ZzLWNvbG9yLXBpY2tlcicpIHtcbiAgICAgICAgICAgICQoc2VsZWN0b3IpLndwQ29sb3JQaWNrZXIoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0YXRpYyBGaWVsZERlcGVuZGVuY3koc2VsZWN0b3IgPSAnW2RhdGEtZGVwZW5kc10nKSB7XG4gICAgICAgICAgICAkKHNlbGVjdG9yKS5Gb3JtRmllbGREZXBlbmRlbmN5KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gUGx1Z2luSGVscGVyO1xufSkoalF1ZXJ5KTtcblxuZXhwb3J0IHsgUGx1Z2luSGVscGVyIH07XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9qcy9QbHVnaW5IZWxwZXIuanMiLCIvLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL3Njc3MvYmFja2VuZC5zY3NzXG4vLyBtb2R1bGUgaWQgPSAzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCIsIi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvc2Nzcy9mcm9udGVuZC5zY3NzXG4vLyBtb2R1bGUgaWQgPSA0XG4vLyBtb2R1bGUgY2h1bmtzID0gMCIsIi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvc2Nzcy90b29sdGlwLnNjc3Ncbi8vIG1vZHVsZSBpZCA9IDVcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDN0RBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7OztBQ1BBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFEQTtBQUFBO0FBQUE7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQVBBO0FBQUE7QUFBQTtBQVNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFEQTtBQUdBO0FBTEE7QUFDQTtBQU9BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQTlEQTtBQUFBO0FBQUE7QUFDQTtBQWlFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUExRUE7QUFBQTtBQUFBO0FBNEVBO0FBQ0E7QUFBQTtBQUNBO0FBQ0E7QUFEQTtBQUdBO0FBQ0E7QUFsRkE7QUFBQTtBQUFBO0FBb0ZBO0FBQ0E7QUFBQTtBQUNBO0FBdEZBO0FBQUE7QUFBQTtBQXdGQTtBQUNBO0FBQUE7QUFDQTtBQTFGQTtBQUNBO0FBREE7QUFBQTtBQUNBO0FBNEZBO0FBQ0E7QUFDQTs7Ozs7OztBQ2pHQTs7Ozs7O0FDQUE7Ozs7OztBQ0FBOzs7QSIsInNvdXJjZVJvb3QiOiIifQ==
assets/js/admin.min.js CHANGED
@@ -1 +1 @@
1
- !function(e){function t(o){if(n[o])return n[o].exports;var i=n[o]={i:o,l:!1,exports:{}};return e[o].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=0)}([function(e,t,n){n(1),n(3),e.exports=n(4)},function(e,t,n){jQuery(function(e){Promise.resolve().then(function(){return n(2)}).then(function(e){var t=e.PluginHelper;t.SelectWoo(),t.ColorPicker(),t.FieldDependency(),t.ImageUploader()})})},function(e,t,n){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"PluginHelper",function(){return r});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,n,o){return n&&e(t.prototype,n),o&&e(t,o),t}}(),r=function(e){return function(){function t(){o(this,t)}return i(t,null,[{key:"ImageUploader",value:function(){e(document).off("click","button.wvs_upload_image_button"),e(document).on("click","button.wvs_upload_image_button",this.AddImage),e(document).on("click","button.wvs_remove_image_button",this.RemoveImage)}},{key:"AddImage",value:function(t){var n=this;t.preventDefault(),t.stopPropagation();var o=void 0;if("undefined"!=typeof wp&&wp.media&&wp.media.editor){if(o)return void o.open();o=wp.media.frames.select_image=wp.media({title:WVSPluginObject.media_title,button:{text:WVSPluginObject.button_title},multiple:!1}),o.on("select",function(){var t=o.state().get("selection").first().toJSON();if(""!==e.trim(t.id)){var i=void 0===t.sizes.thumbnail?t.sizes.full.url:t.sizes.thumbnail.url;e(n).prev().val(t.id),e(n).closest(".meta-image-field-wrapper").find("img").attr("src",i),e(n).next().show()}}),o.on("open",function(){var t=o.state().get("selection"),i=e(n).prev().val(),r=wp.media.attachment(i);r.fetch(),t.add(r?[r]:[])}),o.open()}}},{key:"RemoveImage",value:function(t){t.preventDefault(),t.stopPropagation();var n=e(this).closest(".meta-image-field-wrapper").find("img").data("placeholder");return e(this).closest(".meta-image-field-wrapper").find("img").attr("src",n),e(this).prev().prev().val(""),e(this).hide(),!1}},{key:"SelectWoo",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"select.wvs-selectwoo";e(t).selectWoo({allowClear:!0})}},{key:"ColorPicker",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"input.wvs-color-picker";e(t).wpColorPicker()}},{key:"FieldDependency",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"[data-depends]";e(t).FormFieldDependency()}}]),t}()}(jQuery)},function(e,t){},function(e,t){}]);
1
+ !function(e){function t(o){if(n[o])return n[o].exports;var i=n[o]={i:o,l:!1,exports:{}};return e[o].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=0)}([function(e,t,n){n(1),n(3),n(4),e.exports=n(5)},function(e,t,n){jQuery(function(e){Promise.resolve().then(function(){return n(2)}).then(function(e){var t=e.PluginHelper;t.SelectWoo(),t.ColorPicker(),t.FieldDependency(),t.ImageUploader()})})},function(e,t,n){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"PluginHelper",function(){return r});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,n,o){return n&&e(t.prototype,n),o&&e(t,o),t}}(),r=function(e){return function(){function t(){o(this,t)}return i(t,null,[{key:"ImageUploader",value:function(){e(document).off("click","button.wvs_upload_image_button"),e(document).on("click","button.wvs_upload_image_button",this.AddImage),e(document).on("click","button.wvs_remove_image_button",this.RemoveImage)}},{key:"AddImage",value:function(t){var n=this;t.preventDefault(),t.stopPropagation();var o=void 0;if("undefined"!=typeof wp&&wp.media&&wp.media.editor){if(o)return void o.open();o=wp.media.frames.select_image=wp.media({title:WVSPluginObject.media_title,button:{text:WVSPluginObject.button_title},multiple:!1}),o.on("select",function(){var t=o.state().get("selection").first().toJSON();if(""!==e.trim(t.id)){var i=void 0===t.sizes.thumbnail?t.sizes.full.url:t.sizes.thumbnail.url;e(n).prev().val(t.id),e(n).closest(".meta-image-field-wrapper").find("img").attr("src",i),e(n).next().show()}}),o.on("open",function(){var t=o.state().get("selection"),i=e(n).prev().val(),r=wp.media.attachment(i);r.fetch(),t.add(r?[r]:[])}),o.open()}}},{key:"RemoveImage",value:function(t){t.preventDefault(),t.stopPropagation();var n=e(this).closest(".meta-image-field-wrapper").find("img").data("placeholder");return e(this).closest(".meta-image-field-wrapper").find("img").attr("src",n),e(this).prev().prev().val(""),e(this).hide(),!1}},{key:"SelectWoo",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"select.wvs-selectwoo";e().selectWoo&&e(t).selectWoo({allowClear:!0})}},{key:"ColorPicker",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"input.wvs-color-picker";e(t).wpColorPicker()}},{key:"FieldDependency",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"[data-depends]";e(t).FormFieldDependency()}}]),t}()}(jQuery)},function(e,t){},function(e,t){},function(e,t){}]);
assets/js/frontend.js CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * Woo Variation Swatches v1.0.1
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2017-12-24 00:13:39
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
@@ -67,28 +67,25 @@
67
  /******/ __webpack_require__.p = "";
68
  /******/
69
  /******/ // Load entry module and return exports
70
- /******/ return __webpack_require__(__webpack_require__.s = 5);
71
  /******/ })
72
  /************************************************************************/
73
- /******/ ([
74
- /* 0 */,
75
- /* 1 */,
76
- /* 2 */,
77
- /* 3 */,
78
- /* 4 */,
79
- /* 5 */
80
  /***/ (function(module, exports, __webpack_require__) {
81
 
82
- module.exports = __webpack_require__(6);
83
 
84
 
85
  /***/ }),
86
- /* 6 */
 
87
  /***/ (function(module, exports, __webpack_require__) {
88
 
89
  jQuery(function ($) {
90
  Promise.resolve().then(function () {
91
- return __webpack_require__(7);
92
  }).then(function () {
93
  // Init on Ajax Popup :)
94
  $(document).on('wc_variation_form', '.variations_form', function () {
@@ -98,7 +95,8 @@ jQuery(function ($) {
98
  }); // end of jquery main wrapper
99
 
100
  /***/ }),
101
- /* 7 */
 
102
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
103
 
104
  "use strict";
@@ -240,5 +238,6 @@ var CustomVariationSelect = function ($) {
240
  /* harmony default export */ __webpack_exports__["default"] = (CustomVariationSelect);
241
 
242
  /***/ })
243
- /******/ ]);
244
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2pzL2Zyb250ZW5kLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL3dlYnBhY2svYm9vdHN0cmFwIDMzMGUxNTQ1Nzg2NGJmZDhlZmM2Iiwid2VicGFjazovLy9zcmMvanMvZnJvbnRlbmQuanMiLCJ3ZWJwYWNrOi8vL3NyYy9qcy9DdXN0b21WYXJpYXRpb25TZWxlY3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiIFx0Ly8gVGhlIG1vZHVsZSBjYWNoZVxuIFx0dmFyIGluc3RhbGxlZE1vZHVsZXMgPSB7fTtcblxuIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbiBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblxuIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbiBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbiBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbiBcdFx0fVxuIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4gXHRcdFx0aTogbW9kdWxlSWQsXG4gXHRcdFx0bDogZmFsc2UsXG4gXHRcdFx0ZXhwb3J0czoge31cbiBcdFx0fTtcblxuIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbiBcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cbiBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuIFx0XHRtb2R1bGUubCA9IHRydWU7XG5cbiBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbiBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuIFx0fVxuXG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlcyBvYmplY3QgKF9fd2VicGFja19tb2R1bGVzX18pXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm0gPSBtb2R1bGVzO1xuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZSBjYWNoZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5jID0gaW5zdGFsbGVkTW9kdWxlcztcblxuIFx0Ly8gZGVmaW5lIGdldHRlciBmdW5jdGlvbiBmb3IgaGFybW9ueSBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSBmdW5jdGlvbihleHBvcnRzLCBuYW1lLCBnZXR0ZXIpIHtcbiBcdFx0aWYoIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBuYW1lKSkge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBuYW1lLCB7XG4gXHRcdFx0XHRjb25maWd1cmFibGU6IGZhbHNlLFxuIFx0XHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcbiBcdFx0XHRcdGdldDogZ2V0dGVyXG4gXHRcdFx0fSk7XG4gXHRcdH1cbiBcdH07XG5cbiBcdC8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSBmdW5jdGlvbihtb2R1bGUpIHtcbiBcdFx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIG1vZHVsZVsnZGVmYXVsdCddOyB9IDpcbiBcdFx0XHRmdW5jdGlvbiBnZXRNb2R1bGVFeHBvcnRzKCkgeyByZXR1cm4gbW9kdWxlOyB9O1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCAnYScsIGdldHRlcik7XG4gXHRcdHJldHVybiBnZXR0ZXI7XG4gXHR9O1xuXG4gXHQvLyBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGxcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubyA9IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KTsgfTtcblxuIFx0Ly8gX193ZWJwYWNrX3B1YmxpY19wYXRoX19cbiBcdF9fd2VicGFja19yZXF1aXJlX18ucCA9IFwiXCI7XG5cbiBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuIFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gNSk7XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gd2VicGFjay9ib290c3RyYXAgMzMwZTE1NDU3ODY0YmZkOGVmYzYiLCJqUXVlcnkoJCA9PiB7XG4gICAgaW1wb3J0KCcuL0N1c3RvbVZhcmlhdGlvblNlbGVjdCcpLnRoZW4oKCkgPT4ge1xuICAgICAgICAvLyBJbml0IG9uIEFqYXggUG9wdXAgOilcbiAgICAgICAgJChkb2N1bWVudCkub24oJ3djX3ZhcmlhdGlvbl9mb3JtJywgJy52YXJpYXRpb25zX2Zvcm0nLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAkKHRoaXMpLkN1c3RvbVZhcmlhdGlvblNlbGVjdCgpO1xuICAgICAgICB9KTtcbiAgICB9KTtcbn0pOyAgLy8gZW5kIG9mIGpxdWVyeSBtYWluIHdyYXBwZXJcblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL2pzL2Zyb250ZW5kLmpzIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gV29vQ29tbWVyY2UgVmFyaWF0aW9uIENoYW5nZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBDdXN0b21WYXJpYXRpb25TZWxlY3QgPSAoKCQpID0+IHtcblxuICAgIGNvbnN0IERlZmF1bHQgPSB7fTtcblxuICAgIGNsYXNzIEN1c3RvbVZhcmlhdGlvblNlbGVjdCB7XG5cbiAgICAgICAgY29uc3RydWN0b3IoZWxlbWVudCwgY29uZmlnKSB7XG5cbiAgICAgICAgICAgIC8vIEFzc2lnblxuICAgICAgICAgICAgdGhpcy5fZWxlbWVudCA9ICQoZWxlbWVudCk7XG4gICAgICAgICAgICB0aGlzLl9jb25maWcgID0gJC5leHRlbmQoe30sIERlZmF1bHQsIGNvbmZpZyk7XG5cbiAgICAgICAgICAgIC8vIENhbGxcbiAgICAgICAgICAgIC8vdGhpcy5hZGRJbnB1dE1hcmt1cCgpO1xuICAgICAgICAgICAgdGhpcy53cmFwcGVyQWN0aW9uKCk7XG4gICAgICAgICAgICB0aGlzLnJlc2V0RGF0YUFjdGlvbigpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYXJpYXRpb25WYWx1ZUFjdGlvbigpO1xuXG4gICAgICAgICAgICAkKGRvY3VtZW50KS50cmlnZ2VyKCdjdXN0b21fdmFyaWF0aW9uX3NlbGVjdCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIF9qUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICBuZXcgQ3VzdG9tVmFyaWF0aW9uU2VsZWN0KHRoaXMsIGNvbmZpZylcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH1cblxuICAgICAgICB3cmFwcGVyQWN0aW9uKCkge1xuICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5maW5kKCd1bC52YXJpYWJsZS1pdGVtcy13cmFwcGVyJykuZWFjaChmdW5jdGlvbiAoaSwgZWwpIHtcblxuICAgICAgICAgICAgICAgIGxldCBzZWxlY3QgPSAkKHRoaXMpLnByZXYoJ3NlbGVjdCcpLFxuICAgICAgICAgICAgICAgICAgICBsaSAgICAgPSAkKHRoaXMpLmZpbmQoJ2xpJyk7XG5cbiAgICAgICAgICAgICAgICAkKHRoaXMpLm9uKCdjbGljaycsICdsaScsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gJCh0aGlzKS5kYXRhKCd2YWx1ZScpO1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3QudmFsKHZhbHVlKS50cmlnZ2VyKCdjaGFuZ2UnKTtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnRyaWdnZXIoJ2NsaWNrJyk7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCdmb2N1c2luJyk7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCd0b3VjaHN0YXJ0Jyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlc2V0RGF0YUFjdGlvbigpIHtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQub24oJ3Jlc2V0X2RhdGEnLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAkKHRoaXMpLmZpbmQoJ3VsLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXInKS5lYWNoKGZ1bmN0aW9uICgpIHtcblxuICAgICAgICAgICAgICAgICAgICBsZXQgbGkgPSAkKHRoaXMpLmZpbmQoJ2xpJyk7XG4gICAgICAgICAgICAgICAgICAgIGxpLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5yZW1vdmVDbGFzcygnc2VsZWN0ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucmVtb3ZlQ2xhc3MoJ2Rpc2FibGVkJyk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB1cGRhdGVWYXJpYXRpb25WYWx1ZUFjdGlvbigpIHtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQub24oJ3dvb2NvbW1lcmNlX3VwZGF0ZV92YXJpYXRpb25fdmFsdWVzJywgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgJCh0aGlzKS5maW5kKCd1bC52YXJpYWJsZS1pdGVtcy13cmFwcGVyJykuZWFjaChmdW5jdGlvbiAoKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgbGV0IHNlbGVjdGVkID0gJycsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zICA9ICQodGhpcykucHJldignc2VsZWN0JykuZmluZCgnb3B0aW9uJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50ICA9ICQodGhpcykucHJldignc2VsZWN0JykuZmluZCgnb3B0aW9uOnNlbGVjdGVkJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBlcSAgICAgICA9ICQodGhpcykucHJldignc2VsZWN0JykuZmluZCgnb3B0aW9uJykuZXEoMSksXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSAgICAgICA9ICQodGhpcykuZmluZCgnbGknKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdHMgID0gW107XG5cbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLnZhbCgpICE9PSAnJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdHMucHVzaCgkKHRoaXMpLnZhbCgpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZCA9IGN1cnJlbnQgPyBjdXJyZW50LnZhbCgpIDogZXEudmFsKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgIF8uZGVsYXkoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGkuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gJCh0aGlzKS5kYXRhKCd2YWx1ZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucmVtb3ZlQ2xhc3MoJ3NlbGVjdGVkIGRpc2FibGVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF8uY29udGFpbnMoc2VsZWN0cywgdmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucmVtb3ZlQ2xhc3MoJ2Rpc2FibGVkJyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlID09PSBzZWxlY3RlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5hZGRDbGFzcygnc2VsZWN0ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5hZGRDbGFzcygnZGlzYWJsZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSwgMSk7XG5cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAgICAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgKi9cblxuICAgIC8qKlxuICAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAqIGpRdWVyeVxuICAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAqL1xuXG4gICAgJC5mblsnQ3VzdG9tVmFyaWF0aW9uU2VsZWN0J10gPSBDdXN0b21WYXJpYXRpb25TZWxlY3QuX2pRdWVyeUludGVyZmFjZTtcbiAgICAkLmZuWydDdXN0b21WYXJpYXRpb25TZWxlY3QnXS5Db25zdHJ1Y3RvciA9IEN1c3RvbVZhcmlhdGlvblNlbGVjdDtcbiAgICAkLmZuWydDdXN0b21WYXJpYXRpb25TZWxlY3QnXS5ub0NvbmZsaWN0ICA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgJC5mblsnQ3VzdG9tVmFyaWF0aW9uU2VsZWN0J10gPSAkLmZuWydDdXN0b21WYXJpYXRpb25TZWxlY3QnXTtcbiAgICAgICAgcmV0dXJuIEN1c3RvbVZhcmlhdGlvblNlbGVjdC5falF1ZXJ5SW50ZXJmYWNlXG4gICAgfVxuXG4gICAgcmV0dXJuIEN1c3RvbVZhcmlhdGlvblNlbGVjdDtcblxufSkoalF1ZXJ5KTtcblxuZXhwb3J0IGRlZmF1bHQgQ3VzdG9tVmFyaWF0aW9uU2VsZWN0XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9qcy9DdXN0b21WYXJpYXRpb25TZWxlY3QuanMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQzdEQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7O0FDUEE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUhBO0FBTUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFwQkE7QUFBQTtBQUFBO0FBNEJBO0FBQ0E7QUFDQTtBQUFBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBM0NBO0FBQUE7QUFBQTtBQThDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBeERBO0FBQUE7QUFBQTtBQTJEQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQU1BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBL0ZBO0FBQUE7QUFBQTtBQXNCQTtBQUNBO0FBQ0E7QUFDQTtBQXpCQTtBQUNBO0FBREE7QUFBQTtBQUNBO0FBaUdBOzs7Ozs7QUFNQTs7Ozs7O0FBTUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTs7O0EiLCJzb3VyY2VSb290IjoiIn0=
 
1
  /*!
2
+ * Woo Variation Swatches v1.0.2
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-1-9 02:17:48
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
67
  /******/ __webpack_require__.p = "";
68
  /******/
69
  /******/ // Load entry module and return exports
70
+ /******/ return __webpack_require__(__webpack_require__.s = 6);
71
  /******/ })
72
  /************************************************************************/
73
+ /******/ ({
74
+
75
+ /***/ 6:
 
 
 
 
76
  /***/ (function(module, exports, __webpack_require__) {
77
 
78
+ module.exports = __webpack_require__(7);
79
 
80
 
81
  /***/ }),
82
+
83
+ /***/ 7:
84
  /***/ (function(module, exports, __webpack_require__) {
85
 
86
  jQuery(function ($) {
87
  Promise.resolve().then(function () {
88
+ return __webpack_require__(8);
89
  }).then(function () {
90
  // Init on Ajax Popup :)
91
  $(document).on('wc_variation_form', '.variations_form', function () {
95
  }); // end of jquery main wrapper
96
 
97
  /***/ }),
98
+
99
+ /***/ 8:
100
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
101
 
102
  "use strict";
238
  /* harmony default export */ __webpack_exports__["default"] = (CustomVariationSelect);
239
 
240
  /***/ })
241
+
242
+ /******/ });
243
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2pzL2Zyb250ZW5kLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL3dlYnBhY2svYm9vdHN0cmFwIGM0ZThkODk0ODU3OGZmZDM2Y2QxIiwid2VicGFjazovLy9zcmMvanMvZnJvbnRlbmQuanMiLCJ3ZWJwYWNrOi8vL3NyYy9qcy9DdXN0b21WYXJpYXRpb25TZWxlY3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiIFx0Ly8gVGhlIG1vZHVsZSBjYWNoZVxuIFx0dmFyIGluc3RhbGxlZE1vZHVsZXMgPSB7fTtcblxuIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbiBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblxuIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbiBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbiBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbiBcdFx0fVxuIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4gXHRcdFx0aTogbW9kdWxlSWQsXG4gXHRcdFx0bDogZmFsc2UsXG4gXHRcdFx0ZXhwb3J0czoge31cbiBcdFx0fTtcblxuIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbiBcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cbiBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuIFx0XHRtb2R1bGUubCA9IHRydWU7XG5cbiBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbiBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuIFx0fVxuXG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlcyBvYmplY3QgKF9fd2VicGFja19tb2R1bGVzX18pXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm0gPSBtb2R1bGVzO1xuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZSBjYWNoZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5jID0gaW5zdGFsbGVkTW9kdWxlcztcblxuIFx0Ly8gZGVmaW5lIGdldHRlciBmdW5jdGlvbiBmb3IgaGFybW9ueSBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSBmdW5jdGlvbihleHBvcnRzLCBuYW1lLCBnZXR0ZXIpIHtcbiBcdFx0aWYoIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBuYW1lKSkge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBuYW1lLCB7XG4gXHRcdFx0XHRjb25maWd1cmFibGU6IGZhbHNlLFxuIFx0XHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcbiBcdFx0XHRcdGdldDogZ2V0dGVyXG4gXHRcdFx0fSk7XG4gXHRcdH1cbiBcdH07XG5cbiBcdC8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSBmdW5jdGlvbihtb2R1bGUpIHtcbiBcdFx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIG1vZHVsZVsnZGVmYXVsdCddOyB9IDpcbiBcdFx0XHRmdW5jdGlvbiBnZXRNb2R1bGVFeHBvcnRzKCkgeyByZXR1cm4gbW9kdWxlOyB9O1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCAnYScsIGdldHRlcik7XG4gXHRcdHJldHVybiBnZXR0ZXI7XG4gXHR9O1xuXG4gXHQvLyBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGxcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubyA9IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KTsgfTtcblxuIFx0Ly8gX193ZWJwYWNrX3B1YmxpY19wYXRoX19cbiBcdF9fd2VicGFja19yZXF1aXJlX18ucCA9IFwiXCI7XG5cbiBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuIFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gNik7XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gd2VicGFjay9ib290c3RyYXAgYzRlOGQ4OTQ4NTc4ZmZkMzZjZDEiLCJqUXVlcnkoJCA9PiB7XG4gICAgaW1wb3J0KCcuL0N1c3RvbVZhcmlhdGlvblNlbGVjdCcpLnRoZW4oKCkgPT4ge1xuICAgICAgICAvLyBJbml0IG9uIEFqYXggUG9wdXAgOilcbiAgICAgICAgJChkb2N1bWVudCkub24oJ3djX3ZhcmlhdGlvbl9mb3JtJywgJy52YXJpYXRpb25zX2Zvcm0nLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAkKHRoaXMpLkN1c3RvbVZhcmlhdGlvblNlbGVjdCgpO1xuICAgICAgICB9KTtcbiAgICB9KTtcbn0pOyAgLy8gZW5kIG9mIGpxdWVyeSBtYWluIHdyYXBwZXJcblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL2pzL2Zyb250ZW5kLmpzIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gV29vQ29tbWVyY2UgVmFyaWF0aW9uIENoYW5nZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBDdXN0b21WYXJpYXRpb25TZWxlY3QgPSAoKCQpID0+IHtcblxuICAgIGNvbnN0IERlZmF1bHQgPSB7fTtcblxuICAgIGNsYXNzIEN1c3RvbVZhcmlhdGlvblNlbGVjdCB7XG5cbiAgICAgICAgY29uc3RydWN0b3IoZWxlbWVudCwgY29uZmlnKSB7XG5cbiAgICAgICAgICAgIC8vIEFzc2lnblxuICAgICAgICAgICAgdGhpcy5fZWxlbWVudCA9ICQoZWxlbWVudCk7XG4gICAgICAgICAgICB0aGlzLl9jb25maWcgID0gJC5leHRlbmQoe30sIERlZmF1bHQsIGNvbmZpZyk7XG5cbiAgICAgICAgICAgIC8vIENhbGxcbiAgICAgICAgICAgIC8vdGhpcy5hZGRJbnB1dE1hcmt1cCgpO1xuICAgICAgICAgICAgdGhpcy53cmFwcGVyQWN0aW9uKCk7XG4gICAgICAgICAgICB0aGlzLnJlc2V0RGF0YUFjdGlvbigpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVWYXJpYXRpb25WYWx1ZUFjdGlvbigpO1xuXG4gICAgICAgICAgICAkKGRvY3VtZW50KS50cmlnZ2VyKCdjdXN0b21fdmFyaWF0aW9uX3NlbGVjdCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIF9qUXVlcnlJbnRlcmZhY2UoY29uZmlnKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICBuZXcgQ3VzdG9tVmFyaWF0aW9uU2VsZWN0KHRoaXMsIGNvbmZpZylcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH1cblxuICAgICAgICB3cmFwcGVyQWN0aW9uKCkge1xuICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5maW5kKCd1bC52YXJpYWJsZS1pdGVtcy13cmFwcGVyJykuZWFjaChmdW5jdGlvbiAoaSwgZWwpIHtcblxuICAgICAgICAgICAgICAgIGxldCBzZWxlY3QgPSAkKHRoaXMpLnByZXYoJ3NlbGVjdCcpLFxuICAgICAgICAgICAgICAgICAgICBsaSAgICAgPSAkKHRoaXMpLmZpbmQoJ2xpJyk7XG5cbiAgICAgICAgICAgICAgICAkKHRoaXMpLm9uKCdjbGljaycsICdsaScsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gJCh0aGlzKS5kYXRhKCd2YWx1ZScpO1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3QudmFsKHZhbHVlKS50cmlnZ2VyKCdjaGFuZ2UnKTtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnRyaWdnZXIoJ2NsaWNrJyk7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCdmb2N1c2luJyk7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCd0b3VjaHN0YXJ0Jyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlc2V0RGF0YUFjdGlvbigpIHtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQub24oJ3Jlc2V0X2RhdGEnLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAkKHRoaXMpLmZpbmQoJ3VsLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXInKS5lYWNoKGZ1bmN0aW9uICgpIHtcblxuICAgICAgICAgICAgICAgICAgICBsZXQgbGkgPSAkKHRoaXMpLmZpbmQoJ2xpJyk7XG4gICAgICAgICAgICAgICAgICAgIGxpLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5yZW1vdmVDbGFzcygnc2VsZWN0ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucmVtb3ZlQ2xhc3MoJ2Rpc2FibGVkJyk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB1cGRhdGVWYXJpYXRpb25WYWx1ZUFjdGlvbigpIHtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQub24oJ3dvb2NvbW1lcmNlX3VwZGF0ZV92YXJpYXRpb25fdmFsdWVzJywgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgJCh0aGlzKS5maW5kKCd1bC52YXJpYWJsZS1pdGVtcy13cmFwcGVyJykuZWFjaChmdW5jdGlvbiAoKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgbGV0IHNlbGVjdGVkID0gJycsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zICA9ICQodGhpcykucHJldignc2VsZWN0JykuZmluZCgnb3B0aW9uJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50ICA9ICQodGhpcykucHJldignc2VsZWN0JykuZmluZCgnb3B0aW9uOnNlbGVjdGVkJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBlcSAgICAgICA9ICQodGhpcykucHJldignc2VsZWN0JykuZmluZCgnb3B0aW9uJykuZXEoMSksXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSAgICAgICA9ICQodGhpcykuZmluZCgnbGknKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdHMgID0gW107XG5cbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLnZhbCgpICE9PSAnJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdHMucHVzaCgkKHRoaXMpLnZhbCgpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZCA9IGN1cnJlbnQgPyBjdXJyZW50LnZhbCgpIDogZXEudmFsKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgIF8uZGVsYXkoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGkuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gJCh0aGlzKS5kYXRhKCd2YWx1ZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucmVtb3ZlQ2xhc3MoJ3NlbGVjdGVkIGRpc2FibGVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKF8uY29udGFpbnMoc2VsZWN0cywgdmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucmVtb3ZlQ2xhc3MoJ2Rpc2FibGVkJyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlID09PSBzZWxlY3RlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5hZGRDbGFzcygnc2VsZWN0ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5hZGRDbGFzcygnZGlzYWJsZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSwgMSk7XG5cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICogRGF0YSBBcGkgaW1wbGVtZW50YXRpb25cbiAgICAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgKi9cblxuICAgIC8qKlxuICAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAqIGpRdWVyeVxuICAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAqL1xuXG4gICAgJC5mblsnQ3VzdG9tVmFyaWF0aW9uU2VsZWN0J10gPSBDdXN0b21WYXJpYXRpb25TZWxlY3QuX2pRdWVyeUludGVyZmFjZTtcbiAgICAkLmZuWydDdXN0b21WYXJpYXRpb25TZWxlY3QnXS5Db25zdHJ1Y3RvciA9IEN1c3RvbVZhcmlhdGlvblNlbGVjdDtcbiAgICAkLmZuWydDdXN0b21WYXJpYXRpb25TZWxlY3QnXS5ub0NvbmZsaWN0ICA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgJC5mblsnQ3VzdG9tVmFyaWF0aW9uU2VsZWN0J10gPSAkLmZuWydDdXN0b21WYXJpYXRpb25TZWxlY3QnXTtcbiAgICAgICAgcmV0dXJuIEN1c3RvbVZhcmlhdGlvblNlbGVjdC5falF1ZXJ5SW50ZXJmYWNlXG4gICAgfVxuXG4gICAgcmV0dXJuIEN1c3RvbVZhcmlhdGlvblNlbGVjdDtcblxufSkoalF1ZXJ5KTtcblxuZXhwb3J0IGRlZmF1bHQgQ3VzdG9tVmFyaWF0aW9uU2VsZWN0XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9qcy9DdXN0b21WYXJpYXRpb25TZWxlY3QuanMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7OztBQzdEQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7OztBQ1BBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFIQTtBQU1BO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBcEJBO0FBQUE7QUFBQTtBQTRCQTtBQUNBO0FBQ0E7QUFBQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQTNDQTtBQUFBO0FBQUE7QUE4Q0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQXhEQTtBQUFBO0FBQUE7QUEyREE7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFNQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQS9GQTtBQUFBO0FBQUE7QUFzQkE7QUFDQTtBQUNBO0FBQ0E7QUF6QkE7QUFDQTtBQURBO0FBQUE7QUFDQTtBQWlHQTs7Ozs7O0FBTUE7Ozs7OztBQU1BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7Ozs7QSIsInNvdXJjZVJvb3QiOiIifQ==
assets/js/frontend.min.js CHANGED
@@ -1 +1 @@
1
- !function(e){function t(i){if(n[i])return n[i].exports;var r=n[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,i){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:i})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=5)}([,,,,,function(e,t,n){e.exports=n(6)},function(e,t,n){jQuery(function(e){Promise.resolve().then(function(){return n(7)}).then(function(){e(document).on("wc_variation_form",".variations_form",function(){e(this).CustomVariationSelect()})})})},function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),a=function(e){var t={},n=function(){function n(r,a){i(this,n),this._element=e(r),this._config=e.extend({},t,a),this.wrapperAction(),this.resetDataAction(),this.updateVariationValueAction(),e(document).trigger("custom_variation_select")}return r(n,[{key:"wrapperAction",value:function(){this._element.find("ul.variable-items-wrapper").each(function(t,n){var i=e(this).prev("select");e(this).find("li");e(this).on("click","li",function(t){t.preventDefault(),t.stopPropagation();var n=e(this).data("value");i.val(n).trigger("change"),i.trigger("click"),i.trigger("focusin"),i.trigger("touchstart")})})}},{key:"resetDataAction",value:function(){this._element.on("reset_data",function(t){e(this).find("ul.variable-items-wrapper").each(function(){e(this).find("li").each(function(){e(this).removeClass("selected"),e(this).removeClass("disabled")})})})}},{key:"updateVariationValueAction",value:function(){this._element.on("woocommerce_update_variation_values",function(t){e(this).find("ul.variable-items-wrapper").each(function(){var t="",n=e(this).prev("select").find("option"),i=e(this).prev("select").find("option:selected"),r=e(this).prev("select").find("option").eq(1),a=e(this).find("li"),o=[];n.each(function(){""!==e(this).val()&&(o.push(e(this).val()),t=i?i.val():r.val())}),_.delay(function(){a.each(function(){var n=e(this).data("value");e(this).removeClass("selected disabled"),_.contains(o,n)?(e(this).removeClass("disabled"),n===t&&e(this).addClass("selected")):e(this).addClass("disabled")})},1)})})}}],[{key:"_jQueryInterface",value:function(e){return this.each(function(){new n(this,e)})}}]),n}();return e.fn.CustomVariationSelect=n._jQueryInterface,e.fn.CustomVariationSelect.Constructor=n,e.fn.CustomVariationSelect.noConflict=function(){return e.fn.CustomVariationSelect=e.fn.CustomVariationSelect,n._jQueryInterface},n}(jQuery);t.default=a}]);
1
+ !function(e){function t(i){if(n[i])return n[i].exports;var r=n[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,i){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:i})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=6)}({6:function(e,t,n){e.exports=n(7)},7:function(e,t,n){jQuery(function(e){Promise.resolve().then(function(){return n(8)}).then(function(){e(document).on("wc_variation_form",".variations_form",function(){e(this).CustomVariationSelect()})})})},8:function(e,t,n){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}(),a=function(e){var t={},n=function(){function n(r,a){i(this,n),this._element=e(r),this._config=e.extend({},t,a),this.wrapperAction(),this.resetDataAction(),this.updateVariationValueAction(),e(document).trigger("custom_variation_select")}return r(n,[{key:"wrapperAction",value:function(){this._element.find("ul.variable-items-wrapper").each(function(t,n){var i=e(this).prev("select");e(this).find("li");e(this).on("click","li",function(t){t.preventDefault(),t.stopPropagation();var n=e(this).data("value");i.val(n).trigger("change"),i.trigger("click"),i.trigger("focusin"),i.trigger("touchstart")})})}},{key:"resetDataAction",value:function(){this._element.on("reset_data",function(t){e(this).find("ul.variable-items-wrapper").each(function(){e(this).find("li").each(function(){e(this).removeClass("selected"),e(this).removeClass("disabled")})})})}},{key:"updateVariationValueAction",value:function(){this._element.on("woocommerce_update_variation_values",function(t){e(this).find("ul.variable-items-wrapper").each(function(){var t="",n=e(this).prev("select").find("option"),i=e(this).prev("select").find("option:selected"),r=e(this).prev("select").find("option").eq(1),a=e(this).find("li"),o=[];n.each(function(){""!==e(this).val()&&(o.push(e(this).val()),t=i?i.val():r.val())}),_.delay(function(){a.each(function(){var n=e(this).data("value");e(this).removeClass("selected disabled"),_.contains(o,n)?(e(this).removeClass("disabled"),n===t&&e(this).addClass("selected")):e(this).addClass("disabled")})},1)})})}}],[{key:"_jQueryInterface",value:function(e){return this.each(function(){new n(this,e)})}}]),n}();return e.fn.CustomVariationSelect=n._jQueryInterface,e.fn.CustomVariationSelect.Constructor=n,e.fn.CustomVariationSelect.noConflict=function(){return e.fn.CustomVariationSelect=e.fn.CustomVariationSelect,n._jQueryInterface},n}(jQuery);t.default=a}});
includes/class-wvs-settings-api.php ADDED
@@ -0,0 +1,466 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ defined( 'ABSPATH' ) or die( 'Keep Quit' );
4
+
5
+ // 1. add settings: priority 1
6
+ // 2. initial class: priority 2
7
+ // 3. store defaults: priority 3
8
+ // 4. get defaults / do whatever you want to do
9
+
10
+ if ( ! class_exists( 'WVS_Settings_API' ) ):
11
+
12
+ class WVS_Settings_API {
13
+
14
+ private $setting_name = 'woo_variation_swatches';
15
+ private $slug;
16
+ private $plugin_class;
17
+ private $defaults = array();
18
+
19
+ private $fields = array();
20
+
21
+ public function __construct() {
22
+
23
+ $this->plugin_class = woo_variation_swatches();
24
+
25
+ $this->settings_name = apply_filters( 'wvs_settings_name', $this->setting_name );
26
+
27
+ $this->slug = sprintf( '%s-settings', sanitize_key( $this->plugin_class->dirname() ) );
28
+
29
+ $this->fields = apply_filters( 'wvs_settings', $this->fields );
30
+
31
+ add_action( 'admin_menu', array( $this, 'add_menu' ) );
32
+
33
+ add_action( 'init', array( $this, 'set_defaults' ), 8 );
34
+
35
+ add_action( 'admin_init', array( $this, 'settings_init' ), 90 );
36
+
37
+ add_filter( 'plugin_action_links_' . $this->plugin_class->basename(), array( $this, 'plugin_action_links' ) );
38
+
39
+ add_action( 'wp_before_admin_bar_render', array( $this, 'add_admin_bar' ), 999 );
40
+
41
+ add_action( 'admin_footer', array( $this, 'admin_inline_js' ) );
42
+
43
+ do_action( 'wvs_setting_api_init', $this );
44
+ }
45
+
46
+ public function admin_inline_js() {
47
+ ?>
48
+ <script type="text/javascript">
49
+ jQuery(function ($) {
50
+ $('#<?php echo $this->slug ?>-wrap').on('click', '.nav-tab', function (event) {
51
+ event.preventDefault();
52
+ var target = $(this).data('target');
53
+ $(this).addClass('nav-tab-active').siblings().removeClass('nav-tab-active');
54
+ $('#' + target).show().siblings().hide();
55
+ });
56
+ });
57
+ </script>
58
+ <?php
59
+ }
60
+
61
+ public function add_menu() {
62
+
63
+ if ( empty( $this->fields ) ) {
64
+ return '';
65
+ }
66
+
67
+ $page_title = esc_html__( 'Woo Variation Swatches Settings', 'woo-variation-swatches' );
68
+ $menu_title = esc_html__( 'Swatches Settings', 'woo-variation-swatches' );
69
+ add_menu_page( $page_title, $menu_title, 'edit_theme_options', $this->slug, array( $this, 'settings_form' ), 'dashicons-admin-generic', 31 );
70
+ }
71
+
72
+ public function add_admin_bar() {
73
+
74
+ if ( empty( $this->fields ) ) {
75
+ return '';
76
+ }
77
+
78
+ global $wp_admin_bar;
79
+
80
+ $url = admin_url( sprintf( 'admin.php?page=%s', $this->slug ) );
81
+ $menu_title = esc_html__( 'Swatches Settings', 'woo-variation-swatches' );
82
+
83
+ $args = array(
84
+ 'id' => $this->settings_name,
85
+ 'title' => $menu_title,
86
+ 'href' => $url,
87
+ 'meta' => array(
88
+ 'class' => sprintf( '%s-admin-toolbar', $this->slug )
89
+ )
90
+ );
91
+ $wp_admin_bar->add_menu( $args );
92
+ }
93
+
94
+ public function plugin_action_links( $links ) {
95
+
96
+ if ( empty( $this->fields ) ) {
97
+ return $links;
98
+ }
99
+
100
+ $url = admin_url( sprintf( 'admin.php?page=%s', $this->slug ) );
101
+ $plugin_links = array( sprintf( '<a href="%s">%s</a>', esc_url( $url ), esc_html__( 'Settings', 'woo-variation-swatches' ) ) );
102
+
103
+ return array_merge( $plugin_links, $links );
104
+ }
105
+
106
+ private function set_default( $key, $type, $value ) {
107
+ $this->defaults[ $key ] = array( 'type' => $type, 'value' => $value );
108
+ }
109
+
110
+ private function get_default( $key ) {
111
+ return $this->defaults[ $key ];
112
+ }
113
+
114
+ public function get_defaults() {
115
+ return $this->defaults;
116
+ }
117
+
118
+ public function set_defaults() {
119
+ foreach ( $this->fields as $tab_key => $tab ) {
120
+ $tab = apply_filters( 'wvs_settings_tab', $tab );
121
+
122
+ foreach ( $tab[ 'sections' ] as $section_key => $section ) {
123
+
124
+ $section = apply_filters( 'wvs_settings_section', $section, $tab );
125
+
126
+ $section[ 'id' ] = ! isset( $section[ 'id' ] ) ? $tab[ 'id' ] . '-section' : $section[ 'id' ];
127
+
128
+ $section[ 'fields' ] = apply_filters( 'wvs_settings_fields', $section[ 'fields' ], $section, $tab );
129
+
130
+ foreach ( $section[ 'fields' ] as $field ) {
131
+ $field[ 'default' ] = isset( $field[ 'default' ] ) ? $field[ 'default' ] : '';
132
+ $this->set_default( $field[ 'id' ], $field[ 'type' ], $field[ 'default' ] );
133
+ }
134
+ }
135
+ }
136
+ }
137
+
138
+ public function get_option( $option ) {
139
+ $default = $this->get_default( $option );
140
+ $options = get_option( $this->settings_name, wp_list_pluck( $this->get_defaults(), 'value' ) );
141
+ if ( isset( $options[ $option ] ) ) {
142
+ if ( $default[ 'type' ] === 'checkbox' ) {
143
+ return apply_filters( 'wvs_settings_get_option', TRUE, $option, $options, $default );
144
+ } else {
145
+ return apply_filters( 'wvs_settings_get_option', $options[ $option ], $option, $options, $default );
146
+ }
147
+ } else {
148
+ if ( $default[ 'type' ] === 'checkbox' ) {
149
+ return apply_filters( 'wvs_settings_get_option', FALSE, $option, $options, $default );
150
+ } else {
151
+ return apply_filters( 'wvs_settings_get_option', $default[ 'value' ], $option, $options, $default );
152
+ }
153
+ }
154
+ }
155
+
156
+ public function update_option( $key, $value ) {
157
+ $options = get_option( $this->settings_name );
158
+ $options[ $key ] = $value;
159
+ update_option( $this->settings_name, $options );
160
+ }
161
+
162
+ public function settings_init() {
163
+
164
+ register_setting( $this->settings_name, $this->settings_name );
165
+
166
+ foreach ( $this->fields as $tab_key => $tab ) {
167
+
168
+ $tab = apply_filters( 'wvs_settings_tab', $tab );
169
+
170
+ foreach ( $tab[ 'sections' ] as $section_key => $section ) {
171
+
172
+ $section = apply_filters( 'wvs_settings_section', $section, $tab );
173
+
174
+ $section[ 'id' ] = ! isset( $section[ 'id' ] ) ? $tab[ 'id' ] . '-section' : $section[ 'id' ];
175
+
176
+ // Adding Settings section id
177
+ $this->fields[ $tab_key ][ 'sections' ][ $section_key ][ 'id' ] = $section[ 'id' ];
178
+
179
+ add_settings_section( $tab[ 'id' ] . $section[ 'id' ], $section[ 'title' ], function () use ( $section ) {
180
+ if ( isset( $section[ 'desc' ] ) && ! empty( $section[ 'desc' ] ) ) {
181
+ echo '<div class="inside">' . $section[ 'desc' ] . '</div>';
182
+ }
183
+ }, $tab[ 'id' ] . $section[ 'id' ] );
184
+
185
+ $section[ 'fields' ] = apply_filters( 'wvs_settings_fields', $section[ 'fields' ], $section, $tab );
186
+
187
+ foreach ( $section[ 'fields' ] as $field ) {
188
+
189
+ //$field[ 'label_for' ] = $this->settings_name . '[' . $field[ 'id' ] . ']';
190
+ $field[ 'label_for' ] = $field[ 'id' ] . '-field';
191
+ $field[ 'default' ] = isset( $field[ 'default' ] ) ? $field[ 'default' ] : '';
192
+
193
+ // $this->set_default( $field[ 'id' ], $field[ 'default' ] );
194
+
195
+ if ( $field[ 'type' ] == 'checkbox' || $field[ 'type' ] == 'radio' ) {
196
+ unset( $field[ 'label_for' ] );
197
+ }
198
+
199
+ add_settings_field( $this->settings_name . '[' . $field[ 'id' ] . ']', $field[ 'title' ], array( $this, 'field_callback' ), $tab[ 'id' ] . $section[ 'id' ], $tab[ 'id' ] . $section[ 'id' ], $field );
200
+ }
201
+ }
202
+ }
203
+ }
204
+
205
+ public function field_callback( $field ) {
206
+
207
+ switch ( $field[ 'type' ] ) {
208
+ case 'radio':
209
+ $this->radio_field_callback( $field );
210
+ break;
211
+
212
+ case 'checkbox':
213
+ $this->checkbox_field_callback( $field );
214
+ break;
215
+
216
+ case 'select':
217
+ $this->select_field_callback( $field );
218
+ break;
219
+
220
+ case 'number':
221
+ $this->number_field_callback( $field );
222
+ break;
223
+
224
+ case 'post_select':
225
+ $this->post_select_field_callback( $field );
226
+ break;
227
+
228
+ default:
229
+ $this->text_field_callback( $field );
230
+ break;
231
+ }
232
+
233
+ do_action( 'wvs_settings_field_callback', $field );
234
+ }
235
+
236
+ public function checkbox_field_callback( $args ) {
237
+ $value = (bool) $this->get_option( $args[ 'id' ] );
238
+ $size = isset( $args[ 'size' ] ) && ! is_null( $args[ 'size' ] ) ? $args[ 'size' ] : 'regular';
239
+ $html = sprintf( '<fieldset><label><input type="checkbox" id="%2$s-field" name="%4$s[%2$s]" value="%3$s" %5$s/> %6$s</label></fieldset>', $size, $args[ 'id' ], $value, $this->settings_name, checked( $value, TRUE, FALSE ), esc_attr( $args[ 'desc' ] ) );
240
+
241
+ echo $html;
242
+ }
243
+
244
+ public function radio_field_callback( $args ) {
245
+ $size = isset( $args[ 'size' ] ) && ! is_null( $args[ 'size' ] ) ? $args[ 'size' ] : 'regular';
246
+ $options = apply_filters( "wvs_settings_{$args[ 'id' ]}_radio_options", $args[ 'options' ] );
247
+ $value = esc_attr( $this->get_option( $args[ 'id' ] ) );
248
+ $html = '<fieldset>';
249
+ $html .= implode( '<br />', array_map( function ( $key, $option ) use ( $size, $args, $value ) {
250
+ return sprintf( '<label><input type="radio" id="%2$s-field" name="%4$s[%2$s]" value="%3$s" %5$s/> %6$s</label>', $size, $args[ 'id' ], $key, $this->settings_name, checked( $value, $key, FALSE ), $option );
251
+ }, array_keys( $options ), $options ) );
252
+ $html .= '</fieldset>';
253
+
254
+ echo $html;
255
+ }
256
+
257
+ public function select_field_callback( $args ) {
258
+ $options = apply_filters( "wvs_settings_{$args[ 'id' ]}_select_options", $args[ 'options' ] );
259
+ $value = esc_attr( $this->get_option( $args[ 'id' ] ) );
260
+ $options = array_map( function ( $key, $option ) use ( $value ) {
261
+ return "<option value='{$key}'" . selected( $key, $value, FALSE ) . ">{$option}</option>";
262
+ }, array_keys( $options ), $options );
263
+ $size = isset( $args[ 'size' ] ) && ! is_null( $args[ 'size' ] ) ? $args[ 'size' ] : 'regular';
264
+ $html = sprintf( '<select class="%1$s-text" id="%2$s-field" name="%4$s[%2$s]">%3$s</select>', $size, $args[ 'id' ], implode( '', $options ), $this->settings_name );
265
+ $html .= $this->get_field_description( $args );
266
+
267
+ echo $html;
268
+ }
269
+
270
+ public function get_field_description( $args ) {
271
+ if ( ! empty( $args[ 'desc' ] ) ) {
272
+ $desc = sprintf( '<p class="description">%s</p>', $args[ 'desc' ] );
273
+ } else {
274
+ $desc = '';
275
+ }
276
+
277
+ return $desc;
278
+ }
279
+
280
+ public function post_select_field_callback( $args ) {
281
+
282
+ $options = apply_filters( "wvs_settings_{$args[ 'id' ]}_post_select_options", $args[ 'options' ] );
283
+
284
+ $value = esc_attr( $this->get_option( $args[ 'id' ] ) );
285
+
286
+ $options = array_map( function ( $option ) use ( $value ) {
287
+ return "<option value='{$option->ID}'" . selected( $option->ID, $value, FALSE ) . ">$option->post_title</option>";
288
+ }, $options );
289
+
290
+ $size = isset( $args[ 'size' ] ) && ! is_null( $args[ 'size' ] ) ? $args[ 'size' ] : 'regular';
291
+ $html = sprintf( '<select class="%1$s-text" id="%2$s-field" name="%4$s[%2$s]">%3$s</select>', $size, $args[ 'id' ], implode( '', $options ), $this->settings_name );
292
+ $html .= $this->get_field_description( $args );
293
+ echo $html;
294
+ }
295
+
296
+ public function text_field_callback( $args ) {
297
+ $value = esc_attr( $this->get_option( $args[ 'id' ] ) );
298
+ $size = isset( $args[ 'size' ] ) && ! is_null( $args[ 'size' ] ) ? $args[ 'size' ] : 'regular';
299
+ $html = sprintf( '<input type="text" class="%1$s-text" id="%2$s-field" name="%4$s[%2$s]" value="%3$s"/>', $size, $args[ 'id' ], $value, $this->settings_name );
300
+ $html .= $this->get_field_description( $args );
301
+
302
+ echo $html;
303
+ }
304
+
305
+ public function number_field_callback( $args ) {
306
+ $value = esc_attr( $this->get_option( $args[ 'id' ] ) );
307
+ $size = isset( $args[ 'size' ] ) && ! is_null( $args[ 'size' ] ) ? $args[ 'size' ] : 'small';
308
+
309
+ $min = isset( $args[ 'min' ] ) && ! is_null( $args[ 'min' ] ) ? 'min="' . $args[ 'min' ] . '"' : '';
310
+ $max = isset( $args[ 'max' ] ) && ! is_null( $args[ 'max' ] ) ? 'max="' . $args[ 'max' ] . '"' : '';
311
+ $step = isset( $args[ 'step' ] ) && ! is_null( $args[ 'step' ] ) ? 'step="' . $args[ 'step' ] . '"' : '';
312
+ $suffix = isset( $args[ 'suffix' ] ) && ! is_null( $args[ 'suffix' ] ) ? ' <span>' . $args[ 'suffix' ] . '</span>' : '';
313
+
314
+ $html = sprintf( '<input type="number" class="%1$s-text" id="%2$s-field" name="%4$s[%2$s]" value="%3$s" %5$s %6$s %7$s /> %8$s', $size, $args[ 'id' ], $value, $this->settings_name, $min, $max, $step, $suffix );
315
+ $html .= $this->get_field_description( $args );
316
+
317
+ echo $html;
318
+ }
319
+
320
+ public function settings_form() {
321
+ if ( ! current_user_can( 'manage_options' ) ) {
322
+ wp_die( __( 'You do not have sufficient permissions to access this page.' ) );
323
+ }
324
+ ?>
325
+ <div id="<?php echo $this->slug ?>-wrap" class="wrap settings-wrap">
326
+
327
+ <h1><?php echo get_admin_page_title() ?></h1>
328
+
329
+ <form method="post" action="<?php echo esc_url( admin_url( 'options.php' ) ) ?>" enctype="multipart/form-data">
330
+ <?php
331
+ settings_errors();
332
+ settings_fields( $this->settings_name );
333
+ ?>
334
+
335
+ <?php $this->options_tabs(); ?>
336
+
337
+ <div id="settings-tabs">
338
+ <?php foreach ( $this->fields as $tab ): ?>
339
+
340
+ <div id="<?php echo $tab[ 'id' ] ?>"
341
+ class="settings-tab wvs-setting-tab"
342
+ style="<?php echo( ! isset( $tab[ 'active' ] ) ? 'display: none' : '' ) ?>">
343
+ <?php foreach ( $tab[ 'sections' ] as $section ):
344
+ $this->do_settings_sections( $tab[ 'id' ] . $section[ 'id' ] );
345
+ endforeach; ?>
346
+ </div>
347
+
348
+ <?php endforeach; ?>
349
+ </div>
350
+ <?php
351
+ submit_button();
352
+ ?>
353
+ </form>
354
+ </div>
355
+ <?php
356
+ }
357
+
358
+ public function options_tabs() {
359
+ ?>
360
+ <h2 class="nav-tab-wrapper wp-clearfix">
361
+ <?php foreach ( $this->fields as $tabs ): ?>
362
+ <a data-target="<?php echo $tabs[ 'id' ] ?>"
363
+ class="wvs-setting-nav-tab nav-tab <?php echo ( isset( $tabs[ 'active' ] ) and $tabs[ 'active' ] ) ? 'nav-tab-active' : '' ?> "
364
+ href="#<?php echo $tabs[ 'id' ] ?>"><?php echo $tabs[ 'title' ] ?></a>
365
+ <?php endforeach; ?>
366
+ </h2>
367
+ <?php
368
+ }
369
+
370
+ private function do_settings_sections( $page ) {
371
+ global $wp_settings_sections, $wp_settings_fields;
372
+
373
+ if ( ! isset( $wp_settings_sections[ $page ] ) ) {
374
+ return;
375
+ }
376
+
377
+ foreach ( (array) $wp_settings_sections[ $page ] as $section ) {
378
+ if ( $section[ 'title' ] ) {
379
+ echo "<h2>{$section['title']}</h2>\n";
380
+ }
381
+
382
+ if ( $section[ 'callback' ] ) {
383
+ call_user_func( $section[ 'callback' ], $section );
384
+ }
385
+
386
+ if ( ! isset( $wp_settings_fields ) || ! isset( $wp_settings_fields[ $page ] ) || ! isset( $wp_settings_fields[ $page ][ $section[ 'id' ] ] ) ) {
387
+ continue;
388
+ }
389
+
390
+ echo '<table class="form-table">';
391
+ $this->do_settings_fields( $page, $section[ 'id' ] );
392
+ echo '</table>';
393
+ }
394
+ }
395
+
396
+ public function array2html_attr( $attributes, $do_not_add = array() ) {
397
+
398
+ $attributes = wp_parse_args( $attributes, array() );
399
+
400
+ if ( ! empty( $do_not_add ) and is_array( $do_not_add ) ) {
401
+ foreach ( $do_not_add as $att_name ) {
402
+ unset( $attributes[ $att_name ] );
403
+ }
404
+ }
405
+
406
+
407
+ $attributes_array = array();
408
+
409
+ foreach ( $attributes as $key => $value ) {
410
+
411
+ if ( is_bool( $attributes[ $key ] ) and $attributes[ $key ] === TRUE ) {
412
+ return $attributes[ $key ] ? $key : '';
413
+ } elseif ( is_bool( $attributes[ $key ] ) and $attributes[ $key ] === FALSE ) {
414
+ $attributes_array[] = '';
415
+ } else {
416
+ $attributes_array[] = $key . '="' . $value . '"';
417
+ }
418
+ }
419
+
420
+ return implode( ' ', $attributes_array );
421
+ }
422
+
423
+ private function build_dependency( $require_array ) {
424
+ $b_array = array();
425
+ foreach ( $require_array as $k => $v ) {
426
+ $b_array[ '#' . $k . '-field' ] = $v;
427
+ }
428
+
429
+ return 'data-depends="[' . esc_attr( wp_json_encode( $b_array ) ) . ']"';
430
+ }
431
+
432
+ private function do_settings_fields( $page, $section ) {
433
+ global $wp_settings_fields;
434
+
435
+ if ( ! isset( $wp_settings_fields[ $page ][ $section ] ) ) {
436
+ return;
437
+ }
438
+
439
+ foreach ( (array) $wp_settings_fields[ $page ][ $section ] as $field ) {
440
+ /*$class = '';
441
+
442
+ if ( ! empty( $field[ 'args' ][ 'class' ] ) ) {
443
+ $class = ' class="' . esc_attr( $field[ 'args' ][ 'class' ] ) . '"';
444
+ }*/
445
+
446
+ $custom_attributes = $this->array2html_attr( isset( $field[ 'args' ][ 'attributes' ] ) ? $field[ 'args' ][ 'attributes' ] : array() );
447
+
448
+ $wrapper_id = ! empty( $field[ 'args' ][ 'id' ] ) ? esc_attr( $field[ 'args' ][ 'id' ] ) . '-wrapper' : '';
449
+ $dependency = ! empty( $field[ 'args' ][ 'require' ] ) ? $this->build_dependency( $field[ 'args' ][ 'require' ] ) : '';
450
+
451
+ printf( '<tr id="%s" %s %s>', $wrapper_id, $custom_attributes, $dependency );
452
+
453
+ if ( ! empty( $field[ 'args' ][ 'label_for' ] ) ) {
454
+ echo '<th scope="row"><label for="' . esc_attr( $field[ 'args' ][ 'label_for' ] ) . '">' . $field[ 'title' ] . '</label></th>';
455
+ } else {
456
+ echo '<th scope="row">' . $field[ 'title' ] . '</th>';
457
+ }
458
+
459
+ echo '<td>';
460
+ call_user_func( $field[ 'callback' ], $field[ 'args' ] );
461
+ echo '</td>';
462
+ echo '</tr>';
463
+ }
464
+ }
465
+ }
466
+ endif;
includes/class-wvs-term-meta.php CHANGED
@@ -190,8 +190,8 @@
190
  </div>
191
  <div class="button-wrapper">
192
  <input type="hidden" id="<?php echo $field[ 'id' ] ?>" name="<?php echo $field[ 'id' ] ?>" value="<?php echo esc_attr( $field[ 'value' ] ) ?>"/>
193
- <button type="button" class="wvs_upload_image_button button button-primary button-small"><?php esc_html_e( 'Upload / Add image', 'hippo-theme-plugin' ); ?></button>
194
- <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', 'hippo-theme-plugin' ); ?></button>
195
  </div>
196
  </div>
197
  <?php
190
  </div>
191
  <div class="button-wrapper">
192
  <input type="hidden" id="<?php echo $field[ 'id' ] ?>" name="<?php echo $field[ 'id' ] ?>" value="<?php echo esc_attr( $field[ 'value' ] ) ?>"/>
193
+ <button type="button" class="wvs_upload_image_button button button-primary button-small"><?php esc_html_e( 'Upload / Add image', 'woo-variation-swatches' ); ?></button>
194
+ <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>
195
  </div>
196
  </div>
197
  <?php
includes/functions.php CHANGED
@@ -17,6 +17,49 @@
17
 
18
  endif;
19
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
20
  //-------------------------------------------------------------------------------
21
  // Add WooCommerce taxonomy Meta
22
  //-------------------------------------------------------------------------------
@@ -101,7 +144,6 @@
101
  //-------------------------------------------------------------------------------
102
 
103
  if ( ! function_exists( 'wvs_color_variation_attribute_options' ) ) :
104
-
105
  function wvs_color_variation_attribute_options( $args = array() ) {
106
 
107
  $args = wp_parse_args( $args, array(
@@ -160,7 +202,7 @@
160
  $get_term_meta = sanitize_hex_color( get_term_meta( $term->term_id, 'product_attribute_color', TRUE ) );
161
  $selected_class = ( sanitize_title( $args[ 'selected' ] ) == $term->slug ) ? 'selected' : '';
162
  ?>
163
- <li data-toggle="tooltip" data-placement="top" class="variable-item color-variable-item color-variable-item-<?php echo $term->slug ?> <?php echo $selected_class ?>" title="<?php echo esc_html( $term->name ) ?>" data-value="<?php echo esc_attr( $term->slug ) ?>"><span style="background-color:<?php echo esc_attr( $get_term_meta ) ?>;"></span></li>
164
  <?php
165
  }
166
  }
@@ -168,7 +210,6 @@
168
  }
169
  echo '</ul>';
170
  }
171
-
172
  endif;
173
 
174
  //-------------------------------------------------------------------------------
@@ -176,7 +217,6 @@
176
  //-------------------------------------------------------------------------------
177
 
178
  if ( ! function_exists( 'wvs_image_variation_attribute_options' ) ) :
179
-
180
  function wvs_image_variation_attribute_options( $args = array() ) {
181
 
182
  $args = wp_parse_args( $args, array(
@@ -225,7 +265,7 @@
225
 
226
  echo '</select>';
227
 
228
- echo '<ul class="list-inline variable-items-wrapper image-variable-wrapper">';
229
  if ( ! empty( $options ) ) {
230
  if ( $product && taxonomy_exists( $attribute ) ) {
231
  $terms = wc_get_product_terms( $product->get_id(), $attribute, array( 'fields' => 'all' ) );
@@ -236,7 +276,8 @@
236
  $image = wp_get_attachment_image_url( $attachment_id );
237
  $selected_class = ( sanitize_title( $args[ 'selected' ] ) == $term->slug ) ? 'selected' : '';
238
  ?>
239
- <li data-toggle="tooltip" data-placement="top" class="variable-item image-variable-item image-variable-item-<?php echo $term->slug ?> <?php echo $selected_class ?>" title="<?php echo esc_html( $term->name ) ?>" data-value="<?php echo esc_attr( $term->slug ) ?>"><img alt="<?php echo esc_html( $term->name ) ?>" src="<?php echo esc_url( $image ) ?>"></li>
 
240
  <?php
241
  }
242
  }
@@ -251,7 +292,6 @@
251
  //-------------------------------------------------------------------------------
252
 
253
  if ( ! function_exists( 'wvs_button_variation_attribute_options' ) ) :
254
-
255
  function wvs_button_variation_attribute_options( $args = array() ) {
256
 
257
  $args = wp_parse_args( $args, array(
@@ -309,7 +349,7 @@
309
  if ( in_array( $term->slug, $options ) ) {
310
  $selected_class = ( sanitize_title( $args[ 'selected' ] ) == $term->slug ) ? 'selected' : '';
311
  ?>
312
- <li data-toggle="tooltip" data-placement="top" class="variable-item button-variable-item image-variable-item-<?php echo $term->slug ?> <?php echo $selected_class ?>" title="<?php echo esc_html( $term->name ) ?>" data-value="<?php echo esc_attr( $term->slug ) ?>"><span><?php echo esc_html( $term->name ) ?></span></li>
313
  <?php
314
  }
315
  }
17
 
18
  endif;
19
 
20
+ //-------------------------------------------------------------------------------
21
+ // Add settings
22
+ //-------------------------------------------------------------------------------
23
+
24
+ if ( ! function_exists( 'wvs_settings' ) ):
25
+ function wvs_settings() {
26
+ woo_variation_swatches()->add_setting( 'general', esc_html__( 'General', 'woo-variation-swatches' ), array(
27
+ array(
28
+ 'title' => esc_html__( 'Display Section', 'woo-variation-swatches' ),
29
+ 'desc' => esc_html__( 'Simply change some visual styles', 'woo-variation-swatches' ),
30
+ 'fields' => array(
31
+ array(
32
+ 'id' => 'tooltip',
33
+ 'type' => 'checkbox',
34
+ 'title' => esc_html__( 'Tooltip', 'woo-variation-swatches' ),
35
+ 'desc' => esc_html__( 'Show / Hide tooltip on each product attribute.', 'woo-variation-swatches' ),
36
+ 'default' => TRUE
37
+ ),
38
+ array(
39
+ 'id' => 'style',
40
+ 'type' => 'radio',
41
+ 'title' => esc_html__( 'Shape style', 'woo-variation-swatches' ),
42
+ 'desc' => esc_html__( 'Attribute Shape Style', 'woo-variation-swatches' ),
43
+ 'options' => array(
44
+ 'rounded' => esc_html__( 'Rounded Shape', 'woo-variation-swatches' ),
45
+ 'squared' => esc_html__( 'Squared Shape', 'woo-variation-swatches' )
46
+ ),
47
+ 'default' => 'rounded'
48
+ ),
49
+ array(
50
+ 'id' => 'stylesheet',
51
+ 'type' => 'checkbox',
52
+ 'title' => esc_html__( 'Stylesheet', 'woo-variation-swatches' ),
53
+ 'desc' => esc_html__( 'Enable / Disable plugin default Stylesheet', 'woo-variation-swatches' ),
54
+ 'default' => TRUE
55
+ )
56
+ )
57
+ )
58
+ ), TRUE );
59
+ }
60
+
61
+ endif;
62
+
63
  //-------------------------------------------------------------------------------
64
  // Add WooCommerce taxonomy Meta
65
  //-------------------------------------------------------------------------------
144
  //-------------------------------------------------------------------------------
145
 
146
  if ( ! function_exists( 'wvs_color_variation_attribute_options' ) ) :
 
147
  function wvs_color_variation_attribute_options( $args = array() ) {
148
 
149
  $args = wp_parse_args( $args, array(
202
  $get_term_meta = sanitize_hex_color( get_term_meta( $term->term_id, 'product_attribute_color', TRUE ) );
203
  $selected_class = ( sanitize_title( $args[ 'selected' ] ) == $term->slug ) ? 'selected' : '';
204
  ?>
205
+ <li data-toggle="tooltip" data-tooltip="<?php echo esc_html( $term->name ) ?>" data-placement="top" class="variable-item color-variable-item color-variable-item-<?php echo $term->slug ?> <?php echo $selected_class ?> <?php echo woo_variation_swatches()->get_option( 'style' ) ?>-style" title="<?php echo esc_html( $term->name ) ?>" data-value="<?php echo esc_attr( $term->slug ) ?>"><span style="background-color:<?php echo esc_attr( $get_term_meta ) ?>;"></span></li>
206
  <?php
207
  }
208
  }
210
  }
211
  echo '</ul>';
212
  }
 
213
  endif;
214
 
215
  //-------------------------------------------------------------------------------
217
  //-------------------------------------------------------------------------------
218
 
219
  if ( ! function_exists( 'wvs_image_variation_attribute_options' ) ) :
 
220
  function wvs_image_variation_attribute_options( $args = array() ) {
221
 
222
  $args = wp_parse_args( $args, array(
265
 
266
  echo '</select>';
267
 
268
+ echo '<ul class="list-inline variable-items-wrapper image-variable-wrapper ">';
269
  if ( ! empty( $options ) ) {
270
  if ( $product && taxonomy_exists( $attribute ) ) {
271
  $terms = wc_get_product_terms( $product->get_id(), $attribute, array( 'fields' => 'all' ) );
276
  $image = wp_get_attachment_image_url( $attachment_id );
277
  $selected_class = ( sanitize_title( $args[ 'selected' ] ) == $term->slug ) ? 'selected' : '';
278
  ?>
279
+ <li data-toggle="tooltip" data-tooltip="<?php echo esc_html( $term->name ) ?>" data-placement="top" class="variable-item image-variable-item image-variable-item-<?php echo $term->slug ?> <?php echo $selected_class ?> <?php echo woo_variation_swatches()->get_option( 'style' ) ?>-style" title="<?php echo esc_html( $term->name ) ?>" data-value="<?php echo esc_attr( $term->slug ) ?>"><img alt="<?php echo esc_html( $term->name ) ?>" src="<?php echo esc_url( $image ) ?>">
280
+ </li>
281
  <?php
282
  }
283
  }
292
  //-------------------------------------------------------------------------------
293
 
294
  if ( ! function_exists( 'wvs_button_variation_attribute_options' ) ) :
 
295
  function wvs_button_variation_attribute_options( $args = array() ) {
296
 
297
  $args = wp_parse_args( $args, array(
349
  if ( in_array( $term->slug, $options ) ) {
350
  $selected_class = ( sanitize_title( $args[ 'selected' ] ) == $term->slug ) ? 'selected' : '';
351
  ?>
352
+ <li data-toggle="tooltip" data-tooltip="<?php echo esc_html( $term->name ) ?>" data-placement="top" class="variable-item button-variable-item image-variable-item-<?php echo $term->slug ?> <?php echo $selected_class ?> <?php echo woo_variation_swatches()->get_option( 'style' ) ?>-style" title="<?php echo esc_html( $term->name ) ?>" data-value="<?php echo esc_attr( $term->slug ) ?>"><span><?php echo esc_html( $term->name ) ?></span></li>
353
  <?php
354
  }
355
  }
includes/hooks.php CHANGED
@@ -3,9 +3,10 @@
3
 
4
  add_filter( 'product_attributes_type_selector', 'wvs_product_attributes_types' );
5
 
 
 
6
  add_action( 'admin_init', 'wvs_add_product_taxonomy_meta' );
7
 
8
  add_action( 'woocommerce_product_option_terms', 'wvs_product_option_terms', 10, 2 );
9
 
10
- add_filter( 'woocommerce_dropdown_variation_attribute_options_html', 'wvs_variation_attribute_options_html', 200, 2 );
11
-
3
 
4
  add_filter( 'product_attributes_type_selector', 'wvs_product_attributes_types' );
5
 
6
+ add_action( 'init', 'wvs_settings', 2 );
7
+
8
  add_action( 'admin_init', 'wvs_add_product_taxonomy_meta' );
9
 
10
  add_action( 'woocommerce_product_option_terms', 'wvs_product_option_terms', 10, 2 );
11
 
12
+ add_filter( 'woocommerce_dropdown_variation_attribute_options_html', 'wvs_variation_attribute_options_html', 200, 2 );
 
languages/woo-variation-swatches.pot CHANGED
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2017 Woo Variation Swatches
2
  # This file is distributed under the same license as the Woo Variation Swatches package.
3
  msgid ""
4
  msgstr ""
@@ -16,42 +16,50 @@ msgstr ""
16
  "X-Poedit-SourceCharset: UTF-8\n"
17
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
18
 
19
- #: ../woo-variation-swatches.php:105
20
  msgid "Choose an Image"
21
  msgstr ""
22
 
23
- #: ../woo-variation-swatches.php:106
24
  msgid "Use Image"
25
  msgstr ""
26
 
27
- #: ../woo-variation-swatches.php:107
28
  msgid "Add Media"
29
  msgstr ""
30
 
31
- #: ../woo-variation-swatches.php:152
32
  msgid "View Documentation"
33
  msgstr ""
34
 
35
- #: ../woo-variation-swatches.php:152
36
  msgid "Documentation"
37
  msgstr ""
38
 
39
- #: ../woo-variation-swatches.php:153, ../woo-variation-swatches.php:153
40
  msgid "Support"
41
  msgstr ""
42
 
43
- #: ../woo-variation-swatches.php:184
 
 
 
 
44
  msgid "Please check PHP version requirement."
45
  msgstr ""
46
 
47
- #: ../woo-variation-swatches.php:186
48
  msgid "It's required to use latest version of PHP to use <strong>Woo Variation Swatches</strong>."
49
  msgstr ""
50
 
51
- #: ../woo-variation-swatches.php:196
52
  msgid "WooCommerce"
53
  msgstr ""
54
 
55
- #: ../woo-variation-swatches.php:198
56
  msgid "<strong>Woo Variation Switcher</strong> is an add-on of "
57
  msgstr ""
 
 
 
 
1
+ # Copyright (C) 2018 Woo Variation Swatches
2
  # This file is distributed under the same license as the Woo Variation Swatches package.
3
  msgid ""
4
  msgstr ""
16
  "X-Poedit-SourceCharset: UTF-8\n"
17
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
18
 
19
+ #: ../woo-variation-swatches.php:116
20
  msgid "Choose an Image"
21
  msgstr ""
22
 
23
+ #: ../woo-variation-swatches.php:117
24
  msgid "Use Image"
25
  msgstr ""
26
 
27
+ #: ../woo-variation-swatches.php:118
28
  msgid "Add Media"
29
  msgstr ""
30
 
31
+ #: ../woo-variation-swatches.php:173
32
  msgid "View Documentation"
33
  msgstr ""
34
 
35
+ #: ../woo-variation-swatches.php:173
36
  msgid "Documentation"
37
  msgstr ""
38
 
39
+ #: ../woo-variation-swatches.php:174, ../woo-variation-swatches.php:174
40
  msgid "Support"
41
  msgstr ""
42
 
43
+ #: ../woo-variation-swatches.php:175
44
+ msgid "Review"
45
+ msgstr ""
46
+
47
+ #: ../woo-variation-swatches.php:205
48
  msgid "Please check PHP version requirement."
49
  msgstr ""
50
 
51
+ #: ../woo-variation-swatches.php:207
52
  msgid "It's required to use latest version of PHP to use <strong>Woo Variation Swatches</strong>."
53
  msgstr ""
54
 
55
+ #: ../woo-variation-swatches.php:217
56
  msgid "WooCommerce"
57
  msgstr ""
58
 
59
+ #: ../woo-variation-swatches.php:219
60
  msgid "<strong>Woo Variation Switcher</strong> is an add-on of "
61
  msgstr ""
62
+
63
+ #: ../woo-variation-swatches.php:315
64
+ msgid "Woo Variation Swatches Plugin try to load \"%s\" but template \"%s\" was not found."
65
+ msgstr ""
webpack.mix.js CHANGED
@@ -60,7 +60,7 @@ if (Mix.inProduction()) {
60
  }
61
 
62
  mix.banner({
63
- banner : "Woo Variation Swatches v1.0.1 \n\nAuthor: Emran Ahmed ( emran.bd.08@gmail.com ) \nDate: " + new Date().toLocaleString() + "\nReleased under the GPLv3 license."
64
  });
65
 
66
  mix.notification({
@@ -77,3 +77,4 @@ mix.js(`src/js/frontend.js`, `assets/js/frontend${min}.js`);
77
  mix.babel(`src/js/FormFieldDependency.js`, `assets/js/form-field-dependency${min}.js`);
78
  mix.sass(`src/scss/backend.scss`, `assets/css/admin${min}.css`);
79
  mix.sass(`src/scss/frontend.scss`, `assets/css/frontend${min}.css`);
 
60
  }
61
 
62
  mix.banner({
63
+ banner : "Woo Variation Swatches v1.0.2 \n\nAuthor: Emran Ahmed ( emran.bd.08@gmail.com ) \nDate: " + new Date().toLocaleString() + "\nReleased under the GPLv3 license."
64
  });
65
 
66
  mix.notification({
77
  mix.babel(`src/js/FormFieldDependency.js`, `assets/js/form-field-dependency${min}.js`);
78
  mix.sass(`src/scss/backend.scss`, `assets/css/admin${min}.css`);
79
  mix.sass(`src/scss/frontend.scss`, `assets/css/frontend${min}.css`);
80
+ mix.sass(`src/scss/tooltip.scss`, `assets/css/frontend-tooltip${min}.css`);
woo-variation-swatches.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin URI: https://wordpress.org/plugins/woo-variation-swatches/
5
  * Description: WooCommerce Product Variation Swatches
6
  * Author: Emran Ahmed
7
- * Version: 1.0.1
8
  * Domain Path: /languages
9
  * Requires at least: 4.8
10
  * Tested up to: 4.9
@@ -20,11 +20,12 @@
20
 
21
  final class Woo_Variation_Swatches {
22
 
23
- protected $_version = '1.0.1';
24
 
25
  protected static $_instance = NULL;
 
26
 
27
- public static function init() {
28
  if ( is_null( self::$_instance ) ) {
29
  self::$_instance = new self();
30
  }
@@ -33,7 +34,6 @@
33
  }
34
 
35
  public function __construct() {
36
-
37
  $this->constants();
38
  $this->includes();
39
  $this->hooks();
@@ -41,7 +41,6 @@
41
  }
42
 
43
  public function constants() {
44
-
45
  $this->define( 'WVS_PLUGIN_VERSION', esc_attr( $this->_version ) );
46
  $this->define( 'WVS_PLUGIN_URI', plugin_dir_url( __FILE__ ) );
47
  $this->define( 'WVS_PLUGIN_PATH', plugin_dir_path( __FILE__ ) );
@@ -59,6 +58,7 @@
59
 
60
  public function includes() {
61
  if ( $this->is_required_php_version() ) {
 
62
  require_once $this->include_path( 'class-wvs-term-meta.php' );
63
  require_once $this->include_path( 'functions.php' );
64
  require_once $this->include_path( 'hooks.php' );
@@ -78,18 +78,29 @@
78
  }
79
 
80
  public function hooks() {
 
 
 
81
  add_action( 'admin_notices', array( $this, 'php_requirement_notice' ) );
82
  add_action( 'admin_notices', array( $this, 'wc_requirement_notice' ) );
83
- add_action( 'init', array( $this, 'language' ) );
84
- add_filter( 'plugin_row_meta', array( $this, 'plugin_row_meta' ), 10, 2 );
85
  add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
86
  add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
 
 
87
  }
88
 
89
  public function enqueue_scripts() {
90
  $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
91
  wp_enqueue_script( 'woo-variation-swatches', $this->assets_uri( "/js/frontend{$suffix}.js" ), array( 'jquery' ), $this->version(), TRUE );
92
- wp_enqueue_style( 'woo-variation-swatches', $this->assets_uri( "/css/frontend{$suffix}.css" ), array(), $this->version() );
 
 
 
 
 
 
 
93
  }
94
 
95
  public function admin_enqueue_scripts() {
@@ -110,6 +121,12 @@
110
  ) );
111
  }
112
 
 
 
 
 
 
 
113
  public function add_setting( $tab_id, $tab_title, $tab_sections, $active = FALSE ) {
114
  // Example:
115
 
@@ -128,7 +145,7 @@
128
  // ]
129
  // ] // fields end
130
  // ]
131
- //])
132
 
133
  add_filter( 'wvs_settings', function ( $fields ) use ( $tab_id, $tab_title, $tab_sections, $active ) {
134
  array_push( $fields, array(
@@ -142,16 +159,20 @@
142
  } );
143
  }
144
 
 
 
 
 
145
  public function add_term_meta( $taxonomy, $post_type, $fields ) {
146
  return new WVS_Term_Meta( $taxonomy, $post_type, $fields );
147
  }
148
 
149
  public function plugin_row_meta( $links, $file ) {
150
  if ( $file == $this->basename() ) {
151
- $row_meta = array(
152
- 'documentation' => '<a href="' . esc_url( apply_filters( 'wvs_documentation_url', '#' ) ) . '" title="' . esc_attr( esc_html__( 'View Documentation', 'woo-variation-swatches' ) ) . '">' . esc_html__( 'Documentation', 'woo-variation-swatches' ) . '</a>',
153
- 'support' => '<a href="' . esc_url( apply_filters( 'wvs_support_url', 'https://wordpress.org/support/plugin/woo-variation-swatches/' ) ) . '" title="' . esc_attr( esc_html__( 'Support', 'woo-variation-swatches' ) ) . '">' . esc_html__( 'Support', 'woo-variation-swatches' ) . '</a>',
154
- );
155
 
156
  return array_merge( $links, $row_meta );
157
  }
@@ -252,10 +273,98 @@
252
  public function template_uri() {
253
  return apply_filters( 'wvs_template_uri', untrailingslashit( $this->plugin_uri() ) . '/templates' );
254
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
255
  }
256
 
257
  function woo_variation_swatches() {
258
- return Woo_Variation_Swatches::init();
259
  }
260
 
261
  add_action( 'plugins_loaded', 'woo_variation_swatches' );
4
  * Plugin URI: https://wordpress.org/plugins/woo-variation-swatches/
5
  * Description: WooCommerce Product Variation Swatches
6
  * Author: Emran Ahmed
7
+ * Version: 1.0.2
8
  * Domain Path: /languages
9
  * Requires at least: 4.8
10
  * Tested up to: 4.9
20
 
21
  final class Woo_Variation_Swatches {
22
 
23
+ protected $_version = '1.0.2';
24
 
25
  protected static $_instance = NULL;
26
+ private $_settings_api;
27
 
28
+ public static function instance() {
29
  if ( is_null( self::$_instance ) ) {
30
  self::$_instance = new self();
31
  }
34
  }
35
 
36
  public function __construct() {
 
37
  $this->constants();
38
  $this->includes();
39
  $this->hooks();
41
  }
42
 
43
  public function constants() {
 
44
  $this->define( 'WVS_PLUGIN_VERSION', esc_attr( $this->_version ) );
45
  $this->define( 'WVS_PLUGIN_URI', plugin_dir_url( __FILE__ ) );
46
  $this->define( 'WVS_PLUGIN_PATH', plugin_dir_path( __FILE__ ) );
58
 
59
  public function includes() {
60
  if ( $this->is_required_php_version() ) {
61
+ require_once $this->include_path( 'class-wvs-settings-api.php' );
62
  require_once $this->include_path( 'class-wvs-term-meta.php' );
63
  require_once $this->include_path( 'functions.php' );
64
  require_once $this->include_path( 'hooks.php' );
78
  }
79
 
80
  public function hooks() {
81
+ add_action( 'init', array( $this, 'language' ) );
82
+ add_action( 'init', array( $this, 'settings_api' ), 5 );
83
+
84
  add_action( 'admin_notices', array( $this, 'php_requirement_notice' ) );
85
  add_action( 'admin_notices', array( $this, 'wc_requirement_notice' ) );
86
+
 
87
  add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
88
  add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
89
+
90
+ add_filter( 'plugin_row_meta', array( $this, 'plugin_row_meta' ), 10, 2 );
91
  }
92
 
93
  public function enqueue_scripts() {
94
  $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
95
  wp_enqueue_script( 'woo-variation-swatches', $this->assets_uri( "/js/frontend{$suffix}.js" ), array( 'jquery' ), $this->version(), TRUE );
96
+
97
+ if ( $this->get_option( 'stylesheet' ) ) {
98
+ wp_enqueue_style( 'woo-variation-swatches', $this->assets_uri( "/css/frontend{$suffix}.css" ), array(), $this->version() );
99
+ }
100
+
101
+ if ( $this->get_option( 'tooltip' ) ) {
102
+ wp_enqueue_style( 'woo-variation-swatches-tooltip', $this->assets_uri( "/css/frontend-tooltip{$suffix}.css" ), array(), $this->version() );
103
+ }
104
  }
105
 
106
  public function admin_enqueue_scripts() {
121
  ) );
122
  }
123
 
124
+ public function settings_api() {
125
+ $this->_settings_api = new WVS_Settings_API( $this );
126
+
127
+ return $this->_settings_api;
128
+ }
129
+
130
  public function add_setting( $tab_id, $tab_title, $tab_sections, $active = FALSE ) {
131
  // Example:
132
 
145
  // ]
146
  // ] // fields end
147
  // ]
148
+ //], active ? true | false)
149
 
150
  add_filter( 'wvs_settings', function ( $fields ) use ( $tab_id, $tab_title, $tab_sections, $active ) {
151
  array_push( $fields, array(
159
  } );
160
  }
161
 
162
+ public function get_option( $id ) {
163
+ return $this->_settings_api->get_option( $id );
164
+ }
165
+
166
  public function add_term_meta( $taxonomy, $post_type, $fields ) {
167
  return new WVS_Term_Meta( $taxonomy, $post_type, $fields );
168
  }
169
 
170
  public function plugin_row_meta( $links, $file ) {
171
  if ( $file == $this->basename() ) {
172
+ $review_url = "https://wordpress.org/support/plugin/woo-variation-swatches/reviews/?rate=5#new-post";
173
+ $row_meta[ 'documentation' ] = '<a href="' . esc_url( apply_filters( 'wvs_documentation_url', '#' ) ) . '" title="' . esc_attr( esc_html__( 'View Documentation', 'woo-variation-swatches' ) ) . '">' . esc_html__( 'Documentation', 'woo-variation-swatches' ) . '</a>';
174
+ $row_meta[ 'support' ] = '<a href="' . esc_url( apply_filters( 'wvs_support_url', 'https://wordpress.org/support/plugin/woo-variation-swatches/' ) ) . '" title="' . esc_attr( esc_html__( 'Support', 'woo-variation-swatches' ) ) . '">' . esc_html__( 'Support', 'woo-variation-swatches' ) . '</a>';
175
+ $row_meta[ 'rating' ] = sprintf( '<span class="gwp-rate-stars"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><a xlink:href="%1$s" title="%2$s" target="_blank"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/></a></svg><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><a xlink:href="%1$s" title="%2$s" target="_blank"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/></a></svg><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><a xlink:href="%1$s" title="%2$s" target="_blank"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/></a></svg><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><a xlink:href="%1$s" title="%2$s" target="_blank"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/></a></svg><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><a xlink:href="%1$s" title="%2$s" target="_blank"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"/></a></svg></span>', esc_url( $review_url ), esc_html__( 'Review', 'woo-variation-swatches' ) );
176
 
177
  return array_merge( $links, $row_meta );
178
  }
273
  public function template_uri() {
274
  return apply_filters( 'wvs_template_uri', untrailingslashit( $this->plugin_uri() ) . '/templates' );
275
  }
276
+
277
+ public function locate_template( $template_name, $third_party_path = FALSE ) {
278
+
279
+ $template_name = ltrim( $template_name, '/' );
280
+ $template_path = $this->template_override_dir();
281
+ $default_path = $this->template_path();
282
+
283
+ if ( $third_party_path && is_string( $third_party_path ) ) {
284
+ $default_path = untrailingslashit( $third_party_path );
285
+ }
286
+
287
+ // Look within passed path within the theme - this is priority.
288
+ $template = locate_template( array(
289
+ trailingslashit( $template_path ) . trim( $template_name ),
290
+ 'wvs-template-' . trim( $template_name )
291
+ ) );
292
+
293
+ // Get default template/
294
+ if ( empty( $template ) ) {
295
+ $template = trailingslashit( $default_path ) . trim( $template_name );
296
+ }
297
+
298
+ // Return what we found.
299
+ return apply_filters( 'wvs_locate_template', $template, $template_name, $template_path );
300
+ }
301
+
302
+ public function get_template( $template_name, $template_args = array(), $third_party_path = FALSE ) {
303
+
304
+ $template_name = ltrim( $template_name, '/' );
305
+
306
+ $located = apply_filters( 'wvs_get_template', $this->locate_template( $template_name, $third_party_path ) );
307
+
308
+ do_action( 'wvs_before_get_template', $template_name, $template_args );
309
+
310
+ extract( $template_args );
311
+
312
+ if ( file_exists( $located ) ) {
313
+ include $located;
314
+ } else {
315
+ trigger_error( sprintf( esc_html__( 'Woo Variation Swatches Plugin try to load "%s" but template "%s" was not found.', 'woo-variation-swatches' ), $located, $template_name ), E_USER_WARNING );
316
+ }
317
+
318
+ do_action( 'wvs_after_get_template', $template_name, $template_args );
319
+ }
320
+
321
+ public function get_theme_file_path( $file, $third_party_path = FALSE ) {
322
+
323
+ $file = ltrim( $file, '/' );
324
+ $template_dir = $this->template_override_dir();
325
+ $default_path = $this->template_path();
326
+
327
+ if ( $third_party_path && is_string( $third_party_path ) ) {
328
+ $default_path = untrailingslashit( $third_party_path );
329
+ }
330
+
331
+ // @TODO: Use get_theme_file_path
332
+ if ( file_exists( get_stylesheet_directory() . '/' . $template_dir . '/' . $file ) ) {
333
+ $path = get_stylesheet_directory() . '/' . $template_dir . '/' . $file;
334
+ } elseif ( file_exists( get_template_directory() . '/' . $template_dir . '/' . $file ) ) {
335
+ $path = get_template_directory() . '/' . $template_dir . '/' . $file;
336
+ } else {
337
+ $path = trailingslashit( $default_path ) . $file;
338
+ }
339
+
340
+ return apply_filters( 'wvs_get_theme_file_path', $path, $file );
341
+ }
342
+
343
+ public function get_theme_file_uri( $file, $third_party_uri = FALSE ) {
344
+
345
+ $file = ltrim( $file, '/' );
346
+ $template_dir = $this->template_override_dir();
347
+ $default_uri = $this->template_uri();
348
+
349
+ if ( $third_party_uri && is_string( $third_party_uri ) ) {
350
+ $default_uri = untrailingslashit( $third_party_uri );
351
+ }
352
+
353
+ // @TODO: Use get_theme_file_uri
354
+ if ( file_exists( get_stylesheet_directory() . '/' . $template_dir . '/' . $file ) ) {
355
+ $uri = get_stylesheet_directory_uri() . '/' . $template_dir . '/' . $file;
356
+ } elseif ( file_exists( get_template_directory() . '/' . $template_dir . '/' . $file ) ) {
357
+ $uri = get_template_directory_uri() . '/' . $template_dir . '/' . $file;
358
+ } else {
359
+ $uri = trailingslashit( $default_uri ) . $file;
360
+ }
361
+
362
+ return apply_filters( 'wvs_get_theme_file_uri', $uri, $file );
363
+ }
364
  }
365
 
366
  function woo_variation_swatches() {
367
+ return Woo_Variation_Swatches::instance();
368
  }
369
 
370
  add_action( 'plugins_loaded', 'woo_variation_swatches' );