wickes-css2 2.105.0-develop.7 → 2.105.0-develop.8

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 (211) hide show
  1. package/Readme.md +2 -2
  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/pages/my-account-v2.css +1 -1
  9. package/build/css/pages/page_discount.css +1 -1
  10. package/build/css/pages/page_product_search.css +1 -1
  11. package/build/css/pages/page_products-list-combined.css +1 -1
  12. package/build/css/pages/page_products-list.css +1 -1
  13. package/build/css/pages/tradePro-rewards.css +1 -1
  14. package/build/css/pdp-main-before-combine.css +1 -1
  15. package/build/css/pdp-main-non-critical.css +1 -1
  16. package/build/css/pdp-main.css +1 -1
  17. package/build/css/plp-main.css +1 -1
  18. package/build/css/store-locator-main.css +1 -1
  19. package/build/js/basket.min.js +2 -2
  20. package/build/js/bundle.min.js +1 -1
  21. package/build/js/checkout.min.js +2 -2
  22. package/build/js/emulation.min.js +10255 -10784
  23. package/build/js/general.bundle.min.js +1 -1
  24. package/build/js/kitchen/kitchen-plp.min.js +9 -1
  25. package/build/js/merged-checkout.min.js +2 -2
  26. package/build/js/mini-basket-slider.min.js +1 -1
  27. package/build/js/my-account.min.js +1 -1
  28. package/build/js/page/accordion.js +35 -0
  29. package/build/js/page/basket/basket-update-cart-action.js +56 -59
  30. package/build/js/page/basket/basket-update-cart.js +27 -27
  31. package/build/js/page/basket/basket-utils.js +33 -40
  32. package/build/js/page/basket/mini-basket-total.js +66 -70
  33. package/build/js/page/basket/quantity-change-handler.js +55 -73
  34. package/build/js/page/basket/update-quantity-operation.js +30 -39
  35. package/build/js/page/basket/update-quantity.js +62 -62
  36. package/build/js/page/basket-v2.js +229 -362
  37. package/build/js/page/billie-business-type.js +27 -27
  38. package/build/js/page/checkout-payment-details.js +299 -301
  39. package/build/js/page/components/discounts.js +36 -39
  40. package/build/js/page/components/mini-basket-slider.js +545 -604
  41. package/build/js/page/kitchen/plp-filters-chips.js +90 -0
  42. package/build/js/page/kitchen/plp-filters-mobile.js +72 -0
  43. package/build/js/page/kitchen/plp-filters-panel.js +119 -0
  44. package/build/js/page/kitchen/plp-filters-utils.js +65 -0
  45. package/build/js/page/kitchen/plp-filters.js +205 -0
  46. package/build/js/page/kitchen/sort-by.js +157 -0
  47. package/build/js/page/klarna-modal-scroll-disable.js +4 -4
  48. package/build/js/page/my-account.js +14 -29
  49. package/build/js/page/online-exclusive.js +30 -28
  50. package/build/js/page/tradePro-rewards.js +39 -69
  51. package/build/js/page/utils/copy-to-clipboard.js +47 -79
  52. package/build/js/page/utils/helpers.js +9 -14
  53. package/build/js/pdp.bundle.min.js +1 -1
  54. package/build/js/plp.bundle.min.js +1 -1
  55. package/build/js/project-list.min.js +85 -143
  56. package/build/js/tradePro-rewards.min.js +1 -1
  57. package/package.json +3 -3
  58. package/src/components/.DS_Store +0 -0
  59. package/src/components/accordion.hbs +2 -2
  60. package/src/components/kitchen/dropdown.hbs +3 -6
  61. package/src/components/kitchen/filter-modal.hbs +13 -10
  62. package/src/components/kitchen/plp-filters.hbs +1 -3
  63. package/src/components/kitchen/sort-by.hbs +1 -1
  64. package/src/components/my-account/barcode.hbs +1 -3
  65. package/src/components/my-account/cards-swap.hbs +10 -0
  66. package/src/components/my-account/clipboard-code-card.hbs +3 -3
  67. package/src/components/my-account/discount.hbs +1 -1
  68. package/src/components/my-account/greetings.hbs +1 -1
  69. package/src/components/search-filter.hbs +112 -121
  70. package/src/data/data_plp_load-more.json +1 -1
  71. package/src/data/my-account/data_my-account.json +9 -0
  72. package/src/js/components/cards-swap.js +72 -0
  73. package/src/js/components/general/accordion.js +33 -44
  74. package/src/js/components/general/cart-slider.js +16 -19
  75. package/src/js/components/general/create-popup-slider.js +173 -168
  76. package/src/js/components/general/search-filter.js +21 -0
  77. package/src/js/components/share-project-list.js +53 -0
  78. package/src/js/emulation/big-wins.js +904 -1081
  79. package/src/js/emulation/billie-modal.js +19 -23
  80. package/src/js/emulation/checkout-payment-details.js +38 -47
  81. package/src/js/emulation/custom-slider-emulation.js +13 -17
  82. package/src/js/emulation/forms.js +323 -360
  83. package/src/js/emulation/mini-basket-data.js +923 -1051
  84. package/src/js/emulation/paymentLoader.js +17 -17
  85. package/src/js/emulation/pdf-file-loader.js +91 -89
  86. package/src/js/emulation/popover-mini-basket.js +239 -246
  87. package/src/js/emulation/project-list-pdp.js +316 -320
  88. package/src/js/emulation/repayment-toggle.js +24 -23
  89. package/src/js/emulation/selectable.js +18 -22
  90. package/src/js/emulation/wismo-details.js +31 -23
  91. package/src/js/page/accordion.js +35 -0
  92. package/src/js/page/basket/basket-update-cart-action.js +56 -59
  93. package/src/js/page/basket/basket-update-cart.js +27 -27
  94. package/src/js/page/basket/basket-utils.js +33 -40
  95. package/src/js/page/basket/mini-basket-total.js +66 -70
  96. package/src/js/page/basket/quantity-change-handler.js +55 -73
  97. package/src/js/page/basket/update-quantity-operation.js +30 -39
  98. package/src/js/page/basket/update-quantity.js +62 -62
  99. package/src/js/page/basket-v2.js +229 -362
  100. package/src/js/page/billie-business-type.js +27 -27
  101. package/src/js/page/checkout-payment-details.js +299 -301
  102. package/src/js/page/components/discounts.js +36 -39
  103. package/src/js/page/components/mini-basket-slider.js +545 -604
  104. package/src/js/page/kitchen/plp-filters-chips.js +90 -0
  105. package/src/js/page/kitchen/plp-filters-mobile.js +72 -0
  106. package/src/js/page/kitchen/plp-filters-panel.js +119 -0
  107. package/src/js/page/kitchen/plp-filters-utils.js +65 -0
  108. package/src/js/page/kitchen/plp-filters.js +205 -0
  109. package/src/js/page/kitchen/sort-by.js +157 -0
  110. package/src/js/page/klarna-modal-scroll-disable.js +4 -4
  111. package/src/js/page/my-account.js +14 -29
  112. package/src/js/page/online-exclusive.js +30 -28
  113. package/src/js/page/tradePro-rewards.js +39 -69
  114. package/src/js/page/utils/copy-to-clipboard.js +47 -79
  115. package/src/js/page/utils/helpers.js +9 -14
  116. package/src/page_empty-shared-project-list-bicester-hub.html +0 -4
  117. package/src/page_empty-shopping-list_guest.html +0 -1
  118. package/src/page_kitchen-plp.html +2 -2
  119. package/src/page_my-account-installer.html +1 -1
  120. package/src/page_my-account-trade-pro-carousel-double.html +127 -0
  121. package/src/page_my-account-trade-pro-carousel.html +134 -0
  122. package/src/page_my-account-trade-pro.html +1 -1
  123. package/src/page_my-shopping-list-add-notes.html +0 -1
  124. package/src/page_my-shopping-list-energy.html +0 -1
  125. package/src/page_my-shopping-list-hide-download.html +1 -2
  126. package/src/page_my-shopping-list-pdf.html +0 -2
  127. package/src/page_my-shopping-list-saved-ref.html +0 -1
  128. package/src/page_my-shopping-list-wisdom-oos-registered.html +0 -1
  129. package/src/page_my-shopping-list-wisdom-oos.html +0 -1
  130. package/src/page_my-shopping-list-wisdom-partial-registered.html +0 -1
  131. package/src/page_my-shopping-list-wisdom-registered.html +0 -1
  132. package/src/page_my-shopping-list-wisdom.html +0 -1
  133. package/src/page_my-shopping-list.html +0 -1
  134. package/src/page_my-shopping-list_not-register.html +0 -3
  135. package/src/page_plp-with-paint.html +7 -2
  136. package/src/page_plp.html +7 -2
  137. package/src/page_plp_v2-energy-efficiency.html +6 -1
  138. package/src/page_plp_v2-favourite-products.html +7 -6
  139. package/src/page_plp_v2-vat.html +7 -2
  140. package/src/page_plp_v2.html +9 -22
  141. package/src/page_product_search-vat.html +7 -2
  142. package/src/page_product_search.html +7 -2
  143. package/src/page_project-list-generate-project-list-ID.html +0 -3
  144. package/src/page_project-list-vat.html +0 -4
  145. package/src/page_project-list-with-new-share-popup-android.html +1 -3
  146. package/src/page_project-list-with-new-share-popup-ios.html +1 -3
  147. package/src/page_project-list-with-new-share-popup.html +1 -2
  148. package/src/page_search-results.html +7 -2
  149. package/src/page_shared-project-list-bicester-hub.html +1 -3
  150. package/src/page_tradepro-discount-app.html +1 -1
  151. package/src/page_tradepro-discount-double.html +109 -0
  152. package/src/page_tradepro-discount.html +36 -2
  153. package/src/scss/common/_common.scss +4 -5
  154. package/src/scss/components/_accordion.scss +3 -1
  155. package/src/scss/components/_custom-slider.scss +14 -15
  156. package/src/scss/components/_date-selection-add-new-styles.scss +7 -6
  157. package/src/scss/components/_date-selection.scss +1 -1
  158. package/src/scss/components/_popover-mini-basket.scss +3 -3
  159. package/src/scss/components/_search-filter.scss +15 -95
  160. package/src/scss/components/checkout-chip.scss +2 -2
  161. package/src/scss/components/checkout-payment-repayment-terms.scss +1 -1
  162. package/src/scss/components/{_filter-modal.scss → kitchen/_filter-modal.scss} +4 -55
  163. package/src/scss/components/{_plp-filters.scss → kitchen/_plp-filters.scss} +13 -31
  164. package/src/scss/components/my-account/_barcode.scss +8 -0
  165. package/src/scss/components/my-account/_cards-swap.scss +58 -0
  166. package/src/scss/components/my-account/_clipboard-code.scss +8 -0
  167. package/src/scss/components/my-account/_discount.scss +10 -0
  168. package/src/scss/globals/_global-components.scss +0 -3
  169. package/src/scss/helpers/_colors-semantic.scss +68 -68
  170. package/src/scss/helpers/_variables.scss +196 -242
  171. package/src/scss/kitchen-plp-main.scss +3 -0
  172. package/src/scss/main.scss +65 -65
  173. package/src/scss/pages/my-account-v2.scss +37 -0
  174. package/src/scss/pages/page_discount.scss +8 -4
  175. package/src/scss/pages/page_product-details-v2.scss +4 -1
  176. package/src/scss/pages/page_product_search.scss +1 -9
  177. package/src/scss/pages/page_products-list-combined.scss +24 -28
  178. package/src/scss/pages/page_products-list.scss +0 -8
  179. package/src/scss/pages/tradePro-rewards.scss +4 -3
  180. package/src/sitemap.html +3 -0
  181. package/build/js/page/filters/desktop-nav.js +0 -64
  182. package/build/js/page/filters/mobile-nav.js +0 -93
  183. package/build/js/page/filters/plp-filters-chips.js +0 -92
  184. package/build/js/page/filters/plp-filters-mobile.js +0 -150
  185. package/build/js/page/filters/plp-filters-panel.js +0 -123
  186. package/build/js/page/filters/plp-filters-utils.js +0 -66
  187. package/build/js/page/filters/plp-filters.js +0 -256
  188. package/build/js/page/filters/sort-by.js +0 -172
  189. package/build/js/page/search-filter.js +0 -62
  190. package/build/js/page/share-project-list.js +0 -57
  191. package/build/js/page/utils/show-more-less.js +0 -273
  192. package/build/js/plp-filters.min.js +0 -9
  193. package/build/js/search-filter.min.js +0 -1
  194. package/src/components/kitchen/filter-modal-content-kitchen.hbs +0 -10
  195. package/src/components/search-filter-modal-content.hbs +0 -102
  196. package/src/elements/btn.hbs +0 -7
  197. package/src/js/emulation/filters-emulation.js +0 -164
  198. package/src/js/emulation/product-counter.js +0 -50
  199. package/src/js/emulation/reset-filter-desktop.js +0 -5
  200. package/src/js/page/filters/desktop-nav.js +0 -64
  201. package/src/js/page/filters/mobile-nav.js +0 -93
  202. package/src/js/page/filters/plp-filters-chips.js +0 -92
  203. package/src/js/page/filters/plp-filters-mobile.js +0 -150
  204. package/src/js/page/filters/plp-filters-panel.js +0 -123
  205. package/src/js/page/filters/plp-filters-utils.js +0 -66
  206. package/src/js/page/filters/plp-filters.js +0 -256
  207. package/src/js/page/filters/sort-by.js +0 -172
  208. package/src/js/page/search-filter.js +0 -62
  209. package/src/js/page/share-project-list.js +0 -57
  210. package/src/js/page/utils/show-more-less.js +0 -273
  211. package/src/scss/components/_sort-by.scss +0 -190
