wickes-css2 2.103.0-develop.4 → 2.103.0-develop.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/Readme.md +5 -0
  2. package/build/css/category-main.css +1 -1
  3. package/build/css/homepage-main.css +1 -1
  4. package/build/css/kitchen-plp-main.css +1 -1
  5. package/build/css/main.css +1 -1
  6. package/build/css/my-account-main-v2.css +1 -1
  7. package/build/css/my-account-main.css +1 -1
  8. package/build/css/pdp-main-before-combine.css +1 -1
  9. package/build/css/pdp-main-non-critical.css +1 -1
  10. package/build/css/pdp-main.css +1 -1
  11. package/build/css/plp-main.css +1 -1
  12. package/build/css/store-locator-main.css +1 -1
  13. package/build/js/basket.min.js +2 -2
  14. package/build/js/bundle.min.js +1 -1
  15. package/build/js/checkout.min.js +2 -2
  16. package/build/js/emulation.min.js +50 -994
  17. package/build/js/general.bundle.min.js +1 -1
  18. package/build/js/merged-checkout.min.js +2 -2
  19. package/build/js/page/basket-v2.js +244 -138
  20. package/build/js/page/components/discounts.js +6 -6
  21. package/build/js/pdp.bundle.min.js +1 -1
  22. package/build/js/plp.bundle.min.js +1 -1
  23. package/build/js/project-list.min.js +1 -1
  24. package/package.json +18 -3
  25. package/src/components/mini-basket/mini-basket-empty.hbs +13 -3
  26. package/src/components/mini-basket/mini-basket.hbs +13 -32
  27. package/src/components/mini-basket/product-item.hbs +16 -37
  28. package/src/components/srp-injected.hbs +3 -13
  29. package/src/data/data_confirmation-summary.json +2 -4
  30. package/src/data/data_mini-basket.json +80 -4
  31. package/src/js/components/banner-placement-manager.js +10 -1
  32. package/src/js/components/general/cart-slider.js +0 -3
  33. package/src/js/components/general/create-popup-slider.js +2 -5
  34. package/src/js/components/general/mini-basket-slider.js +8 -0
  35. package/src/js/emulation/account-hub.js +40 -40
  36. package/src/js/emulation/custom-slider-emulation.js +10 -4
  37. package/src/js/page/basket-v2.js +244 -138
  38. package/src/js/page/components/discounts.js +6 -6
  39. package/src/layouts/base.hbs +6 -0
  40. package/src/page_plp_v2.html +2 -1
  41. package/src/partials/scripts.hbs +0 -1
  42. package/src/scss/category-main.scss +1 -0
  43. package/src/scss/components/_custom-slider.scss +3 -124
  44. package/src/scss/components/_popover-mini-basket.scss +4 -0
  45. package/src/scss/emulation.scss +3 -3
  46. package/src/scss/helpers/_colors-semantic.scss +120 -0
  47. package/src/scss/helpers/_variables.scss +2 -0
  48. package/src/scss/pages/_facets.scss +86 -0
  49. package/src/scss/plp-main.scss +1 -0
  50. package/build/js/mini-basket-slider.min.js +0 -1
  51. package/build/js/page/basket/basket-update-cart-action.js +0 -60
  52. package/build/js/page/basket/basket-update-cart.js +0 -29
  53. package/build/js/page/basket/basket-utils.js +0 -50
  54. package/build/js/page/basket/mini-basket-total.js +0 -97
  55. package/build/js/page/basket/quantity-change-handler.js +0 -56
  56. package/build/js/page/basket/update-quantity-operation.js +0 -37
  57. package/build/js/page/basket/update-quantity.js +0 -65
  58. package/build/js/page/components/mini-basket-slider.js +0 -562
  59. package/src/components/mini-basket/mini-basket-order-item.hbs +0 -73
  60. package/src/js/emulation/mini-basket-data.js +0 -949
  61. package/src/js/page/basket/basket-update-cart-action.js +0 -60
  62. package/src/js/page/basket/basket-update-cart.js +0 -29
  63. package/src/js/page/basket/basket-utils.js +0 -50
  64. package/src/js/page/basket/mini-basket-total.js +0 -97
  65. package/src/js/page/basket/quantity-change-handler.js +0 -56
  66. package/src/js/page/basket/update-quantity-operation.js +0 -37
  67. package/src/js/page/basket/update-quantity.js +0 -65
  68. package/src/js/page/components/mini-basket-slider.js +0 -562
@@ -80,18 +80,6 @@
80
80
  }
81
81
  }
82
82
 
83
- &__notifications {
84
- &:has(.notification) {
85
- margin-top: 16px;
86
- }
87
-
88
- .notification:only-child {
89
- @include font-size(14);
90
- @include line-height(24);
91
- margin-bottom: 0;
92
- }
93
- }
94
-
95
83
  &__message {
96
84
  margin-top: 8px;
97
85
  display: flex;
@@ -171,32 +159,6 @@
171
159
  &__details {
172
160
  flex: 1;
173
161
 
174
- &-header {
175
- display: flex;
176
- align-items: flex-start;
177
- justify-content: space-between;
178
- grid-gap: 8px;
179
-
180
- .btn--remove {
181
- min-width: 24px;
182
- padding: 4px;
183
- background: 0 0;
184
- border: none;
185
- display: flex;
186
- align-items: center;
187
- justify-content: center;
188
-
189
- .remove-icon {
190
- color: $blue;
191
- font-size: 1rem;
192
- }
193
- }
194
- }
195
-
196
- &-body {
197
- margin-top: 4px;
198
- }
199
-
200
162
  .item,
201
163
  .price {
202
164
  margin-bottom: 0;
@@ -228,8 +190,8 @@
228
190
  }
229
191
 
230
192
  .price {
231
- @include font-size(16);
232
- @include line-height(20);
193
+ @include font-size(18);
194
+ @include line-height(24);
233
195
  margin-top: 8px;
234
196
  font-weight: 700;
235
197
  color: $blue-dark;
@@ -244,54 +206,6 @@
244
206
  &.product-card__content {
245
207
  margin-top: 0;
246
208
  padding: 0;
247
- height: 100%;
248
- display: flex;
249
- flex-direction: column;
250
- }
251
- }
252
-
253
- &__quantity-control {
254
- display: flex;
255
- align-items: center;
256
- margin-top: 8px;
257
-
258
- .quantity {
259
- margin-bottom: 0;
260
- min-width: 40px;
261
- text-align: center;
262
- padding: 0 5px;
263
-
264
- .product-card__quantity-value {
265
- margin: 0;
266
- font-weight: 400;
267
- }
268
- }
269
-
270
- .btn--quantity {
271
- background: none;
272
- padding: 0;
273
- width: 24px;
274
- min-height: 24px;
275
- display: inline-flex;
276
- align-items: center;
277
- justify-content: center;
278
-
279
- .quantity-cta-icon {
280
- font-size: 1.35rem;
281
- color: $blue;
282
- }
283
-
284
- &[disabled] {
285
- border: none;
286
- opacity: 0.6;
287
- }
288
- }
289
- }
290
-
291
- .btn--remove,
292
- .btn--quantity {
293
- &:hover {
294
- opacity: 0.7;
295
209
  }
296
210
  }
297
211
 
@@ -304,17 +218,6 @@
304
218
  }
305
219
  }
306
220
  }
307
-
308
- &__offers {
309
- margin-top: 4px;
310
-
311
- .products__promo {
312
- @include font-size(12);
313
- @include line-height(16);
314
- color: $red;
315
- font-weight: 400;
316
- }
317
- }
318
221
  }
319
222
 
320
223
  &__footer {
@@ -421,7 +324,7 @@
421
324
  font-weight: 500;
422
325
  }
423
326
 
424
- &-value {
327
+ .value {
425
328
  @include font-size(18);
426
329
  @include line-height(24);
427
330
  font-weight: 700;
@@ -551,30 +454,6 @@
551
454
  }
552
455
  }
553
456
 
554
- @include media-breakpoint-up(sm) {
555
- .custom-slider {
556
- .products__details {
557
- .price {
558
- @include font-size(18);
559
- @include line-height(24);
560
-
561
- .inc {
562
- @include font-size(12);
563
- @include line-height(16);
564
- font-weight: 500;
565
- }
566
- }
567
-
568
- &-footer {
569
- display: flex;
570
- align-items: center;
571
- justify-content: space-between;
572
- margin-top: auto;
573
- }
574
- }
575
- }
576
- }
577
-
578
457
  @include media-breakpoint-up(sm) {
579
458
  .custom-slider {
580
459
  &__wrap {
@@ -173,6 +173,10 @@
173
173
  .card__img {
174
174
  border: 0;
175
175
  }
176
+
177
+ .product-card__content {
178
+ height: auto;
179
+ }
176
180
  }
177
181
  }
178
182
  }
@@ -29,7 +29,7 @@
29
29
 
30
30
  &__address {
31
31
  .fa-map-marker-alt {
32
- max-width: .75rem;
32
+ max-width: 0.75rem;
33
33
  }
34
34
  }
35
35
  }
@@ -54,11 +54,11 @@
54
54
  }
55
55
 
56
56
  .offer-banner__link-arrow {
57
- max-width: .625rem;
57
+ max-width: 0.625rem;
58
58
  }
59
59
 
