WooCommerce Variation Swatches - Version 1.0.18

Version Description

  • Update: CSS
  • New: Attribute behaviour
Download this release

Release Info

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

Code changes from version 1.0.17 to 1.0.18

README.txt CHANGED
@@ -44,7 +44,12 @@ In the free WooCommerce attribute variation plugin, besides creating size, brand
44
  <blockquote>
45
  <ul>
46
  <li><a target="_blank" href="http://bit.ly/woovs-demo-04">gimp3d.com</a> | Built With: Flatsome Theme | Niche: 3D Printing Parts Store </li>
47
- <li><a target="_blank" href="http://bit.ly/woovs-demo-02">loja2passos.com.br</a> | Built With: Flatsome Theme | Niche: Shoe Store </li>
 
 
 
 
 
48
  <li><a target="_blank" href="http://bit.ly/woovs-demo-01">plotnikoff.ru</a> Built With: Uncode Theme | Niche: Furniture and Home Appliances Store </li>
49
  <li><a target="_blank" href="http://bit.ly/woovs-demo-03">robinsongarden.co.uk</a> Built With: Labomba Theme | Niche: Bespoke Furniture Store</li>
50
  </ul>
@@ -141,10 +146,16 @@ Just call this javascript function on ajax load event `$('.variations_form').wc_
141
  5. Attribute Color Type Preview
142
  6. Attribute Button / Label Type Preview
143
  7. Variation Product Edit view
144
- 8. Settings Panel
 
145
 
146
  == Changelog ==
147
 
 
 
 
 
 
148
  = 1.0.17 =
149
 
150
  * Fix: Visual CSS Issue
44
  <blockquote>
45
  <ul>
46
  <li><a target="_blank" href="http://bit.ly/woovs-demo-04">gimp3d.com</a> | Built With: Flatsome Theme | Niche: 3D Printing Parts Store </li>
47
+ <li><a target="_blank" href="http://bit.ly/woovs-demo-flatsome-02">makromass.pl</a> | Built With: Flatsome Theme | Niche: Supplements for athletes</li>
48
+ <li><a target="_blank" href="http://bit.ly/woovs-flatsome-03">cellularizeme.com</a> | Built With: Flatsome Theme | Niche: Electronices Store </li>
49
+ <li><a target="_blank" href="http://bit.ly/woovs-demo-avada">wonkybot.com</a> | Built With: Avada Theme | Niche: Clothing Store </li>
50
+ <li><a target="_blank" href="http://bit.ly/woovs-demo-avada-01">luckyonebijoux.com</a> | Built With: Avada Theme | Niche: Jewelry Shop </li>
51
+ <li><a target="_blank" href="http://bit.ly/woovs-avada-02">polymaker.metricdesign.net</a> | Built With: Avada Theme | Niche: 3d Parts Shop </li>
52
+ <li><a target="_blank" href="http://bit.ly/woovs-demo-nitro">sethsoldtimes.com</a> | Built With: Nitro Theme | Niche: Dise Golf Store</li>
53
  <li><a target="_blank" href="http://bit.ly/woovs-demo-01">plotnikoff.ru</a> Built With: Uncode Theme | Niche: Furniture and Home Appliances Store </li>
54
  <li><a target="_blank" href="http://bit.ly/woovs-demo-03">robinsongarden.co.uk</a> Built With: Labomba Theme | Niche: Bespoke Furniture Store</li>
55
  </ul>
146
  5. Attribute Color Type Preview
147
  6. Attribute Button / Label Type Preview
148
  7. Variation Product Edit view
149
+ 8. Multisite Compatible
150
+ 9. Settings Panel
151
 
152
  == Changelog ==
153
 
154
+ = 1.0.18 =
155
+
156
+ * Update: CSS
157
+ * New: Attribute behaviour
158
+
159
  = 1.0.17 =
160
 
161
  * Fix: Visual CSS Issue
assets/css/admin.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * WooCommerce Variation Swatches v1.0.17
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2018-3-30 14:41:58
6
  * Released under the GPLv3 license.
7
  */
8
  .button.button-danger {
1
  /*!
2
+ * WooCommerce Variation Swatches v1.0.18
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-4-9 23:49:39
6
  * Released under the GPLv3 license.
7
  */
8
  .button.button-danger {
assets/css/admin.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * WooCommerce Variation Swatches v1.0.17
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2018-3-30 14:42:03
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}#wvs-meta-preview{width:30px}.wvs-preview{width:30px;height:30px;border:1px solid #000}
1
  /*!
2
+ * WooCommerce Variation Swatches v1.0.18
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-4-9 23:49:43
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}#wvs-meta-preview{width:30px}.wvs-preview{width:30px;height:30px;border:1px solid #000}
assets/css/frontend-tooltip.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * WooCommerce Variation Swatches v1.0.17
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2018-3-30 14:41:58
6
  * Released under the GPLv3 license.
7
  */
8
  .variable-items-wrapper [data-wvstooltip] {
1
  /*!
2
+ * WooCommerce Variation Swatches v1.0.18
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-4-9 23:49:39
6
  * Released under the GPLv3 license.
7
  */
8
  .variable-items-wrapper [data-wvstooltip] {
assets/css/frontend-tooltip.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * WooCommerce Variation Swatches v1.0.17
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2018-3-30 14:42:03
6
  * Released under the GPLv3 license.
7
  */
8
  .variable-items-wrapper [data-wvstooltip]{position:relative;cursor:pointer}.variable-items-wrapper [data-wvstooltip]:after,.variable-items-wrapper [data-wvstooltip]:before{visibility:hidden;opacity:0;pointer-events:none;-webkit-box-sizing:inherit;box-sizing:inherit;position:absolute;bottom:130%;left:50%;z-index:99;-webkit-transform:translateZ(0);transform:translateZ(0)}.variable-items-wrapper [data-wvstooltip]:before{margin-bottom:5px;margin-left:-50px;padding:7px;min-width:100px;border-radius:3px;background-color:#000;background-color:rgba(51,51,51,.9);color:#fff;content:attr(data-wvstooltip);text-align:center;font-size:14px;line-height:1.2}.variable-items-wrapper [data-wvstooltip]:after{margin-left:-5px;width:0;border-top:5px solid #000;border-top:5px solid rgba(51,51,51,.9);border-right:5px solid transparent;border-left:5px solid transparent;content:" ";font-size:0;line-height:0}.variable-items-wrapper [data-wvstooltip]:hover:after,.variable-items-wrapper [data-wvstooltip]:hover:before{visibility:visible;opacity:1}
1
  /*!
2
+ * WooCommerce Variation Swatches v1.0.18
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-4-9 23:49:43
6
  * Released under the GPLv3 license.
7
  */
8
  .variable-items-wrapper [data-wvstooltip]{position:relative;cursor:pointer}.variable-items-wrapper [data-wvstooltip]:after,.variable-items-wrapper [data-wvstooltip]:before{visibility:hidden;opacity:0;pointer-events:none;-webkit-box-sizing:inherit;box-sizing:inherit;position:absolute;bottom:130%;left:50%;z-index:99;-webkit-transform:translateZ(0);transform:translateZ(0)}.variable-items-wrapper [data-wvstooltip]:before{margin-bottom:5px;margin-left:-50px;padding:7px;min-width:100px;border-radius:3px;background-color:#000;background-color:rgba(51,51,51,.9);color:#fff;content:attr(data-wvstooltip);text-align:center;font-size:14px;line-height:1.2}.variable-items-wrapper [data-wvstooltip]:after{margin-left:-5px;width:0;border-top:5px solid #000;border-top:5px solid rgba(51,51,51,.9);border-right:5px solid transparent;border-left:5px solid transparent;content:" ";font-size:0;line-height:0}.variable-items-wrapper [data-wvstooltip]:hover:after,.variable-items-wrapper [data-wvstooltip]:hover:before{visibility:visible;opacity:1}
assets/css/frontend.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * WooCommerce Variation Swatches v1.0.17
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2018-3-30 14:41:58
6
  * Released under the GPLv3 license.
7
  */
8
  .variable-items-wrapper {
@@ -12,6 +12,7 @@
12
  -ms-flex-wrap: wrap;
13
  flex-wrap: wrap;
14
  margin: 0;
 
15
  }
16
 
17
  .variable-items-wrapper.radio-variable-wrapper {
@@ -20,6 +21,27 @@
20
  display: block;
21
  }
22
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
23
  .variable-items-wrapper .radio-variable-item {
24
  -webkit-box-sizing: border-box;
25
  box-sizing: border-box;
@@ -33,23 +55,9 @@
33
  cursor: pointer;
34
  }
35
 
36
- .variable-items-wrapper .radio-variable-item.disabled,
37
- .variable-items-wrapper .radio-variable-item.disabled:hover {
38
- cursor: not-allowed;
39
- opacity: 0.5;
40
- }
41
-
42
- .variable-items-wrapper .radio-variable-item.disabled label,
43
- .variable-items-wrapper .radio-variable-item.disabled input,
44
- .variable-items-wrapper .radio-variable-item.disabled:hover label,
45
- .variable-items-wrapper .radio-variable-item.disabled:hover input {
46
- cursor: not-allowed;
47
- }
48
-
49
  .variable-items-wrapper .variable-item:not(.radio-variable-item) {
50
  -webkit-box-sizing: border-box;
51
  box-sizing: border-box;
52
- list-style: none;
53
  cursor: pointer;
54
  display: -webkit-box;
55
  display: -ms-flexbox;
@@ -79,8 +87,10 @@
79
  .variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item span::after {
80
  position: absolute;
81
  content: "";
82
- width: 20px;
83
- height: 20px;
 
 
84
  -webkit-box-shadow: inset 0 0 1px 0 rgba(0, 0, 0, 0.5);
85
  box-shadow: inset 0 0 1px 0 rgba(0, 0, 0, 0.5);
86
  }
@@ -131,12 +141,6 @@
131
  border: 1px solid #000000;
132
  }
133
 
134
- .variable-items-wrapper .variable-item:not(.radio-variable-item).disabled,
135
- .variable-items-wrapper .variable-item:not(.radio-variable-item).disabled:hover {
136
- cursor: not-allowed;
137
- opacity: 0.5;
138
- }
139
-
140
  .woo-variation-swatches-style-rounded .variable-item {
141
  border-radius: 100%;
142
  }
@@ -170,5 +174,35 @@
170
  border-radius: 0;
171
  }
172
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
173
 
174
- /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2Nzcy9mcm9udGVuZC5jc3MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9zcmMvc2Nzcy9mcm9udGVuZC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIge1xuICBkaXNwbGF5ICAgOiBmbGV4O1xuICBmbGV4LXdyYXAgOiB3cmFwO1xuICBtYXJnaW4gICAgOiAwO1xuXG4gICYucmFkaW8tdmFyaWFibGUtd3JhcHBlciB7XG4gICAgLypkaXNwbGF5ICAgICAgICA6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uIDogY29sdW1uOyovXG4gICAgZGlzcGxheSA6IGJsb2NrO1xuICAgIH1cblxuICAucmFkaW8tdmFyaWFibGUtaXRlbSB7XG4gICAgYm94LXNpemluZyA6IGJvcmRlci1ib3g7XG4gICAgbGlzdC1zdHlsZSA6IG5vbmU7XG4gICAgY3Vyc29yICAgICA6IHBvaW50ZXI7XG4gICAgbWFyZ2luICAgICA6IDA7XG4gICAgbGFiZWwsIGlucHV0IHtcbiAgICAgIGN1cnNvciA6IHBvaW50ZXI7XG4gICAgICB9XG4gICAgJi5kaXNhYmxlZCxcbiAgICAmLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGN1cnNvciAgOiBub3QtYWxsb3dlZDtcbiAgICAgIG9wYWNpdHkgOiAwLjU7XG4gICAgICBsYWJlbCwgaW5wdXQge1xuICAgICAgICBjdXJzb3IgOiBub3QtYWxsb3dlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pIHtcbiAgICBib3gtc2l6aW5nICAgICAgOiBib3JkZXItYm94O1xuICAgIGxpc3Qtc3R5bGUgICAgICA6IG5vbmU7XG4gICAgY3Vyc29yICAgICAgICAgIDogcG9pbnRlcjtcbiAgICBkaXNwbGF5ICAgICAgICAgOiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudCA6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtcyAgICAgOiBjZW50ZXI7XG5cbiAgICAmLmNvbG9yLXZhcmlhYmxlLWl0ZW0ge1xuICAgICAgcGFkZGluZyA6IDJweDtcbiAgICAgIG1hcmdpbiAgOiAycHg7XG4gICAgICB3aWR0aCAgIDogMzBweDtcbiAgICAgIGhlaWdodCAgOiAzMHB4O1xuICAgICAgYm9yZGVyICA6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICB3aWR0aCAgICA6IDIwcHg7XG4gICAgICAgIGhlaWdodCAgIDogMjBweDtcbiAgICAgICAgcG9zaXRpb24gOiByZWxhdGl2ZTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb24gICA6IGFic29sdXRlO1xuICAgICAgICAgIGNvbnRlbnQgICAgOiBcIlwiO1xuICAgICAgICAgIHdpZHRoICAgICAgOiAyMHB4O1xuICAgICAgICAgIGhlaWdodCAgICAgOiAyMHB4O1xuICAgICAgICAgIGJveC1zaGFkb3cgOiBpbnNldCAwIDAgMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgJi5idXR0b24tdmFyaWFibGUtaXRlbSB7XG4gICAgICBwYWRkaW5nIDogMnB4O1xuICAgICAgbWFyZ2luICA6IDJweDtcbiAgICAgIGJvcmRlciAgOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplICAgOiAxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodCA6IDE7XG4gICAgICAgIH1cbiAgICAgICYuc2VsZWN0ZWQsXG4gICAgICAmLnNlbGVjdGVkOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyICAgICA6IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgICAgICBiYWNrZ3JvdW5kIDogIzAwMDAwMDtcbiAgICAgICAgY29sb3IgICAgICA6ICNGRkZGRkY7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICYuaW1hZ2UtdmFyaWFibGUtaXRlbSB7XG4gICAgICBwYWRkaW5nIDogMnB4O1xuICAgICAgbWFyZ2luICA6IDJweDtcbiAgICAgIHdpZHRoICAgOiA0MHB4O1xuICAgICAgaGVpZ2h0ICA6IDQwcHg7XG4gICAgICBib3JkZXIgIDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1yaWdodCA6IDA7XG4gICAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXIgOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICAgIH1cblxuICAgICYuY29sb3ItdmFyaWFibGUtaXRlbSxcbiAgICAmLmltYWdlLXZhcmlhYmxlLWl0ZW0ge1xuICAgICAgJi5zZWxlY3RlZCxcbiAgICAgICYuc2VsZWN0ZWQ6aG92ZXIge1xuICAgICAgICBib3JkZXIgOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgJi5zZWxlY3RlZCxcbiAgICAmLnNlbGVjdGVkOmhvdmVyIHtcbiAgICAgIGJvcmRlciA6IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgICAgfVxuICAgICYuZGlzYWJsZWQsXG4gICAgJi5kaXNhYmxlZDpob3ZlciB7XG4gICAgICBjdXJzb3IgIDogbm90LWFsbG93ZWQ7XG4gICAgICBvcGFjaXR5IDogMC41O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4ud29vLXZhcmlhdGlvbi1zd2F0Y2hlcy1zdHlsZSB7XG4gICYtcm91bmRlZCB7XG4gICAgLnZhcmlhYmxlLWl0ZW0ge1xuICAgICAgYm9yZGVyLXJhZGl1cyA6IDEwMCU7XG4gICAgICBzcGFuLCBpbWcsIHNwYW46OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1cyA6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgJi5idXR0b24tdmFyaWFibGUtaXRlbSB7XG4gICAgICAgIHdpZHRoICA6IDM2cHg7XG4gICAgICAgIGhlaWdodCA6IDM2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICYtc3F1YXJlZCB7XG4gICAgLnZhcmlhYmxlLWl0ZW0ge1xuICAgICAgYm9yZGVyLXJhZGl1cyA6IDA7XG4gICAgICAmLmJ1dHRvbi12YXJpYWJsZS1pdGVtIHtcbiAgICAgICAgd2lkdGggIDogYXV0bztcbiAgICAgICAgaGVpZ2h0IDogMzZweDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgd2lkdGggICA6IGF1dG87XG4gICAgICAgICAgcGFkZGluZyA6IDAgMXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICYuY29sb3ItdmFyaWFibGUtaXRlbSBzcGFuIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXMgOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL3NyYy9zY3NzL3NyYy9zY3NzL2Zyb250ZW5kLnNjc3MiLCIudmFyaWFibGUtaXRlbXMtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAwO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlci5yYWRpby12YXJpYWJsZS13cmFwcGVyIHtcbiAgLypkaXNwbGF5ICAgICAgICA6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uIDogY29sdW1uOyovXG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAucmFkaW8tdmFyaWFibGUtaXRlbSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luOiAwO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAucmFkaW8tdmFyaWFibGUtaXRlbSBsYWJlbCxcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC5yYWRpby12YXJpYWJsZS1pdGVtIGlucHV0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAucmFkaW8tdmFyaWFibGUtaXRlbS5kaXNhYmxlZCxcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC5yYWRpby12YXJpYWJsZS1pdGVtLmRpc2FibGVkOmhvdmVyIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAucmFkaW8tdmFyaWFibGUtaXRlbS5kaXNhYmxlZCBsYWJlbCxcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC5yYWRpby12YXJpYWJsZS1pdGVtLmRpc2FibGVkIGlucHV0LFxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnJhZGlvLXZhcmlhYmxlLWl0ZW0uZGlzYWJsZWQ6aG92ZXIgbGFiZWwsXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAucmFkaW8tdmFyaWFibGUtaXRlbS5kaXNhYmxlZDpob3ZlciBpbnB1dCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLmNvbG9yLXZhcmlhYmxlLWl0ZW0ge1xuICBwYWRkaW5nOiAycHg7XG4gIG1hcmdpbjogMnB4O1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuY29sb3ItdmFyaWFibGUtaXRlbSBzcGFuIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLmNvbG9yLXZhcmlhYmxlLWl0ZW0gc3Bhbjo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuYnV0dG9uLXZhcmlhYmxlLWl0ZW0ge1xuICBwYWRkaW5nOiAycHg7XG4gIG1hcmdpbjogMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuYnV0dG9uLXZhcmlhYmxlLWl0ZW0gc3BhbiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuYnV0dG9uLXZhcmlhYmxlLWl0ZW0uc2VsZWN0ZWQsXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLmJ1dHRvbi12YXJpYWJsZS1pdGVtLnNlbGVjdGVkOmhvdmVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuaW1hZ2UtdmFyaWFibGUtaXRlbSB7XG4gIHBhZGRpbmc6IDJweDtcbiAgbWFyZ2luOiAycHg7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW06bm90KC5yYWRpby12YXJpYWJsZS1pdGVtKTpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSk6aG92ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLmNvbG9yLXZhcmlhYmxlLWl0ZW0uc2VsZWN0ZWQsXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLmNvbG9yLXZhcmlhYmxlLWl0ZW0uc2VsZWN0ZWQ6aG92ZXIsXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLmltYWdlLXZhcmlhYmxlLWl0ZW0uc2VsZWN0ZWQsXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLmltYWdlLXZhcmlhYmxlLWl0ZW0uc2VsZWN0ZWQ6aG92ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLnNlbGVjdGVkLFxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW06bm90KC5yYWRpby12YXJpYWJsZS1pdGVtKS5zZWxlY3RlZDpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuZGlzYWJsZWQsXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLmRpc2FibGVkOmhvdmVyIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4ud29vLXZhcmlhdGlvbi1zd2F0Y2hlcy1zdHlsZS1yb3VuZGVkIC52YXJpYWJsZS1pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbn1cblxuLndvby12YXJpYXRpb24tc3dhdGNoZXMtc3R5bGUtcm91bmRlZCAudmFyaWFibGUtaXRlbSBzcGFuLFxuLndvby12YXJpYXRpb24tc3dhdGNoZXMtc3R5bGUtcm91bmRlZCAudmFyaWFibGUtaXRlbSBpbWcsXG4ud29vLXZhcmlhdGlvbi1zd2F0Y2hlcy1zdHlsZS1yb3VuZGVkIC52YXJpYWJsZS1pdGVtIHNwYW46OmFmdGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbn1cblxuLndvby12YXJpYXRpb24tc3dhdGNoZXMtc3R5bGUtcm91bmRlZCAudmFyaWFibGUtaXRlbS5idXR0b24tdmFyaWFibGUtaXRlbSB7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG59XG5cbi53b28tdmFyaWF0aW9uLXN3YXRjaGVzLXN0eWxlLXNxdWFyZWQgLnZhcmlhYmxlLWl0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ud29vLXZhcmlhdGlvbi1zd2F0Y2hlcy1zdHlsZS1zcXVhcmVkIC52YXJpYWJsZS1pdGVtLmJ1dHRvbi12YXJpYWJsZS1pdGVtIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMzZweDtcbn1cblxuLndvby12YXJpYXRpb24tc3dhdGNoZXMtc3R5bGUtc3F1YXJlZCAudmFyaWFibGUtaXRlbS5idXR0b24tdmFyaWFibGUtaXRlbSBzcGFuIHtcbiAgd2lkdGg6IGF1dG87XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cblxuLndvby12YXJpYXRpb24tc3dhdGNoZXMtc3R5bGUtc3F1YXJlZCAudmFyaWFibGUtaXRlbS5jb2xvci12YXJpYWJsZS1pdGVtIHNwYW46OmFmdGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vZnJvbnRlbmQuc2NzcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ0E7QUFBQTtBQUFBO0FBQ0E7QUFBQTtBQUNBO0FDQ0E7QUFDQTtBREFBO0FBQ0E7QUNFQTtBREFBO0FDRUE7QUFDQTtBRFhBO0FBWUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQ0VBO0FBQ0E7QURsQkE7O0FBaUJBO0FDS0E7QUFDQTtBRFpBOztBQVVBO0FBQ0E7QUNNQTtBQUNBO0FETkE7Ozs7QUFDQTtBQ1dBO0FBQ0E7QURwQ0E7QUE4QkE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUNTQTtBQUNBO0FEN0NBO0FBc0NBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUNVQTtBQUNBO0FEckRBO0FBNkNBO0FBQ0E7QUFDQTtBQ1dBO0FBQ0E7QURmQTtBQU1BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQ1lBO0FBQ0E7QUR0Q0E7QUErQkE7QUFDQTtBQUNBO0FDVUE7QUFDQTtBRHpFQTtBQWlFQTtBQUNBO0FDV0E7QUFDQTtBRDlFQTs7QUFzRUE7QUFDQTtBQUNBO0FDWUE7QUFDQTtBRHJGQTtBQTZFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FDV0E7QUFDQTtBRGhFQTtBQXdEQTtBQ1dBO0FBQ0E7QURwRUE7QUEyREE7QUNZQTtBQUNBO0FEckdBOzs7O0FBK0ZBO0FDWUE7QUFDQTtBRDVHQTs7QUFxR0E7QUNXQTtBQUNBO0FEakhBOztBQXlHQTtBQUNBO0FDWUE7QUFDQTtBRE5BO0FBQ0E7QUNRQTtBQUNBO0FEUkE7OztBQUNBO0FDWUE7QUFDQTtBRGhCQTtBQU9BO0FBQ0E7QUNZQTtBQUNBO0FEVEE7QUFFQTtBQ1VBO0FBQ0E7QURaQTtBQUdBO0FBQ0E7QUNZQTtBQUNBO0FEWkE7QUFDQTtBQUNBO0FDY0E7QUFDQTtBRHZCQTtBQWFBO0FDYUE7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=*/
1
  /*!
2
+ * WooCommerce Variation Swatches v1.0.18
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-4-9 23:49:39
6
  * Released under the GPLv3 license.
7
  */
8
  .variable-items-wrapper {
12
  -ms-flex-wrap: wrap;
13
  flex-wrap: wrap;
14
  margin: 0;
15
+ padding: 0;
16
  }
17
 
18
  .variable-items-wrapper.radio-variable-wrapper {
21
  display: block;
22
  }
23
 
24
+ .variable-items-wrapper .variable-item {
25
+ margin: 0;
26
+ padding: 0;
27
+ list-style: none;
28
+ -webkit-transition: all 200ms ease;
29
+ transition: all 200ms ease;
30
+ }
31
+
32
+ .variable-items-wrapper .variable-item.disabled,
33
+ .variable-items-wrapper .variable-item.disabled:hover {
34
+ cursor: not-allowed;
35
+ opacity: 0.4;
36
+ }
37
+
38
+ .variable-items-wrapper .variable-item.disabled label,
39
+ .variable-items-wrapper .variable-item.disabled input,
40
+ .variable-items-wrapper .variable-item.disabled:hover label,
41
+ .variable-items-wrapper .variable-item.disabled:hover input {
42
+ cursor: not-allowed;
43
+ }
44
+
45
  .variable-items-wrapper .radio-variable-item {
46
  -webkit-box-sizing: border-box;
47
  box-sizing: border-box;
55
  cursor: pointer;
56
  }
57
 
 
 
 
 
 
 
 
 
 
 
 
 
 
58
  .variable-items-wrapper .variable-item:not(.radio-variable-item) {
59
  -webkit-box-sizing: border-box;
60
  box-sizing: border-box;
 
61
  cursor: pointer;
62
  display: -webkit-box;
63
  display: -ms-flexbox;
87
  .variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item span::after {
88
  position: absolute;
89
  content: "";
90
+ width: 100%;
91
+ height: 100%;
92
+ top: 0;
93
+ left: 0;
94
  -webkit-box-shadow: inset 0 0 1px 0 rgba(0, 0, 0, 0.5);
95
  box-shadow: inset 0 0 1px 0 rgba(0, 0, 0, 0.5);
96
  }
141
  border: 1px solid #000000;
142
  }
143
 
 
 
 
 
 
 
144
  .woo-variation-swatches-style-rounded .variable-item {
145
  border-radius: 100%;
146
  }
174
  border-radius: 0;
175
  }
176
 
177
+ .woo-variation-swatches-attribute-behavior-blur .variable-item.disabled,
178
+ .woo-variation-swatches-attribute-behavior-blur .variable-item.disabled:hover {
179
+ cursor: not-allowed;
180
+ opacity: 0.3;
181
+ }
182
+
183
+ .woo-variation-swatches-attribute-behavior-blur .variable-item.disabled label,
184
+ .woo-variation-swatches-attribute-behavior-blur .variable-item.disabled input,
185
+ .woo-variation-swatches-attribute-behavior-blur .variable-item.disabled:hover label,
186
+ .woo-variation-swatches-attribute-behavior-blur .variable-item.disabled:hover input {
187
+ cursor: not-allowed;
188
+ text-decoration: line-through;
189
+ }
190
+
191
+ .woo-variation-swatches-attribute-behavior-hide .variable-item.disabled {
192
+ opacity: 0;
193
+ visibility: hidden;
194
+ -webkit-transform: scale(0);
195
+ transform: scale(0);
196
+ width: 0 !important;
197
+ height: 0 !important;
198
+ padding: 0 !important;
199
+ margin: 0 !important;
200
+ /*display : none;*/
201
+ }
202
+
203
+ .woo-variation-swatches-attribute-behavior-hide .variable-item.disabled.radio-variable-item {
204
+ width: auto !important;
205
+ }
206
+
207
 
208
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2Nzcy9mcm9udGVuZC5jc3MiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9zcmMvc2Nzcy9mcm9udGVuZC5zY3NzIiwid2VicGFjazovLy8uL2Zyb250ZW5kLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIge1xuICBkaXNwbGF5ICAgOiBmbGV4O1xuICBmbGV4LXdyYXAgOiB3cmFwO1xuICBtYXJnaW4gICAgOiAwO1xuICBwYWRkaW5nICAgOiAwO1xuXG4gICYucmFkaW8tdmFyaWFibGUtd3JhcHBlciB7XG4gICAgLypkaXNwbGF5ICAgICAgICA6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uIDogY29sdW1uOyovXG4gICAgZGlzcGxheSA6IGJsb2NrO1xuICAgIH1cblxuICAudmFyaWFibGUtaXRlbSB7XG4gICAgbWFyZ2luICAgICA6IDA7XG4gICAgcGFkZGluZyAgICA6IDA7XG4gICAgbGlzdC1zdHlsZSA6IG5vbmU7XG4gICAgdHJhbnNpdGlvbiA6IGFsbCAyMDBtcyBlYXNlO1xuICAgICYuZGlzYWJsZWQsXG4gICAgJi5kaXNhYmxlZDpob3ZlciB7XG4gICAgICBjdXJzb3IgIDogbm90LWFsbG93ZWQ7XG4gICAgICBvcGFjaXR5IDogMC40O1xuICAgICAgbGFiZWwsIGlucHV0IHtcbiAgICAgICAgY3Vyc29yIDogbm90LWFsbG93ZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgLnJhZGlvLXZhcmlhYmxlLWl0ZW0ge1xuICAgIGJveC1zaXppbmcgOiBib3JkZXItYm94O1xuICAgIGxpc3Qtc3R5bGUgOiBub25lO1xuICAgIGN1cnNvciAgICAgOiBwb2ludGVyO1xuICAgIG1hcmdpbiAgICAgOiAwO1xuICAgIGxhYmVsLCBpbnB1dCB7XG4gICAgICBjdXJzb3IgOiBwb2ludGVyO1xuICAgICAgfVxuICAgIH1cblxuICAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pIHtcbiAgICBib3gtc2l6aW5nICAgICAgOiBib3JkZXItYm94O1xuICAgIGN1cnNvciAgICAgICAgICA6IHBvaW50ZXI7XG4gICAgZGlzcGxheSAgICAgICAgIDogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQgOiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXMgICAgIDogY2VudGVyO1xuXG4gICAgJi5jb2xvci12YXJpYWJsZS1pdGVtIHtcbiAgICAgIHBhZGRpbmcgOiAycHg7XG4gICAgICBtYXJnaW4gIDogMnB4O1xuICAgICAgd2lkdGggICA6IDMwcHg7XG4gICAgICBoZWlnaHQgIDogMzBweDtcbiAgICAgIGJvcmRlciAgOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgd2lkdGggICAgOiAyMHB4O1xuICAgICAgICBoZWlnaHQgICA6IDIwcHg7XG4gICAgICAgIHBvc2l0aW9uIDogcmVsYXRpdmU7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uICAgOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50ICAgIDogXCJcIjtcbiAgICAgICAgICB3aWR0aCAgICAgIDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQgICAgIDogMTAwJTtcbiAgICAgICAgICB0b3AgICAgICAgIDogMDtcbiAgICAgICAgICBsZWZ0ICAgICAgIDogMDtcbiAgICAgICAgICBib3gtc2hhZG93IDogaW5zZXQgMCAwIDFweCAwIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICYuYnV0dG9uLXZhcmlhYmxlLWl0ZW0ge1xuICAgICAgcGFkZGluZyA6IDJweDtcbiAgICAgIG1hcmdpbiAgOiAycHg7XG4gICAgICBib3JkZXIgIDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZSAgIDogMXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQgOiAxO1xuICAgICAgICB9XG4gICAgICAmLnNlbGVjdGVkLFxuICAgICAgJi5zZWxlY3RlZDpob3ZlciB7XG4gICAgICAgIGJvcmRlciAgICAgOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICAgICAgYmFja2dyb3VuZCA6ICMwMDAwMDA7XG4gICAgICAgIGNvbG9yICAgICAgOiAjRkZGRkZGO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAmLmltYWdlLXZhcmlhYmxlLWl0ZW0ge1xuICAgICAgcGFkZGluZyA6IDJweDtcbiAgICAgIG1hcmdpbiAgOiAycHg7XG4gICAgICB3aWR0aCAgIDogNDBweDtcbiAgICAgIGhlaWdodCAgOiA0MHB4O1xuICAgICAgYm9yZGVyICA6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICB9XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tcmlnaHQgOiAwO1xuICAgICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXIgOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICAgIH1cblxuICAgICYuY29sb3ItdmFyaWFibGUtaXRlbSxcbiAgICAmLmltYWdlLXZhcmlhYmxlLWl0ZW0ge1xuICAgICAgJi5zZWxlY3RlZCxcbiAgICAgICYuc2VsZWN0ZWQ6aG92ZXIge1xuICAgICAgICBib3JkZXIgOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgJi5zZWxlY3RlZCxcbiAgICAmLnNlbGVjdGVkOmhvdmVyIHtcbiAgICAgIGJvcmRlciA6IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4ud29vLXZhcmlhdGlvbi1zd2F0Y2hlcy1zdHlsZSB7XG4gICYtcm91bmRlZCB7XG4gICAgLnZhcmlhYmxlLWl0ZW0ge1xuICAgICAgYm9yZGVyLXJhZGl1cyA6IDEwMCU7XG4gICAgICBzcGFuLCBpbWcsIHNwYW46OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1cyA6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgJi5idXR0b24tdmFyaWFibGUtaXRlbSB7XG4gICAgICAgIHdpZHRoICA6IDM2cHg7XG4gICAgICAgIGhlaWdodCA6IDM2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICYtc3F1YXJlZCB7XG4gICAgLnZhcmlhYmxlLWl0ZW0ge1xuICAgICAgYm9yZGVyLXJhZGl1cyA6IDA7XG4gICAgICAmLmJ1dHRvbi12YXJpYWJsZS1pdGVtIHtcbiAgICAgICAgd2lkdGggIDogYXV0bztcbiAgICAgICAgaGVpZ2h0IDogMzZweDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgd2lkdGggICA6IGF1dG87XG4gICAgICAgICAgcGFkZGluZyA6IDAgMXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICYuY29sb3ItdmFyaWFibGUtaXRlbSBzcGFuIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXMgOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4ud29vLXZhcmlhdGlvbi1zd2F0Y2hlcy1hdHRyaWJ1dGUtYmVoYXZpb3Ige1xuICAmLWJsdXIge1xuICAgIC52YXJpYWJsZS1pdGVtIHtcbiAgICAgICYuZGlzYWJsZWQsXG4gICAgICAmLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yICA6IG5vdC1hbGxvd2VkO1xuICAgICAgICBvcGFjaXR5IDogMC4zO1xuICAgICAgICBsYWJlbCwgaW5wdXQge1xuICAgICAgICAgIGN1cnNvciAgICAgICAgICA6IG5vdC1hbGxvd2VkO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbiA6IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICYtaGlkZSB7XG4gICAgLnZhcmlhYmxlLWl0ZW0ge1xuICAgICAgJi5kaXNhYmxlZCB7XG5cbiAgICAgICAgJi5yYWRpby12YXJpYWJsZS1pdGVtIHtcbiAgICAgICAgICB3aWR0aCA6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgb3BhY2l0eSAgICA6IDA7XG4gICAgICAgIHZpc2liaWxpdHkgOiBoaWRkZW47XG4gICAgICAgIHRyYW5zZm9ybSAgOiBzY2FsZSgwKTtcbiAgICAgICAgd2lkdGggICAgICA6IDAgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0ICAgICA6IDAgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZyAgICA6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luICAgICA6IDAgIWltcG9ydGFudDtcbiAgICAgICAgLypkaXNwbGF5IDogbm9uZTsqL1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9zcmMvc2Nzcy9zcmMvc2Nzcy9mcm9udGVuZC5zY3NzIiwiLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIucmFkaW8tdmFyaWFibGUtd3JhcHBlciB7XG4gIC8qZGlzcGxheSAgICAgICAgOiBpbmxpbmUtZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbiA6IGNvbHVtbjsqL1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW0ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbS5kaXNhYmxlZCxcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtLmRpc2FibGVkOmhvdmVyIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgb3BhY2l0eTogMC40O1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbS5kaXNhYmxlZCBsYWJlbCxcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtLmRpc2FibGVkIGlucHV0LFxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW0uZGlzYWJsZWQ6aG92ZXIgbGFiZWwsXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbS5kaXNhYmxlZDpob3ZlciBpbnB1dCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC5yYWRpby12YXJpYWJsZS1pdGVtIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW46IDA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC5yYWRpby12YXJpYWJsZS1pdGVtIGxhYmVsLFxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnJhZGlvLXZhcmlhYmxlLWl0ZW0gaW5wdXQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLmNvbG9yLXZhcmlhYmxlLWl0ZW0ge1xuICBwYWRkaW5nOiAycHg7XG4gIG1hcmdpbjogMnB4O1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuY29sb3ItdmFyaWFibGUtaXRlbSBzcGFuIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLmNvbG9yLXZhcmlhYmxlLWl0ZW0gc3Bhbjo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDFweCAwIHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW06bm90KC5yYWRpby12YXJpYWJsZS1pdGVtKS5idXR0b24tdmFyaWFibGUtaXRlbSB7XG4gIHBhZGRpbmc6IDJweDtcbiAgbWFyZ2luOiAycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW06bm90KC5yYWRpby12YXJpYWJsZS1pdGVtKS5idXR0b24tdmFyaWFibGUtaXRlbSBzcGFuIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW06bm90KC5yYWRpby12YXJpYWJsZS1pdGVtKS5idXR0b24tdmFyaWFibGUtaXRlbS5zZWxlY3RlZCxcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuYnV0dG9uLXZhcmlhYmxlLWl0ZW0uc2VsZWN0ZWQ6aG92ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW06bm90KC5yYWRpby12YXJpYWJsZS1pdGVtKS5pbWFnZS12YXJpYWJsZS1pdGVtIHtcbiAgcGFkZGluZzogMnB4O1xuICBtYXJnaW46IDJweDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXIgLnZhcmlhYmxlLWl0ZW06bm90KC5yYWRpby12YXJpYWJsZS1pdGVtKTpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuY29sb3ItdmFyaWFibGUtaXRlbS5zZWxlY3RlZCxcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuY29sb3ItdmFyaWFibGUtaXRlbS5zZWxlY3RlZDpob3Zlcixcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuaW1hZ2UtdmFyaWFibGUtaXRlbS5zZWxlY3RlZCxcbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuaW1hZ2UtdmFyaWFibGUtaXRlbS5zZWxlY3RlZDpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDA7XG59XG5cbi52YXJpYWJsZS1pdGVtcy13cmFwcGVyIC52YXJpYWJsZS1pdGVtOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSkuc2VsZWN0ZWQsXG4udmFyaWFibGUtaXRlbXMtd3JhcHBlciAudmFyaWFibGUtaXRlbTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pLnNlbGVjdGVkOmhvdmVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbn1cblxuLndvby12YXJpYXRpb24tc3dhdGNoZXMtc3R5bGUtcm91bmRlZCAudmFyaWFibGUtaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG5cbi53b28tdmFyaWF0aW9uLXN3YXRjaGVzLXN0eWxlLXJvdW5kZWQgLnZhcmlhYmxlLWl0ZW0gc3Bhbixcbi53b28tdmFyaWF0aW9uLXN3YXRjaGVzLXN0eWxlLXJvdW5kZWQgLnZhcmlhYmxlLWl0ZW0gaW1nLFxuLndvby12YXJpYXRpb24tc3dhdGNoZXMtc3R5bGUtcm91bmRlZCAudmFyaWFibGUtaXRlbSBzcGFuOjphZnRlciB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG5cbi53b28tdmFyaWF0aW9uLXN3YXRjaGVzLXN0eWxlLXJvdW5kZWQgLnZhcmlhYmxlLWl0ZW0uYnV0dG9uLXZhcmlhYmxlLWl0ZW0ge1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xufVxuXG4ud29vLXZhcmlhdGlvbi1zd2F0Y2hlcy1zdHlsZS1zcXVhcmVkIC52YXJpYWJsZS1pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLndvby12YXJpYXRpb24tc3dhdGNoZXMtc3R5bGUtc3F1YXJlZCAudmFyaWFibGUtaXRlbS5idXR0b24tdmFyaWFibGUtaXRlbSB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDM2cHg7XG59XG5cbi53b28tdmFyaWF0aW9uLXN3YXRjaGVzLXN0eWxlLXNxdWFyZWQgLnZhcmlhYmxlLWl0ZW0uYnV0dG9uLXZhcmlhYmxlLWl0ZW0gc3BhbiB7XG4gIHdpZHRoOiBhdXRvO1xuICBwYWRkaW5nOiAwIDFyZW07XG59XG5cbi53b28tdmFyaWF0aW9uLXN3YXRjaGVzLXN0eWxlLXNxdWFyZWQgLnZhcmlhYmxlLWl0ZW0uY29sb3ItdmFyaWFibGUtaXRlbSBzcGFuOjphZnRlciB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi53b28tdmFyaWF0aW9uLXN3YXRjaGVzLWF0dHJpYnV0ZS1iZWhhdmlvci1ibHVyIC52YXJpYWJsZS1pdGVtLmRpc2FibGVkLFxuLndvby12YXJpYXRpb24tc3dhdGNoZXMtYXR0cmlidXRlLWJlaGF2aW9yLWJsdXIgLnZhcmlhYmxlLWl0ZW0uZGlzYWJsZWQ6aG92ZXIge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBvcGFjaXR5OiAwLjM7XG59XG5cbi53b28tdmFyaWF0aW9uLXN3YXRjaGVzLWF0dHJpYnV0ZS1iZWhhdmlvci1ibHVyIC52YXJpYWJsZS1pdGVtLmRpc2FibGVkIGxhYmVsLFxuLndvby12YXJpYXRpb24tc3dhdGNoZXMtYXR0cmlidXRlLWJlaGF2aW9yLWJsdXIgLnZhcmlhYmxlLWl0ZW0uZGlzYWJsZWQgaW5wdXQsXG4ud29vLXZhcmlhdGlvbi1zd2F0Y2hlcy1hdHRyaWJ1dGUtYmVoYXZpb3ItYmx1ciAudmFyaWFibGUtaXRlbS5kaXNhYmxlZDpob3ZlciBsYWJlbCxcbi53b28tdmFyaWF0aW9uLXN3YXRjaGVzLWF0dHJpYnV0ZS1iZWhhdmlvci1ibHVyIC52YXJpYWJsZS1pdGVtLmRpc2FibGVkOmhvdmVyIGlucHV0IHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG5cbi53b28tdmFyaWF0aW9uLXN3YXRjaGVzLWF0dHJpYnV0ZS1iZWhhdmlvci1oaWRlIC52YXJpYWJsZS1pdGVtLmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgLypkaXNwbGF5IDogbm9uZTsqL1xufVxuXG4ud29vLXZhcmlhdGlvbi1zd2F0Y2hlcy1hdHRyaWJ1dGUtYmVoYXZpb3ItaGlkZSAudmFyaWFibGUtaXRlbS5kaXNhYmxlZC5yYWRpby12YXJpYWJsZS1pdGVtIHtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vZnJvbnRlbmQuc2NzcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ0E7QUFBQTtBQUFBO0FBQ0E7QUFBQTtBQUNBO0FBQ0E7QUNDQTtBQUNBO0FETkE7QUFPQTtBQ0VBO0FEQUE7QUNFQTtBQUNBO0FEWkE7QUFhQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FDRUE7QUFDQTtBRFBBOztBQU9BO0FBQ0E7QUNJQTtBQUNBO0FESkE7Ozs7QUFDQTtBQ1NBO0FBQ0E7QURoQ0E7QUE0QkE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQ09BO0FBQ0E7QUR2Q0E7O0FBaUNBO0FDVUE7QUFDQTtBRDVDQTtBQXNDQTtBQUFBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUFBO0FBQUE7QUNTQTtBQUNBO0FEcERBO0FBNkNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUNVQTtBQUNBO0FEVEE7QUFDQTtBQUNBO0FBQ0E7QUNXQTtBQUNBO0FEbEVBO0FBeURBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUNZQTtBQUNBO0FENUVBO0FBcUVBO0FBQ0E7QUFDQTtBQ1VBO0FBQ0E7QURsRkE7QUEwRUE7QUFDQTtBQ1dBO0FBQ0E7QURsREE7O0FBMENBO0FBQ0E7QUFDQTtBQ1lBO0FBQ0E7QUQ5RkE7QUFzRkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQ1dBO0FBQ0E7QUR0R0E7QUE4RkE7QUNXQTtBQUNBO0FEMUdBO0FBa0dBO0FDV0E7QUFDQTtBRDlHQTs7OztBQXlHQTtBQ1dBO0FBQ0E7QURySEE7O0FBK0dBO0FDVUE7QUFDQTtBRExBO0FBRUE7QUNNQTtBQUNBO0FETkE7OztBQUNBO0FDVUE7QUFDQTtBRGZBO0FBUUE7QUFDQTtBQ1VBO0FBQ0E7QUROQTtBQUNBO0FDUUE7QUFDQTtBRFhBO0FBSUE7QUFDQTtBQ1VBO0FBQ0E7QURoQkE7QUFPQTtBQUNBO0FDWUE7QUFDQTtBRFZBO0FBRUE7QUNXQTtBQUNBO0FESkE7O0FBSUE7QUFDQTtBQ0lBO0FBQ0E7QURKQTs7OztBQUNBO0FBQ0E7QUNTQTtBQUNBO0FESkE7QUFPQTtBQUNBO0FBQ0E7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUNBQTtBQUNBO0FEZkE7QUFJQTtBQ2NBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9*/
assets/css/frontend.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * WooCommerce Variation Swatches v1.0.17
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2018-3-30 14:42:03
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;margin:0}.variable-items-wrapper.radio-variable-wrapper{display:block}.variable-items-wrapper .radio-variable-item{-webkit-box-sizing:border-box;box-sizing:border-box;list-style:none;cursor:pointer;margin:0}.variable-items-wrapper .radio-variable-item input,.variable-items-wrapper .radio-variable-item label{cursor:pointer}.variable-items-wrapper .radio-variable-item.disabled,.variable-items-wrapper .radio-variable-item.disabled:hover{cursor:not-allowed;opacity:.5}.variable-items-wrapper .radio-variable-item.disabled:hover input,.variable-items-wrapper .radio-variable-item.disabled:hover label,.variable-items-wrapper .radio-variable-item.disabled input,.variable-items-wrapper .radio-variable-item.disabled label{cursor:not-allowed}.variable-items-wrapper .variable-item:not(.radio-variable-item){-webkit-box-sizing:border-box;box-sizing:border-box;list-style:none;cursor:pointer;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:not(.radio-variable-item).color-variable-item{padding:2px;margin:2px;width:30px;height:30px;border:1px solid rgba(0,0,0,.2)}.variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item span{width:20px;height:20px;position:relative}.variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item span:after{position:absolute;content:"";width:20px;height:20px;-webkit-box-shadow:inset 0 0 1px 0 rgba(0,0,0,.5);box-shadow:inset 0 0 1px 0 rgba(0,0,0,.5)}.variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item{padding:2px;margin:2px;border:1px solid rgba(0,0,0,.2)}.variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item span{font-size:1rem;line-height:1}.variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item.selected,.variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item.selected:hover{border:1px solid #000;background:#000;color:#fff}.variable-items-wrapper .variable-item:not(.radio-variable-item).image-variable-item{padding:2px;margin:2px;width:40px;height:40px;border:1px solid rgba(0,0,0,.2)}.variable-items-wrapper .variable-item:not(.radio-variable-item):last-of-type{margin-right:0}.variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item.selected,.variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item.selected:hover,.variable-items-wrapper .variable-item:not(.radio-variable-item).image-variable-item.selected,.variable-items-wrapper .variable-item:not(.radio-variable-item).image-variable-item.selected:hover,.variable-items-wrapper .variable-item:not(.radio-variable-item).selected,.variable-items-wrapper .variable-item:not(.radio-variable-item).selected:hover,.variable-items-wrapper .variable-item:not(.radio-variable-item):hover{border:1px solid #000}.variable-items-wrapper .variable-item:not(.radio-variable-item).disabled,.variable-items-wrapper .variable-item:not(.radio-variable-item).disabled:hover{cursor:not-allowed;opacity:.5}.woo-variation-swatches-style-rounded .variable-item,.woo-variation-swatches-style-rounded .variable-item img,.woo-variation-swatches-style-rounded .variable-item span,.woo-variation-swatches-style-rounded .variable-item span:after{border-radius:100%}.woo-variation-swatches-style-rounded .variable-item.button-variable-item{width:36px;height:36px}.woo-variation-swatches-style-squared .variable-item{border-radius:0}.woo-variation-swatches-style-squared .variable-item.button-variable-item{width:auto;height:36px}.woo-variation-swatches-style-squared .variable-item.button-variable-item span{width:auto;padding:0 1rem}.woo-variation-swatches-style-squared .variable-item.color-variable-item span:after{border-radius:0}
1
  /*!
2
+ * WooCommerce Variation Swatches v1.0.18
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-4-9 23:49:43
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;margin:0;padding:0}.variable-items-wrapper.radio-variable-wrapper{display:block}.variable-items-wrapper .variable-item{margin:0;padding:0;list-style:none;-webkit-transition:all .2s ease;transition:all .2s ease}.variable-items-wrapper .variable-item.disabled,.variable-items-wrapper .variable-item.disabled:hover{cursor:not-allowed;opacity:.4}.variable-items-wrapper .variable-item.disabled:hover input,.variable-items-wrapper .variable-item.disabled:hover label,.variable-items-wrapper .variable-item.disabled input,.variable-items-wrapper .variable-item.disabled label{cursor:not-allowed}.variable-items-wrapper .radio-variable-item{-webkit-box-sizing:border-box;box-sizing:border-box;list-style:none;cursor:pointer;margin:0}.variable-items-wrapper .radio-variable-item input,.variable-items-wrapper .radio-variable-item label{cursor:pointer}.variable-items-wrapper .variable-item:not(.radio-variable-item){-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;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:not(.radio-variable-item).color-variable-item{padding:2px;margin:2px;width:30px;height:30px;border:1px solid rgba(0,0,0,.2)}.variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item span{width:20px;height:20px;position:relative}.variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item span:after{position:absolute;content:"";width:100%;height:100%;top:0;left:0;-webkit-box-shadow:inset 0 0 1px 0 rgba(0,0,0,.5);box-shadow:inset 0 0 1px 0 rgba(0,0,0,.5)}.variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item{padding:2px;margin:2px;border:1px solid rgba(0,0,0,.2)}.variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item span{font-size:1rem;line-height:1}.variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item.selected,.variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item.selected:hover{border:1px solid #000;background:#000;color:#fff}.variable-items-wrapper .variable-item:not(.radio-variable-item).image-variable-item{padding:2px;margin:2px;width:40px;height:40px;border:1px solid rgba(0,0,0,.2)}.variable-items-wrapper .variable-item:not(.radio-variable-item):last-of-type{margin-right:0}.variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item.selected,.variable-items-wrapper .variable-item:not(.radio-variable-item).color-variable-item.selected:hover,.variable-items-wrapper .variable-item:not(.radio-variable-item).image-variable-item.selected,.variable-items-wrapper .variable-item:not(.radio-variable-item).image-variable-item.selected:hover,.variable-items-wrapper .variable-item:not(.radio-variable-item).selected,.variable-items-wrapper .variable-item:not(.radio-variable-item).selected:hover,.variable-items-wrapper .variable-item:not(.radio-variable-item):hover{border:1px solid #000}.woo-variation-swatches-style-rounded .variable-item,.woo-variation-swatches-style-rounded .variable-item img,.woo-variation-swatches-style-rounded .variable-item span,.woo-variation-swatches-style-rounded .variable-item span:after{border-radius:100%}.woo-variation-swatches-style-rounded .variable-item.button-variable-item{width:36px;height:36px}.woo-variation-swatches-style-squared .variable-item{border-radius:0}.woo-variation-swatches-style-squared .variable-item.button-variable-item{width:auto;height:36px}.woo-variation-swatches-style-squared .variable-item.button-variable-item span{width:auto;padding:0 1rem}.woo-variation-swatches-style-squared .variable-item.color-variable-item span:after{border-radius:0}.woo-variation-swatches-attribute-behavior-blur .variable-item.disabled,.woo-variation-swatches-attribute-behavior-blur .variable-item.disabled:hover{cursor:not-allowed;opacity:.3}.woo-variation-swatches-attribute-behavior-blur .variable-item.disabled:hover input,.woo-variation-swatches-attribute-behavior-blur .variable-item.disabled:hover label,.woo-variation-swatches-attribute-behavior-blur .variable-item.disabled input,.woo-variation-swatches-attribute-behavior-blur .variable-item.disabled label{cursor:not-allowed;text-decoration:line-through}.woo-variation-swatches-attribute-behavior-hide .variable-item.disabled{opacity:0;visibility:hidden;-webkit-transform:scale(0);transform:scale(0);width:0!important;height:0!important;padding:0!important;margin:0!important}.woo-variation-swatches-attribute-behavior-hide .variable-item.disabled.radio-variable-item{width:auto!important}
assets/css/wvs-customize-heading-control.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * WooCommerce Variation Swatches v1.0.17
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2018-3-30 14:41:58
6
  * Released under the GPLv3 license.
7
  */
8
  .accordion-section-content li:nth-child(2).customize-control-wvs-heading .wvs-customize-heading-control-title {
1
  /*!
2
+ * WooCommerce Variation Swatches v1.0.18
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-4-9 23:49:39
6
  * Released under the GPLv3 license.
7
  */
8
  .accordion-section-content li:nth-child(2).customize-control-wvs-heading .wvs-customize-heading-control-title {
assets/css/wvs-customize-heading-control.min.css CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * WooCommerce Variation Swatches v1.0.17
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2018-3-30 14:42:03
6
  * Released under the GPLv3 license.
7
  */
8
  .accordion-section-content li:nth-child(2).customize-control-wvs-heading .wvs-customize-heading-control-title{margin-top:-15px;margin-bottom:0}.wvs-customize-heading-control-title{background-color:#191e23;padding:10px 15px;color:#fff;margin:5px -15px;font-size:1rem;font-weight:200;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
1
  /*!
2
+ * WooCommerce Variation Swatches v1.0.18
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-4-9 23:49:43
6
  * Released under the GPLv3 license.
7
  */
8
  .accordion-section-content li:nth-child(2).customize-control-wvs-heading .wvs-customize-heading-control-title{margin-top:-15px;margin-bottom:0}.wvs-customize-heading-control-title{background-color:#191e23;padding:10px 15px;color:#fff;margin:5px -15px;font-size:1rem;font-weight:200;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
assets/js/admin.js CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * WooCommerce Variation Swatches v1.0.17
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2018-3-30 14:41:58
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
@@ -382,4 +382,4 @@ var PluginHelper = function ($) {
382
 
383
  /***/ })
384
  /******/ ]);
385
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2pzL2FkbWluLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL3dlYnBhY2svYm9vdHN0cmFwIDQ4NmZjNjZjNGExYTBiOGFiNWVlIiwid2VicGFjazovLy9zcmMvanMvYmFja2VuZC5qcyIsIndlYnBhY2s6Ly8vc3JjL2pzL1BsdWdpbkhlbHBlci5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9iYWNrZW5kLnNjc3M/YmU2MSIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9mcm9udGVuZC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9jdXN0b21pemUtaGVhZGluZy1jb250cm9sLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiIFx0Ly8gVGhlIG1vZHVsZSBjYWNoZVxuIFx0dmFyIGluc3RhbGxlZE1vZHVsZXMgPSB7fTtcblxuIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbiBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblxuIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbiBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbiBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbiBcdFx0fVxuIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4gXHRcdFx0aTogbW9kdWxlSWQsXG4gXHRcdFx0bDogZmFsc2UsXG4gXHRcdFx0ZXhwb3J0czoge31cbiBcdFx0fTtcblxuIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbiBcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cbiBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuIFx0XHRtb2R1bGUubCA9IHRydWU7XG5cbiBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbiBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuIFx0fVxuXG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlcyBvYmplY3QgKF9fd2VicGFja19tb2R1bGVzX18pXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm0gPSBtb2R1bGVzO1xuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZSBjYWNoZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5jID0gaW5zdGFsbGVkTW9kdWxlcztcblxuIFx0Ly8gZGVmaW5lIGdldHRlciBmdW5jdGlvbiBmb3IgaGFybW9ueSBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSBmdW5jdGlvbihleHBvcnRzLCBuYW1lLCBnZXR0ZXIpIHtcbiBcdFx0aWYoIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBuYW1lKSkge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBuYW1lLCB7XG4gXHRcdFx0XHRjb25maWd1cmFibGU6IGZhbHNlLFxuIFx0XHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcbiBcdFx0XHRcdGdldDogZ2V0dGVyXG4gXHRcdFx0fSk7XG4gXHRcdH1cbiBcdH07XG5cbiBcdC8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSBmdW5jdGlvbihtb2R1bGUpIHtcbiBcdFx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIG1vZHVsZVsnZGVmYXVsdCddOyB9IDpcbiBcdFx0XHRmdW5jdGlvbiBnZXRNb2R1bGVFeHBvcnRzKCkgeyByZXR1cm4gbW9kdWxlOyB9O1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCAnYScsIGdldHRlcik7XG4gXHRcdHJldHVybiBnZXR0ZXI7XG4gXHR9O1xuXG4gXHQvLyBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGxcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubyA9IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KTsgfTtcblxuIFx0Ly8gX193ZWJwYWNrX3B1YmxpY19wYXRoX19cbiBcdF9fd2VicGFja19yZXF1aXJlX18ucCA9IFwiXCI7XG5cbiBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuIFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gMCk7XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gd2VicGFjay9ib290c3RyYXAgNDg2ZmM2NmM0YTFhMGI4YWI1ZWUiLCJqUXVlcnkoJCA9PiB7XG4gICAgaW1wb3J0KCcuL1BsdWdpbkhlbHBlcicpLnRoZW4oKHtQbHVnaW5IZWxwZXJ9KSA9PiB7XG4gICAgICAgIFBsdWdpbkhlbHBlci5TZWxlY3RXb28oKTtcbiAgICAgICAgUGx1Z2luSGVscGVyLkNvbG9yUGlja2VyKCk7XG4gICAgICAgIFBsdWdpbkhlbHBlci5GaWVsZERlcGVuZGVuY3koKTtcbiAgICAgICAgUGx1Z2luSGVscGVyLkltYWdlVXBsb2FkZXIoKTtcbiAgICAgICAgUGx1Z2luSGVscGVyLkF0dHJpYnV0ZURpYWxvZygpO1xuICAgICAgICAkKGRvY3VtZW50LmJvZHkpLm9uKCd3b29jb21tZXJjZV9hZGRlZF9hdHRyaWJ1dGUnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBQbHVnaW5IZWxwZXIuU2VsZWN0V29vKCk7XG4gICAgICAgICAgICBQbHVnaW5IZWxwZXIuQ29sb3JQaWNrZXIoKTtcbiAgICAgICAgICAgIFBsdWdpbkhlbHBlci5JbWFnZVVwbG9hZGVyKCk7XG4gICAgICAgICAgICBQbHVnaW5IZWxwZXIuQXR0cmlidXRlRGlhbG9nKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgICQoZG9jdW1lbnQuYm9keSkub24oJ3d2c19wcm9fcHJvZHVjdF9zd2F0Y2hlc192YXJpYXRpb25fbG9hZGVkJywgKCkgPT4ge1xuICAgICAgICAgICAgUGx1Z2luSGVscGVyLkNvbG9yUGlja2VyKCk7XG4gICAgICAgICAgICBQbHVnaW5IZWxwZXIuSW1hZ2VVcGxvYWRlcigpO1xuICAgICAgICB9KVxuICAgIH0pO1xufSk7ICAvLyBlbmQgb2YganF1ZXJ5IG1haW4gd3JhcHBlclxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBzcmMvanMvYmFja2VuZC5qcyIsIi8qZ2xvYmFsIFdWU1BsdWdpbk9iamVjdCwgd3AsIHdvb2NvbW1lcmNlX2FkbWluX21ldGFfYm94ZXMqL1xuXG5jb25zdCBQbHVnaW5IZWxwZXIgPSAoKCQpID0+IHtcbiAgICBjbGFzcyBQbHVnaW5IZWxwZXIge1xuXG4gICAgICAgIHN0YXRpYyBJbWFnZVVwbG9hZGVyKCkge1xuICAgICAgICAgICAgJChkb2N1bWVudCkub2ZmKCdjbGljaycsICdidXR0b24ud3ZzX3VwbG9hZF9pbWFnZV9idXR0b24nKTtcbiAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICdidXR0b24ud3ZzX3VwbG9hZF9pbWFnZV9idXR0b24nLCB0aGlzLkFkZEltYWdlKTtcbiAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICdidXR0b24ud3ZzX3JlbW92ZV9pbWFnZV9idXR0b24nLCB0aGlzLlJlbW92ZUltYWdlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0YXRpYyBBZGRJbWFnZShldmVudCkge1xuXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgICAgIGxldCBmaWxlX2ZyYW1lO1xuXG4gICAgICAgICAgICBpZiAodHlwZW9mIHdwICE9PSAndW5kZWZpbmVkJyAmJiB3cC5tZWRpYSAmJiB3cC5tZWRpYS5lZGl0b3IpIHtcblxuICAgICAgICAgICAgICAgIC8vIElmIHRoZSBtZWRpYSBmcmFtZSBhbHJlYWR5IGV4aXN0cywgcmVvcGVuIGl0LlxuICAgICAgICAgICAgICAgIGlmIChmaWxlX2ZyYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGVfZnJhbWUub3BlbigpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gQ3JlYXRlIHRoZSBtZWRpYSBmcmFtZS5cbiAgICAgICAgICAgICAgICBmaWxlX2ZyYW1lID0gd3AubWVkaWEuZnJhbWVzLnNlbGVjdF9pbWFnZSA9IHdwLm1lZGlhKHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGUgICAgOiBXVlNQbHVnaW5PYmplY3QubWVkaWFfdGl0bGUsXG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbiAgIDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCA6IFdWU1BsdWdpbk9iamVjdC5idXR0b25fdGl0bGVcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGUgOiBmYWxzZSxcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIC8vIFdoZW4gYW4gaW1hZ2UgaXMgc2VsZWN0ZWQsIHJ1biBhIGNhbGxiYWNrLlxuICAgICAgICAgICAgICAgIGZpbGVfZnJhbWUub24oJ3NlbGVjdCcsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGF0dGFjaG1lbnQgPSBmaWxlX2ZyYW1lLnN0YXRlKCkuZ2V0KCdzZWxlY3Rpb24nKS5maXJzdCgpLnRvSlNPTigpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICgkLnRyaW0oYXR0YWNobWVudC5pZCkgIT09ICcnKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB1cmwgPSAodHlwZW9mKGF0dGFjaG1lbnQuc2l6ZXMudGh1bWJuYWlsKSA9PT0gJ3VuZGVmaW5lZCcpID8gYXR0YWNobWVudC5zaXplcy5mdWxsLnVybCA6IGF0dGFjaG1lbnQuc2l6ZXMudGh1bWJuYWlsLnVybDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5wcmV2KCkudmFsKGF0dGFjaG1lbnQuaWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5jbG9zZXN0KCcubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyJykuZmluZCgnaW1nJykuYXR0cignc3JjJywgdXJsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykubmV4dCgpLnNob3coKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAvL2ZpbGVfZnJhbWUuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIC8vIFdoZW4gb3BlbiBzZWxlY3Qgc2VsZWN0ZWRcbiAgICAgICAgICAgICAgICBmaWxlX2ZyYW1lLm9uKCdvcGVuJywgKCkgPT4ge1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIEdyYWIgb3VyIGF0dGFjaG1lbnQgc2VsZWN0aW9uIGFuZCBjb25zdHJ1Y3QgYSBKU09OIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbC5cbiAgICAgICAgICAgICAgICAgICAgbGV0IHNlbGVjdGlvbiAgPSBmaWxlX2ZyYW1lLnN0YXRlKCkuZ2V0KCdzZWxlY3Rpb24nKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGN1cnJlbnQgICAgPSAkKHRoaXMpLnByZXYoKS52YWwoKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGF0dGFjaG1lbnQgPSB3cC5tZWRpYS5hdHRhY2htZW50KGN1cnJlbnQpO1xuICAgICAgICAgICAgICAgICAgICBhdHRhY2htZW50LmZldGNoKCk7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGlvbi5hZGQoYXR0YWNobWVudCA/IFthdHRhY2htZW50XSA6IFtdKTtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIC8vIEZpbmFsbHksIG9wZW4gdGhlIG1vZGFsLlxuICAgICAgICAgICAgICAgIGZpbGVfZnJhbWUub3BlbigpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIFJlbW92ZUltYWdlKGV2ZW50KSB7XG5cbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgbGV0IHBsYWNlaG9sZGVyID0gJCh0aGlzKS5jbG9zZXN0KCcubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyJykuZmluZCgnaW1nJykuZGF0YSgncGxhY2Vob2xkZXInKTtcbiAgICAgICAgICAgICQodGhpcykuY2xvc2VzdCgnLm1ldGEtaW1hZ2UtZmllbGQtd3JhcHBlcicpLmZpbmQoJ2ltZycpLmF0dHIoJ3NyYycsIHBsYWNlaG9sZGVyKTtcbiAgICAgICAgICAgICQodGhpcykucHJldigpLnByZXYoKS52YWwoJycpO1xuICAgICAgICAgICAgJCh0aGlzKS5oaWRlKCk7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBzdGF0aWMgU2VsZWN0V29vKHNlbGVjdG9yID0gJ3NlbGVjdC53dnMtc2VsZWN0d29vJykge1xuICAgICAgICAgICAgaWYgKCQoKS5zZWxlY3RXb28pIHtcbiAgICAgICAgICAgICAgICAkKHNlbGVjdG9yKS5zZWxlY3RXb28oe1xuICAgICAgICAgICAgICAgICAgICBhbGxvd0NsZWFyIDogdHJ1ZVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIENvbG9yUGlja2VyKHNlbGVjdG9yID0gJ2lucHV0Lnd2cy1jb2xvci1waWNrZXInKSB7XG4gICAgICAgICAgICBpZiAoJCgpLndwQ29sb3JQaWNrZXIpIHtcbiAgICAgICAgICAgICAgICAkKHNlbGVjdG9yKS53cENvbG9yUGlja2VyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzdGF0aWMgRmllbGREZXBlbmRlbmN5KHNlbGVjdG9yID0gJ1tkYXRhLWRlcGVuZHNdJykge1xuICAgICAgICAgICAgaWYgKCQoKS5Gb3JtRmllbGREZXBlbmRlbmN5KSB7XG4gICAgICAgICAgICAgICAgJChzZWxlY3RvcikuRm9ybUZpZWxkRGVwZW5kZW5jeSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIHNhdmluZ0RpYWxvZygkd3JhcHBlciwgJGRpYWxvZywgdGF4b25vbXkpIHtcblxuICAgICAgICAgICAgbGV0IGRhdGEgPSB7fTtcbiAgICAgICAgICAgIGxldCB0ZXJtID0gJyc7XG5cbiAgICAgICAgICAgIC8vIEBUT0RPOiBXZSBzaG91bGQgdXNlIGZvcm0gZGF0YSwgYmVjYXVzZSB3ZSBoYXZlIHRvIHBpY2sgYXJyYXkgYmFzZWQgZGF0YSBhbHNvIDopXG5cbiAgICAgICAgICAgICRkaWFsb2cuZmluZChgaW5wdXQsIHNlbGVjdGApLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgIGxldCBrZXkgICA9ICQodGhpcykuYXR0cignbmFtZScpO1xuICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9ICQodGhpcykudmFsKCk7XG4gICAgICAgICAgICAgICAgaWYgKGtleSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoa2V5ID09PSAndGFnX25hbWUnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXJtID0gdmFsdWVcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFba2V5XSA9IHZhbHVlXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS52YWwoJycpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGlmICh0ZXJtKSB7XG4gICAgICAgICAgICAgICAgJCgnLnByb2R1Y3RfYXR0cmlidXRlcycpLmJsb2NrKHtcbiAgICAgICAgICAgICAgICAgICAgbWVzc2FnZSAgICA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgIG92ZXJsYXlDU1MgOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kIDogJyNmZmYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAgICA6IDAuNlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICBsZXQgYWpheF9kYXRhID0ge1xuICAgICAgICAgICAgICAgICAgICBhY3Rpb24gICA6ICd3b29jb21tZXJjZV9hZGRfbmV3X2F0dHJpYnV0ZScsXG4gICAgICAgICAgICAgICAgICAgIHRheG9ub215IDogdGF4b25vbXksXG4gICAgICAgICAgICAgICAgICAgIHRlcm0gICAgIDogdGVybSxcbiAgICAgICAgICAgICAgICAgICAgc2VjdXJpdHkgOiB3b29jb21tZXJjZV9hZG1pbl9tZXRhX2JveGVzLmFkZF9hdHRyaWJ1dGVfbm9uY2UsXG4gICAgICAgICAgICAgICAgICAgIC4uLmRhdGFcbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgJC5wb3N0KHdvb2NvbW1lcmNlX2FkbWluX21ldGFfYm94ZXMuYWpheF91cmwsIGFqYXhfZGF0YSwgZnVuY3Rpb24gKHJlc3BvbnNlKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLmVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBFcnJvci5cbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5hbGVydChyZXNwb25zZS5lcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAocmVzcG9uc2Uuc2x1Zykge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gU3VjY2Vzcy5cbiAgICAgICAgICAgICAgICAgICAgICAgICR3cmFwcGVyLmZpbmQoJ3NlbGVjdC5hdHRyaWJ1dGVfdmFsdWVzJykuYXBwZW5kKCc8b3B0aW9uIHZhbHVlPVwiJyArIHJlc3BvbnNlLnRlcm1faWQgKyAnXCIgc2VsZWN0ZWQ9XCJzZWxlY3RlZFwiPicgKyByZXNwb25zZS5uYW1lICsgJzwvb3B0aW9uPicpO1xuICAgICAgICAgICAgICAgICAgICAgICAgJHdyYXBwZXIuZmluZCgnc2VsZWN0LmF0dHJpYnV0ZV92YWx1ZXMnKS5jaGFuZ2UoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICQoJy5wcm9kdWN0X2F0dHJpYnV0ZXMnKS51bmJsb2NrKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAkKCcucHJvZHVjdF9hdHRyaWJ1dGVzJykudW5ibG9jaygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIEF0dHJpYnV0ZURpYWxvZygpIHtcblxuICAgICAgICAgICAgbGV0IHNlbGYgPSB0aGlzO1xuICAgICAgICAgICAgJCgnLnByb2R1Y3RfYXR0cmlidXRlcycpLm9uKCdjbGljaycsICdidXR0b24ud3ZzX2FkZF9uZXdfYXR0cmlidXRlJywgZnVuY3Rpb24gKGV2ZW50KSB7XG5cbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgICAgICAgICAgbGV0ICR3cmFwcGVyICA9ICQodGhpcykuY2xvc2VzdCgnLndvb2NvbW1lcmNlX2F0dHJpYnV0ZScpO1xuICAgICAgICAgICAgICAgIGxldCBhdHRyaWJ1dGUgPSAkd3JhcHBlci5kYXRhKCd0YXhvbm9teScpO1xuICAgICAgICAgICAgICAgIGxldCB0aXRsZSAgICAgPSAkKHRoaXMpLmRhdGEoJ2RpYWxvZ190aXRsZScpO1xuXG4gICAgICAgICAgICAgICAgJCgnLnd2cy1hdHRyaWJ1dGUtZGlhbG9nLWZvci0nICsgYXR0cmlidXRlKS5kaWFsb2coe1xuICAgICAgICAgICAgICAgICAgICB0aXRsZSAgICAgICAgIDogJycsXG4gICAgICAgICAgICAgICAgICAgIGRpYWxvZ0NsYXNzICAgOiAnd3AtZGlhbG9nIHd2cy1hdHRyaWJ1dGUtZGlhbG9nJyxcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NlcyAgICAgICA6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFwidWktZGlhbG9nXCIgOiBcIndwLWRpYWxvZyB3dnMtYXR0cmlidXRlLWRpYWxvZ1wiXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGF1dG9PcGVuICAgICAgOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgZHJhZ2dhYmxlICAgICA6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoICAgICAgICAgOiAnYXV0bycsXG4gICAgICAgICAgICAgICAgICAgIG1vZGFsICAgICAgICAgOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICByZXNpemFibGUgICAgIDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIGNsb3NlT25Fc2NhcGUgOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiAgICAgIDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgbXkgOiBcImNlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgYXQgOiBcImNlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgb2YgOiB3aW5kb3dcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgb3BlbiAgICAgICAgICA6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNsb3NlIGRpYWxvZyBieSBjbGlja2luZyB0aGUgb3ZlcmxheSBiZWhpbmQgaXRcbiAgICAgICAgICAgICAgICAgICAgICAgICQoJy51aS13aWRnZXQtb3ZlcmxheScpLmJpbmQoJ2NsaWNrJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJyNhdHRyaWJ1dGUtZGlhbG9nJykuZGlhbG9nKCdjbG9zZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgY3JlYXRlICAgICAgICA6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHN0eWxlIGZpeCBmb3IgV29yZFByZXNzIGFkbWluXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyAkKCcudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlJykuYWRkQ2xhc3MoJ3VpLWJ1dHRvbicpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLmRpYWxvZyhcIm9wdGlvblwiLCBcInRpdGxlXCIsIHRpdGxlKVxuICAgICAgICAgICAgICAgICAgICAuZGlhbG9nKFwib3B0aW9uXCIsIFwiYnV0dG9uc1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCAgOiBXVlNQbHVnaW5PYmplY3QuZGlhbG9nX3NhdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrIDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5zYXZpbmdEaWFsb2coJHdyYXBwZXIsICQodGhpcyksIGF0dHJpYnV0ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmRpYWxvZyhcImNsb3NlXCIpLmRpYWxvZyhcImRlc3Ryb3lcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCAgOiBXVlNQbHVnaW5PYmplY3QuZGlhbG9nX2NhbmNlbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2sgOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmRpYWxvZyhcImNsb3NlXCIpLmRpYWxvZyhcImRlc3Ryb3lcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgLmRpYWxvZygnb3BlbicpXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBQbHVnaW5IZWxwZXI7XG59KShqUXVlcnkpO1xuXG5leHBvcnQgeyBQbHVnaW5IZWxwZXIgfTtcblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL2pzL1BsdWdpbkhlbHBlci5qcyIsIi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvc2Nzcy9iYWNrZW5kLnNjc3Ncbi8vIG1vZHVsZSBpZCA9IDNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIiwiLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL3NyYy9zY3NzL2Zyb250ZW5kLnNjc3Ncbi8vIG1vZHVsZSBpZCA9IDRcbi8vIG1vZHVsZSBjaHVua3MgPSAwIiwiLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL3NyYy9zY3NzL3Rvb2x0aXAuc2Nzc1xuLy8gbW9kdWxlIGlkID0gNVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiLCIvLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL3Njc3MvY3VzdG9taXplLWhlYWRpbmctY29udHJvbC5zY3NzXG4vLyBtb2R1bGUgaWQgPSA2XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUM3REE7QUFDQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNuQkE7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQURBO0FBQUE7QUFBQTtBQUlBO0FBQ0E7QUFDQTtBQUNBO0FBUEE7QUFBQTtBQUFBO0FBU0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQURBO0FBR0E7QUFMQTtBQUNBO0FBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBOURBO0FBQUE7QUFBQTtBQUNBO0FBaUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQTFFQTtBQUFBO0FBQUE7QUE0RUE7QUFDQTtBQUFBO0FBQ0E7QUFDQTtBQURBO0FBR0E7QUFDQTtBQWxGQTtBQUFBO0FBQUE7QUFvRkE7QUFDQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBeEZBO0FBQUE7QUFBQTtBQTBGQTtBQUNBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUE5RkE7QUFBQTtBQUFBO0FBQ0E7QUFpR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRkE7QUFGQTtBQUNBO0FBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUpBO0FBQ0E7QUFPQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBeEpBO0FBQUE7QUFBQTtBQUNBO0FBMkpBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFEQTtBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBSEE7QUFLQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQTFCQTtBQWdDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBTEE7QUFRQTtBQUNBO0FBQ0E7QUFDQTtBQUpBO0FBU0E7QUFDQTtBQXJOQTtBQUNBO0FBREE7QUFBQTtBQUNBO0FBdU5BO0FBQ0E7QUFDQTs7Ozs7OztBQzVOQTs7Ozs7O0FDQUE7Ozs7OztBQ0FBOzs7Ozs7QUNBQTs7O0EiLCJzb3VyY2VSb290IjoiIn0=
1
  /*!
2
+ * WooCommerce Variation Swatches v1.0.18
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-4-9 23:49:39
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
382
 
383
  /***/ })
384
  /******/ ]);
385
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2pzL2FkbWluLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL3dlYnBhY2svYm9vdHN0cmFwIDNiYTU4MmY0ODE2ZDk0OTYzNTM5Iiwid2VicGFjazovLy9zcmMvanMvYmFja2VuZC5qcyIsIndlYnBhY2s6Ly8vc3JjL2pzL1BsdWdpbkhlbHBlci5qcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9iYWNrZW5kLnNjc3M/YmU2MSIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9mcm9udGVuZC5zY3NzIiwid2VicGFjazovLy8uL3NyYy9zY3NzL3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9zcmMvc2Nzcy9jdXN0b21pemUtaGVhZGluZy1jb250cm9sLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiIFx0Ly8gVGhlIG1vZHVsZSBjYWNoZVxuIFx0dmFyIGluc3RhbGxlZE1vZHVsZXMgPSB7fTtcblxuIFx0Ly8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbiBcdGZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblxuIFx0XHQvLyBDaGVjayBpZiBtb2R1bGUgaXMgaW4gY2FjaGVcbiBcdFx0aWYoaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0pIHtcbiBcdFx0XHRyZXR1cm4gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0uZXhwb3J0cztcbiBcdFx0fVxuIFx0XHQvLyBDcmVhdGUgYSBuZXcgbW9kdWxlIChhbmQgcHV0IGl0IGludG8gdGhlIGNhY2hlKVxuIFx0XHR2YXIgbW9kdWxlID0gaW5zdGFsbGVkTW9kdWxlc1ttb2R1bGVJZF0gPSB7XG4gXHRcdFx0aTogbW9kdWxlSWQsXG4gXHRcdFx0bDogZmFsc2UsXG4gXHRcdFx0ZXhwb3J0czoge31cbiBcdFx0fTtcblxuIFx0XHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cbiBcdFx0bW9kdWxlc1ttb2R1bGVJZF0uY2FsbChtb2R1bGUuZXhwb3J0cywgbW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cbiBcdFx0Ly8gRmxhZyB0aGUgbW9kdWxlIGFzIGxvYWRlZFxuIFx0XHRtb2R1bGUubCA9IHRydWU7XG5cbiBcdFx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcbiBcdFx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xuIFx0fVxuXG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlcyBvYmplY3QgKF9fd2VicGFja19tb2R1bGVzX18pXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm0gPSBtb2R1bGVzO1xuXG4gXHQvLyBleHBvc2UgdGhlIG1vZHVsZSBjYWNoZVxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5jID0gaW5zdGFsbGVkTW9kdWxlcztcblxuIFx0Ly8gZGVmaW5lIGdldHRlciBmdW5jdGlvbiBmb3IgaGFybW9ueSBleHBvcnRzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSBmdW5jdGlvbihleHBvcnRzLCBuYW1lLCBnZXR0ZXIpIHtcbiBcdFx0aWYoIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBuYW1lKSkge1xuIFx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBuYW1lLCB7XG4gXHRcdFx0XHRjb25maWd1cmFibGU6IGZhbHNlLFxuIFx0XHRcdFx0ZW51bWVyYWJsZTogdHJ1ZSxcbiBcdFx0XHRcdGdldDogZ2V0dGVyXG4gXHRcdFx0fSk7XG4gXHRcdH1cbiBcdH07XG5cbiBcdC8vIGdldERlZmF1bHRFeHBvcnQgZnVuY3Rpb24gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBub24taGFybW9ueSBtb2R1bGVzXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLm4gPSBmdW5jdGlvbihtb2R1bGUpIHtcbiBcdFx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG4gXHRcdFx0ZnVuY3Rpb24gZ2V0RGVmYXVsdCgpIHsgcmV0dXJuIG1vZHVsZVsnZGVmYXVsdCddOyB9IDpcbiBcdFx0XHRmdW5jdGlvbiBnZXRNb2R1bGVFeHBvcnRzKCkgeyByZXR1cm4gbW9kdWxlOyB9O1xuIFx0XHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZ2V0dGVyLCAnYScsIGdldHRlcik7XG4gXHRcdHJldHVybiBnZXR0ZXI7XG4gXHR9O1xuXG4gXHQvLyBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGxcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubyA9IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KTsgfTtcblxuIFx0Ly8gX193ZWJwYWNrX3B1YmxpY19wYXRoX19cbiBcdF9fd2VicGFja19yZXF1aXJlX18ucCA9IFwiXCI7XG5cbiBcdC8vIExvYWQgZW50cnkgbW9kdWxlIGFuZCByZXR1cm4gZXhwb3J0c1xuIFx0cmV0dXJuIF9fd2VicGFja19yZXF1aXJlX18oX193ZWJwYWNrX3JlcXVpcmVfXy5zID0gMCk7XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gd2VicGFjay9ib290c3RyYXAgM2JhNTgyZjQ4MTZkOTQ5NjM1MzkiLCJqUXVlcnkoJCA9PiB7XG4gICAgaW1wb3J0KCcuL1BsdWdpbkhlbHBlcicpLnRoZW4oKHtQbHVnaW5IZWxwZXJ9KSA9PiB7XG4gICAgICAgIFBsdWdpbkhlbHBlci5TZWxlY3RXb28oKTtcbiAgICAgICAgUGx1Z2luSGVscGVyLkNvbG9yUGlja2VyKCk7XG4gICAgICAgIFBsdWdpbkhlbHBlci5GaWVsZERlcGVuZGVuY3koKTtcbiAgICAgICAgUGx1Z2luSGVscGVyLkltYWdlVXBsb2FkZXIoKTtcbiAgICAgICAgUGx1Z2luSGVscGVyLkF0dHJpYnV0ZURpYWxvZygpO1xuICAgICAgICAkKGRvY3VtZW50LmJvZHkpLm9uKCd3b29jb21tZXJjZV9hZGRlZF9hdHRyaWJ1dGUnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBQbHVnaW5IZWxwZXIuU2VsZWN0V29vKCk7XG4gICAgICAgICAgICBQbHVnaW5IZWxwZXIuQ29sb3JQaWNrZXIoKTtcbiAgICAgICAgICAgIFBsdWdpbkhlbHBlci5JbWFnZVVwbG9hZGVyKCk7XG4gICAgICAgICAgICBQbHVnaW5IZWxwZXIuQXR0cmlidXRlRGlhbG9nKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgICQoZG9jdW1lbnQuYm9keSkub24oJ3d2c19wcm9fcHJvZHVjdF9zd2F0Y2hlc192YXJpYXRpb25fbG9hZGVkJywgKCkgPT4ge1xuICAgICAgICAgICAgUGx1Z2luSGVscGVyLkNvbG9yUGlja2VyKCk7XG4gICAgICAgICAgICBQbHVnaW5IZWxwZXIuSW1hZ2VVcGxvYWRlcigpO1xuICAgICAgICB9KVxuICAgIH0pO1xufSk7ICAvLyBlbmQgb2YganF1ZXJ5IG1haW4gd3JhcHBlclxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyBzcmMvanMvYmFja2VuZC5qcyIsIi8qZ2xvYmFsIFdWU1BsdWdpbk9iamVjdCwgd3AsIHdvb2NvbW1lcmNlX2FkbWluX21ldGFfYm94ZXMqL1xuXG5jb25zdCBQbHVnaW5IZWxwZXIgPSAoKCQpID0+IHtcbiAgICBjbGFzcyBQbHVnaW5IZWxwZXIge1xuXG4gICAgICAgIHN0YXRpYyBJbWFnZVVwbG9hZGVyKCkge1xuICAgICAgICAgICAgJChkb2N1bWVudCkub2ZmKCdjbGljaycsICdidXR0b24ud3ZzX3VwbG9hZF9pbWFnZV9idXR0b24nKTtcbiAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICdidXR0b24ud3ZzX3VwbG9hZF9pbWFnZV9idXR0b24nLCB0aGlzLkFkZEltYWdlKTtcbiAgICAgICAgICAgICQoZG9jdW1lbnQpLm9uKCdjbGljaycsICdidXR0b24ud3ZzX3JlbW92ZV9pbWFnZV9idXR0b24nLCB0aGlzLlJlbW92ZUltYWdlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0YXRpYyBBZGRJbWFnZShldmVudCkge1xuXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgICAgIGxldCBmaWxlX2ZyYW1lO1xuXG4gICAgICAgICAgICBpZiAodHlwZW9mIHdwICE9PSAndW5kZWZpbmVkJyAmJiB3cC5tZWRpYSAmJiB3cC5tZWRpYS5lZGl0b3IpIHtcblxuICAgICAgICAgICAgICAgIC8vIElmIHRoZSBtZWRpYSBmcmFtZSBhbHJlYWR5IGV4aXN0cywgcmVvcGVuIGl0LlxuICAgICAgICAgICAgICAgIGlmIChmaWxlX2ZyYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGVfZnJhbWUub3BlbigpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gQ3JlYXRlIHRoZSBtZWRpYSBmcmFtZS5cbiAgICAgICAgICAgICAgICBmaWxlX2ZyYW1lID0gd3AubWVkaWEuZnJhbWVzLnNlbGVjdF9pbWFnZSA9IHdwLm1lZGlhKHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGUgICAgOiBXVlNQbHVnaW5PYmplY3QubWVkaWFfdGl0bGUsXG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbiAgIDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCA6IFdWU1BsdWdpbk9iamVjdC5idXR0b25fdGl0bGVcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgbXVsdGlwbGUgOiBmYWxzZSxcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIC8vIFdoZW4gYW4gaW1hZ2UgaXMgc2VsZWN0ZWQsIHJ1biBhIGNhbGxiYWNrLlxuICAgICAgICAgICAgICAgIGZpbGVfZnJhbWUub24oJ3NlbGVjdCcsICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGF0dGFjaG1lbnQgPSBmaWxlX2ZyYW1lLnN0YXRlKCkuZ2V0KCdzZWxlY3Rpb24nKS5maXJzdCgpLnRvSlNPTigpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICgkLnRyaW0oYXR0YWNobWVudC5pZCkgIT09ICcnKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB1cmwgPSAodHlwZW9mKGF0dGFjaG1lbnQuc2l6ZXMudGh1bWJuYWlsKSA9PT0gJ3VuZGVmaW5lZCcpID8gYXR0YWNobWVudC5zaXplcy5mdWxsLnVybCA6IGF0dGFjaG1lbnQuc2l6ZXMudGh1bWJuYWlsLnVybDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5wcmV2KCkudmFsKGF0dGFjaG1lbnQuaWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5jbG9zZXN0KCcubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyJykuZmluZCgnaW1nJykuYXR0cignc3JjJywgdXJsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykubmV4dCgpLnNob3coKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAvL2ZpbGVfZnJhbWUuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIC8vIFdoZW4gb3BlbiBzZWxlY3Qgc2VsZWN0ZWRcbiAgICAgICAgICAgICAgICBmaWxlX2ZyYW1lLm9uKCdvcGVuJywgKCkgPT4ge1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIEdyYWIgb3VyIGF0dGFjaG1lbnQgc2VsZWN0aW9uIGFuZCBjb25zdHJ1Y3QgYSBKU09OIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBtb2RlbC5cbiAgICAgICAgICAgICAgICAgICAgbGV0IHNlbGVjdGlvbiAgPSBmaWxlX2ZyYW1lLnN0YXRlKCkuZ2V0KCdzZWxlY3Rpb24nKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGN1cnJlbnQgICAgPSAkKHRoaXMpLnByZXYoKS52YWwoKTtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGF0dGFjaG1lbnQgPSB3cC5tZWRpYS5hdHRhY2htZW50KGN1cnJlbnQpO1xuICAgICAgICAgICAgICAgICAgICBhdHRhY2htZW50LmZldGNoKCk7XG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGlvbi5hZGQoYXR0YWNobWVudCA/IFthdHRhY2htZW50XSA6IFtdKTtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIC8vIEZpbmFsbHksIG9wZW4gdGhlIG1vZGFsLlxuICAgICAgICAgICAgICAgIGZpbGVfZnJhbWUub3BlbigpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIFJlbW92ZUltYWdlKGV2ZW50KSB7XG5cbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgbGV0IHBsYWNlaG9sZGVyID0gJCh0aGlzKS5jbG9zZXN0KCcubWV0YS1pbWFnZS1maWVsZC13cmFwcGVyJykuZmluZCgnaW1nJykuZGF0YSgncGxhY2Vob2xkZXInKTtcbiAgICAgICAgICAgICQodGhpcykuY2xvc2VzdCgnLm1ldGEtaW1hZ2UtZmllbGQtd3JhcHBlcicpLmZpbmQoJ2ltZycpLmF0dHIoJ3NyYycsIHBsYWNlaG9sZGVyKTtcbiAgICAgICAgICAgICQodGhpcykucHJldigpLnByZXYoKS52YWwoJycpO1xuICAgICAgICAgICAgJCh0aGlzKS5oaWRlKCk7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBzdGF0aWMgU2VsZWN0V29vKHNlbGVjdG9yID0gJ3NlbGVjdC53dnMtc2VsZWN0d29vJykge1xuICAgICAgICAgICAgaWYgKCQoKS5zZWxlY3RXb28pIHtcbiAgICAgICAgICAgICAgICAkKHNlbGVjdG9yKS5zZWxlY3RXb28oe1xuICAgICAgICAgICAgICAgICAgICBhbGxvd0NsZWFyIDogdHJ1ZVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIENvbG9yUGlja2VyKHNlbGVjdG9yID0gJ2lucHV0Lnd2cy1jb2xvci1waWNrZXInKSB7XG4gICAgICAgICAgICBpZiAoJCgpLndwQ29sb3JQaWNrZXIpIHtcbiAgICAgICAgICAgICAgICAkKHNlbGVjdG9yKS53cENvbG9yUGlja2VyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzdGF0aWMgRmllbGREZXBlbmRlbmN5KHNlbGVjdG9yID0gJ1tkYXRhLWRlcGVuZHNdJykge1xuICAgICAgICAgICAgaWYgKCQoKS5Gb3JtRmllbGREZXBlbmRlbmN5KSB7XG4gICAgICAgICAgICAgICAgJChzZWxlY3RvcikuRm9ybUZpZWxkRGVwZW5kZW5jeSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIHNhdmluZ0RpYWxvZygkd3JhcHBlciwgJGRpYWxvZywgdGF4b25vbXkpIHtcblxuICAgICAgICAgICAgbGV0IGRhdGEgPSB7fTtcbiAgICAgICAgICAgIGxldCB0ZXJtID0gJyc7XG5cbiAgICAgICAgICAgIC8vIEBUT0RPOiBXZSBzaG91bGQgdXNlIGZvcm0gZGF0YSwgYmVjYXVzZSB3ZSBoYXZlIHRvIHBpY2sgYXJyYXkgYmFzZWQgZGF0YSBhbHNvIDopXG5cbiAgICAgICAgICAgICRkaWFsb2cuZmluZChgaW5wdXQsIHNlbGVjdGApLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgIGxldCBrZXkgICA9ICQodGhpcykuYXR0cignbmFtZScpO1xuICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9ICQodGhpcykudmFsKCk7XG4gICAgICAgICAgICAgICAgaWYgKGtleSkge1xuICAgICAgICAgICAgICAgICAgICBpZiAoa2V5ID09PSAndGFnX25hbWUnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXJtID0gdmFsdWVcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFba2V5XSA9IHZhbHVlXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS52YWwoJycpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIGlmICh0ZXJtKSB7XG4gICAgICAgICAgICAgICAgJCgnLnByb2R1Y3RfYXR0cmlidXRlcycpLmJsb2NrKHtcbiAgICAgICAgICAgICAgICAgICAgbWVzc2FnZSAgICA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgIG92ZXJsYXlDU1MgOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kIDogJyNmZmYnLFxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAgICA6IDAuNlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICBsZXQgYWpheF9kYXRhID0ge1xuICAgICAgICAgICAgICAgICAgICBhY3Rpb24gICA6ICd3b29jb21tZXJjZV9hZGRfbmV3X2F0dHJpYnV0ZScsXG4gICAgICAgICAgICAgICAgICAgIHRheG9ub215IDogdGF4b25vbXksXG4gICAgICAgICAgICAgICAgICAgIHRlcm0gICAgIDogdGVybSxcbiAgICAgICAgICAgICAgICAgICAgc2VjdXJpdHkgOiB3b29jb21tZXJjZV9hZG1pbl9tZXRhX2JveGVzLmFkZF9hdHRyaWJ1dGVfbm9uY2UsXG4gICAgICAgICAgICAgICAgICAgIC4uLmRhdGFcbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgJC5wb3N0KHdvb2NvbW1lcmNlX2FkbWluX21ldGFfYm94ZXMuYWpheF91cmwsIGFqYXhfZGF0YSwgZnVuY3Rpb24gKHJlc3BvbnNlKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlLmVycm9yKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBFcnJvci5cbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5hbGVydChyZXNwb25zZS5lcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAocmVzcG9uc2Uuc2x1Zykge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gU3VjY2Vzcy5cbiAgICAgICAgICAgICAgICAgICAgICAgICR3cmFwcGVyLmZpbmQoJ3NlbGVjdC5hdHRyaWJ1dGVfdmFsdWVzJykuYXBwZW5kKCc8b3B0aW9uIHZhbHVlPVwiJyArIHJlc3BvbnNlLnRlcm1faWQgKyAnXCIgc2VsZWN0ZWQ9XCJzZWxlY3RlZFwiPicgKyByZXNwb25zZS5uYW1lICsgJzwvb3B0aW9uPicpO1xuICAgICAgICAgICAgICAgICAgICAgICAgJHdyYXBwZXIuZmluZCgnc2VsZWN0LmF0dHJpYnV0ZV92YWx1ZXMnKS5jaGFuZ2UoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICQoJy5wcm9kdWN0X2F0dHJpYnV0ZXMnKS51bmJsb2NrKCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAkKCcucHJvZHVjdF9hdHRyaWJ1dGVzJykudW5ibG9jaygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGljIEF0dHJpYnV0ZURpYWxvZygpIHtcblxuICAgICAgICAgICAgbGV0IHNlbGYgPSB0aGlzO1xuICAgICAgICAgICAgJCgnLnByb2R1Y3RfYXR0cmlidXRlcycpLm9uKCdjbGljaycsICdidXR0b24ud3ZzX2FkZF9uZXdfYXR0cmlidXRlJywgZnVuY3Rpb24gKGV2ZW50KSB7XG5cbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgICAgICAgICAgbGV0ICR3cmFwcGVyICA9ICQodGhpcykuY2xvc2VzdCgnLndvb2NvbW1lcmNlX2F0dHJpYnV0ZScpO1xuICAgICAgICAgICAgICAgIGxldCBhdHRyaWJ1dGUgPSAkd3JhcHBlci5kYXRhKCd0YXhvbm9teScpO1xuICAgICAgICAgICAgICAgIGxldCB0aXRsZSAgICAgPSAkKHRoaXMpLmRhdGEoJ2RpYWxvZ190aXRsZScpO1xuXG4gICAgICAgICAgICAgICAgJCgnLnd2cy1hdHRyaWJ1dGUtZGlhbG9nLWZvci0nICsgYXR0cmlidXRlKS5kaWFsb2coe1xuICAgICAgICAgICAgICAgICAgICB0aXRsZSAgICAgICAgIDogJycsXG4gICAgICAgICAgICAgICAgICAgIGRpYWxvZ0NsYXNzICAgOiAnd3AtZGlhbG9nIHd2cy1hdHRyaWJ1dGUtZGlhbG9nJyxcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NlcyAgICAgICA6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIFwidWktZGlhbG9nXCIgOiBcIndwLWRpYWxvZyB3dnMtYXR0cmlidXRlLWRpYWxvZ1wiXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGF1dG9PcGVuICAgICAgOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgZHJhZ2dhYmxlICAgICA6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoICAgICAgICAgOiAnYXV0bycsXG4gICAgICAgICAgICAgICAgICAgIG1vZGFsICAgICAgICAgOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICByZXNpemFibGUgICAgIDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIGNsb3NlT25Fc2NhcGUgOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiAgICAgIDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgbXkgOiBcImNlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgYXQgOiBcImNlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgb2YgOiB3aW5kb3dcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgb3BlbiAgICAgICAgICA6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNsb3NlIGRpYWxvZyBieSBjbGlja2luZyB0aGUgb3ZlcmxheSBiZWhpbmQgaXRcbiAgICAgICAgICAgICAgICAgICAgICAgICQoJy51aS13aWRnZXQtb3ZlcmxheScpLmJpbmQoJ2NsaWNrJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQoJyNhdHRyaWJ1dGUtZGlhbG9nJykuZGlhbG9nKCdjbG9zZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgY3JlYXRlICAgICAgICA6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHN0eWxlIGZpeCBmb3IgV29yZFByZXNzIGFkbWluXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyAkKCcudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlJykuYWRkQ2xhc3MoJ3VpLWJ1dHRvbicpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLmRpYWxvZyhcIm9wdGlvblwiLCBcInRpdGxlXCIsIHRpdGxlKVxuICAgICAgICAgICAgICAgICAgICAuZGlhbG9nKFwib3B0aW9uXCIsIFwiYnV0dG9uc1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCAgOiBXVlNQbHVnaW5PYmplY3QuZGlhbG9nX3NhdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrIDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5zYXZpbmdEaWFsb2coJHdyYXBwZXIsICQodGhpcyksIGF0dHJpYnV0ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmRpYWxvZyhcImNsb3NlXCIpLmRpYWxvZyhcImRlc3Ryb3lcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCAgOiBXVlNQbHVnaW5PYmplY3QuZGlhbG9nX2NhbmNlbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2sgOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmRpYWxvZyhcImNsb3NlXCIpLmRpYWxvZyhcImRlc3Ryb3lcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgLmRpYWxvZygnb3BlbicpXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBQbHVnaW5IZWxwZXI7XG59KShqUXVlcnkpO1xuXG5leHBvcnQgeyBQbHVnaW5IZWxwZXIgfTtcblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL2pzL1BsdWdpbkhlbHBlci5qcyIsIi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvc2Nzcy9iYWNrZW5kLnNjc3Ncbi8vIG1vZHVsZSBpZCA9IDNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIiwiLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL3NyYy9zY3NzL2Zyb250ZW5kLnNjc3Ncbi8vIG1vZHVsZSBpZCA9IDRcbi8vIG1vZHVsZSBjaHVua3MgPSAwIiwiLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL3NyYy9zY3NzL3Rvb2x0aXAuc2Nzc1xuLy8gbW9kdWxlIGlkID0gNVxuLy8gbW9kdWxlIGNodW5rcyA9IDAiLCIvLyByZW1vdmVkIGJ5IGV4dHJhY3QtdGV4dC13ZWJwYWNrLXBsdWdpblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL3Njc3MvY3VzdG9taXplLWhlYWRpbmctY29udHJvbC5zY3NzXG4vLyBtb2R1bGUgaWQgPSA2XG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUM3REE7QUFDQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7QUNuQkE7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQURBO0FBQUE7QUFBQTtBQUlBO0FBQ0E7QUFDQTtBQUNBO0FBUEE7QUFBQTtBQUFBO0FBU0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQURBO0FBR0E7QUFMQTtBQUNBO0FBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBOURBO0FBQUE7QUFBQTtBQUNBO0FBaUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQTFFQTtBQUFBO0FBQUE7QUE0RUE7QUFDQTtBQUFBO0FBQ0E7QUFDQTtBQURBO0FBR0E7QUFDQTtBQWxGQTtBQUFBO0FBQUE7QUFvRkE7QUFDQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBeEZBO0FBQUE7QUFBQTtBQTBGQTtBQUNBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUE5RkE7QUFBQTtBQUFBO0FBQ0E7QUFpR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRkE7QUFGQTtBQUNBO0FBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUpBO0FBQ0E7QUFPQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBeEpBO0FBQUE7QUFBQTtBQUNBO0FBMkpBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFEQTtBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBSEE7QUFLQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQTFCQTtBQWdDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBTEE7QUFRQTtBQUNBO0FBQ0E7QUFDQTtBQUpBO0FBU0E7QUFDQTtBQXJOQTtBQUNBO0FBREE7QUFBQTtBQUNBO0FBdU5BO0FBQ0E7QUFDQTs7Ozs7OztBQzVOQTs7Ozs7O0FDQUE7Ozs7OztBQ0FBOzs7Ozs7QUNBQTs7O0EiLCJzb3VyY2VSb290IjoiIn0=
assets/js/frontend.js CHANGED
@@ -1,8 +1,8 @@
1
  /*!
2
- * WooCommerce Variation Swatches v1.0.17
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
- * Date: 2018-3-30 14:41:58
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
@@ -128,12 +128,13 @@ var WooVariationSwatches = function ($) {
128
  this._generated = {};
129
  this.product_variations = this._element.data('product_variations');
130
  this.is_ajax_variation = !this.product_variations;
 
131
 
132
  // Call
133
- this.init(this.is_ajax_variation);
134
- this.loaded(this.is_ajax_variation);
135
- this.update(this.is_ajax_variation);
136
- this.reset(this.is_ajax_variation);
137
 
138
  // Trigger
139
  $(document).trigger('woo_variation_swatches', [this._element]);
@@ -141,7 +142,7 @@ var WooVariationSwatches = function ($) {
141
 
142
  _createClass(WooVariationSwatches, [{
143
  key: 'init',
144
- value: function init(is_ajax) {
145
  var _this2 = this;
146
 
147
  this._element.find('ul.variable-items-wrapper').each(function (i, el) {
@@ -156,7 +157,7 @@ var WooVariationSwatches = function ($) {
156
  }
157
 
158
  if (reselect_clear) {
159
- $(this).on('click', 'li:not(.selected):not(.radio-variable-item)', function (e) {
160
  e.preventDefault();
161
  e.stopPropagation();
162
  var value = $(this).data('value');
@@ -166,7 +167,7 @@ var WooVariationSwatches = function ($) {
166
  select.trigger('touchstart');
167
  });
168
 
169
- $(this).on('click', 'li.selected:not(.radio-variable-item)', function (e) {
170
  e.preventDefault();
171
  e.stopPropagation();
172
  select.val('').trigger('change');
@@ -176,7 +177,7 @@ var WooVariationSwatches = function ($) {
176
  });
177
 
178
  // RADIO
179
- $(this).on('click', 'input.wvs-radio-variable-item:radio', function (e) {
180
  e.preventDefault();
181
  e.stopPropagation();
182
  $(this).trigger('change');
@@ -204,7 +205,7 @@ var WooVariationSwatches = function ($) {
204
  select.trigger('touchstart');
205
  });
206
  } else {
207
- $(this).on('click', 'li:not(.radio-variable-item)', function (e) {
208
  e.preventDefault();
209
  e.stopPropagation();
210
  var value = $(this).data('value');
@@ -238,7 +239,7 @@ var WooVariationSwatches = function ($) {
238
  }
239
  }, {
240
  key: 'loaded',
241
- value: function loaded(is_ajax) {
242
  if (!is_ajax) {
243
  this._element.on('woo_variation_swatches_init', function (event, object, product_variations) {
244
 
@@ -268,6 +269,11 @@ var WooVariationSwatches = function ($) {
268
  if (!_.isEmpty(attribute_values) && !attribute_values.includes(attribute_value)) {
269
  $(this).removeClass('selected');
270
  $(this).addClass('disabled');
 
 
 
 
 
271
  if ($(this).hasClass('radio-variable-item')) {
272
  $(this).find('input.wvs-radio-variable-item:radio').prop('disabled', true).prop('checked', false);
273
  }
@@ -279,13 +285,16 @@ var WooVariationSwatches = function ($) {
279
  }
280
  }, {
281
  key: 'reset',
282
- value: function reset(is_ajax) {
283
  this._element.on('reset_data', function (event) {
284
  $(this).find('ul.variable-items-wrapper').each(function () {
285
  var li = $(this).find('li');
286
  li.each(function () {
287
  if (!is_ajax) {
288
  $(this).removeClass('selected disabled');
 
 
 
289
  if ($(this).hasClass('radio-variable-item')) {
290
  $(this).find('input.wvs-radio-variable-item:radio').prop('disabled', false).prop('checked', false);
291
  }
@@ -296,7 +305,7 @@ var WooVariationSwatches = function ($) {
296
  }
297
  }, {
298
  key: 'update',
299
- value: function update(is_ajax) {
300
  this._element.on('woocommerce_variation_has_changed', function (event) {
301
  if (is_ajax) {
302
  $(this).find('ul.variable-items-wrapper').each(function () {
@@ -325,6 +334,9 @@ var WooVariationSwatches = function ($) {
325
  li.each(function () {
326
  var value = $(this).attr('data-value');
327
  $(this).removeClass('selected disabled');
 
 
 
328
  if (value === selected) {
329
  $(this).addClass('selected');
330
  if ($(this).hasClass('radio-variable-item')) {
@@ -365,7 +377,10 @@ var WooVariationSwatches = function ($) {
365
  _.delay(function () {
366
  li.each(function () {
367
  var value = $(this).attr('data-value');
368
- $(this).removeClass('selected disabled');
 
 
 
369
  if (_.contains(selects, value)) {
370
  $(this).removeClass('disabled');
371
  if (value === selected) {
@@ -375,7 +390,10 @@ var WooVariationSwatches = function ($) {
375
  }
376
  }
377
  } else {
378
- $(this).addClass('disabled');
 
 
 
379
  if ($(this).hasClass('radio-variable-item')) {
380
  $(this).find('input.wvs-radio-variable-item:radio').prop('disabled', true).prop('checked', false);
381
  }
@@ -418,4 +436,4 @@ var WooVariationSwatches = function ($) {
418
  /***/ })
419
 
420
  /******/ });
421
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2pzL2Zyb250ZW5kLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL3dlYnBhY2svYm9vdHN0cmFwIDQ4NmZjNjZjNGExYTBiOGFiNWVlIiwid2VicGFjazovLy9zcmMvanMvZnJvbnRlbmQuanMiLCJ3ZWJwYWNrOi8vL3NyYy9qcy9Xb29WYXJpYXRpb25Td2F0Y2hlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIgXHQvLyBUaGUgbW9kdWxlIGNhY2hlXG4gXHR2YXIgaW5zdGFsbGVkTW9kdWxlcyA9IHt9O1xuXG4gXHQvLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuIFx0ZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuXG4gXHRcdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuIFx0XHRpZihpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSkge1xuIFx0XHRcdHJldHVybiBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXS5leHBvcnRzO1xuIFx0XHR9XG4gXHRcdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG4gXHRcdHZhciBtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSA9IHtcbiBcdFx0XHRpOiBtb2R1bGVJZCxcbiBcdFx0XHRsOiBmYWxzZSxcbiBcdFx0XHRleHBvcnRzOiB7fVxuIFx0XHR9O1xuXG4gXHRcdC8vIEV4ZWN1dGUgdGhlIG1vZHVsZSBmdW5jdGlvblxuIFx0XHRtb2R1bGVzW21vZHVsZUlkXS5jYWxsKG1vZHVsZS5leHBvcnRzLCBtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKTtcblxuIFx0XHQvLyBGbGFnIHRoZSBtb2R1bGUgYXMgbG9hZGVkXG4gXHRcdG1vZHVsZS5sID0gdHJ1ZTtcblxuIFx0XHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuIFx0XHRyZXR1cm4gbW9kdWxlLmV4cG9ydHM7XG4gXHR9XG5cblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGVzIG9iamVjdCAoX193ZWJwYWNrX21vZHVsZXNfXylcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubSA9IG1vZHVsZXM7XG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlIGNhY2hlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmMgPSBpbnN0YWxsZWRNb2R1bGVzO1xuXG4gXHQvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9uIGZvciBoYXJtb255IGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uZCA9IGZ1bmN0aW9uKGV4cG9ydHMsIG5hbWUsIGdldHRlcikge1xuIFx0XHRpZighX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIG5hbWUpKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIG5hbWUsIHtcbiBcdFx0XHRcdGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4gXHRcdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuIFx0XHRcdFx0Z2V0OiBnZXR0ZXJcbiBcdFx0XHR9KTtcbiBcdFx0fVxuIFx0fTtcblxuIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbiBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbiBcdFx0cmV0dXJuIGdldHRlcjtcbiBcdH07XG5cbiBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuXG4gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCJcIjtcblxuIFx0Ly8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4gXHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyhfX3dlYnBhY2tfcmVxdWlyZV9fLnMgPSA3KTtcblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyB3ZWJwYWNrL2Jvb3RzdHJhcCA0ODZmYzY2YzRhMWEwYjhhYjVlZSIsImpRdWVyeSgkID0+IHtcbiAgICBpbXBvcnQoJy4vV29vVmFyaWF0aW9uU3dhdGNoZXMnKS50aGVuKCgpID0+IHtcbiAgICAgICAgLy8gSW5pdCBvbiBBamF4IFBvcHVwIDopXG4gICAgICAgICQoZG9jdW1lbnQpLm9uKCd3Y192YXJpYXRpb25fZm9ybScsICcudmFyaWF0aW9uc19mb3JtJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgJCh0aGlzKS5Xb29WYXJpYXRpb25Td2F0Y2hlcygpO1xuICAgICAgICB9KTtcblxuICAgICAgICAvLyBTdXBwb3J0IGZvciBKZXRwYWNrJ3MgSW5maW5pdGUgU2Nyb2xsLFxuICAgICAgICAkKGRvY3VtZW50LmJvZHkpLm9uKCdwb3N0LWxvYWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAkKCcudmFyaWF0aW9uc19mb3JtJykud2NfdmFyaWF0aW9uX2Zvcm0oKTtcbiAgICAgICAgfSk7XG5cbiAgICB9KTtcbn0pOyAgLy8gZW5kIG9mIGpxdWVyeSBtYWluIHdyYXBwZXJcblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL2pzL2Zyb250ZW5kLmpzIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gV29vQ29tbWVyY2UgVmFyaWF0aW9uIENoYW5nZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBXb29WYXJpYXRpb25Td2F0Y2hlcyA9ICgoJCkgPT4ge1xuXG4gICAgY29uc3QgRGVmYXVsdCA9IHt9O1xuXG4gICAgY2xhc3MgV29vVmFyaWF0aW9uU3dhdGNoZXMge1xuXG4gICAgICAgIGNvbnN0cnVjdG9yKGVsZW1lbnQsIGNvbmZpZykge1xuXG4gICAgICAgICAgICAvLyBBc3NpZ25cbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQgICAgICAgICAgID0gJChlbGVtZW50KTtcbiAgICAgICAgICAgIHRoaXMuX2NvbmZpZyAgICAgICAgICAgID0gJC5leHRlbmQoe30sIERlZmF1bHQsIGNvbmZpZyk7XG4gICAgICAgICAgICB0aGlzLl9nZW5lcmF0ZWQgICAgICAgICA9IHt9O1xuICAgICAgICAgICAgdGhpcy5wcm9kdWN0X3ZhcmlhdGlvbnMgPSB0aGlzLl9lbGVtZW50LmRhdGEoJ3Byb2R1Y3RfdmFyaWF0aW9ucycpO1xuICAgICAgICAgICAgdGhpcy5pc19hamF4X3ZhcmlhdGlvbiAgPSAhdGhpcy5wcm9kdWN0X3ZhcmlhdGlvbnM7XG5cbiAgICAgICAgICAgIC8vIENhbGxcbiAgICAgICAgICAgIHRoaXMuaW5pdCh0aGlzLmlzX2FqYXhfdmFyaWF0aW9uKTtcbiAgICAgICAgICAgIHRoaXMubG9hZGVkKHRoaXMuaXNfYWpheF92YXJpYXRpb24pO1xuICAgICAgICAgICAgdGhpcy51cGRhdGUodGhpcy5pc19hamF4X3ZhcmlhdGlvbik7XG4gICAgICAgICAgICB0aGlzLnJlc2V0KHRoaXMuaXNfYWpheF92YXJpYXRpb24pO1xuXG4gICAgICAgICAgICAvLyBUcmlnZ2VyXG4gICAgICAgICAgICAkKGRvY3VtZW50KS50cmlnZ2VyKCd3b29fdmFyaWF0aW9uX3N3YXRjaGVzJywgW3RoaXMuX2VsZW1lbnRdKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0YXRpYyBfalF1ZXJ5SW50ZXJmYWNlKGNvbmZpZykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgbmV3IFdvb1ZhcmlhdGlvblN3YXRjaGVzKHRoaXMsIGNvbmZpZylcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH1cblxuICAgICAgICBpbml0KGlzX2FqYXgpIHtcblxuICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5maW5kKCd1bC52YXJpYWJsZS1pdGVtcy13cmFwcGVyJykuZWFjaChmdW5jdGlvbiAoaSwgZWwpIHtcblxuICAgICAgICAgICAgICAgIGxldCBzZWxlY3QgICAgICAgICA9ICQodGhpcykuc2libGluZ3MoJ3NlbGVjdC53b28tdmFyaWF0aW9uLXJhdy1zZWxlY3QnKTtcbiAgICAgICAgICAgICAgICBsZXQgbGkgICAgICAgICAgICAgPSAkKHRoaXMpLmZpbmQoJ2xpJyk7XG4gICAgICAgICAgICAgICAgbGV0IHJlc2VsZWN0X2NsZWFyID0gJCh0aGlzKS5oYXNDbGFzcygncmVzZWxlY3QtY2xlYXInKTtcblxuICAgICAgICAgICAgICAgIC8vIEZvciBBdmFkYSBGSVhcbiAgICAgICAgICAgICAgICBpZiAoc2VsZWN0Lmxlbmd0aCA8IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ID0gJCh0aGlzKS5wYXJlbnQoKS5maW5kKCdzZWxlY3Qud29vLXZhcmlhdGlvbi1yYXctc2VsZWN0Jyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKHJlc2VsZWN0X2NsZWFyKSB7XG4gICAgICAgICAgICAgICAgICAgICQodGhpcykub24oJ2NsaWNrJywgJ2xpOm5vdCguc2VsZWN0ZWQpOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSknLCBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9ICQodGhpcykuZGF0YSgndmFsdWUnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC52YWwodmFsdWUpLnRyaWdnZXIoJ2NoYW5nZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnRyaWdnZXIoJ2NsaWNrJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudHJpZ2dlcignZm9jdXNpbicpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnRyaWdnZXIoJ3RvdWNoc3RhcnQnKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5vbignY2xpY2snLCAnbGkuc2VsZWN0ZWQ6bm90KC5yYWRpby12YXJpYWJsZS1pdGVtKScsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnZhbCgnJykudHJpZ2dlcignY2hhbmdlJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudHJpZ2dlcignY2xpY2snKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCdmb2N1c2luJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudHJpZ2dlcigndG91Y2hzdGFydCcpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICAvLyBSQURJT1xuICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLm9uKCdjbGljaycsICdpbnB1dC53dnMtcmFkaW8tdmFyaWFibGUtaXRlbTpyYWRpbycsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS50cmlnZ2VyKCdjaGFuZ2UnKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5vbignY2hhbmdlJywgJ2lucHV0Lnd2cy1yYWRpby12YXJpYWJsZS1pdGVtOnJhZGlvJywgZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9ICQodGhpcykudmFsKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLnBhcmVudCgnLnJhZGlvLXZhcmlhYmxlLWl0ZW0nKS5oYXNDbGFzcygnc2VsZWN0ZWQnKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC52YWwoJycpLnRyaWdnZXIoJ2NoYW5nZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF8uZGVsYXkoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLnByb3AoJ2NoZWNrZWQnLCBmYWxzZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxKVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnZhbCh2YWx1ZSkudHJpZ2dlcignY2hhbmdlJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCdjbGljaycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnRyaWdnZXIoJ2ZvY3VzaW4nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCd0b3VjaHN0YXJ0Jyk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5vbignY2xpY2snLCAnbGk6bm90KC5yYWRpby12YXJpYWJsZS1pdGVtKScsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gJCh0aGlzKS5kYXRhKCd2YWx1ZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnZhbCh2YWx1ZSkudHJpZ2dlcignY2hhbmdlJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudHJpZ2dlcignY2xpY2snKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCdmb2N1c2luJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudHJpZ2dlcigndG91Y2hzdGFydCcpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICAvLyBSYWRpb1xuICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLm9uKCdjaGFuZ2UnLCAnaW5wdXQud3ZzLXJhZGlvLXZhcmlhYmxlLWl0ZW06cmFkaW8nLCBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9ICQodGhpcykudmFsKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC52YWwodmFsdWUpLnRyaWdnZXIoJ2NoYW5nZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnRyaWdnZXIoJ2NsaWNrJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudHJpZ2dlcignZm9jdXNpbicpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnRyaWdnZXIoJ3RvdWNoc3RhcnQnKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gUmFkaW9cbiAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucGFyZW50KCdsaS5yYWRpby12YXJpYWJsZS1pdGVtJykucmVtb3ZlQ2xhc3MoJ3NlbGVjdGVkIGRpc2FibGVkJykuYWRkQ2xhc3MoJ3NlbGVjdGVkJylcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIF8uZGVsYXkoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQudHJpZ2dlcignd29vX3ZhcmlhdGlvbl9zd2F0Y2hlc19pbml0JywgW3RoaXMsIHRoaXMucHJvZHVjdF92YXJpYXRpb25zXSlcbiAgICAgICAgICAgICAgICAkKGRvY3VtZW50KS50cmlnZ2VyKCd3b29fdmFyaWF0aW9uX3N3YXRjaGVzX2xvYWRlZCcsIFt0aGlzLl9lbGVtZW50LCB0aGlzLnByb2R1Y3RfdmFyaWF0aW9uc10pXG4gICAgICAgICAgICB9LCAxKVxuICAgICAgICB9XG5cbiAgICAgICAgbG9hZGVkKGlzX2FqYXgpIHtcbiAgICAgICAgICAgIGlmICghaXNfYWpheCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQub24oJ3dvb192YXJpYXRpb25fc3dhdGNoZXNfaW5pdCcsIGZ1bmN0aW9uIChldmVudCwgb2JqZWN0LCBwcm9kdWN0X3ZhcmlhdGlvbnMpIHtcblxuICAgICAgICAgICAgICAgICAgICBvYmplY3QuX2dlbmVyYXRlZCA9IHByb2R1Y3RfdmFyaWF0aW9ucy5yZWR1Y2UoKG9iaiwgdmFyaWF0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyh2YXJpYXRpb24uYXR0cmlidXRlcykubWFwKChhdHRyaWJ1dGVfbmFtZSkgPT4ge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFvYmpbYXR0cmlidXRlX25hbWVdKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9ialthdHRyaWJ1dGVfbmFtZV0gPSBbXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2YXJpYXRpb24uYXR0cmlidXRlc1thdHRyaWJ1dGVfbmFtZV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqW2F0dHJpYnV0ZV9uYW1lXS5wdXNoKHZhcmlhdGlvbi5hdHRyaWJ1dGVzW2F0dHJpYnV0ZV9uYW1lXSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9iajtcbiAgICAgICAgICAgICAgICAgICAgfSwge30pO1xuXG4gICAgICAgICAgICAgICAgICAgICQodGhpcykuZmluZCgndWwudmFyaWFibGUtaXRlbXMtd3JhcHBlcicpLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGxpICAgICAgICAgICAgICAgPSAkKHRoaXMpLmZpbmQoJ2xpJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgYXR0cmlidXRlICAgICAgICA9ICQodGhpcykuZGF0YSgnYXR0cmlidXRlX25hbWUnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBhdHRyaWJ1dGVfdmFsdWVzID0gb2JqZWN0Ll9nZW5lcmF0ZWRbYXR0cmlidXRlXTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgbGkuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGF0dHJpYnV0ZV92YWx1ZSA9ICQodGhpcykuYXR0cignZGF0YS12YWx1ZScpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFfLmlzRW1wdHkoYXR0cmlidXRlX3ZhbHVlcykgJiYgIWF0dHJpYnV0ZV92YWx1ZXMuaW5jbHVkZXMoYXR0cmlidXRlX3ZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLnJlbW92ZUNsYXNzKCdzZWxlY3RlZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCdkaXNhYmxlZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCh0aGlzKS5oYXNDbGFzcygncmFkaW8tdmFyaWFibGUtaXRlbScpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmZpbmQoJ2lucHV0Lnd2cy1yYWRpby12YXJpYWJsZS1pdGVtOnJhZGlvJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKS5wcm9wKCdjaGVja2VkJywgZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmVzZXQoaXNfYWpheCkge1xuICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5vbigncmVzZXRfZGF0YScsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgICAgICAgICQodGhpcykuZmluZCgndWwudmFyaWFibGUtaXRlbXMtd3JhcHBlcicpLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICBsZXQgbGkgPSAkKHRoaXMpLmZpbmQoJ2xpJyk7XG4gICAgICAgICAgICAgICAgICAgIGxpLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFpc19hamF4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5yZW1vdmVDbGFzcygnc2VsZWN0ZWQgZGlzYWJsZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCh0aGlzKS5oYXNDbGFzcygncmFkaW8tdmFyaWFibGUtaXRlbScpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykuZmluZCgnaW5wdXQud3ZzLXJhZGlvLXZhcmlhYmxlLWl0ZW06cmFkaW8nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKS5wcm9wKCdjaGVja2VkJywgZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHVwZGF0ZShpc19hamF4KSB7XG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50Lm9uKCd3b29jb21tZXJjZV92YXJpYXRpb25faGFzX2NoYW5nZWQnLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXNfYWpheCkge1xuICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmZpbmQoJ3VsLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXInKS5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzZWxlY3RlZCA9ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnMgID0gJCh0aGlzKS5zaWJsaW5ncygnc2VsZWN0Lndvby12YXJpYXRpb24tcmF3LXNlbGVjdCcpLmZpbmQoJ29wdGlvbicpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQgID0gJCh0aGlzKS5zaWJsaW5ncygnc2VsZWN0Lndvby12YXJpYXRpb24tcmF3LXNlbGVjdCcpLmZpbmQoJ29wdGlvbjpzZWxlY3RlZCcpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVxICAgICAgID0gJCh0aGlzKS5zaWJsaW5ncygnc2VsZWN0Lndvby12YXJpYXRpb24tcmF3LXNlbGVjdCcpLmZpbmQoJ29wdGlvbicpLmVxKDEpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpICAgICAgID0gJCh0aGlzKS5maW5kKCdsaScpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdHMgID0gW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZvciBBdmFkYSBGSVhcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmxlbmd0aCA8IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zID0gJCh0aGlzKS5wYXJlbnQoKS5maW5kKCdzZWxlY3Qud29vLXZhcmlhdGlvbi1yYXctc2VsZWN0JykuZmluZCgnb3B0aW9uJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudCA9ICQodGhpcykucGFyZW50KCkuZmluZCgnc2VsZWN0Lndvby12YXJpYXRpb24tcmF3LXNlbGVjdCcpLmZpbmQoJ29wdGlvbjpzZWxlY3RlZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVxICAgICAgPSAkKHRoaXMpLnBhcmVudCgpLmZpbmQoJ3NlbGVjdC53b28tdmFyaWF0aW9uLXJhdy1zZWxlY3QnKS5maW5kKCdvcHRpb24nKS5lcSgxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCh0aGlzKS52YWwoKSAhPT0gJycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0cy5wdXNoKCQodGhpcykudmFsKCkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZCA9IGN1cnJlbnQgPyBjdXJyZW50LnZhbCgpIDogZXEudmFsKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIF8uZGVsYXkoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSAkKHRoaXMpLmF0dHIoJ2RhdGEtdmFsdWUnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5yZW1vdmVDbGFzcygnc2VsZWN0ZWQgZGlzYWJsZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlID09PSBzZWxlY3RlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5hZGRDbGFzcygnc2VsZWN0ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLmhhc0NsYXNzKCdyYWRpby12YXJpYWJsZS1pdGVtJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmZpbmQoJ2lucHV0Lnd2cy1yYWRpby12YXJpYWJsZS1pdGVtOnJhZGlvJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSkucHJvcCgnY2hlY2tlZCcsIHRydWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9LCAxKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIC8vIFdpdGhPdXQgQWpheCBVcGRhdGVcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQub24oJ3dvb2NvbW1lcmNlX3VwZGF0ZV92YXJpYXRpb25fdmFsdWVzJywgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgJCh0aGlzKS5maW5kKCd1bC52YXJpYWJsZS1pdGVtcy13cmFwcGVyJykuZWFjaChmdW5jdGlvbiAoKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgbGV0IHNlbGVjdGVkID0gJycsXG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zICA9ICQodGhpcykuc2libGluZ3MoJ3NlbGVjdC53b28tdmFyaWF0aW9uLXJhdy1zZWxlY3QnKS5maW5kKCdvcHRpb24nKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQgID0gJCh0aGlzKS5zaWJsaW5ncygnc2VsZWN0Lndvby12YXJpYXRpb24tcmF3LXNlbGVjdCcpLmZpbmQoJ29wdGlvbjpzZWxlY3RlZCcpLFxuICAgICAgICAgICAgICAgICAgICAgICAgZXEgICAgICAgPSAkKHRoaXMpLnNpYmxpbmdzKCdzZWxlY3Qud29vLXZhcmlhdGlvbi1yYXctc2VsZWN0JykuZmluZCgnb3B0aW9uJykuZXEoMSksXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSAgICAgICA9ICQodGhpcykuZmluZCgnbGknKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdHMgID0gW107XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gRm9yIEF2YWRhIEZJWFxuICAgICAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5sZW5ndGggPCAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zID0gJCh0aGlzKS5wYXJlbnQoKS5maW5kKCdzZWxlY3Qud29vLXZhcmlhdGlvbi1yYXctc2VsZWN0JykuZmluZCgnb3B0aW9uJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50ID0gJCh0aGlzKS5wYXJlbnQoKS5maW5kKCdzZWxlY3Qud29vLXZhcmlhdGlvbi1yYXctc2VsZWN0JykuZmluZCgnb3B0aW9uOnNlbGVjdGVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlcSAgICAgID0gJCh0aGlzKS5wYXJlbnQoKS5maW5kKCdzZWxlY3Qud29vLXZhcmlhdGlvbi1yYXctc2VsZWN0JykuZmluZCgnb3B0aW9uJykuZXEoMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmVhY2goZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCQodGhpcykudmFsKCkgIT09ICcnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0cy5wdXNoKCQodGhpcykudmFsKCkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkID0gY3VycmVudCA/IGN1cnJlbnQudmFsKCkgOiBlcS52YWwoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgXy5kZWxheShmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaS5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSAkKHRoaXMpLmF0dHIoJ2RhdGEtdmFsdWUnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLnJlbW92ZUNsYXNzKCdzZWxlY3RlZCBkaXNhYmxlZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChfLmNvbnRhaW5zKHNlbGVjdHMsIHZhbHVlKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLnJlbW92ZUNsYXNzKCdkaXNhYmxlZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWUgPT09IHNlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmFkZENsYXNzKCdzZWxlY3RlZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCQodGhpcykuaGFzQ2xhc3MoJ3JhZGlvLXZhcmlhYmxlLWl0ZW0nKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykuZmluZCgnaW5wdXQud3ZzLXJhZGlvLXZhcmlhYmxlLWl0ZW06cmFkaW8nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKS5wcm9wKCdjaGVja2VkJywgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykuYWRkQ2xhc3MoJ2Rpc2FibGVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLmhhc0NsYXNzKCdyYWRpby12YXJpYWJsZS1pdGVtJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykuZmluZCgnaW5wdXQud3ZzLXJhZGlvLXZhcmlhYmxlLWl0ZW06cmFkaW8nKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpLnByb3AoJ2NoZWNrZWQnLCBmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSwgMSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAqIGpRdWVyeVxuICAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAqL1xuXG4gICAgJC5mblsnV29vVmFyaWF0aW9uU3dhdGNoZXMnXSA9IFdvb1ZhcmlhdGlvblN3YXRjaGVzLl9qUXVlcnlJbnRlcmZhY2U7XG4gICAgJC5mblsnV29vVmFyaWF0aW9uU3dhdGNoZXMnXS5Db25zdHJ1Y3RvciA9IFdvb1ZhcmlhdGlvblN3YXRjaGVzO1xuICAgICQuZm5bJ1dvb1ZhcmlhdGlvblN3YXRjaGVzJ10ubm9Db25mbGljdCAgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgICQuZm5bJ1dvb1ZhcmlhdGlvblN3YXRjaGVzJ10gPSAkLmZuWydXb29WYXJpYXRpb25Td2F0Y2hlcyddO1xuICAgICAgICByZXR1cm4gV29vVmFyaWF0aW9uU3dhdGNoZXMuX2pRdWVyeUludGVyZmFjZVxuICAgIH1cblxuICAgIHJldHVybiBXb29WYXJpYXRpb25Td2F0Y2hlcztcblxufSkoalF1ZXJ5KTtcblxuZXhwb3J0IGRlZmF1bHQgV29vVmFyaWF0aW9uU3dhdGNoZXNcblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL2pzL1dvb1ZhcmlhdGlvblN3YXRjaGVzLmpzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7QUM3REE7QUFDQTtBQUFBO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBOzs7Ozs7Ozs7Ozs7O0FDYkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUhBO0FBTUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQXhCQTtBQUFBO0FBQUE7QUErQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQ0E7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUE1SEE7QUFBQTtBQUFBO0FBK0hBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFwS0E7QUFBQTtBQUFBO0FBdUtBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFwTEE7QUFBQTtBQUFBO0FBdUxBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBTUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQU1BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBL1FBO0FBQUE7QUFBQTtBQTBCQTtBQUNBO0FBQ0E7QUFDQTtBQTdCQTtBQUNBO0FBREE7QUFBQTtBQUNBO0FBaVJBOzs7Ozs7QUFNQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBOzs7O0EiLCJzb3VyY2VSb290IjoiIn0=
1
  /*!
2
+ * WooCommerce Variation Swatches v1.0.18
3
  *
4
  * Author: Emran Ahmed ( emran.bd.08@gmail.com )
5
+ * Date: 2018-4-9 23:49:39
6
  * Released under the GPLv3 license.
7
  */
8
  /******/ (function(modules) { // webpackBootstrap
128
  this._generated = {};
129
  this.product_variations = this._element.data('product_variations');
130
  this.is_ajax_variation = !this.product_variations;
131
+ this.hidden_behaviour = $('body').hasClass('woo-variation-swatches-attribute-behavior-hide');
132
 
133
  // Call
134
+ this.init(this.is_ajax_variation, this.hidden_behaviour);
135
+ this.loaded(this.is_ajax_variation, this.hidden_behaviour);
136
+ this.update(this.is_ajax_variation, this.hidden_behaviour);
137
+ this.reset(this.is_ajax_variation, this.hidden_behaviour);
138
 
139
  // Trigger
140
  $(document).trigger('woo_variation_swatches', [this._element]);
142
 
143
  _createClass(WooVariationSwatches, [{
144
  key: 'init',
145
+ value: function init(is_ajax, hidden_behaviour) {
146
  var _this2 = this;
147
 
148
  this._element.find('ul.variable-items-wrapper').each(function (i, el) {
157
  }
158
 
159
  if (reselect_clear) {
160
+ $(this).on('touchstart click', 'li:not(.selected):not(.radio-variable-item)', function (e) {
161
  e.preventDefault();
162
  e.stopPropagation();
163
  var value = $(this).data('value');
167
  select.trigger('touchstart');
168
  });
169
 
170
+ $(this).on('touchstart click', 'li.selected:not(.radio-variable-item)', function (e) {
171
  e.preventDefault();
172
  e.stopPropagation();
173
  select.val('').trigger('change');
177
  });
178
 
179
  // RADIO
180
+ $(this).on('touchstart click', 'input.wvs-radio-variable-item:radio', function (e) {
181
  e.preventDefault();
182
  e.stopPropagation();
183
  $(this).trigger('change');
205
  select.trigger('touchstart');
206
  });
207
  } else {
208
+ $(this).on('touchstart click', 'li:not(.radio-variable-item)', function (e) {
209
  e.preventDefault();
210
  e.stopPropagation();
211
  var value = $(this).data('value');
239
  }
240
  }, {
241
  key: 'loaded',
242
+ value: function loaded(is_ajax, hidden_behaviour) {
243
  if (!is_ajax) {
244
  this._element.on('woo_variation_swatches_init', function (event, object, product_variations) {
245
 
269
  if (!_.isEmpty(attribute_values) && !attribute_values.includes(attribute_value)) {
270
  $(this).removeClass('selected');
271
  $(this).addClass('disabled');
272
+
273
+ if (hidden_behaviour) {
274
+ //$(this).stop().fadeOut('fast');
275
+ }
276
+
277
  if ($(this).hasClass('radio-variable-item')) {
278
  $(this).find('input.wvs-radio-variable-item:radio').prop('disabled', true).prop('checked', false);
279
  }
285
  }
286
  }, {
287
  key: 'reset',
288
+ value: function reset(is_ajax, hidden_behaviour) {
289
  this._element.on('reset_data', function (event) {
290
  $(this).find('ul.variable-items-wrapper').each(function () {
291
  var li = $(this).find('li');
292
  li.each(function () {
293
  if (!is_ajax) {
294
  $(this).removeClass('selected disabled');
295
+ if (hidden_behaviour) {
296
+ //$(this).stop().fadeIn('fast');
297
+ }
298
  if ($(this).hasClass('radio-variable-item')) {
299
  $(this).find('input.wvs-radio-variable-item:radio').prop('disabled', false).prop('checked', false);
300
  }
305
  }
306
  }, {
307
  key: 'update',
308
+ value: function update(is_ajax, hidden_behaviour) {
309
  this._element.on('woocommerce_variation_has_changed', function (event) {
310
  if (is_ajax) {
311
  $(this).find('ul.variable-items-wrapper').each(function () {
334
  li.each(function () {
335
  var value = $(this).attr('data-value');
336
  $(this).removeClass('selected disabled');
337
+ if (hidden_behaviour) {
338
+ //$(this).stop().fadeIn('fast');
339
+ }
340
  if (value === selected) {
341
  $(this).addClass('selected');
342
  if ($(this).hasClass('radio-variable-item')) {
377
  _.delay(function () {
378
  li.each(function () {
379
  var value = $(this).attr('data-value');
380
+ $(this).removeClass('selected disabled').addClass('disabled');
381
+ if (hidden_behaviour) {
382
+ //$(this).stop().fadeIn('fast');
383
+ }
384
  if (_.contains(selects, value)) {
385
  $(this).removeClass('disabled');
386
  if (value === selected) {
390
  }
391
  }
392
  } else {
393
+ //$(this).addClass('disabled');
394
+ if (hidden_behaviour) {
395
+ //$(this).stop().fadeOut('fast');
396
+ }
397
  if ($(this).hasClass('radio-variable-item')) {
398
  $(this).find('input.wvs-radio-variable-item:radio').prop('disabled', true).prop('checked', false);
399
  }
436
  /***/ })
437
 
438
  /******/ });
439
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzL2pzL2Zyb250ZW5kLmpzIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vL3dlYnBhY2svYm9vdHN0cmFwIDNiYTU4MmY0ODE2ZDk0OTYzNTM5Iiwid2VicGFjazovLy9zcmMvanMvZnJvbnRlbmQuanMiLCJ3ZWJwYWNrOi8vL3NyYy9qcy9Xb29WYXJpYXRpb25Td2F0Y2hlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyIgXHQvLyBUaGUgbW9kdWxlIGNhY2hlXG4gXHR2YXIgaW5zdGFsbGVkTW9kdWxlcyA9IHt9O1xuXG4gXHQvLyBUaGUgcmVxdWlyZSBmdW5jdGlvblxuIFx0ZnVuY3Rpb24gX193ZWJwYWNrX3JlcXVpcmVfXyhtb2R1bGVJZCkge1xuXG4gXHRcdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuIFx0XHRpZihpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSkge1xuIFx0XHRcdHJldHVybiBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXS5leHBvcnRzO1xuIFx0XHR9XG4gXHRcdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG4gXHRcdHZhciBtb2R1bGUgPSBpbnN0YWxsZWRNb2R1bGVzW21vZHVsZUlkXSA9IHtcbiBcdFx0XHRpOiBtb2R1bGVJZCxcbiBcdFx0XHRsOiBmYWxzZSxcbiBcdFx0XHRleHBvcnRzOiB7fVxuIFx0XHR9O1xuXG4gXHRcdC8vIEV4ZWN1dGUgdGhlIG1vZHVsZSBmdW5jdGlvblxuIFx0XHRtb2R1bGVzW21vZHVsZUlkXS5jYWxsKG1vZHVsZS5leHBvcnRzLCBtb2R1bGUsIG1vZHVsZS5leHBvcnRzLCBfX3dlYnBhY2tfcmVxdWlyZV9fKTtcblxuIFx0XHQvLyBGbGFnIHRoZSBtb2R1bGUgYXMgbG9hZGVkXG4gXHRcdG1vZHVsZS5sID0gdHJ1ZTtcblxuIFx0XHQvLyBSZXR1cm4gdGhlIGV4cG9ydHMgb2YgdGhlIG1vZHVsZVxuIFx0XHRyZXR1cm4gbW9kdWxlLmV4cG9ydHM7XG4gXHR9XG5cblxuIFx0Ly8gZXhwb3NlIHRoZSBtb2R1bGVzIG9iamVjdCAoX193ZWJwYWNrX21vZHVsZXNfXylcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubSA9IG1vZHVsZXM7XG5cbiBcdC8vIGV4cG9zZSB0aGUgbW9kdWxlIGNhY2hlXG4gXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmMgPSBpbnN0YWxsZWRNb2R1bGVzO1xuXG4gXHQvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9uIGZvciBoYXJtb255IGV4cG9ydHNcbiBcdF9fd2VicGFja19yZXF1aXJlX18uZCA9IGZ1bmN0aW9uKGV4cG9ydHMsIG5hbWUsIGdldHRlcikge1xuIFx0XHRpZighX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIG5hbWUpKSB7XG4gXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIG5hbWUsIHtcbiBcdFx0XHRcdGNvbmZpZ3VyYWJsZTogZmFsc2UsXG4gXHRcdFx0XHRlbnVtZXJhYmxlOiB0cnVlLFxuIFx0XHRcdFx0Z2V0OiBnZXR0ZXJcbiBcdFx0XHR9KTtcbiBcdFx0fVxuIFx0fTtcblxuIFx0Ly8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbiBcdF9fd2VicGFja19yZXF1aXJlX18ubiA9IGZ1bmN0aW9uKG1vZHVsZSkge1xuIFx0XHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cbiBcdFx0XHRmdW5jdGlvbiBnZXREZWZhdWx0KCkgeyByZXR1cm4gbW9kdWxlWydkZWZhdWx0J107IH0gOlxuIFx0XHRcdGZ1bmN0aW9uIGdldE1vZHVsZUV4cG9ydHMoKSB7IHJldHVybiBtb2R1bGU7IH07XG4gXHRcdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsICdhJywgZ2V0dGVyKTtcbiBcdFx0cmV0dXJuIGdldHRlcjtcbiBcdH07XG5cbiBcdC8vIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbFxuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5vID0gZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgeyByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iamVjdCwgcHJvcGVydHkpOyB9O1xuXG4gXHQvLyBfX3dlYnBhY2tfcHVibGljX3BhdGhfX1xuIFx0X193ZWJwYWNrX3JlcXVpcmVfXy5wID0gXCJcIjtcblxuIFx0Ly8gTG9hZCBlbnRyeSBtb2R1bGUgYW5kIHJldHVybiBleHBvcnRzXG4gXHRyZXR1cm4gX193ZWJwYWNrX3JlcXVpcmVfXyhfX3dlYnBhY2tfcmVxdWlyZV9fLnMgPSA3KTtcblxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyB3ZWJwYWNrL2Jvb3RzdHJhcCAzYmE1ODJmNDgxNmQ5NDk2MzUzOSIsImpRdWVyeSgkID0+IHtcbiAgICBpbXBvcnQoJy4vV29vVmFyaWF0aW9uU3dhdGNoZXMnKS50aGVuKCgpID0+IHtcbiAgICAgICAgLy8gSW5pdCBvbiBBamF4IFBvcHVwIDopXG4gICAgICAgICQoZG9jdW1lbnQpLm9uKCd3Y192YXJpYXRpb25fZm9ybScsICcudmFyaWF0aW9uc19mb3JtJywgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgJCh0aGlzKS5Xb29WYXJpYXRpb25Td2F0Y2hlcygpO1xuICAgICAgICB9KTtcblxuICAgICAgICAvLyBTdXBwb3J0IGZvciBKZXRwYWNrJ3MgSW5maW5pdGUgU2Nyb2xsLFxuICAgICAgICAkKGRvY3VtZW50LmJvZHkpLm9uKCdwb3N0LWxvYWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAkKCcudmFyaWF0aW9uc19mb3JtJykud2NfdmFyaWF0aW9uX2Zvcm0oKTtcbiAgICAgICAgfSk7XG5cbiAgICB9KTtcbn0pOyAgLy8gZW5kIG9mIGpxdWVyeSBtYWluIHdyYXBwZXJcblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gc3JjL2pzL2Zyb250ZW5kLmpzIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gV29vQ29tbWVyY2UgVmFyaWF0aW9uIENoYW5nZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBXb29WYXJpYXRpb25Td2F0Y2hlcyA9ICgoJCkgPT4ge1xuXG4gICAgY29uc3QgRGVmYXVsdCA9IHt9O1xuXG4gICAgY2xhc3MgV29vVmFyaWF0aW9uU3dhdGNoZXMge1xuXG4gICAgICAgIGNvbnN0cnVjdG9yKGVsZW1lbnQsIGNvbmZpZykge1xuXG4gICAgICAgICAgICAvLyBBc3NpZ25cbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQgICAgICAgICAgID0gJChlbGVtZW50KTtcbiAgICAgICAgICAgIHRoaXMuX2NvbmZpZyAgICAgICAgICAgID0gJC5leHRlbmQoe30sIERlZmF1bHQsIGNvbmZpZyk7XG4gICAgICAgICAgICB0aGlzLl9nZW5lcmF0ZWQgICAgICAgICA9IHt9O1xuICAgICAgICAgICAgdGhpcy5wcm9kdWN0X3ZhcmlhdGlvbnMgPSB0aGlzLl9lbGVtZW50LmRhdGEoJ3Byb2R1Y3RfdmFyaWF0aW9ucycpO1xuICAgICAgICAgICAgdGhpcy5pc19hamF4X3ZhcmlhdGlvbiAgPSAhdGhpcy5wcm9kdWN0X3ZhcmlhdGlvbnM7XG4gICAgICAgICAgICB0aGlzLmhpZGRlbl9iZWhhdmlvdXIgICA9ICQoJ2JvZHknKS5oYXNDbGFzcygnd29vLXZhcmlhdGlvbi1zd2F0Y2hlcy1hdHRyaWJ1dGUtYmVoYXZpb3ItaGlkZScpO1xuXG4gICAgICAgICAgICAvLyBDYWxsXG4gICAgICAgICAgICB0aGlzLmluaXQodGhpcy5pc19hamF4X3ZhcmlhdGlvbiwgdGhpcy5oaWRkZW5fYmVoYXZpb3VyKTtcbiAgICAgICAgICAgIHRoaXMubG9hZGVkKHRoaXMuaXNfYWpheF92YXJpYXRpb24sIHRoaXMuaGlkZGVuX2JlaGF2aW91cik7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZSh0aGlzLmlzX2FqYXhfdmFyaWF0aW9uLCB0aGlzLmhpZGRlbl9iZWhhdmlvdXIpO1xuICAgICAgICAgICAgdGhpcy5yZXNldCh0aGlzLmlzX2FqYXhfdmFyaWF0aW9uLCB0aGlzLmhpZGRlbl9iZWhhdmlvdXIpO1xuXG4gICAgICAgICAgICAvLyBUcmlnZ2VyXG4gICAgICAgICAgICAkKGRvY3VtZW50KS50cmlnZ2VyKCd3b29fdmFyaWF0aW9uX3N3YXRjaGVzJywgW3RoaXMuX2VsZW1lbnRdKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0YXRpYyBfalF1ZXJ5SW50ZXJmYWNlKGNvbmZpZykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgbmV3IFdvb1ZhcmlhdGlvblN3YXRjaGVzKHRoaXMsIGNvbmZpZylcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH1cblxuICAgICAgICBpbml0KGlzX2FqYXgsIGhpZGRlbl9iZWhhdmlvdXIpIHtcblxuICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5maW5kKCd1bC52YXJpYWJsZS1pdGVtcy13cmFwcGVyJykuZWFjaChmdW5jdGlvbiAoaSwgZWwpIHtcblxuICAgICAgICAgICAgICAgIGxldCBzZWxlY3QgICAgICAgICA9ICQodGhpcykuc2libGluZ3MoJ3NlbGVjdC53b28tdmFyaWF0aW9uLXJhdy1zZWxlY3QnKTtcbiAgICAgICAgICAgICAgICBsZXQgbGkgICAgICAgICAgICAgPSAkKHRoaXMpLmZpbmQoJ2xpJyk7XG4gICAgICAgICAgICAgICAgbGV0IHJlc2VsZWN0X2NsZWFyID0gJCh0aGlzKS5oYXNDbGFzcygncmVzZWxlY3QtY2xlYXInKTtcblxuICAgICAgICAgICAgICAgIC8vIEZvciBBdmFkYSBGSVhcbiAgICAgICAgICAgICAgICBpZiAoc2VsZWN0Lmxlbmd0aCA8IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ID0gJCh0aGlzKS5wYXJlbnQoKS5maW5kKCdzZWxlY3Qud29vLXZhcmlhdGlvbi1yYXctc2VsZWN0Jyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKHJlc2VsZWN0X2NsZWFyKSB7XG4gICAgICAgICAgICAgICAgICAgICQodGhpcykub24oJ3RvdWNoc3RhcnQgY2xpY2snLCAnbGk6bm90KC5zZWxlY3RlZCk6bm90KC5yYWRpby12YXJpYWJsZS1pdGVtKScsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gJCh0aGlzKS5kYXRhKCd2YWx1ZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnZhbCh2YWx1ZSkudHJpZ2dlcignY2hhbmdlJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudHJpZ2dlcignY2xpY2snKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCdmb2N1c2luJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudHJpZ2dlcigndG91Y2hzdGFydCcpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLm9uKCd0b3VjaHN0YXJ0IGNsaWNrJywgJ2xpLnNlbGVjdGVkOm5vdCgucmFkaW8tdmFyaWFibGUtaXRlbSknLCBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC52YWwoJycpLnRyaWdnZXIoJ2NoYW5nZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnRyaWdnZXIoJ2NsaWNrJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudHJpZ2dlcignZm9jdXNpbicpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnRyaWdnZXIoJ3RvdWNoc3RhcnQnKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gUkFESU9cbiAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5vbigndG91Y2hzdGFydCBjbGljaycsICdpbnB1dC53dnMtcmFkaW8tdmFyaWFibGUtaXRlbTpyYWRpbycsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS50cmlnZ2VyKCdjaGFuZ2UnKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5vbignY2hhbmdlJywgJ2lucHV0Lnd2cy1yYWRpby12YXJpYWJsZS1pdGVtOnJhZGlvJywgZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWx1ZSA9ICQodGhpcykudmFsKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLnBhcmVudCgnLnJhZGlvLXZhcmlhYmxlLWl0ZW0nKS5oYXNDbGFzcygnc2VsZWN0ZWQnKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC52YWwoJycpLnRyaWdnZXIoJ2NoYW5nZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIF8uZGVsYXkoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLnByb3AoJ2NoZWNrZWQnLCBmYWxzZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCAxKVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnZhbCh2YWx1ZSkudHJpZ2dlcignY2hhbmdlJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCdjbGljaycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnRyaWdnZXIoJ2ZvY3VzaW4nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCd0b3VjaHN0YXJ0Jyk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5vbigndG91Y2hzdGFydCBjbGljaycsICdsaTpub3QoLnJhZGlvLXZhcmlhYmxlLWl0ZW0pJywgZnVuY3Rpb24gKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSAkKHRoaXMpLmRhdGEoJ3ZhbHVlJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudmFsKHZhbHVlKS50cmlnZ2VyKCdjaGFuZ2UnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCdjbGljaycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnRyaWdnZXIoJ2ZvY3VzaW4nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCd0b3VjaHN0YXJ0Jyk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIFJhZGlvXG4gICAgICAgICAgICAgICAgICAgICQodGhpcykub24oJ2NoYW5nZScsICdpbnB1dC53dnMtcmFkaW8tdmFyaWFibGUtaXRlbTpyYWRpbycsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gJCh0aGlzKS52YWwoKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0LnZhbCh2YWx1ZSkudHJpZ2dlcignY2hhbmdlJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudHJpZ2dlcignY2xpY2snKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdC50cmlnZ2VyKCdmb2N1c2luJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3QudHJpZ2dlcigndG91Y2hzdGFydCcpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBSYWRpb1xuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5wYXJlbnQoJ2xpLnJhZGlvLXZhcmlhYmxlLWl0ZW0nKS5yZW1vdmVDbGFzcygnc2VsZWN0ZWQgZGlzYWJsZWQnKS5hZGRDbGFzcygnc2VsZWN0ZWQnKVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgXy5kZWxheSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudC50cmlnZ2VyKCd3b29fdmFyaWF0aW9uX3N3YXRjaGVzX2luaXQnLCBbdGhpcywgdGhpcy5wcm9kdWN0X3ZhcmlhdGlvbnNdKVxuICAgICAgICAgICAgICAgICQoZG9jdW1lbnQpLnRyaWdnZXIoJ3dvb192YXJpYXRpb25fc3dhdGNoZXNfbG9hZGVkJywgW3RoaXMuX2VsZW1lbnQsIHRoaXMucHJvZHVjdF92YXJpYXRpb25zXSlcbiAgICAgICAgICAgIH0sIDEpXG4gICAgICAgIH1cblxuICAgICAgICBsb2FkZWQoaXNfYWpheCwgaGlkZGVuX2JlaGF2aW91cikge1xuICAgICAgICAgICAgaWYgKCFpc19hamF4KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5vbignd29vX3ZhcmlhdGlvbl9zd2F0Y2hlc19pbml0JywgZnVuY3Rpb24gKGV2ZW50LCBvYmplY3QsIHByb2R1Y3RfdmFyaWF0aW9ucykge1xuXG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC5fZ2VuZXJhdGVkID0gcHJvZHVjdF92YXJpYXRpb25zLnJlZHVjZSgob2JqLCB2YXJpYXRpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKHZhcmlhdGlvbi5hdHRyaWJ1dGVzKS5tYXAoKGF0dHJpYnV0ZV9uYW1lKSA9PiB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIW9ialthdHRyaWJ1dGVfbmFtZV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JqW2F0dHJpYnV0ZV9uYW1lXSA9IFtdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhcmlhdGlvbi5hdHRyaWJ1dGVzW2F0dHJpYnV0ZV9uYW1lXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmpbYXR0cmlidXRlX25hbWVdLnB1c2godmFyaWF0aW9uLmF0dHJpYnV0ZXNbYXR0cmlidXRlX25hbWVdKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2JqO1xuICAgICAgICAgICAgICAgICAgICB9LCB7fSk7XG5cbiAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5maW5kKCd1bC52YXJpYWJsZS1pdGVtcy13cmFwcGVyJykuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbGkgICAgICAgICAgICAgICA9ICQodGhpcykuZmluZCgnbGknKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBhdHRyaWJ1dGUgICAgICAgID0gJCh0aGlzKS5kYXRhKCdhdHRyaWJ1dGVfbmFtZScpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGF0dHJpYnV0ZV92YWx1ZXMgPSBvYmplY3QuX2dlbmVyYXRlZFthdHRyaWJ1dGVdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaS5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgYXR0cmlidXRlX3ZhbHVlID0gJCh0aGlzKS5hdHRyKCdkYXRhLXZhbHVlJyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIV8uaXNFbXB0eShhdHRyaWJ1dGVfdmFsdWVzKSAmJiAhYXR0cmlidXRlX3ZhbHVlcy5pbmNsdWRlcyhhdHRyaWJ1dGVfdmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucmVtb3ZlQ2xhc3MoJ3NlbGVjdGVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykuYWRkQ2xhc3MoJ2Rpc2FibGVkJyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGhpZGRlbl9iZWhhdmlvdXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vJCh0aGlzKS5zdG9wKCkuZmFkZU91dCgnZmFzdCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCQodGhpcykuaGFzQ2xhc3MoJ3JhZGlvLXZhcmlhYmxlLWl0ZW0nKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5maW5kKCdpbnB1dC53dnMtcmFkaW8tdmFyaWFibGUtaXRlbTpyYWRpbycpLnByb3AoJ2Rpc2FibGVkJywgdHJ1ZSkucHJvcCgnY2hlY2tlZCcsIGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJlc2V0KGlzX2FqYXgsIGhpZGRlbl9iZWhhdmlvdXIpIHtcbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnQub24oJ3Jlc2V0X2RhdGEnLCBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAkKHRoaXMpLmZpbmQoJ3VsLnZhcmlhYmxlLWl0ZW1zLXdyYXBwZXInKS5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGxpID0gJCh0aGlzKS5maW5kKCdsaScpO1xuICAgICAgICAgICAgICAgICAgICBsaS5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaXNfYWpheCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucmVtb3ZlQ2xhc3MoJ3NlbGVjdGVkIGRpc2FibGVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGhpZGRlbl9iZWhhdmlvdXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8kKHRoaXMpLnN0b3AoKS5mYWRlSW4oJ2Zhc3QnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCQodGhpcykuaGFzQ2xhc3MoJ3JhZGlvLXZhcmlhYmxlLWl0ZW0nKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmZpbmQoJ2lucHV0Lnd2cy1yYWRpby12YXJpYWJsZS1pdGVtOnJhZGlvJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSkucHJvcCgnY2hlY2tlZCcsIGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICB1cGRhdGUoaXNfYWpheCwgaGlkZGVuX2JlaGF2aW91cikge1xuICAgICAgICAgICAgdGhpcy5fZWxlbWVudC5vbignd29vY29tbWVyY2VfdmFyaWF0aW9uX2hhc19jaGFuZ2VkJywgZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgICAgICAgaWYgKGlzX2FqYXgpIHtcbiAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5maW5kKCd1bC52YXJpYWJsZS1pdGVtcy13cmFwcGVyJykuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgc2VsZWN0ZWQgPSAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zICA9ICQodGhpcykuc2libGluZ3MoJ3NlbGVjdC53b28tdmFyaWF0aW9uLXJhdy1zZWxlY3QnKS5maW5kKCdvcHRpb24nKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50ICA9ICQodGhpcykuc2libGluZ3MoJ3NlbGVjdC53b28tdmFyaWF0aW9uLXJhdy1zZWxlY3QnKS5maW5kKCdvcHRpb246c2VsZWN0ZWQnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcSAgICAgICA9ICQodGhpcykuc2libGluZ3MoJ3NlbGVjdC53b28tdmFyaWF0aW9uLXJhdy1zZWxlY3QnKS5maW5kKCdvcHRpb24nKS5lcSgxKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSAgICAgICA9ICQodGhpcykuZmluZCgnbGknKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RzICA9IFtdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBGb3IgQXZhZGEgRklYXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAob3B0aW9ucy5sZW5ndGggPCAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucyA9ICQodGhpcykucGFyZW50KCkuZmluZCgnc2VsZWN0Lndvby12YXJpYXRpb24tcmF3LXNlbGVjdCcpLmZpbmQoJ29wdGlvbicpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQgPSAkKHRoaXMpLnBhcmVudCgpLmZpbmQoJ3NlbGVjdC53b28tdmFyaWF0aW9uLXJhdy1zZWxlY3QnKS5maW5kKCdvcHRpb246c2VsZWN0ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcSAgICAgID0gJCh0aGlzKS5wYXJlbnQoKS5maW5kKCdzZWxlY3Qud29vLXZhcmlhdGlvbi1yYXctc2VsZWN0JykuZmluZCgnb3B0aW9uJykuZXEoMSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnMuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCQodGhpcykudmFsKCkgIT09ICcnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdHMucHVzaCgkKHRoaXMpLnZhbCgpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQgPSBjdXJyZW50ID8gY3VycmVudC52YWwoKSA6IGVxLnZhbCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBfLmRlbGF5KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaS5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gJCh0aGlzKS5hdHRyKCdkYXRhLXZhbHVlJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykucmVtb3ZlQ2xhc3MoJ3NlbGVjdGVkIGRpc2FibGVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChoaWRkZW5fYmVoYXZpb3VyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyQodGhpcykuc3RvcCgpLmZhZGVJbignZmFzdCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gc2VsZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICQodGhpcykuYWRkQ2xhc3MoJ3NlbGVjdGVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCh0aGlzKS5oYXNDbGFzcygncmFkaW8tdmFyaWFibGUtaXRlbScpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5maW5kKCdpbnB1dC53dnMtcmFkaW8tdmFyaWFibGUtaXRlbTpyYWRpbycpLnByb3AoJ2Rpc2FibGVkJywgZmFsc2UpLnByb3AoJ2NoZWNrZWQnLCB0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSwgMSk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAvLyBXaXRoT3V0IEFqYXggVXBkYXRlXG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50Lm9uKCd3b29jb21tZXJjZV91cGRhdGVfdmFyaWF0aW9uX3ZhbHVlcycsIGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgICAgICAgICQodGhpcykuZmluZCgndWwudmFyaWFibGUtaXRlbXMtd3JhcHBlcicpLmVhY2goZnVuY3Rpb24gKCkge1xuXG4gICAgICAgICAgICAgICAgICAgIGxldCBzZWxlY3RlZCA9ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucyAgPSAkKHRoaXMpLnNpYmxpbmdzKCdzZWxlY3Qud29vLXZhcmlhdGlvbi1yYXctc2VsZWN0JykuZmluZCgnb3B0aW9uJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50ICA9ICQodGhpcykuc2libGluZ3MoJ3NlbGVjdC53b28tdmFyaWF0aW9uLXJhdy1zZWxlY3QnKS5maW5kKCdvcHRpb246c2VsZWN0ZWQnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVxICAgICAgID0gJCh0aGlzKS5zaWJsaW5ncygnc2VsZWN0Lndvby12YXJpYXRpb24tcmF3LXNlbGVjdCcpLmZpbmQoJ29wdGlvbicpLmVxKDEpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbGkgICAgICAgPSAkKHRoaXMpLmZpbmQoJ2xpJyksXG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RzICA9IFtdO1xuXG4gICAgICAgICAgICAgICAgICAgIC8vIEZvciBBdmFkYSBGSVhcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9wdGlvbnMubGVuZ3RoIDwgMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucyA9ICQodGhpcykucGFyZW50KCkuZmluZCgnc2VsZWN0Lndvby12YXJpYXRpb24tcmF3LXNlbGVjdCcpLmZpbmQoJ29wdGlvbicpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudCA9ICQodGhpcykucGFyZW50KCkuZmluZCgnc2VsZWN0Lndvby12YXJpYXRpb24tcmF3LXNlbGVjdCcpLmZpbmQoJ29wdGlvbjpzZWxlY3RlZCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZXEgICAgICA9ICQodGhpcykucGFyZW50KCkuZmluZCgnc2VsZWN0Lndvby12YXJpYXRpb24tcmF3LXNlbGVjdCcpLmZpbmQoJ29wdGlvbicpLmVxKDEpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5lYWNoKGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLnZhbCgpICE9PSAnJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdHMucHVzaCgkKHRoaXMpLnZhbCgpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZCA9IGN1cnJlbnQgPyBjdXJyZW50LnZhbCgpIDogZXEudmFsKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgICAgIF8uZGVsYXkoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGkuZWFjaChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHZhbHVlID0gJCh0aGlzKS5hdHRyKCdkYXRhLXZhbHVlJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5yZW1vdmVDbGFzcygnc2VsZWN0ZWQgZGlzYWJsZWQnKS5hZGRDbGFzcygnZGlzYWJsZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGlkZGVuX2JlaGF2aW91cikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyQodGhpcykuc3RvcCgpLmZhZGVJbignZmFzdCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXy5jb250YWlucyhzZWxlY3RzLCB2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5yZW1vdmVDbGFzcygnZGlzYWJsZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlID09PSBzZWxlY3RlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5hZGRDbGFzcygnc2VsZWN0ZWQnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkKHRoaXMpLmhhc0NsYXNzKCdyYWRpby12YXJpYWJsZS1pdGVtJykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmZpbmQoJ2lucHV0Lnd2cy1yYWRpby12YXJpYWJsZS1pdGVtOnJhZGlvJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSkucHJvcCgnY2hlY2tlZCcsIHRydWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyQodGhpcykuYWRkQ2xhc3MoJ2Rpc2FibGVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChoaWRkZW5fYmVoYXZpb3VyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyQodGhpcykuc3RvcCgpLmZhZGVPdXQoJ2Zhc3QnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJCh0aGlzKS5oYXNDbGFzcygncmFkaW8tdmFyaWFibGUtaXRlbScpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLmZpbmQoJ2lucHV0Lnd2cy1yYWRpby12YXJpYWJsZS1pdGVtOnJhZGlvJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKS5wcm9wKCdjaGVja2VkJywgZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0sIDEpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgKiBqUXVlcnlcbiAgICAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgKi9cblxuICAgICQuZm5bJ1dvb1ZhcmlhdGlvblN3YXRjaGVzJ10gPSBXb29WYXJpYXRpb25Td2F0Y2hlcy5falF1ZXJ5SW50ZXJmYWNlO1xuICAgICQuZm5bJ1dvb1ZhcmlhdGlvblN3YXRjaGVzJ10uQ29uc3RydWN0b3IgPSBXb29WYXJpYXRpb25Td2F0Y2hlcztcbiAgICAkLmZuWydXb29WYXJpYXRpb25Td2F0Y2hlcyddLm5vQ29uZmxpY3QgID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAkLmZuWydXb29WYXJpYXRpb25Td2F0Y2hlcyddID0gJC5mblsnV29vVmFyaWF0aW9uU3dhdGNoZXMnXTtcbiAgICAgICAgcmV0dXJuIFdvb1ZhcmlhdGlvblN3YXRjaGVzLl9qUXVlcnlJbnRlcmZhY2VcbiAgICB9XG5cbiAgICByZXR1cm4gV29vVmFyaWF0aW9uU3dhdGNoZXM7XG5cbn0pKGpRdWVyeSk7XG5cbmV4cG9ydCBkZWZhdWx0IFdvb1ZhcmlhdGlvblN3YXRjaGVzXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIHNyYy9qcy9Xb29WYXJpYXRpb25Td2F0Y2hlcy5qcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7Ozs7Ozs7Ozs7Ozs7O0FDN0RBO0FBQ0E7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTs7Ozs7Ozs7Ozs7OztBQ2JBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFIQTtBQU1BO0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQXpCQTtBQUFBO0FBQUE7QUFnQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQ0E7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUE3SEE7QUFBQTtBQUFBO0FBZ0lBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBMUtBO0FBQUE7QUFBQTtBQTZLQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBN0xBO0FBQUE7QUFBQTtBQWdNQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDQTtBQU1BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFNQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQWpTQTtBQUFBO0FBQUE7QUEyQkE7QUFDQTtBQUNBO0FBQ0E7QUE5QkE7QUFDQTtBQURBO0FBQUE7QUFDQTtBQW1TQTs7Ozs7O0FBTUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTs7OztBIiwic291cmNlUm9vdCI6IiJ9
assets/js/frontend.min.js CHANGED
@@ -1 +1 @@
1
- !function(t){function i(a){if(e[a])return e[a].exports;var n=e[a]={i:a,l:!1,exports:{}};return t[a].call(n.exports,n,n.exports,i),n.l=!0,n.exports}var e={};i.m=t,i.c=e,i.d=function(t,e,a){i.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:a})},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,i){return Object.prototype.hasOwnProperty.call(t,i)},i.p="",i(i.s=7)}({7:function(t,i,e){t.exports=e(8)},8:function(t,i,e){jQuery(function(t){Promise.resolve().then(function(){return e(9)}).then(function(){t(document).on("wc_variation_form",".variations_form",function(){t(this).WooVariationSwatches()}),t(document.body).on("post-load",function(){t(".variations_form").wc_variation_form()})})})},9:function(t,i,e){"use strict";function a(t,i){if(!(t instanceof i))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(i,"__esModule",{value:!0});var n=function(){function t(t,i){for(var e=0;e<i.length;e++){var a=i[e];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(t,a.key,a)}}return function(i,e,a){return e&&t(i.prototype,e),a&&t(i,a),i}}(),r=function(t){var i={},e=function(){function e(n,r){a(this,e),this._element=t(n),this._config=t.extend({},i,r),this._generated={},this.product_variations=this._element.data("product_variations"),this.is_ajax_variation=!this.product_variations,this.init(this.is_ajax_variation),this.loaded(this.is_ajax_variation),this.update(this.is_ajax_variation),this.reset(this.is_ajax_variation),t(document).trigger("woo_variation_swatches",[this._element])}return n(e,[{key:"init",value:function(i){var e=this;this._element.find("ul.variable-items-wrapper").each(function(i,e){var a=t(this).siblings("select.woo-variation-raw-select"),n=(t(this).find("li"),t(this).hasClass("reselect-clear"));a.length<1&&(a=t(this).parent().find("select.woo-variation-raw-select")),n?(t(this).on("click","li:not(.selected):not(.radio-variable-item)",function(i){i.preventDefault(),i.stopPropagation();var e=t(this).data("value");a.val(e).trigger("change"),a.trigger("click"),a.trigger("focusin"),a.trigger("touchstart")}),t(this).on("click","li.selected:not(.radio-variable-item)",function(t){t.preventDefault(),t.stopPropagation(),a.val("").trigger("change"),a.trigger("click"),a.trigger("focusin"),a.trigger("touchstart")}),t(this).on("click","input.wvs-radio-variable-item:radio",function(i){i.preventDefault(),i.stopPropagation(),t(this).trigger("change")}),t(this).on("change","input.wvs-radio-variable-item:radio",function(i){var e=this;i.preventDefault(),i.stopPropagation();var n=t(this).val();t(this).parent(".radio-variable-item").hasClass("selected")?(a.val("").trigger("change"),_.delay(function(){t(e).prop("checked",!1)},1)):a.val(n).trigger("change"),a.trigger("click"),a.trigger("focusin"),a.trigger("touchstart")})):(t(this).on("click","li:not(.radio-variable-item)",function(i){i.preventDefault(),i.stopPropagation();var e=t(this).data("value");a.val(e).trigger("change"),a.trigger("click"),a.trigger("focusin"),a.trigger("touchstart")}),t(this).on("change","input.wvs-radio-variable-item:radio",function(i){i.preventDefault(),i.stopPropagation();var e=t(this).val();a.val(e).trigger("change"),a.trigger("click"),a.trigger("focusin"),a.trigger("touchstart"),t(this).parent("li.radio-variable-item").removeClass("selected disabled").addClass("selected")}))}),_.delay(function(){e._element.trigger("woo_variation_swatches_init",[e,e.product_variations]),t(document).trigger("woo_variation_swatches_loaded",[e._element,e.product_variations])},1)}},{key:"loaded",value:function(i){i||this._element.on("woo_variation_swatches_init",function(i,e,a){e._generated=a.reduce(function(t,i){return Object.keys(i.attributes).map(function(e){t[e]||(t[e]=[]),i.attributes[e]&&t[e].push(i.attributes[e])}),t},{}),t(this).find("ul.variable-items-wrapper").each(function(){var i=t(this).find("li"),a=t(this).data("attribute_name"),n=e._generated[a];i.each(function(){var i=t(this).attr("data-value");_.isEmpty(n)||n.includes(i)||(t(this).removeClass("selected"),t(this).addClass("disabled"),t(this).hasClass("radio-variable-item")&&t(this).find("input.wvs-radio-variable-item:radio").prop("disabled",!0).prop("checked",!1))})})})}},{key:"reset",value:function(i){this._element.on("reset_data",function(e){t(this).find("ul.variable-items-wrapper").each(function(){t(this).find("li").each(function(){i||(t(this).removeClass("selected disabled"),t(this).hasClass("radio-variable-item")&&t(this).find("input.wvs-radio-variable-item:radio").prop("disabled",!1).prop("checked",!1))})})})}},{key:"update",value:function(i){this._element.on("woocommerce_variation_has_changed",function(e){i&&t(this).find("ul.variable-items-wrapper").each(function(){var i="",e=t(this).siblings("select.woo-variation-raw-select").find("option"),a=t(this).siblings("select.woo-variation-raw-select").find("option:selected"),n=t(this).siblings("select.woo-variation-raw-select").find("option").eq(1),r=t(this).find("li"),o=[];e.length<1&&(e=t(this).parent().find("select.woo-variation-raw-select").find("option"),a=t(this).parent().find("select.woo-variation-raw-select").find("option:selected"),n=t(this).parent().find("select.woo-variation-raw-select").find("option").eq(1)),e.each(function(){""!==t(this).val()&&(o.push(t(this).val()),i=a?a.val():n.val())}),_.delay(function(){r.each(function(){var e=t(this).attr("data-value");t(this).removeClass("selected disabled"),e===i&&(t(this).addClass("selected"),t(this).hasClass("radio-variable-item")&&t(this).find("input.wvs-radio-variable-item:radio").prop("disabled",!1).prop("checked",!0))})},1)})}),this._element.on("woocommerce_update_variation_values",function(i){t(this).find("ul.variable-items-wrapper").each(function(){var i="",e=t(this).siblings("select.woo-variation-raw-select").find("option"),a=t(this).siblings("select.woo-variation-raw-select").find("option:selected"),n=t(this).siblings("select.woo-variation-raw-select").find("option").eq(1),r=t(this).find("li"),o=[];e.length<1&&(e=t(this).parent().find("select.woo-variation-raw-select").find("option"),a=t(this).parent().find("select.woo-variation-raw-select").find("option:selected"),n=t(this).parent().find("select.woo-variation-raw-select").find("option").eq(1)),e.each(function(){""!==t(this).val()&&(o.push(t(this).val()),i=a?a.val():n.val())}),_.delay(function(){r.each(function(){var e=t(this).attr("data-value");t(this).removeClass("selected disabled"),_.contains(o,e)?(t(this).removeClass("disabled"),e===i&&(t(this).addClass("selected"),t(this).hasClass("radio-variable-item")&&t(this).find("input.wvs-radio-variable-item:radio").prop("disabled",!1).prop("checked",!0))):(t(this).addClass("disabled"),t(this).hasClass("radio-variable-item")&&t(this).find("input.wvs-radio-variable-item:radio").prop("disabled",!0).prop("checked",!1))})},1)})})}}],[{key:"_jQueryInterface",value:function(t){return this.each(function(){new e(this,t)})}}]),e}();return t.fn.WooVariationSwatches=e._jQueryInterface,t.fn.WooVariationSwatches.Constructor=e,t.fn.WooVariationSwatches.noConflict=function(){return t.fn.WooVariationSwatches=t.fn.WooVariationSwatches,e._jQueryInterface},e}(jQuery);i.default=r}});
1
+ !function(t){function i(a){if(e[a])return e[a].exports;var n=e[a]={i:a,l:!1,exports:{}};return t[a].call(n.exports,n,n.exports,i),n.l=!0,n.exports}var e={};i.m=t,i.c=e,i.d=function(t,e,a){i.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:a})},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,i){return Object.prototype.hasOwnProperty.call(t,i)},i.p="",i(i.s=7)}({7:function(t,i,e){t.exports=e(8)},8:function(t,i,e){jQuery(function(t){Promise.resolve().then(function(){return e(9)}).then(function(){t(document).on("wc_variation_form",".variations_form",function(){t(this).WooVariationSwatches()}),t(document.body).on("post-load",function(){t(".variations_form").wc_variation_form()})})})},9:function(t,i,e){"use strict";function a(t,i){if(!(t instanceof i))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(i,"__esModule",{value:!0});var n=function(){function t(t,i){for(var e=0;e<i.length;e++){var a=i[e];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(t,a.key,a)}}return function(i,e,a){return e&&t(i.prototype,e),a&&t(i,a),i}}(),r=function(t){var i={},e=function(){function e(n,r){a(this,e),this._element=t(n),this._config=t.extend({},i,r),this._generated={},this.product_variations=this._element.data("product_variations"),this.is_ajax_variation=!this.product_variations,this.hidden_behaviour=t("body").hasClass("woo-variation-swatches-attribute-behavior-hide"),this.init(this.is_ajax_variation,this.hidden_behaviour),this.loaded(this.is_ajax_variation,this.hidden_behaviour),this.update(this.is_ajax_variation,this.hidden_behaviour),this.reset(this.is_ajax_variation,this.hidden_behaviour),t(document).trigger("woo_variation_swatches",[this._element])}return n(e,[{key:"init",value:function(i,e){var a=this;this._element.find("ul.variable-items-wrapper").each(function(i,e){var a=t(this).siblings("select.woo-variation-raw-select"),n=(t(this).find("li"),t(this).hasClass("reselect-clear"));a.length<1&&(a=t(this).parent().find("select.woo-variation-raw-select")),n?(t(this).on("touchstart click","li:not(.selected):not(.radio-variable-item)",function(i){i.preventDefault(),i.stopPropagation();var e=t(this).data("value");a.val(e).trigger("change"),a.trigger("click"),a.trigger("focusin"),a.trigger("touchstart")}),t(this).on("touchstart click","li.selected:not(.radio-variable-item)",function(t){t.preventDefault(),t.stopPropagation(),a.val("").trigger("change"),a.trigger("click"),a.trigger("focusin"),a.trigger("touchstart")}),t(this).on("touchstart click","input.wvs-radio-variable-item:radio",function(i){i.preventDefault(),i.stopPropagation(),t(this).trigger("change")}),t(this).on("change","input.wvs-radio-variable-item:radio",function(i){var e=this;i.preventDefault(),i.stopPropagation();var n=t(this).val();t(this).parent(".radio-variable-item").hasClass("selected")?(a.val("").trigger("change"),_.delay(function(){t(e).prop("checked",!1)},1)):a.val(n).trigger("change"),a.trigger("click"),a.trigger("focusin"),a.trigger("touchstart")})):(t(this).on("touchstart click","li:not(.radio-variable-item)",function(i){i.preventDefault(),i.stopPropagation();var e=t(this).data("value");a.val(e).trigger("change"),a.trigger("click"),a.trigger("focusin"),a.trigger("touchstart")}),t(this).on("change","input.wvs-radio-variable-item:radio",function(i){i.preventDefault(),i.stopPropagation();var e=t(this).val();a.val(e).trigger("change"),a.trigger("click"),a.trigger("focusin"),a.trigger("touchstart"),t(this).parent("li.radio-variable-item").removeClass("selected disabled").addClass("selected")}))}),_.delay(function(){a._element.trigger("woo_variation_swatches_init",[a,a.product_variations]),t(document).trigger("woo_variation_swatches_loaded",[a._element,a.product_variations])},1)}},{key:"loaded",value:function(i,e){i||this._element.on("woo_variation_swatches_init",function(i,e,a){e._generated=a.reduce(function(t,i){return Object.keys(i.attributes).map(function(e){t[e]||(t[e]=[]),i.attributes[e]&&t[e].push(i.attributes[e])}),t},{}),t(this).find("ul.variable-items-wrapper").each(function(){var i=t(this).find("li"),a=t(this).data("attribute_name"),n=e._generated[a];i.each(function(){var i=t(this).attr("data-value");_.isEmpty(n)||n.includes(i)||(t(this).removeClass("selected"),t(this).addClass("disabled"),t(this).hasClass("radio-variable-item")&&t(this).find("input.wvs-radio-variable-item:radio").prop("disabled",!0).prop("checked",!1))})})})}},{key:"reset",value:function(i,e){this._element.on("reset_data",function(e){t(this).find("ul.variable-items-wrapper").each(function(){t(this).find("li").each(function(){i||(t(this).removeClass("selected disabled"),t(this).hasClass("radio-variable-item")&&t(this).find("input.wvs-radio-variable-item:radio").prop("disabled",!1).prop("checked",!1))})})})}},{key:"update",value:function(i,e){this._element.on("woocommerce_variation_has_changed",function(e){i&&t(this).find("ul.variable-items-wrapper").each(function(){var i="",e=t(this).siblings("select.woo-variation-raw-select").find("option"),a=t(this).siblings("select.woo-variation-raw-select").find("option:selected"),n=t(this).siblings("select.woo-variation-raw-select").find("option").eq(1),r=t(this).find("li"),o=[];e.length<1&&(e=t(this).parent().find("select.woo-variation-raw-select").find("option"),a=t(this).parent().find("select.woo-variation-raw-select").find("option:selected"),n=t(this).parent().find("select.woo-variation-raw-select").find("option").eq(1)),e.each(function(){""!==t(this).val()&&(o.push(t(this).val()),i=a?a.val():n.val())}),_.delay(function(){r.each(function(){var e=t(this).attr("data-value");t(this).removeClass("selected disabled"),e===i&&(t(this).addClass("selected"),t(this).hasClass("radio-variable-item")&&t(this).find("input.wvs-radio-variable-item:radio").prop("disabled",!1).prop("checked",!0))})},1)})}),this._element.on("woocommerce_update_variation_values",function(i){t(this).find("ul.variable-items-wrapper").each(function(){var i="",e=t(this).siblings("select.woo-variation-raw-select").find("option"),a=t(this).siblings("select.woo-variation-raw-select").find("option:selected"),n=t(this).siblings("select.woo-variation-raw-select").find("option").eq(1),r=t(this).find("li"),o=[];e.length<1&&(e=t(this).parent().find("select.woo-variation-raw-select").find("option"),a=t(this).parent().find("select.woo-variation-raw-select").find("option:selected"),n=t(this).parent().find("select.woo-variation-raw-select").find("option").eq(1)),e.each(function(){""!==t(this).val()&&(o.push(t(this).val()),i=a?a.val():n.val())}),_.delay(function(){r.each(function(){var e=t(this).attr("data-value");t(this).removeClass("selected disabled").addClass("disabled"),_.contains(o,e)?(t(this).removeClass("disabled"),e===i&&(t(this).addClass("selected"),t(this).hasClass("radio-variable-item")&&t(this).find("input.wvs-radio-variable-item:radio").prop("disabled",!1).prop("checked",!0))):t(this).hasClass("radio-variable-item")&&t(this).find("input.wvs-radio-variable-item:radio").prop("disabled",!0).prop("checked",!1)})},1)})})}}],[{key:"_jQueryInterface",value:function(t){return this.each(function(){new e(this,t)})}}]),e}();return t.fn.WooVariationSwatches=e._jQueryInterface,t.fn.WooVariationSwatches.Constructor=e,t.fn.WooVariationSwatches.noConflict=function(){return t.fn.WooVariationSwatches=t.fn.WooVariationSwatches,e._jQueryInterface},e}(jQuery);i.default=r}});
includes/class-wvs-customizer.php CHANGED
@@ -51,9 +51,13 @@
51
  'panel' => $this->_settings_name,
52
  ) );
53
 
 
54
  foreach ( $panel[ 'sections' ] as $section ) {
55
 
56
- new WVS_Customize_Heading( $wp_customize, $section_id, $section[ 'title' ] );
 
 
 
57
 
58
  foreach ( $section[ 'fields' ] as $field ) {
59
 
@@ -71,7 +75,7 @@
71
  'default' => $default_value,
72
  'type' => 'option',
73
  'capability' => 'manage_woocommerce',
74
- 'sanitize_callback' => 'sanitize_key',
75
  );
76
 
77
  switch ( $field[ 'type' ] ) {
@@ -101,6 +105,16 @@
101
  break;
102
  }
103
 
 
 
 
 
 
 
 
 
 
 
104
  if ( isset( $field[ 'customize_control_class' ] ) && class_exists( $field[ 'customize_control_class' ] ) ) {
105
  $class = $field[ 'customize_control_class' ];
106
  unset( $control_options[ 'type' ] );
51
  'panel' => $this->_settings_name,
52
  ) );
53
 
54
+
55
  foreach ( $panel[ 'sections' ] as $section ) {
56
 
57
+ if ( ! isset( $section[ 'customize_hidden' ] ) || ! $section[ 'customize_hidden' ] ) {
58
+ new WVS_Customize_Heading( $wp_customize, $section_id, $section[ 'title' ] );
59
+ }
60
+
61
 
62
  foreach ( $section[ 'fields' ] as $field ) {
63
 
75
  'default' => $default_value,
76
  'type' => 'option',
77
  'capability' => 'manage_woocommerce',
78
+ 'sanitize_callback' => 'sanitize_key', //
79
  );
80
 
81
  switch ( $field[ 'type' ] ) {
105
  break;
106
  }
107
 
108
+ // active_callback
109
+ if ( isset( $field[ 'customize_hidden' ] ) && $field[ 'customize_hidden' ] ) {
110
+ $control_options[ 'active_callback' ] = '__return_false';
111
+ }
112
+
113
+ if ( isset( $section[ 'customize_hidden' ] ) && $section[ 'customize_hidden' ] ) {
114
+ $control_options[ 'active_callback' ] = '__return_false';
115
+ }
116
+
117
+
118
  if ( isset( $field[ 'customize_control_class' ] ) && class_exists( $field[ 'customize_control_class' ] ) ) {
119
  $class = $field[ 'customize_control_class' ];
120
  unset( $control_options[ 'type' ] );
includes/class-wvs-settings-api.php CHANGED
@@ -298,6 +298,7 @@
298
  $html .= implode( '<br />', array_map( function ( $key, $option ) use ( $size, $args, $value ) {
299
  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 );
300
  }, array_keys( $options ), $options ) );
 
301
  $html .= '</fieldset>';
302
 
303
  echo $html;
298
  $html .= implode( '<br />', array_map( function ( $key, $option ) use ( $size, $args, $value ) {
299
  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 );
300
  }, array_keys( $options ), $options ) );
301
+ $html .= $this->get_field_description( $args );
302
  $html .= '</fieldset>';
303
 
304
  echo $html;
includes/functions.php CHANGED
@@ -167,11 +167,24 @@
167
  'id' => 'threshold',
168
  'type' => 'number',
169
  'title' => esc_html__( 'Ajax variation threshold', 'woo-variation-swatches' ),
170
- 'desc' => __( 'Control the number of enable ajax variation threshold, If you set <code>1</code> all product variation will be load via ajax. Default value is <code>30</code>', 'woo-variation-swatches' ),
171
  'default' => 30,
172
  'min' => 1,
173
- 'max' => 100,
174
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
175
  array(
176
  'id' => 'attribute_image_size',
177
  'type' => 'select',
@@ -411,7 +424,7 @@
411
 
412
  case 'radio':
413
  $id = uniqid( $term->slug );
414
- $data .= sprintf( '<input name="%1$s" id="%2$s" class="wvs-radio-variable-item" %3$s type="radio" value="%4$s" data-value="%4$s" /><label for="%2$s">%5$s</label>', $name, $id, checked( sanitize_title( $args[ 'selected' ] ), $term->slug, false ), esc_attr( $term->slug ), esc_html( $term->name ) );
415
  break;
416
 
417
  default:
167
  'id' => 'threshold',
168
  'type' => 'number',
169
  'title' => esc_html__( 'Ajax variation threshold', 'woo-variation-swatches' ),
170
+ 'desc' => __( 'Control the number of enable ajax variation threshold, If you set <code>1</code> all product variation will be load via ajax. Default value is <code>30</code>, <br><span style="color: red">Note: Product variation loaded via ajax doesn\'t follow attribute behaviour.</span>', 'woo-variation-swatches' ),
171
  'default' => 30,
172
  'min' => 1,
173
+ 'max' => 40,
174
  ),
175
+
176
+ array(
177
+ 'id' => 'attribute-behavior',
178
+ 'type' => 'radio',
179
+ 'title' => esc_html__( 'Attribute behavior', 'woo-variation-swatches' ),
180
+ 'desc' => __( 'Disabled attribute will be hide / blur. <br><span style="color: red">Note: Product variation loaded via ajax doesn\'t apply this feature.</span>', 'woo-variation-swatches' ),
181
+ 'options' => array(
182
+ 'blur' => esc_html__( 'Blur', 'woo-variation-swatches' ),
183
+ 'hide' => esc_html__( 'Hide', 'woo-variation-swatches' ),
184
+ ),
185
+ 'default' => 'blur'
186
+ ),
187
+
188
  array(
189
  'id' => 'attribute_image_size',
190
  'type' => 'select',
424
 
425
  case 'radio':
426
  $id = uniqid( $term->slug );
427
+ $data .= sprintf( '<input name="%1$s" id="%2$s" class="wvs-radio-variable-item" %3$s type="radio" value="%4$s" data-value="%4$s" /><label for="%2$s">%5$s</label>', $name, $id, checked( sanitize_title( $args[ 'selected' ] ), $term->slug, FALSE ), esc_attr( $term->slug ), esc_html( $term->name ) );
428
  break;
429
 
430
  default:
languages/woo-variation-swatches.pot CHANGED
@@ -16,7 +16,7 @@ msgstr ""
16
  "X-Poedit-SourceCharset: UTF-8\n"
17
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
18
 
19
- #: ../includes/class-wvs-customizer.php:34
20
  msgid "WooCommerce Variation Swatches"
21
  msgstr ""
22
 
@@ -44,11 +44,11 @@ msgstr ""
44
  msgid "Remove image"
45
  msgstr ""
46
 
47
- #: ../includes/functions.php:28, ../includes/functions.php:202
48
  msgid "Color"
49
  msgstr ""
50
 
51
- #: ../includes/functions.php:34, ../includes/functions.php:211
52
  msgid "Image"
53
  msgstr ""
54
 
@@ -121,109 +121,121 @@ msgid "Ajax variation threshold"
121
  msgstr ""
122
 
123
  #: ../includes/functions.php:170
124
- msgid "Control the number of enable ajax variation threshold, If you set <code>1</code> all product variation will be load via ajax. Default value is <code>30</code>"
125
  msgstr ""
126
 
127
- #: ../includes/functions.php:178
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
  msgid "Attribute image size"
129
  msgstr ""
130
 
131
- #: ../includes/functions.php:179
132
  msgid "<span style=\"color: red\">Attribute image size changed by <code>wvs_product_attribute_image_size</code> hook. So this option will not apply any effect.</span>"
133
  msgstr ""
134
 
135
- #: ../includes/functions.php:179
136
  msgid "Choose attribute image size"
137
  msgstr ""
138
 
139
- #: ../includes/functions.php:203
140
  msgid "Choose a color"
141
  msgstr ""
142
 
143
- #: ../includes/functions.php:212, ../woo-variation-swatches.php:157
144
  msgid "Choose an Image"
145
  msgstr ""
146
 
147
- #: ../includes/functions.php:273
148
  msgid "Select terms"
149
  msgstr ""
150
 
151
- #: ../includes/functions.php:284
152
  msgid "Select all"
153
  msgstr ""
154
 
155
- #: ../includes/functions.php:285
156
  msgid "Select none"
157
  msgstr ""
158
 
159
- #: ../includes/functions.php:290
160
  msgid "Add new %s"
161
  msgstr ""
162
 
163
- #: ../includes/functions.php:290, ../includes/functions.php:292
164
  msgid "Add new"
165
  msgstr ""
166
 
167
- #: ../includes/functions.php:447, ../includes/functions.php:519, ../includes/functions.php:592, ../includes/functions.php:663
168
  msgid "Choose an option"
169
  msgstr ""
170
 
171
- #: ../woo-variation-swatches.php:158
172
  msgid "Add Attribute"
173
  msgstr ""
174
 
175
- #: ../woo-variation-swatches.php:159
176
  msgid "Add"
177
  msgstr ""
178
 
179
- #: ../woo-variation-swatches.php:160
180
  msgid "Cancel"
181
  msgstr ""
182
 
183
- #: ../woo-variation-swatches.php:161
184
  msgid "Use Image"
185
  msgstr ""
186
 
187
- #: ../woo-variation-swatches.php:162
188
  msgid "Add Media"
189
  msgstr ""
190
 
191
- #: ../woo-variation-swatches.php:217
192
- msgid "View Documentation"
193
- msgstr ""
194
-
195
- #: ../woo-variation-swatches.php:217
196
- msgid "Documentation"
197
  msgstr ""
198
 
199
- #: ../woo-variation-swatches.php:218, ../woo-variation-swatches.php:218
200
- msgid "Support"
201
  msgstr ""
202
 
203
- #: ../woo-variation-swatches.php:219
204
- msgid "Review"
205
  msgstr ""
206
 
207
- #: ../woo-variation-swatches.php:219
208
- msgid "Please Rate Us"
209
- msgstr ""
210
-
211
- #: ../woo-variation-swatches.php:249
212
  msgid "Please check PHP version requirement."
213
  msgstr ""
214
 
215
- #: ../woo-variation-swatches.php:251
216
  msgid "It's required to use latest version of PHP to use <strong>WooCommerce Variation Swatches</strong>."
217
  msgstr ""
218
 
219
- #: ../woo-variation-swatches.php:263
220
  msgid "WooCommerce"
221
  msgstr ""
222
 
223
- #: ../woo-variation-swatches.php:271
224
  msgid "<strong>WooCommerce Variation Swatches</strong> is an add-on of "
225
  msgstr ""
226
 
227
- #: ../woo-variation-swatches.php:372
 
 
 
 
228
  msgid "WooCommerce Variation Swatches Plugin try to load \"%s\" but template \"%s\" was not found."
229
  msgstr ""
16
  "X-Poedit-SourceCharset: UTF-8\n"
17
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
18
 
19
+ #: ../includes/class-wvs-customizer.php:34, ../woo-variation-swatches.php:290
20
  msgid "WooCommerce Variation Swatches"
21
  msgstr ""
22
 
44
  msgid "Remove image"
45
  msgstr ""
46
 
47
+ #: ../includes/functions.php:28, ../includes/functions.php:215
48
  msgid "Color"
49
  msgstr ""
50
 
51
+ #: ../includes/functions.php:34, ../includes/functions.php:224
52
  msgid "Image"
53
  msgstr ""
54
 
121
  msgstr ""
122
 
123
  #: ../includes/functions.php:170
124
+ msgid "Control the number of enable ajax variation threshold, If you set <code>1</code> all product variation will be load via ajax. Default value is <code>30</code>, <br><span style=\"color: red\">Note: Product variation loaded via ajax doesn't follow attribute behaviour.</span>"
125
  msgstr ""
126
 
127
+ #: ../includes/functions.php:179
128
+ msgid "Attribute behavior"
129
+ msgstr ""
130
+
131
+ #: ../includes/functions.php:180
132
+ msgid "Disabled attribute will be hide / blur. <br><span style=\"color: red\">Note: Product variation loaded via ajax doesn't apply this feature.</span>"
133
+ msgstr ""
134
+
135
+ #: ../includes/functions.php:182
136
+ msgid "Blur"
137
+ msgstr ""
138
+
139
+ #: ../includes/functions.php:183
140
+ msgid "Hide"
141
+ msgstr ""
142
+
143
+ #: ../includes/functions.php:191
144
  msgid "Attribute image size"
145
  msgstr ""
146
 
147
+ #: ../includes/functions.php:192
148
  msgid "<span style=\"color: red\">Attribute image size changed by <code>wvs_product_attribute_image_size</code> hook. So this option will not apply any effect.</span>"
149
  msgstr ""
150
 
151
+ #: ../includes/functions.php:192
152
  msgid "Choose attribute image size"
153
  msgstr ""
154
 
155
+ #: ../includes/functions.php:216
156
  msgid "Choose a color"
157
  msgstr ""
158
 
159
+ #: ../includes/functions.php:225, ../woo-variation-swatches.php:163
160
  msgid "Choose an Image"
161
  msgstr ""
162
 
163
+ #: ../includes/functions.php:286
164
  msgid "Select terms"
165
  msgstr ""
166
 
167
+ #: ../includes/functions.php:297
168
  msgid "Select all"
169
  msgstr ""
170
 
171
+ #: ../includes/functions.php:298
172
  msgid "Select none"
173
  msgstr ""
174
 
175
+ #: ../includes/functions.php:303
176
  msgid "Add new %s"
177
  msgstr ""
178
 
179
+ #: ../includes/functions.php:303, ../includes/functions.php:305
180
  msgid "Add new"
181
  msgstr ""
182
 
183
+ #: ../includes/functions.php:460, ../includes/functions.php:532, ../includes/functions.php:605, ../includes/functions.php:676
184
  msgid "Choose an option"
185
  msgstr ""
186
 
187
+ #: ../woo-variation-swatches.php:164
188
  msgid "Add Attribute"
189
  msgstr ""
190
 
191
+ #: ../woo-variation-swatches.php:165
192
  msgid "Add"
193
  msgstr ""
194
 
195
+ #: ../woo-variation-swatches.php:166
196
  msgid "Cancel"
197
  msgstr ""
198
 
199
+ #: ../woo-variation-swatches.php:167
200
  msgid "Use Image"
201
  msgstr ""
202
 
203
+ #: ../woo-variation-swatches.php:168
204
  msgid "Add Media"
205
  msgstr ""
206
 
207
+ #: ../woo-variation-swatches.php:223, ../woo-variation-swatches.php:223
208
+ msgid "Read Documentation"
 
 
 
 
209
  msgstr ""
210
 
211
+ #: ../woo-variation-swatches.php:225
212
+ msgid "Facing issue?"
213
  msgstr ""
214
 
215
+ #: ../woo-variation-swatches.php:225
216
+ msgid "Please report here to fix it immediately."
217
  msgstr ""
218
 
219
+ #: ../woo-variation-swatches.php:255
 
 
 
 
220
  msgid "Please check PHP version requirement."
221
  msgstr ""
222
 
223
+ #: ../woo-variation-swatches.php:257
224
  msgid "It's required to use latest version of PHP to use <strong>WooCommerce Variation Swatches</strong>."
225
  msgstr ""
226
 
227
+ #: ../woo-variation-swatches.php:269
228
  msgid "WooCommerce"
229
  msgstr ""
230
 
231
+ #: ../woo-variation-swatches.php:277
232
  msgid "<strong>WooCommerce Variation Swatches</strong> is an add-on of "
233
  msgstr ""
234
 
235
+ #: ../woo-variation-swatches.php:290
236
+ msgid "Currently, you are using older version of WooCommerce. It's recommended to use latest version of WooCommerce to work with %s."
237
+ msgstr ""
238
+
239
+ #: ../woo-variation-swatches.php:390
240
  msgid "WooCommerce Variation Swatches Plugin try to load \"%s\" but template \"%s\" was not found."
241
  msgstr ""
package.json CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "package": "WooCommerce Variation Swatches",
3
  "name": "woo-variation-swatches",
4
- "version": "1.0.17",
5
  "author": "Emran Ahmed <emran.bd.08@gmail.com>",
6
  "contact": "emran.bd.08@gmail.com",
7
  "license": "GNU General Public License v3",
1
  {
2
  "package": "WooCommerce Variation Swatches",
3
  "name": "woo-variation-swatches",
4
+ "version": "1.0.18",
5
  "author": "Emran Ahmed <emran.bd.08@gmail.com>",
6
  "contact": "emran.bd.08@gmail.com",
7
  "license": "GNU General Public License v3",
webpack.mix.js CHANGED
@@ -61,7 +61,7 @@ if (Mix.inProduction()) {
61
  }
62
 
63
  mix.banner({
64
- banner : "WooCommerce Variation Swatches v1.0.17 \n\nAuthor: Emran Ahmed ( emran.bd.08@gmail.com ) \nDate: " + new Date().toLocaleString() + "\nReleased under the GPLv3 license."
65
  });
66
 
67
  mix.notification({
61
  }
62
 
63
  mix.banner({
64
+ banner : "WooCommerce Variation Swatches v1.0.18 \n\nAuthor: Emran Ahmed ( emran.bd.08@gmail.com ) \nDate: " + new Date().toLocaleString() + "\nReleased under the GPLv3 license."
65
  });
66
 
67
  mix.notification({
woo-variation-swatches.php CHANGED
@@ -2,9 +2,9 @@
2
  /**
3
  * Plugin Name: WooCommerce 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.17
8
  * Domain Path: /languages
9
  * Requires at least: 4.8
10
  * Tested up to: 4.9
@@ -20,7 +20,7 @@
20
 
21
  final class Woo_Variation_Swatches {
22
 
23
- protected $_version = '1.0.17';
24
 
25
  protected static $_instance = NULL;
26
  private $_settings_api;
@@ -44,6 +44,8 @@
44
  $this->define( 'WVS_PLUGIN_URI', plugin_dir_url( __FILE__ ) );
45
  $this->define( 'WVS_PLUGIN_PATH', plugin_dir_path( __FILE__ ) );
46
 
 
 
47
  $this->define( 'WVS_PLUGIN_INCLUDE_PATH', trailingslashit( plugin_dir_path( __FILE__ ) . 'includes' ) );
48
  $this->define( 'WVS_PLUGIN_TEMPLATES_PATH', trailingslashit( plugin_dir_path( __FILE__ ) . 'templates' ) );
49
  $this->define( 'WVS_PLUGIN_TEMPLATES_URI', trailingslashit( plugin_dir_url( __FILE__ ) . 'templates' ) );
@@ -81,6 +83,7 @@
81
  add_action( 'init', array( $this, 'language' ) );
82
  add_action( 'admin_notices', array( $this, 'php_requirement_notice' ) );
83
  add_action( 'admin_notices', array( $this, 'wc_requirement_notice' ) );
 
84
  add_filter( 'plugin_row_meta', array( $this, 'plugin_row_meta' ), 10, 2 );
85
 
86
  if ( $this->is_required_php_version() ) {
@@ -117,7 +120,10 @@
117
  if ( wp_is_mobile() ) {
118
  array_push( $classes, 'woo-variation-swatches-on-mobile' );
119
  }
 
 
120
  array_push( $classes, sprintf( 'woo-variation-swatches-style-%s', $this->get_option( 'style' ) ) );
 
121
  array_push( $classes, sprintf( 'woo-variation-swatches-tooltip-%s', $this->get_option( 'tooltip' ) ? 'enabled' : 'disabled' ) );
122
  array_push( $classes, sprintf( 'woo-variation-swatches-stylesheet-%s', $this->get_option( 'stylesheet' ) ? 'enabled' : 'disabled' ) );
123
 
@@ -213,10 +219,10 @@
213
 
214
  public function plugin_row_meta( $links, $file ) {
215
  if ( $file == $this->basename() ) {
216
- $review_url = "https://wordpress.org/support/plugin/woo-variation-swatches/reviews/?rate=5#new-post";
217
- $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>';
218
- $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>';
219
- $row_meta[ 'rating' ] = sprintf( '<a target="_blank" href="%1$s">%3$s</a> <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' ), esc_html__( 'Please Rate Us', 'woo-variation-swatches' ) );
220
 
221
  return array_merge( $links, $row_meta );
222
  }
@@ -274,6 +280,18 @@
274
  }
275
  }
276
 
 
 
 
 
 
 
 
 
 
 
 
 
277
  public function language() {
278
  load_plugin_textdomain( 'woo-variation-swatches', FALSE, trailingslashit( WVS_PLUGIN_DIRNAME ) . 'languages' );
279
  }
2
  /**
3
  * Plugin Name: WooCommerce Variation Swatches
4
  * Plugin URI: https://wordpress.org/plugins/woo-variation-swatches/
5
+ * Description: Beautiful colors, images and buttons variation swatches for woocommerce product attributes. Requires WooCommerce 3.2+
6
  * Author: Emran Ahmed
7
+ * Version: 1.0.18
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.18';
24
 
25
  protected static $_instance = NULL;
26
  private $_settings_api;
44
  $this->define( 'WVS_PLUGIN_URI', plugin_dir_url( __FILE__ ) );
45
  $this->define( 'WVS_PLUGIN_PATH', plugin_dir_path( __FILE__ ) );
46
 
47
+ $this->define( 'WVS_VERSION', $this->version() );
48
+
49
  $this->define( 'WVS_PLUGIN_INCLUDE_PATH', trailingslashit( plugin_dir_path( __FILE__ ) . 'includes' ) );
50
  $this->define( 'WVS_PLUGIN_TEMPLATES_PATH', trailingslashit( plugin_dir_path( __FILE__ ) . 'templates' ) );
51
  $this->define( 'WVS_PLUGIN_TEMPLATES_URI', trailingslashit( plugin_dir_url( __FILE__ ) . 'templates' ) );
83
  add_action( 'init', array( $this, 'language' ) );
84
  add_action( 'admin_notices', array( $this, 'php_requirement_notice' ) );
85
  add_action( 'admin_notices', array( $this, 'wc_requirement_notice' ) );
86
+ add_action( 'admin_notices', array( $this, 'wc_version_requirement_notice' ) );
87
  add_filter( 'plugin_row_meta', array( $this, 'plugin_row_meta' ), 10, 2 );
88
 
89
  if ( $this->is_required_php_version() ) {
120
  if ( wp_is_mobile() ) {
121
  array_push( $classes, 'woo-variation-swatches-on-mobile' );
122
  }
123
+ array_push( $classes, sprintf( 'woo-variation-swatches-theme-%s', basename( get_template_directory() ) ) );
124
+ array_push( $classes, sprintf( 'woo-variation-swatches-theme-child-%s', basename( get_stylesheet_directory() ) ) );
125
  array_push( $classes, sprintf( 'woo-variation-swatches-style-%s', $this->get_option( 'style' ) ) );
126
+ array_push( $classes, sprintf( 'woo-variation-swatches-attribute-behavior-%s', $this->get_option( 'attribute-behavior' ) ) );
127
  array_push( $classes, sprintf( 'woo-variation-swatches-tooltip-%s', $this->get_option( 'tooltip' ) ? 'enabled' : 'disabled' ) );
128
  array_push( $classes, sprintf( 'woo-variation-swatches-stylesheet-%s', $this->get_option( 'stylesheet' ) ? 'enabled' : 'disabled' ) );
129
 
219
 
220
  public function plugin_row_meta( $links, $file ) {
221
  if ( $file == $this->basename() ) {
222
+ $report_url = "https://wordpress.org/support/plugin/woo-variation-swatches/#new-post";
223
+ $row_meta[ 'documentation' ] = '<a target="_blank" href="' . esc_url( apply_filters( 'wvs_documentation_url', 'https://getwooplugins.com/documentation/woocommerce-variation-swatches/' ) ) . '" title="' . esc_attr( esc_html__( 'Read Documentation', 'woo-variation-swatches' ) ) . '">' . esc_html__( 'Read Documentation', 'woo-variation-swatches' ) . '</a>';
224
+ // $row_meta[ 'rating' ] = sprintf( '<a target="_blank" href="%1$s">%3$s</a> <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' ), esc_html__( 'Please Rate Us', 'woo-variation-swatches' ) );
225
+ $row_meta[ 'issues' ] = sprintf( '%2$s <a target="_blank" href="%1$s">%3$s</a>', esc_url( $report_url ), esc_html__( 'Facing issue?', 'woo-variation-swatches' ), '<span style="color: red">' . esc_html__( 'Please report here to fix it immediately.', 'woo-variation-swatches' ) . '</span>' );
226
 
227
  return array_merge( $links, $row_meta );
228
  }
280
  }
281
  }
282
 
283
+ public function is_required_wc_version() {
284
+ return version_compare( WC_VERSION, '3.2', '>' );
285
+ }
286
+
287
+ public function wc_version_requirement_notice() {
288
+ if ( $this->is_wc_active() && ! $this->is_required_wc_version() ) {
289
+ $class = 'notice notice-error';
290
+ $message = sprintf( esc_html__( "Currently, you are using older version of WooCommerce. It's recommended to use latest version of WooCommerce to work with %s.", 'woo-variation-swatches' ), esc_html__( 'WooCommerce Variation Swatches', 'woo-variation-swatches' ) );
291
+ printf( '<div class="%1$s"><p><strong>%2$s</strong></p></div>', $class, $message );
292
+ }
293
+ }
294
+
295
  public function language() {
296
  load_plugin_textdomain( 'woo-variation-swatches', FALSE, trailingslashit( WVS_PLUGIN_DIRNAME ) . 'languages' );
297
  }