@@ -1,34 +1,35 @@
1
1
  var Wick = Wick || {};
2
2
 
3
3
  Wick.RepaymentToggle = (function () {
4
- const SELECTORS = {
5
- repaymentRadio: 'input[name="repaymentTerms"]',
6
- term: '.billie-info .term',
7
- paymentMethod: '[name="payment-method"]',
8
- };
4
+ const SELECTORS = {
5
+ repaymentRadio: 'input[name="repaymentTerms"]',
6
+ term: '.billie-info .term',
7
+ paymentMethod: '[name="payment-method"]'
8
+ };
9
9
 
10
- function updateTerm(value) {
11
- const $term = $(SELECTORS.term);
12
- if (!$term.length) return;
10
+ function updateTerm(value) {
11
+ const $term = $(SELECTORS.term);
12
+ if (!$term.length) return;
13
13
 
14
- $term.text(value);
15
- }
14
+ $term.text(value);
15
+ }
16
16
 
17
- function bindEvents() {
18
- $(document).on('change', SELECTORS.repaymentRadio, function () {
19
- const value = $(this).val();
20
- if (!value) return;
17
+ function bindEvents () {
18
+ $(document).on('change', SELECTORS.repaymentRadio, function () {
19
+ const value = $(this).val();
20
+ if (!value) return;
21
21
 
22
- updateTerm(value);
22
+ updateTerm(value);
23
23
 
24
- const currentMethod = $(SELECTORS.paymentMethod + ':checked').val();
25
- if (currentMethod !== 'billie') return;
24
+ const currentMethod = $(SELECTORS.paymentMethod + ':checked').val();
25
+ if (currentMethod !== 'billie') return;
26
26
 
27
- if (typeof Wick.showPaymentLoader === 'function') {
28
- Wick.showPaymentLoader('billie');
29
- }
30
- });
31
- }
27
+ if (typeof Wick.showPaymentLoader === 'function') {
28
+ Wick.showPaymentLoader('billie');
29
+ }
32
30
 
33
- bindEvents();
31
+ });
32
+ }
33
+
34
+ bindEvents();
34
35
  })();