60
60
  @include media-breakpoint-down(sm) {
61
- .cards-store-list:not(:nth-child(-n+4)) {
61
+ .cards-store-list:not(:nth-child(-n + 4)) {
62
62
  display: none;
63
63
  }
64
64
  }
@@ -0,0 +1,120 @@
1
+ // --------------------------------------------------------------------------
2
+ // Surfaces
3
+ // --------------------------------------------------------------------------
4
+ $surface-surf-primary: $white; // #ffffff
5
+
6
+ // --------------------------------------------------------------------------
7
+ // Containers
8
+ // --------------------------------------------------------------------------
9
+ $container-cont-01: $white; // #ffffff
10
+ $container-cont-02: $gray-bg; // #f8f8f8
11
+ $container-cont-03: $gray-light; // #eeeeee
12
+ $container-cont-04: $warm-grey; // #8b8b8b
13
+
14
+ $container-cont-brand: $blue-dark; // #0a3055
15
+ $container-cont-brand-light: $ma-white; // #f4f9fe
16
+ $container-cont-action: $blue; // #0277bd
17
+ $container-cont-checkout: $green; // #67a509
18
+ $container-cont-offer: $red; // #cf000f
19
+
20
+ // --------------------------------------------------------------------------
21
+ // Borders
22
+ // --------------------------------------------------------------------------
23
+ $border-brand: $blue-dark; // #0a3055
24
+ $border-bold: $gray-dark; // #3e3e3e
25
+ $border-default: $gray; // #cccccc
26
+ $border-secondary: $gray-light; // #eeeeee
27
+ $border-focus: $blue; // #0277bd
28
+ $border-error: $red; // #cf000f
29
+ $border-inverted: $white; // #ffffff
30
+
31
+ // --------------------------------------------------------------------------
32
+ // Text
33
+ // --------------------------------------------------------------------------
34
+ $text-body: $gray-dark; // #3e3e3e
35
+ $text-secondary: $squant; // #666666
36
+ $text-tertiary: $warm-grey; // #8b8b8b
37
+ $text-quinary: $gray-wait; // #9d9d9c
38
+ $text-inverted: $white; // #ffffff
39
+ $text-brand: $blue-dark; // #0a3055
40
+ $text-link: $blue; // #0277bd
41
+ $text-offer: $red; // #cf000f
42
+ $text-success: $green; // #67a509
43
+ $text-error: $red; // #cf000f
44
+
45
+ // --------------------------------------------------------------------------
46
+ // Icons
47
+ // --------------------------------------------------------------------------
48
+ $icon-brand: $blue-dark; // #0a3055
49
+ $icon-primary: $gray-dark; // #3e3e3e
50
+ $icon-secondary: $warm-grey; // #8b8b8b
51
+ $icon-tertiary: $gray; // #cccccc
52
+ $icon-inverted: $white; // #ffffff
53
+ $icon-action: $blue; // #0277bd
54
+ $icon-checkout: $green; // #67a509
55
+ $icon-success: $green; // #67a509
56
+ $icon-warning: $orange; // #ffc439
57
+ $icon-error: $red; // #cf000f
58
+ $icon-brand-light: $blue-satin; // #99b5cf
59
+
60
+ // --------------------------------------------------------------------------
61
+ // Labels / Badges
62
+ // --------------------------------------------------------------------------
63
+ $label-offer: $red; // #cf000f
64
+ $label-new: $green-light; // #9acd32
65
+ $label-clearance: $yellow; // #f7ca18
66
+
67
+ // --------------------------------------------------------------------------
68
+ // Logos
69
+ // --------------------------------------------------------------------------
70
+ $logo-main: $pacific-depths; // #004587
71
+ $logo-stroke-text: $white; // #ffffff
72
+ $logo-tradepro: $gray-wait; // #9d9d9c
73
+
74
+ // --------------------------------------------------------------------------
75
+ // Notifications
76
+ // --------------------------------------------------------------------------
77
+ $notification-success-bg: rgba($green, .05); // #67a5090d
78
+ $notification-warning-bg: rgba($orange, .05); // #ffc4390d
79
+ $notification-error-bg: rgba($red, .05); // #cf000f0d
80
+
81
+ // --------------------------------------------------------------------------
82
+ // State overlays (generic)
83
+ // --------------------------------------------------------------------------
84
+ $state-overlay-hover: rgba($black, .2); // #00000033
85
+ $state-overlay-pressed: rgba($black, .4); // #00000066
86
+ $state-overlay-disabled: rgba($white, .6); // #ffffff99
87
+
88
+ // --------------------------------------------------------------------------
89
+ // Additional (brand / payments / design usage)
90
+ // --------------------------------------------------------------------------
91
+ $additional-design-appointment: #2d8093;
92
+ $additional-review-star-pdp: #f7941d;
93
+ $additional-paypal: $orange; // #ffc439
94
+ $additional-klarna: #ffb3c7;
95
+ $additional-finance: $virid-darker; // #205c56
96
+ $additional-events: $virid-darkest; // #00857c
97
+
98
+ // --------------------------------------------------------------------------
99
+ // Button overlays (primary action = blue)
100
+ // --------------------------------------------------------------------------
101
+ $button-overlay-action-default: $blue; // #0277bd
102
+ $button-overlay-action-hover: rgba($blue, .2); // 20% opacity
103
+ $button-overlay-action-pressed: rgba($blue, .4); // 40% opacity
104
+ $button-overlay-action-disabled: rgba($blue, .6); // 60% opacity
105
+
106
+ // --------------------------------------------------------------------------
107
+ // Checkout overlays (success / checkout = green)
108
+ // --------------------------------------------------------------------------
109
+ $checkout-overlay-action-default: $green; // #67a509
110
+ $checkout-overlay-action-hover: rgba($green, .2); // 20% opacity
111
+ $checkout-overlay-action-pressed: rgba($green, .4); // 40% opacity
112
+ $checkout-overlay-action-disabled: rgba($green, .6); // 60% opacity
113
+
114
+ // --------------------------------------------------------------------------
115
+ // Offer overlays (error / offer = red)
116
+ // --------------------------------------------------------------------------
117
+ $offer-overlay-action-default: $red; // #cf000f
118
+ $offer-overlay-action-hover: rgba($red, .2); // 20% opacity
119
+ $offer-overlay-action-pressed: rgba($red, .4); // 40% opacity
120
+ $offer-overlay-action-disabled: rgba($red, .6); // 60% opacity
@@ -400,3 +400,5 @@ $christine: #ec6608;
400
400
  $monza: #e30613;
401
401
  $downriver: #0c3153;
402
402
  $rose-pink: #ff858d;
403
+
404
+ @import 'colors-semantic';
@@ -0,0 +1,86 @@
1
+ @import '../helpers/variables';
2
+ @import '../helpers/helpers';
3
+
4
+ .category-seo-config {
5
+
6
+ .legal-info {
7
+ > div {
8
+ a {
9
+ color: $blue;
10
+ }
11
+
12
+ p {
13
+ font-weight: 400;
14
+ line-height: 24px;
15
+ }
16
+
17
+ h3 {
18
+ font-weight: 500;
19
+ font-size: 1.25rem;
20
+ line-height: 32px;
21
+ color: inherit;
22
+ }
23
+
24
+ h4 {
25
+ font-weight: 500;
26
+ font-size: 1.125rem;
27
+ line-height: 24px;
28
+ color: inherit;
29
+ }
30
+ }
31
+ }
32
+
33
+ .page-header {
34
+ p {
35
+ line-height: 24px;
36
+ font-weight: 400;
37
+ }
38
+
39
+ h1 {
40
+ font-weight: 500;
41
+ font-size: 1.625rem;
42
+ line-height: 36px;
43
+ }
44
+
45
+ &__title {
46
+ font-weight: 500;
47
+ font-size: 1.625rem;
48
+ line-height: 36px;
49
+ text-align: left;
50
+ color: inherit;
51
+ }
52
+ }
53
+ }
54
+
55
+ @include media-breakpoint-up(md) {
56
+ .category-seo-config {
57
+ .page-header {
58
+
59
+ h1 {
60
+ line-height: 46px;
61
+ font-size: 2.125rem;
62
+ }
63
+
64
+ &__title {
65
+ font-size: 2.125rem;
66
+ line-height: 46px;
67
+ text-align: center;
68
+ }
69
+ }
70
+
71
+ .legal-info {
72
+ > div {
73
+ h3 {
74
+ font-size: 1.5rem;
75
+ line-height: 32px;
76
+ }
77
+
78
+ h4 {
79
+ font-size: 1.125rem;
80
+ line-height: 24px;
81
+ font-weight: 700;
82
+ }
83
+ }
84
+ }
85
+ }
86
+ }
@@ -30,3 +30,4 @@
30
30
 
31
31
  // Pages
32
32
  @import 'pages/page_products-list-combined';
33
+ @import 'pages/facets';
@@ -1 +0,0 @@
1
- !function i(a,r,o){function l(t,e){if(!r[t]){if(!a[t]){var n="function"==typeof require&&require;if(!e&&n)return n(t,!0);if(s)return s(t,!0);throw(e=new Error("Cannot find module '"+t+"'")).code="MODULE_NOT_FOUND",e}n=r[t]={exports:{}},a[t][0].call(n.exports,function(e){return l(a[t][1][e]||e)},n,n.exports,i,a,r,o)}return r[t].exports}for(var s="function"==typeof require&&require,e=0;e<o.length;e++)l(o[e]);return l}({1:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function a(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}n.__esModule=!0;var r=a(e("./handlebars/base")),o=i(e("./handlebars/safe-string")),l=i(e("./handlebars/exception")),s=a(e("./handlebars/utils")),c=a(e("./handlebars/runtime")),e=i(e("./handlebars/no-conflict"));function u(){var t=new r.HandlebarsEnvironment;return s.extend(t,r),t.SafeString=o.default,t.Exception=l.default,t.Utils=s,t.escapeExpression=s.escapeExpression,t.VM=c,t.template=function(e){return c.template(e,t)},t}var d=u();d.create=u,e.default(d),d.default=d,n.default=d,t.exports=n.default},{"./handlebars/base":2,"./handlebars/exception":5,"./handlebars/no-conflict":18,"./handlebars/runtime":19,"./handlebars/safe-string":20,"./handlebars/utils":21}],2:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}n.__esModule=!0,n.HandlebarsEnvironment=d;var a=e("./utils"),r=i(e("./exception")),o=e("./helpers"),l=e("./decorators"),s=i(e("./logger")),c=e("./internal/proto-access"),u=(n.VERSION="4.7.8",n.COMPILER_REVISION=8,n.LAST_COMPATIBLE_COMPILER_REVISION=7,n.REVISION_CHANGES={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"},"[object Object]");function d(e,t,n){this.helpers=e||{},this.partials=t||{},this.decorators=n||{},o.registerDefaultHelpers(this),l.registerDefaultDecorators(this)}d.prototype={constructor:d,logger:s.default,log:s.default.log,registerHelper:function(e,t){if(a.toString.call(e)===u){if(t)throw new r.default("Arg not supported with multiple helpers");a.extend(this.helpers,e)}else this.helpers[e]=t},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,t){if(a.toString.call(e)===u)a.extend(this.partials,e);else{if(void 0===t)throw new r.default('Attempting to register a partial called "'+e+'" as undefined');this.partials[e]=t}},unregisterPartial:function(e){delete this.partials[e]},registerDecorator:function(e,t){if(a.toString.call(e)===u){if(t)throw new r.default("Arg not supported with multiple decorators");a.extend(this.decorators,e)}else this.decorators[e]=t},unregisterDecorator:function(e){delete this.decorators[e]},resetLoggedPropertyAccesses:function(){c.resetLoggedProperties()}};e=s.default.log;n.log=e,n.createFrame=a.createFrame,n.logger=s.default},{"./decorators":3,"./exception":5,"./helpers":6,"./internal/proto-access":15,"./logger":17,"./utils":21}],3:[function(e,t,n){"use strict";n.__esModule=!0,n.registerDefaultDecorators=function(e){i.default(e)};var n=e("./decorators/inline"),i=(e=n)&&e.__esModule?e:{default:e}},{"./decorators/inline":4}],4:[function(e,t,n){"use strict";n.__esModule=!0;var o=e("../utils");n.default=function(e){e.registerDecorator("inline",function(i,a,r,e){var t=i;return a.partials||(a.partials={},t=function(e,t){var n=r.partials,e=(r.partials=o.extend({},n,a.partials),i(e,t));return r.partials=n,e}),a.partials[e.args[0]]=e.fn,t})},t.exports=n.default},{"../utils":21}],5:[function(e,t,n){"use strict";n.__esModule=!0;var s=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function c(e,t){for(var t=t&&t.loc,n=void 0,i=void 0,a=void 0,r=void 0,o=(t&&(n=t.start.line,i=t.end.line,a=t.start.column,r=t.end.column,e+=" - "+n+":"+a),Error.prototype.constructor.call(this,e)),l=0;l<s.length;l++)this[s[l]]=o[s[l]];Error.captureStackTrace&&Error.captureStackTrace(this,c);try{t&&(this.lineNumber=n,this.endLineNumber=i,Object.defineProperty?(Object.defineProperty(this,"column",{value:a,enumerable:!0}),Object.defineProperty(this,"endColumn",{value:r,enumerable:!0})):(this.column=a,this.endColumn=r))}catch(e){}}c.prototype=new Error,n.default=c,t.exports=n.default},{}],6:[function(e,t,n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}n.__esModule=!0,n.registerDefaultHelpers=function(e){a.default(e),r.default(e),o.default(e),l.default(e),s.default(e),c.default(e),u.default(e)},n.moveHelperToHooks=function(e,t,n){e.helpers[t]&&(e.hooks[t]=e.helpers[t],n||delete e.helpers[t])};var a=i(e("./helpers/block-helper-missing")),r=i(e("./helpers/each")),o=i(e("./helpers/helper-missing")),l=i(e("./helpers/if")),s=i(e("./helpers/log")),c=i(e("./helpers/lookup")),u=i(e("./helpers/with"))},{"./helpers/block-helper-missing":7,"./helpers/each":8,"./helpers/helper-missing":9,"./helpers/if":10,"./helpers/log":11,"./helpers/lookup":12,"./helpers/with":13}],7:[function(e,t,n){"use strict";n.__esModule=!0;var r=e("../utils");n.default=function(a){a.registerHelper("blockHelperMissing",function(e,t){var n=t.inverse,i=t.fn;return!0===e?i(this):!1===e||null==e?n(this):r.isArray(e)?0<e.length?(t.ids&&(t.ids=[t.name]),a.helpers.each(e,t)):n(this):(t.data&&t.ids&&((n=r.createFrame(t.data)).contextPath=r.appendContextPath(t.data.contextPath,t.name),t={data:n}),i(e,t))})},t.exports=n.default},{"../utils":21}],8:[function(e,t,n){"use strict";n.__esModule=!0;var m=e("../utils"),e=e("../exception"),h=(e=e)&&e.__esModule?e:{default:e};n.default=function(e){e.registerHelper("each",function(i,e){if(!e)throw new h.default("Must pass iterator to #each");var t,a=e.fn,n=e.inverse,r=0,o="",l=void 0,s=void 0;function c(e,t,n){l&&(l.key=e,l.index=t,l.first=0===t,l.last=!!n,s)&&(l.contextPath=s+e),o+=a(i[e],{data:l,blockParams:m.blockParams([i[e],e],[s+e,null])})}if(e.data&&e.ids&&(s=m.appendContextPath(e.data.contextPath,e.ids[0])+"."),m.isFunction(i)&&(i=i.call(this)),e.data&&(l=m.createFrame(e.data)),i&&"object"==typeof i)if(m.isArray(i))for(var u=i.length;r<u;r++)r in i&&c(r,r,r===i.length-1);else if("function"==typeof Symbol&&i[Symbol.iterator]){for(var d=[],p=i[Symbol.iterator](),f=p.next();!f.done;f=p.next())d.push(f.value);for(u=(i=d).length;r<u;r++)c(r,r,r===i.length-1)}else t=void 0,Object.keys(i).forEach(function(e){void 0!==t&&c(t,r-1),t=e,r++}),void 0!==t&&c(t,r-1,!0);return o=0===r?n(this):o})},t.exports=n.default},{"../exception":5,"../utils":21}],9:[function(e,t,n){"use strict";n.__esModule=!0;var e=e("../exception"),i=(e=e)&&e.__esModule?e:{default:e};n.default=function(e){e.registerHelper("helperMissing",function(){if(1!==arguments.length)throw new i.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})},t.exports=n.default},{"../exception":5}],10:[function(e,t,n){"use strict";n.__esModule=!0;var i=e("../utils"),e=e("../exception"),a=(e=e)&&e.__esModule?e:{default:e};n.default=function(n){n.registerHelper("if",function(e,t){if(2!=arguments.length)throw new a.default("#if requires exactly one argument");return i.isFunction(e)&&(e=e.call(this)),!t.hash.includeZero&&!e||i.isEmpty(e)?t.inverse(this):t.fn(this)}),n.registerHelper("unless",function(e,t){if(2!=arguments.length)throw new a.default("#unless requires exactly one argument");return n.helpers.if.call(this,e,{fn:t.inverse,inverse:t.fn,hash:t.hash})})},t.exports=n.default},{"../exception":5,"../utils":21}],11:[function(e,t,n){"use strict";n.__esModule=!0,n.default=function(a){a.registerHelper("log",function(){for(var e=[void 0],t=arguments[arguments.length-1],n=0;n<arguments.length-1;n++)e.push(arguments[n]);var i=1;null!=t.hash.level?i=t.hash.level:t.data&&null!=t.data.level&&(i=t.data.level),e[0]=i,a.log.apply(a,e)})},t.exports=n.default},{}],12:[function(e,t,n){"use strict";n.__esModule=!0,n.default=function(e){e.registerHelper("lookup",function(e,t,n){return e&&n.lookupProperty(e,t)})},t.exports=n.default},{}],13:[function(e,t,n){"use strict";n.__esModule=!0;var a=e("../utils"),e=e("../exception"),r=(e=e)&&e.__esModule?e:{default:e};n.default=function(e){e.registerHelper("with",function(e,t){if(2!=arguments.length)throw new r.default("#with requires exactly one argument");a.isFunction(e)&&(e=e.call(this));var n,i=t.fn;return a.isEmpty(e)?t.inverse(this):(n=t.data,t.data&&t.ids&&((n=a.createFrame(t.data)).contextPath=a.appendContextPath(t.data.contextPath,t.ids[0])),i(e,{data:n,blockParams:a.blockParams([e],[n&&n.contextPath])}))})},t.exports=n.default},{"../exception":5,"../utils":21}],14:[function(e,t,n){"use strict";n.__esModule=!0,n.createNewLookupObject=function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];return i.extend.apply(void 0,[Object.create(null)].concat(t))};var i=e("../utils")},{"../utils":21}],15:[function(e,t,n){"use strict";n.__esModule=!0,n.createProtoAccessControl=function(e){var t=Object.create(null),n=(t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1,Object.create(null));return n.__proto__=!1,{properties:{whitelist:i.createNewLookupObject(n,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:i.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}},n.resultIsAllowed=function(e,t,n){return o("function"==typeof e?t.methods:t.properties,n)},n.resetLoggedProperties=function(){Object.keys(r).forEach(function(e){delete r[e]})};var i=e("./create-new-lookup-object"),n=e("../logger"),a=(e=n)&&e.__esModule?e:{default:e},r=Object.create(null);function o(e,t){return void 0!==e.whitelist[t]?!0===e.whitelist[t]:void 0!==e.defaultValue?e.defaultValue:(!0!==r[e=t]&&(r[e]=!0,a.default.log("error",'Handlebars: Access has been denied to resolve the property "'+e+'" because it is not an "own property" of its parent.\nYou can add a runtime option to disable the check or this warning:\nSee https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details')),!1)}},{"../logger":17,"./create-new-lookup-object":14}],16:[function(e,t,n){"use strict";n.__esModule=!0,n.wrapHelper=function(t,n){if("function"!=typeof t)return t;return function(){var e=arguments[arguments.length-1];return arguments[arguments.length-1]=n(e),t.apply(this,arguments)}}},{}],17:[function(e,t,n){"use strict";n.__esModule=!0;var i=e("./utils"),a={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(e){var t;return e="string"==typeof e?0<=(t=i.indexOf(a.methodMap,e.toLowerCase()))?t:parseInt(e,10):e},log:function(e){if(e=a.lookupLevel(e),"undefined"!=typeof console&&a.lookupLevel(a.level)<=e){e=a.methodMap[e];console[e]||(e="log");for(var t=arguments.length,n=Array(1<t?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];console[e].apply(console,n)}}};n.default=a,t.exports=n.default},{"./utils":21}],18:[function(e,t,n){"use strict";n.__esModule=!0,n.default=function(e){"object"!=typeof globalThis&&(Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__);var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}},t.exports=n.default},{}],19:[function(e,t,n){"use strict";n.__esModule=!0,n.checkRevision=function(e){var t=e&&e[0]||1,n=p.COMPILER_REVISION;if(!(t>=p.LAST_COMPATIBLE_COMPILER_REVISION&&t<=p.COMPILER_REVISION))throw t<p.LAST_COMPATIBLE_COMPILER_REVISION?(n=p.REVISION_CHANGES[n],t=p.REVISION_CHANGES[t],new d.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+n+") or downgrade your runtime to an older version ("+t+").")):new d.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+e[1]+").")},n.template=function(s,c){if(!c)throw new d.default("No environment passed to template");if(!s||!s.main)throw new d.default("Unknown template object: "+typeof s);s.main.decorator=s.main_d,c.VM.checkRevision(s.compiler);var n=s.compiler&&7===s.compiler[0];var o={strict:function(e,t,n){if(e&&t in e)return o.lookupProperty(e,t);throw new d.default('"'+t+'" not defined in '+e,{loc:n})},lookupProperty:function(e,t){var n=e[t];return null==n||Object.prototype.hasOwnProperty.call(e,t)||m.resultIsAllowed(n,o.protoAccessControl,t)?n:void 0},lookup:function(e,t){for(var n=e.length,i=0;i<n;i++)if(null!=(e[i]&&o.lookupProperty(e[i],t)))return e[i][t]},lambda:function(e,t){return"function"==typeof e?e.call(t):e},escapeExpression:u.escapeExpression,invokePartial:function(e,t,n){n.hash&&(t=u.extend({},t,n.hash),n.ids)&&(n.ids[0]=!0),e=c.VM.resolvePartial.call(this,e,t,n);var i=u.extend({},n,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),a=c.VM.invokePartial.call(this,e,t,i);if(null==a&&c.compile&&(n.partials[n.name]=c.compile(e,s.compilerOptions,c),a=n.partials[n.name](t,i)),null==a)throw new d.default("The partial "+n.name+" could not be compiled when running in runtime-only mode");if(n.indent){for(var r=a.split("\n"),o=0,l=r.length;o<l&&(r[o]||o+1!==l);o++)r[o]=n.indent+r[o];a=r.join("\n")}return a},fn:function(e){var t=s[e];return t.decorator=s[e+"_d"],t},programs:[],program:function(e,t,n,i,a){var r=this.programs[e],o=this.fn(e);return r=t||a||i||n?h(this,e,o,t,n,i,a):r||(this.programs[e]=h(this,e,o))},data:function(e,t){for(;e&&t--;)e=e._parent;return e},mergeIfNeeded:function(e,t){var n=e||t;return n=e&&t&&e!==t?u.extend({},t,e):n},nullContext:Object.seal({}),noop:c.VM.noop,compilerInfo:s.compiler};function l(e){var t=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],n=t.data,i=(l._setup(t),!t.partial&&s.useData&&(n=function(e,t){t&&"root"in t||((t=t?p.createFrame(t):{}).root=e);return t}(e,n)),void 0),a=s.useBlockParams?[]:void 0;function r(e){return""+s.main(o,e,o.helpers,o.partials,n,a,i)}return s.useDepths&&(i=t.depths?e!=t.depths[0]?[e].concat(t.depths):t.depths:[e]),(r=v(s.main,r,o,t.depths||[],n,a))(e,t)}return l.isTop=!0,l._setup=function(e){var t,i,a;e.partial?(o.protoAccessControl=e.protoAccessControl,o.helpers=e.helpers,o.partials=e.partials,o.decorators=e.decorators,o.hooks=e.hooks):(t=u.extend({},c.helpers,e.helpers),i=t,a=o,Object.keys(i).forEach(function(e){var t,n=i[e];i[e]=(t=a.lookupProperty,f.wrapHelper(n,function(e){return u.extend({lookupProperty:t},e)}))}),o.helpers=t,s.usePartial&&(o.partials=o.mergeIfNeeded(e.partials,c.partials)),(s.usePartial||s.useDecorators)&&(o.decorators=u.extend({},c.decorators,e.decorators)),o.hooks={},o.protoAccessControl=m.createProtoAccessControl(e),t=e.allowCallsToHelperMissing||n,r.moveHelperToHooks(o,"helperMissing",t),r.moveHelperToHooks(o,"blockHelperMissing",t))},l._child=function(e,t,n,i){if(s.useBlockParams&&!n)throw new d.default("must pass block params");if(s.useDepths&&!i)throw new d.default("must pass parent depths");return h(o,e,s[e],t,0,n,i)},l},n.wrapProgram=h,n.resolvePartial=function(e,t,n){e?e.call||n.name||(n.name=e,e=n.partials[e]):e="@partial-block"===n.name?n.data["partial-block"]:n.partials[n.name];return e},n.invokePartial=function(e,t,i){var a=i.data&&i.data["partial-block"];i.partial=!0,i.ids&&(i.data.contextPath=i.ids[0]||i.data.contextPath);var r=void 0;i.fn&&i.fn!==o&&!function(){i.data=p.createFrame(i.data);var n=i.fn;r=i.data["partial-block"]=function(e){var t=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];return t.data=p.createFrame(t.data),t.data["partial-block"]=a,n(e,t)},n.partials&&(i.partials=u.extend({},i.partials,n.partials))}();void 0===e&&r&&(e=r);{if(void 0===e)throw new d.default("The partial "+i.name+" could not be found");if(e instanceof Function)return e(t,i)}},n.noop=o;var u=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(e("./utils")),n=e("./exception"),d=(n=n)&&n.__esModule?n:{default:n},p=e("./base"),r=e("./helpers"),f=e("./internal/wrapHelper"),m=e("./internal/proto-access");function h(i,e,a,r,t,o,l){function n(e){var t=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],n=l;return!l||e==l[0]||e===i.nullContext&&null===l[0]||(n=[e].concat(l)),a(i,e,i.helpers,i.partials,t.data||r,o&&[t.blockParams].concat(o),n)}return(n=v(a,n,i,l,r,o)).program=e,n.depth=l?l.length:0,n.blockParams=t||0,n}function o(){return""}function v(e,t,n,i,a,r){return e.decorator&&(t=e.decorator(t,e={},n,i&&i[0],a,r,i),u.extend(t,e)),t}},{"./base":2,"./exception":5,"./helpers":6,"./internal/proto-access":15,"./internal/wrapHelper":16,"./utils":21}],20:[function(e,t,n){"use strict";function i(e){this.string=e}n.__esModule=!0,i.prototype.toString=i.prototype.toHTML=function(){return""+this.string},n.default=i,t.exports=n.default},{}],21:[function(e,t,n){"use strict";n.__esModule=!0,n.extend=l,n.indexOf=function(e,t){for(var n=0,i=e.length;n<i;n++)if(e[n]===t)return n;return-1},n.escapeExpression=function(e){if("string"!=typeof e){if(e&&e.toHTML)return e.toHTML();if(null==e)return"";if(!e)return e+"";e=""+e}return r.test(e)?e.replace(a,o):e},n.isEmpty=function(e){return!e&&0!==e||!(!u(e)||0!==e.length)},n.createFrame=function(e){var t=l({},e);return t._parent=e,t},n.blockParams=function(e,t){return e.path=t,e},n.appendContextPath=function(e,t){return(e?e+".":"")+t};var i={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;","=":"&#x3D;"},a=/[&<>"'`=]/g,r=/[&<>"'`=]/;function o(e){return i[e]}function l(e){for(var t=1;t<arguments.length;t++)for(var n in arguments[t])Object.prototype.hasOwnProperty.call(arguments[t],n)&&(e[n]=arguments[t][n]);return e}var s=Object.prototype.toString,c=(n.toString=s,function(e){return"function"==typeof e}),u=(c(/x/)&&(n.isFunction=c=function(e){return"function"==typeof e&&"[object Function]"===s.call(e)}),n.isFunction=c,Array.isArray||function(e){return!(!e||"object"!=typeof e)&&"[object Array]"===s.call(e)});n.isArray=u},{}],22:[function(e,t,n){t.exports=e("./dist/cjs/handlebars.runtime").default},{"./dist/cjs/handlebars.runtime":1}],23:[function(e,t,n){t.exports=e("handlebars/runtime").default},{"handlebars/runtime":22}],24:[function(e,t,n){e=e("hbsfy/runtime");t.exports=e.template({compiler:[8,">= 4.3.0"],main:function(e,t,n,i,a){return'<div class="custom-slider__empty">\n <span class="icon-wrap icon-wrap--xl">\n <i class="fas fa-shopping-basket"></i>\n </span>\n <p class="text">Your basket is currently empty.</p>\n <button class="btn btn-primary close-popup">Continue Shopping</button>\n</div>\n'},useData:!0})},{"hbsfy/runtime":23}],25:[function(e,t,n){e=e("hbsfy/runtime");t.exports=e.template({1:function(e,t,n,i,a){return"d-none"},3:function(e,t,n,i,a){var r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <p class="item">Click &amp; Collect: <span class="value">'+e.escapeExpression(e.lambda(null!=(e=null!=(e=null!=t?r(t,"item"):t)?r(e,"deliveryPointOfService"):e)?r(e,"description"):e,t))+"</span></p>\n"},5:function(e,t,n,i,a){return' <p class="item">Added for delivery</p>\n'},7:function(e,t,n,i,a){return"disabled"},9:function(e,t,n,i,a){return' <span class="order-item__value product-card__price-value">FREE</span>\n'},11:function(e,t,n,i,a){var r=null!=t?t:e.nullContext||{},o=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return null!=(n=o(n,"if").call(r,(o(n,"isToggleVatAvailable")||t&&o(t,"isToggleVatAvailable")||e.hooks.helperMissing).call(r,{name:"isToggleVatAvailable",hash:{},data:a,loc:{start:{line:53,column:16},end:{line:53,column:38}}}),{name:"if",hash:{},fn:e.program(12,a,0),inverse:e.program(14,a,0),data:a,loc:{start:{line:53,column:10},end:{line:68,column:17}}}))?n:""},12:function(e,t,n,i,a){var r,o=e.lambda,l=e.escapeExpression,e=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <div class="price including-vat-inherit">\n <span class="product-card__price-value">\n <span class="order-item__value">'+l(o(null!=(r=null!=(r=null!=t?e(t,"item"):t)?e(r,"basePrice"):r)?e(r,"formattedValue"):r,t))+'</span>\n <span class="inc">Inc.VAT</span>\n </span>\n </div>\n <div class="price excluding-vat-inherit">\n <span class="product-card__price-value">\n <span class="order-item__value">'+l(o(null!=(r=null!=(r=null!=t?e(t,"item"):t)?e(r,"basePriceExcVat"):r)?e(r,"formattedValue"):r,t))+'</span>\n <span class="inc">Exc.VAT</span>\n </span>\n </div>\n'},14:function(e,t,n,i,a){var r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return' <span class="price product-card__price-value">'+e.escapeExpression(e.lambda(null!=(e=null!=(e=null!=t?r(t,"item"):t)?r(e,"basePrice"):e)?r(e,"formattedValue"):e,t))+"</span>\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,i,a){var r,o,l=e.lambda,s=e.escapeExpression,c=null!=t?t:e.nullContext||{},u=e.hooks.helperMissing,d=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="card product-card-preview" data-id="'+s(l(null!=(r=null!=t?d(t,"item"):t)?d(r,"entryNumber"):r,t))+'">\n <div\n class="products__item card__inner"\n data-name="'+s(l(null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"product"):r)?d(r,"name"):r,t))+'"\n data-id="'+s(l(null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"product"):r)?d(r,"code"):r,t))+'"\n data-price="'+s(l(null!=(r=null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"product"):r)?d(r,"price"):r)?d(r,"formattedPriceWithoutCurrencySymbol"):r,t))+'"\n data-brand="'+s(l(null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"product"):r)?d(r,"brandName"):r,t))+'"\n data-category="'+s((d(n,"removeFirst")||t&&d(t,"removeFirst")||u).call(c,null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"product"):r)?d(r,"categoryPath"):r,"Products/",{name:"removeFirst",hash:{},data:a,loc:{start:{line:8,column:19},end:{line:8,column:72}}}))+'"\n data-position="'+s(l(null!=(r=null!=t?d(t,"item"):t)?d(r,"entryNumber"):r,t))+'"\n data-quantity="'+s(l(null!=(r=null!=t?d(t,"item"):t)?d(r,"quantity"):r,t))+'"\n >\n <a href="'+s(l(null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"product"):r)?d(r,"url"):r,t))+'" class="card__img-wrap card__img-wrap_link products__image">\n <img\n class="product-img"\n src="'+s(l(null!=(r=null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"product"):r)?d(r,"image"):r)?d(r,"url"):r,t))+'"\n alt="'+s(l(null!=(r=null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"product"):r)?d(r,"image"):r)?d(r,"altText"):r,t))+'">\n </a>\n <div class="products__details product-card__content">\n <div class="products__details-header">\n <a href="'+s(l(null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"product"):r)?d(r,"url"):r,t))+'" class="title product-card__title product-card__title_link">\n '+s(l(null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"product"):r)?d(r,"name"):r,t))+'\n </a>\n <button class="btn btn--remove '+(null!=(r=d(n,"unless").call(c,null!=(r=null!=t?d(t,"item"):t)?d(r,"updateable"):r,{name:"unless",hash:{},fn:e.program(1,a,0),inverse:e.noop,data:a,loc:{start:{line:23,column:39},end:{line:23,column:83}}}))?r:"")+'" data-action="remove">\n <i class="fas fa-trash remove-icon"></i>\n </button>\n </div>\n <div class="products__details-body">\n'+(null!=(r=d(n,"if").call(c,null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"deliveryPointOfService"):r)?d(r,"name"):r,{name:"if",hash:{},fn:e.program(3,a,0),inverse:e.program(5,a,0),data:a,loc:{start:{line:28,column:8},end:{line:32,column:15}}}))?r:"")+" </div>\n\n "+(null!=(r="function"==typeof(o=null!=(o=d(n,"promotionsHtml")||(null!=t?d(t,"promotionsHtml"):t))?o:u)?o.call(c,{name:"promotionsHtml",hash:{},data:a,loc:{start:{line:35,column:6},end:{line:35,column:26}}}):o)?r:"")+'\n\n <div class="products__details-footer">\n <div class="products__quantity-control">\n <button class="btn btn--quantity" data-action="minus"\n '+(null!=(r=d(n,"unless").call(c,null!=(r=null!=t?d(t,"item"):t)?d(r,"updateable"):r,{name:"unless",hash:{},fn:e.program(7,a,0),inverse:e.noop,data:a,loc:{start:{line:40,column:12},end:{line:40,column:58}}}))?r:"")+" "+(null!=(r=d(n,"if").call(c,(d(n,"eq")||t&&d(t,"eq")||u).call(c,null!=(r=null!=t?d(t,"item"):t)?d(r,"quantity"):r,1,{name:"eq",hash:{},data:a,loc:{start:{line:40,column:65},end:{line:40,column:85}}}),{name:"if",hash:{},fn:e.program(7,a,0),inverse:e.noop,data:a,loc:{start:{line:40,column:59},end:{line:40,column:102}}}))?r:"")+'>\n <i class="fal fa-minus quantity-cta-icon"></i>\n </button>\n <div class="quantity product-card__quantity-label">\n <span class="value product-card__quantity-value" value="'+s(l(null!=(r=null!=t?d(t,"item"):t)?d(r,"quantity"):r,t))+'">'+s(l(null!=(r=null!=t?d(t,"item"):t)?d(r,"quantity"):r,t))+'</span>\n </div>\n <button class="btn btn--quantity" data-action="plus" '+(null!=(r=d(n,"unless").call(c,null!=(r=null!=t?d(t,"item"):t)?d(r,"updateable"):r,{name:"unless",hash:{},fn:e.program(7,a,0),inverse:e.noop,data:a,loc:{start:{line:46,column:63},end:{line:46,column:109}}}))?r:"")+'>\n <i class="fal fa-plus quantity-cta-icon"></i>\n </button>\n </div>\n'+(null!=(r=d(n,"if").call(c,(d(n,"eq")||t&&d(t,"eq")||u).call(c,null!=(r=null!=(r=null!=t?d(t,"item"):t)?d(r,"basePrice"):r)?d(r,"value"):r,0,{name:"eq",hash:{},data:a,loc:{start:{line:50,column:14},end:{line:50,column:41}}}),{name:"if",hash:{},fn:e.program(9,a,0),inverse:e.program(11,a,0),data:a,loc:{start:{line:50,column:8},end:{line:69,column:15}}}))?r:"")+" </div>\n </div>\n </div>\n</div>\n"},useData:!0})},{"hbsfy/runtime":23}],26:[function(e,t,n){e=e("hbsfy/runtime");t.exports=e.template({compiler:[8,">= 4.3.0"],main:function(e,t,n,i,a){return'<div class="custom-slider mini-basket popover-mini-basket d-none">\n <div class="custom-slider__wrap">\n <div class="custom-slider__header">\n <span class="custom-slider__count">Your basket</span>\n <button type="button" class="icon-wrap close-popup">\n <i class="far fa-times icon"></i>\n </button>\n </div>\n <div class="custom-slider__notifications"></div>\n <div class="products popover-mini-basket__cards-holder"></div>\n </div>\n <div class="custom-slider__footer footer-fixed">\n <div class="mini-basket__total">\n <button class="btn mini-basket__total-toggle collapsed" type="button" data-toggle="collapse" data-target="#checkout-details-accordion-3" aria-expanded="false" aria-controls="checkout-details-accordion-3">\n <span class="mini-basket__wrap-total">\n <span class="icon-wrap">\n <i class="fas fa-chevron-down arrow-icon"></i>\n </span>\n <span class="text">Total:</span>\n </span>\n <span class="mini-basket__total-toggle-value"></span>\n </button>\n\n <div class="checkout-widget checkout-widget_order-summary">\n <ul class="checkout-widget__details checkout-info-wrap collapse" id="checkout-details-accordion-3">\n <li class="checkout-widget__accordion-wrap checkout-widget__details-discount" style="display: none">\n <span class="checkout-widget__detail-name checkout-widget__detail-name_accordion collapsed" data-toggle="collapse" data-target="#acheckout-widget-accordion-3">\n Discount(s):\n <span class="icon accordion__header-icon-small">\n <i class="fas fa-angle-up"></i>\n </span>\n </span>\n <ul class="checkout-widget__details-hidden collapse" id="acheckout-widget-accordion-3"></ul>\n <span class="checkout-widget__detail-value checkout-widget__item-value">£0.00</span>\n </li>\n </ul>\n </div>\n </div>\n <div class="custom-slider__ctas">\n <a href="/cart" class="btn btn_full btn-secondary btn-view-basket-cta">View Basket</a>\n <a id="addToCartPopupCheckoutButton" href="/cart/checkout" class="btn btn-action btn_full btn-checkout">\n Checkout\n <span class="icon-wrap ml-2">\n <i class="fas fa-arrow-right"></i>\n </span>\n </a>\n </div>\n </div>\n\n <div class="loader-wrapper basket-loader d-none">\n <div class="loader-spinner">\n <svg class="circular-loader" viewBox="25 25 50 50">\n <circle class="loader-path" cx="50" cy="50" r="20" fill="none"></circle>\n </svg>\n </div>\n <h2>Updating basket…</h2>\n </div>\n</div>\n'},useData:!0})},{"hbsfy/runtime":23}],27:[function(e,t,n){e=e("hbsfy/runtime");t.exports=e.template({1:function(e,t,n,i,a){return"d-none"},3:function(e,t,n,i,a){var r=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return" <h2>"+e.escapeExpression("function"==typeof(n=null!=(n=r(n,"titleLoader")||(null!=t?r(t,"titleLoader"):t))?n:e.hooks.helperMissing)?n.call(null!=t?t:e.nullContext||{},{name:"titleLoader",hash:{},data:a,loc:{start:{line:8,column:12},end:{line:8,column:27}}}):n)+"</h2>\n"},compiler:[8,">= 4.3.0"],main:function(e,t,n,i,a){var r,o=null!=t?t:e.nullContext||{},l=e.lookupProperty||function(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t]};return'<div class="loader-wrapper '+e.escapeExpression("function"==typeof(r=null!=(r=l(n,"modifier")||(null!=t?l(t,"modifier"):t))?r:e.hooks.helperMissing)?r.call(o,{name:"modifier",hash:{},data:a,loc:{start:{line:1,column:27},end:{line:1,column:39}}}):r)+" "+(null!=(r=l(n,"if").call(o,null!=t?l(t,"hidden"):t,{name:"if",hash:{},fn:e.program(1,a,0),inverse:e.noop,data:a,loc:{start:{line:1,column:40},end:{line:1,column:67}}}))?r:"")+'">\n <div class="loader-spinner">\n <svg class="circular-loader" viewBox="25 25 50 50">\n <circle class="loader-path" cx="50" cy="50" r="20" fill="none"/>\n </svg>\n </div>\n'+(null!=(r=l(n,"if").call(o,null!=t?l(t,"titleLoader"):t,{name:"if",hash:{},fn:e.program(3,a,0),inverse:e.noop,data:a,loc:{start:{line:7,column:4},end:{line:9,column:11}}}))?r:"")+"</div>\n"},useData:!0})},{"hbsfy/runtime":23}],28:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.updateCartActionBase=function(e){var t=e.response,n=e.repaintData,i=e.context,a=e.charity,r=e.initial,o=e.updateOrderSummaryFn,l=e.getEqualMapFn,s=e.repaintOrderItemsFn,c=e.addCharityEntryNumberFn,u=e.updatePromotionFn,d=e.addPotentialPromoFn,p=e.cartEntries,f=e.getCartEntriesFn,m=e.checkProductArraysFn,h=e.removeOrderItemFn,v=e.elOrderItem,k=e.updateKlarnaPlacementsFn,_=e.updateClearpayPlacementsFn,y=e.updateClearpayVisibilityFn,g=e.addClassToSummaryAsideFn,E=e.updateBasketSessionFn,b=e.drawEnergyLabelsFn,M=e.triggerCartUpdate,M=void 0===M||M,S=e.extraActions,S=void 0===S?function(){}:S,e=e.extraActionsMiniBasket,e=void 0===e?function(){}:e;r?f(t):(o&&o(t,l(t)),n&&(n.isChangeDelivery&&(n.cartEntry=p.filter(function(e){return e.entryNumber===n.cartEntryNumber})[0],$(document).trigger("EEUpdateDeliveryMode",n)),m(t)?s(t,n):($(v).remove(),h&&h(n),e&&e())),a&&c&&c(t),i&&i.length&&u&&u(t,i),d&&d(t),k&&k(t.totalPrice.formattedPriceWithoutCurrencySymbol),_&&_(t.totalPrice.value),y&&y(t.totalPrice.value),g&&g(t),f&&f(t),E&&E(),b&&b(),M&&$(document).trigger("cartUpdate"),S&&S(t,n,i,a,r),e&&e())}},{}],29:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.updateCartBase=function(e){var t=e.isLocalEnv,n=e.apiUrl,i=e.apiType,a=e.hideLoader,r=e.callActionFn,o=e.actionCallback,l=e.initial,s=e.localUpdateFn,c=e.repaintData,u=e.context,d=e.charity,p=e.extraLocalActions,p=void 0===p?function(){}:p,e=e.extraApiActions,e=void 0===e?function(){}:e;(t?(s(l,c,u,d,null),p):(r({url:n,type:i,complete:a},o,{repaintData:c,context:u,charity:d,initial:l}),e))()}},{}],30:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.checkProductArrays=function(e){return e.pickupUniqueItemsNumber||e.deliveryUniqueItemsNumber},n.getCartEntries=function(e){return e.deliveryOrderGroups.concat(e.pickupOrderGroups).map(function(e){return e.entries}).flatMap(function(e){return e})},n.getMessageInfo=function(e){return{message:e.message,status:e.statusMessage}},n.isMessageExist=function(e){return e.message&&e.statusMessage},n.showNotification=function(e){var t,n=1<arguments.length&&void 0!==arguments[1]?arguments[1]:".notification-area";switch(e.statusMessage){case"accConfirmedMsgs":t="success";break;case"accWarnMsgs":t="warning";break;case"accErrorMsgs":t="error"}Wick.Notification.show({text:e.message,container:n,type:t,closeBtn:!0})},n.updatePromotion=function(t,e,n,i,a){$(e).each(function(){var e={entryNumber:+$(this).attr("data-id")};$(this).find(n).remove(),$(this).find(i).append(a(e,t))})}},{}],31:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.updateTotal=function(e,t,n){t.forEach(function(e){$(e.item).length?$(e.item).show():$(a.checkoutWidgetDetailsDiscount).length?$(a.checkoutWidgetDetailsDiscount).before(r(e)):$(a.checkoutWidgetDetails).append(r(e)),$(e.item).find(e.itemValue).text(e.dataValue),(n||e.value)&&e.dataValue?$(e.item).find(e.itemValue).show():$(e.item).hide()}),(0,i.updateDiscount)(e,n),function(e,t){$(a.delivery).show(),$(a.cc).show(),t?e.deliveryOrder?e.clickAndCollectOrder||$(a.cc).hide():$(a.delivery).hide():e.clickAndCollectOnly?$(a.delivery).hide():0<e.deliveryItemsQuantity&&0===e.pickupItemsQuantity&&$(a.cc).hide()}(e,n),function(n){a.$totalSection.each(function(){var e=$(this).find(a.itemFree),t=$(this).find(a.itemDeficit);e.length&&e.remove(),t.length&&t.remove(),n.clickAndCollectOnly||(n.freeDelivery&&n.messageForFreeDelivery?($(this).find(a.summaryDelivery).before(function(){return'\n <div class="checkout-widget__item checkout-widget__item-free">\n <span class="checkout-widget__text">\n '.concat(n.messageForFreeDelivery,"\n </span>\n </div>\n ")}),$(this).find(a.summaryDelivery).hide()):!n.freeDelivery&&n.messageForFreeDelivery&&$(this).find(a.summaryDelivery).before(function(){return'\n <div class="checkout-widget__item checkout-widget__item-deficit">\n '.concat(n.messageForFreeDelivery,"\n </div>\n ")}))})}(e)};var i=e("../components/discounts"),a={$totalSection:$(".mini-basket__total"),checkoutWidgetDetailsDiscount:".checkout-widget__details-discount",checkoutWidgetDetails:".checkout-widget__details",delivery:".checkout-widget__item-delivery",cc:".checkout-widget__item-cc",itemFree:".checkout-widget__item-free",itemDeficit:".checkout-widget__item-deficit",summaryDelivery:".checkout-widget__item-delivery"};function r(e){return'\n <li class="checkout-widget__item '.concat(e.item.substr(1),'">\n <span>').concat(e.title,'</span>\n <span class="checkout-widget__item-value">').concat(e.dataValue,"</span>\n </li>\n ")}},{"../components/discounts":35}],32:[function(e,t,n){"use strict";function p(e,t){e.is("input")?(e.val(t),e.attr("value",t)):e.text(t)}Object.defineProperty(n,"__esModule",{value:!0}),n.handleQuantityChange=function(e){var t=e.quantityInput,n=e.action,i=e.value,a=e.context,r=e.charity,o=void 0!==r&&r,l=e.entryNumber,s=e.onQuantityChange,c=e.debounceQuantityChange,u=e.onRemoveQuantityDisable,d=i;switch(n){case"plus":(d=Number.parseInt(i,10)+1)&&(p(t,d),c(l,d,t,a,s));break;case"minus":0<(d=Number.parseInt(i,10)-1)?(p(t,d),c(l,d,t,a,s)):"function"==typeof u&&u();break;case"remove":d=0,o||p(t,d),c(l,d,t,a,s);break;default:0!=+d&&(p(t,d),c(l,d,t,a,s))}},n.updateQuantity=p},{}],33:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.updateQuantityOperation=function(e,t,n,i){var a,r,o=4<arguments.length&&void 0!==arguments[4]?arguments[4]:{},l=n.hasClass&&n.hasClass("charity-new"),s="accConfirmedMsgs"!==i.statusMessage,c=o.isMessageExist?o.isMessageExist(i)&&o.getMessageInfo(i):i.message&&i.statusMessage&&{message:i.message,status:i.statusMessage};l||(a=+t.attr("max"),r=+t.attr("min"));0===r&&(r=1),s?(o.updateCart&&o.updateCart(c),o.updateQuantity&&o.updateQuantity(t,i.quantity),o.showNotification&&o.showNotification(i)):l?o.updateCart&&o.updateCart():((1<a||1<r)&&(a<e||e<r)&&o.showNotification&&o.showNotification(i),0===e?(o.showNotification&&o.showNotification(i),o.updateCart&&o.updateCart(c)):(o.updateItemTotal&&o.updateItemTotal(i,n),o.updateCart&&o.updateCart(null,n)))}},{}],34:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.updateQuantityAction=function(e){var t=e.entryNumber,n=e.quantityToUpdate,i=e.quantityInput,a=e.context,r=e.addQuantityDisable,o=e.removeQuantityDisable,l=e.hideLoader,s=e.loaderSelector,c=e.updateAction,u=e.updateQuantityOperation,d=e.basketData,p=e.isLocalEnv,f=e.callActionFn,m=e.routes,h=e.basketSectionSelector;console.log("case(api) to update quantity",t,n),p?(u(n,i,a,d.updateQuantity),r&&r(a),setTimeout(function(){o&&o(),l&&l(s)},500)):(r&&r(a),e={url:"".concat(m.BASKET_ADD_STOCK,"/").concat(t),queries:{quantity:n},type:"PUT",complete:function(){o&&o(),l(s)}},f(e,c,n,i,a,function(e){"accConfirmedMsgs"===e.statusMessage&&$(document).trigger("EEUpdateCart",{cartEntryNumber:t,initialCartQuantity:e.quantity-e.quantityAdded,newCartQuantity:e.quantity,fulfillment:a.hasClass("charity-new")?"Delivery":a.closest(h).attr("data-type")}),a.find(".order-item__action").removeClass("disabled")}))}},{}],35:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.updateDiscount=function(e,t){Array.isArray(e.promotionsInfo)&&e.promotionsInfo.length?($(i.discountItem).show(),i.$discountList().empty(),e.promotionsInfo&&e.promotionsInfo.forEach(function(e){var t;t=e,_.isEmpty(t)||(t.usedCouponCode&&t.description?i.$discountList().append(function(e){return'\n <li data-coupon-code="'.concat(e.usedCouponCode,'">\n ').concat(e.description,'\n <span class="icon checkout-widget__voucher-remove">\n <span class="fas fa-times"></span>\n </span>\n </li>\n')}(t)):t.description&&i.$discountList().append(function(){return"<li>".concat(t.description,"</li>")}))})):t&&Array.isArray(e.promotionsInfo)&&e.promotionsInfo.length?($(i.discountItem).show(),i.$discountList().empty(),e.promotionsInfo.forEach(function(e){i.$discountList().append(function(){return e.usedCouponCode&&e.description?'\n <li data-coupon-code="'.concat(e.usedCouponCode,'">\n ').concat(e.description,'\n <span class="icon checkout-widget__voucher-remove">\n <span class="fas fa-times"></span>\n </span>\n </li>\n '):e.description?"\n <li>".concat(e.description,"</li>\n "):""})})):$(i.discountItem).hide()};var i={$discountList:function(){return $(".checkout-widget__details-discount").find("ul")},discountItem:".checkout-widget__details-discount"}},{}],36:[function(e,t,n){"use strict";var r=e("../basket/quantity-change-handler"),a=e("../basket/update-quantity"),o=e("../utils/routes"),l=e("../utils/http-action"),s=e("../basket/mini-basket-total"),c=e("../basket/update-quantity-operation"),i=e("../basket/basket-utils"),u=e("../basket/basket-update-cart"),d=e("../basket/basket-update-cart-action"),p=e("../utils/loader"),f=v(e("../../../components/mini-basket/mini-basket-order-item.hbs")),m=v(e("../../../components/mini-basket/mini-basket.hbs")),h=v(e("../../../components/mini-basket/mini-basket-empty.hbs"));function v(e){return e&&e.__esModule?e:{default:e}}var e=e("hbsfy/runtime"),k=(e.registerHelper("eq",function(e,t){return e===t}),e.registerHelper("removeFirst",function(e,t){return"string"==typeof e&&"string"==typeof t&&e.startsWith(t)?e.slice(t.length):e}),e.registerHelper("isToggleVatAvailable",function(){var e;return!k.checkLocalEnv&&(null==(e=window.ACC)||null==(e=e.app)?void 0:e.isVatToggleAvailable)}),window.Wick||{}),y=["/cart","/merge-carts"];k.MiniBasketSliderFE={events:{MINI_BASKET_CHECKOUT:"MINI_BASKET_CHECKOUT",MINI_BASKET_VIEW_BASKET:"MINI_BASKET_VIEW_BASKET",SHOW_MINI_BASKET:"SHOW_MINI_BASKET",MINI_BASKET_QUANTITY_INCREASE:"MINI_BASKET_QUANTITY_INCREASE",MINI_BASKET_QUANTITY_DECREASE:"MINI_BASKET_QUANTITY_DECREASE",MINI_BASKET_ITEM_REMOVE:"MINI_BASKET_ITEM_REMOVE"},el:{miniBasket:".custom-slider.mini-basket",customLoader:".mini-basket .basket-loader",subtotal:".checkout-widget__item-bold",value:".checkout-widget__item-value",vat:".checkout-widget__item-vat",delivery:".checkout-widget__item-delivery",charity:".checkout-widget__item-charity",cc:".checkout-widget__item-cc",discountItem:".checkout-widget__details-discount",totalToggle:".mini-basket__total-toggle",totalToggleValue:".mini-basket__total-toggle-value",orderItem:".mini-basket .card.product-card-preview",products:".mini-basket .products",miniBasketSection:".mini-basket .products",miniBasketTotal:".custom-slider__count",headerBasketCount:".header-minicart .header-minicart__counter",itemTotalIncVat:".price .including-vat-inherit .value",itemTotalExcVat:".price excluding-vat-inherit .value",itemTotal:".price",orderItemOffers:".products__offers",orderItemInfo:".products__details-body",productCardPreview:".card.product-card-preview",notifications:".custom-slider__notifications",btnQuantity:".card .btn--quantity",btnQuantityMinus:'.btn--quantity[data-action="minus"]',btnRemove:".card .btn--remove",customSliderWrap:".custom-slider__wrap",miniBasketFooter:".custom-slider__footer",customSliderEmpty:".custom-slider__empty",quantityValue:".product-card__quantity-value",productsItem:".products__item",totalHide:"order-item__total-hide",btnCheckout:"#addToCartPopupCheckoutButton",btnViewBasket:".mini-basket a.btn-view-basket-cta",basketTotalItem:".basket-total-items"},classes:{HIDDEN_CLASS_NAME:"d-none"},cartEntries:[],getEqualMapForUpdateCart:function(e){var t;return[{item:k.MiniBasketSliderFE.el.subtotal,itemValue:k.MiniBasketSliderFE.el.value,dataValue:null==(t=e.subtotalWithoutCharity)?void 0:t.formattedValue,value:null==(t=e.subTotal)?void 0:t.value,title:"Items subtotal:"},{item:k.MiniBasketSliderFE.el.vat,itemValue:k.MiniBasketSliderFE.el.value,dataValue:null==(t=e.totalTax)?void 0:t.formattedValue,value:null==(t=e.totalTax)?void 0:t.value,title:"VAT:"},{item:k.MiniBasketSliderFE.el.cc,itemValue:k.MiniBasketSliderFE.el.value,dataValue:"Free",title:"Click & Collect:"},{item:k.MiniBasketSliderFE.el.delivery,itemValue:k.MiniBasketSliderFE.el.value,dataValue:null==(t=e.deliveryCost)?void 0:t.formattedValue,value:null==(t=e.deliveryCost)?void 0:t.value,title:"Delivery:"},{item:k.MiniBasketSliderFE.el.charity,itemValue:k.MiniBasketSliderFE.el.value,dataValue:null==(t=e.charityPrice)?void 0:t.formattedValue,value:null==(t=e.charityPrice)?void 0:t.value,title:"Charity donation:"},{item:k.MiniBasketSliderFE.el.discountItem,itemValue:k.MiniBasketSliderFE.el.value,dataValue:e.totalDiscounts?null==(t=e.totalDiscounts)?void 0:t.formattedValue:"",value:e.totalDiscounts?null==(t=e.totalDiscounts)?void 0:t.value:"",title:"Discount(s):"},{item:k.MiniBasketSliderFE.el.totalToggle,itemValue:k.MiniBasketSliderFE.el.totalToggleValue,dataValue:null==(t=e.totalPrice)?void 0:t.formattedValue,value:null==(t=e.totalPrice)?void 0:t.value}]},isInitial:!0,isMiniBasketOpened:!1,actionEventType:null,miniBasketUpdateItemQuantity:function(e){var t=$(e.currentTarget).closest(k.MiniBasketSliderFE.el.productCardPreview),n=t.find(k.MiniBasketSliderFE.el.quantityValue),i=n.text(),e=$(e.currentTarget).attr("data-action"),a=+t.attr("data-id");"plus"===e&&(k.MiniBasketSliderFE.actionEventType=k.MiniBasketSliderFE.events.MINI_BASKET_QUANTITY_INCREASE),"minus"===e&&(k.MiniBasketSliderFE.actionEventType=k.MiniBasketSliderFE.events.MINI_BASKET_QUANTITY_DECREASE),"remove"===e&&(k.MiniBasketSliderFE.actionEventType=k.MiniBasketSliderFE.events.MINI_BASKET_ITEM_REMOVE),(0,r.handleQuantityChange)({quantityInput:n,action:e,value:i,context:t,entryNumber:a,onQuantityChange:k.MiniBasketSliderFE.updateQuantityAction,debounceQuantityChange:k.MiniBasketSliderFE.debounceQuantityChange})},debounceQuantityChange:_.debounce(function(e,t,n,i){(0,p.showLoader)(k.MiniBasketSliderFE.el.customLoader),k.MiniBasketSliderFE.updateQuantityAction(e,t,n,i)},500),updateQuantityAction:function(e,t,n,i){(0,a.updateQuantityAction)({entryNumber:e,quantityToUpdate:t,quantityInput:n,context:i,hideLoader:function(){return setTimeout(function(){return(0,p.hideLoader)(k.MiniBasketSliderFE.el.customLoader)},500)},updateAction:k.MiniBasketSliderFE.updateAction,isLocalEnv:k.checkLocalEnv,basketData:k.MiniBasketData,updateQuantityOperation:k.MiniBasketSliderFE.updateQuantityOperation,callActionFn:l.callAction,routes:o.ROUTES,isMiniBasket:!0}),k.MiniBasketSliderFE.toggleMinusButtonState(i,t)},toggleMinusButtonState:function(e,t){e=e.find(k.MiniBasketSliderFE.el.btnQuantityMinus);1<t?e.prop("disabled",!1):e.prop("disabled",!0)},updateAction:function(e,t,n,i,a){k.MiniBasketSliderFE.updateQuantityOperation(t,n,i,e),a(e)},updateQuantityOperation:function(e,t,n,i){var a=$(k.MiniBasketSliderFE.el.notifications);0<a.children().length&&a.empty(),(0,c.updateQuantityOperation)(e,t,n,i,{updateCart:k.MiniBasketSliderFE.updateCart,showNotification:k.MiniBasketSliderFE.showNotification,updateQuantity:k.MiniBasketSliderFE.updateQuantity,updateItemTotal:null,isMessageExist:k.MiniBasketSliderFE.isMessageExist,getMessageInfo:k.MiniBasketSliderFE.getMessageInfo})},updateCart:function(e,t,n,i,a){console.log("case(api) to update cart"),(0,u.updateCartBase)({isLocalEnv:k.checkLocalEnv,apiUrl:o.ROUTES.BASKET_GET_CART,apiType:"GET",hideLoader:function(){return setTimeout(function(){return(0,p.hideLoader)(k.MiniBasketSliderFE.el.customLoader)},500)},callActionFn:l.callAction,actionCallback:a||k.MiniBasketSliderFE.updateCartAction,repaintData:e,context:t,charity:n,initial:i,localUpdateFn:function(e,t,n,i){e?k.MiniBasketSliderFE.getCartEntries(k.MiniBasketData.initialCartState):((0,s.updateTotal)(k.MiniBasketData.updateCart,k.MiniBasketSliderFE.getEqualMapForUpdateCart(k.MiniBasketData.updateCart)),t?k.MiniBasketSliderFE.repaintOrderItems(k.MiniBasketData.updateCart,t):k.MiniBasketSliderFE.updateItemsCount(k.MiniBasketData.updateCart),i&&k.MiniBasketSliderFE.addCharityEntryNumber(k.MiniBasketData.updateCart),n&&n.length&&k.MiniBasketSliderFE.updatePromotion(k.MiniBasketData.updateCart,n),k.MiniBasketSliderFE.getCartEntries(k.MiniBasketData.updateCart),k.MiniBasketSliderFE.checkProductArrays(k.MiniBasketData.updateCart)||k.MiniBasketSliderFE.removeOrderItem(t),setTimeout(function(){return(0,p.hideLoader)(k.MiniBasketSliderFE.el.customLoader)},1e3))}})},updateCartAction:function(e,t){var n=t.repaintData,i=t.context,a=t.charity,t=t.initial;(0,d.updateCartActionBase)({response:e,repaintData:n,context:i,charity:a,initial:t,updateOrderSummaryFn:s.updateTotal,getEqualMapFn:k.MiniBasketSliderFE.getEqualMapForUpdateCart,repaintOrderItemsFn:k.MiniBasketSliderFE.repaintOrderItems,addCharityEntryNumberFn:k.MiniBasketSliderFE.addCharityEntryNumber,updatePromotionFn:k.MiniBasketSliderFE.updatePromotion,cartEntries:k.MiniBasketSliderFE.cartEntries,getCartEntriesFn:function(){return k.MiniBasketSliderFE.getCartEntries(e)},checkProductArraysFn:k.MiniBasketSliderFE.checkProductArrays,removeOrderItemFn:k.MiniBasketSliderFE.removeOrderItem,elOrderItem:k.MiniBasketSliderFE.el.orderItem,triggerCartUpdate:!1,extraActionsMiniBasket:function(){k.MiniBasketSliderFE.toggleMiniBasketEmptyView(),k.MiniBasketSliderFE.updateItemsCount(e),k.MiniBasketSliderFE.actionEventType&&k.MiniBasketSliderFE.fireMiniBasketActionEvent(k.MiniBasketSliderFE.actionEventType,e)}})},fireMiniBasketActionEvent:function(e,t){e&&(t={orderType:t.orderType||"",deliveryOrderGroups:t.deliveryOrderGroups||[],pickupOrderGroups:t.pickupOrderGroups||[]},e=createEvent(e,t,{}),window.dispatchEvent(e))},removeOrderItem:function(e){k.MiniBasketSliderFE.updateItemsCount(e)},repaintOrderItems:function(t){var e=t.pickupOrderGroups||[],n=t.deliveryOrderGroups||[],i={};$(k.MiniBasketSliderFE.el.orderItem).remove(),e.length&&e.forEach(function(e){e.entries.forEach(function(e){i={item:e,type:"cc",data:t},$(k.MiniBasketSliderFE.el.products).append(k.MiniBasketSliderFE.createOrderItem(i))})}),n.length&&n.forEach(function(e){e.entries.forEach(function(e){e.charity||(i={item:e,type:"delivery",data:t},$(k.MiniBasketSliderFE.el.products).append(k.MiniBasketSliderFE.createOrderItem(i)))})}),k.MiniBasketSliderFE.updateItemsCount(t),$(document).trigger("cartRerender")},showNotification:function(e){(0,i.showNotification)(e,k.MiniBasketSliderFE.el.notifications)},isMessageExist:i.isMessageExist,getMessageInfo:i.getMessageInfo,getCartEntries:function(e){k.MiniBasketSliderFE.cartEntries=(0,i.getCartEntries)(e)},checkProductArrays:i.checkProductArrays,createOrderItem:function(e){var t="";return e.item.updateable&&(t=k.MiniBasketSliderFE.addPromotions(e.item,e.data)),e.item.deliveryPointOfService&&e.item.deliveryPointOfService.description&&(e.item.deliveryPointOfService.description=k.MiniBasketSliderFE.capitalizeWords(e.item.deliveryPointOfService.description)),(0,f.default)({item:e.item,type:e.type,promotionsHtml:t})},capitalizeWords:function(e){return e.toLowerCase().split(" ").map(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}).join(" ")},updateItemsCount:function(e){e=e.totalUnitCount||0;$(k.MiniBasketSliderFE.el.miniBasketTotal).text("Your basket (".concat(e,")")),$(k.MiniBasketSliderFE.el.headerBasketCount).text("".concat(e)),$(k.MiniBasketSliderFE.el.basketTotalItem).html("".concat(e))},updatePromotion:function(e){(0,i.updatePromotion)(e,k.MiniBasketSliderFE.el.orderItem,k.MiniBasketSliderFE.el.orderItemOffers,k.MiniBasketSliderFE.el.orderItemInfo,k.MiniBasketSliderFE.addPromotions)},addPromotions:function(n,e){var i=[];return e.potentialProductPromotions&&e.potentialProductPromotions.forEach(function(t){t.consumedEntries.forEach(function(e){e.orderEntryNumber!==n.entryNumber||i.length&&!i.every(function(e){return e!=='<div class="products__promo">'.concat(t.description,"</div>")})||i.push('<div class="products__promo">'.concat(t.description,"</div>"))})}),e.appliedProductPromotions&&e.appliedProductPromotions.forEach(function(t){t.consumedEntries.forEach(function(e){e.orderEntryNumber!==n.entryNumber||!t.description||i.length&&!i.every(function(e){return e!=='<div class="products__promo">'.concat(t.description,"</div>")})||i.push('<div class="products__promo">'.concat(t.description,"</div>"))})}),i.length?'<div class="products__offers">'.concat(i.join(""),"</div>"):""},initPopupSlider:function(){createPopupSlider({type:"miniBasket",sliderSelector:".custom-slider.mini-basket",onAppendEvent:k.MiniBasketSliderFE.events.SHOW_MINI_BASKET,onAppend:function(e,t){t=t.showSlider;k.MiniBasketSliderFE.toggleMiniBasketEmptyView(),t()},onClose:function(){$(k.MiniBasketSliderFE.el.notifications).empty(),k.MiniBasketSliderFE.isMiniBasketOpened=!1,k.MiniBasketSliderFE.actionEventType=null}})},toggleMiniBasketEmptyView:function(){k.MiniBasketSliderFE.cartEntries.length?($(k.MiniBasketSliderFE.el.customSliderWrap).find(k.MiniBasketSliderFE.el.customSliderEmpty).remove(),$(k.MiniBasketSliderFE.el.miniBasketFooter).removeClass(k.MiniBasketSliderFE.classes.HIDDEN_CLASS_NAME),$(k.MiniBasketSliderFE.el.products).length||$(k.MiniBasketSliderFE.el.customSliderWrap).append('<div class="products popover-mini-basket__cards-holder"></div>')):$(k.MiniBasketSliderFE.el.customSliderEmpty).length||($(k.MiniBasketSliderFE.el.customSliderWrap).append((0,h.default)()),$(k.MiniBasketSliderFE.el.miniBasketFooter).addClass(k.MiniBasketSliderFE.classes.HIDDEN_CLASS_NAME))},appendMiniBasketWrap:function(){$(k.MiniBasketSliderFE.el.miniBasket).length||$("body").append((0,m.default)())},isEmptyBasketLocal:function(){return window.location.pathname.includes("page_product-details-saved-pl.html")},shouldReloadPage:function(){return y.includes(window.location.pathname)},openMiniBasket:function(){var e;k.MiniBasketSliderFE.isInitial&&k.checkLocalEnv?(e=k.MiniBasketSliderFE.isEmptyBasketLocal()?k.MiniBasketData.initialCartEmptyState:k.MiniBasketData.initialCartState,k.MiniBasketSliderFE.getCartEntries(e),(0,s.updateTotal)(e,k.MiniBasketSliderFE.getEqualMapForUpdateCart(e)),k.MiniBasketSliderFE.repaintOrderItems(e),k.MiniBasketSliderFE.showMiniBasketEvent(),setTimeout(function(){k.MiniBasketSliderFE.isInitial=!1},100)):k.MiniBasketSliderFE.cartEntries.length?k.MiniBasketSliderFE.showMiniBasketEvent():k.MiniBasketSliderFE.updateCart(!0,void 0,void 0,!1,function(e,t){k.MiniBasketSliderFE.updateCartAction(e,t),k.MiniBasketSliderFE.isMiniBasketOpened||(k.MiniBasketSliderFE.showMiniBasketEvent(),k.MiniBasketSliderFE.isMiniBasketOpened=!0)})},showMiniBasketEvent:function(){return new Promise(function(e,t){e=createEvent(k.MiniBasketSliderFE.events.SHOW_MINI_BASKET,{},{resolve:e,reject:t});window.dispatchEvent(e)})},bindMiniBasketBtnHandler:function(t,n){$(document).on("click",t,function(e){return e.preventDefault(),new Promise(function(e,t){e=createEvent(n,{},{resolve:e,reject:t});window.dispatchEvent(e)}).then(function(){window.location.href=$(t).attr("href")}).catch(function(e){console.error(e)})})},init:function(){$(k.MiniBasketSliderFE.el.miniBasket).on("click",k.MiniBasketSliderFE.el.btnQuantity,k.MiniBasketSliderFE.miniBasketUpdateItemQuantity),$(k.MiniBasketSliderFE.el.miniBasket).on("click",k.MiniBasketSliderFE.el.btnRemove,k.MiniBasketSliderFE.miniBasketUpdateItemQuantity),k.MiniBasketSliderFE.bindMiniBasketBtnHandler(k.MiniBasketSliderFE.el.btnCheckout,k.MiniBasketSliderFE.events.MINI_BASKET_CHECKOUT),k.MiniBasketSliderFE.bindMiniBasketBtnHandler(k.MiniBasketSliderFE.el.btnViewBasket,k.MiniBasketSliderFE.events.MINI_BASKET_VIEW_BASKET)}},$(document).ready(function(){var e=$(".header-minicart .header-minicart__btn");e.length&&(k.MiniBasketSliderFE.shouldReloadPage()?e.on("click",function(){return window.location.reload()}):(e.on("click",function(){return k.MiniBasketSliderFE.openMiniBasket()}),k.MiniBasketSliderFE.appendMiniBasketWrap(),k.MiniBasketSliderFE.initPopupSlider(),k.MiniBasketSliderFE.init()))})},{"../../../components/mini-basket/mini-basket-empty.hbs":24,"../../../components/mini-basket/mini-basket-order-item.hbs":25,"../../../components/mini-basket/mini-basket.hbs":26,"../basket/basket-update-cart":29,"../basket/basket-update-cart-action":28,"../basket/basket-utils":30,"../basket/mini-basket-total":31,"../basket/quantity-change-handler":32,"../basket/update-quantity":34,"../basket/update-quantity-operation":33,"../utils/http-action":38,"../utils/loader":39,"../utils/routes":40,"hbsfy/runtime":23}],37:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.retryAction=function(e,t){if(t--){for(var n=arguments.length,i=new Array(2<n?n-2:0),a=2;a<n;a++)i[a-2]=arguments[a];e.apply(void 0,i)}else r.retryLimit=5},n.retryHelpers=void 0;var r={retryLimit:5,errorMsg:"Something went wrong"};n.retryHelpers=r},{}],38:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.callAction=function(t,n){for(var e=arguments.length,i=new Array(2<e?e-2:0),a=2;a<e;a++)i[a-2]=arguments[a];$.ajax({url:"".concat(l.origin).concat((0,o.generateUrlWithQuery)(t.url,t.queries)),method:t.type,headers:t.headers||{},data:t.data||{},retryLimit:t.retryLimit||0,success:function(e){n.apply(void 0,[e].concat(i))},error:function(e){this.retryLimit?r.retryAction.apply(void 0,[t.error,this.retryLimit,e].concat(i)):t.error&&t.error.apply(t,[e].concat(i))},complete:t.complete})};var r=e("../components/retry-action"),o=e("./url-query"),l={origin:window.location.origin}},{"../components/retry-action":37,"./url-query":41}],39:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.appendLoader=function(e){$(e.wrapper).append((0,i.default)(e))},n.hideLoader=function(e){$(o(e)).addClass(r)},n.showLoader=function(e){$(o(e)).removeClass(r)};var i=(n=e("../../../elements/loader.hbs"))&&n.__esModule?n:{default:n};var a=".loader-wrapper",r="d-none";function o(e){return e||a}},{"../../../elements/loader.hbs":27}],40:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ROUTES=void 0;n.ROUTES={WISDOM_CHECK_AVAILABILITY:"/delivery-availability",CHARITY_ADD:"/cart/add",BASKET_GET_CART:"/checkout-rs/user/cart",BASKET_ADD_STOCK:"/cart/entry",VOUCHER_UPDATE:"/checkout-rs/user/cart/vouchers",GET_CSRF_TOKEN:"/sites-rs/site",PL_UPDATE_REFERENCE:"/project-list/update-notes",PL_REMOVE_REFERENCE:"/project-list/remove-notes"}},{}],41:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.generateUrlWithQuery=function(e,t){return t?"".concat(e).concat(function(t){return t?"?".concat(Object.keys(t).map(function(e){return"".concat(e,"=").concat(t[e])}).join("&")):""}(t)):e}},{}]},{},[36]);
@@ -1,60 +0,0 @@
1
- export function updateCartActionBase(params) {
2
- const {
3
- response,
4
- repaintData,
5
- context,
6
- charity,
7
- initial,
8
- updateOrderSummaryFn,
9
- getEqualMapFn,
10
- repaintOrderItemsFn,
11
- addCharityEntryNumberFn,
12
- updatePromotionFn,
13
- addPotentialPromoFn,
14
- cartEntries,
15
- getCartEntriesFn,
16
- checkProductArraysFn,
17
- removeOrderItemFn,
18
- elOrderItem,
19
- updateKlarnaPlacementsFn,
20
- updateClearpayPlacementsFn,
21
- updateClearpayVisibilityFn,
22
- addClassToSummaryAsideFn,
23
- updateBasketSessionFn,
24
- drawEnergyLabelsFn,
25
- triggerCartUpdate = true,
26
- extraActions = () => {},
27
- extraActionsMiniBasket = () => {},
28
- } = params;
29
- if (initial) {
30
- getCartEntriesFn(response);
31
- } else {
32
- updateOrderSummaryFn && updateOrderSummaryFn(response, getEqualMapFn(response));
33
- if (repaintData) {
34
- if (repaintData.isChangeDelivery) {
35
- repaintData.cartEntry = cartEntries.filter(entry => entry.entryNumber === repaintData.cartEntryNumber)[0];
36
- $(document).trigger("EEUpdateDeliveryMode", repaintData);
37
- }
38
- checkProductArraysFn(response)
39
- ? repaintOrderItemsFn(response, repaintData)
40
- : (() => {
41
- $(elOrderItem).remove();
42
- removeOrderItemFn && removeOrderItemFn(repaintData);
43
- extraActionsMiniBasket && extraActionsMiniBasket();
44
- })();
45
- }
46
- charity && addCharityEntryNumberFn && addCharityEntryNumberFn(response);
47
- context && context.length && updatePromotionFn && updatePromotionFn(response, context);
48
- addPotentialPromoFn && addPotentialPromoFn(response);
49
- updateKlarnaPlacementsFn && updateKlarnaPlacementsFn(response.totalPrice.formattedPriceWithoutCurrencySymbol);
50
- updateClearpayPlacementsFn && updateClearpayPlacementsFn(response.totalPrice.value);
51
- updateClearpayVisibilityFn && updateClearpayVisibilityFn(response.totalPrice.value);
52
- addClassToSummaryAsideFn && addClassToSummaryAsideFn(response);
53
- getCartEntriesFn && getCartEntriesFn(response);
54
- updateBasketSessionFn && updateBasketSessionFn();
55
- drawEnergyLabelsFn && drawEnergyLabelsFn();
56
- triggerCartUpdate && $(document).trigger("cartUpdate");
57
- extraActions && extraActions(response, repaintData, context, charity, initial);
58
- extraActionsMiniBasket && extraActionsMiniBasket();
59
- }
60
- }