wickes-css2 2.94.0-develop.13 → 2.94.0-develop.15

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 (75) hide show
  1. package/Readme.md +2 -2
  2. package/build/css/main.css +1 -1
  3. package/build/css/pages/checkout-new.css +1 -1
  4. package/build/css/pages/checkout.css +1 -1
  5. package/build/css/pages/page_checkout_delivery-new.css +1 -1
  6. package/build/css/pages/page_shopping-cart-v2.css +1 -1
  7. package/build/css/pages/tradePro-signup.css +1 -1
  8. package/build/css/pdp-main-non-critical.css +1 -1
  9. package/build/js/basket.min.js +2 -2
  10. package/build/js/bundle.min.js +1 -1
  11. package/build/js/checkout.min.js +2 -2
  12. package/build/js/emulation.min.js +2 -2
  13. package/build/js/general.bundle.min.js +1 -1
  14. package/build/js/merged-checkout.min.js +2 -2
  15. package/build/js/page/basket/summary-mobile.js +22 -0
  16. package/build/js/page/basket-v2.js +13 -0
  17. package/build/js/page/components/order-summary.js +8 -1
  18. package/build/js/page/components/sticky-order-observer.js +49 -0
  19. package/build/js/page/components/voucher.js +1 -1
  20. package/build/js/pdp.bundle.min.js +1 -1
  21. package/build/js/plp.bundle.min.js +1 -1
  22. package/build/js/project-list.min.js +1 -1
  23. package/package.json +1 -1
  24. package/src/components/checkout-action.hbs +14 -11
  25. package/src/components/checkout-voucher-accordion.hbs +15 -0
  26. package/src/components/checkout_order-summary-new.hbs +5 -3
  27. package/src/components/checkout_voucher_large.hbs +20 -16
  28. package/src/components/date-selection.hbs +1 -1
  29. package/src/components/order-item.hbs +3 -3
  30. package/src/components/order-summary.hbs +91 -56
  31. package/src/components/partner-signup-form.hbs +4 -0
  32. package/src/components/summary-mobile-bar.hbs +17 -0
  33. package/src/data/data_delivery-address-v2.json +1 -1
  34. package/src/data/data_shopping-cart-v2.json +24 -0
  35. package/src/js/components/general/is-trade-pro.js +15 -1
  36. package/src/js/emulation/basket-data.js +2 -2
  37. package/src/js/page/basket/summary-mobile.js +22 -0
  38. package/src/js/page/basket-v2.js +13 -0
  39. package/src/js/page/components/order-summary.js +8 -1
  40. package/src/js/page/components/sticky-order-observer.js +49 -0
  41. package/src/js/page/components/voucher.js +1 -1
  42. package/src/layouts/basket-new.hbs +1 -1
  43. package/src/layouts/checkout-new.hbs +1 -0
  44. package/src/page_checkout_confirmation-new-marketing-consent-error.html +0 -2
  45. package/src/page_checkout_delivery-address-customer-journey.html +0 -5
  46. package/src/page_checkout_delivery-address-v2.html +0 -4
  47. package/src/page_checkout_delivery-details-v2-asm.html +1 -5
  48. package/src/page_checkout_delivery-details-v2-calendar-message.html +0 -3
  49. package/src/page_checkout_delivery-details-v2-oos.html +0 -3
  50. package/src/page_checkout_delivery-details-v2-wisdom-not-available.html +0 -5
  51. package/src/page_checkout_delivery-details-v2-wisdom.html +0 -5
  52. package/src/page_checkout_delivery-details-with-loader-v2.html +0 -3
  53. package/src/page_checkout_delivery-details_guest-new.html +0 -5
  54. package/src/page_checkout_delivery_address-asm-new.html +0 -4
  55. package/src/page_checkout_next-day-delivery-details.html +0 -6
  56. package/src/page_checkout_payment-details-v2.html +1 -1
  57. package/src/page_checkout_payment-details_guest-with-checkout-journey.html +0 -2
  58. package/src/page_checkout_payment-details_login-with-checkout-journey.html +0 -2
  59. package/src/page_checkout_rapid-delivery-details.html +0 -6
  60. package/src/page_klarna_payment-details_with-klarna.html +3 -6
  61. package/src/page_payment-details-with-clearpay.html +1 -1
  62. package/src/page_payment-details_with_apple-pay.html +1 -1
  63. package/src/page_payment-details_with_google-pay.html +1 -1
  64. package/src/page_shopping-cart-v2.html +6 -16
  65. package/src/page_tradePro-signup.html +1 -1
  66. package/src/scss/components/_checkout-action.scss +132 -6
  67. package/src/scss/components/_marketing-preferences.scss +1 -1
  68. package/src/scss/components/_order-summary.scss +329 -178
  69. package/src/scss/components/_sticky-element-appearance.scss +25 -0
  70. package/src/scss/helpers/_variables.scss +2 -0
  71. package/src/scss/main.scss +1 -0
  72. package/src/scss/pages/_checkout-widget.scss +137 -28
  73. package/src/scss/pages/page_checkout_delivery-new.scss +119 -10
  74. package/src/scss/pages/page_shopping-cart-v2.scss +137 -34
  75. package/src/scss/pages/tradePro-signup.scss +27 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wickes-css2",