@@ -1,30 +1,26 @@
1
1
  var Wick = Wick || {};
2
- Wick.Selectable = (function () {
3
- var $selectable = $('.js-selectable'),
4
- selected = 'js-selectable_selected';
2
+ Wick.Selectable = (function(){
3
+ $selectable = $('.js-selectable'),
4
+ selected = 'js-selectable_selected';
5
5
 
6
- function bindEvents() {
7
- if ($selectable) {
8
- $selectable.on('click', function (e) {
9
- var $action = $(e.target).closest('a, button, input, .rbn');
6
+ function bindEvents() {
7
+ $selectable.on('click', function(e){
8
+ var $action = $(e.target).closest('a, button, input, .rbn');
10
9
 
11
- if ($action.length || $(this).hasClass(selected)) {
12
- return;
13
- }
10
+ if ($action.length || $(this).hasClass(selected)){
11
+ return;
12
+ }
14
13
 
15
- $selectable.removeClass(selected);
16
- $(this).addClass(selected);
14
+ $selectable.removeClass(selected);
15
+ $(this).addClass(selected);
17
16
 
18
- $('.user-address__wrapper .btn-delivery-details').insertAfter(
19
- '.js-selectable_selected'
20
- );
21
- });
22
- }
23
- }
17
+ $('.user-address__wrapper .btn-delivery-details').insertAfter('.js-selectable_selected');
18
+ });
19
+ }
24
20
 
25
- if (!$selectable.length) {
26
- return;
27
- }
21
+ if (!$selectable.length){
22
+ return;
23
+ }
28
24
 
29
- bindEvents();
25
+ bindEvents();
30
26
  })();
@@ -1,30 +1,38 @@
1
- var Wick = (window.Wick = window.Wick || {});
1
+ var Wick = Wick || {};
2
2
 
3
3
  Wick.Wismo = (function () {
4
4
  Wick.SnackBar.init();
5
5
  var $buyBtn = $('.wismo-order__action').find('.btn');
6
6
 
7
7
  $buyBtn.on('click', function () {
8
- Wick.SnackBar.show({
9
- text: 'Notification success message for Delivery with Autoclose',
10
- type: Wick.SnackBar.types.SUCCESS,
11
- withCloseButton: false,
12
- autoClose: true,
13
- delayBeforeClose: 3000,
14
- });
15
- Wick.SnackBar.show({
16
- text: 'Notification warning message for Delivery with Close Btn',
17
- type: Wick.SnackBar.types.WARNING,
18
- withCloseButton: false,
19
- autoClose: true,
20
- delayBeforeClose: 1500,
21
- });
22
- Wick.SnackBar.show({
23
- text: 'Notification error message for Delivery with Close Btn',
24
- type: Wick.SnackBar.types.ERROR,
25
- withCloseButton: false,
26
- autoClose: true,
27
- delayBeforeClose: 1500,
28
- });
29
- });
8
+ Wick.SnackBar.show(
9
+ {
10
+ text: 'Notification success message for Delivery with Autoclose',
11
+ type: Wick.SnackBar.types.SUCCESS,
12
+ withCloseButton: false,
13
+ autoClose: true,
14
+ delayBeforeClose: 3000
15
+ }
16
+ );
17
+ Wick.SnackBar.show(
18
+ {
19
+ text: 'Notification warning message for Delivery with Close Btn',
20
+ type: Wick.SnackBar.types.WARNING,
21
+ withCloseButton: false,
22
+ autoClose: true,
23
+ delayBeforeClose: 1500
24
+ }
25
+ );
26
+ Wick.SnackBar.show(
27
+ {
28
+ text: 'Notification error message for Delivery with Close Btn',
29
+ type: Wick.SnackBar.types.ERROR,
30
+ withCloseButton: false,
31
+ autoClose: true,
32
+ delayBeforeClose: 1500
33
+ }
34
+ );
35
+ })
30
36
  })();
