wickes-css2 2.112.0-develop.4 → 2.112.0-develop.7

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 (66) hide show
  1. package/Readme.md +1 -1
  2. package/build/css/category-main.css +1 -1
  3. package/build/css/components/global-search.css +1 -1
  4. package/build/css/homepage-main.css +1 -1
  5. package/build/css/kitchen-plp-main.css +1 -1
  6. package/build/css/main.css +1 -1
  7. package/build/css/my-account-main-v2.css +1 -1
  8. package/build/css/my-account-main.css +1 -1
  9. package/build/css/pages/page_product-details-critical.css +1 -1
  10. package/build/css/pages/page_product-details.css +1 -1
  11. package/build/css/pdp-main-before-combine.css +1 -1
  12. package/build/css/pdp-main-critical.css +1 -1
  13. package/build/css/pdp-main-non-critical.css +1 -1
  14. package/build/css/pdp-main.css +1 -1
  15. package/build/css/plp-main.css +1 -1
  16. package/build/css/store-locator-main.css +1 -1
  17. package/build/js/basket.min.js +1 -1
  18. package/build/js/bloomreach-widget.min.js +1 -1
  19. package/build/js/emulation.min.js +664 -38
  20. package/build/js/page/basket-v2.js +29 -20
  21. package/build/js/page/bloomreach-widget/bloomreach-widget.js +250 -0
  22. package/build/js/page/{bloomreach-widget.js → bloomreach-widget/complete-your-project-widget.js} +205 -359
  23. package/build/js/page/bloomreach-widget/why-not-add-widget.js +198 -0
  24. package/package.json +1 -5
  25. package/src/components/bloomreach/complete-card.hbs +4 -32
  26. package/src/components/bloomreach/why-not-add-card-skeleton.hbs +14 -0
  27. package/src/components/bloomreach/why-not-add-card.hbs +73 -0
  28. package/src/components/bloomreach/why-not-add-content.hbs +41 -0
  29. package/src/components/bloomreach/why-not-add-skeleton.hbs +9 -0
  30. package/src/components/bloomreach/why-not-add.hbs +6 -0
  31. package/src/components/my-account/order.hbs +6 -1
  32. package/src/components/order-item.hbs +7 -7
  33. package/src/components/pdp-price-actions.hbs +2 -2
  34. package/src/components/potential-promotion.hbs +4 -4
  35. package/src/components/price-badges.hbs +12 -0
  36. package/src/components/price-block-v2.hbs +5 -12
  37. package/src/components/reviews-rating.hbs +22 -0
  38. package/src/components/share-list-modal-without-social-icons.hbs +2 -2
  39. package/src/components/share-list-modal.hbs +7 -3
  40. package/src/data/data_shopping-cart-v2.json +46 -2
  41. package/src/data/data_shopping-cart-with-energy.json +26 -2
  42. package/src/data/my-account/data_my-order.json +8 -0
  43. package/src/js/emulation/basket-data.js +312 -0
  44. package/src/js/emulation/bloomreach-widget-loading.js +2 -2
  45. package/src/js/emulation/mock.js +309 -0
  46. package/src/js/emulation/shopping-list.js +40 -49
  47. package/src/js/emulation/why-not-add-loading.js +11 -0
  48. package/src/js/emulation/why-not-add.js +28 -0
  49. package/src/js/page/basket-v2.js +29 -20
  50. package/src/js/page/bloomreach-widget/bloomreach-widget.js +250 -0
  51. package/src/js/page/{bloomreach-widget.js → bloomreach-widget/complete-your-project-widget.js} +205 -359
  52. package/src/js/page/bloomreach-widget/why-not-add-widget.js +198 -0
  53. package/src/page_product-details-bloomreach.html +1 -1
  54. package/src/page_product-details-with-global-search-v2.html +2 -1
  55. package/src/page_product-details-with-why-not-add-single.html +131 -0
  56. package/src/page_track-my-order-result.html +1 -0
  57. package/src/scss/components/_tradepro-discount-banner.scss +10 -14
  58. package/src/scss/components/bloomreach/_bloomreach.scss +3 -0
  59. package/src/scss/components/bloomreach/_complete-card.scss +0 -38
  60. package/src/scss/components/bloomreach/_reviews.scss +60 -0
  61. package/src/scss/components/bloomreach/_why-not-add-card.scss +223 -0
  62. package/src/scss/components/bloomreach/_why-not-add.scss +143 -0
  63. package/src/scss/components/global-search.scss +0 -6
  64. package/src/scss/pages/page_product-details-critical.scss +7 -0
  65. package/src/scss/pages/page_product-details.scss +7 -0
  66. package/src/sitemap.html +10 -4
