diff --git a/blocks/commerce-checkout/commerce-checkout.js b/blocks/commerce-checkout/commerce-checkout.js index 7c6405e869..2e030743e9 100644 --- a/blocks/commerce-checkout/commerce-checkout.js +++ b/blocks/commerce-checkout/commerce-checkout.js @@ -33,6 +33,8 @@ import CartSummaryList from '@dropins/storefront-cart/containers/CartSummaryList import Coupons from '@dropins/storefront-cart/containers/Coupons.js'; import EmptyCart from '@dropins/storefront-cart/containers/EmptyCart.js'; import OrderSummary from '@dropins/storefront-cart/containers/OrderSummary.js'; +import GiftCards from '@dropins/storefront-cart/containers/GiftCards.js'; +import GiftOptions from '@dropins/storefront-cart/containers/GiftOptions.js'; import { render as CartProvider } from '@dropins/storefront-cart/render.js'; // Checkout Dropin @@ -46,6 +48,7 @@ import PaymentMethods from '@dropins/storefront-checkout/containers/PaymentMetho import PlaceOrder from '@dropins/storefront-checkout/containers/PlaceOrder.js'; import ServerError from '@dropins/storefront-checkout/containers/ServerError.js'; import ShippingMethods from '@dropins/storefront-checkout/containers/ShippingMethods.js'; +import TermsAndConditions from '@dropins/storefront-checkout/containers/TermsAndConditions.js'; import { render as CheckoutProvider } from '@dropins/storefront-checkout/render.js'; @@ -69,7 +72,6 @@ import { getUserTokenCookie } from '../../scripts/initializers/index.js'; // Block-level import createModal from '../modal/modal.js'; -// Scripts import { estimateShippingCost, getCartAddress, @@ -78,7 +80,14 @@ import { scrollToElement, setAddressOnCart, } from '../../scripts/checkout.js'; -import { authPrivacyPolicyConsentSlot } from '../../scripts/constants.js'; + +import { authPrivacyPolicyConsentSlot, SUPPORT_PATH } from '../../scripts/constants.js'; +import { rootLink } from '../../scripts/scripts.js'; + +// Initializers +import '../../scripts/initializers/account.js'; +import '../../scripts/initializers/checkout.js'; +import '../../scripts/initializers/order.js'; function createMetaTag(property, content, type) { if (!property || !type) { @@ -114,10 +123,6 @@ function setMetaTags(dropin) { } export default async function decorate(block) { - // Initializers - import('../../scripts/initializers/account.js'); - import('../../scripts/initializers/checkout.js'); - setMetaTags('Checkout'); document.title = 'Checkout'; @@ -132,6 +137,7 @@ export default async function decorate(block) { const BILLING_FORM_NAME = 'selectedBillingAddress'; const SHIPPING_ADDRESS_DATA_KEY = `${SHIPPING_FORM_NAME}_addressData`; const BILLING_ADDRESS_DATA_KEY = `${BILLING_FORM_NAME}_addressData`; + const TERMS_AND_CONDITIONS_FORM_NAME = 'checkout-terms-and-conditions__form'; // Define the Layout for the Checkout const checkoutFragment = document.createRange().createContextualFragment(` @@ -150,10 +156,12 @@ export default async function decorate(block) {
+
Need help?
{let r=!1;const n=o.cartId||await R().then(s=>(r=!0,s));return d(S,{variables:{cartId:n,cartItems:a.map(({sku:s,parentSku:e,quantity:i,optionsUIDs:t,enteredOptions:c})=>({sku:s,parent_sku:e,quantity:i,selected_options:t,entered_options:c}))}}).then(({errors:s,data:e})=>{var c;const i=[...((c=e==null?void 0:e.addProductsToCart)==null?void 0:c.user_errors)??[],...s??[]];if(i.length>0)return l(i);const t=g(e.addProductsToCart.cart);if(C.emit("cart/updated",t),C.emit("cart/data",t),t){const p=t.items.filter(m=>a.some(({sku:u})=>u===m.topLevelSku));r?A(t,p,o.locale??"en-US"):I(t,p,o.locale??"en-US")}return t})},G=`
+`,y=async a=>{let r=!1;const i=o.cartId||await R().then(s=>(r=!0,s));return m(G,{variables:{cartId:i,cartItems:a.map(({sku:s,parentSku:e,quantity:n,optionsUIDs:t,enteredOptions:c})=>({sku:s,parent_sku:e,quantity:n,selected_options:t,entered_options:c}))}}).then(({errors:s,data:e})=>{var c;const n=[...((c=e==null?void 0:e.addProductsToCart)==null?void 0:c.user_errors)??[],...s??[]];if(n.length>0)return l(n);const t=f(e.addProductsToCart.cart);if(C.emit("cart/updated",t),C.emit("cart/data",t),t){const p=t.items.filter(d=>a.some(({sku:u})=>u===d.topLevelSku));r?A(t,p,o.locale??"en-US"):I(t,p,o.locale??"en-US")}return t})},S=`
mutation CREATE_GUEST_CART_MUTATION {
createGuestCart {
cart {
@@ -29,4 +29,4 @@ import{s as o,f as d,h as l}from"./chunks/resetCart.js";import{g as $,r as Q,d a
}
}
}
-`,R=async()=>{const{disableGuestCart:a}=f.getConfig();if(a)throw new Error("Guest cart is disabled");return await d(G).then(({data:r})=>{const n=r.createGuestCart.cart.id;return o.cartId=n,n})},M=()=>{const a=o.locale??"en-US",r=E();r&&_(r,a)};export{it as ApplyCouponsStrategy,F as addProductsToCart,ct as applyCouponsToCart,f as config,R as createGuestCart,d as fetchGraphQl,j as getCartData,E as getCartDataFromCache,$ as getConfig,rt as getCountries,q as getCustomerCartPayload,at as getEstimateShipping,ot as getEstimatedTotals,B as getGuestCartPayload,et as getRegions,J as getStoreConfig,K as initialize,W as initializeCart,M as publishShoppingCartViewEvent,X as refreshCart,Q as removeFetchGraphQlHeader,H as resetCart,k as setEndpoint,z as setFetchGraphQlHeader,V as setFetchGraphQlHeaders,Z as updateProductsFromCart};
+`,R=async()=>{const{disableGuestCart:a}=g.getConfig();if(a)throw new Error("Guest cart is disabled");return await m(S).then(({data:r})=>{const i=r.createGuestCart.cart.id;return o.cartId=i,i})},F=()=>{const a=o.locale??"en-US",r=E();r&&_(r,a)};export{nt as ApplyCouponsStrategy,y as addProductsToCart,ct as applyCouponsToCart,Ct as applyGiftCardToCart,g as config,R as createGuestCart,m as fetchGraphQl,j as getCartData,E as getCartDataFromCache,$ as getConfig,rt as getCountries,q as getCustomerCartPayload,at as getEstimateShipping,ot as getEstimatedTotals,B as getGuestCartPayload,et as getRegions,J as getStoreConfig,K as initialize,W as initializeCart,F as publishShoppingCartViewEvent,X as refreshCart,Q as removeFetchGraphQlHeader,mt as removeGiftCardFromCart,H as resetCart,k as setEndpoint,z as setFetchGraphQlHeader,V as setFetchGraphQlHeaders,ut as setGiftOptionsOnCart,Z as updateProductsFromCart};
diff --git a/scripts/__dropins__/storefront-cart/api/applyGiftCardToCart/applyGiftCardToCart.d.ts b/scripts/__dropins__/storefront-cart/api/applyGiftCardToCart/applyGiftCardToCart.d.ts
new file mode 100644
index 0000000000..d5da33e224
--- /dev/null
+++ b/scripts/__dropins__/storefront-cart/api/applyGiftCardToCart/applyGiftCardToCart.d.ts
@@ -0,0 +1,4 @@
+import { CartModel } from '../../data/models';
+
+export declare const applyGiftCardToCart: (giftCardCode: string) => Promise