37
+
38
+
@@ -0,0 +1,35 @@
1
+ var Wick = Wick || {};
2
+ Wick.Accordion = (function(){
3
+ var $accordion = $('.accordion'),
4
+ accordionToggler = '.accordion__header',
5
+ accordionIcon = '.accordion__action',
6
+ accordionContent = '.accordion__content',
7
+ collapsed = 'accordion_collapsed',
8
+ $asideAccordion = $('.aside-accordion .js-toggle-aside-accordion');
9
+ var bindEvents = function (index, element) {
10
+ var $acc = $(element);
11
+
12
+ var accordionTrigger = $acc.attr('data-action-element') === 'icon' ? accordionIcon : accordionToggler
13
+ $acc.find(accordionTrigger).on('click', function(){
14
+ $acc.toggleClass(collapsed);
15
+ $acc.children(accordionContent).slideToggle(200);
16
+ });
17
+ };
18
+
19
+ var init = function () {
20
+ $accordion.each(bindEvents);
21
+
22
+ $asideAccordion.click(function() {
23
+ if (window.matchMedia("(min-width: 992px)").matches) {
24
+ if ($(this).text().toLowerCase() != 'useful links') {
25
+ $(this).closest('.aside-nav2__holder')
26
+ .toggleClass('is-active')
27
+ .find('.aside-nav2__list')
28
+ .slideToggle(250);
29
+ }
30
+ }
31
+ });
32
+ }
33
+
34
+ init();
35
+ })();
@@ -1,62 +1,59 @@
1
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(
36
- (entry) => entry.entryNumber === repaintData.cartEntryNumber
37
- )[0];
38
- $(document).trigger('EEUpdateDeliveryMode', repaintData);
39
- }
40
- checkProductArraysFn(response)
41
- ? repaintOrderItemsFn(response, repaintData)
42
- : (() => {
43
- $(elOrderItem).remove();
44
- removeOrderItemFn && removeOrderItemFn(repaintData);
45
- })();
46
- }
47
- charity && addCharityEntryNumberFn && addCharityEntryNumberFn(response);
48
- context && context.length && updatePromotionFn && updatePromotionFn(response, context);
49
- addPotentialPromoFn && addPotentialPromoFn(response);
50
- updateKlarnaPlacementsFn &&
51
- updateKlarnaPlacementsFn(response.totalPrice.formattedPriceWithoutCurrencySymbol);
52
- updateClearpayPlacementsFn && updateClearpayPlacementsFn(response.totalPrice.value);
53
- updateClearpayVisibilityFn && updateClearpayVisibilityFn(response.totalPrice.value);
54
- addClassToSummaryAsideFn && addClassToSummaryAsideFn(response);
55
- getCartEntriesFn && getCartEntriesFn(response);
56
- updateBasketSessionFn && updateBasketSessionFn();
57
- drawEnergyLabelsFn && drawEnergyLabelsFn();
58
- triggerCartUpdate && $(document).trigger('cartUpdate');
59
- extraActions && extraActions(response, repaintData, context, charity, initial);
60
- extraActionsMiniBasket && extraActionsMiniBasket();
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
+ })();
61
44
  }