@@ -0,0 +1,198 @@
1
+ var Wick = window.Wick || {};
2
+
3
+ import { createLoadingButton } from '../utils/create-loading-button';
4
+
5
+ const Handlebars = require('hbsfy/runtime');
6
+
7
+ Handlebars.registerPartial('loader', require('../../../elements/loader.hbs'));
8
+ Handlebars.registerPartial('button', require('../../../components/base/button.hbs'));
9
+ Handlebars.registerPartial(
10
+ 'bloomreach/why-not-add',
11
+ require('../../../components/bloomreach/why-not-add.hbs')
12
+ );
13
+ Handlebars.registerPartial(
14
+ 'bloomreach/why-not-add-skeleton',
15
+ require('../../../components/bloomreach/why-not-add-skeleton.hbs')
16
+ );
17
+ Handlebars.registerPartial(
18
+ 'bloomreach/why-not-add-card-skeleton',
19
+ require('../../../components/bloomreach/why-not-add-card-skeleton.hbs')
20
+ );
21
+ Handlebars.registerPartial(
22
+ 'bloomreach/why-not-add-card',
23
+ require('../../../components/bloomreach/why-not-add-card.hbs')
24
+ );
25
+ Handlebars.registerPartial('reviews-rating', require('../../../components/reviews-rating.hbs'));
26
+
27
+ const whyNotAddTemplate = require('../../../components/bloomreach/why-not-add-content.hbs');
28
+
29
+ const WhyNotAddWidget = {
30
+ ADD_TO_CART_EVENT: 'addToCart',
31
+
32
+ products: [],
33
+ sliders: [],
34
+ loadingButton: null,
35
+
36
+ el: {
37
+ cta: '.why-not-add-card__cta',
38
+ next: '[data-why-not-add-next]',
39
+ pagination: '[data-why-not-add-pagination]',
40
+ prev: '[data-why-not-add-prev]',
41
+ root: '[data-why-not-add]',
42
+ slider: '[data-why-not-add-slider]',
43
+ widgetContainer: '[data-why-not-add-widget]',
44
+ },
45
+
46
+ normalizeProducts(payloadData) {
47
+ return Wick.BloomreachWidget.normalizePayload(payloadData)
48
+ .map(function (item) {
49
+ return item.baseProduct || item;
50
+ })
51
+ .slice(0, 5);
52
+ },
53
+
54
+ renderWidget($container, payloadData) {
55
+ const products = WhyNotAddWidget.normalizeProducts(payloadData);
56
+
57
+ if (!products.length) {
58
+ $container.empty().hide();
59
+ return;
60
+ }
61
+
62
+ WhyNotAddWidget.products = products;
63
+
64
+ $container
65
+ .html(
66
+ whyNotAddTemplate({
67
+ products: products.map(Wick.BloomreachWidget.getProductRenderData),
68
+ isSingleProduct: products.length === 1,
69
+ })
70
+ )
71
+ .show();
72
+ },
73
+
74
+ destroySliders() {
75
+ WhyNotAddWidget.sliders.forEach(function (slider) {
76
+ if (slider && slider.destroy) {
77
+ slider.destroy(true, true);
78
+ }
79
+ });
80
+
81
+ WhyNotAddWidget.sliders = [];
82
+ },
83
+
84
+ initSliders($root) {
85
+ WhyNotAddWidget.destroySliders();
86
+
87
+ $root.find(WhyNotAddWidget.el.slider).each(function () {
88
+ const $slider = $(this);
89
+ const $widget = $slider.closest(WhyNotAddWidget.el.root);
90
+ const slidesCount = $slider.find('.swiper-slide').length;
91
+
92
+ if (slidesCount <= 1) {
93
+ return;
94
+ }
95
+
96
+ const slider = new Swiper(this, {
97
+ roundLengths: true,
98
+ slidesPerView: 1,
99
+ spaceBetween: 12,
100
+ watchOverflow: true,
101
+ navigation: {
102
+ nextEl: $widget.find(WhyNotAddWidget.el.next)[0],
103
+ prevEl: $widget.find(WhyNotAddWidget.el.prev)[0],
104
+ disabledClass: 'why-not-add__arrow--disabled',
105
+ },
106
+ pagination: {
107
+ el: $widget.find(WhyNotAddWidget.el.pagination)[0],
108
+ clickable: true,
109
+ renderBullet(index, className) {
110
+ return `<button class="${className}" type="button" aria-label="Go to slide ${
111
+ index + 1
112
+ }"></button>`;
113
+ },
114
+ bulletClass: 'why-not-add__pagination-item',
115
+ bulletActiveClass: 'why-not-add__pagination-item--active',
116
+ },
117
+ });
118
+
119
+ WhyNotAddWidget.sliders.push(slider);
120
+ });
121
+ },
122
+ bindAddToCart($root) {
123
+ $root.off('click.whyNotAdd', WhyNotAddWidget.el.cta);
124
+ $root.on('click.whyNotAdd', WhyNotAddWidget.el.cta, function (event) {
125
+ event.preventDefault();
126
+
127
+ const $button = $(this);
128
+ const $card = $button.closest('.why-not-add-card');
129
+ const productCode = $card.attr('data-product-code');
130
+
131
+ if (!productCode || WhyNotAddWidget.loadingButton.isLoading($button)) {
132
+ return;
133
+ }
134
+
135
+ const payload = {
136
+ productCode,
137
+ };
138
+
139
+ WhyNotAddWidget.loadingButton.start($button);
140
+
141
+ Wick.BloomreachWidget.dispatchWidgetEvent(WhyNotAddWidget.ADD_TO_CART_EVENT, payload)
142
+ .then(function () {
143
+ WhyNotAddWidget.loadingButton.stop($button);
144
+ Wick.MiniBasketSliderFE.isMiniBasketLoaded = false;
145
+ })
146
+ .catch(function () {
147
+ WhyNotAddWidget.loadingButton.stop($button);
148
+ });
149
+ });
150
+ },
151
+
152
+ bindVatToggle() {
153
+ if (Wick.BloomreachWidget.bindVatToggle) {
154
+ Wick.BloomreachWidget.bindVatToggle('whyNotAddVatToggle');
155
+ }
156
+ },
157
+
158
+ initRenderedWidget($container) {
159
+ const $root = $container.find(WhyNotAddWidget.el.root);
160
+
161
+ if (!$root.length) {
162
+ return;
163
+ }
164
+
165
+ if (!WhyNotAddWidget.loadingButton) {
166
+ WhyNotAddWidget.loadingButton = createLoadingButton({
167
+ text: Wick.BloomreachWidget.el.loadingButtonText,
168
+ loader: Wick.BloomreachWidget.el.loadingButtonLoader,
169
+ });
170
+ }
171
+
172
+ Wick.BloomreachWidget.removeBlankTargets($root);
173
+
174
+ Wick.BloomreachWidget.drawRating($root);
175
+ WhyNotAddWidget.initSliders($root);
176
+ WhyNotAddWidget.bindAddToCart($root);
177
+ WhyNotAddWidget.bindVatToggle();
178
+ Wick.BloomreachWidget.reapplyVatDisplay();
179
+ },
180
+
181
+ init(payloadData) {
182
+ const $containers = $(WhyNotAddWidget.el.widgetContainer);
183
+
184
+ if (!payloadData) {
185
+ $containers.empty().hide();
186
+ return;
187
+ }
188
+
189
+ $containers.each(function () {
190
+ const $container = $(this);
191
+
192
+ WhyNotAddWidget.renderWidget($container, payloadData);
193
+ WhyNotAddWidget.initRenderedWidget($container);
194
+ });
195
+ },
196
+ };
197
+
198
+ export default WhyNotAddWidget;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wickes-css2",
3
- "version": "2.112.0-develop.4",
3
+ "version": "2.112.0-develop.7",
4
4
  "description": "CSS and JS and page templates in use by Wickes",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -123,10 +123,6 @@
