wickes-css2 2.117.0-develop.3 → 2.117.0-gift-cards.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 +0 -1
- package/build/css/category-main.css +1 -1
- package/build/css/components/checkout-payment-details-v2.css +1 -1
- package/build/css/homepage-main.css +1 -1
- package/build/css/kitchen-plp-main.css +1 -1
- package/build/css/main.css +1 -1
- package/build/css/my-account-main-v2.css +1 -1
- package/build/css/my-account-main.css +1 -1
- package/build/css/pages/checkout-new.css +1 -1
- package/build/css/pages/checkout.css +1 -1
- package/build/css/pages/page_my-order.css +1 -1
- package/build/css/pages/page_wismo-details.css +1 -1
- package/build/css/pdp-main-before-combine.css +1 -1
- package/build/css/pdp-main-critical.css +1 -1
- package/build/css/pdp-main-non-critical.css +1 -1
- package/build/css/pdp-main.css +1 -1
- package/build/css/plp-main.css +1 -1
- package/build/css/store-locator-main.css +1 -1
- package/build/img/payment/checkout/giftcard.svg +28 -0
- package/build/img/payment/footer/giftcard.svg +28 -0
- 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 +424 -82
- package/build/js/general.bundle.min.js +1 -1
- package/build/js/gift-cards.min.js +1 -1
- package/build/js/merged-checkout.min.js +2 -2
- package/build/js/page/bloomreach-widget/bloomreach-widget-core.js +1 -3
- package/build/js/page/checkout-payment-details.js +114 -10
- package/build/js/page/components/gift-cards.js +524 -115
- package/build/js/page/components/postcode-lookup/postcode-lookup-api.js +56 -0
- package/build/js/page/components/postcode-lookup/postcode-lookup-render.js +98 -0
- package/build/js/page/components/postcode-lookup/postcode-lookup-validation.js +81 -0
- package/build/js/page/components/postcode-lookup.js +503 -0
- package/build/js/page/ripple/bulk-add.js +2 -2
- package/build/js/page/ripple/thumb-gallery.js +14 -8
- package/build/js/page/utils/address-utils.js +32 -0
- package/build/js/page/utils/validation.js +54 -1
- package/build/js/pdp.bundle.min.js +2 -2
- package/build/js/personal-details.min.js +1 -1
- package/build/js/plp.bundle.min.js +1 -1
- package/build/js/postcode-checker.min.js +1 -1
- package/build/js/project-list.min.js +57 -2
- package/build/js/quiz.min.js +1 -1
- package/build/js/track-my-order.min.js +1 -1
- package/package.json +5 -1
- package/src/components/checkout-payment-details-v2.hbs +1 -0
- package/src/components/checkout_order-summary-new.hbs +6 -0
- package/src/components/checkout_payment-new.hbs +35 -8
- package/src/components/gift-cards.hbs +8 -15
- package/src/components/order-address.hbs +28 -0
- package/src/components/payments.hbs +7 -6
- package/src/components/postcode-lookup-v2.hbs +85 -0
- package/src/components/wismo-giftcard-payment-item.hbs +29 -0
- package/src/components/wismo-payment.hbs +10 -0
- package/src/data/data_checkout-giftcards.json +7 -0
- package/src/data/data_delivery-address-v2.json +4 -0
- package/src/data/data_payments-checkout.json +4 -0
- package/src/data/data_postcode-lookup.json +200 -0
- package/src/data/data_wismo.json +46 -1
- package/src/data/footer_menu.json +4 -0
- package/src/elements/input.hbs +3 -1
- package/src/img/payment/checkout/giftcard.svg +28 -0
- package/src/img/payment/footer/giftcard.svg +28 -0
- package/src/js/components/general/footer.js +63 -56
- package/src/js/emulation/checkout-payment-details.js +2 -0
- package/src/js/emulation/gift-cards.js +22 -0
- package/src/js/emulation/mock.js +21 -20
- package/src/js/emulation/postcode-checker.js +1 -1
- package/src/js/emulation/postcode-lookup.js +122 -0
- package/src/js/page/bloomreach-widget/bloomreach-widget-core.js +1 -3
- package/src/js/page/checkout-payment-details.js +114 -10
- package/src/js/page/components/gift-cards.js +524 -115
- package/src/js/page/components/postcode-lookup/postcode-lookup-api.js +56 -0
- package/src/js/page/components/postcode-lookup/postcode-lookup-render.js +98 -0
- package/src/js/page/components/postcode-lookup/postcode-lookup-validation.js +81 -0
- package/src/js/page/components/postcode-lookup.js +503 -0
- package/src/js/page/ripple/bulk-add.js +2 -2
- package/src/js/page/ripple/thumb-gallery.js +14 -8
- package/src/js/page/utils/address-utils.js +32 -0
- package/src/js/page/utils/validation.js +54 -1
- package/src/page_checkout_confirmation-gift-card-split-payment.html +339 -0
- package/src/page_checkout_confirmation-gift-card.html +339 -0
- package/src/page_my_account_payment_info_gift_cards.html +96 -0
- package/src/page_my_account_payment_info_gift_cards_split_payment.html +96 -0
- package/src/page_product-details-billie.html +2 -0
- package/src/page_product-details-clearpay.html +1 -0
- package/src/scss/common/_CTAs.scss +4 -0
- package/src/scss/components/_gift-cards.scss +66 -9
- package/src/scss/components/_payments-checkout.scss +2 -2
- package/src/scss/components/_payments-v2.scss +5 -7
- package/src/scss/components/_postcode-lookup-v2.scss +164 -0
- package/src/scss/components/checkout-payment-details-v2.scss +1 -0
- package/src/scss/helpers/_CTAs.scss +26 -0
- package/src/scss/helpers/_variables.scss +2 -0
- package/src/scss/pages/_checkout-confirmation-new.scss +96 -3
- package/src/scss/pages/page_wismo-details.scss +29 -0
- package/src/sitemap.html +24 -0
|
@@ -363,9 +363,7 @@ Wick.BloomreachWidget = {
|
|
|
363
363
|
}
|
|
364
364
|
|
|
365
365
|
const value =
|
|
366
|
-
typeof rawValue === 'number'
|
|
367
|
-
? rawValue
|
|
368
|
-
: Number(`${rawValue}`.replace(/[,£\s]/g, ''));
|
|
366
|
+
typeof rawValue === 'number' ? rawValue : Number(`${rawValue}`.replace(/[,£\s]/g, ''));
|
|
369
367
|
|
|
370
368
|
if (!Number.isFinite(value)) {
|
|
371
369
|
return typeof rawValue === 'string' ? rawValue : '';
|
|
@@ -13,7 +13,6 @@ Wick.CheckoutPaymentDetails = (function () {
|
|
|
13
13
|
};
|
|
14
14
|
|
|
15
15
|
const toggleBillieRepaymentTermsClass = 'js-billie-repayment-terms--has-selection';
|
|
16
|
-
|
|
17
16
|
const elements = {
|
|
18
17
|
$billieRepaymentTerms: $('.js-billie-repayment-terms'),
|
|
19
18
|
$billieWidget: $('.checkout-payment-details__billie[data-billie]'),
|
|
@@ -28,8 +27,95 @@ Wick.CheckoutPaymentDetails = (function () {
|
|
|
28
27
|
$unregisteredFields: $('#unregistered-fields'),
|
|
29
28
|
$registeredFields: $('#registered-fields'),
|
|
30
29
|
hiddenClass: 'd-none',
|
|
30
|
+
$giftcardToggle: $('#giftcard-toggle'),
|
|
31
|
+
$giftcardPanel: $('#giftcard-inline'),
|
|
32
|
+
giftcardDisabledClass: 'giftcard-toggle--disabled',
|
|
33
|
+
giftcardRoot: '.giftcard',
|
|
34
|
+
giftcardHint: '.giftcard-hint',
|
|
35
|
+
giftcardNumber: 'input[name="giftcard-number"]',
|
|
36
|
+
giftcardPin: 'input[name="giftcard-pin"]',
|
|
37
|
+
orderAddress: '[data-order-address]',
|
|
31
38
|
};
|
|
32
39
|
|
|
40
|
+
const isOutsideOrderAddress = (_, el) => !$(el).closest(elements.orderAddress).length;
|
|
41
|
+
function setGiftcardToggleEnabled(isEnabled) {
|
|
42
|
+
const $toggle = elements.$giftcardToggle;
|
|
43
|
+
const $panel = elements.$giftcardPanel;
|
|
44
|
+
const $giftcard = $toggle.closest('.giftcard');
|
|
45
|
+
|
|
46
|
+
if (!$toggle.length) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
$giftcard.toggleClass('giftcard--disabled', !isEnabled);
|
|
51
|
+
|
|
52
|
+
if (isEnabled) {
|
|
53
|
+
$toggle.attr('aria-disabled', 'false').attr('tabindex', '0').css('pointer-events', '');
|
|
54
|
+
} else {
|
|
55
|
+
if ($panel && $panel.length) $panel.prop('hidden', true);
|
|
56
|
+
|
|
57
|
+
$toggle
|
|
58
|
+
.attr('aria-disabled', 'true')
|
|
59
|
+
.attr('tabindex', '-1')
|
|
60
|
+
.css('pointer-events', 'none')
|
|
61
|
+
.attr('aria-expanded', 'false')
|
|
62
|
+
.show();
|
|
63
|
+
|
|
64
|
+
$giftcard.find('.giftcard-hint').show();
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// function resetGiftcardToDefault() {
|
|
69
|
+
// const {
|
|
70
|
+
// $giftcardToggle: $toggle,
|
|
71
|
+
// $giftcardPanel: $panel,
|
|
72
|
+
// giftcardRoot,
|
|
73
|
+
// giftcardHint,
|
|
74
|
+
// giftcardNumber,
|
|
75
|
+
// giftcardPin,
|
|
76
|
+
// } = elements;
|
|
77
|
+
|
|
78
|
+
// if (!$toggle.length) {
|
|
79
|
+
// return;
|
|
80
|
+
// }
|
|
81
|
+
|
|
82
|
+
// const $giftcard = $toggle.closest(giftcardRoot);
|
|
83
|
+
|
|
84
|
+
// const $hint = $giftcard.find(giftcardHint);
|
|
85
|
+
// const $number = $giftcard.find(giftcardNumber);
|
|
86
|
+
// const $pin = $giftcard.find(giftcardPin);
|
|
87
|
+
|
|
88
|
+
// if ($panel.length) $panel.prop('hidden', true);
|
|
89
|
+
|
|
90
|
+
// $toggle.attr('aria-expanded', 'false').show();
|
|
91
|
+
// $hint.show();
|
|
92
|
+
|
|
93
|
+
// if (window.Wick?.GiftCard?.resetForm) {
|
|
94
|
+
// Wick.GiftCard.resetForm($giftcard);
|
|
95
|
+
// return;
|
|
96
|
+
// }
|
|
97
|
+
|
|
98
|
+
// $number.val('');
|
|
99
|
+
// $pin.val('');
|
|
100
|
+
// }
|
|
101
|
+
|
|
102
|
+
function syncGiftcardAvailability(checkedMethod) {
|
|
103
|
+
const enable = checkedMethod === 'card';
|
|
104
|
+
|
|
105
|
+
if (!enable) {
|
|
106
|
+
const $giftcard = elements.$giftcardToggle.closest(elements.giftcardRoot);
|
|
107
|
+
if (window.Wick?.GiftCard?.collapsePreserveState) {
|
|
108
|
+
Wick.GiftCard.collapsePreserveState($giftcard);
|
|
109
|
+
} else {
|
|
110
|
+
if (elements.$giftcardPanel.length) elements.$giftcardPanel.prop('hidden', true);
|
|
111
|
+
elements.$giftcardToggle.attr('aria-expanded', 'false').show();
|
|
112
|
+
$giftcard.find(elements.giftcardHint).show();
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
setGiftcardToggleEnabled(enable);
|
|
117
|
+
}
|
|
118
|
+
|
|
33
119
|
let klarnaInited = false;
|
|
34
120
|
let billieInited = false;
|
|
35
121
|
|
|
@@ -106,17 +192,21 @@ Wick.CheckoutPaymentDetails = (function () {
|
|
|
106
192
|
paymentMethods.forEach((method) => {
|
|
107
193
|
$(`[data-${method}]`).hide();
|
|
108
194
|
});
|
|
109
|
-
|
|
110
195
|
const $selected = $(`[data-${checkedMethod}]`);
|
|
111
196
|
if ($selected.length) {
|
|
112
197
|
$selected.show();
|
|
113
198
|
}
|
|
114
199
|
}
|
|
200
|
+
|
|
115
201
|
function resetAllCheckoutForms(keepPaymentMethod) {
|
|
116
202
|
const $container = elements.$wrapperPaymentInput.closest('.checkout-payment-details');
|
|
117
203
|
if (!$container.length) return;
|
|
204
|
+
const $giftcardScope = $container.find(elements.giftcardRoot);
|
|
205
|
+
const $exclude = $giftcardScope.find(':input');
|
|
118
206
|
|
|
119
207
|
$container.find('form').each(function () {
|
|
208
|
+
if ($(this).closest(elements.giftcardRoot).length) return;
|
|
209
|
+
|
|
120
210
|
if (Wick.Forms && typeof Wick.Forms.clearValidationErrors === 'function') {
|
|
121
211
|
Wick.Forms.clearValidationErrors(this);
|
|
122
212
|
}
|
|
@@ -126,13 +216,22 @@ Wick.CheckoutPaymentDetails = (function () {
|
|
|
126
216
|
.find(
|
|
127
217
|
'input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="password"], textarea'
|
|
128
218
|
)
|
|
219
|
+
.filter(isOutsideOrderAddress)
|
|
220
|
+
.not($exclude)
|
|
129
221
|
.val('');
|
|
130
222
|
|
|
131
|
-
$container
|
|
132
|
-
|
|
133
|
-
|
|
223
|
+
$container
|
|
224
|
+
.find('select')
|
|
225
|
+
.not($exclude)
|
|
226
|
+
.each(function () {
|
|
227
|
+
this.selectedIndex = 0;
|
|
228
|
+
});
|
|
134
229
|
|
|
135
|
-
$container
|
|
230
|
+
$container
|
|
231
|
+
.find('input[type="checkbox"]')
|
|
232
|
+
.filter(isOutsideOrderAddress)
|
|
233
|
+
.not($exclude)
|
|
234
|
+
.prop('checked', false);
|
|
136
235
|
|
|
137
236
|
$container.find('input[type="radio"]').each(function () {
|
|
138
237
|
const $radio = $(this);
|
|
@@ -308,7 +407,7 @@ Wick.CheckoutPaymentDetails = (function () {
|
|
|
308
407
|
}
|
|
309
408
|
|
|
310
409
|
function clearInputFields() {
|
|
311
|
-
elements.$billingAddress.find('input.tbx').val('');
|
|
410
|
+
elements.$billingAddress.find('input.tbx').filter(isOutsideOrderAddress).val('');
|
|
312
411
|
}
|
|
313
412
|
|
|
314
413
|
function showPlaceOrder() {
|
|
@@ -341,6 +440,8 @@ Wick.CheckoutPaymentDetails = (function () {
|
|
|
341
440
|
|
|
342
441
|
function init() {
|
|
343
442
|
const paymentMethods = getPaymentMethods();
|
|
443
|
+
const initialMethod = $(elements.paymentInputName + ':checked').val() || 'card';
|
|
444
|
+
syncGiftcardAvailability(initialMethod);
|
|
344
445
|
initBillieBusinessTypeToggle();
|
|
345
446
|
hideBillieBusiness();
|
|
346
447
|
|
|
@@ -363,6 +464,10 @@ Wick.CheckoutPaymentDetails = (function () {
|
|
|
363
464
|
elements.$wrapperPaymentInput.on('change', elements.paymentInputName, function () {
|
|
364
465
|
const checkedMethod = $(this).val();
|
|
365
466
|
|
|
467
|
+
togglePaymentBlocks(paymentMethods, checkedMethod);
|
|
468
|
+
changeDetailsBlock(checkedMethod);
|
|
469
|
+
syncGiftcardAvailability(checkedMethod);
|
|
470
|
+
|
|
366
471
|
if (prevPaymentMethod && prevPaymentMethod !== checkedMethod) {
|
|
367
472
|
resetAllCheckoutForms(checkedMethod);
|
|
368
473
|
} else {
|
|
@@ -373,13 +478,12 @@ Wick.CheckoutPaymentDetails = (function () {
|
|
|
373
478
|
Wick.Forms.clearValidationErrors(form);
|
|
374
479
|
}
|
|
375
480
|
|
|
376
|
-
togglePaymentBlocks(paymentMethods, checkedMethod);
|
|
377
|
-
changeDetailsBlock(checkedMethod);
|
|
378
|
-
|
|
379
481
|
prevPaymentMethod = checkedMethod;
|
|
380
482
|
});
|
|
381
483
|
|
|
382
484
|
$('.btn-new-card').on('click', function () {
|
|
485
|
+
elements.$cardDetails.removeClass(elements.hiddenCardDetailsClass);
|
|
486
|
+
|
|
383
487
|
$('[data-new-card]').show();
|
|
384
488
|
$('[data-existing-card]').hide();
|
|
385
489
|
return false;
|