wickes-css2 2.103.0-RG-1756-incorrect-payment-method-when-proceed-payment-with-gift-card.2 → 2.103.0-RG-1742-billie-30-60-90-days.1

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 (176) hide show
  1. package/Readme.md +3 -1
  2. package/build/css/components/checkout-payment-details-v2.css +1 -1
  3. package/build/js/account-members.min.js +1 -1
  4. package/build/js/add-project-list-id.min.js +1 -1
  5. package/build/js/address-book.min.js +1 -1
  6. package/build/js/basket.min.js +2 -2
  7. package/build/js/bundle.min.js +1 -1
  8. package/build/js/change-password.min.js +1 -1
  9. package/build/js/checkout.min.js +2 -2
  10. package/build/js/emulation.min.js +35 -273
  11. package/build/js/general.bundle.min.js +1 -1
  12. package/build/js/merged-checkout.min.js +2 -2
  13. package/build/js/page/components/order-summary.js +25 -42
  14. package/build/js/page/utils/validation.js +1 -46
  15. package/build/js/pdp.bundle.min.js +1 -1
  16. package/build/js/personal-details.min.js +1 -1
  17. package/build/js/plp.bundle.min.js +1 -1
  18. package/build/js/project-list.min.js +1 -44
  19. package/build/js/quiz.min.js +1 -1
  20. package/build/js/track-my-order.min.js +1 -1
  21. package/package.json +2 -2
  22. package/src/components/checkout-payment-details-v2.hbs +17 -5
  23. package/src/components/checkout-payment-repayment-terms.hbs +25 -0
  24. package/src/elements/form-row.hbs +1 -1
  25. package/src/elements/input.hbs +2 -31
  26. package/src/js/components/general/notification.js +1 -2
  27. package/src/js/components/toggle-password-visibility.js +58 -0
  28. package/src/js/emulation/checkout-payment-details.js +14 -23
  29. package/src/js/emulation/forms.js +21 -8
  30. package/src/js/page/components/order-summary.js +25 -42
  31. package/src/js/page/utils/validation.js +1 -46
  32. package/src/layouts/checkout.hbs +5 -1
  33. package/src/page_my-account_change-password.html +0 -1
  34. package/src/page_payment-details-with-gift-card.html +5 -8
  35. package/src/scss/components/checkout-payment-details-v2.scss +1 -2
  36. package/src/scss/components/checkout-payment-repayment-terms.scss +103 -0
  37. package/src/scss/pages/page_checkout_delivery-new.scss +0 -26
  38. package/build/css/components/energy-efficiency.css +0 -1
  39. package/build/css/components/global-search.css +0 -1
  40. package/build/css/components/kitchen/strip-stickers.css +0 -1
  41. package/build/css/components/legal-info.css +0 -1
  42. package/build/css/components/loader.css +0 -1
  43. package/build/css/components/long-banner.css +0 -1
  44. package/build/css/components/payment-details-BPS-form.css +0 -1
  45. package/build/css/components/pdf-loader.css +0 -1
  46. package/build/css/components/pdp-favourite-product.css +0 -1
  47. package/build/css/components/plp-favourite-product.css +0 -1
  48. package/build/css/components/price-block-v2-critical.css +0 -1
  49. package/build/css/components/price-block-v2.css +0 -1
  50. package/build/css/components/special-opening-schedule-v2.css +0 -1
  51. package/build/css/components/special-opening-schedule.css +0 -1
  52. package/build/css/components/store-locator-about.css +0 -1
  53. package/build/css/components/store-locator-facilities.css +0 -1
  54. package/build/css/components/store-locator-lookup.css +0 -1
  55. package/build/css/components/store-locator-v2-details.css +0 -1
  56. package/build/css/components/strip-stickers.css +0 -1
  57. package/build/css/components/tile-calculator.css +0 -1
  58. package/build/css/components/trade-pro-extras.css +0 -1
  59. package/build/css/pages/bicester-header.css +0 -1
  60. package/build/css/pages/bicester-project-list.css +0 -1
  61. package/build/css/pages/checkout-new.css +0 -1
  62. package/build/css/pages/checkout.css +0 -1
  63. package/build/css/pages/design-appointment.css +0 -1
  64. package/build/css/pages/home-movers.css +0 -1
  65. package/build/css/pages/iframe-paypage.css +0 -1
  66. package/build/css/pages/my-account-v2.css +0 -1
  67. package/build/css/pages/my-account.css +0 -1
  68. package/build/css/pages/new-usp-bar.css +0 -1
  69. package/build/css/pages/oldweb_header.css +0 -1
  70. package/build/css/pages/page_account-deletion.css +0 -1
  71. package/build/css/pages/page_act-trade-pro.css +0 -1
  72. package/build/css/pages/page_address-book.css +0 -1
  73. package/build/css/pages/page_bathroom-trends.css +0 -1
  74. package/build/css/pages/page_book-consultant-thank-you-new.css +0 -1
  75. package/build/css/pages/page_change-password.css +0 -1
  76. package/build/css/pages/page_checkout-payment-details.css +0 -1
  77. package/build/css/pages/page_checkout_delivery-new.css +0 -1
  78. package/build/css/pages/page_cms_homepage.css +0 -1
  79. package/build/css/pages/page_contact-us.css +0 -1
  80. package/build/css/pages/page_content.css +0 -1
  81. package/build/css/pages/page_coshh.css +0 -1
  82. package/build/css/pages/page_default-store.css +0 -1
  83. package/build/css/pages/page_discount.css +0 -1
  84. package/build/css/pages/page_empty-basket.css +0 -1
  85. package/build/css/pages/page_favourite-list.css +0 -1
  86. package/build/css/pages/page_fdl-management.css +0 -1
  87. package/build/css/pages/page_fdl-product.css +0 -1
  88. package/build/css/pages/page_fi.css +0 -1
  89. package/build/css/pages/page_forgotten-password.css +0 -1
  90. package/build/css/pages/page_half-login.css +0 -1
  91. package/build/css/pages/page_home.css +0 -1
  92. package/build/css/pages/page_hotspot-guttering.css +0 -1
  93. package/build/css/pages/page_in-store-checkout.css +0 -1
  94. package/build/css/pages/page_in-store_MVP_order-summary-submitted.css +0 -1
  95. package/build/css/pages/page_in-store_MVP_order-summary.css +0 -1
  96. package/build/css/pages/page_installation.css +0 -1
  97. package/build/css/pages/page_installer.css +0 -1
  98. package/build/css/pages/page_installer_form.css +0 -1
  99. package/build/css/pages/page_kitchen-claims.css +0 -1
  100. package/build/css/pages/page_kitchen-list.css +0 -1
  101. package/build/css/pages/page_login.css +0 -1
  102. package/build/css/pages/page_marketing-preferences.css +0 -1
  103. package/build/css/pages/page_merged-basket.css +0 -1
  104. package/build/css/pages/page_my-account_tradePro.css +0 -1
  105. package/build/css/pages/page_my-order.css +0 -1
  106. package/build/css/pages/page_my-orders.css +0 -1
  107. package/build/css/pages/page_new-checkout-forgot.css +0 -1
  108. package/build/css/pages/page_new-checkout_login-register.css +0 -1
  109. package/build/css/pages/page_no-results.css +0 -1
  110. package/build/css/pages/page_online-exclusive.css +0 -1
  111. package/build/css/pages/page_paint-mixing-error.css +0 -1
  112. package/build/css/pages/page_personal-details.css +0 -1
  113. package/build/css/pages/page_pre_home.css +0 -1
  114. package/build/css/pages/page_pre_home_thank-you.css +0 -1
  115. package/build/css/pages/page_product-details-critical.css +0 -1
  116. package/build/css/pages/page_product-details-v2-critical.css +0 -1
  117. package/build/css/pages/page_product-details-v2.css +0 -1
  118. package/build/css/pages/page_product-details.css +0 -1
  119. package/build/css/pages/page_product_search.css +0 -1
  120. package/build/css/pages/page_products-list-combined.css +0 -1
  121. package/build/css/pages/page_products-list-phone.css +0 -1
  122. package/build/css/pages/page_products-list.css +0 -1
  123. package/build/css/pages/page_products-list_v2.css +0 -1
  124. package/build/css/pages/page_projects.css +0 -1
  125. package/build/css/pages/page_quiz.css +0 -1
  126. package/build/css/pages/page_rate-review.css +0 -1
  127. package/build/css/pages/page_registration.css +0 -1
  128. package/build/css/pages/page_shopping-cart-v2.css +0 -1
  129. package/build/css/pages/page_shopping-cart.css +0 -1
  130. package/build/css/pages/page_split-orders.css +0 -1
  131. package/build/css/pages/page_store-locator-details.css +0 -1
  132. package/build/css/pages/page_store-locator.css +0 -1
  133. package/build/css/pages/page_thankyou.css +0 -1
  134. package/build/css/pages/page_ti.css +0 -1
  135. package/build/css/pages/page_tiling-calculator-generic.css +0 -1
  136. package/build/css/pages/page_top-rated.css +0 -1
  137. package/build/css/pages/page_track-my-order.css +0 -1
  138. package/build/css/pages/page_track_your_order.css +0 -1
  139. package/build/css/pages/page_trade_installer.css +0 -1
  140. package/build/css/pages/page_upd-pass.css +0 -1
  141. package/build/css/pages/page_wismo-details.css +0 -1
  142. package/build/css/pages/page_wismo-order-history.css +0 -1
  143. package/build/css/pages/page_wismo-orders.css +0 -1
  144. package/build/css/pages/print_quiz.css +0 -1
  145. package/build/css/pages/sticky_header.css +0 -1
  146. package/build/css/pages/tradePro-about.css +0 -1
  147. package/build/css/pages/tradePro-address-book.css +0 -1
  148. package/build/css/pages/tradePro-delivery-details.css +0 -1
  149. package/build/css/pages/tradePro-discount.css +0 -1
  150. package/build/css/pages/tradePro-order-history.css +0 -1
  151. package/build/css/pages/tradePro-payment-details.css +0 -1
  152. package/build/css/pages/tradePro-rewards-old.css +0 -1
  153. package/build/css/pages/tradePro-rewards.css +0 -1
  154. package/build/css/pages/tradePro-signup.css +0 -1
  155. package/build/css/pages/tradePro-thankyou-activate.css +0 -1
  156. package/build/img/giftcard.svg +0 -28
  157. package/build/js/gift-cards.min.js +0 -1
  158. package/build/js/page/components/gift-cards.js +0 -887
  159. package/build/js/page/components/toggle-password-visibility.js +0 -22
  160. package/build/js/page/utils/gift-cards-utils.js +0 -151
  161. package/build/js/page/utils/input-handling.js +0 -92
  162. package/build/js/page/utils/show-hide-input.js +0 -28
  163. package/build/js/toggle-password-visibility.min.js +0 -1
  164. package/src/components/gift-cards-hint.hbs +0 -9
  165. package/src/components/gift-cards.hbs +0 -90
  166. package/src/components/giftcard-chip.hbs +0 -23
  167. package/src/components/giftcard-summary.hbs +0 -6
  168. package/src/img/giftcard.svg +0 -28
  169. package/src/js/emulation/checkout-data.js +0 -35
  170. package/src/js/emulation/gift-cards.js +0 -205
  171. package/src/js/page/components/gift-cards.js +0 -887
  172. package/src/js/page/components/toggle-password-visibility.js +0 -22
  173. package/src/js/page/utils/gift-cards-utils.js +0 -151
  174. package/src/js/page/utils/input-handling.js +0 -92
  175. package/src/js/page/utils/show-hide-input.js +0 -28
  176. package/src/scss/components/_gift-cards.scss +0 -361