123
123
  {
124
124
  "name": "develop",
125
125
  "prerelease": true
126
- },
127
- {
128
- "name": "custom-tag/*",
129
- "prerelease": "${name.replace(/^custom-tag\\//g, '')}"
130
126
  }
131
127
  ],
132
128
  "plugins": [
@@ -25,38 +25,10 @@
25
25
  {{name}}
26
26
  </a>
27
27
 
28
- <div class="complete-card__reviews">
29
- <div class="rating-bg">
30
- <i class="fa fa-star star-in" aria-hidden="true"></i>
31
- <i class="fa fa-star star-in" aria-hidden="true"></i>
32
- <i class="fa fa-star star-in" aria-hidden="true"></i>
33
- <i class="fa fa-star star-in" aria-hidden="true"></i>
34
- <i class="fa fa-star star-in" aria-hidden="true"></i>
35
-
36
- <div class="rating-overlay"
37
- data-rating="{{#if externalAverageRating}}{{externalAverageRating}}{{else}}0{{/if}}">
38
- <span class="star-overlay">
39
- <i class="fa fa-star" aria-hidden="true"></i>
40
- </span>
41
- <span class="star-overlay">
42
- <i class="fa fa-star" aria-hidden="true"></i>
43
- </span>
44
- <span class="star-overlay">
45
- <i class="fa fa-star" aria-hidden="true"></i>
46
- </span>
47
- <span class="star-overlay">
48
- <i class="fa fa-star" aria-hidden="true"></i>
49
- </span>
50
- <span class="star-overlay">
51
- <i class="fa fa-star" aria-hidden="true"></i>
52
- </span>
53
- </div>
54
-
55
- <span class="complete-card__reviews-count">
56
- (<span class="complete-card__reviews-count-value">{{externalReviewCount}}</span>)
57
- </span>
58
- </div>
59
- </div>
28
+ {{> reviews-rating
29
+ externalAverageRating=externalAverageRating
30
+ externalReviewCount=externalReviewCount
31
+ }}
60
32
  </div>
61
33
  <div class="complete-card__options">
62
34
  {{#if dropdownOptions.length}}
@@ -0,0 +1,14 @@
1
+ <div class="why-not-add-card why-not-add-card--skeleton ssc">
2
+ <div class="ssc-square why-not-add-card__image"></div>
3
+
4
+ <div class="ssc-line why-not-add-card__skeleton-title"></div>
5
+ <div class="ssc-line why-not-add-card__skeleton-title-short"></div>
6
+
7
+ <div class="ssc-line why-not-add-card__skeleton-reviews"></div>
8
+
9
+ <div class="ssc-line why-not-add-card__skeleton-price"></div>
10
+
11
+ <div class="ssc-line why-not-add-card__skeleton-delivery"></div>
12
+
13
+ <div class="ssc-square why-not-add-card__skeleton-cta"></div>
14
+ </div>
@@ -0,0 +1,73 @@
1
+ <div class="why-not-add-card" data-product-code="{{code}}">
2
+ {{#if image.url}}
3
+ <img
4
+ class="why-not-add-card__image"
5
+ src="{{image.url}}"
6
+ alt="{{image.altText}}"
7
+ >
8
+ {{/if}}
9
+
10
+ <div class="why-not-add-card__content">
11
+ <a href="{{url}}" target="_blank" class="why-not-add-card__title">
12
+ {{name}}
13
+ </a>
14
+
15
+ {{> reviews-rating
16
+ externalAverageRating=externalAverageRating
17
+ externalReviewCount=externalReviewCount
18
+ }}
19
+
20
+ <div class="why-not-add-card__bottom">
21
+ <div class="why-not-add-card__price-wrap">
22
+ <div class="why-not-add-card__price {{#if wasPriceFormatted}}why-not-add-card__price--sale{{/if}}">
23
+ {{#if wasPriceFormatted}}
24
+ <span class="why-not-add-card__was-price">
25
+ {{#if switch-vat}}
26
+ <span class="including-vat-inherit">{{incVatWasPriceFormatted}}</span>
27
+ <span class="excluding-vat-inherit">{{excVatWasPriceFormatted}}</span>
28
+ {{else}}
29
+ {{wasPriceFormatted}}
30
+ {{/if}}
31
+ </span>
32
+
33
+ <span class="why-not-add-card__sale-price">
34
+ {{#if switch-vat}}
35
+ <span class="including-vat-inherit">{{incVatFormattedValue}}</span>
36
+ <span class="excluding-vat-inherit">{{excVatFormattedValue}}</span>
37
+ {{else}}
38
+ {{price.formattedValue}}
39
+ {{/if}}
40
+ </span>
41
+ {{else}}
42
+ <span class="why-not-add-card__regular-price">
43
+ {{#if switch-vat}}
44
+ <span class="including-vat-inherit">{{incVatFormattedValue}}</span>
45
+ <span class="excluding-vat-inherit">{{excVatFormattedValue}}</span>
46
+ {{else}}
47
+ {{price.formattedValue}}
48
+ {{/if}}
49
+ </span>
50
+ {{/if}}
51
+ </div>
52
+
53
+ {{#if switch-vat}}
54
+ <div class="why-not-add-card__vat-label">
55
+ <span class="including-vat-inherit">Inc.VAT</span>
56
+ <span class="excluding-vat-inherit">Exc.VAT</span>
57
+ </div>
58
+ {{/if}}
59
+
60
+ <div class="why-not-add-card__delivery">Excluding delivery</div>
61
+ </div>
62
+
63
+ {{> button
64
+ type="button"
65
+ action=true
66
+ icon="fas fa-shopping-basket"
67
+ showLoader=true
68
+ loaderModifier="why-not-add-card__loader"
69
+ modification="why-not-add-card__cta"
70
+ }}
71
+ </div>
72
+ </div>
73
+ </div>
@@ -0,0 +1,41 @@
1
+ <div class="why-not-add {{#if isSingleProduct}}why-not-add--single{{/if}}" data-why-not-add>
2
+ <div class="why-not-add__header">
3
+ <h3 class="why-not-add__title">Why not add</h3>
4
+
5
+ {{#unless isSingleProduct}}
6
+ <div class="why-not-add__arrows">
7
+ <button
8
+ class="why-not-add__arrow why-not-add__arrow-prev"
9
+ type="button"
10
+ aria-label="Previous slide"
11
+ data-why-not-add-prev
12
+ >
13
+ <i class="fas fa-chevron-left"></i>
14
+ </button>
15
+
16
+ <button
17
+ class="why-not-add__arrow why-not-add__arrow-next"
18
+ type="button"
19
+ aria-label="Next slide"
20
+ data-why-not-add-next
21
+ >
22
+ <i class="fas fa-chevron-right"></i>
23
+ </button>
24
+ </div>
25
+ {{/unless}}
26
+ </div>
27
+
28
+ <div class="swiper-container why-not-add__slider" data-why-not-add-slider>
29
+ <div class="swiper-wrapper">
30
+ {{#each products}}
31
+ <div class="swiper-slide why-not-add__slide">
32
+ {{> bloomreach/why-not-add-card this}}
33
+ </div>
34
+ {{/each}}
35
+ </div>
36
+ </div>
37
+
38
+ {{#unless isSingleProduct}}
39
+ <div class="why-not-add__pagination" data-why-not-add-pagination></div>
40
+ {{/unless}}
41
+ </div>
@@ -0,0 +1,9 @@
1
+ <div class="why-not-add why-not-add--skeleton ssc">
2
+ <div class="why-not-add__header">
3
+ <div class="ssc-line why-not-add__skeleton-title"></div>
4
+ </div>
5
+
6
+ <div class="why-not-add__skeleton-cards">
7
+ {{> bloomreach/why-not-add-card-skeleton}}
8
+ </div>
9
+ </div>
@@ -0,0 +1,6 @@
1
+ <div
2
+ data-why-not-add-widget
3
+ data-mock-key="{{context}}"
4
+ >
5
+ {{> bloomreach/why-not-add-skeleton}}
6
+ </div>
@@ -2,7 +2,12 @@
2
2
  <div class="order__header">
3
3
  <h3 class="order__title">{{title}}</h3>
4
4
  <div class="order__subtotal-wrap">
5
- <p class="order__subtotal">Item(s) subtotal: <b>{{subtotal}}</b></p>
5
+ {{#if switchVat}}
6
+ <p class="order__subtotal including-vat">Item(s) subtotal: <b>{{subtotal}}</b></p>
7
+ <p class="order__subtotal excluding-vat d-none">Item(s) subtotal: <b>{{subtotalExcVat}}</b></p>
8
+ {{else}}
9
+ <p class="order__subtotal">Item(s) subtotal: <b>{{subtotal}}</b></p>
10
+ {{/if}}
6
11
  {{> info-icon
7
12
  modification="icon-info"
8
13
  title=subtotalTooltip
@@ -91,20 +91,20 @@
91
91
  <div class="order-item__price">
92
92
  <div class="order-item__price-title">Item price:</div>
93
93
  <div class="order-item__price-value">
94
- {{#ifvalue price value='0'}}
94
+ {{#ifvalue displayBasePrice value='0'}}
95
95
  <span class="order-item__value">FREE</span>
96
96
  {{else}}
97
97
  {{#if switch-vat}}
98
98
  <div class="including-vat">
99
- <span class="order-item__value">£{{price}}</span>
99
+ <span class="order-item__value">£{{displayBasePrice}}</span>
100
100
  <div class="price-vat">Inc.VAT</div>
101
101
  </div>
102
102
  <div class="excluding-vat d-none">
103
- <span class="order-item__value">£{{priceExcVat}}</span>
103
+ <span class="order-item__value">£{{displayBasePriceExclusiveVat}}</span>
104
104
  <div class="price-vat">Exc.VAT</div>
105
105
  </div>
106
106
  {{else}}
107
- <span class="order-item__value">£{{price}}</span>
107
+ <span class="order-item__value">£{{displayBasePrice}}</span>
108
108
  {{/if}}
109
109
  {{/ifvalue}}
110
110
  </div>
@@ -136,15 +136,15 @@
136
136
  {{else}}
137
137
  {{#if switch-vat}}
138
138
  <div class="including-vat">
139
- <span class="order-item__value">£{{total}}</span>
139
+ <span class="order-item__value">£{{displayItemTotalWithoutDiscount}}</span>
140
140
  <div class="price-vat">Inc.VAT</div>
141
141
  </div>
142
142
  <div class="excluding-vat d-none">
143
- <span class="order-item__value">£{{totalExcVat}}</span>
143
+ <span class="order-item__value">£{{displayItemTotalWithoutDiscountExclusiveVat}}</span>
144
144
  <div class="price-vat">Exc.VAT</div>
145
145
  </div>
146
146
  {{else}}
147
- <span class="order-item__value">£{{total}}</span>
147
+ <span class="order-item__value">£{{displayItemTotalWithoutDiscount}}</span>
148
148
  {{/if}}
149
149
  {{/ifvalue}}
150
150
  </div>
@@ -1,7 +1,7 @@
1
1
  {{#if c-and-c}}
2
2
  <div class="{{#if tile-measurement}}ti__total{{else}}pdp-price{{/if}}__control-holder">
3
- <button class="btn btn-primary btn_full" data-toggle="modal" data-target="#modal-click-and-collect">
4
- <span class="btn__text">FREE Click & Collect within 30 minutes</span>
3
+ <button class="btn btn-action btn_full" data-toggle="modal" data-target="#modal-click-and-collect">
4
+ <span class="btn__text">Click & Collect</span>
5
5
  </button>
6
6
  </div>
7
7
  {{/if}}
@@ -2,16 +2,16 @@
2
2
  <div class="p-promotion__icon">
3
3
  <i class="icon fas fa-gift"></i>
4
4
  </div>
5
- {{#ifCond switch-vat '&&' descriptionExcVat}}
5
+ {{#ifCond switch-vat '&&' displayDescriptionExclusiveVat}}
6
6
  <div class="p-promotion__description including-vat">
7
- {{description}}
7
+ {{displayDescription}}
8
8
  </div>
9
9
  <div class="p-promotion__description excluding-vat d-none">
10
- {{descriptionExcVat}}
10
+ {{displayDescriptionExclusiveVat}}
11
11
  </div>
12
12
  {{else}}
13
13
  <div class="p-promotion__description">
14
- {{description}}
14
+ {{displayDescription}}
15
15
  </div>
16
16
  {{/ifCond}}
17
17
  <div class="p-promotion__close">
@@ -0,0 +1,12 @@
1
+ <div class="pdp__badges-wrapper">
2
+ <div class="pdp__badges pdp-price-container__badges price__badges-v2 price__badges-v2-{{badge-color}}
3
+ {{#if badge-text-color}}price__badges-v2-text-{{badge-text-color}}{{/if}}
4
+ {{#if badge-wide}}price__badges-v2-wide{{/if}}">
5
+ {{#ifCond switch-vat '&&' badge-text-exc}}
6
+ <div class="pdp__badge including-vat">{{badge-text}}</div>
7
+ <div class="pdp__badge excluding-vat d-none">{{badge-text-exc}}</div>
8
+ {{else}}
9
+ <div class="pdp__badge">{{badge-text}}</div>
10
+ {{/ifCond}}
11
+ </div>
12
+ </div>
@@ -1,17 +1,8 @@
1
1
  <div class="pdp-price-container">
2
- {{#if isDiscount}}
3
- <div class="pdp__badges pdp-price-container__badges price__badges-v2 price__badges-v2-{{badge-color}}
4
- {{#if badge-text-color}}price__badges-v2-text-{{badge-text-color}}{{/if}}
5
- {{#if badge-wide}}price__badges-v2-wide{{/if}}">
6
- {{#ifCond switch-vat '&&' badge-text-exc}}
7
- <div class="pdp__badge including-vat">{{badge-text}}</div>
8
- <div class="pdp__badge excluding-vat d-none">{{badge-text-exc}}</div>
9
- {{else}}
10
- <div class="pdp__badge">{{badge-text}}</div>
11
- {{/ifCond}}
12
- </div>
13
- {{/if}}
14
2
  <div class="pdp-price">
3
+ {{#if isDiscount}}
4
+ {{> price-badges}}
5
+ {{/if}}
15
6
  <div class="pdp-price__value">
16
7
  {{#if switch-vat}}
17
8
  <div class="pdp-price-sale__value including-vat">
@@ -196,6 +187,8 @@
196
187
  </div>
197
188
  {{/if}}
198
189
 
190
+ {{> bloomreach/why-not-add context=mockDataKey}}
191
+
199
192
  {{#if mfeProductCalculator}}
200
193
  <div class="pdp-price__quantity-calculator">MFE Calculator Placeholder</div>
201
194
  {{/if}}
@@ -0,0 +1,22 @@
1
+ <div class="reviews">
2
+ <div class="rating-bg">
3
+ <i class="fa fa-star star-in" aria-hidden="true"></i>
4
+ <i class="fa fa-star star-in" aria-hidden="true"></i>
5
+ <i class="fa fa-star star-in" aria-hidden="true"></i>
6
+ <i class="fa fa-star star-in" aria-hidden="true"></i>
7
+ <i class="fa fa-star star-in" aria-hidden="true"></i>
8
+
9
+ <div
10
+ class="rating-overlay"
11
+ data-rating="{{#if externalAverageRating}}{{externalAverageRating}}{{else}}0{{/if}}"
12
+ >
13
+ <span class="star-overlay"><i class="fa fa-star" aria-hidden="true"></i></span>
14
+ <span class="star-overlay"><i class="fa fa-star" aria-hidden="true"></i></span>
15
+ <span class="star-overlay"><i class="fa fa-star" aria-hidden="true"></i></span>
16
+ <span class="star-overlay"><i class="fa fa-star" aria-hidden="true"></i></span>
17
+ <span class="star-overlay"><i class="fa fa-star" aria-hidden="true"></i></span>
18
+ </div>
19
+
20
+ <span class="{{#if countClass}}{{countClass}}{{else}}reviews-count{{/if}}">(<span class="{{#if countValueClass}}{{countValueClass}}{{else}}reviews-count-value{{/if}}">{{#if externalReviewCount}}{{externalReviewCount}}{{else}}0{{/if}}</span>)</span>
21
+ </div>
22
+ </div>
@@ -18,10 +18,10 @@
18
18
 
19
19
  <form class="share-list__form" action="#" id="share-list-form">
20
20
 
21
- {{> form-row type="email" id="share-via-email" label="Share via email" info="Enter email addresses separated by space:"}}
21
+ {{> form-row type="text" id="share-via-email" label="Share via email" info="Enter email addresses separated by space:"}}
22
22
 
23
23
  <div class="share-via-email-box">
24
- {{> form-row type="email"}}
24
+ {{> form-row type="text"}}
25
25
  </div>
26
26
 
27
27
  <span id="add-btn" class="add-email-btn">
@@ -18,10 +18,10 @@
18
18
 
19
19
  <form class="share-list__form" action="#" id="share-list-form">
20
20
 
21
- {{> form-row type="email" id="share-via-email" label="Share via email" info="Enter email addresses separated by space:"}}
21
+ {{> form-row type="text" id="share-via-email" label="Share via email" info="Enter email addresses separated by space:"}}
22
22
 
23
23
  <div class="share-via-email-box">
24
- {{> form-row type="email"}}
24
+ {{> form-row type="text"}}
25
25
  </div>
26
26
 
27
27
  <span id="add-btn" class="add-email-btn">
@@ -89,6 +89,10 @@
89
89
  })
90
90
 
91
91
  $(".share-list__cancel").bind("click", function() {
92
- $("input[type=email]").val("");
92
+ $(".js-share-email").val("");
93
+
94
+ if (window.Wick && Wick.ShoppingList && typeof Wick.ShoppingList.resetFormErrors === "function") {
95
+ Wick.ShoppingList.resetFormErrors();
96
+ }
93
97
  });
94
98
  </script>