3
- "version": "2.94.0-develop.13",
3
+ "version": "2.94.0-develop.15",
4
4
  "description": "CSS and JS and page templates in use by Wickes",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -1,14 +1,15 @@
1
- <div class="checkout-action__wrapper {{mod}}">
1
+ <div class="checkout-action__wrapper {{lookup . "mod"}} {{view}}">
2
2
  {{#if head}}
3
3
  {{> checkout-section-title title=head}}
4
4
  {{/if}}
5
- <div class="checkout-action">
5
+ <div class="checkout-action {{#if container}}container{{/if}}">
6
6
  <div class="checkout-action__section">
7
7
  <a href="#" class="btn btn_full btn-action btn-checkout">
8
- Checkout
9
- <span class="icon">
10
- <i class="fas fa-arrow-right"></i>
11
- </span>
8
+ <span class="btn-wickes-checkout__label checkout-text--mixed">Checkout</span>
9
+ <span class="btn-wickes-checkout__label checkout-text--collect">Wickes Checkout</span>
10
+ <span class="icon">
11
+ <i class="fas fa-arrow-right"></i>
12
+ </span>
12
13
  </a>
13
14
  </div>
14
15
  <div class="checkout-action__section checkout-widget__basket-block">
@@ -23,13 +24,15 @@
23
24
  </div>
24
25
  </div>
25
26
  </a>
27
+ {{#unless hidePaypalEmail}}
26
28
  <div class="pay-pal_container-email">
27
- <div class="pay-pal_email-heading">Your PayPal email: </div>
28
- <div class="pay-pal_email-value">John.doe@gmail.com</div>
29
- <div class="pay-pal_email-link">
30
- <a href="#" title="" target="_blank">Don't use this email</a>
31
- </div>
29
+ <div class="pay-pal_email-heading">Your PayPal email: </div>
30
+ <div class="pay-pal_email-value">John.doe@gmail.com</div>
31
+ <div class="pay-pal_email-link">
32
+ <a href="#" title="" target="_blank">Don't use this email</a>
33
+ </div>
32
34
  </div>
35
+ {{/unless}}
33
36
  </div>
34
37
  </div>
35
38
  </div>
@@ -0,0 +1,15 @@
1
+ <li class="checkout-widget__voucher-accordion">
2
+ <div
3
+ class="checkout-widget__voucher-toggle collapsed"
4
+ data-toggle="collapse"
5
+ data-target="#checkout-voucher-accordion-{{id}}"
6
+ >
7
+ Got a voucher?
8
+ <span class="checkout-widget__icon">
9
+ <i class="fal fa-angle-up fa-2x"></i>
10
+ </span>
11
+ </div>
12
+ <div class="collapse" id="checkout-voucher-accordion-{{id}}">
13
+ {{> checkout_voucher_large id=id title=""}}
14
+ </div>
15
+ </li>
@@ -12,12 +12,13 @@
12
12
  {{/each}}
13
13
  {{else}}
14
14
  {{#each info}}
15
- <li class="checkout-widget__item {{#if mod}}checkout-widget__item-{{mod}}{{/if}}">
15
+ <li class="checkout-widget__item {{#if (lookup this "mod")}}checkout-widget__item-{{lookup this "mod"}}{{/if}}">
16
16
  <span>{{title}}</span>
17
17
  <span class="checkout-widget__item-value">{{value}}</span>
18
18
  </li>
19
19
  {{/each}}
20
20
  {{/if}}
21
+ {{> checkout-voucher-accordion id=id}}
21
22
  {{#if discounts}}
22
23
  <li class="checkout-widget__accordion-wrap checkout-widget__details-discount">
23
24
  <span class="checkout-widget__detail-name checkout-widget__detail-name_accordion collapsed" data-toggle="collapse"
@@ -35,7 +36,8 @@
35
36
  </li>
36
37
  {{/if}}
37
38
  </ul>
38
- <div class="checkout-widget__total">
39
+ {{#unless mobile}}
40
+ <div class="checkout-widget__total" data-sticky-observe>
39
41
  {{#if confirmationSummary}}
40
42
  <div> {{ confirmation-summary.total.title }}</div>
41
43
  <div class="checkout-widget__total-value">{{ confirmation-summary.total.value }}</div>
@@ -44,5 +46,5 @@
44
46
  <div class="checkout-widget__total-value">{{ total.value }}</div>
45
47
  {{/if}}
46
48
  </div>
47
-
49
+ {{/unless}}
48
50
  </div>
@@ -1,19 +1,23 @@
1
1
  <div class="voucher">
2
- {{#if title}}
3
- {{> checkout-section-title}}
4
- {{/if}}
5
- <div class="checkout-widget checkout-voucher checkout-voucher_fixed">
6
- <form id="form-checkout-voucher{{id}}">
7
- {{> form-row id=(concat 'voucher-code' id) label="Voucher" label-hidden="true" required="true" placeholder="Enter code"}}
8
- <button class="voucher__btn btn btn-secondary btn_full">
9
- <span class="btn__text">Apply</span>
10
- </button>
11
- </form>
2
+ {{#if title}}
3
+ {{> checkout-section-title}}
4
+ {{/if}}
5
+ <div class="checkout-widget checkout-voucher checkout-voucher_fixed">
6
+ <form id="form-checkout-voucher{{id}}">
7
+ {{> form-row id=(concat 'voucher-code' id) label="Voucher" label-hidden="true" required="true" placeholder="Enter code" info=""}}
8
+ <button class="voucher__btn btn btn-primary">
9
+ <span class="btn__text">Apply</span>
10
+ </button>
11
+ </form>
12
+ </div>
13
+ {{#unless voucherApplied}}
14
+ <div class="checkout-widget checkout-voucher voucher-applied checkout-voucher-hide">
15
+ <div class="voucher-applied__inner">
16
+ <span class="icon icon__check">
17
+ <i class="fas fa-check-circle"></i>
18
+ </span>
19
+ <h5 class="heading-5 text-center">Voucher has been applied</h5>
20
+ </div>
12
21
  </div>
13
- {{#unless voucherApplied}}
14
- <div class="checkout-widget checkout-voucher voucher-applied checkout-voucher-hide">
15
- <i class="fas fa-check-circle"></i>
16
- <h3 class="heading-3 text-center">Voucher has been applied</h3>
17
- </div>
18
- {{/unless}}
22
+ {{/unless}}
19
23
  </div>
@@ -24,7 +24,7 @@
24
24
  {{/each}}
25
25
  </div>
26
26
  {{#each calendar}}
27
- {{#if (eq (mod @index 7) 0)}}
27
+ {{#if (eq (mod_dec @index 7) 0)}}
28
28
  <div class="calendar__row">
29
29
  <div class="calendar__row_days">
30
30
  {{/if}}
@@ -87,7 +87,7 @@
87
87
  <div class="price-vat">Inc.VAT</div>
88
88
  </div>
89
89
  <div class="excluding-vat d-none">
90
- <span class="order-item__value">£{{price}}</span>
90
+ <span class="order-item__value">£{{priceExcVat}}</span>
91
91
  <div class="price-vat">Exc.VAT</div>
92
92
  </div>
93
93
  {{else}}
@@ -106,7 +106,7 @@
106
106
  <div class="price-vat">Inc.VAT</div>
107
107
  </div>
108
108
  <div class="excluding-vat d-none">
109
- <span class="order-item__value">£{{pricePerSQM.value}}</span>
109
+ <span class="order-item__value">£{{pricePerSQMExcVat.value}}</span>
110
110
  <div class="price-vat">Exc.VAT</div>
111
111
  </div>
112
112
  {{else}}
@@ -127,7 +127,7 @@
127
127
  <div class="price-vat">Inc.VAT</div>
128
128
  </div>
129
129
  <div class="excluding-vat d-none">
130
- <span class="order-item__value">£{{total}}</span>
130
+ <span class="order-item__value">£{{totalExcVat}}</span>
131
131
  <div class="price-vat">Exc.VAT</div>
132
132
  </div>
133
133
  {{else}}
@@ -1,66 +1,101 @@
1
+ {{#if basket}}
2
+ <div class="summary summary--mobile d-lg-none" id="summary-mobile-{{id}}">
3
+ {{> summary-mobile-bar}}
4
+ <div class="collapse summary__aside container" id="checkout-summary-mobile-accordion-{{id}}" data-sticky-element>
5
+
6
+ {{> checkout_order-summary-new head=title mod=mod id=(concat id "-mobile") mobile="true"}}
7
+ {{#unless basket}}
8
+ <div class="summary__payment footer-checkout">
9
+ {{#unless merged}}
10
+ {{#if paymentsCheckoutV2}}
11
+ <div class="footer-checkout-holder footer-checkout-holder--payways">
12
+ {{> payments-checkout-v2}}
13
+ </div>
14
+ {{else}}
15
+ <div class="footer-checkout-holder">
16
+ {{> payments-checkout clearPayIcon="true"}}
17
+ <span class="footer-checkout__copyright">
18
+ Copyright ©
19
+ <span class="current-year"></span> Wickes.co.uk
20
+ </span>
21
+ </div>
22
+ {{/if}}
23
+ {{else}}
24
+ <div class="summary__payment-message">
25
+ <p class="summary__payment-main">{{vat-message.main}}</p>
26
+ <p class="summary__payment-additional">{{vat-message.additional}}</p>
27
+ </div>
28
+ {{/unless}}
29
+ </div>
30
+ {{/unless}}
31
+ </div>
32
+ </div>
33
+ {{/if}}
34
+
35
+
1
36
  <div class="summary {{#if mod}}summary-large{{/if}} {{#if paymentsCheckoutV2 }}summary--payways{{/if}}">
2
- {{> checkout-section-title}}
3
- {{#if mod}}
4
- <div class="summary__accordion collapsed"
5
- data-toggle="collapse"
6
- data-target="#checkout-details-accordion-{{id}}"
7
- >
8
- <span class="summary__accordion-text">Show full summary</span>
9
- <span class="icon summary-icon-small">
37
+ {{> checkout-section-title}}
38
+ {{#if mod}}
39
+ <div class="summary__accordion collapsed"
40
+ data-toggle="collapse"
41
+ data-target="#checkout-details-accordion-{{id}}"
42
+ >
43
+ <span class="summary__accordion-text">Show full summary</span>
44
+ <span class="icon summary-icon-small">
10
45
  <i class="fas fa-angle-up"></i>
11
46
  </span>
12
- </div>
13
- {{/if}}
14
- <div class="summary__aside">
15
- {{> checkout_order-summary-new head=title mod=mod id=id}}
47
+ </div>
48
+ {{/if}}
49
+ <div class="summary__aside">
50
+ {{> checkout_order-summary-new head=title mod=mod id=id}}
16
51
 
17
- {{#if klarna-placement}}
18
- <div class="summary__klarna">
19
- <klarna-placement
20
- data-key="credit-promotion-badge"
21
- data-locale="en-GB"
22
- data-purchase-amount="12000"
23
- ></klarna-placement>
52
+ {{#if klarna-placement}}
53
+ <div class="summary__klarna">
54
+ <klarna-placement
55
+ data-key="credit-promotion-badge"
56
+ data-locale="en-GB"
57
+ data-purchase-amount="12000"
58
+ ></klarna-placement>
59
+ </div>
60
+ {{/if}}
61
+ {{#if clearpay-placement}}
62
+ {{> clearpay applyMargin=true hasKlarna=true}}
63
+ {{/if}}
64
+ {{#unless basket}}
65
+ <div class="summary__payment footer-checkout">
66
+ {{#unless merged}}
67
+ {{#if paymentsCheckoutV2 }}
68
+ <div class="footer-checkout-holder footer-checkout-holder--payways">
69
+ {{> payments-checkout-v2 }}
24
70
  </div>
25
- {{/if}}
26
- {{#if clearpay-placement}}
27
- {{> clearpay applyMargin=true hasKlarna=true}}
28
- {{/if}}
29
- {{#unless basket}}
30
- <div class="summary__payment footer-checkout">
31
- {{#unless merged}}
32
- {{#if paymentsCheckoutV2 }}
33
- <div class="footer-checkout-holder footer-checkout-holder--payways">
34
- {{> payments-checkout-v2 }}
35
- </div>
36
- {{else}}
37
- <div class="footer-checkout-holder">
38
- {{> payments-checkout clearPayIcon="true" }}
39
- <span class="footer-checkout__copyright">Copyright © <span class="current-year"></span> Wickes.co.uk</span>
40
- </div>
41
- {{/if}}
42
- {{else}}
43
- <div class="summary__payment-message">
44
- <p class="summary__payment-main">{{vat-message.main}}</p>
45
- <p class="summary__payment-additional">{{vat-message.additional}}</p>
46
- </div>
47
- {{/unless}}
71
+ {{else}}
72
+ <div class="footer-checkout-holder">
73
+ {{> payments-checkout clearPayIcon="true" }}
74
+ <span class="footer-checkout__copyright">Copyright © <span class="current-year"></span> Wickes.co.uk</span>
48
75
  </div>
76
+ {{/if}}
77
+ {{else}}
78
+ <div class="summary__payment-message">
79
+ <p class="summary__payment-main">{{vat-message.main}}</p>
80
+ <p class="summary__payment-additional">{{vat-message.additional}}</p>
81
+ </div>
49
82
  {{/unless}}
50
- </div>
83
+ </div>
84
+ {{/unless}}
85
+ </div>
51
86
 
52
- {{#if basket-id}}
53
- <div class="summary__basked-id">
54
- Basket ID: <span class="id-number">136589003</span>
55
- </div>
56
- {{/if}}
87
+ {{#if basket-id}}
88
+ <div class="summary__basked-id">
89
+ Basket ID: <span class="id-number">136589003</span>
90
+ </div>
91
+ {{/if}}
57
92
 
58
- {{#if email}}
59
- <div class="summary__email">
60
- <h3 class="heading-3">Email</h3>
61
- <div class="summary__email-info">
62
- Examplemail@wickes.co.uk
63
- </div>
64
- </div>
65
- {{/if}}
93
+ {{#if email}}
94
+ <div class="summary__email">
95
+ <h3 class="heading-3">Email</h3>
96
+ <div class="summary__email-info">
97
+ Examplemail@wickes.co.uk
98
+ </div>
99
+ </div>
100
+ {{/if}}
66
101
  </div>
@@ -3,6 +3,10 @@
3
3
  <div class="col-md-12 pl-0">
4
4
  <div class="row">
5
5
  <div class="col-md-7 signup-tradepro-wrap">
6
+ {{#if fill-remaining}}
7
+ {{> notifications notification-page.warning classModifier="notification_warning fill-remaining fill-remaining--local"
8
+ text="Please fill in the remaining fields below, in order to create your account."}}
9
+ {{/if}}
6
10
  <form class="signup-tradepro form-bg">
7
11
  <div class="signup-tradepro__row">
8
12
  <div class="signup-tradepro__descr">
@@ -0,0 +1,17 @@
1
+ <div class="summary__mobile-bar" data-sticky-element>
2
+ <div class="summary__mobile-order collapsed"
3
+ data-toggle="collapse"
4
+ aria-expanded="false"
5
+ data-target="#checkout-summary-mobile-accordion-{{id}}">
6
+ <div class="summary__mobile-container container">
7
+ <span class="summary__mobile-bar-label">Order Summary</span>
8
+ <div class="summary__icon-container">
9
+ <span class="summary__mobile-bar-total">{{ total.value }}</span>
10
+ <span class="summary__icon summary__icon-up">
11
+ <i class="fal fa-angle-up fa-2x"></i>
12
+ </span>
13
+ </div>
14
+ </div>
15
+ </div>
16
+ {{> checkout-action container="true" hidePaypalEmail="true"}}
17
+ </div>
@@ -9,7 +9,7 @@
9
9
  "mod": "bold"
10
10
  },
11
11
  {
12
- "title": "Includes VAT:",
12
+ "title": "VAT:",
13
13
  "value": "£71.66",
14
14
  "mod": "vat"
15
15
  },
@@ -78,8 +78,10 @@
78
78
  "title": "Wickes General Purpose Claw \nHammer - 16oz",
79
79
  "code": "123123",
80
80
  "price": "16",
81
+ "priceExcVat": "15",
81
82
  "quantity": 2,
82
83
  "total": "32",
84
+ "totalExcVat": "30",
83
85
  "offers": [
84
86
  "Buy 2 for 3 — Add 1 to qualify",
85
87
  "Buy 2 for 3 — Add 1 to qualify"
@@ -87,6 +89,9 @@
87
89
  "pricePerSQM": {
88
90
  "value": "12"
89
91
  },
92
+ "pricePerSQMExcVat": {
93
+ "value": "10"
94
+ },
90
95
  "message": "Purchased 12 times since your last visit 1 day ago",
91
96
  "click-and-collect": {
92
97
  "store": "Watford",
@@ -328,8 +333,10 @@
328
333
  "title": "Wickes General Purpose Claw \nHammer - 16oz asd asd asd as das d asd as as d",
329
334
  "code": "123124",
330
335
  "price": "16",
336
+ "priceExcVat": "15",
331
337
  "quantity": 123,
332
338
  "total": "19776",
339
+ "totalExcVat": "19000",
333
340
  "message": "Purchased 12 times since your last visit 1 day ago",
334
341
  "click-and-collect": {
335
342
  "otherStores": [
@@ -561,8 +568,10 @@
561
568
  "title": "Wickes General Purpose Claw \nHammer - 16oz asdasd as das da sd as daasd as das as sd asa",
562
569
  "code": "123125",
563
570
  "price": "16",
571
+ "priceExcVat": "15",
564
572
  "quantity": 2,
565
573
  "total": "32",
574
+ "totalExcVat": "30",
566
575
  "click-and-collect": {
567
576
  "otherStores": [
568
577
  {
@@ -792,6 +801,9 @@
792
801
  "title": "Wickes General Purpose Claw test",
793
802
  "code": "123126",
794
803
  "price": "16",
804
+ "priceExcVat": "15",
805
+ "total": "32",
806
+ "totalExcVat": "30",
795
807
  "quantity": 1,
796
808
  "totalMobile": "16",
797
809
  "click-and-collect": {
@@ -1029,8 +1041,10 @@
1029
1041
  "title": "Wickes General Purpose Claw \nHammer - 16oz",
1030
1042
  "code": "123127",
1031
1043
  "price": "16",
1044
+ "priceExcVat": "15",
1032
1045
  "quantity": 2,
1033
1046
  "total": "32",
1047
+ "totalExcVat": "30",
1034
1048
  "offers": [
1035
1049
  "Buy 2 for 3 — Add 1 to qualify",
1036
1050
  "Buy 2 for 3 — Add 1 to qualify"
@@ -1046,8 +1060,10 @@
1046
1060
  "title": "Wickes General Purpose Claw \nHammer - 16oz asd asd asd as das d asd as as d",
1047
1061
  "code": "123128",
1048
1062
  "price": "16",
1063
+ "priceExcVat": "15",
1049
1064
  "quantity": 123,
1050
1065
  "total": "19776",
1066
+ "totalExcVat": "19000",
1051
1067
  "message": "Purchased 12 times since your last visit 1 day ago",
1052
1068
  "address": "Watford",
1053
1069
  "updateable": true
@@ -1059,8 +1075,10 @@
1059
1075
  "title": "Wickes General Purpose Claw \nHammer - 16oz asdasd as das da sd as daasd as das as sd asa",
1060
1076
  "code": "123129",
1061
1077
  "price": "16",
1078
+ "priceExcVat": "15",
1062
1079
  "quantity": 2,
1063
1080
  "total": "32",
1081
+ "totalExcVat": "30",
1064
1082
  "updateable": true
1065
1083
 
1066
1084
  },
@@ -1069,7 +1087,9 @@
1069
1087
  "image": "./img/tile-buying-guide.jpg",
1070
1088
  "title": "Wickes General Purpose Claw test",
1071
1089
  "price": "16",
1090
+ "priceExcVat": "15",
1072
1091
  "total": "32",
1092
+ "totalExcVat": "30",
1073
1093
  "code": "1231210",
1074
1094
  "quantity": 1,
1075
1095
  "totalMobile": "16",
@@ -1080,7 +1100,9 @@
1080
1100
  "image": "./img/tile-buying-guide.jpg",
1081
1101
  "title": "Wickes General Purpose Claw test",
1082
1102
  "price": "0",
1103
+ "priceExcVat": "0",
1083
1104
  "total": "0",
1105
+ "totalExcVat": "0",
1084
1106
  "updateable": false,
1085
1107
  "code": "1231211",
1086
1108
  "quantity": 1,
@@ -1094,9 +1116,11 @@
1094
1116
  "image": "./img/tile-buying-guide.jpg",
1095
1117
  "title": "Euramax Carolina 2 Sidelight Right Hand Hung uPVC White Door Set - 2085 x 1520mm",
1096
1118
  "price": "968",
1119
+ "priceExcVat": "960",
1097
1120
  "code": "121570",
1098
1121
  "quantity": 1,
1099
1122
  "total": "968",
1123
+ "totalExcVat": "960",
1100
1124
  "deliveryStock": true,
1101
1125
  "onlyDeliveryType": true
1102
1126
  }
@@ -21,4 +21,18 @@ $(document).ready(function () {
21
21
  if (navigator.userAgent.match(/TradeProMobile_iOS|TradeProMobile_Android|DIYMobile_iOS|DIYMobile_Android/i)) {
22
22
  $('body').addClass('tp-app');
23
23
  }
24
- });
24
+ });
25
+
26
+ $(function() {
27
+ if (Wick.isTradeProAndroid) {
28
+ $('body').addClass('tp-android');
29
+ }
30
+ if (Wick.isTradeProiOS) {
31
+ $('body').addClass('tp-ios');
32
+ if (
33
+ window.matchMedia('(min-width: 768px)').matches
34
+ ) {
35
+ $('body').addClass('tp-ios-notch');
36
+ }
37
+ }
38
+ });
@@ -43,7 +43,7 @@ Wick.BasketData = (function () {
43
43
  "status": 400,
44
44
  "responseJSON": {
45
45
  "globalMessage": {
46
- "message": "Delivery is already free. Coupon can’t be applied",
46
+ "message": "Delivery is already free.\nCoupon can’t be applied."
47
47
  }
48
48
  }
49
49
  },
@@ -444,7 +444,7 @@ Wick.BasketData = (function () {
444
444
  "appliedOrderPromotions": [],
445
445
  "promotionsInfo": null,
446
446
  "clickAndCollectOnly": true,
447
- "deliveryItemsQuantity": 0,
447
+ "deliveryItemsQuantity": 1,
448
448
  "pickupItemsQuantity": 2,
449
449
  "freeDelivery": false,
450
450
  "subtotalWithoutCharity": {"value": 19.0, "formattedValue": "£19.00", "currencyIso": "GBP", "formattedPriceWithoutCurrencySymbol": "19.00"},
@@ -0,0 +1,22 @@
1
+ const summaryMobileEl = {
2
+ summaryAside: '.summary__aside',
3
+ backToTop : '#back-to-top',
4
+ canDisplayPayPal: '#canDisplayPayPalOnBasketPage',
5
+ };
6
+
7
+ export function addClassToSummaryAside(data) {
8
+ const payPalEnabled = data?.paymentInfos?.payPalEnabled;
9
+ const clickAndCollectOnly = data.clickAndCollectOnly;
10
+ const canDisplayPayPal = $(summaryMobileEl.canDisplayPayPal).val() === 'true';
11
+ const isPayPalAllowed = payPalEnabled && clickAndCollectOnly && canDisplayPayPal;
12
+ const $aside = $(summaryMobileEl.summaryAside);
13
+ const $backToTop = $(summaryMobileEl.backToTop);
14
+
15
+ if (isPayPalAllowed === false) {
16
+ $aside.addClass('single-button');
17
+ $backToTop.addClass('single-button');
18
+ } else {
19
+ $aside.removeClass('single-button');
20
+ $backToTop.removeClass('single-button');
21
+ }
22
+ }
@@ -29,6 +29,8 @@ import {
29
29
  } from './basket/session-sync'
30
30
  import {displayEnergyEfficiency} from "./basket/display-energy-efficiency";
31
31
  import {appendLoader, hideLoader, showLoader} from "./utils/loader";
32
+ import {addClassToSummaryAside} from "./basket/summary-mobile";
33
+ import { initStickyObserver } from './components/sticky-order-observer';
32
34
 
33
35
  var Wick = window.Wick || {};
34
36
  Wick.BasketPage = {
@@ -384,6 +386,7 @@ Wick.BasketPage = {
384
386
  } else {
385
387
  if (initial) {
386
388
  Wick.BasketPage.getCartEntries(Wick.BasketData.updateCart);
389
+ addClassToSummaryAside(Wick.BasketData.updateCart);
387
390
  const initialTotalPrice = Wick.BasketData.updateCart.totalPrice.value;
388
391
  updateClearpayVisibility(initialTotalPrice);
389
392
  } else {
@@ -405,6 +408,7 @@ Wick.BasketPage = {
405
408
  updateClearpayPlacements(Wick.BasketData.updateCart.totalPrice.value);
406
409
  updateClearpayVisibility(Wick.BasketData.updateCart.totalPrice.value);
407
410
  Wick.BasketPage.addPotentialPromo(Wick.BasketData.updateCart);
411
+ addClassToSummaryAside(Wick.BasketData.updateCart);
408
412
  Wick.BasketPage.getCartEntries(Wick.BasketData.updateCart);
409
413
  Wick.BasketPage.checkProductArrays(Wick.BasketData.updateCart) || Wick.BasketPage.removeOrderItem(repaintData);
410
414
  updateBasketSession();
@@ -415,6 +419,7 @@ Wick.BasketPage = {
415
419
  },
416
420
  updateCartAction: function (response, info) {
417
421
  updateClearpayVisibility(response.totalPrice.value)
422
+ addClassToSummaryAside(response)
418
423
  if (info.initial) {
419
424
  Wick.BasketPage.getCartEntries(response);
420
425
  } else {
@@ -1257,6 +1262,9 @@ Wick.BasketPage = {
1257
1262
  $(Wick.BasketPage.el.content).find(quantityButton).prop('disabled', false);
1258
1263
  }
1259
1264
  };
1265
+
1266
+ $(document).on('cartUpdate', initStickyObserver);
1267
+
1260
1268
  $(document).ready(function () {
1261
1269
  function init() {
1262
1270
 
@@ -1291,6 +1299,11 @@ $(document).ready(function () {
1291
1299
 
1292
1300
  $(Wick.BasketPage.el.voucherRemove).unbind('click');
1293
1301
  Wick.BasketPage.paintActionButton();
1302
+ initStickyObserver(
1303
+ $('[data-sticky-observe]'),
1304
+ $('[data-sticky-element]'),
1305
+ '.summary__aside.collapse.show'
1306
+ );
1294
1307
  Wick.BasketPage.updateCart(...Array(3), true);
1295
1308
  setDefaultCharityValue();
1296
1309
  if (!$(Wick.BasketPage.el.loader).length) {
@@ -1,4 +1,5 @@
1
1
  import {updateDiscount} from "./discounts";
2
+ import {addClassToSummaryAside} from "../basket/summary-mobile";
2
3
 
3
4
  const osEl = {
4
5
  $summarySection: $('.summary'),
@@ -9,9 +10,9 @@ const osEl = {
9
10
  itemFree: '.checkout-widget__item-free',
10
11
  itemDeficit: '.checkout-widget__item-deficit',
11
12
  summaryDelivery: '.checkout-widget__item-delivery',
13
+ summaryMobileTotal: '.summary__mobile-bar-total',
12
14
  }
13
15
 
14
-
15
16
  export function updateOrderSummary(data, equalMap, isVoucher) {
16
17
  equalMap.forEach((obj) => {
17
18
  if ($(obj.item).length) {
@@ -32,9 +33,12 @@ export function updateOrderSummary(data, equalMap, isVoucher) {
32
33
  }
33
34
  })
34
35
 
36
+ const value = data.totalPrice?.formattedValue || data.total;
37
+
35
38
  updateDiscount(data, isVoucher);
36
39
  hideUnusedDeliveryTypeCost(data, isVoucher);
37
40
  calculateFreeDelivery(data);
41
+ updateSummaryMobileBarTotal(value);
38
42
  }
39
43
 
40
44
  function createCheckoutWidgetItem(obj) {
@@ -97,3 +101,6 @@ function calculateFreeDelivery(data) {
97
101
  })
98
102
  }
99
103
 
104
+ function updateSummaryMobileBarTotal(formattedValue) {
105
+ $(osEl.summaryMobileTotal).text(formattedValue);
106
+ }