wickes-css2 2.94.0-develop.2 → 2.94.0-develop.20
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 +4 -5
- 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/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/my-account-v2.css +1 -1
- package/build/css/pages/my-account.css +1 -1
- package/build/css/pages/page_checkout_delivery-new.css +1 -1
- package/build/css/pages/page_default-store.css +1 -0
- package/build/css/pages/page_my-orders.css +1 -0
- package/build/css/pages/page_personal-details.css +1 -1
- package/build/css/pages/page_product-details-v2-critical.css +1 -1
- package/build/css/pages/page_product-details-v2.css +1 -1
- package/build/css/pages/page_products-list-combined.css +1 -1
- package/build/css/pages/page_products-list.css +1 -1
- package/build/css/pages/page_shopping-cart-v2.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/js/account-members.min.js +1 -1
- package/build/js/basket.min.js +2 -2
- package/build/js/bundle.min.js +1 -1
- package/build/js/checkout.min.js +2 -2
- package/build/js/default-store.min.js +1 -0
- package/build/js/emulation.min.js +153 -5
- package/build/js/general.bundle.min.js +1 -1
- package/build/js/merged-checkout.min.js +2 -2
- package/build/js/my-orders.min.js +1 -0
- package/build/js/page/basket/summary-mobile.js +22 -0
- package/build/js/page/basket-v2.js +20 -6
- package/build/js/page/components/order-summary.js +8 -1
- package/build/js/page/components/sticky-order-observer.js +49 -0
- package/build/js/page/components/voucher.js +1 -1
- package/build/js/page/default-store.js +44 -0
- package/build/js/page/my-orders.js +165 -0
- package/build/js/page/personal-details.js +105 -36
- 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 -1
- package/package.json +2 -10
- package/src/components/account-families/actions-bar.hbs +3 -3
- package/src/components/checkout-action.hbs +14 -11
- package/src/components/checkout-voucher-accordion.hbs +15 -0
- package/src/components/checkout_order-summary-new.hbs +5 -3
- package/src/components/checkout_voucher_large.hbs +20 -16
- package/src/components/default-store/current-store.hbs +60 -0
- package/src/components/default-store/list-of-store.hbs +39 -0
- package/src/components/default-store/store-form.hbs +29 -0
- package/src/components/default-store/store-unavailable.hbs +4 -0
- package/src/components/flatpickr-calendar.hbs +26 -0
- package/src/components/my-account/active-orders/header.hbs +6 -2
- package/src/components/my-account/active-orders/list-orders.hbs +14 -2
- package/src/components/my-account/active-orders/order-header.hbs +1 -1
- package/src/components/my-account/active-orders/order.hbs +10 -6
- package/src/components/my-account/clipboard-code-card.hbs +1 -1
- package/src/components/my-account/empty-orders.hbs +9 -0
- package/src/components/my-account/mobile-nav.hbs +23 -19
- package/src/components/my-account/orders-nav.hbs +15 -0
- package/src/components/my-account/personal-details-form.hbs +5 -0
- package/src/components/my-account/sort-by.hbs +3 -0
- package/src/components/my-account/user-account-actions.hbs +1 -1
- package/src/components/order-summary.hbs +91 -56
- package/src/components/signup-form.hbs +1 -2
- package/src/components/store-details.hbs +22 -20
- package/src/components/store-preview.hbs +0 -11
- package/src/components/summary-mobile-bar.hbs +17 -0
- package/src/components/user-information-field.hbs +1 -1
- package/src/data/data_big-wins-stores.json +0 -22
- package/src/data/data_delivery-address-v2.json +1 -1
- package/src/data/my-account/data_my-orders.json +246 -0
- package/src/data/my-account/data_personal-details.json +36 -11
- package/src/data/my-account/page_default-store.json +158 -0
- package/src/elements/dropdown.hbs +1 -1
- package/src/elements/input.hbs +2 -2
- package/src/js/components/flatpickr.js +167 -0
- package/src/js/components/general/handleAccordion.js +35 -0
- package/src/js/components/general/is-trade-pro.js +15 -1
- package/src/js/components/general/switchVat.js +1 -1
- package/src/js/components/leave-event.js +41 -2
- package/src/js/emulation/basket-data.js +2 -2
- package/src/js/emulation/big-wins.js +0 -2
- package/src/js/emulation/default-store.js +97 -0
- package/src/js/emulation/forms.js +1 -1
- package/src/js/emulation/mock.js +10 -0
- package/src/js/emulation/my-orders-local.js +41 -0
- package/src/js/page/basket/summary-mobile.js +22 -0
- package/src/js/page/basket-v2.js +20 -6
- package/src/js/page/components/order-summary.js +8 -1
- package/src/js/page/components/sticky-order-observer.js +49 -0
- package/src/js/page/components/voucher.js +1 -1
- package/src/js/page/default-store.js +44 -0
- package/src/js/page/my-orders.js +165 -0
- package/src/js/page/personal-details.js +105 -36
- package/src/layouts/basket-new.hbs +1 -1
- package/src/layouts/checkout-new.hbs +1 -0
- package/src/page_checkout_confirmation-new-marketing-consent-error.html +0 -2
- package/src/page_checkout_delivery-address-customer-journey.html +0 -5
- package/src/page_checkout_delivery-address-v2.html +0 -4
- package/src/page_checkout_delivery-details-v2-asm.html +1 -5
- package/src/page_checkout_delivery-details-v2-calendar-message.html +0 -3
- package/src/page_checkout_delivery-details-v2-oos.html +0 -3
- package/src/page_checkout_delivery-details-v2-wisdom-not-available.html +0 -5
- package/src/page_checkout_delivery-details-v2-wisdom.html +0 -5
- package/src/page_checkout_delivery-details-with-loader-v2.html +0 -3
- package/src/page_checkout_delivery-details_guest-new.html +0 -5
- package/src/page_checkout_delivery_address-asm-new.html +0 -4
- package/src/page_checkout_next-day-delivery-details.html +0 -6
- package/src/page_checkout_payment-details-v2.html +1 -1
- package/src/page_checkout_payment-details_guest-with-checkout-journey.html +0 -2
- package/src/page_checkout_payment-details_login-with-checkout-journey.html +0 -2
- package/src/page_checkout_payment-details_with-card-loader.html +56 -0
- package/src/page_checkout_rapid-delivery-details.html +0 -6
- package/src/page_default-store-page-empty.html +48 -0
- package/src/page_default-store-page.html +55 -0
- package/src/page_klarna_payment-details_with-klarna.html +3 -6
- package/src/page_my-orders-empty.html +49 -0
- package/src/page_my-orders.html +64 -0
- package/src/page_payment-details-with-clearpay.html +1 -1
- package/src/page_payment-details_with_apple-pay.html +1 -1
- package/src/page_payment-details_with_google-pay.html +1 -1
- package/src/page_personal-details-installer.html +17 -7
- package/src/page_personal-details.html +15 -7
- package/src/page_shopping-cart-v2.html +6 -16
- package/src/scss/barclays-paypage-combined-minified.css +1 -1
- package/src/scss/barclays-paypage-combined.css +9 -15
- package/src/scss/components/_big-wins-critical.scss +0 -1
- package/src/scss/components/_big-wins.scss +1 -8
- package/src/scss/components/_checkout-action.scss +132 -6
- package/src/scss/components/_order-item-cc.scss +0 -6
- package/src/scss/components/_order-summary.scss +329 -178
- package/src/scss/components/_sticky-element-appearance.scss +25 -0
- package/src/scss/components/checkout-payment-details-v2.scss +2 -2
- package/src/scss/components/my-account/_active-orders.scss +263 -0
- package/src/scss/components/my-account/_orders-nav.scss +61 -0
- package/src/scss/components/my-account/_shipment.scss +1 -0
- package/src/scss/helpers/_variables.scss +3 -0
- package/src/scss/libs/flatpickr.scss +235 -0
- package/src/scss/main.scss +1 -0
- package/src/scss/pages/_checkout-widget.scss +137 -28
- package/src/scss/pages/_my-account_new.scss +1 -12
- package/src/scss/pages/my-account-v2.scss +1 -136
- package/src/scss/pages/page_checkout_delivery-new.scss +119 -10
- package/src/scss/pages/page_default-store.scss +634 -0
- package/src/scss/pages/page_my-orders.scss +232 -0
- package/src/scss/pages/page_personal-details.scss +37 -5
- package/src/scss/pages/page_products-list-combined.scss +0 -1
- package/src/scss/pages/page_products-list.scss +0 -1
- package/src/scss/pages/page_shopping-cart-v2.scss +137 -36
- package/src/scss/partials/_header.scss +5 -0
- package/src/sitemap.html +6 -0
- package/src/scss/components/my-account/_order.scss +0 -112
package/src/js/emulation/mock.js
CHANGED
|
@@ -10,5 +10,15 @@ Wick.FEMock = {
|
|
|
10
10
|
"page": 2,
|
|
11
11
|
"html": '<div class="card product-card " data-product-code="177473"> <div id="product_item_code_177473" class="card__inner card__inner-v2"> <div class="products-list-v2__badges price__badges-v2 price__badges-v2-red price__badges-v2-text-white"> <div class="products-list-v2__badge">2 for £34</div> </div> <a href="/" class="card__img-wrap" title="Dulux"> <img loading="lazy" class="card__img-v2" src="//media.wickes.co.uk/is/image/wickes/GPID_1100360630_00?$normal$" alt="Dulux" title="Dulux"> </a> <div class="product-card__content"> <div class="product-card__header"> <a href="/" class="product-card__title product-card__title-v2" title="Dulux">Dulux Silk Emulsion Paint - 61</a> <div class="product-card__reviews product-card__reviews-v2"> <div class="product-rating product-rating-v2"> <div class="rating-bg"> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <div class="rating-overlay" data-rating="4.9"> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> </div> </div> (41) </div> </div></div> <div class=" product-card__price "> <div class="product-card__price__old-price product-card__price_empty"> </div> <div class="main-price"> <div class="main-price__value product-card__price-value "> £22</div> </div> <div class="product-card__price-sqm"> £8.80 per L</div> </div> <div class="energy-efficiency energy-efficiency--empty"> <div class="energy-efficiency__link"> </div> </div> </div> </div> </div> <div class="card product-card " data-product-code="116987"> <div id="product_item_code_116987" class="card__inner card__inner-v2"> <div class="products-list-v2__badges price__badges-v2 price__badges-v2-red price__badges-v2-text-white"> <div class="products-list-v2__badge">2 for £34</div> </div> <a href="/" class="card__img-wrap" title="Dulux"> <img loading="lazy" class="card__img-v2" src="//media.wickes.co.uk/is/image/wickes/I9026_116987_00?$normal$" alt="Dulux" title="Dulux"> </a> <div class="product-card__content"> <div class="product-card__header"> <a href="/" class="product-card__title product-card__title-v2" title="Dulux">Dulux Matt Emulsion Paint - 62</a> <div class="product-card__reviews product-card__reviews-v2"> <div class="product-rating product-rating-v2"> <div class="rating-bg"> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <div class="rating-overlay" data-rating="4.8"> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> </div> </div> (58) </div> </div></div> <div class=" product-card__price "> <div class="product-card__price__old-price product-card__price_empty"> </div> <div class="main-price"> <div class="main-price__value product-card__price-value "> £22</div> </div> <div class="product-card__price-sqm"> £8.80 per L</div> </div> <div class="energy-efficiency energy-efficiency--empty"> <div class="energy-efficiency__link"> </div> </div> </div> </div> </div> <div class="card product-card " data-product-code="122385"> <div id="product_item_code_122385" class="card__inner card__inner-v2"> <a href="/" class="card__img-wrap" title="Wickes"> <img loading="lazy" class="card__img-v2" src="//media.wickes.co.uk/is/image/wickes/O0814_122385_00?$normal$" alt="Wickes" title="Wickes"> </a> <div class="product-card__content"> <div class="product-card__header"> <a href="/" class="product-card__title product-card__title-v2" title="Wickes">Wickes Vinyl Silk Emulsion Paint - 63</a> <div class="product-card__reviews product-card__reviews-v2"> <div class="product-rating product-rating-v2"> <div class="rating-bg"> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <div class="rating-overlay" data-rating="4.8"> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> </div> </div> (74) </div> </div></div> <div class=" product-card__price "> <div class="product-card__price__old-price product-card__price_empty"> </div> <div class="main-price"> <div class="main-price__value product-card__price-value "> £15</div> </div> <div class="product-card__price-sqm"> £6 per L</div> </div> <div class="energy-efficiency energy-efficiency--empty"> <div class="energy-efficiency__link"> </div> </div> </div> </div> </div> <div class="card product-card " data-product-code="122195"> <div id="product_item_code_122195" class="card__inner card__inner-v2"> <a href="/" class="card__img-wrap" title="Wickes"> <img loading="lazy" class="card__img-v2" src="//media.wickes.co.uk/is/image/wickes/O0814_122195_00?$normal$" alt="Wickes" title="Wickes"> </a> <div class="product-card__content"> <div class="product-card__header"> <a href="/" class="product-card__title product-card__title-v2" title="Wickes">Wickes Vinyl Matt Emulsion Paint - 64</a> <div class="product-card__reviews product-card__reviews-v2"> <div class="product-rating product-rating-v2"> <div class="rating-bg"> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <div class="rating-overlay" data-rating="4.7"> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> </div> </div> (88) </div> </div></div> <div class=" product-card__price "> <div class="product-card__price__old-price product-card__price_empty"> </div> <div class="main-price"> <div class="main-price__value product-card__price-value "> £15</div> </div> <div class="product-card__price-sqm"> £6 per L</div> </div> <div class="energy-efficiency energy-efficiency--empty"> <div class="energy-efficiency__link"> </div> </div> </div> </div> </div> <div class="card product-card " data-product-code="122300"> <div id="product_item_code_122300" class="card__inner card__inner-v2"> <a href="/" class="card__img-wrap" title="Wickes"> <img loading="lazy" class="card__img-v2" src="//media.wickes.co.uk/is/image/wickes/O0814_122300_00?$normal$" alt="Wickes" title="Wickes"> </a> <div class="product-card__content"> <div class="product-card__header"> <a href="/" class="product-card__title product-card__title-v2" title="Wickes">Wickes Vinyl Matt Emulsion Paint - 65</a> <div class="product-card__reviews product-card__reviews-v2"> <div class="product-rating product-rating-v2"> <div class="rating-bg"> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <i class="fa fa-star star-in" aria-hidden="true"></i> <div class="rating-overlay" data-rating="4.8"> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> <span class="star-overlay"> <i class="fa fa-star" aria-hidden="true"></i> </span> </div> </div> (61) </div> </div></div> <div class=" product-card__price "> <div class="product-card__price__old-price product-card__price_empty"> </div> <div class="main-price"> <div class="main-price__value product-card__price-value "> £15</div> </div> <div class="product-card__price-sqm"> £6 per L</div> </div> <div class="energy-efficiency energy-efficiency--empty"> <div class="energy-efficiency__link"> </div> </div> </div> </div> </div>'
|
|
12
12
|
}
|
|
13
|
+
],
|
|
14
|
+
orders: [
|
|
15
|
+
{
|
|
16
|
+
"page": 1,
|
|
17
|
+
"html": '<article class="active-orders__item"><header class="order-header"><h3 class="order-header__title">Order 940564000</h3><div class="order-status completed"><svg class="svg-inline--fa fa-check-circle fa-w-16 icon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check-circle" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z"></path></svg><span>Complete</span></div></header><section class="order-details"><div class="order-details__summary"><span class="order-details__price">£92.75</span> <span class="order-details__count">7 item(s)</span></div><time class="order-details__date" datetime="21st November 2024 4:32 PM">21st November 2024 4:32 PM</time></section><div class="view-more"><a class="link" href="/"><span>View More</span> <svg class="svg-inline--fa fa-arrow-right fa-w-14 icon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="arrow-right" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"></path></svg></a></div></article><article class="active-orders__item"><header class="order-header"><h3 class="order-header__title">Order 940520023</h3><div class="order-status cancelled"><svg class="svg-inline--fa fa-times fa-w-10 icon" aria-hidden="true" focusable="false" data-prefix="far" data-icon="times" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" data-fa-i2svg=""><path fill="currentColor" d="M207.6 256l107.72-107.72c6.23-6.23 6.23-16.34 0-22.58l-25.03-25.03c-6.23-6.23-16.34-6.23-22.58 0L160 208.4 52.28 100.68c-6.23-6.23-16.34-6.23-22.58 0L4.68 125.7c-6.23 6.23-6.23 16.34 0 22.58L112.4 256 4.68 363.72c-6.23 6.23-6.23 16.34 0 22.58l25.03 25.03c6.23 6.23 16.34 6.23 22.58 0L160 303.6l107.72 107.72c6.23 6.23 16.34 6.23 22.58 0l25.03-25.03c6.23-6.23 6.23-16.34 0-22.58L207.6 256z"></path></svg><span>Cancelled</span></div></header><section class="order-details"><div class="order-details__summary"><span class="order-details__price">£32.00</span> <span class="order-details__count">1 item(s)</span></div><time class="order-details__date" datetime="28th October 2024 7:29 AM">28th October 2024 7:29 AM</time></section><div class="view-more"><a class="link" href="/"><span>View More</span> <svg class="svg-inline--fa fa-arrow-right fa-w-14 icon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="arrow-right" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"></path></svg></a></div></article>'
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"page": 2,
|
|
21
|
+
"html": '<article class="active-orders__item"><header class="order-header"><h3 class="order-header__title">Order 940564001</h3><div class="order-status completed"><svg class="svg-inline--fa fa-check-circle fa-w-16 icon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check-circle" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M504 256c0 136.967-111.033 248-248 248S8 392.967 8 256 119.033 8 256 8s248 111.033 248 248zM227.314 387.314l184-184c6.248-6.248 6.248-16.379 0-22.627l-22.627-22.627c-6.248-6.249-16.379-6.249-22.628 0L216 308.118l-70.059-70.059c-6.248-6.248-16.379-6.248-22.628 0l-22.627 22.627c-6.248 6.248-6.248 16.379 0 22.627l104 104c6.249 6.249 16.379 6.249 22.628.001z"></path></svg><span>Complete</span></div></header><section class="order-details"><div class="order-details__summary"><span class="order-details__price">£92.75</span> <span class="order-details__count">7 item(s)</span></div><time class="order-details__date" datetime="21st November 2024 4:32 PM">21st November 2024 4:32 PM</time></section><div class="view-more"><a class="link" href="/"><span>View More</span> <svg class="svg-inline--fa fa-arrow-right fa-w-14 icon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="arrow-right" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"></path></svg></a></div></article><article class="active-orders__item"><header class="order-header"><h3 class="order-header__title">Order 940520002</h3><div class="order-status cancelled"><svg class="svg-inline--fa fa-times fa-w-10 icon" aria-hidden="true" focusable="false" data-prefix="far" data-icon="times" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512" data-fa-i2svg=""><path fill="currentColor" d="M207.6 256l107.72-107.72c6.23-6.23 6.23-16.34 0-22.58l-25.03-25.03c-6.23-6.23-16.34-6.23-22.58 0L160 208.4 52.28 100.68c-6.23-6.23-16.34-6.23-22.58 0L4.68 125.7c-6.23 6.23-6.23 16.34 0 22.58L112.4 256 4.68 363.72c-6.23 6.23-6.23 16.34 0 22.58l25.03 25.03c6.23 6.23 16.34 6.23 22.58 0L160 303.6l107.72 107.72c6.23 6.23 16.34 6.23 22.58 0l25.03-25.03c6.23-6.23 6.23-16.34 0-22.58L207.6 256z"></path></svg><span>Cancelled</span></div></header><section class="order-details"><div class="order-details__summary"><span class="order-details__price">£32.00</span> <span class="order-details__count">1 item(s)</span></div><time class="order-details__date" datetime="28th October 2024 7:29 AM">28th October 2024 7:29 AM</time></section><div class="view-more"><a class="link" href="/"><span>View More</span> <svg class="svg-inline--fa fa-arrow-right fa-w-14 icon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="arrow-right" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" data-fa-i2svg=""><path fill="currentColor" d="M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"></path></svg></a></div></article>'
|
|
22
|
+
}
|
|
13
23
|
]
|
|
14
24
|
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
function getOrdersHtmlByCurrentPage({currentPage}) {
|
|
2
|
+
const matchingData = Wick.FEMock.orders.find(item => item.page === currentPage);
|
|
3
|
+
return matchingData.html;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
function initMyOrdersEvent() {
|
|
7
|
+
if (!Wick?.MyOrders?.events) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
$(window).on(Wick.MyOrders.events.MONTHLY_VIEW_EVENT, function ({ detail: { resolve, reject, payload } }) {
|
|
12
|
+
setTimeout(() => {
|
|
13
|
+
return resolve({});
|
|
14
|
+
}, 500);
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
$(window).on(Wick.MyOrders.events.SORT_BY_EVENT, function ({ detail: { resolve, reject, payload } }) {
|
|
18
|
+
setTimeout(() => {
|
|
19
|
+
return resolve({url: '/sitemap.html'});
|
|
20
|
+
}, 500);
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
$(window).on(Wick.MyOrders.events.CATEGORY_EVENT, function ({ detail: { resolve, reject, payload } }) {
|
|
24
|
+
setTimeout(() => {
|
|
25
|
+
return resolve({url: '/sitemap.html'});
|
|
26
|
+
}, 500);
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
$(window).on(Wick.MyOrders.events.LOAD_MORE_EVENT, function ({ detail: { resolve, reject, payload } }) {
|
|
30
|
+
setTimeout(() => {
|
|
31
|
+
resolve({
|
|
32
|
+
innerHTML: getOrdersHtmlByCurrentPage(payload),
|
|
33
|
+
callback: () => {}
|
|
34
|
+
});
|
|
35
|
+
}, 1500);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
$(document).ready(function () {
|
|
40
|
+
initMyOrdersEvent();
|
|
41
|
+
});
|
|
@@ -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
|
+
}
|
package/src/js/page/basket-v2.js
CHANGED
|
@@ -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 {
|
|
@@ -739,6 +744,7 @@ Wick.BasketPage = {
|
|
|
739
744
|
|
|
740
745
|
Wick.BasketPage.paintActionButton();
|
|
741
746
|
checkPayPalAvailability(data);
|
|
747
|
+
Wick.VatToggle.reapplyDisplayClass();
|
|
742
748
|
$(document).trigger("cartRerender");
|
|
743
749
|
},
|
|
744
750
|
createBasketSection: function (type, group, data) {
|
|
@@ -848,11 +854,11 @@ Wick.BasketPage = {
|
|
|
848
854
|
? '<span class="order-item__value">FREE</span>'
|
|
849
855
|
: Wick.VatToggle.isToggleVatAvailable()
|
|
850
856
|
? `
|
|
851
|
-
<div class="including-vat
|
|
857
|
+
<div class="including-vat"><!--
|
|
852
858
|
--><span class="order-item__value">${currentItem.basePrice.formattedValue}</span><!--
|
|
853
859
|
--><div class="price-vat">Inc.VAT</div>
|
|
854
860
|
</div>
|
|
855
|
-
<div class="excluding-vat
|
|
861
|
+
<div class="excluding-vat"><!--
|
|
856
862
|
--><span class="order-item__value">${currentItem.basePriceExcVat.formattedValue}</span><!--
|
|
857
863
|
--><div class="price-vat">Exc.VAT</div>
|
|
858
864
|
</div>
|
|
@@ -870,11 +876,11 @@ Wick.BasketPage = {
|
|
|
870
876
|
? '<span class="order-item__value">FREE</span>'
|
|
871
877
|
: Wick.VatToggle.isToggleVatAvailable()
|
|
872
878
|
? `
|
|
873
|
-
<div class="including-vat
|
|
879
|
+
<div class="including-vat"><!--
|
|
874
880
|
--><span class="order-item__value">${currentItem.itemTotalWithoutDiscount.formattedValue}</span><!--
|
|
875
881
|
--><div class="price-vat">Inc.VAT</div><!--
|
|
876
882
|
--></div>
|
|
877
|
-
<div class="excluding-vat
|
|
883
|
+
<div class="excluding-vat"><!--
|
|
878
884
|
--><span class="order-item__value">${currentItem.itemTotalWithoutDiscountExcVat.formattedValue}</span><!--
|
|
879
885
|
--><div class="price-vat">Exc.VAT</div>
|
|
880
886
|
</div>
|
|
@@ -999,11 +1005,11 @@ Wick.BasketPage = {
|
|
|
999
1005
|
${
|
|
1000
1006
|
Wick.VatToggle.isToggleVatAvailable()
|
|
1001
1007
|
? `
|
|
1002
|
-
<div class="including-vat
|
|
1008
|
+
<div class="including-vat"><!--
|
|
1003
1009
|
--><span class="order-item__value">£${item.product.pricePerSqm.formattedPriceWithoutCurrencySymbol}</span><!--
|
|
1004
1010
|
--><div class="price-vat">Inc.VAT</div>
|
|
1005
1011
|
</div>
|
|
1006
|
-
<div class="excluding-vat
|
|
1012
|
+
<div class="excluding-vat"><!--
|
|
1007
1013
|
--><span class="order-item__value">£${item.product.pricePerSqmExcVat.formattedPriceWithoutCurrencySymbol}</span><!--
|
|
1008
1014
|
--><div class="price-vat">Exc.VAT</div>
|
|
1009
1015
|
</div>
|
|
@@ -1256,6 +1262,9 @@ Wick.BasketPage = {
|
|
|
1256
1262
|
$(Wick.BasketPage.el.content).find(quantityButton).prop('disabled', false);
|
|
1257
1263
|
}
|
|
1258
1264
|
};
|
|
1265
|
+
|
|
1266
|
+
$(document).on('cartUpdate', initStickyObserver);
|
|
1267
|
+
|
|
1259
1268
|
$(document).ready(function () {
|
|
1260
1269
|
function init() {
|
|
1261
1270
|
|
|
@@ -1290,6 +1299,11 @@ $(document).ready(function () {
|
|
|
1290
1299
|
|
|
1291
1300
|
$(Wick.BasketPage.el.voucherRemove).unbind('click');
|
|
1292
1301
|
Wick.BasketPage.paintActionButton();
|
|
1302
|
+
initStickyObserver(
|
|
1303
|
+
$('[data-sticky-observe]'),
|
|
1304
|
+
$('[data-sticky-element]'),
|
|
1305
|
+
'.summary__aside.collapse.show'
|
|
1306
|
+
);
|
|
1293
1307
|
Wick.BasketPage.updateCart(...Array(3), true);
|
|
1294
1308
|
setDefaultCharityValue();
|
|
1295
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
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
export function initStickyObserver(observedElements, stickyElements, collapseSelector) {
|
|
2
|
+
let io;
|
|
3
|
+
|
|
4
|
+
const $observed = observedElements instanceof jQuery
|
|
5
|
+
? observedElements
|
|
6
|
+
: $(observedElements);
|
|
7
|
+
|
|
8
|
+
const $sticky = stickyElements instanceof jQuery
|
|
9
|
+
? stickyElements
|
|
10
|
+
: $(stickyElements);
|
|
11
|
+
|
|
12
|
+
if (!$observed.length || !$sticky.length) return;
|
|
13
|
+
|
|
14
|
+
function toggle(hide) {
|
|
15
|
+
$sticky.toggleClass('is-hidden', hide);
|
|
16
|
+
$('body').toggleClass('summary-hidden', hide);
|
|
17
|
+
if (hide) {
|
|
18
|
+
$(collapseSelector).collapse('hide');
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
if ('IntersectionObserver' in window) {
|
|
23
|
+
io = new IntersectionObserver(
|
|
24
|
+
entries => {
|
|
25
|
+
const anyInView = entries.some(e => e.isIntersecting);
|
|
26
|
+
toggle(anyInView);
|
|
27
|
+
},
|
|
28
|
+
{ rootMargin: '0px 0px -20% 0px', threshold: 0 }
|
|
29
|
+
);
|
|
30
|
+
$observed.each((_, el) => io.observe(el));
|
|
31
|
+
} else {
|
|
32
|
+
// Fallback for older browsers
|
|
33
|
+
function check() {
|
|
34
|
+
let anyInView = false;
|
|
35
|
+
$observed.each(function () {
|
|
36
|
+
const r = this.getBoundingClientRect();
|
|
37
|
+
if (r.top < window.innerHeight * 0.8 && r.bottom > 0) {
|
|
38
|
+
anyInView = true;
|
|
39
|
+
return false; // break
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
toggle(anyInView);
|
|
43
|
+
}
|
|
44
|
+
$(window)
|
|
45
|
+
.off('scroll.sticky resize.sticky')
|
|
46
|
+
.on('scroll.sticky resize.sticky', check);
|
|
47
|
+
check();
|
|
48
|
+
}
|
|
49
|
+
}
|
|
@@ -15,7 +15,7 @@ const voucherEl = {
|
|
|
15
15
|
formInvalid: 'form_invalid',
|
|
16
16
|
fieldRow: '.form-row[data-row-required]',
|
|
17
17
|
rowValidationError: 'form-row_validation-error',
|
|
18
|
-
voucherHide: '
|
|
18
|
+
voucherHide: 'checkout-voucher-hide',
|
|
19
19
|
fieldError: '.form-row__error',
|
|
20
20
|
subtotal: '.checkout-widget__item-bold',
|
|
21
21
|
vat: '.checkout-widget__item-vat',
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
var Wick = window.Wick || {};
|
|
2
|
+
|
|
3
|
+
Wick.DefaultStore = {
|
|
4
|
+
HIDDEN_CLASS_NAME: 'd-none',
|
|
5
|
+
el: {
|
|
6
|
+
searchForm: '.search-store',
|
|
7
|
+
$searchInput: $('.search-store #postcode'),
|
|
8
|
+
$btnClear: $('.search-store .btn--clear'),
|
|
9
|
+
$btnSubmit: $('.search-store .btn-search'),
|
|
10
|
+
},
|
|
11
|
+
getPostCode () {
|
|
12
|
+
return Wick.DefaultStore.el.$searchInput.val();
|
|
13
|
+
},
|
|
14
|
+
checkVisibilityOfClearButton () {
|
|
15
|
+
Wick.DefaultStore.el.$btnClear.toggleClass('d-block', Wick.DefaultStore.getPostCode().length > 0);
|
|
16
|
+
},
|
|
17
|
+
updateCollapseState() {
|
|
18
|
+
const dropdowns = $("#openingTimes, #specialTimes, #facilities");
|
|
19
|
+
const btn = $('[data-toggle="collapse"]');
|
|
20
|
+
|
|
21
|
+
if ($(window).width() >= 768) {
|
|
22
|
+
dropdowns.addClass("show");
|
|
23
|
+
if (btn.length) {
|
|
24
|
+
btn.attr("aria-expanded", "true");
|
|
25
|
+
}
|
|
26
|
+
} else {
|
|
27
|
+
dropdowns.removeClass("show");
|
|
28
|
+
if (btn.length) {
|
|
29
|
+
btn.attr("aria-expanded", "false");
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
init () {
|
|
34
|
+
Wick.DefaultStore.updateCollapseState();
|
|
35
|
+
$(window).resize( _.debounce(function () {
|
|
36
|
+
Wick.DefaultStore.updateCollapseState();
|
|
37
|
+
}, 200));
|
|
38
|
+
Wick.DefaultStore.el.$searchInput.on('input', Wick.DefaultStore.checkVisibilityOfClearButton);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
$(document).ready(function () {
|
|
43
|
+
Wick.DefaultStore.init();
|
|
44
|
+
});
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import {createEvent} from "./utils/create-event";
|
|
2
|
+
import {appendLoader, showLoader, hideLoader} from "./utils/loader";
|
|
3
|
+
|
|
4
|
+
var Wick = window.Wick || {};
|
|
5
|
+
|
|
6
|
+
Wick.MyOrders = {
|
|
7
|
+
events: {
|
|
8
|
+
MONTHLY_VIEW_EVENT: 'MONTHLY_VIEW_EVENT',
|
|
9
|
+
SORT_BY_EVENT: 'SORT_BY_EVENT',
|
|
10
|
+
LOAD_MORE_EVENT: 'LOAD_MORE_EVENT',
|
|
11
|
+
CATEGORY_EVENT: 'CATEGORY_EVENT',
|
|
12
|
+
},
|
|
13
|
+
HIDDEN_CLASS_NAME: 'd-none',
|
|
14
|
+
el: {
|
|
15
|
+
$myOrders: $('.my-orders'),
|
|
16
|
+
calendar: '#calendarInputFlatpickr',
|
|
17
|
+
loader: '.loader-wrapper',
|
|
18
|
+
$sortOrders: $('#sort_orders'),
|
|
19
|
+
$chooseDate: $('.flatpickr-datepicker[choose-date]'),
|
|
20
|
+
$showYears: $('.flatpickr-datepicker[show-years]'),
|
|
21
|
+
$desktopTabs: $('.nav-orders .nav-orders__item .link'),
|
|
22
|
+
$mobileTabs: $('.nav-orders .account-nav__link'),
|
|
23
|
+
$loadMoreBtn: $('.btn-load-more'),
|
|
24
|
+
oderList: '.active-orders',
|
|
25
|
+
$activeOrderState: $('.nav-orders .nav-orders__item.active .link')
|
|
26
|
+
},
|
|
27
|
+
initialPageNumber: 0,
|
|
28
|
+
numberOfPagesOrders: $('#numberOfPagesOrders').val(),
|
|
29
|
+
loaderPayload: {
|
|
30
|
+
wrapper: 'body',
|
|
31
|
+
hidden: true,
|
|
32
|
+
modifier: 'basket-loader',
|
|
33
|
+
},
|
|
34
|
+
chooseDate: '',
|
|
35
|
+
showYears: '',
|
|
36
|
+
getChooseDate () {
|
|
37
|
+
const attrValue = Wick.MyOrders.el.$chooseDate.attr('choose-date');
|
|
38
|
+
if (attrValue) {
|
|
39
|
+
Wick.MyOrders.chooseDate = attrValue
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
requestToUpdateOrders (currentEvent, payload) {
|
|
43
|
+
return new Promise((resolve, reject) => {
|
|
44
|
+
const eventDetail = {resolve, reject};
|
|
45
|
+
const event = createEvent(currentEvent, payload, eventDetail);
|
|
46
|
+
window.dispatchEvent(event);
|
|
47
|
+
})
|
|
48
|
+
.then(({url}) => {
|
|
49
|
+
if (!url) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
window.location.href = url;
|
|
54
|
+
})
|
|
55
|
+
.catch((error) => {
|
|
56
|
+
console.error(error);
|
|
57
|
+
});
|
|
58
|
+
},
|
|
59
|
+
loadMore () {
|
|
60
|
+
showLoader(Wick.MyOrders.el.loader);
|
|
61
|
+
|
|
62
|
+
return new Promise((resolve, reject) => {
|
|
63
|
+
const eventDetail = {resolve, reject};
|
|
64
|
+
const payload = {
|
|
65
|
+
currentPage: ++Wick.MyOrders.initialPageNumber,
|
|
66
|
+
sort: Wick.MyOrders.el.$sortOrders.val() || '',
|
|
67
|
+
chooseDate: Wick.MyOrders.chooseDate,
|
|
68
|
+
orderState: Wick.MyOrders.getCurrentOrderState() || ''
|
|
69
|
+
};
|
|
70
|
+
const event = createEvent(Wick.MyOrders.events.LOAD_MORE_EVENT, payload, eventDetail);
|
|
71
|
+
window.dispatchEvent(event);
|
|
72
|
+
})
|
|
73
|
+
.then(({innerHTML, callback}) => {
|
|
74
|
+
if (!innerHTML) {
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
Wick.MyOrders.showNewOrders(innerHTML);
|
|
79
|
+
Wick.MyOrders.toggleLoadMoreBtn();
|
|
80
|
+
|
|
81
|
+
if (callback) {
|
|
82
|
+
callback()
|
|
83
|
+
}
|
|
84
|
+
})
|
|
85
|
+
.finally(() => {
|
|
86
|
+
hideLoader(Wick.MyOrders.el.loader);
|
|
87
|
+
Wick.MyOrders.el.$loadMoreBtn.blur();
|
|
88
|
+
})
|
|
89
|
+
},
|
|
90
|
+
showNewOrders (newProductsHtml) {
|
|
91
|
+
const $newProductsHtml = $(newProductsHtml);
|
|
92
|
+
$(Wick.MyOrders.el.oderList).append($newProductsHtml);
|
|
93
|
+
},
|
|
94
|
+
toggleLoadMoreBtn () {
|
|
95
|
+
if (Wick.MyOrders.initialPageNumber + 1 >= +Wick.MyOrders.numberOfPagesOrders) {
|
|
96
|
+
Wick.MyOrders.el.$loadMoreBtn.addClass(Wick.MyOrders.HIDDEN_CLASS_NAME);
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
getShowYears () {
|
|
100
|
+
const attrValue = Wick.MyOrders.el.$showYears.attr('show-years');
|
|
101
|
+
if (attrValue) {
|
|
102
|
+
Wick.MyOrders.showYears = attrValue
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
initializeFlatpickr () {
|
|
106
|
+
Wick.Flatpickr.init({
|
|
107
|
+
id: Wick.MyOrders.el.calendar,
|
|
108
|
+
currentYear: new Date().getFullYear(),
|
|
109
|
+
minYear: new Date().getFullYear() - Wick.MyOrders.showYears,
|
|
110
|
+
dateFormat: "F Y",
|
|
111
|
+
static: true,
|
|
112
|
+
chooseDate: Wick.MyOrders.chooseDate,
|
|
113
|
+
onChangeCallback: function (dateStr) {
|
|
114
|
+
if (!dateStr || isNaN(new Date(dateStr))) {
|
|
115
|
+
Wick.MyOrders.chooseDate = "";
|
|
116
|
+
} else {
|
|
117
|
+
Wick.MyOrders.chooseDate = dateStr;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
Wick.MyOrders.requestToUpdateOrders(Wick.MyOrders.events.MONTHLY_VIEW_EVENT, { chooseDate: Wick.MyOrders.chooseDate });
|
|
121
|
+
},
|
|
122
|
+
});
|
|
123
|
+
},
|
|
124
|
+
initializeSortOrdersHandler () {
|
|
125
|
+
Wick.MyOrders.el.$sortOrders.on('change', function () {
|
|
126
|
+
const selectedValue = $(this).val();
|
|
127
|
+
Wick.MyOrders.requestToUpdateOrders(Wick.MyOrders.events.SORT_BY_EVENT, { sortBy: selectedValue });
|
|
128
|
+
});
|
|
129
|
+
},
|
|
130
|
+
registerTabClickHandler (tabsElement) {
|
|
131
|
+
tabsElement.on('click', function (e) {
|
|
132
|
+
e.preventDefault();
|
|
133
|
+
const tabId = $(this).attr('id');
|
|
134
|
+
const orderState = tabId ? { orderState: tabId } : '';
|
|
135
|
+
Wick.MyOrders.requestToUpdateOrders(Wick.MyOrders.events.CATEGORY_EVENT, orderState);
|
|
136
|
+
});
|
|
137
|
+
},
|
|
138
|
+
handleCategoryTabClick () {
|
|
139
|
+
Wick.MyOrders.registerTabClickHandler(Wick.MyOrders.el.$desktopTabs);
|
|
140
|
+
Wick.MyOrders.registerTabClickHandler(Wick.MyOrders.el.$mobileTabs);
|
|
141
|
+
},
|
|
142
|
+
getCurrentOrderState () {
|
|
143
|
+
if (Wick.MyOrders.el.$activeOrderState.length) {
|
|
144
|
+
return Wick.MyOrders.el.$activeOrderState.attr('id')
|
|
145
|
+
}
|
|
146
|
+
},
|
|
147
|
+
init () {
|
|
148
|
+
Wick.MyOrders.getShowYears();
|
|
149
|
+
Wick.MyOrders.getChooseDate();
|
|
150
|
+
Wick.MyOrders.initializeFlatpickr();
|
|
151
|
+
Wick.MyOrders.initializeSortOrdersHandler()
|
|
152
|
+
Wick.MyOrders.handleCategoryTabClick();
|
|
153
|
+
appendLoader(Wick.MyOrders.loaderPayload);
|
|
154
|
+
Wick.MyOrders.el.$loadMoreBtn.on('click', Wick.MyOrders.loadMore);
|
|
155
|
+
Wick.HandleAccordions.handleOutsideClick();
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
$(document).ready(function () {
|
|
160
|
+
if (!Wick.MyOrders.el.$myOrders.length) {
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
Wick.MyOrders.init();
|
|
165
|
+
});
|