45
+ charity && addCharityEntryNumberFn && addCharityEntryNumberFn(response);
46
+ context && context.length && updatePromotionFn && updatePromotionFn(response, context);
47
+ addPotentialPromoFn && addPotentialPromoFn(response);
48
+ updateKlarnaPlacementsFn && updateKlarnaPlacementsFn(response.totalPrice.formattedPriceWithoutCurrencySymbol);
49
+ updateClearpayPlacementsFn && updateClearpayPlacementsFn(response.totalPrice.value);
50
+ updateClearpayVisibilityFn && updateClearpayVisibilityFn(response.totalPrice.value);
51
+ addClassToSummaryAsideFn && addClassToSummaryAsideFn(response);
52
+ getCartEntriesFn && getCartEntriesFn(response);
53
+ updateBasketSessionFn && updateBasketSessionFn();
54
+ drawEnergyLabelsFn && drawEnergyLabelsFn();
55
+ triggerCartUpdate && $(document).trigger("cartUpdate");
56
+ extraActions && extraActions(response, repaintData, context, charity, initial);
57
+ extraActionsMiniBasket && extraActionsMiniBasket();
58
+ }
62
59
  }
@@ -1,29 +1,29 @@
1
1
  export function updateCartBase(params) {
2
- const {
3
- isLocalEnv,
4
- apiUrl,
5
- apiType,
6
- hideLoader,
7
- callActionFn,
8
- actionCallback,
9
- initial,
10
- localUpdateFn,
11
- repaintData,
12
- context,
13
- charity,
14
- extraLocalActions = () => {},
15
- extraApiActions = () => {},
16
- } = params;
17
- if (!isLocalEnv) {
18
- const payload = {
19
- url: apiUrl,
20
- type: apiType,
21
- complete: hideLoader,
22
- };
23
- callActionFn(payload, actionCallback, { repaintData, context, charity, initial });
24
- extraApiActions();
25
- } else {
26
- localUpdateFn(initial, repaintData, context, charity, null);
27
- extraLocalActions();
28
- }
2
+ const {
3
+ isLocalEnv,
4
+ apiUrl,
5
+ apiType,
6
+ hideLoader,
7
+ callActionFn,
8
+ actionCallback,
9
+ initial,
10
+ localUpdateFn,
11
+ repaintData,
12
+ context,
13
+ charity,
14
+ extraLocalActions = () => {},
15
+ extraApiActions = () => {},
16
+ } = params;
17
+ if (!isLocalEnv) {
18
+ const payload = {
19
+ url: apiUrl,
20
+ type: apiType,
21
+ complete: hideLoader,
22
+ };
23
+ callActionFn(payload, actionCallback, {repaintData, context, charity, initial});
24
+ extraApiActions();
25
+ } else {
26
+ localUpdateFn(initial, repaintData, context, charity, null);
27
+ extraLocalActions();
28
+ }
29
29
  }
