wickes-css2 2.106.0-develop.4 → 2.106.0-gift-cards.2

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 (123) hide show
  1. package/Readme.md +2 -2
  2. package/build/css/category-main.css +1 -1
  3. package/build/css/components/checkout-payment-details-v2.css +1 -1
  4. package/build/css/components/global-search.css +1 -1
  5. package/build/css/homepage-main.css +1 -1
  6. package/build/css/kitchen-plp-main.css +1 -1
  7. package/build/css/main.css +1 -1
  8. package/build/css/my-account-main-v2.css +1 -1
  9. package/build/css/my-account-main.css +1 -1
  10. package/build/css/pages/page_checkout_delivery-new.css +1 -1
  11. package/build/css/pages/page_products-list-combined.css +1 -1
  12. package/build/css/pdp-main-before-combine.css +1 -1
  13. package/build/css/pdp-main-critical.css +1 -1
  14. package/build/css/pdp-main-non-critical.css +1 -1
  15. package/build/css/pdp-main.css +1 -1
  16. package/build/css/plp-main.css +1 -1
  17. package/build/css/store-locator-main.css +1 -1
  18. package/build/img/billie-pay-later.svg +13 -0
  19. package/build/img/giftcard.svg +28 -0
  20. package/build/js/account-members.min.js +1 -1
  21. package/build/js/add-project-list-id.min.js +1 -1
  22. package/build/js/address-book.min.js +1 -1
  23. package/build/js/basket.min.js +2 -2
  24. package/build/js/bundle.min.js +1 -1
  25. package/build/js/change-password.min.js +1 -1
  26. package/build/js/checkout.min.js +2 -2
  27. package/build/js/emulation.min.js +2126 -1898
  28. package/build/js/general.bundle.min.js +1 -1
  29. package/build/js/gift-cards.min.js +1 -0
  30. package/build/js/merged-checkout.min.js +2 -2
  31. package/build/js/mini-basket-slider.min.js +1 -1
  32. package/build/js/page/basket/basket-update-cart-action.js +4 -1
  33. package/build/js/page/basket/klarna.js +13 -3
  34. package/build/js/page/basket-v2.js +6 -2
  35. package/build/js/page/components/billie-modal.js +20 -20
  36. package/build/js/page/components/gift-cards.js +915 -0
  37. package/build/js/page/components/order-summary.js +42 -25
  38. package/build/js/page/components/toggle-password-visibility.js +22 -0
  39. package/build/js/page/components/voucher.js +52 -47
  40. package/build/js/page/filters/plp-filters.js +2 -2
  41. package/build/js/page/kitchen/colour-swatches.js +152 -152
  42. package/build/js/page/plp-img-v2.js +25 -0
  43. package/build/js/page/quick-filter.js +103 -106
  44. package/build/js/page/utils/gift-cards-utils.js +188 -0
  45. package/build/js/page/utils/input-handling.js +92 -0
  46. package/build/js/page/utils/show-hide-input.js +28 -0
  47. package/build/js/page/utils/validation.js +46 -1
  48. package/build/js/pdp.bundle.min.js +1 -1
  49. package/build/js/personal-details.min.js +1 -1
  50. package/build/js/plp-filters.min.js +1 -1
  51. package/build/js/plp.bundle.min.js +1 -1
  52. package/build/js/project-list.min.js +44 -1
  53. package/build/js/quiz.min.js +1 -1
  54. package/build/js/track-my-order.min.js +1 -1
  55. package/package.json +2 -2
  56. package/src/components/checkout-payment-details-v2.hbs +4 -3
  57. package/src/components/gift-cards-hint.hbs +9 -0
  58. package/src/components/gift-cards.hbs +90 -0
  59. package/src/components/giftcard-chip.hbs +23 -0
  60. package/src/components/giftcard-summary.hbs +6 -0
  61. package/src/components/home-movers/form.hbs +1 -1
  62. package/src/components/price-block-v2.hbs +1 -1
  63. package/src/elements/form-row.hbs +1 -1
  64. package/src/elements/input.hbs +31 -2
  65. package/src/img/billie-pay-later.svg +13 -0
  66. package/src/img/giftcard.svg +28 -0
  67. package/src/js/components/general/notification.js +2 -1
  68. package/src/js/components/pdp-billie-modal-scroll-reset.js +42 -46
  69. package/src/js/emulation/basket-data.js +2126 -2038
  70. package/src/js/emulation/billie-modal.js +6 -6
  71. package/src/js/emulation/checkLocalEnv.js +6 -5
  72. package/src/js/emulation/checkout-data.js +35 -0
  73. package/src/js/emulation/checkout-payment-details.js +28 -26
  74. package/src/js/emulation/forms.js +16 -10
  75. package/src/js/emulation/gift-cards.js +205 -0
  76. package/src/js/emulation/mock.js +21 -88
  77. package/src/js/page/basket/basket-update-cart-action.js +4 -1
  78. package/src/js/page/basket/klarna.js +13 -3
  79. package/src/js/page/basket-v2.js +6 -2
  80. package/src/js/page/components/billie-modal.js +20 -20
  81. package/src/js/page/components/gift-cards.js +915 -0
  82. package/src/js/page/components/order-summary.js +42 -25
  83. package/src/js/page/components/toggle-password-visibility.js +22 -0
  84. package/src/js/page/components/voucher.js +52 -47
  85. package/src/js/page/filters/plp-filters.js +2 -2
  86. package/src/js/page/kitchen/colour-swatches.js +152 -152
  87. package/src/js/page/plp-img-v2.js +25 -0
  88. package/src/js/page/quick-filter.js +103 -106
  89. package/src/js/page/utils/gift-cards-utils.js +188 -0
  90. package/src/js/page/utils/input-handling.js +92 -0
  91. package/src/js/page/utils/show-hide-input.js +28 -0
  92. package/src/js/page/utils/validation.js +46 -1
  93. package/src/layouts/checkout.hbs +1 -5
  94. package/src/page_my-account_change-password.html +1 -0
  95. package/src/page_payment-details-with-gift-card.html +8 -5
  96. package/src/page_plp-with-paint.html +1 -1
  97. package/src/page_plp_v2-energy-efficiency.html +1 -1
  98. package/src/page_plp_v2-favourite-products.html +1 -1
  99. package/src/page_plp_v2-vat.html +1 -1
  100. package/src/page_plp_v2.html +1 -1
  101. package/src/page_product_search-vat.html +1 -1
  102. package/src/page_product_search.html +1 -1
  103. package/src/page_search-results.html +1 -1
  104. package/src/partials/scripts.hbs +0 -1
  105. package/src/scss/components/_custom-slider.scss +6 -7
  106. package/src/scss/components/_gift-cards.scss +360 -0
  107. package/src/scss/components/_quick-filter.scss +10 -32
  108. package/src/scss/components/checkout-payment-details-v2.scss +6 -2
  109. package/src/scss/components/kitchen/_price-tooltip.scss +2 -3
  110. package/src/scss/components/kitchen/_price.scss +2 -2
  111. package/src/scss/helpers/_variables.scss +16 -7
  112. package/src/scss/pages/page_checkout_delivery-new.scss +26 -0
  113. package/src/scss/pages/page_products-list-combined.scss +2 -34
  114. package/src/scss/pdp-main.scss +0 -1
  115. package/build/js/page/count-stepper/pdp-count-stepper.js +0 -29
  116. package/build/js/page/utils/create-count-stepper.js +0 -141
  117. package/build/js/pdp-count-stepper.min.js +0 -1
  118. package/src/elements/count-button.hbs +0 -10
  119. package/src/js/components/toggle-password-visibility.js +0 -58
  120. package/src/js/emulation/validity-emulation.js +0 -33
  121. package/src/js/page/count-stepper/pdp-count-stepper.js +0 -29
  122. package/src/js/page/utils/create-count-stepper.js +0 -141
  123. package/src/scss/components/_input-counter.scss +0 -65
