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.
- package/Readme.md +3 -1
- package/build/css/components/checkout-payment-details-v2.css +1 -1
- package/build/js/account-members.min.js +1 -1
- package/build/js/add-project-list-id.min.js +1 -1
- package/build/js/address-book.min.js +1 -1
- package/build/js/basket.min.js +2 -2
- package/build/js/bundle.min.js +1 -1
- package/build/js/change-password.min.js +1 -1
- package/build/js/checkout.min.js +2 -2
- package/build/js/emulation.min.js +35 -273
- package/build/js/general.bundle.min.js +1 -1
- package/build/js/merged-checkout.min.js +2 -2
- package/build/js/page/components/order-summary.js +25 -42
- package/build/js/page/utils/validation.js +1 -46
- package/build/js/pdp.bundle.min.js +1 -1
- package/build/js/personal-details.min.js +1 -1
- package/build/js/plp.bundle.min.js +1 -1
- package/build/js/project-list.min.js +1 -44
- package/build/js/quiz.min.js +1 -1
- package/build/js/track-my-order.min.js +1 -1
- package/package.json +2 -2
- package/src/components/checkout-payment-details-v2.hbs +17 -5
- package/src/components/checkout-payment-repayment-terms.hbs +25 -0
- package/src/elements/form-row.hbs +1 -1
- package/src/elements/input.hbs +2 -31
- package/src/js/components/general/notification.js +1 -2
- package/src/js/components/toggle-password-visibility.js +58 -0
- package/src/js/emulation/checkout-payment-details.js +14 -23
- package/src/js/emulation/forms.js +21 -8
- package/src/js/page/components/order-summary.js +25 -42
- package/src/js/page/utils/validation.js +1 -46
- package/src/layouts/checkout.hbs +5 -1
- package/src/page_my-account_change-password.html +0 -1
- package/src/page_payment-details-with-gift-card.html +5 -8
- package/src/scss/components/checkout-payment-details-v2.scss +1 -2
- package/src/scss/components/checkout-payment-repayment-terms.scss +103 -0
- package/src/scss/pages/page_checkout_delivery-new.scss +0 -26
- package/build/css/components/energy-efficiency.css +0 -1
- package/build/css/components/global-search.css +0 -1
- package/build/css/components/kitchen/strip-stickers.css +0 -1
- package/build/css/components/legal-info.css +0 -1
- package/build/css/components/loader.css +0 -1
- package/build/css/components/long-banner.css +0 -1
- package/build/css/components/payment-details-BPS-form.css +0 -1
- package/build/css/components/pdf-loader.css +0 -1
- package/build/css/components/pdp-favourite-product.css +0 -1
- package/build/css/components/plp-favourite-product.css +0 -1
- package/build/css/components/price-block-v2-critical.css +0 -1
- package/build/css/components/price-block-v2.css +0 -1
- package/build/css/components/special-opening-schedule-v2.css +0 -1
- package/build/css/components/special-opening-schedule.css +0 -1
- package/build/css/components/store-locator-about.css +0 -1
- package/build/css/components/store-locator-facilities.css +0 -1
- package/build/css/components/store-locator-lookup.css +0 -1
- package/build/css/components/store-locator-v2-details.css +0 -1
- package/build/css/components/strip-stickers.css +0 -1
- package/build/css/components/tile-calculator.css +0 -1
- package/build/css/components/trade-pro-extras.css +0 -1
- package/build/css/pages/bicester-header.css +0 -1
- package/build/css/pages/bicester-project-list.css +0 -1
- package/build/css/pages/checkout-new.css +0 -1
- package/build/css/pages/checkout.css +0 -1
- package/build/css/pages/design-appointment.css +0 -1
- package/build/css/pages/home-movers.css +0 -1
- package/build/css/pages/iframe-paypage.css +0 -1
- package/build/css/pages/my-account-v2.css +0 -1
- package/build/css/pages/my-account.css +0 -1
- package/build/css/pages/new-usp-bar.css +0 -1
- package/build/css/pages/oldweb_header.css +0 -1
- package/build/css/pages/page_account-deletion.css +0 -1
- package/build/css/pages/page_act-trade-pro.css +0 -1
- package/build/css/pages/page_address-book.css +0 -1
- package/build/css/pages/page_bathroom-trends.css +0 -1
- package/build/css/pages/page_book-consultant-thank-you-new.css +0 -1
- package/build/css/pages/page_change-password.css +0 -1
- package/build/css/pages/page_checkout-payment-details.css +0 -1
- package/build/css/pages/page_checkout_delivery-new.css +0 -1
- package/build/css/pages/page_cms_homepage.css +0 -1
- package/build/css/pages/page_contact-us.css +0 -1
- package/build/css/pages/page_content.css +0 -1
- package/build/css/pages/page_coshh.css +0 -1
- package/build/css/pages/page_default-store.css +0 -1
- package/build/css/pages/page_discount.css +0 -1
- package/build/css/pages/page_empty-basket.css +0 -1
- package/build/css/pages/page_favourite-list.css +0 -1
- package/build/css/pages/page_fdl-management.css +0 -1
- package/build/css/pages/page_fdl-product.css +0 -1
- package/build/css/pages/page_fi.css +0 -1
- package/build/css/pages/page_forgotten-password.css +0 -1
- package/build/css/pages/page_half-login.css +0 -1
- package/build/css/pages/page_home.css +0 -1
- package/build/css/pages/page_hotspot-guttering.css +0 -1
- package/build/css/pages/page_in-store-checkout.css +0 -1
- package/build/css/pages/page_in-store_MVP_order-summary-submitted.css +0 -1
- package/build/css/pages/page_in-store_MVP_order-summary.css +0 -1
- package/build/css/pages/page_installation.css +0 -1
- package/build/css/pages/page_installer.css +0 -1
- package/build/css/pages/page_installer_form.css +0 -1
- package/build/css/pages/page_kitchen-claims.css +0 -1
- package/build/css/pages/page_kitchen-list.css +0 -1
- package/build/css/pages/page_login.css +0 -1
- package/build/css/pages/page_marketing-preferences.css +0 -1
- package/build/css/pages/page_merged-basket.css +0 -1
- package/build/css/pages/page_my-account_tradePro.css +0 -1
- package/build/css/pages/page_my-order.css +0 -1
- package/build/css/pages/page_my-orders.css +0 -1
- package/build/css/pages/page_new-checkout-forgot.css +0 -1
- package/build/css/pages/page_new-checkout_login-register.css +0 -1
- package/build/css/pages/page_no-results.css +0 -1
- package/build/css/pages/page_online-exclusive.css +0 -1
- package/build/css/pages/page_paint-mixing-error.css +0 -1
- package/build/css/pages/page_personal-details.css +0 -1
- package/build/css/pages/page_pre_home.css +0 -1
- package/build/css/pages/page_pre_home_thank-you.css +0 -1
- package/build/css/pages/page_product-details-critical.css +0 -1
- package/build/css/pages/page_product-details-v2-critical.css +0 -1
- package/build/css/pages/page_product-details-v2.css +0 -1
- package/build/css/pages/page_product-details.css +0 -1
- package/build/css/pages/page_product_search.css +0 -1
- package/build/css/pages/page_products-list-combined.css +0 -1
- package/build/css/pages/page_products-list-phone.css +0 -1
- package/build/css/pages/page_products-list.css +0 -1
- package/build/css/pages/page_products-list_v2.css +0 -1
- package/build/css/pages/page_projects.css +0 -1
- package/build/css/pages/page_quiz.css +0 -1
- package/build/css/pages/page_rate-review.css +0 -1
- package/build/css/pages/page_registration.css +0 -1
- package/build/css/pages/page_shopping-cart-v2.css +0 -1
- package/build/css/pages/page_shopping-cart.css +0 -1
- package/build/css/pages/page_split-orders.css +0 -1
- package/build/css/pages/page_store-locator-details.css +0 -1
- package/build/css/pages/page_store-locator.css +0 -1
- package/build/css/pages/page_thankyou.css +0 -1
- package/build/css/pages/page_ti.css +0 -1
- package/build/css/pages/page_tiling-calculator-generic.css +0 -1
- package/build/css/pages/page_top-rated.css +0 -1
- package/build/css/pages/page_track-my-order.css +0 -1
- package/build/css/pages/page_track_your_order.css +0 -1
- package/build/css/pages/page_trade_installer.css +0 -1
- package/build/css/pages/page_upd-pass.css +0 -1
- package/build/css/pages/page_wismo-details.css +0 -1
- package/build/css/pages/page_wismo-order-history.css +0 -1
- package/build/css/pages/page_wismo-orders.css +0 -1
- package/build/css/pages/print_quiz.css +0 -1
- package/build/css/pages/sticky_header.css +0 -1
- package/build/css/pages/tradePro-about.css +0 -1
- package/build/css/pages/tradePro-address-book.css +0 -1
- package/build/css/pages/tradePro-delivery-details.css +0 -1
- package/build/css/pages/tradePro-discount.css +0 -1
- package/build/css/pages/tradePro-order-history.css +0 -1
- package/build/css/pages/tradePro-payment-details.css +0 -1
- package/build/css/pages/tradePro-rewards-old.css +0 -1
- package/build/css/pages/tradePro-rewards.css +0 -1
- package/build/css/pages/tradePro-signup.css +0 -1
- package/build/css/pages/tradePro-thankyou-activate.css +0 -1
- package/build/img/giftcard.svg +0 -28
- package/build/js/gift-cards.min.js +0 -1
- package/build/js/page/components/gift-cards.js +0 -887
- package/build/js/page/components/toggle-password-visibility.js +0 -22
- package/build/js/page/utils/gift-cards-utils.js +0 -151
- package/build/js/page/utils/input-handling.js +0 -92
- package/build/js/page/utils/show-hide-input.js +0 -28
- package/build/js/toggle-password-visibility.min.js +0 -1
- package/src/components/gift-cards-hint.hbs +0 -9
- package/src/components/gift-cards.hbs +0 -90
- package/src/components/giftcard-chip.hbs +0 -23
- package/src/components/giftcard-summary.hbs +0 -6
- package/src/img/giftcard.svg +0 -28
- package/src/js/emulation/checkout-data.js +0 -35
- package/src/js/emulation/gift-cards.js +0 -205
- package/src/js/page/components/gift-cards.js +0 -887
- package/src/js/page/components/toggle-password-visibility.js +0 -22
- package/src/js/page/utils/gift-cards-utils.js +0 -151
- package/src/js/page/utils/input-handling.js +0 -92
- package/src/js/page/utils/show-hide-input.js +0 -28
- 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
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
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
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
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
|
-
|
|
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
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
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
|
-
}
|