@@ -1,57 +1,50 @@
1
1
  export function isMessageExist(data) {
2
- return data.message && data.statusMessage;
2
+ return data.message && data.statusMessage;
3
3
  }
4
4
 
5
5
  export function getMessageInfo(data) {
6
- return {
7
- message: data.message,
8
- status: data.statusMessage,
9
- };
6
+ return {
7
+ message: data.message,
8
+ status: data.statusMessage,
9
+ }
10
10
  }
11
11
 
12
12
  export function showNotification(data, containerSelector = '.notification-area') {
13
- let notificationType;
14
- switch (data.statusMessage) {
15
- case 'accConfirmedMsgs':
16
- notificationType = 'success';
17
- break;
18
- case 'accWarnMsgs':
19
- notificationType = 'warning';
20
- break;
21
- case 'accErrorMsgs':
22
- notificationType = 'error';
23
- break;
24
- }
13
+ let notificationType;
14
+ switch (data.statusMessage) {
15
+ case 'accConfirmedMsgs':
16
+ notificationType = 'success'
17
+ break;
18
+ case 'accWarnMsgs':
19
+ notificationType = 'warning'
20
+ break;
21
+ case 'accErrorMsgs':
22
+ notificationType = 'error'
23
+ break;
24
+ }
25
25
 
26
- Wick.Notification.show({
27
- text: data.message,
28
- container: containerSelector,
29
- type: notificationType,
30
- closeBtn: true,
31
- });
26
+ Wick.Notification.show({
27
+ text: data.message,
28
+ container: containerSelector,
29
+ type: notificationType,
30
+ closeBtn: true
31
+ });
32
32
  }