@@ -48,7 +48,10 @@ export function updateCartActionBase(params) {
48
48
  context && context.length && updatePromotionFn && updatePromotionFn(response, context);
49
49
  addPotentialPromoFn && addPotentialPromoFn(response);
50
50
  updateKlarnaPlacementsFn &&
51
- updateKlarnaPlacementsFn(response.totalPrice.formattedPriceWithoutCurrencySymbol);
51
+ updateKlarnaPlacementsFn(
52
+ response.totalPrice.formattedPriceWithoutCurrencySymbol,
53
+ response.paymentInfos.klarnaPaymentInfo.customPaymentMethodIds
54
+ );
52
55
  updateClearpayPlacementsFn && updateClearpayPlacementsFn(response.totalPrice.value);
53
56
  updateClearpayVisibilityFn && updateClearpayVisibilityFn(response.totalPrice.value);
54
57
  addClassToSummaryAsideFn && addClassToSummaryAsideFn(response);
@@ -1,21 +1,31 @@
1
1
  const KLARNA_PLACEMENT = 'klarna-placement';
2
2
  const DATA_PURCHASE_AMOUNT_ATTRIBUTE = 'data-purchase-amount';
3
+ const DATA_CUSTOM_PAYMENT_METHOD_IDS_ATTRIBUTE = 'data-custom-payment-method-ids';
3
4
 
4
5
  function refreshKlarnaPlacement() {
5
6
  window.Klarna?.OnsiteMessaging?.refresh();
6
7
  }
7
8
 
8
- function getKlarnaPlacements () {
9
+ function getKlarnaPlacements() {
9
10
  const klarnaPlacementsWithPurchaseAmountSelector = `${KLARNA_PLACEMENT}[${DATA_PURCHASE_AMOUNT_ATTRIBUTE}]`;
10
11
  return $.find(klarnaPlacementsWithPurchaseAmountSelector);
11
12
  }
12
13
 
13
- export function updateKlarnaPlacements(newAmount) {
14
+ export function updateKlarnaPlacements(newAmount, paymentMethodIds = null) {
14
15
  const formattedAmount = newAmount.split(/[,.]/).join('');
15
16
  const klarnaPlacements = getKlarnaPlacements() || [];
16
17
 
17
18
  klarnaPlacements.forEach((placement) => {
18
- placement.setAttribute(DATA_PURCHASE_AMOUNT_ATTRIBUTE, formattedAmount)
19
+ placement.setAttribute(DATA_PURCHASE_AMOUNT_ATTRIBUTE, formattedAmount);
20
+
21
+ if (Array.isArray(paymentMethodIds) && paymentMethodIds.length > 0) {
22
+ placement.setAttribute(
23
+ DATA_CUSTOM_PAYMENT_METHOD_IDS_ATTRIBUTE,
24
+ paymentMethodIds.join(',')
25
+ );
26
+ } else {
27
+ placement.removeAttribute(DATA_CUSTOM_PAYMENT_METHOD_IDS_ATTRIBUTE);
28
+ }
19
29
  });
20
30
 
21
31
  refreshKlarnaPlacement();
@@ -46,7 +46,9 @@ import { updateCartBase } from './basket/basket-update-cart';
46
46
  import { updateCartActionBase } from './basket/basket-update-cart-action';
47
47
  import { initBillieModal } from './components/billie-modal';
48
48
 
49
- var Wick = window.Wick || {};
49
+ window.Wick = window.Wick || {};
50
+ var Wick = window.Wick;
51
+
50
52
  Wick.BasketPage = {
51
53
  el: {
52
54
  $voucherFormBtn: $('.voucher__btn'),
@@ -323,7 +325,9 @@ Wick.BasketPage = {
323
325
  Wick.BasketPage.updatePromotion(Wick.BasketData.updateCart, context);
324
326
  }
325
327
  updateKlarnaPlacements(
326
- Wick.BasketData.updateCart.totalPrice.formattedPriceWithoutCurrencySymbol
328
+ Wick.BasketData.updateCart.totalPrice.formattedPriceWithoutCurrencySymbol,
329
+ Wick.BasketData.updateCart.paymentInfos.klarnaPaymentInfo
330
+ .customPaymentMethodIds
327
331
  );
328
332
  updateClearpayPlacements(Wick.BasketData.updateCart.totalPrice.value);
329
333
  updateClearpayVisibility(Wick.BasketData.updateCart.totalPrice.value);
@@ -1,31 +1,31 @@
1
1
  const billieEl = {
2
- modalId: '#billieLearnMoreModal',
3
- openLink: '.billie__link[data-target="#billieLearnMoreModal"]',
4
- scrollBody: '.modal-body.modal-box__body',
5
- content: '.modal-content.modal-box__content',
2
+ modalId: '#billieLearnMoreModal',
3
+ openLink: '.billie__link[data-target="#billieLearnMoreModal"]',
4
+ scrollBody: '.modal-body.modal-box__body',
5
+ content: '.modal-content.modal-box__content',
6
6
  };
7
7
 
8
8
  function resetBillieModalScroll($modal) {
9
- const bodyEl = $modal.find(billieEl.scrollBody)[0];
10
- if (bodyEl) bodyEl.scrollTop = 0;
11
- $modal.find(billieEl.content).attr('data-scroll-state', 'top');
9
+ const bodyEl = $modal.find(billieEl.scrollBody)[0];
10
+ if (bodyEl) bodyEl.scrollTop = 0;
11
+ $modal.find(billieEl.content).attr('data-scroll-state', 'top');
12
12
  }
13
13
 
14
14
  export function initBillieModal() {
15
- const $modal = $(billieEl.modalId);
16
- if (!$modal.length) return;
15
+ const $modal = $(billieEl.modalId);
16
+ if (!$modal.length) return;
17
17
 
18
- $(document).on('click', billieEl.openLink, function () {
19
- resetBillieModalScroll($modal);
20
- });
18
+ $(document).on('click', billieEl.openLink, function () {
19
+ resetBillieModalScroll($modal);
20
+ });
21
21
 
22
- $(document).on('shown.bs.modal', billieEl.modalId, function () {
23
- resetBillieModalScroll($modal);
24
- requestAnimationFrame(() => resetBillieModalScroll($modal));
25
- setTimeout(() => resetBillieModalScroll($modal), 30);
26
- });
22
+ $(document).on('shown.bs.modal', billieEl.modalId, function () {
23
+ resetBillieModalScroll($modal);
24
+ requestAnimationFrame(() => resetBillieModalScroll($modal));
25
+ setTimeout(() => resetBillieModalScroll($modal), 30);
26
+ });
27
27
 
28
- $(document).on('hidden.bs.modal', billieEl.modalId, function () {
29
- resetBillieModalScroll($modal);
30
- });
28
+ $(document).on('hidden.bs.modal', billieEl.modalId, function () {
29
+ resetBillieModalScroll($modal);
30
+ });
31
31
  }