@@ -13,46 +13,31 @@ const osEl = {
13
13
  }
14
14
 
15
15
  export function updateOrderSummary(data, equalMap, isVoucher) {
16
- equalMap.forEach((obj) => {
17
- if (typeof obj.dataValue === 'undefined') return;
18
-
19
- if ($(obj.item).length) {
20
- $(obj.item).show();
21
- } else {
22
- if ($(osEl.checkoutWidgetDetailsDiscount).length) {
23
- $(osEl.checkoutWidgetDetailsDiscount).before(createCheckoutWidgetItem(obj));
24
- } else {
25
- $(osEl.checkoutWidgetDetails).append(createCheckoutWidgetItem(obj));
26
- }
27
- }
16
+ equalMap.forEach((obj) => {
17
+ if ($(obj.item).length) {
18
+ $(obj.item).show();
19
+ } else {
20
+ if ($(osEl.checkoutWidgetDetailsDiscount).length) {
21
+ $(osEl.checkoutWidgetDetailsDiscount).before(createCheckoutWidgetItem(obj))
22
+ } else {
23
+ $(osEl.checkoutWidgetDetails).append(createCheckoutWidgetItem(obj))
24
+ }
25
+ }
28
26
 
29
- $(obj.item).find(obj.itemValue).text(obj.dataValue);
30
- if (isVoucher ? obj.dataValue : obj.value && obj.dataValue) {
31
- $(obj.item).find(obj.itemValue).show();
32
- } else {
33
- $(obj.item).hide();
34
- }
35
- });
27
+ $(obj.item).find(obj.itemValue).text(obj.dataValue);
28
+ if (isVoucher ? obj.dataValue : obj.value && obj.dataValue) {
29
+ $(obj.item).find(obj.itemValue).show();
30
+ } else {
31
+ $(obj.item).hide();
32
+ }
33
+ })
36
34
 
37
- const keys = new Set(Object.keys(data || {}));
38
- const hasAny = (...arr) => arr.some(k => keys.has(k));
35
+ const value = data.totalPrice?.formattedValue || data.total;
39
36
 
40
- const value = data.totalPrice?.formattedValue || data.total;
41
- if (typeof value !== 'undefined' && hasAny('total', 'totalPrice')) {
42
- updateSummaryMobileBarTotal(value);
43
- }
44
-
45
- if (hasAny('promotionsInfo')) {
46
37
  updateDiscount(data, isVoucher);
47
- }
48
-
49
- if (hasAny('deliveryOrder', 'clickAndCollectOrder', 'clickAndCollectOnly', 'deliveryItemsQuantity', 'pickupItemsQuantity')) {
50
38
  hideUnusedDeliveryTypeCost(data, isVoucher);
51
- }
52
-
53
- if (hasAny('freeDelivery', 'messageForFreeDelivery', 'clickAndCollectOnly')) {
54
39
  calculateFreeDelivery(data);
55
- }
40
+ updateSummaryMobileBarTotal(value);
56
41
  }