33
33
 
34
34
  export function getCartEntries(data) {
35
- return data?.deliveryOrderGroups
36
- .concat(data.pickupOrderGroups)
37
- .map((orderGroup) => orderGroup?.entries)
38
- .flatMap((entries) => entries);
35
+ return data?.deliveryOrderGroups.concat(data.pickupOrderGroups)
36
+ .map(orderGroup => orderGroup?.entries)
37
+ .flatMap(entries => entries);
39
38
  }
40
39
 
41
40
  export function checkProductArrays(cart) {
42
- return cart.pickupUniqueItemsNumber || cart.deliveryUniqueItemsNumber;
41
+ return cart.pickupUniqueItemsNumber || cart.deliveryUniqueItemsNumber;
43
42
  }
44
43
 
45
- export function updatePromotion(
46
- data,
47
- orderItemSelector,
48
- orderItemOffersSelector,
49
- orderItemInfoSelector,
50
- addPromotionsFn
51
- ) {
52
- $(orderItemSelector).each(function () {
53
- let itemNumber = { entryNumber: +$(this).attr('data-id') };
54
- $(this).find(orderItemOffersSelector).remove();
55
- $(this).find(orderItemInfoSelector).append(addPromotionsFn(itemNumber, data));
56
- });
44
+ export function updatePromotion(data, orderItemSelector, orderItemOffersSelector, orderItemInfoSelector, addPromotionsFn) {
45
+ $(orderItemSelector).each(function () {
46
+ let itemNumber = {entryNumber: +$(this).attr('data-id')}
47
+ $(this).find(orderItemOffersSelector).remove()
48
+ $(this).find(orderItemInfoSelector).append(addPromotionsFn(itemNumber, data));
49
+ })
57
50
  }
@@ -1,101 +1,97 @@
1
- import { updateDiscount } from '../components/discounts';
1
+ import {updateDiscount} from "../components/discounts";
2
2
 
3
3
  const osEl = {
4
- $totalSection: $('.mini-basket__total'),
5
- checkoutWidgetDetailsDiscount: '.checkout-widget__details-discount',
6
- checkoutWidgetDetails: '.checkout-widget__details',
7
- delivery: '.checkout-widget__item-delivery',
8
- cc: '.checkout-widget__item-cc',
9
- itemFree: '.checkout-widget__item-free',
10
- itemDeficit: '.checkout-widget__item-deficit',
11
- summaryDelivery: '.checkout-widget__item-delivery',
12
- };
4
+ $totalSection: $('.mini-basket__total'),
5
+ checkoutWidgetDetailsDiscount: '.checkout-widget__details-discount',
6
+ checkoutWidgetDetails: '.checkout-widget__details',
7
+ delivery: '.checkout-widget__item-delivery',
8
+ cc: '.checkout-widget__item-cc',
9
+ itemFree: '.checkout-widget__item-free',
10
+ itemDeficit: '.checkout-widget__item-deficit',
11
+ summaryDelivery: '.checkout-widget__item-delivery',
12
+ }
13
13
 
14
14
  export function updateTotal(data, equalMap, isVoucher) {
15
- equalMap.forEach((obj) => {
16
- if ($(obj.item).length) {
17
- $(obj.item).show();
18
- } else {
19
- if ($(osEl.checkoutWidgetDetailsDiscount).length) {
20
- $(osEl.checkoutWidgetDetailsDiscount).before(createCheckoutWidgetItem(obj));
21
- } else {
22
- $(osEl.checkoutWidgetDetails).append(createCheckoutWidgetItem(obj));
23
- }
24
- }
15
+ equalMap.forEach((obj) => {
16
+ if ($(obj.item).length) {
17
+ $(obj.item).show();
18
+ } else {
19
+ if ($(osEl.checkoutWidgetDetailsDiscount).length) {
20
+ $(osEl.checkoutWidgetDetailsDiscount).before(createCheckoutWidgetItem(obj))
21
+ } else {
22
+ $(osEl.checkoutWidgetDetails).append(createCheckoutWidgetItem(obj))
23
+ }
24
+ }
25
25
 
26
- $(obj.item).find(obj.itemValue).text(obj.dataValue);
27
- if (isVoucher ? obj.dataValue : obj.value && obj.dataValue) {
28
- $(obj.item).find(obj.itemValue).show();
29
- } else {
30
- $(obj.item).hide();
31
- }
32
- });
26
+ $(obj.item).find(obj.itemValue).text(obj.dataValue);
27
+ if (isVoucher ? obj.dataValue : obj.value && obj.dataValue) {
28
+ $(obj.item).find(obj.itemValue).show();
29
+ } else {
30
+ $(obj.item).hide();
31
+ }
32
+ })
33
33
 
34
- updateDiscount(data, isVoucher);
35
- hideUnusedDeliveryTypeCost(data, isVoucher);
36
- calculateFreeDelivery(data);
34
+ updateDiscount(data, isVoucher);
35
+ hideUnusedDeliveryTypeCost(data, isVoucher);
36
+ calculateFreeDelivery(data);
37
37
  }