57
42
 
58
43
  function createCheckoutWidgetItem(obj) {
@@ -68,14 +53,12 @@ function hideUnusedDeliveryTypeCost(data, isVoucher) {
68
53
  $(osEl.delivery).show()
69
54
  $(osEl.cc).show()
70
55
  if (isVoucher) {
71
- if ('deliveryOrder' in data && data.deliveryOrder === false) {
72
- $(osEl.delivery).hide();
73
- }
74
-
75
- if ('clickAndCollectOrder' in data && data.clickAndCollectOrder === false) {
76
- $(osEl.cc).hide();
77
- }
78
- } else {
56
+ if (!data.deliveryOrder) {
57
+ $(osEl.delivery).hide()
58
+ } else if (!data.clickAndCollectOrder) {
59
+ $(osEl.cc).hide()
60
+ }
61
+ } else {
79
62
  if (data.clickAndCollectOnly) {
80
63
  $(osEl.delivery).hide()
81
64
  } else if (data.deliveryItemsQuantity > 0 && data.pickupItemsQuantity === 0) {
@@ -257,6 +257,7 @@ export function wrapWithError(element) {
257
257
 
258
258
  }
259
259
 
260
+
260
261
  export function addErrorMessage(element, errorMessage) {
261
262
  if (errorMessage) {
262
263
  $(element).append('<div class="form-row__error">' + errorMessage + '</div>');
@@ -315,49 +316,3 @@ export function validateGuidPattern (value) {
315
316
  export function validateUserFriendlyIdPattern (value) {
316
317
  return patterns.userFriendlyIdPattern.test(value);
317
318
  }
318
-
319
- export function showErrorText($input, message, fieldSelector, errorTextClass, errorClass, ariaInvalidAttr) {
320
- const $field = $input.closest(fieldSelector);
321
- $field.addClass(errorClass);
322
- $input.attr(ariaInvalidAttr, 'true');
323
-
324
- let $err = $field.find(errorTextClass);
325
- if (!$err.length) {
326
- $err = $(`<div class="${errorTextClass.slice(1)}" />`).appendTo($field);
327
- }
328
- $err.text(message);
329
- }
330
-
331
- export function clearErrorText($input, fieldSelector, errorTextClass, errorClass, ariaInvalidAttr) {
332
- const $field = $input.closest(fieldSelector);
333
- $field.removeClass(errorClass);
334
- $input.removeAttr(ariaInvalidAttr);
335
- $field.find(errorTextClass).remove();
336
- }
337
-
338
- function digitsOnly(value) {
339
- return String(value || '').replace(/\D/g, '');
340
- }
341
-
342
- function hasExactDigits(value, n) {
343
- return digitsOnly(value).length === Number(n);
344
- }
345
-
346
- function validateByPredicate($input, predicate, message, {
347
- fieldSelector,
348
- errorText: errorTextClass,
349
- fieldError: errorClass,
350
- ariaInvalidAttr,
351
- }) {
352
- const ok = !!predicate(String($input.val() || ''));
353
- if (!ok) {
354
- showErrorText($input, message, fieldSelector, errorTextClass, errorClass, ariaInvalidAttr);
355
- } else {
356
- clearErrorText($input, fieldSelector, errorTextClass, errorClass, ariaInvalidAttr);
357
- }
358
- return ok;
359
- }
360
-
361
- export function validateExactDigits($input, n, message, cfg) {
362
- return validateByPredicate($input, (v) => hasExactDigits(v, n), message, cfg);
363
- }