38
38
 
39
39
  function createCheckoutWidgetItem(obj) {
40
- return `
40
+ return `
41
41
  <li class="checkout-widget__item ${obj.item.substr(1)}">
42
42
  <span>${obj.title}</span>
43
43
  <span class="checkout-widget__item-value">${obj.dataValue}</span>
44
44
  </li>
45
- `;
45
+ `
46
46
  }
47
47
 
48
48
  function hideUnusedDeliveryTypeCost(data, isVoucher) {
49
- $(osEl.delivery).show();
50
- $(osEl.cc).show();
51
- if (isVoucher) {
52
- if (!data.deliveryOrder) {
53
- $(osEl.delivery).hide();
54
- } else if (!data.clickAndCollectOrder) {
55
- $(osEl.cc).hide();
56
- }
57
- } else {
58
- if (data.clickAndCollectOnly) {
59
- $(osEl.delivery).hide();
60
- } else if (data.deliveryItemsQuantity > 0 && data.pickupItemsQuantity === 0) {
61
- $(osEl.cc).hide();
62
- }
49
+ $(osEl.delivery).show()
50
+ $(osEl.cc).show()
51
+ if (isVoucher) {
52
+ if (!data.deliveryOrder) {
53
+ $(osEl.delivery).hide()
54
+ } else if (!data.clickAndCollectOrder) {
55
+ $(osEl.cc).hide()
63
56
  }
57
+ } else {
58
+ if (data.clickAndCollectOnly) {
59
+ $(osEl.delivery).hide()
60
+ } else if (data.deliveryItemsQuantity > 0 && data.pickupItemsQuantity === 0) {
61
+ $(osEl.cc).hide()
62
+ }
63
+ }
64
64
  }
65
65
 
66
66
  function calculateFreeDelivery(data) {
67
- osEl.$totalSection.each(function () {
68
- let $free = $(this).find(osEl.itemFree);
69
- let $deficit = $(this).find(osEl.itemDeficit);
67
+ osEl.$totalSection.each(function () {
68
+ let $free = $(this).find(osEl.itemFree);
69
+ let $deficit = $(this).find(osEl.itemDeficit);
70
70
 
71
- !$free.length || $free.remove();
72
- !$deficit.length || $deficit.remove();
71
+ !$free.length || $free.remove();
72
+ !$deficit.length || $deficit.remove()
73
73
 
74
- if (!data.clickAndCollectOnly) {
75
- if (data.freeDelivery && data.messageForFreeDelivery) {
76
- $(this)
77
- .find(osEl.summaryDelivery)
78
- .before(function () {
79
- return `
74
+ if (!data.clickAndCollectOnly) {
75
+ if (data.freeDelivery && data.messageForFreeDelivery) {
76
+ $(this).find(osEl.summaryDelivery).before(function () {
77
+ return `
80
78
  <div class="checkout-widget__item checkout-widget__item-free">
81
79
  <span class="checkout-widget__text">
82
80
  ${data.messageForFreeDelivery}
83
81
  </span>
84
82
  </div>
85
- `;
86
- });
87
- $(this).find(osEl.summaryDelivery).hide();
88
- } else if (!data.freeDelivery && data.messageForFreeDelivery) {
89
- $(this)
90
- .find(osEl.summaryDelivery)
91
- .before(function () {
92
- return `
83
+ `
84
+ })
85
+ $(this).find(osEl.summaryDelivery).hide();
86
+ } else if (!data.freeDelivery && data.messageForFreeDelivery) {
87
+ $(this).find(osEl.summaryDelivery).before(function () {
88
+ return `
93
89
  <div class="checkout-widget__item checkout-widget__item-deficit">
94
90
  ${data.messageForFreeDelivery}
95
91
  </div>
96
- `;
97
- });
98
- }
99
- }
100
- });
92
+ `
93
+ })
94
+ }
95
+ }
96
+ })
101
97
  }