@dropins/storefront-checkout 0.1.0-alpha31 → 0.1.0-alpha33
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/api.js +2 -1
- package/api.js.map +1 -0
- package/chunks/BillToShippingAddress2.js +2 -0
- package/chunks/BillToShippingAddress2.js.map +1 -0
- package/chunks/BillingForm.js +2 -0
- package/chunks/BillingForm.js.map +1 -0
- package/chunks/CartSummary.js +2 -0
- package/chunks/CartSummary.js.map +1 -0
- package/chunks/ErrorBanner.js +2 -0
- package/chunks/ErrorBanner.js.map +1 -0
- package/chunks/LoginForm.js +2 -0
- package/chunks/LoginForm.js.map +1 -0
- package/chunks/OrderSummary.js +2 -0
- package/chunks/OrderSummary.js.map +1 -0
- package/chunks/PaymentMethods.js +2 -0
- package/chunks/PaymentMethods.js.map +1 -0
- package/chunks/PlaceOrder.js +2 -0
- package/chunks/PlaceOrder.js.map +1 -0
- package/chunks/SelectedShippingMethodSignal.js +2 -0
- package/chunks/SelectedShippingMethodSignal.js.map +1 -0
- package/chunks/ShippingForm.js +2 -0
- package/chunks/ShippingForm.js.map +1 -0
- package/chunks/ShippingMethods.js +2 -0
- package/chunks/ShippingMethods.js.map +1 -0
- package/chunks/ToggleButton.js +2 -0
- package/chunks/ToggleButton.js.map +1 -0
- package/chunks/cart-item.js +2 -0
- package/chunks/cart-item.js.map +1 -0
- package/chunks/constants.js +2 -0
- package/chunks/constants.js.map +1 -0
- package/chunks/constants2.js +2 -0
- package/chunks/constants2.js.map +1 -0
- package/chunks/constants3.js +2 -0
- package/chunks/constants3.js.map +1 -0
- package/chunks/getCart.graphql.js +274 -0
- package/chunks/getCart.graphql.js.map +1 -0
- package/chunks/getMultilineValues.js +44 -0
- package/chunks/getMultilineValues.js.map +1 -0
- package/chunks/getStoreConfig.js +59 -0
- package/chunks/getStoreConfig.js.map +1 -0
- package/chunks/initialize.js +2 -0
- package/chunks/initialize.js.map +1 -0
- package/chunks/placeOrder2.js +112 -0
- package/chunks/placeOrder2.js.map +1 -0
- package/chunks/setBillingAddress.js +16 -0
- package/chunks/setBillingAddress.js.map +1 -0
- package/chunks/setGuestEmailOnCart.js +20 -0
- package/chunks/setGuestEmailOnCart.js.map +1 -0
- package/chunks/setPaymentMethod.js +16 -0
- package/chunks/setPaymentMethod.js.map +1 -0
- package/chunks/setShippingAddress.js +16 -0
- package/chunks/setShippingAddress.js.map +1 -0
- package/chunks/setShippingMethods.js +19 -0
- package/chunks/setShippingMethods.js.map +1 -0
- package/chunks/transform-shipping-methods.js +2 -0
- package/chunks/transform-shipping-methods.js.map +1 -0
- package/containers/BillToShippingAddress.js +2 -1
- package/containers/BillToShippingAddress.js.map +1 -0
- package/containers/BillingForm.js +2 -1
- package/containers/BillingForm.js.map +1 -0
- package/containers/CartSummary.js +2 -1
- package/containers/CartSummary.js.map +1 -0
- package/containers/Checkout.js +2 -1
- package/containers/Checkout.js.map +1 -0
- package/containers/ErrorBanner.js +2 -1
- package/containers/ErrorBanner.js.map +1 -0
- package/containers/LoginForm.js +2 -1
- package/containers/LoginForm.js.map +1 -0
- package/containers/OrderSummary.js +2 -1
- package/containers/OrderSummary.js.map +1 -0
- package/containers/PaymentMethods.js +2 -1
- package/containers/PaymentMethods.js.map +1 -0
- package/containers/PlaceOrder.js +2 -1
- package/containers/PlaceOrder.js.map +1 -0
- package/containers/ShippingForm.js +2 -1
- package/containers/ShippingForm.js.map +1 -0
- package/containers/ShippingMethods.js +2 -1
- package/containers/ShippingMethods.js.map +1 -0
- package/package.json +1 -1
- package/render.js +4 -1
- package/render.js.map +1 -0
- package/1176.js +0 -1
- package/1184.js +0 -1
- package/1268.js +0 -1
- package/1424.js +0 -1
- package/1458.js +0 -1
- package/1568.js +0 -1
- package/1600.js +0 -1
- package/1604.js +0 -1
- package/1680.js +0 -1
- package/184.js +0 -1
- package/196.js +0 -1
- package/2328.js +0 -1
- package/2388.js +0 -1
- package/2543.js +0 -1
- package/2892.js +0 -1
- package/2920.js +0 -1
- package/2956.js +0 -1
- package/3100.js +0 -1
- package/3180.js +0 -1
- package/3316.js +0 -1
- package/3484.js +0 -1
- package/3728.js +0 -1
- package/3764.js +0 -1
- package/3832.js +0 -1
- package/3836.js +0 -1
- package/3916.js +0 -1
- package/3996.js +0 -1
- package/4004.js +0 -1
- package/4424.js +0 -1
- package/4708.js +0 -1
- package/488.js +0 -1
- package/4928.js +0 -1
- package/4948.js +0 -1
- package/5008.js +0 -1
- package/5068.js +0 -1
- package/5476.js +0 -1
- package/5488.js +0 -1
- package/6140.js +0 -1
- package/6484.js +0 -1
- package/664.js +0 -1
- package/6768.js +0 -1
- package/6820.js +0 -1
- package/7524.js +0 -1
- package/7568.js +0 -1
- package/8100.js +0 -1
- package/8220.js +0 -1
- package/8256.js +0 -1
- package/8412.js +0 -1
- package/844.js +0 -1
- package/8668.js +0 -1
- package/8824.js +0 -1
- package/8868.js +0 -1
- package/8966.js +0 -1
- package/9176.js +0 -1
- package/9772.js +0 -1
- package/984.js +0 -1
- package/9940.js +0 -1
- package/9948.js +0 -1
- package/runtime.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"initialize.js","sources":["../../src/api/initialize/initialize.ts"],"sourcesContent":["import { Lang } from '@adobe/elsie/i18n';\nimport { Initializer } from '@adobe/elsie/lib';\n\nexport type ConfigProps = {\n guestViewCookieExpirationDays?: number;\n langDefinitions?: Lang;\n};\n\nexport const initialize = new Initializer<ConfigProps>({\n init: async (_config) => {\n const config = { guestViewCookieExpirationDays: 30, ..._config };\n initialize.config.setConfig(config);\n },\n\n listeners: () => [],\n});\n\nexport const config = initialize.config;\n"],"names":["initialize","Initializer","init","_config","config","guestViewCookieExpirationDays","setConfig","listeners"],"mappings":"oDAQaA,MAAAA,EAAa,IAAIC,EAAyB,CACrDC,KAAM,MAAOC,GAAY,CACvB,MAAMC,EAAS,CAAEC,8BAA+B,GAAI,GAAGF,CAAAA,EAC5CC,EAAAA,OAAOE,UAAUF,CAAM,CACpC,EAEAG,UAAWA,IAAM,CAAA,CACnB,CAAC,EAEYH,EAASJ,EAAWI"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import{g as T,b as I,t as O}from"./getCart.graphql.js";import{e as y,F as S,M as A,U as E}from"./transform-shipping-methods.js";import{f as k,o as v,P as d,i as q}from"./getStoreConfig.js";import{events as C}from"@dropins/tools/event-bus.js";import{I as L}from"./cart-item.js";const D=t=>t?"code"in t&&"value"in t:!1,N=t=>t.filter(D).map(e=>{const{code:o,value:r}=e;return{code:o,value:r}}),x=t=>{var n,a,u;const e=t.street.filter(Boolean),o=(n=t.region)==null?void 0:n.region_id,r=o&&o>0;return{id:String(t.id),firstName:t.firstname,lastName:t.lastname,company:t.company||void 0,city:t.city,street:e,postCode:t.postcode||void 0,vatId:t.vat_id||void 0,telephone:t.telephone||void 0,region:{id:r?o:void 0,code:(a=t.region)==null?void 0:a.region_code,name:(u=t.region)==null?void 0:u.region},country:{value:t.country_code,label:t.country_code},customAttributes:N(t.custom_attributesV2)}},Q=t=>t?t.filter(Boolean).map(x):[],b=(t,e)=>{if(!e)return;const o=e.find(r=>(r==null?void 0:r[t])===!0);if(o)return x(o)},V=t=>{if(!t)return;const e=t.addresses;return{firstName:t.firstname||"",lastName:t.lastname||"",email:t.email||"",addresses:Q(e),defaultBillingAddress:b("default_billing",e),defaultShippingAddress:b("default_shipping",e)}},st=async t=>await y({type:"query",query:t?T:I,options:{method:"POST",cache:"no-cache",...t?{variables:{cartId:t}}:{}},path:"cart",signalType:"cart",transformer:O}),$=`
|
|
2
|
+
query getCustomer {
|
|
3
|
+
customer {
|
|
4
|
+
firstname
|
|
5
|
+
lastname
|
|
6
|
+
email
|
|
7
|
+
addresses {
|
|
8
|
+
id
|
|
9
|
+
default_shipping
|
|
10
|
+
default_billing
|
|
11
|
+
city
|
|
12
|
+
country_code
|
|
13
|
+
firstname
|
|
14
|
+
lastname
|
|
15
|
+
company
|
|
16
|
+
postcode
|
|
17
|
+
vat_id
|
|
18
|
+
region {
|
|
19
|
+
region
|
|
20
|
+
region_id
|
|
21
|
+
region_code
|
|
22
|
+
}
|
|
23
|
+
street
|
|
24
|
+
telephone
|
|
25
|
+
custom_attributesV2 {
|
|
26
|
+
... on AttributeValue {
|
|
27
|
+
code
|
|
28
|
+
value
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
`,ct=async()=>await y({type:"query",query:$,options:{method:"POST",cache:"no-cache"},path:"customer",signalType:"customer",transformer:V}),w=`
|
|
35
|
+
fragment CartStockStatus on Cart {
|
|
36
|
+
id
|
|
37
|
+
items {
|
|
38
|
+
__typename
|
|
39
|
+
uid
|
|
40
|
+
product {
|
|
41
|
+
uid
|
|
42
|
+
name
|
|
43
|
+
sku
|
|
44
|
+
stock_status
|
|
45
|
+
only_x_left_in_stock
|
|
46
|
+
... on ConfigurableProduct {
|
|
47
|
+
variants {
|
|
48
|
+
attributes {
|
|
49
|
+
uid
|
|
50
|
+
}
|
|
51
|
+
product {
|
|
52
|
+
uid
|
|
53
|
+
stock_status
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
... on BundleProduct {
|
|
58
|
+
items {
|
|
59
|
+
uid
|
|
60
|
+
options {
|
|
61
|
+
uid
|
|
62
|
+
product {
|
|
63
|
+
uid
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
quantity
|
|
70
|
+
... on ConfigurableCartItem {
|
|
71
|
+
configurable_options {
|
|
72
|
+
configurable_product_option_uid
|
|
73
|
+
option_label
|
|
74
|
+
configurable_product_option_value_uid
|
|
75
|
+
value_label
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
... on BundleCartItem {
|
|
79
|
+
bundle_options {
|
|
80
|
+
uid
|
|
81
|
+
values {
|
|
82
|
+
uid
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
`,B=`
|
|
89
|
+
query getCartStockStatus($cartId: String!) {
|
|
90
|
+
cart(cart_id: $cartId) {
|
|
91
|
+
...CartStockStatus
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
${w}
|
|
95
|
+
`,M=`
|
|
96
|
+
query getCustomerCartStockStatus {
|
|
97
|
+
cart: customerCart {
|
|
98
|
+
...CartStockStatus
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
${w}
|
|
102
|
+
`,f=t=>t.stock_status===d.InStock,F=t=>f(t.product),U=t=>{const{configurable_options:e}=t,{variants:o}=t.product;if(!o||!e)return!1;const r=e.map(u=>u==null?void 0:u.configurable_product_option_value_uid),n=o.find(u=>!u||!u.attributes?!1:u.attributes.every(s=>s&&r.includes(s.uid)));if(!n)return!1;const{product:a}=n;return a?f(a):!1},G=t=>{const{product:e}=t;if(!f(e))return!1;const{bundle_options:o}=t,{items:r}=e;return(r==null?void 0:r.length)===(o==null?void 0:o.length)},P=t=>{switch(t){case"ConfigurableCartItem":return U;case"BundleCartItem":return G;default:return F}},R=t=>P(t.__typename)(t)===!1,it=async t=>{var a;const{data:e,errors:o}=await k(t?B:M,{method:"GET",cache:"no-cache",...t?{variables:{cartId:t}}:{}}).catch(v);if(o)throw new S(o);const r=(a=e==null?void 0:e.cart)==null?void 0:a.items;return!r||!r.length?d.InStock:r.filter(u=>u?R(u):!1).length>0?d.OutOfStock:d.InStock},K=`
|
|
103
|
+
mutation placeOrder($cartId: String!) {
|
|
104
|
+
placeOrder(input: { cart_id: $cartId }) {
|
|
105
|
+
orderV2 {
|
|
106
|
+
number
|
|
107
|
+
token
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
`;function j(t){const e=[];for(const o in t)t[o]!==null&&e.push({optionLabel:o,valueLabel:t[o]});return e}function z(t){return t.map(e=>{var c;const{uid:o,name:r,sku:n,price:a,quantity:u}=e;let s={canApplyMsrp:!0,formattedPrice:"",id:o,prices:{price:{value:a.value??0,currency:a.currency??""}},product:{productId:0,name:r,sku:n,productType:e.kind,canonicalUrl:e.url||"",mainImageUrl:((c=e==null?void 0:e.image)==null?void 0:c.src)||""},quantity:u};return e.kind===L.Configurable&&(s.configurableOptions=j(e.configurableOptions)),s},[])}function H(t){var s,c,i,l;const{id:e,items:o,prices:r,totalQty:n}=t,a=!!(o!=null&&o.length);let u={id:e,prices:{subtotalExcludingTax:{value:((s=r==null?void 0:r.subtotal_excluding_tax)==null?void 0:s.value)??0,currency:((c=r==null?void 0:r.subtotal_excluding_tax)==null?void 0:c.currency)??""},subtotalIncludingTax:{value:((i=r==null?void 0:r.subtotal_including_tax)==null?void 0:i.value)??0,currency:((l=r==null?void 0:r.subtotal_including_tax)==null?void 0:l.currency)??""}},totalQuantity:n,possibleOnepageCheckout:!0};return a&&(u.items=z(o)),u}function J(t){return t.reduce((o,r)=>o+r.amount.value,0)}function W(t){return{shippingMethod:`${t.carrier.code}_${t.code}`,shippingAmount:t.amount.value??0}}function X(t,e){var i,l,g,m,h;const{coupons:o,email:r,prices:n,selectedPaymentMethod:a,shippingAddresses:u}=e,s=!!(u!=null&&u.length);let c={appliedCouponCode:((i=o[0])==null?void 0:i.code)??"",email:r??"",grandTotal:((l=n==null?void 0:n.grand_total)==null?void 0:l.value)??0,orderId:t,orderType:"checkout",otherTax:0,paymentMethodCode:(a==null?void 0:a.code)??"",paymentMethodName:(a==null?void 0:a.title)??"",payments:[{paymentMethodCode:(a==null?void 0:a.code)??"",paymentMethodName:(a==null?void 0:a.title)??"",total:((g=n==null?void 0:n.grand_total)==null?void 0:g.value)??0}],salesTax:J((n==null?void 0:n.applied_taxes)??[]),subtotalExcludingTax:((m=n==null?void 0:n.subtotal_excluding_tax)==null?void 0:m.value)??0,subtotalIncludingTax:((h=n==null?void 0:n.subtotal_including_tax)==null?void 0:h.value)??0};if(s){const p=u[0],_=p==null?void 0:p.selectedShippingMethod;_&&(c.shipping=W(_))}return c}function Y(t){const{data:e}=q.value,o=H(e),r=X(t,e);window.adobeDataLayer=window.adobeDataLayer||[],window.adobeDataLayer.push({shoppingCartContext:null},{orderContext:null}),window.adobeDataLayer.push({shoppingCartContext:o},{orderContext:r})}function Z(){window.adobeDataLayer=window.adobeDataLayer||[],window.adobeDataLayer.push(t=>{const e=t.getState()||{};t.push({event:"place-order",eventInfo:{...e}})})}function tt(t){Y(t),Z()}function et(t){throw t.every(o=>{var r;return(r=o.extensions)==null?void 0:r.category})?new S(t):new E(t[0].message)}const lt=async t=>{if(!t)throw new A;const{data:e,errors:o}=await k(K,{variables:{cartId:t}}).catch(v);o&&et(o);const r=e.placeOrder.orderV2;tt(r.number),C.emit("checkout/order",r),C.emit("cart/reset",void 0)};export{ct as a,it as b,st as g,lt as p};
|
|
112
|
+
//# sourceMappingURL=placeOrder2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"placeOrder2.js","sources":["../../src/data/transforms/transform-customer.ts","../../src/api/getCart/getCart.ts","../../src/api/getCustomer/graphql/getCustomer.graphql.ts","../../src/api/getCustomer/getCustomer.ts","../../src/api/getStockStatus/graphql/getStockStatus.graphql.ts","../../src/api/getStockStatus/getStockStatus.ts","../../src/api/placeOrder/graphql/placeOrder.graphql.ts","../../src/utils/storefrontEvents/completeCheckout.ts","../../src/api/placeOrder/placeOrder.ts"],"sourcesContent":["import { GetCustomerQuery } from '@/checkout/__generated__/types';\nimport {\n Customer as CustomerModel,\n CustomerAddress as CustomerAddressModel,\n CustomAttribute as CustomAttributeModel,\n} from '@/checkout/data/models';\n\ntype Customer = GetCustomerQuery['customer'];\ntype NonNullableCustomer = NonNullable<Customer>;\ntype CustomAttributesV2 = CustomerAddress['custom_attributesV2'];\ntype CustomerAddresses = NonNullableCustomer['addresses'];\ntype CustomerAddress = NonNullable<NonNullable<CustomerAddresses>[number]>;\n\nconst isValidCustomAttribute = (attribute: any): boolean => {\n if (!attribute) return false;\n return 'code' in attribute && 'value' in attribute;\n};\n\nexport const transformCustomAttributesV2 = (\n data: CustomAttributesV2\n): CustomAttributeModel[] => {\n return data.filter(isValidCustomAttribute).map((attribute) => {\n const { code, value } = attribute as { code: string; value: string };\n return { code, value };\n });\n};\n\nconst transformCustomerAddress = (\n data: CustomerAddress\n): CustomerAddressModel => {\n const street = data.street!.filter(Boolean) as string[];\n const regionId = data.region?.region_id;\n const hasRegionId = regionId && regionId > 0;\n\n return {\n id: String(data.id),\n firstName: data.firstname!,\n lastName: data.lastname!,\n company: data.company || undefined,\n city: data.city!,\n street,\n postCode: data.postcode || undefined,\n vatId: data.vat_id || undefined,\n telephone: data.telephone || undefined,\n region: {\n id: hasRegionId? regionId : undefined,\n code: data.region?.region_code!,\n name: data.region?.region!,\n },\n country: {\n value: data.country_code!,\n label: data.country_code!,\n },\n customAttributes: transformCustomAttributesV2(data.custom_attributesV2),\n };\n};\n\nconst transformCustomerAddresses = (\n data: CustomerAddresses\n): CustomerAddressModel[] => {\n if (!data) return [];\n\n const customerAddresses = data.filter(Boolean) as CustomerAddress[];\n return customerAddresses.map(transformCustomerAddress);\n};\n\nconst transformDefaultAddress = (\n type: 'default_billing' | 'default_shipping',\n data: CustomerAddresses\n): CustomerAddressModel | undefined => {\n if (!data) return;\n\n const address = data.find((address) => address?.[type] === true);\n\n if (!address) return;\n\n return transformCustomerAddress(address);\n};\n\nconst transformCustomer = (data: Customer): CustomerModel | undefined => {\n if (!data) return;\n\n const addresses = data.addresses;\n\n return {\n firstName: data.firstname || '',\n lastName: data.lastname || '',\n email: data.email || '',\n addresses: transformCustomerAddresses(addresses),\n defaultBillingAddress: transformDefaultAddress(\n 'default_billing',\n addresses\n ),\n defaultShippingAddress: transformDefaultAddress(\n 'default_shipping',\n addresses\n ),\n };\n};\n\nexport { transformCustomer };\n","import {\n getCartQuery,\n getCustomerCartQuery,\n} from '@/checkout/api/getCart/graphql';\nimport { dispatchApiCall } from '@/checkout/api/utils/dispatchApiCall';\nimport { transformCart } from '@/checkout/data/transforms/transform-cart';\n\nexport const getCart = async (cartId?: string) => {\n return await dispatchApiCall({\n type: 'query',\n query: cartId ? getCartQuery : getCustomerCartQuery,\n options: {\n method: 'POST',\n cache: 'no-cache',\n ...(cartId ? { variables: { cartId } } : {}),\n },\n path: 'cart',\n signalType: 'cart',\n transformer: transformCart,\n });\n};\n","export const getCustomerQuery = /* GraphQL */ `\n query getCustomer {\n customer {\n firstname\n lastname\n email\n addresses {\n id\n default_shipping\n default_billing\n city\n country_code\n firstname\n lastname\n company\n postcode\n vat_id\n region {\n region\n region_id\n region_code\n }\n street\n telephone\n custom_attributesV2 {\n ... on AttributeValue {\n code\n value\n }\n }\n }\n }\n }\n`;\n","import { getCustomerQuery } from '@/checkout/api/getCustomer/graphql/getCustomer.graphql';\nimport { dispatchApiCall } from '@/checkout/api/utils/dispatchApiCall';\nimport { Customer } from '@/checkout/data/models';\nimport { transformCustomer } from '@/checkout/data/transforms';\n\nexport const getCustomer = async (): Promise<Customer | null | undefined> => {\n return await dispatchApiCall({\n type: 'query',\n query: getCustomerQuery,\n options: { method: 'POST', cache: 'no-cache' },\n path: 'customer',\n signalType: 'customer',\n transformer: transformCustomer,\n });\n};\n","export const CART_STOCK_STATUS_FRAGMENT = /* GraphQL */ `\n fragment CartStockStatus on Cart {\n id\n items {\n __typename\n uid\n product {\n uid\n name\n sku\n stock_status\n only_x_left_in_stock\n ... on ConfigurableProduct {\n variants {\n attributes {\n uid\n }\n product {\n uid\n stock_status\n }\n }\n }\n ... on BundleProduct {\n items {\n uid\n options {\n uid\n product {\n uid\n }\n }\n }\n }\n }\n quantity\n ... on ConfigurableCartItem {\n configurable_options {\n configurable_product_option_uid\n option_label\n configurable_product_option_value_uid\n value_label\n }\n }\n ... on BundleCartItem {\n bundle_options {\n uid\n values {\n uid\n }\n }\n }\n }\n }\n`;\n\nexport const getCartStockStatusQuery = /* GraphQL */ `\n query getCartStockStatus($cartId: String!) {\n cart(cart_id: $cartId) {\n ...CartStockStatus\n }\n }\n ${CART_STOCK_STATUS_FRAGMENT}\n`;\n\nexport const getCustomerCartStockStatusQuery = /* GraphQL */ `\n query getCustomerCartStockStatus {\n cart: customerCart {\n ...CartStockStatus\n }\n }\n ${CART_STOCK_STATUS_FRAGMENT}\n`;\n","import {\n BundleCartItem,\n BundleProduct,\n Cart,\n ConfigurableCartItem,\n ConfigurableProduct,\n DownloadableCartItem,\n GiftCardCartItem,\n ProductInterface,\n ProductStockStatus,\n SimpleCartItem,\n VirtualCartItem,\n} from '@/checkout/__generated__/types';\nimport { fetchGraphQl } from '@/checkout/api';\nimport { FetchError } from '@/checkout/api/errors';\nimport { handleNetworkError } from '@/checkout/lib/network-error';\nimport {\n getCartStockStatusQuery,\n getCustomerCartStockStatusQuery,\n} from '@/checkout/api/getStockStatus/graphql/getStockStatus.graphql';\n\ninterface StockChecker {\n (item: CartItem): boolean;\n}\n\ntype StockStatusOutput = {\n cart: Pick<Cart, 'id' | 'items'>;\n};\n\ntype CartItem =\n | BundleCartItem\n | ConfigurableCartItem\n | DownloadableCartItem\n | GiftCardCartItem\n | SimpleCartItem\n | VirtualCartItem;\n\nconst isProductInStock = (product: ProductInterface): boolean => {\n return product.stock_status === ProductStockStatus.InStock;\n};\n\nconst simpleStockChecker: StockChecker = (item) => {\n return isProductInStock(item.product);\n};\n\nconst configStockChecker: StockChecker = (item) => {\n const { configurable_options: options } = item as ConfigurableCartItem;\n const { variants } = item.product as ConfigurableProduct;\n\n if (!variants || !options) return false;\n\n const selectedOptions = options.map(\n (option) => option?.configurable_product_option_value_uid\n );\n\n const selectedVariant = variants.find((variant) => {\n if (!variant || !variant.attributes) return false;\n\n return variant.attributes.every(\n (attribute) => attribute && selectedOptions.includes(attribute.uid)\n );\n });\n\n // if no matching variant is found, we assume the product is out of stock\n if (!selectedVariant) return false;\n\n const { product: variantProduct } = selectedVariant;\n\n if (!variantProduct) return false;\n\n return isProductInStock(variantProduct);\n};\n\nconst bundleStockChecker: StockChecker = (item) => {\n const { product } = item as BundleCartItem;\n\n if (!isProductInStock(product)) return false;\n\n // if any of the items inside the bundle is ouf of stock, it will not be part of this list\n const { bundle_options: options } = item as BundleCartItem;\n const { items: bundle } = product as BundleProduct;\n\n return bundle?.length === options?.length;\n};\n\nconst getStockChecker = (type?: string): StockChecker => {\n switch (type) {\n case 'ConfigurableCartItem':\n return configStockChecker;\n case 'BundleCartItem':\n return bundleStockChecker;\n default:\n return simpleStockChecker;\n }\n};\n\nconst isOutOfStock = (item: CartItem) => {\n const checker = getStockChecker(item.__typename);\n return checker(item) === false;\n};\n\nexport const getStockStatus = async (\n cartId?: string\n): Promise<ProductStockStatus> => {\n const { data, errors } = await fetchGraphQl<StockStatusOutput>(\n cartId ? getCartStockStatusQuery : getCustomerCartStockStatusQuery,\n {\n method: 'GET',\n cache: 'no-cache',\n ...(cartId ? { variables: { cartId } } : {}),\n }\n ).catch(handleNetworkError);\n\n if (errors) throw new FetchError(errors);\n\n const cartItems = data?.cart?.items;\n\n if (!cartItems || !cartItems.length) return ProductStockStatus.InStock;\n\n const outOfStock = cartItems.filter((item) => {\n if (!item) return false;\n return isOutOfStock(item as CartItem);\n });\n\n return outOfStock.length > 0\n ? ProductStockStatus.OutOfStock\n : ProductStockStatus.InStock;\n};\n","export const placeOrderMutation = /* GraphQL */ `\n mutation placeOrder($cartId: String!) {\n placeOrder(input: { cart_id: $cartId }) {\n orderV2 {\n number\n token\n }\n }\n }\n`;\n","import { cartSignal } from '@/checkout/signals';\nimport { CartTaxItem } from '@/checkout/__generated__/types';\nimport {\n ConfigurableOption,\n Order,\n ShoppingCart,\n ShoppingCartItem,\n} from '@/checkout/types/CompleteCheckoutContextSchemas';\nimport { Cart } from '@/checkout/data/models/cart';\nimport { Item, ItemKind } from '@/checkout/data/models/cart-item';\nimport { ShippingMethod } from '@/checkout/data/models';\n\nfunction mapConfigurableOptions(\n options: Record<string, string>\n): ConfigurableOption[] | undefined {\n const result: ConfigurableOption[] = [];\n\n for (const key in options) {\n if (options[key] === null) continue;\n\n result.push({\n optionLabel: key,\n valueLabel: options[key],\n });\n }\n\n return result;\n}\n\nfunction mapCartItems(items: Item[]): ShoppingCartItem[] {\n return items.map((item: Item): ShoppingCartItem => {\n const { uid, name, sku, price, quantity } = item;\n\n let cartItem: ShoppingCartItem = {\n /* We don't know if Checkout drop-in can apply Manufacturer’s Suggested Retail Price */\n canApplyMsrp: true,\n formattedPrice: '',\n id: uid,\n prices: {\n price: {\n value: price.value ?? 0,\n currency: price.currency ?? '',\n },\n },\n product: {\n /* productId not exposed by core GraphQL as number (uid is string) */\n productId: 0,\n name,\n sku,\n productType: item.kind,\n canonicalUrl: item.url || '',\n mainImageUrl: item?.image?.src || '',\n },\n quantity,\n };\n\n if (item.kind === ItemKind.Configurable) {\n cartItem.configurableOptions =\n // @ts-ignore\n mapConfigurableOptions(item.configurableOptions);\n }\n\n return cartItem;\n }, []);\n}\n\n/**\n * This function builds the ShoppingCart context.\n * It maps the shopping cart data collected during the checkout process to the\n * specific schema format defined by the Adobe Commerce Events SDK.\n *\n * @param {Cart} cart The cart data collected during the checkout process.\n * @returns {ShoppingCart} The ShoppingCart data formated.\n */\nfunction buildShoppingCartContext(cart: Cart): ShoppingCart {\n const { id, items, prices, totalQty } = cart;\n const hasItems = !!items?.length;\n\n let shoppingCartContext: ShoppingCart = {\n id,\n prices: {\n subtotalExcludingTax: {\n value: prices?.subtotal_excluding_tax?.value ?? 0,\n currency: prices?.subtotal_excluding_tax?.currency ?? '',\n },\n subtotalIncludingTax: {\n value: prices?.subtotal_including_tax?.value ?? 0,\n currency: prices?.subtotal_including_tax?.currency ?? '',\n },\n },\n totalQuantity: totalQty,\n possibleOnepageCheckout: true,\n };\n\n if (hasItems) {\n shoppingCartContext.items = mapCartItems(items);\n }\n\n return shoppingCartContext;\n}\n\nfunction calculateTaxes(taxes: (CartTaxItem | null)[]): number {\n const totalTaxAmount = taxes.reduce(\n (total, tax) => total + tax!.amount.value!,\n 0\n );\n\n return totalTaxAmount;\n}\n\nfunction buildShippingMethod(method: ShippingMethod) {\n return {\n shippingMethod: `${method.carrier.code}_${method.code}`,\n shippingAmount: method.amount.value ?? 0,\n };\n}\n\n/**\n * This function builds the Order context.\n * It maps the order data collected during the checkout process to the specific\n * schema format defined by the Adobe Commerce Events SDK.\n *\n * @param {string} orderId The order ID generated when placed the order.\n * @param {Cart} cart The cart data collected during the checkout process.\n * @returns {Order} The Order data formated.\n */\nfunction buildOrderContext(orderId: string, cart: Cart): Order {\n const { coupons, email, prices, selectedPaymentMethod, shippingAddresses } =\n cart;\n const hasAddresses = !!shippingAddresses?.length;\n\n let orderContext: Order = {\n appliedCouponCode: coupons[0]?.code ?? '',\n email: email ?? '',\n grandTotal: prices?.grand_total?.value ?? 0,\n orderId,\n orderType: 'checkout',\n otherTax: 0,\n paymentMethodCode: selectedPaymentMethod?.code ?? '',\n paymentMethodName: selectedPaymentMethod?.title ?? '',\n payments: [\n /* By now the Checkout drop-in is only supporting one payment method */\n {\n paymentMethodCode: selectedPaymentMethod?.code ?? '',\n paymentMethodName: selectedPaymentMethod?.title ?? '',\n total: prices?.grand_total?.value ?? 0,\n },\n ],\n salesTax: calculateTaxes(prices?.applied_taxes ?? []),\n subtotalExcludingTax: prices?.subtotal_excluding_tax?.value ?? 0,\n subtotalIncludingTax: prices?.subtotal_including_tax?.value ?? 0,\n };\n\n if (hasAddresses) {\n const firstAddress = shippingAddresses[0];\n const selectedShippingMethod = firstAddress?.selectedShippingMethod;\n\n if (selectedShippingMethod) {\n orderContext.shipping = buildShippingMethod(selectedShippingMethod);\n }\n }\n\n return orderContext;\n}\n\n/**\n * This function sets both ShoppingCart and Order contexts to the ACDL before\n * firing the \"place-order\" event.\n * This code has been extracted from the ContextManager class (included into\n * the Adobe Commerce Events SDK package) and adapted in order to use directly\n * the ACDL own API methods.\n *\n * Code based on:\n * ContextManager.ts::setShoppingCart(context: ShoppingCart): void\n * ContextManager.ts::setOrder(context: Order): void\n *\n * @param {string} orderId The order ID generated when placed the order.\n * @returns {void}\n *\n * ContextManager class @see https://github.com/adobe/commerce-events/blob/main/packages/storefront-events-sdk/src/ContextManager.ts\n */\nfunction setContext(orderId: string): void {\n const { data } = cartSignal.value;\n\n const shoppingCartContext = buildShoppingCartContext(data!);\n const orderContext = buildOrderContext(orderId, data!);\n\n window.adobeDataLayer = window.adobeDataLayer || [];\n\n // First of all it deletes the previously added data layer context entries\n window.adobeDataLayer.push(\n { shoppingCartContext: null },\n { orderContext: null }\n );\n\n // and finally it adds the specific data layer context entries for that request\n window.adobeDataLayer.push({ shoppingCartContext }, { orderContext });\n}\n\n/**\n * This function publishes the \"place-order\" event pushing it to the ACDL (a\n * plain JavaScript Array that serves as a queue).\n * This code has been extracted from the PublishManager class (included into\n * the Adobe Commerce Events SDK package) and adapted in order to use directly\n * the ACDL own API methods.\n *\n * Code based on:\n * PublishManager.ts::placeOrder(context?: CustomContext): void\n *\n * @returns {void}\n *\n * PublishManager class @see https://github.com/adobe/commerce-events/blob/main/packages/storefront-events-sdk/src/PublishManager.ts\n */\nfunction publishPlaceOrderEvent(): void {\n window.adobeDataLayer = window.adobeDataLayer || [];\n\n /*global AdobeClientDataLayer */\n /*eslint no-undef: \"error\"*/\n window.adobeDataLayer.push((acdl: AdobeClientDataLayer) => {\n const state = acdl.getState() || {};\n\n acdl.push({\n event: 'place-order',\n eventInfo: {\n ...state,\n },\n });\n });\n}\n\n/**\n * \"completeCheckout\" is a Commerce event available when it's installed the\n * Data Connection extension. The data this event collects is sent to the Adobe\n * Experience Platform edge.\n *\n * This is a Storefront event that collects anonymized behavioral data from the\n * shoppers as they browse the site. The data this event collects can be used\n * to create promotions and campaigns targeted to a specific set of shoppers.\n * Storefront event data includes simple and configurable products only.\n *\n * \"completeCheckout\" is triggered when the shopper places an order.\n *\n * The code access directly the Adobe Client Data Layer (ACDL) package instead\n * of using the Adobe Commerce Events SDK package, because the ACDL reduces the\n * effort to instrument websites by providing a standardized method to expose\n * and access any kind of data for any script. It consists of a JavaScript\n * client-side event-driven data store that can be used on web pages:\n *\n * - to collect data about what the visitors experience on the web page\n * - to communicate this data to digital analytics and reporting servers\n *\n * @param {string} orderId The order ID generated when placed the order.\n * @returns {void}\n *\n * Data Connection Events documentation @see https://experienceleague.adobe.com/docs/commerce-merchant-services/data-connection/event-forwarding/events.html?lang=en#completecheckout\n * Adobe Commerce Events SDK GitHub repo @see https://github.com/adobe/commerce-events\n * Adobe Client Data Layer documentation @see https://github.com/adobe/adobe-client-data-layer/wiki\n * Adobe Client Data Layer GitHub repo @see https://github.com/adobe/adobe-client-data-layer\n */\nexport function completeCheckout(orderId: string): void {\n setContext(orderId);\n publishPlaceOrderEvent();\n}\n","import { PlaceOrderMutation } from '@/checkout/__generated__/types';\nimport {\n FetchError,\n MissingCart,\n UnexpectedError,\n} from '@/checkout/api/errors';\nimport { fetchGraphQl } from '@/checkout/api/fetch-graphql';\nimport { placeOrderMutation } from '@/checkout/api/placeOrder/graphql';\nimport { handleNetworkError } from '@/checkout/lib/network-error';\nimport { completeCheckout } from '@/checkout/utils/storefrontEvents';\nimport { events } from '@adobe/event-bus';\nimport { FetchQueryError } from '@adobe/fetch-graphql';\n\nfunction handleErrors(errors: FetchQueryError) {\n const isFetchError = errors.every((error) => error.extensions?.category);\n\n if (isFetchError) throw new FetchError(errors);\n\n throw new UnexpectedError(errors[0].message);\n}\n\nexport const placeOrder = async (cartId: string) => {\n if (!cartId) throw new MissingCart();\n\n const { data, errors } = await fetchGraphQl<PlaceOrderMutation>(\n placeOrderMutation,\n {\n variables: { cartId },\n }\n ).catch(handleNetworkError)\n\n if (errors) handleErrors(errors);\n\n const order = data.placeOrder!.orderV2;\n\n completeCheckout(order!.number);\n\n // Emit the order to the checkout/order event\n events.emit('checkout/order', order); \n // Reset the cart after the order is placed\n events.emit('cart/reset', undefined); \n};\n"],"names":["isValidCustomAttribute","attribute","transformCustomAttributesV2","data","filter","map","code","value","transformCustomerAddress","street","Boolean","regionId","region","region_id","hasRegionId","id","String","firstName","firstname","lastName","lastname","company","undefined","city","postCode","postcode","vatId","vat_id","telephone","region_code","name","country","country_code","label","customAttributes","custom_attributesV2","transformCustomerAddresses","transformDefaultAddress","type","address","find","transformCustomer","addresses","email","defaultBillingAddress","defaultShippingAddress","getCart","cartId","dispatchApiCall","query","getCartQuery","getCustomerCartQuery","options","method","cache","variables","path","signalType","transformer","transformCart","getCustomerQuery","getCustomer","CART_STOCK_STATUS_FRAGMENT","getCartStockStatusQuery","getCustomerCartStockStatusQuery","isProductInStock","product","stock_status","ProductStockStatus","InStock","simpleStockChecker","item","configStockChecker","configurable_options","variants","selectedOptions","option","configurable_product_option_value_uid","selectedVariant","variant","attributes","every","includes","uid","variantProduct","bundleStockChecker","bundle_options","items","bundle","length","getStockChecker","isOutOfStock","__typename","getStockStatus","errors","fetchGraphQl","catch","handleNetworkError","FetchError","cartItems","cart","OutOfStock","placeOrderMutation","mapConfigurableOptions","result","key","push","optionLabel","valueLabel","mapCartItems","sku","price","quantity","cartItem","canApplyMsrp","formattedPrice","prices","currency","productId","productType","kind","canonicalUrl","url","mainImageUrl","image","src","ItemKind","Configurable","configurableOptions","buildShoppingCartContext","totalQty","hasItems","shoppingCartContext","subtotalExcludingTax","subtotal_excluding_tax","subtotalIncludingTax","subtotal_including_tax","totalQuantity","possibleOnepageCheckout","calculateTaxes","taxes","totalTaxAmount","reduce","total","tax","amount","buildShippingMethod","shippingMethod","carrier","shippingAmount","buildOrderContext","orderId","coupons","selectedPaymentMethod","shippingAddresses","hasAddresses","orderContext","appliedCouponCode","grandTotal","grand_total","orderType","otherTax","paymentMethodCode","paymentMethodName","title","payments","salesTax","applied_taxes","firstAddress","selectedShippingMethod","shipping","setContext","cartSignal","adobeDataLayer","window","publishPlaceOrderEvent","acdl","state","getState","event","eventInfo","completeCheckout","handleErrors","isFetchError","error","extensions","category","UnexpectedError","message","placeOrder","MissingCart","order","orderV2","number","emit"],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import{M as n,c as e,e as d}from"./transform-shipping-methods.js";import{C as l,a as o,t as p}from"./getCart.graphql.js";import"./getStoreConfig.js";const A=`
|
|
2
|
+
mutation setBillingAddress($cartId: String!, $input: BillingAddressInput!) {
|
|
3
|
+
setBillingAddressOnCart(
|
|
4
|
+
input: { cart_id: $cartId, billing_address: $input }
|
|
5
|
+
) {
|
|
6
|
+
cart {
|
|
7
|
+
id
|
|
8
|
+
...CartData
|
|
9
|
+
...CartSummaryItems
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
${l}
|
|
14
|
+
${o}
|
|
15
|
+
`,C=async({signal:i,cartId:s,input:t})=>{const{address:a,same_as_shipping:r}=t;if(!s)throw new n;if(!r&&!a)throw new e;return await d({type:"mutation",query:A,options:{signal:i,variables:{cartId:s,input:t}},path:"setBillingAddressOnCart.cart",signalType:"cart",transformer:p})};export{C as s};
|
|
16
|
+
//# sourceMappingURL=setBillingAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setBillingAddress.js","sources":["../../src/api/setBillingAddress/graphql/setBillingAddress.graphql.ts","../../src/api/setBillingAddress/setBillingAddress.ts"],"sourcesContent":["import {\n CART_DATA_FRAGMENT,\n CART_SUMMARY_FRAGMENT,\n} from '@/checkout/api/getCart/graphql/getCart.graphql';\n\nexport const setBillingAddressMutation = /* GraphQL */ `\n mutation setBillingAddress($cartId: String!, $input: BillingAddressInput!) {\n setBillingAddressOnCart(\n input: { cart_id: $cartId, billing_address: $input }\n ) {\n cart {\n id\n ...CartData\n ...CartSummaryItems\n }\n }\n }\n ${CART_DATA_FRAGMENT}\n ${CART_SUMMARY_FRAGMENT}\n`;\n","import { MissingBillingAddress, MissingCart } from '@/checkout/api/errors';\nimport { setBillingAddressMutation } from '@/checkout/api/setBillingAddress/graphql/setBillingAddress.graphql';\nimport { AddressInput } from '@/checkout/api/setShippingAddress';\nimport { dispatchApiCall } from '@/checkout/api/utils/dispatchApiCall';\nimport { transformCart } from '@/checkout/data/transforms/index';\n\nexport interface BillingAddressInput {\n address?: AddressInput;\n customer_address_id?: number;\n same_as_shipping?: boolean;\n use_for_shipping?: boolean;\n}\n\nexport const setBillingAddress = async ({\n signal,\n cartId,\n input,\n}: {\n signal?: AbortSignal;\n cartId: string;\n input: BillingAddressInput;\n}) => {\n const { address, same_as_shipping } = input;\n\n if (!cartId) throw new MissingCart();\n if (!same_as_shipping && !address) throw new MissingBillingAddress();\n\n return await dispatchApiCall({\n type: 'mutation',\n query: setBillingAddressMutation,\n options: { signal, variables: { cartId, input } },\n path: 'setBillingAddressOnCart.cart',\n signalType: 'cart',\n transformer: transformCart,\n });\n};\n"],"names":["setBillingAddressMutation","CART_DATA_FRAGMENT","CART_SUMMARY_FRAGMENT","setBillingAddress","signal","cartId","input","address","same_as_shipping","MissingCart","MissingBillingAddress","dispatchApiCall","type","query","options","variables","path","signalType","transformer","transformCart"],"mappings":"qJAKaA,MAAAA,EAA0C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAYnDC,CAAkB;AAAA,IAClBC,CAAqB;AAAA,ECLZC,EAAoB,MAAO,CACtCC,OAAAA,EACAC,OAAAA,EACAC,MAAAA,CAKF,IAAM,CACE,KAAA,CAAEC,QAAAA,EAASC,iBAAAA,CAAqBF,EAAAA,EAEtC,GAAI,CAACD,EAAQ,MAAM,IAAII,EACnB,GAAA,CAACD,GAAoB,CAACD,EAAS,MAAM,IAAIG,EAE7C,OAAO,MAAMC,EAAgB,CAC3BC,KAAM,WACNC,MAAOb,EACPc,QAAS,CAAEV,OAAAA,EAAQW,UAAW,CAAEV,OAAAA,EAAQC,MAAAA,CAAM,CAAE,EAChDU,KAAM,+BACNC,WAAY,OACZC,YAAaC,CAAAA,CACd,CACH"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import{a as r,M as s,e}from"./transform-shipping-methods.js";import{f as l,o as m,p as n}from"./getStoreConfig.js";import"@dropins/tools/event-bus.js";import{C as o,a as c,t as E}from"./getCart.graphql.js";const u=a=>!!(a!=null&&a.is_email_available),p=`
|
|
2
|
+
query isEmailAvailable($email: String!) {
|
|
3
|
+
isEmailAvailable(email: $email) {
|
|
4
|
+
is_email_available
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
`,v=async a=>{if(!a)throw new r;const{data:i,errors:t}=await l(p,{method:"GET",cache:"no-cache",variables:{email:a}}).catch(m);return t&&n(t),u(i.isEmailAvailable)},A=`
|
|
8
|
+
mutation setGuestEmail($cartId: String!, $email: String!) {
|
|
9
|
+
setGuestEmailOnCart(input: { cart_id: $cartId, email: $email }) {
|
|
10
|
+
cart {
|
|
11
|
+
id
|
|
12
|
+
...CartData
|
|
13
|
+
...CartSummaryItems
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
${o}
|
|
18
|
+
${c}
|
|
19
|
+
`,y=async({cartId:a,email:i})=>{if(!a)throw new s;return await e({type:"mutation",query:A,options:{variables:{cartId:a,email:i}},path:"setGuestEmailOnCart.cart",signalType:"cart",transformer:E})};export{v as i,y as s};
|
|
20
|
+
//# sourceMappingURL=setGuestEmailOnCart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setGuestEmailOnCart.js","sources":["../../src/data/transforms/transform-email-availability.ts","../../src/api/isEmailAvailable/graphql/isEmailAvailable.graphql.ts","../../src/api/isEmailAvailable/isEmailAvailable.ts","../../src/api/setGuestEmailOnCart/graphql/setGuestEmailOnCart.graphql.ts","../../src/api/setGuestEmailOnCart/setGuestEmailOnCart.ts"],"sourcesContent":["import { IsEmailAvailableQuery } from '@/checkout/__generated__/types';\nimport { EmailAvailability } from '@/checkout/data/models';\n\nconst transformEmailAvailability = (\n data: IsEmailAvailableQuery['isEmailAvailable']\n): EmailAvailability => {\n return Boolean(data?.is_email_available);\n};\n\nexport { transformEmailAvailability };\n","export const isEmailAvailableQuery = /* GraphQL */`\n query isEmailAvailable($email: String!) {\n isEmailAvailable(email: $email) {\n is_email_available\n }\n }\n`;\n","import { IsEmailAvailableQuery } from '@/checkout/__generated__/types';\nimport { fetchGraphQl } from '@/checkout/api';\nimport { MissingEmail } from '@/checkout/api/errors';\nimport { isEmailAvailableQuery } from '@/checkout/api/isEmailAvailable/graphql/isEmailAvailable.graphql';\nimport { EmailAvailability } from '@/checkout/data/models/email-availability';\nimport { transformEmailAvailability } from '@/checkout/data/transforms/transform-email-availability';\nimport { handleFetchErrors } from '@/checkout/lib/fetch-error';\nimport { handleNetworkError } from '@/checkout/lib/network-error';\n\nexport const isEmailAvailable = async (\n email: string\n): Promise<EmailAvailability> => {\n if (!email) throw new MissingEmail();\n\n const { data, errors } = await fetchGraphQl<IsEmailAvailableQuery>(\n isEmailAvailableQuery,\n {\n method: 'GET',\n cache: 'no-cache',\n variables: { email },\n }\n ).catch(handleNetworkError);\n\n if (errors) handleFetchErrors(errors);\n\n return transformEmailAvailability(data.isEmailAvailable);\n};\n","import {\n CART_DATA_FRAGMENT,\n CART_SUMMARY_FRAGMENT,\n} from '@/checkout/api/getCart/graphql/getCart.graphql';\n\nexport const setGuestEmailMutation = /* GraphQL */ `\n mutation setGuestEmail($cartId: String!, $email: String!) {\n setGuestEmailOnCart(input: { cart_id: $cartId, email: $email }) {\n cart {\n id\n ...CartData\n ...CartSummaryItems\n }\n }\n }\n ${CART_DATA_FRAGMENT}\n ${CART_SUMMARY_FRAGMENT}\n`;\n","import { MissingCart } from '@/checkout/api/errors';\nimport { setGuestEmailMutation } from '@/checkout/api/setGuestEmailOnCart/graphql/setGuestEmailOnCart.graphql';\nimport { dispatchApiCall } from '@/checkout/api/utils/dispatchApiCall';\nimport { transformCart } from '@/checkout/data/transforms/index';\n\nexport type SetGuestEmailOnCartInput = {\n cartId: string;\n email: string;\n};\n\nexport const setGuestEmailOnCart = async ({\n cartId,\n email,\n}: SetGuestEmailOnCartInput) => {\n if (!cartId) throw new MissingCart();\n\n return await dispatchApiCall({\n type: 'mutation',\n query: setGuestEmailMutation,\n options: { variables: { cartId, email } },\n path: 'setGuestEmailOnCart.cart',\n signalType: 'cart',\n transformer: transformCart,\n });\n};\n"],"names":["transformEmailAvailability","data","Boolean","is_email_available","isEmailAvailableQuery","isEmailAvailable","email","MissingEmail","errors","fetchGraphQl","method","cache","variables","catch","handleNetworkError","handleFetchErrors","setGuestEmailMutation","CART_DATA_FRAGMENT","CART_SUMMARY_FRAGMENT","setGuestEmailOnCart","cartId","MissingCart","dispatchApiCall","type","query","options","path","signalType","transformer","transformCart"],"mappings":"8MAGA,MAAMA,EACJC,GAEOC,GAAQD,GAAAA,MAAAA,EAAME,oBCNVC,EAAqC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECSrCC,EAAmB,MAC9BC,GAC+B,CAC/B,GAAI,CAACA,EAAO,MAAM,IAAIC,EAEhB,KAAA,CAAEN,KAAAA,EAAMO,OAAAA,CAAAA,EAAW,MAAMC,EAC7BL,EACA,CACEM,OAAQ,MACRC,MAAO,WACPC,UAAW,CAAEN,MAAAA,CAAM,CAAA,CAEvB,EAAEO,MAAMC,CAAkB,EAEtBN,OAAAA,GAAQO,EAAkBP,CAAM,EAE7BR,EAA2BC,EAAKI,gBAAgB,CACzD,ECrBaW,EAAsC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAU/CC,CAAkB;AAAA,IAClBC,CAAqB;AAAA,ECNZC,EAAsB,MAAO,CACxCC,OAAAA,EACAd,MAAAA,CACwB,IAAM,CAC9B,GAAI,CAACc,EAAQ,MAAM,IAAIC,EAEvB,OAAO,MAAMC,EAAgB,CAC3BC,KAAM,WACNC,MAAOR,EACPS,QAAS,CAAEb,UAAW,CAAEQ,OAAAA,EAAQd,MAAAA,CAAM,CAAE,EACxCoB,KAAM,2BACNC,WAAY,OACZC,YAAaC,CAAAA,CACd,CACH"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import{M as e,b as r,e as n}from"./transform-shipping-methods.js";import{C as s,a as o,t as i}from"./getCart.graphql.js";import"./getStoreConfig.js";const m=`
|
|
2
|
+
mutation setPaymentMethod($cartId: String!, $paymentMethod: String!) {
|
|
3
|
+
setPaymentMethodOnCart(
|
|
4
|
+
input: { cart_id: $cartId, payment_method: { code: $paymentMethod } }
|
|
5
|
+
) {
|
|
6
|
+
cart {
|
|
7
|
+
id
|
|
8
|
+
...CartData
|
|
9
|
+
...CartSummaryItems
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
${s}
|
|
14
|
+
${o}
|
|
15
|
+
`,y=async({cartId:t,paymentMethod:a})=>{if(!t)throw new e;if(!a)throw new r;return await n({type:"mutation",query:m,options:{variables:{cartId:t,paymentMethod:a}},path:"setPaymentMethodOnCart.cart",signalType:"cart",transformer:i})};export{y as s};
|
|
16
|
+
//# sourceMappingURL=setPaymentMethod.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setPaymentMethod.js","sources":["../../src/api/setPaymentMethod/graphql/setPaymentMethod.graphql.ts","../../src/api/setPaymentMethod/setPaymentMethod.ts"],"sourcesContent":["import {\n CART_DATA_FRAGMENT,\n CART_SUMMARY_FRAGMENT,\n} from '@/checkout/api/getCart/graphql/getCart.graphql';\n\nexport const setPaymentMethodMutation = /* GraphQL */ `\n mutation setPaymentMethod($cartId: String!, $paymentMethod: String!) {\n setPaymentMethodOnCart(\n input: { cart_id: $cartId, payment_method: { code: $paymentMethod } }\n ) {\n cart {\n id\n ...CartData\n ...CartSummaryItems\n }\n }\n }\n ${CART_DATA_FRAGMENT}\n ${CART_SUMMARY_FRAGMENT}\n`;\n","import { MissingCart, MissingPaymentMethod } from '@/checkout/api/errors';\nimport { setPaymentMethodMutation } from '@/checkout/api/setPaymentMethod/graphql/setPaymentMethod.graphql';\nimport { dispatchApiCall } from '@/checkout/api/utils/dispatchApiCall';\nimport { transformCart } from '@/checkout/data/transforms/index';\n\nexport const setPaymentMethod = async ({\n cartId,\n paymentMethod,\n}: {\n cartId: string;\n paymentMethod: string;\n}) => {\n if (!cartId) throw new MissingCart();\n if (!paymentMethod) throw new MissingPaymentMethod();\n\n return await dispatchApiCall({\n type: 'mutation',\n query: setPaymentMethodMutation,\n options: { variables: { cartId, paymentMethod } },\n path: 'setPaymentMethodOnCart.cart',\n signalType: 'cart',\n transformer: transformCart,\n });\n};\n"],"names":["setPaymentMethodMutation","CART_DATA_FRAGMENT","CART_SUMMARY_FRAGMENT","setPaymentMethod","cartId","paymentMethod","MissingCart","MissingPaymentMethod","dispatchApiCall","type","query","options","variables","path","signalType","transformer","transformCart"],"mappings":"qJAKaA,MAAAA,EAAyC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAYlDC,CAAkB;AAAA,IAClBC,CAAqB;AAAA,ECbZC,EAAmB,MAAO,CACrCC,OAAAA,EACAC,cAAAA,CAIF,IAAM,CACJ,GAAI,CAACD,EAAQ,MAAM,IAAIE,EACvB,GAAI,CAACD,EAAe,MAAM,IAAIE,EAE9B,OAAO,MAAMC,EAAgB,CAC3BC,KAAM,WACNC,MAAOV,EACPW,QAAS,CAAEC,UAAW,CAAER,OAAAA,EAAQC,cAAAA,CAAc,CAAE,EAChDQ,KAAM,8BACNC,WAAY,OACZC,YAAaC,CAAAA,CACd,CACH"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import{a as s,b as p,M as u,c as _}from"./getMultilineValues.js";import"./getStoreConfig.js";import{e as A}from"./transform-shipping-methods.js";import{C as m,a as I,t as g}from"./getCart.graphql.js";import"@dropins/tools/event-bus.js";const C=/^\d+$/,T=t=>{if(C.test(t))return parseInt(t,10)},y=`
|
|
2
|
+
mutation setShippingAddress($cartId: String!, $address: CartAddressInput!) {
|
|
3
|
+
setShippingAddressesOnCart(
|
|
4
|
+
input: { cart_id: $cartId, shipping_addresses: [{ address: $address }] }
|
|
5
|
+
) {
|
|
6
|
+
cart {
|
|
7
|
+
id
|
|
8
|
+
...CartData
|
|
9
|
+
...CartSummaryItems
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
${m}
|
|
14
|
+
${I}
|
|
15
|
+
`,S=["city","company","country_code","firstname","lastname","postcode","region","region_id","save_in_address_book","street","telephone","vat_id"],N=t=>{const a={city:t[s.City],company:t[s.Company],country_code:t[s.Country],firstname:t[s.FirstName],lastname:t[s.LastName],postcode:t[s.PostCode],save_in_address_book:!0,street:p(s.Street,t),telephone:t[s.Telephone],vat_id:t[s.Vat]},n=t[s.Region],d=T(n);d?a.region_id=d:a.region=n;const c=Object.keys(t).filter(e=>!e.startsWith("street")).filter(e=>!S.includes(e)).filter(e=>e!=="country_id").map(e=>{const[r,i]=e.split(u);if(!i)return{attribute_code:r,value:t[e]};const o=p(r,t).join(_);return{attribute_code:r,value:o}}).filter((e,r,i)=>r===i.findIndex(o=>o.attribute_code===e.attribute_code));return c.length>0&&(a.custom_attributes=c),a},v=async({signal:t,cartId:a,address:n})=>await A({type:"mutation",query:y,options:{signal:t,variables:{cartId:a,address:n}},path:"setShippingAddressesOnCart.cart",signalType:"cart",transformer:g});export{S,N as p,v as s};
|
|
16
|
+
//# sourceMappingURL=setShippingAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setShippingAddress.js","sources":["../../src/utils/parseRegionId/parseRegionId.ts","../../src/api/setShippingAddress/graphql/setShippingAddress.graphql.ts","../../src/api/setShippingAddress/setShippingAddress.ts"],"sourcesContent":["const NUMERIC_ID_REGEX = /^\\d+$/;\n\nexport const parseRegionId = (regionId: string) => {\n const isId = NUMERIC_ID_REGEX.test(regionId);\n if (!isId) return;\n return parseInt(regionId, 10);\n}\n","import {\n CART_DATA_FRAGMENT,\n CART_SUMMARY_FRAGMENT,\n} from '@/checkout/api/getCart/graphql/getCart.graphql';\n\nexport const setShippingAddressMutation = /* GraphQL */ `\n mutation setShippingAddress($cartId: String!, $address: CartAddressInput!) {\n setShippingAddressesOnCart(\n input: { cart_id: $cartId, shipping_addresses: [{ address: $address }] }\n ) {\n cart {\n id\n ...CartData\n ...CartSummaryItems\n }\n }\n }\n ${CART_DATA_FRAGMENT}\n ${CART_SUMMARY_FRAGMENT}\n`;\n","import {\n MULTILINE_CUSTOM_ATTR_SPLIT,\n MULTILINE_SUFFIX,\n} from '@/checkout/components/AddressForm/constants';\nimport { getMultilineValues, parseRegionId } from '@/checkout/utils';\nimport { setShippingAddressMutation } from './graphql/setShippingAddress.graphql';\nimport { dispatchApiCall } from '@/checkout/api/utils/dispatchApiCall';\nimport { transformCart } from '@/checkout/data/transforms';\nimport { AddressFormFieldCode } from '@/checkout/data/models';\n\nexport const STANDARD_ATTRIBUTES = [\n 'city',\n 'company',\n 'country_code',\n 'firstname',\n 'lastname',\n 'postcode',\n 'region',\n 'region_id',\n 'save_in_address_book',\n 'street',\n 'telephone',\n 'vat_id',\n];\n\nexport interface AddressInput {\n city: string;\n company?: string;\n country_code: string;\n custom_attributes?: {\n attribute_code: string;\n value?: string;\n selected_options?: { uid: string; value: string }[];\n }[];\n firstname: string;\n lastname: string;\n postcode?: string;\n region?: string;\n region_id?: number;\n save_in_address_book?: boolean;\n street: string[];\n telephone?: string;\n vat_id?: string;\n}\n\nexport interface setShippingAddressParams {\n cartId: string;\n address: AddressInput;\n signal?: AbortSignal;\n}\n\n/*\n Region and Region_id are mutually exclusive.\n If region_id is set, region is ignored.\n\n Region could be required for some countries, but not for others. It is required if the country_id is in\n the store configuration \"countries_with_required_region\"\n\n If region is optional and the store configuration \"display_state_if_optional\" is set to true, the region field\n will be displayed as a text input if there is no country.available_regions is empty. If it is set to false,\n the region field will be hidden.\n*/\n\nexport const prepareAddress = (formFields: Record<string, any>) => {\n const address: AddressInput = {\n city: formFields[AddressFormFieldCode.City],\n company: formFields[AddressFormFieldCode.Company],\n country_code: formFields[AddressFormFieldCode.Country],\n firstname: formFields[AddressFormFieldCode.FirstName],\n lastname: formFields[AddressFormFieldCode.LastName],\n postcode: formFields[AddressFormFieldCode.PostCode],\n save_in_address_book: true,\n street: getMultilineValues(AddressFormFieldCode.Street, formFields),\n telephone: formFields[AddressFormFieldCode.Telephone],\n vat_id: formFields[AddressFormFieldCode.Vat],\n };\n\n const region = formFields[AddressFormFieldCode.Region];\n const regionId = parseRegionId(region);\n\n if (!regionId) {\n address.region = region;\n } else {\n address.region_id = regionId;\n }\n\n const custom_attributes = Object.keys(formFields)\n .filter((key) => !key.startsWith('street'))\n .filter((key) => !STANDARD_ATTRIBUTES.includes(key))\n .filter((key) => key !== 'country_id')\n .map((key) => {\n const [code, multiline] = key.split(MULTILINE_SUFFIX);\n if (!multiline) return { attribute_code: code, value: formFields[key] };\n const value = getMultilineValues(code, formFields).join(\n MULTILINE_CUSTOM_ATTR_SPLIT\n );\n return { attribute_code: code, value };\n });\n\n // it is possible to have duplicated multiline custom attributes\n const without_duplicates = custom_attributes.filter(\n (item, index, self) =>\n index === self.findIndex((t) => t.attribute_code === item.attribute_code)\n );\n\n if (without_duplicates.length > 0) {\n address.custom_attributes = without_duplicates;\n }\n\n return address;\n};\n\nexport const setShippingAddress = async ({\n signal,\n cartId,\n address,\n}: setShippingAddressParams) => {\n return await dispatchApiCall({\n type: 'mutation',\n query: setShippingAddressMutation,\n options: { signal, variables: { cartId, address } },\n path: 'setShippingAddressesOnCart.cart',\n signalType: 'cart',\n transformer: transformCart,\n });\n};\n"],"names":["NUMERIC_ID_REGEX","parseRegionId","regionId","test","parseInt","setShippingAddressMutation","CART_DATA_FRAGMENT","CART_SUMMARY_FRAGMENT","STANDARD_ATTRIBUTES","prepareAddress","formFields","address","city","AddressFormFieldCode","City","company","Company","country_code","Country","firstname","FirstName","lastname","LastName","postcode","PostCode","save_in_address_book","street","getMultilineValues","Street","telephone","Telephone","vat_id","Vat","region","Region","region_id","without_duplicates","Object","keys","filter","key","startsWith","includes","map","code","multiline","split","MULTILINE_SUFFIX","attribute_code","value","join","MULTILINE_CUSTOM_ATTR_SPLIT","item","index","self","findIndex","t","length","custom_attributes","setShippingAddress","signal","cartId","dispatchApiCall","type","query","options","variables","path","signalType","transformer","transformCart"],"mappings":"4OAAA,MAAMA,EAAmB,QAEZC,EAAiBC,GAAsB,CAElD,GADaF,EAAiBG,KAAKD,CAAQ,EAEpCE,OAAAA,SAASF,EAAU,EAAE,CAC9B,ECDaG,EAA2C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAYpDC,CAAkB;AAAA,IAClBC,CAAqB;AAAA,ECRZC,EAAsB,CACjC,OACA,UACA,eACA,YACA,WACA,WACA,SACA,YACA,uBACA,SACA,YACA,QAAQ,EAyCGC,EAAkBC,GAAoC,CACjE,MAAMC,EAAwB,CAC5BC,KAAMF,EAAWG,EAAqBC,IAAI,EAC1CC,QAASL,EAAWG,EAAqBG,OAAO,EAChDC,aAAcP,EAAWG,EAAqBK,OAAO,EACrDC,UAAWT,EAAWG,EAAqBO,SAAS,EACpDC,SAAUX,EAAWG,EAAqBS,QAAQ,EAClDC,SAAUb,EAAWG,EAAqBW,QAAQ,EAClDC,qBAAsB,GACtBC,OAAQC,EAAmBd,EAAqBe,OAAQlB,CAAU,EAClEmB,UAAWnB,EAAWG,EAAqBiB,SAAS,EACpDC,OAAQrB,EAAWG,EAAqBmB,GAAG,CAAA,EAGvCC,EAASvB,EAAWG,EAAqBqB,MAAM,EAC/ChC,EAAWD,EAAcgC,CAAM,EAEhC/B,EAGHS,EAAQwB,UAAYjC,EAFpBS,EAAQsB,OAASA,EAmBnB,MAAMG,EAdoBC,OAAOC,KAAK5B,CAAU,EAC7C6B,OAAQC,GAAQ,CAACA,EAAIC,WAAW,QAAQ,CAAC,EACzCF,OAAQC,GAAQ,CAAChC,EAAoBkC,SAASF,CAAG,CAAC,EAClDD,OAAQC,GAAQA,IAAQ,YAAY,EACpCG,IAAaH,GAAA,CACZ,KAAM,CAACI,EAAMC,CAAS,EAAIL,EAAIM,MAAMC,CAAgB,EACpD,GAAI,CAACF,EAAkB,MAAA,CAAEG,eAAgBJ,EAAMK,MAAOvC,EAAW8B,CAAG,CAAA,EACpE,MAAMS,EAAQtB,EAAmBiB,EAAMlC,CAAU,EAAEwC,KACjDC,CACF,EACO,MAAA,CAAEH,eAAgBJ,EAAMK,MAAAA,CAAAA,CAAM,CACtC,EAG0CV,OAC3C,CAACa,EAAMC,EAAOC,IACZD,IAAUC,EAAKC,UAAiBC,GAAAA,EAAER,iBAAmBI,EAAKJ,cAAc,CAC5E,EAEIZ,OAAAA,EAAmBqB,OAAS,IAC9B9C,EAAQ+C,kBAAoBtB,GAGvBzB,CACT,EAEagD,EAAqB,MAAO,CACvCC,OAAAA,EACAC,OAAAA,EACAlD,QAAAA,CACwB,IACjB,MAAMmD,EAAgB,CAC3BC,KAAM,WACNC,MAAO3D,EACP4D,QAAS,CAAEL,OAAAA,EAAQM,UAAW,CAAEL,OAAAA,EAAQlD,QAAAA,CAAQ,CAAE,EAClDwD,KAAM,kCACNC,WAAY,OACZC,YAAaC,CAAAA,CACd"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import{M as s,e as a}from"./transform-shipping-methods.js";import{C as p,a as r,t as n}from"./getCart.graphql.js";import"./getStoreConfig.js";import"@dropins/tools/event-bus.js";const o=`
|
|
2
|
+
mutation setShippingMethods(
|
|
3
|
+
$cartId: String!
|
|
4
|
+
$shippingMethods: [ShippingMethodInput]!
|
|
5
|
+
) {
|
|
6
|
+
setShippingMethodsOnCart(
|
|
7
|
+
input: { cart_id: $cartId, shipping_methods: $shippingMethods }
|
|
8
|
+
) {
|
|
9
|
+
cart {
|
|
10
|
+
id
|
|
11
|
+
...CartData
|
|
12
|
+
...CartSummaryItems
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
${p}
|
|
17
|
+
${r}
|
|
18
|
+
`,d=async({cartId:t,shippingMethods:i})=>{if(!t)throw new s;return a({type:"mutation",query:o,options:{variables:{cartId:t,shippingMethods:i}},path:"setShippingMethodsOnCart.cart",signalType:"cart",transformer:n})};export{d as s};
|
|
19
|
+
//# sourceMappingURL=setShippingMethods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setShippingMethods.js","sources":["../../src/api/setShippingMethods/graphql/setShippingMethodsOnCart.graphql.ts","../../src/api/setShippingMethods/setShippingMethods.ts"],"sourcesContent":["import {\n CART_DATA_FRAGMENT,\n CART_SUMMARY_FRAGMENT,\n} from '@/checkout/api/getCart/graphql/getCart.graphql';\n\nexport const setShippingMethodsMutation = /* GraphQL */ `\n mutation setShippingMethods(\n $cartId: String!\n $shippingMethods: [ShippingMethodInput]!\n ) {\n setShippingMethodsOnCart(\n input: { cart_id: $cartId, shipping_methods: $shippingMethods }\n ) {\n cart {\n id\n ...CartData\n ...CartSummaryItems\n }\n }\n }\n ${CART_DATA_FRAGMENT}\n ${CART_SUMMARY_FRAGMENT}\n`;\n","import { SetShippingMethodsOnCartInput } from '@/checkout/__generated__/types';\nimport { MissingCart } from '@/checkout/api';\nimport { setShippingMethodsMutation } from '@/checkout/api/setShippingMethods/graphql/setShippingMethodsOnCart.graphql';\nimport { dispatchApiCall } from '@/checkout/api/utils/dispatchApiCall';\nimport { transformCart } from '@/checkout/data/transforms/index';\n\nexport type SetShippingMethodsOnCartInputs = {\n cartId: string;\n shippingMethods: SetShippingMethodsOnCartInput['shipping_methods'];\n};\n\nexport const setShippingMethodsOnCart = async ({\n cartId,\n shippingMethods,\n}: SetShippingMethodsOnCartInputs) => {\n if (!cartId) throw new MissingCart();\n\n return dispatchApiCall({\n type: 'mutation',\n query: setShippingMethodsMutation,\n options: { variables: { cartId, shippingMethods } },\n path: 'setShippingMethodsOnCart.cart',\n signalType: 'cart',\n transformer: transformCart,\n });\n};\n"],"names":["setShippingMethodsMutation","CART_DATA_FRAGMENT","CART_SUMMARY_FRAGMENT","setShippingMethodsOnCart","cartId","shippingMethods","MissingCart","dispatchApiCall","type","query","options","variables","path","signalType","transformer","transformCart"],"mappings":"kLAKaA,MAAAA,EAA2C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAepDC,CAAkB;AAAA,IAClBC,CAAqB;AAAA,ECVZC,EAA2B,MAAO,CAC7CC,OAAAA,EACAC,gBAAAA,CAC8B,IAAM,CACpC,GAAI,CAACD,EAAQ,MAAM,IAAIE,EAEvB,OAAOC,EAAgB,CACrBC,KAAM,WACNC,MAAOT,EACPU,QAAS,CAAEC,UAAW,CAAEP,OAAAA,EAAQC,gBAAAA,CAAgB,CAAE,EAClDO,KAAM,gCACNC,WAAY,OACZC,YAAaC,CAAAA,CACd,CACH"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{k as v,f as m,o as f,i as S,l as x,v as _}from"./getStoreConfig.js";import"@dropins/tools/event-bus.js";class w extends Error{constructor(r){super(r.map(t=>t.message).join(" ")),this.name="FetchError"}}class i extends Error{constructor(r){super(r),this.name="InvalidArgument"}}class k extends Error{constructor(r){super(r),this.name="UnexpectedError"}}class B extends i{constructor(){super("Cart ID is required")}}class F extends i{constructor(){super("Email is required")}}class G extends i{constructor(){super("Payment method code is required")}}class Q extends i{constructor(){super("Billing address is required")}}class R extends i{constructor(){super("Country Code is required")}}const C=v({pending:!1,data:void 0}),q=v({pending:!1,data:void 0}),l=[];function A(e){return new Promise((r,t)=>{l.push(e);const s=()=>{l[0]===e?e().then(r).catch(t).finally(()=>l.shift()):setTimeout(s,100)};s()})}const P=["sender_email","recipient_email"];function T(e){return e.filter(r=>!r.path||!P.some(t=>{var s;return((s=r.path)==null?void 0:s.at(-1))===t}))}const b={cart:S,regions:q,estimateShippingMethods:C,customer:x};function I(e,r){return r.split(".").reduce((t,s)=>t&&t[s]!==void 0?t[s]:void 0,e)}const g={cart:null,customer:null,estimateShippingMethods:null,regions:null};async function V(e){const{query:r,options:t,path:s,signalType:u,type:M,transformer:c}=e,n=b[u],d=Symbol();g[u]=d,n.value={...n.value,pending:!0};try{const{data:a,errors:p}=await(M==="mutation"?A(()=>m(r,t).catch(f)):m(r,{method:"GET",cache:"no-cache",...t}).catch(f));if(p){const h=T(p);if(h.length>0)throw new w(h)}let o=I(a,s);if(o===void 0)throw new Error(`No data found at path: ${s}`);return c&&(o=c(o)),n.value={...n.value,data:o},setTimeout(()=>{n.value={...n.value,pending:g[u]===d?!1:n.value.pending}},0),o}catch(a){if(a.name==="AbortError")return;throw n.value={...n.value,pending:!1},a}}const N=(e,r)=>e.amount.value-r.amount.value,y=e=>!(!e||!e.method_code||!e.method_title||_(e.amount.value)||!e.amount.currency),E=e=>({amount:{value:e.amount.value,currency:e.amount.currency},title:e.method_title,code:e.method_code,carrier:{code:e.carrier_code,title:e.carrier_title},value:`${e.carrier_code} - ${e.method_code}`}),j=e=>{if(y(e))return E(e)},D=e=>{if(e)return e.filter(y).map(r=>E(r)).sort(N)};export{w as F,i as I,B as M,k as U,F as a,G as b,Q as c,R as d,V as e,C as f,j as g,q as r,D as t};
|
|
2
|
+
//# sourceMappingURL=transform-shipping-methods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform-shipping-methods.js","sources":["../../src/api/errors/errors.ts","../../src/signals/EstimateShippingMethodsSignal.ts","../../src/signals/RegionsSignal.ts","../../src/api/utils/enqueueRequest.ts","../../src/api/utils/filterControlledErrors.ts","../../src/api/utils/dispatchApiCall.ts","../../src/data/transforms/transform-shipping-methods.ts"],"sourcesContent":["import { FetchQueryError } from '@adobe/fetch-graphql';\n\nexport class FetchError extends Error {\n constructor(reasons: FetchQueryError) {\n super(reasons.map((e: any) => e.message).join(' '));\n this.name = 'FetchError';\n }\n}\n\nexport class InvalidArgument extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'InvalidArgument';\n }\n}\n\nexport class UnexpectedError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'UnexpectedError';\n }\n}\n\nexport class MissingCart extends InvalidArgument {\n constructor() {\n super('Cart ID is required');\n }\n}\nexport class MissingEmail extends InvalidArgument {\n constructor() {\n super('Email is required');\n }\n}\n\nexport class MissingPaymentMethod extends InvalidArgument {\n constructor() {\n super('Payment method code is required');\n }\n}\n\nexport class MissingBillingAddress extends InvalidArgument {\n constructor() {\n super('Billing address is required');\n }\n}\n\nexport class MissingCountry extends InvalidArgument {\n constructor() {\n super('Country Code is required');\n }\n}\n","import { signal } from '@preact/signals';\nimport { ShippingMethod } from '@/checkout/data/models';\n\nexport const estimateShippingMethodsSignal = signal<{\n pending: boolean;\n data?: ShippingMethod[];\n}>({ pending: false, data: undefined });\n","import { AddressFormType } from '@/checkout/data/models';\nimport { Region as RegionModel } from '@/checkout/data/models/region';\nimport { signal } from '@preact/signals';\n\nexport const regionsSignal = signal<{\n addressType?: AddressFormType;\n country?: string;\n selectedRegion?: string;\n selectedRegionId?: string;\n pending: boolean;\n data?: RegionModel[];\n}>({ pending: false, data: undefined });\n","const requestsQueue: (() => Promise<any>)[] = [];\n\nexport function enqueueRequest<T>(requestFn: () => Promise<T>): Promise<T> {\n return new Promise((resolve, reject) => {\n requestsQueue.push(requestFn);\n\n const waitForTurnAndSendRequest = () => {\n if (requestsQueue[0] === requestFn) {\n requestFn()\n .then(resolve)\n .catch(reject)\n .finally(() => requestsQueue.shift());\n } else {\n setTimeout(waitForTurnAndSendRequest, 100);\n }\n };\n\n waitForTurnAndSendRequest();\n });\n}\n","import { FetchQueryError } from '@adobe/fetch-graphql';\n\ntype ErrorPath = (string | number)[];\n\nexport type ErrorWithPath = FetchQueryError[number] & {\n path?: ErrorPath;\n};\n\nconst controlledErrorProps: string[] = ['sender_email', 'recipient_email'];\n\n/**\n * Filters out errors with known paths from a list of errors generated by a GraphQL query.\n *\n * Known issue: The query does not differentiate between physical and virtual gift cards, leading\n * to errors for physical ones as they don't have 'sender_email' and 'recipient_email' properties.\n *\n * @param {ErrorWithPath[]} errors - Array of errors to be filtered.\n * @return {ErrorWithPath[]} Uncontrolled (unexpected) errors not matching predefined paths.\n */\n\nexport function filterControlledErrors(errors: ErrorWithPath[]) {\n return errors.filter(\n (error) =>\n !error.path ||\n !controlledErrorProps.some((controlledErrorProp) => {\n return error.path?.at(-1) === controlledErrorProp;\n })\n );\n}\n","import { FetchError, fetchGraphQl } from '@/checkout/api';\nimport { handleNetworkError } from '@/checkout/lib/network-error';\nimport {\n cartSignal,\n regionsSignal,\n estimateShippingMethodsSignal,\n customerSignal,\n} from '@/checkout/signals';\n\nimport { FetchOptions, FetchQueryError } from '@adobe/fetch-graphql';\nimport { enqueueRequest } from '@/checkout/api/utils/enqueueRequest';\nimport { filterControlledErrors } from '@/checkout/api/utils/filterControlledErrors';\n\nconst signalTypes = {\n cart: cartSignal,\n regions: regionsSignal,\n estimateShippingMethods: estimateShippingMethodsSignal,\n customer: customerSignal,\n};\n\ntype SignalTypesType = typeof signalTypes;\ntype SignalTypesKeys = keyof SignalTypesType;\ntype SignalDataMap = {\n [K in SignalTypesKeys]: SignalTypesType[K]['value']['data'];\n};\ntype DispatchApiCallParams<T extends SignalTypesKeys> = {\n type: 'query' | 'mutation';\n query: string;\n options?: FetchOptions;\n path: string;\n signalType: T;\n transformer?: (data: any) => SignalDataMap[T];\n};\n\nexport function getValueAtPath(obj: any, path: string) {\n return path\n .split('.')\n .reduce(\n (acc, part) => (acc && acc[part] !== undefined ? acc[part] : undefined),\n obj\n );\n}\n\nconst latestCall: Record<SignalTypesKeys, Symbol | null> = {\n cart: null,\n customer: null,\n estimateShippingMethods: null,\n regions: null,\n};\n\nasync function dispatchApiCall<T extends SignalTypesKeys>(\n params: DispatchApiCallParams<T>\n): Promise<SignalDataMap[T]> {\n const { query, options, path, signalType, type, transformer } = params;\n const signal = signalTypes[signalType];\n const currentCall = Symbol();\n\n latestCall[signalType] = currentCall;\n\n signal.value = { ...signal.value, pending: true };\n\n try {\n const { data, errors } = await (type === 'mutation'\n ? enqueueRequest(() =>\n fetchGraphQl(query, options).catch(handleNetworkError)\n )\n : fetchGraphQl(query, {\n method: 'GET',\n cache: 'no-cache',\n ...options,\n }).catch(handleNetworkError));\n\n if (errors) {\n const uncontrolledErrors = filterControlledErrors(errors);\n\n if (uncontrolledErrors.length > 0) {\n throw new FetchError(uncontrolledErrors as FetchQueryError);\n }\n }\n\n let result = getValueAtPath(data, path);\n if (result === undefined) throw new Error(`No data found at path: ${path}`);\n if (transformer) result = transformer(result);\n\n signal.value = { ...signal.value, data: result };\n\n // to avoid flickering of the pending state when there are multiple sequential calls\n setTimeout(() => {\n signal.value = {\n ...signal.value,\n pending:\n latestCall[signalType] === currentCall ? false : signal.value.pending,\n };\n }, 0);\n\n return result;\n } catch (error: any) {\n if (error.name === 'AbortError') return;\n signal.value = { ...signal.value, pending: false };\n throw error;\n }\n}\n\nexport { dispatchApiCall };\n","import { ShippingMethod } from '@/checkout/data/models/shipping-method';\nimport { GetCartQuery } from '@/checkout/__generated__/types';\nimport { isNullish } from '@/checkout/utils/isNullish';\n\ntype Cart = NonNullable<GetCartQuery['cart']>;\ntype ShippingAddresses = Cart['shipping_addresses'];\ntype ShippingAddress = NonNullable<NonNullable<ShippingAddresses>[number]>;\ntype AvailableShippingMethods = ShippingAddress['available_shipping_methods'];\ntype AvailableShippingMethod = NonNullable<AvailableShippingMethods>[number];\ntype SelectedShippingMethod = ShippingAddress['selected_shipping_method'];\n\ntype FilteredShippingMethod = Omit<\n NonNullable<AvailableShippingMethod>,\n 'method_code' | 'method_title' | 'amount'\n> & {\n method_code: string;\n method_title: string;\n amount: {\n value: number;\n currency: string;\n };\n};\n\nconst byPrice = (a: ShippingMethod, b: ShippingMethod) =>\n a.amount.value - b.amount.value;\n\nconst isValid = (method: AvailableShippingMethod | SelectedShippingMethod) => {\n if (!method) return false;\n if (!method.method_code || !method.method_title) return false;\n if (isNullish(method.amount.value) || !method.amount.currency) return false;\n return true;\n};\n\nconst buildShippingMethod = (data: FilteredShippingMethod): ShippingMethod => {\n return {\n amount: {\n value: data.amount.value,\n currency: data.amount.currency,\n },\n title: data.method_title,\n code: data.method_code,\n carrier: {\n code: data.carrier_code,\n title: data.carrier_title,\n },\n value: `${data.carrier_code} - ${data.method_code}`,\n };\n};\n\nexport const transformSelectedShippingMethod = (\n data: SelectedShippingMethod\n): ShippingMethod | undefined => {\n if (!isValid(data)) return;\n return buildShippingMethod(data as FilteredShippingMethod);\n};\n\nexport const transformAvailableShippingMethod = (\n data: AvailableShippingMethod\n): ShippingMethod | undefined => {\n if (!isValid(data)) return;\n return buildShippingMethod(data as FilteredShippingMethod);\n};\n\nexport const transformShippingMethods = (\n data: AvailableShippingMethods\n): ShippingMethod[] | undefined => {\n if (!data) return;\n\n return data\n .filter(isValid)\n .map((method) => buildShippingMethod(method as FilteredShippingMethod))\n .sort(byPrice);\n};\n"],"names":["FetchError","Error","constructor","reasons","map","e","message","join","name","InvalidArgument","UnexpectedError","MissingCart","MissingEmail","MissingPaymentMethod","MissingBillingAddress","MissingCountry","estimateShippingMethodsSignal","signal","pending","data","undefined","regionsSignal","requestsQueue","enqueueRequest","requestFn","Promise","resolve","reject","push","waitForTurnAndSendRequest","then","catch","finally","shift","setTimeout","controlledErrorProps","filterControlledErrors","errors","filter","error","path","some","controlledErrorProp","at","signalTypes","cart","cartSignal","regions","estimateShippingMethods","customer","customerSignal","getValueAtPath","obj","split","reduce","acc","part","latestCall","dispatchApiCall","params","query","options","signalType","type","transformer","currentCall","Symbol","value","fetchGraphQl","handleNetworkError","method","cache","uncontrolledErrors","length","result","byPrice","a","b","amount","isValid","method_code","method_title","isNullish","currency","buildShippingMethod","title","code","carrier","carrier_code","carrier_title","transformSelectedShippingMethod","transformShippingMethods","sort"],"mappings":"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"}
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import*as e from"@dropins/tools/event-bus.js";import*as t from"@dropins/tools/fetch-graphql.js";export const id=4272;export const ids=[4272];export const modules={1212:(e,t,r)=>{r.d(t,{m:()=>s});var n=r(3584),i=r(1092);function o(e,t,r,n,i,o,s){try{var a=e[o](s),l=a.value}catch(e){return void r(e)}a.done?t(l):Promise.resolve(l).then(n,i)}var s=function(){var e,t=(e=function*(){var e,{data:t,errors:r}=yield(0,n.CA)('\n query fetchAddressFormFields {\n attributesForm(formCode: "customer_register_address") {\n items {\n frontend_input\n code\n label\n default_value\n is_required\n options {\n label\n value\n is_default\n }\n ... on CustomerAttributeMetadata {\n multiline_count\n sort_order\n validate_rules {\n name\n value\n }\n }\n }\n errors {\n message\n type\n }\n }\n }\n',{method:"GET",cache:"no-cache"}).catch(i.i);if(r)throw Error(r.map((e=>e.message)).join(" "));return(null==t||null===(e=t.attributesForm)||void 0===e?void 0:e.items)||[]},function(){var t=this,r=arguments;return new Promise((function(n,i){var s=e.apply(t,r);function a(e){o(s,n,i,a,l,"next",e)}function l(e){o(s,n,i,a,l,"throw",e)}a(void 0)}))});return function(){return t.apply(this,arguments)}}()},2532:(e,t,r)=>{r.d(t,{W:()=>c});var n=r(3760),i=r(3112),o="\n mutation setBillingAddress(\n $cartId: String!\n $input: BillingAddressInput!\n ) {\n setBillingAddressOnCart(\n input: { cart_id: $cartId, billing_address: $input }\n ) {\n cart {\n id\n ...CheckoutData\n ...CartSummaryItems\n }\n }\n }\n ".concat(i.e2,"\n ").concat(i.Qz,"\n"),s=r(9120),a=r(6824);function l(e,t,r,n,i,o,s){try{var a=e[o](s),l=a.value}catch(e){return void r(e)}a.done?t(l):Promise.resolve(l).then(n,i)}var c=function(){var e,t=(e=function*(e){var{signal:t,cartId:r,input:i}=e,{address:l,same_as_shipping:c}=i;if(!r)throw new n.Ij;if(!c&&!l)throw new n.o8;return yield(0,s.m)({type:"mutation",query:o,options:{signal:t,variables:{cartId:r,input:i}},path:"setBillingAddressOnCart.cart",signalType:"cart",transformer:a.o})},function(){var t=this,r=arguments;return new Promise((function(n,i){var o=e.apply(t,r);function s(e){l(o,n,i,s,a,"next",e)}function a(e){l(o,n,i,s,a,"throw",e)}s(void 0)}))});return function(e){return t.apply(this,arguments)}}()},8572:(e,t,r)=>{r.d(t,{_:()=>z,i:()=>q});var n=r(2532),i=r(4944),o=r(3792),s=r(3388),a=r(8412),l=()=>(0,a.im)(s.W,{className:"bill-to-shipping-address__skeleton",children:(0,a.im)(s.K,{variant:"row",size:"small"})}),c=r(5536),d=r.n(c),u=r(7008),p=r.n(u),f=r(1496),v=r.n(f),m=r(9356),b=r.n(m),h=r(9904),g=r.n(h),y=r(9960),O={attributes:{"data-dropin":"storefront-checkout","data-sdk":"0.22.0"},styleTagTransform:function(e,t){window._loadedStyles=window._loadedStyles??{};const r=e?.match(/^\.dropin-(\w+)/)?.[1],n=t.getAttribute("data-sdk"),i=r?`sdk/${r}`:t.getAttribute("data-dropin");t.setAttribute("data-dropin",i),t.removeAttribute("data-sdk");const o=window._loadedStyles[i];if(o){const i=function(e,t){const[r,n]=e.split("-"),[i,o]=t.split("-"),s=[...r.split("."),n],a=[...i.split("."),o],l=parseInt(s[0],10),c=parseInt(a[0],10);if(l!==c)return l>c?e:t;const d=parseInt(s[1],10),u=parseInt(a[1],10);if(d!==u)return d>u?e:t;const p=parseInt(s[2],10),f=parseInt(a[2],10);if(p!==f)return p>f?e:t;if(s[3]&&a[3]){const r=/(alpha|beta)(.*)/,n=s[3].match(r),i=a[3].match(r),o=n[1],l=i[1],c=parseInt(n[2],10),d=parseInt(i[2],10);if(o===l)return c>d?e:t;if("alpha"===o&&"beta"===l)return t;if("beta"===o&&"alpha"===l)return e}return s[3]?t:e}(n,o.sdk);if(!r||r&&i===o.sdk){const t=o.style.textContent;o.style.textContent=`${t}\n/* --- MERGED --- */\n${e}`}else r&&i!==o.sdk&&(o.style.textContent=`/* --- UPGRADED --- */\n${e}`);return void t.remove()}t.textContent=e,window._loadedStyles[i]={sdk:n,core:r,style:t};const s=document.querySelector("head"),{lastDropinStyleInjected:a,lastSDKStyleInjected:l}=window._loadedStyles;r?(l?s.insertBefore(t,l.nextSibling):s.insertBefore(t,s.firstChild),window._loadedStyles.lastSDKStyleInjected=t):(a?s.insertBefore(t,a.nextSibling):l?s.insertBefore(t,l.nextSibling):s.insertBefore(t,s.firstChild),window._loadedStyles.lastDropinStyleInjected=t)}};O.setAttributes=b(),O.insert=v().bind(null,"head"),O.domAPI=p(),O.insertStyleElement=g();d()(y.c,O);y.c&&y.c.locals&&y.c.locals;var S=r(2460),j=["className","isInitialized","checked"];function w(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function _(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?w(Object(r),!0).forEach((function(t){k(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):w(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function k(e,t,r){var n;return(t="symbol"==typeof(n=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"))?n:String(n))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function P(e,t){if(null==e)return{};var r,n,i=function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var I=e=>{var{className:t,isInitialized:r=!0,checked:n=!0}=e,s=P(e,j),c=(0,S.cF)({title:"Checkout.BillToShippingAddress.title"});return r?(0,a.im)("div",{className:(0,i.i)(["checkout-bill-to-shipping-address",t]),children:(0,a.im)(o.y,_({"data-testid":"bill-to-shipping-checkbox",className:"checkout-bill-to-shipping-address__checkbox",checked:n,name:"checkout-bill-to-shipping-address__checkbox",label:c.title},s))}):(0,a.im)(l,{})},A=r(5668),B=r(9488),C=r(2796),x=r(40),T=r(2236),D=["children"];function E(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function F(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?E(Object(r),!0).forEach((function(t){N(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):E(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function N(e,t,r){var n;return(t="symbol"==typeof(n=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"))?n:String(n))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function $(e,t){if(null==e)return{};var r,n,i=function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)r=o[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function q(e,t,r){return!t&&!r||!(!t||!r)&&e.every((e=>{var n=e.code;return function(e,t,r){var n=e[r],i=t[r];return void 0===n&&void 0===i||null===n&&null===i||("object"==typeof n&&"object"==typeof i?JSON.stringify(n)===JSON.stringify(i):n===i)}(t,r,n)}))}var z=e=>{var{children:t}=e,r=$(e,D),{data:i}=A.cartSignal.value,o=(null==i?void 0:i.id)||"",s=B.isBillToShippingSignal.value.checked,{isInitialized:l}=(e=>{var t,{isBillToShipping:r}=e,[n,i]=(0,C.oT)(!1),{fields:o}=(0,T.q)(),s=A.cartSignal.value.data,a=!!s,l=null==s?void 0:s.billingAddress,c=null==s||null===(t=s.shippingAddresses)||void 0===t?void 0:t[0];return(0,C.YB)((()=>{if(o){var e=localStorage.getItem(x.c);if(!n&&e)return i(!0),void(r.value={checked:"true"===e,setByUser:!1});if(!n&&a){i(!0);var t=q(o,l,c);r.value={checked:null!=s&&s.billingAddress?t:r.value.checked,setByUser:!1}}}}),[l,null==s?void 0:s.billingAddress,o,a,r,n,c]),{isInitialized:n}})({isBillToShipping:B.isBillToShippingSignal});return(0,a.im)(I,F(F({},r),{},{checked:s,isInitialized:l,onChange:e=>{var t,r=e.target.checked,i=A.cartSignal.value.data,s=Boolean(null==i||null===(t=i.shippingAddresses)||void 0===t?void 0:t[0]);if(B.isBillToShippingSignal.value={checked:r,setByUser:!0},localStorage.setItem(x.c,r.toString()),l&&r&&s){var a=new AbortController;return(0,n.W)({signal:a.signal,cartId:o,input:{same_as_shipping:!0}}).catch((e=>{console.error(e)})),()=>{a.abort()}}},disabled:A.cartSignal.value.pending}))}},40:(e,t,r)=>{r.d(t,{c:()=>n});var n="is_bill_to_shipping_address"},9700:(e,t,r)=>{r.d(t,{_k:()=>i._,cT:()=>n.c,cp:()=>i._,iI:()=>i.i});var n=r(40),i=r(8572)},2236:(e,t,r)=>{r.d(t,{Y:()=>l,q:()=>c});var n=r(304),i=r(8596),o=r(1212),s=r(8412),a=(0,n.GY)(void 0);function l(e){var{children:t}=e,[r,n]=(0,i.oT)({});return(0,i.YB)((()=>{(0,o.m)().then((e=>n({fields:e})))}),[]),(0,s.im)(a.Provider,{value:r,children:t})}function c(){var e=(0,i.Co)(a);if(void 0!==e)return e;throw new Error("useAddressFormFields must be used within an AddressFormFieldsProvider")}},9488:(e,t,r)=>{r.d(t,{isBillToShippingSignal:()=>n});var n=(0,r(1520).OC)({checked:!0,setByUser:!1})},9960:(e,t,r)=>{r.d(t,{c:()=>a});var n=r(6008),i=r.n(n),o=r(2076),s=r.n(o)()(i());s.push([e.id,".checkout-bill-to-shipping-address{\n display:grid;\n}\n\n.checkout-bill-to-shipping-address label{\n font:var(--type-body-2-default-font);\n letter-spacing:var(--type-body-2-default-letter-spacing);\n gap:0;\n}\n",""]);const a=s},8122:(t,r,n)=>{t.exports=(e=>{var t={};return n.d(t,e),t})({events:()=>e.events})},8616:(e,r,n)=>{e.exports=(e=>{var t={};return n.d(t,e),t})({FetchGraphQL:()=>t.FetchGraphQL})}};import r from"../runtime.js";import*as n from"../8412.js";r.C(n);import*as i from"../2892.js";r.C(i);import*as o from"../2328.js";r.C(o);import*as s from"../8668.js";r.C(s);import*as a from"../5068.js";r.C(a);import*as l from"./BillToShippingAddress.js";r.C(l);var c,d=(c=9700,r(r.s=c)),u=d.cT,p=d._k,f=d.iI,v=d.cp;export{u as BILL_TO_SHIPPING_KEY,p as BillToShippingAddress,f as compareAddresses,v as default};
|
|
1
|
+
import{a as L,B as P,c as S,B as T}from"../chunks/BillToShippingAddress2.js";import"@dropins/tools/event-bus.js";import"../chunks/getStoreConfig.js";import"@dropins/tools/fetch-graphql.js";import"@dropins/tools/preact.js";import"@dropins/tools/preact-hooks.js";import"@dropins/tools/preact-jsx-runtime.js";import"../chunks/setBillingAddress.js";import"../chunks/transform-shipping-methods.js";import"../chunks/getCart.graphql.js";import"../chunks/cart-item.js";import"@dropins/tools/lib.js";import"@dropins/tools/components.js";/* empty css */import"@dropins/tools/i18n.js";import"@dropins/tools/preact-compat.js";export{L as BILL_TO_SHIPPING_KEY,P as BillToShippingAddress,S as compareAddresses,T as default};
|
|
2
|
+
//# sourceMappingURL=BillToShippingAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BillToShippingAddress.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import*as e from"@dropins/tools/event-bus.js";import*as t from"@dropins/tools/fetch-graphql.js";export const id=5340;export const ids=[5340];export const modules={8572:(e,t,r)=>{r.d(t,{_:()=>G,i:()=>z});var i=r(2532),n=r(4944),o=r(3792),l=r(3388),s=r(8412),a=()=>(0,s.im)(l.W,{className:"bill-to-shipping-address__skeleton",children:(0,s.im)(l.K,{variant:"row",size:"small"})}),c=r(5536),d=r.n(c),p=r(7008),u=r.n(p),f=r(1496),b=r.n(f),g=r(9356),v=r.n(g),y=r(9904),m=r.n(y),h=r(9960),O={attributes:{"data-dropin":"storefront-checkout","data-sdk":"0.22.0"},styleTagTransform:function(e,t){window._loadedStyles=window._loadedStyles??{};const r=e?.match(/^\.dropin-(\w+)/)?.[1],i=t.getAttribute("data-sdk"),n=r?`sdk/${r}`:t.getAttribute("data-dropin");t.setAttribute("data-dropin",n),t.removeAttribute("data-sdk");const o=window._loadedStyles[n];if(o){const n=function(e,t){const[r,i]=e.split("-"),[n,o]=t.split("-"),l=[...r.split("."),i],s=[...n.split("."),o],a=parseInt(l[0],10),c=parseInt(s[0],10);if(a!==c)return a>c?e:t;const d=parseInt(l[1],10),p=parseInt(s[1],10);if(d!==p)return d>p?e:t;const u=parseInt(l[2],10),f=parseInt(s[2],10);if(u!==f)return u>f?e:t;if(l[3]&&s[3]){const r=/(alpha|beta)(.*)/,i=l[3].match(r),n=s[3].match(r),o=i[1],a=n[1],c=parseInt(i[2],10),d=parseInt(n[2],10);if(o===a)return c>d?e:t;if("alpha"===o&&"beta"===a)return t;if("beta"===o&&"alpha"===a)return e}return l[3]?t:e}(i,o.sdk);if(!r||r&&n===o.sdk){const t=o.style.textContent;o.style.textContent=`${t}\n/* --- MERGED --- */\n${e}`}else r&&n!==o.sdk&&(o.style.textContent=`/* --- UPGRADED --- */\n${e}`);return void t.remove()}t.textContent=e,window._loadedStyles[n]={sdk:i,core:r,style:t};const l=document.querySelector("head"),{lastDropinStyleInjected:s,lastSDKStyleInjected:a}=window._loadedStyles;r?(a?l.insertBefore(t,a.nextSibling):l.insertBefore(t,l.firstChild),window._loadedStyles.lastSDKStyleInjected=t):(s?l.insertBefore(t,s.nextSibling):a?l.insertBefore(t,a.nextSibling):l.insertBefore(t,l.firstChild),window._loadedStyles.lastDropinStyleInjected=t)}};O.setAttributes=v(),O.insert=b().bind(null,"head"),O.domAPI=u(),O.insertStyleElement=m();d()(h.c,O);h.c&&h.c.locals&&h.c.locals;var j=r(2460),S=["className","isInitialized","checked"];function w(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function k(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?w(Object(r),!0).forEach((function(t){P(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):w(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function P(e,t,r){var i;return(t="symbol"==typeof(i=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,t||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"))?i:String(i))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function I(e,t){if(null==e)return{};var r,i,n=function(e,t){if(null==e)return{};var r,i,n={},o=Object.keys(e);for(i=0;i<o.length;i++)r=o[i],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i<o.length;i++)r=o[i],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var _=e=>{var{className:t,isInitialized:r=!0,checked:i=!0}=e,l=I(e,S),c=(0,j.cF)({title:"Checkout.BillToShippingAddress.title"});return r?(0,s.im)("div",{className:(0,n.i)(["checkout-bill-to-shipping-address",t]),children:(0,s.im)(o.y,k({"data-testid":"bill-to-shipping-checkbox",className:"checkout-bill-to-shipping-address__checkbox",checked:i,name:"checkout-bill-to-shipping-address__checkbox",label:c.title},l))}):(0,s.im)(a,{})},B=r(5668),x=r(9488),A=r(2796),C=r(40),D=r(2236),E=["children"];function T(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function M(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?T(Object(r),!0).forEach((function(t){N(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):T(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function N(e,t,r){var i;return(t="symbol"==typeof(i=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,t||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"))?i:String(i))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function F(e,t){if(null==e)return{};var r,i,n=function(e,t){if(null==e)return{};var r,i,n={},o=Object.keys(e);for(i=0;i<o.length;i++)r=o[i],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i<o.length;i++)r=o[i],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function z(e,t,r){return!t&&!r||!(!t||!r)&&e.every((e=>{var i=e.code;return function(e,t,r){var i=e[r],n=t[r];return void 0===i&&void 0===n||null===i&&null===n||("object"==typeof i&&"object"==typeof n?JSON.stringify(i)===JSON.stringify(n):i===n)}(t,r,i)}))}var G=e=>{var{children:t}=e,r=F(e,E),{data:n}=B.cartSignal.value,o=(null==n?void 0:n.id)||"",l=x.isBillToShippingSignal.value.checked,{isInitialized:a}=(e=>{var t,{isBillToShipping:r}=e,[i,n]=(0,A.oT)(!1),{fields:o}=(0,D.q)(),l=B.cartSignal.value.data,s=!!l,a=null==l?void 0:l.billingAddress,c=null==l||null===(t=l.shippingAddresses)||void 0===t?void 0:t[0];return(0,A.YB)((()=>{if(o){var e=localStorage.getItem(C.c);if(!i&&e)return n(!0),void(r.value={checked:"true"===e,setByUser:!1});if(!i&&s){n(!0);var t=z(o,a,c);r.value={checked:null!=l&&l.billingAddress?t:r.value.checked,setByUser:!1}}}}),[a,null==l?void 0:l.billingAddress,o,s,r,i,c]),{isInitialized:i}})({isBillToShipping:x.isBillToShippingSignal});return(0,s.im)(_,M(M({},r),{},{checked:l,isInitialized:a,onChange:e=>{var t,r=e.target.checked,n=B.cartSignal.value.data,l=Boolean(null==n||null===(t=n.shippingAddresses)||void 0===t?void 0:t[0]);if(x.isBillToShippingSignal.value={checked:r,setByUser:!0},localStorage.setItem(C.c,r.toString()),a&&r&&l){var s=new AbortController;return(0,i.W)({signal:s.signal,cartId:o,input:{same_as_shipping:!0}}).catch((e=>{console.error(e)})),()=>{s.abort()}}},disabled:B.cartSignal.value.pending}))}},40:(e,t,r)=>{r.d(t,{c:()=>i});var i="is_bill_to_shipping_address"},2872:(e,t,r)=>{r.d(t,{M:()=>y});var i=r(2532),n=r(9296),o=r(8488),l=r(8572),s=r(6476),a=r(2236),c=r(8628),d=r(5668),p=r(9488),u=r(2796),f=r(8412);function b(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function g(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?b(Object(r),!0).forEach((function(t){v(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):b(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function v(e,t,r){var i;return(t="symbol"==typeof(i=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,t||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"))?i:String(i))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var y=e=>{var{fields:t}=(0,a.q)(),r=(0,u.yK)(null),{data:b}=d.cartSignal.value,v=(null==b?void 0:b.id)||"",{checked:y,setByUser:m}=p.isBillToShippingSignal.value,h=!y,O=(0,u.kZ)((e=>(0,i.W)({signal:e.signal,cartId:v,input:{address:y?void 0:(0,n.ek)(e.address),same_as_shipping:y}})),[v,y]),j=(0,u.kZ)((()=>{var e,r=d.cartSignal.value.data;return!(0,l.i)(t,null==r?void 0:r.billingAddress,null==r||null===(e=r.shippingAddresses)||void 0===e?void 0:e[0])}),[t]);return(0,u.YB)((()=>{if(m){var e=new AbortController;return y||r.current.triggerSaveAddress(e.signal),()=>{e.abort()}}}),[y,m]),(0,f.im)(o.i,g(g({},e),{},{addressType:c.y.BILLING,"data-testid":"billing-form",headingId:"Checkout.BillingAddress.title",name:s.M,ref:r,saveAddressHandler:O,shouldAutoFillForm:j,style:{display:h?"block":"none"}}))}},6476:(e,t,r)=>{r.d(t,{M:()=>i});var i="billing_address"},3084:(e,t,r)=>{r.d(t,{Mh:()=>n.M,Mx:()=>i.M,cp:()=>i.M});var i=r(2872),n=r(6476)},9960:(e,t,r)=>{r.d(t,{c:()=>s});var i=r(6008),n=r.n(i),o=r(2076),l=r.n(o)()(n());l.push([e.id,".checkout-bill-to-shipping-address{\n display:grid;\n}\n\n.checkout-bill-to-shipping-address label{\n font:var(--type-body-2-default-font);\n letter-spacing:var(--type-body-2-default-letter-spacing);\n gap:0;\n}\n",""]);const s=l},8122:(t,r,i)=>{t.exports=(e=>{var t={};return i.d(t,e),t})({events:()=>e.events})},8616:(e,r,i)=>{e.exports=(e=>{var t={};return i.d(t,e),t})({FetchGraphQL:()=>t.FetchGraphQL})}};import r from"../runtime.js";import*as i from"../8412.js";r.C(i);import*as n from"../2892.js";r.C(n);import*as o from"../184.js";r.C(o);import*as l from"../196.js";r.C(l);import*as s from"../4708.js";r.C(s);import*as a from"../8668.js";r.C(a);import*as c from"../5068.js";r.C(c);import*as d from"../1568.js";r.C(d);import*as p from"../8100.js";r.C(p);import*as u from"./BillingForm.js";r.C(u);var f,b=(f=3084,r(r.s=f)),g=b.Mh,v=b.Mx,y=b.cp;export{g as BILLING_FORM_NAME,v as BillingForm,y as default};
|
|
1
|
+
import{B as n,B as u}from"../chunks/BillingForm.js";import{B as E}from"../chunks/constants3.js";import"@dropins/tools/event-bus.js";import"../chunks/getStoreConfig.js";import"@dropins/tools/fetch-graphql.js";import"@dropins/tools/preact.js";import"@dropins/tools/preact-hooks.js";import"@dropins/tools/preact-jsx-runtime.js";import"../chunks/getMultilineValues.js";import"../chunks/transform-shipping-methods.js";import"../chunks/setBillingAddress.js";import"../chunks/getCart.graphql.js";import"../chunks/cart-item.js";import"../chunks/setShippingAddress.js";import"../chunks/ToggleButton.js";import"@dropins/tools/lib.js";import"@dropins/tools/i18n.js";import"@dropins/tools/components.js";/* empty css */import"@dropins/tools/preact-compat.js";import"../chunks/BillToShippingAddress2.js";export{E as BILLING_FORM_NAME,n as BillingForm,u as default};
|
|
2
|
+
//# sourceMappingURL=BillingForm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BillingForm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import*as t from"@dropins/tools/event-bus.js";import*as e from"@dropins/tools/fetch-graphql.js";export const id=6784;export const ids=[6784,4424];export const modules={4424:(t,e,n)=>{n.r(e),n.d(e,{default:()=>s});var r,i,a=n(2796);function o(){return o=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},o.apply(this,arguments)}const s=function(t){return a.kv("svg",o({width:24,height:24,fill:"none",xmlns:"http://www.w3.org/2000/svg"},t),r||(r=a.kv("path",{vectorEffect:"non-scaling-stroke",d:"M.75 12C.75 5.784 5.784.75 12 .75S23.25 5.784 23.25 12 18.216 23.25 12 23.25.75 18.216.75 12Z",stroke:"currentColor"})),i||(i=a.kv("path",{vectorEffect:"non-scaling-stroke",d:"M11.75 5.884V4.75h.5v1.134l-.201 7.187h-.098l-.201-7.187Zm.05 12.366v-1.263h.425v1.263H11.8Z",stroke:"currentColor"})))}},3720:(t,e,n)=>{n.d(e,{G:()=>S});var r=n(4944),i=n(2796),a=n(5536),o=n.n(a),s=n(7008),l=n.n(s),p=n(1496),c=n.n(p),d=n(9356),u=n.n(d),h=n(9904),y=n.n(h),f=n(4480),g={attributes:{"data-dropin":"storefront-checkout","data-sdk":"0.22.0"},styleTagTransform:function(t,e){window._loadedStyles=window._loadedStyles??{};const n=t?.match(/^\.dropin-(\w+)/)?.[1],r=e.getAttribute("data-sdk"),i=n?`sdk/${n}`:e.getAttribute("data-dropin");e.setAttribute("data-dropin",i),e.removeAttribute("data-sdk");const a=window._loadedStyles[i];if(a){const i=function(t,e){const[n,r]=t.split("-"),[i,a]=e.split("-"),o=[...n.split("."),r],s=[...i.split("."),a],l=parseInt(o[0],10),p=parseInt(s[0],10);if(l!==p)return l>p?t:e;const c=parseInt(o[1],10),d=parseInt(s[1],10);if(c!==d)return c>d?t:e;const u=parseInt(o[2],10),h=parseInt(s[2],10);if(u!==h)return u>h?t:e;if(o[3]&&s[3]){const n=/(alpha|beta)(.*)/,r=o[3].match(n),i=s[3].match(n),a=r[1],l=i[1],p=parseInt(r[2],10),c=parseInt(i[2],10);if(a===l)return p>c?t:e;if("alpha"===a&&"beta"===l)return e;if("beta"===a&&"alpha"===l)return t}return o[3]?e:t}(r,a.sdk);if(!n||n&&i===a.sdk){const e=a.style.textContent;a.style.textContent=`${e}\n/* --- MERGED --- */\n${t}`}else n&&i!==a.sdk&&(a.style.textContent=`/* --- UPGRADED --- */\n${t}`);return void e.remove()}e.textContent=t,window._loadedStyles[i]={sdk:r,core:n,style:e};const o=document.querySelector("head"),{lastDropinStyleInjected:s,lastSDKStyleInjected:l}=window._loadedStyles;n?(l?o.insertBefore(e,l.nextSibling):o.insertBefore(e,o.firstChild),window._loadedStyles.lastSDKStyleInjected=e):(s?o.insertBefore(e,s.nextSibling):l?o.insertBefore(e,l.nextSibling):o.insertBefore(e,o.firstChild),window._loadedStyles.lastDropinStyleInjected=e)}};g.setAttributes=u(),g.insert=c().bind(null,"head"),g.domAPI=l(),g.insertStyleElement=y();o()(f.c,g);f.c&&f.c.locals&&f.c.locals;var m=n(8412),b=["source","size","stroke","viewBox","className"];function _(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function v(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?_(Object(n),!0).forEach((function(e){k(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):_(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function k(t,e,n){var r;return(e="symbol"==typeof(r=function(t,e){if("object"!=typeof t||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}(e,"string"))?r:String(r))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function C(t,e){if(null==t)return{};var n,r,i=function(t,e){if(null==t)return{};var n,r,i={},a=Object.keys(t);for(r=0;r<a.length;r++)n=a[r],e.indexOf(n)>=0||(i[n]=t[n]);return i}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(r=0;r<a.length;r++)n=a[r],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(i[n]=t[n])}return i}var w={Add:(0,i.Wk)((()=>n.e(1600).then(n.bind(n,1600)))),Bulk:(0,i.Wk)((()=>n.e(3180).then(n.bind(n,3180)))),Burger:(0,i.Wk)((()=>n.e(3728).then(n.bind(n,3728)))),Cart:(0,i.Wk)((()=>n.e(5008).then(n.bind(n,5008)))),Check:(0,i.Wk)((()=>n.e(9772).then(n.bind(n,9772)))),ChevronDown:(0,i.Wk)((()=>n.e(1680).then(n.bind(n,1680)))),ChevronUp:(0,i.Wk)((()=>n.e(844).then(n.bind(n,844)))),ChevronRight:(0,i.Wk)((()=>n.e(8824).then(n.bind(n,8824)))),Close:(0,i.Wk)((()=>n.e(2543).then(n.bind(n,2543)))),Heart:(0,i.Wk)((()=>n.e(9176).then(n.bind(n,9176)))),Minus:(0,i.Wk)((()=>n.e(1268).then(n.bind(n,1268)))),Placeholder:(0,i.Wk)((()=>n.e(8868).then(n.bind(n,8868)))),PlaceholderFilled:(0,i.Wk)((()=>n.e(5488).then(n.bind(n,5488)))),Search:(0,i.Wk)((()=>n.e(3764).then(n.bind(n,3764)))),SearchFilled:(0,i.Wk)((()=>n.e(6820).then(n.bind(n,6820)))),Sort:(0,i.Wk)((()=>n.e(3832).then(n.bind(n,3832)))),Star:(0,i.Wk)((()=>n.e(3836).then(n.bind(n,3836)))),View:(0,i.Wk)((()=>n.e(7524).then(n.bind(n,7524)))),User:(0,i.Wk)((()=>n.e(3996).then(n.bind(n,3996)))),Warning:(0,i.Wk)((()=>n.e(4004).then(n.bind(n,4004)))),Locker:(0,i.Wk)((()=>n.e(2388).then(n.bind(n,2388)))),Wallet:(0,i.Wk)((()=>n.e(8220).then(n.bind(n,8220)))),Card:(0,i.Wk)((()=>n.e(664).then(n.bind(n,664)))),Order:(0,i.Wk)((()=>n.e(3916).then(n.bind(n,3916)))),Delivery:(0,i.Wk)((()=>n.e(9948).then(n.bind(n,2328)))),OrderError:(0,i.Wk)((()=>n.e(984).then(n.bind(n,984)))),OrderSuccess:(0,i.Wk)((()=>n.e(2920).then(n.bind(n,2920)))),PaymentError:(0,i.Wk)((()=>n.e(9940).then(n.bind(n,9940)))),CheckWithCircle:(0,i.Wk)((()=>n.e(1604).then(n.bind(n,1604)))),WarningWithCircle:(0,i.Wk)((()=>n.e(4424).then(n.bind(n,4424)))),WarningFilled:(0,i.Wk)((()=>n.e(1176).then(n.bind(n,1176)))),InfoFilled:(0,i.Wk)((()=>n.e(6484).then(n.bind(n,6484)))),HeartFilled:(0,i.Wk)((()=>n.e(488).then(n.bind(n,488)))),Trash:(0,i.Wk)((()=>n.e(5476).then(n.bind(n,5476))))};function S(t){var{source:e,size:n="24",stroke:a="2",viewBox:o="0 0 24 24",className:s}=t,l=C(t,b),p="string"==typeof e?w[e]:null,c={className:(0,r.i)(["dropin-icon","dropin-icon--shape-stroke-".concat(a),s]),width:n,height:n,viewBox:o};return(0,m.im)(i.G0,{fallback:null,children:p?(0,m.im)(p,v(v({},l),c)):(0,m.im)(e,v(v({},l),c))})}},2780:(t,e,n)=>{n.d(e,{C:()=>r});var r=(t,e)=>{var n;return function(){for(var r=arguments.length,i=new Array(r),a=0;a<r;a++)i[a]=arguments[a];clearTimeout(n),n=setTimeout((()=>t.apply(this,i)),e)}}},1044:(t,e,n)=>{n.d(e,{o:()=>c});var r=n(4944),i=n(8412),a=["node"];function o(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function s(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?o(Object(n),!0).forEach((function(e){l(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function l(t,e,n){var r;return(e="symbol"==typeof(r=function(t,e){if("object"!=typeof t||!t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,e||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}(e,"string"))?r:String(r))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function p(t,e){if(null==t)return{};var n,r,i=function(t,e){if(null==t)return{};var n,r,i={},a=Object.keys(t);for(r=0;r<a.length;r++)n=a[r],e.indexOf(n)>=0||(i[n]=t[n]);return i}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(r=0;r<a.length;r++)n=a[r],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(i[n]=t[n])}return i}function c(t){var{node:e}=t,n=p(t,a);return e?Array.isArray(e)?(0,i.im)(i.ae,{children:e.map(((t,e)=>(0,i.im)(c,s({node:t,className:n.className},n),e)))}):(n.className=(0,r.i)([e.props.className,n.className]),(0,i.im)(e.type,s(s({ref:e.ref},e.props),n),e.key)):null}},1036:(t,e,n)=>{n.d(e,{a:()=>h});var r=n(3584),i=n(5912),a=n(2256),o=n(4723),s=n(2148);function l(t){return 1===t?o.m.ExcludingTax:2===t?o.m.IncludingTax:3===t?o.m.IncludingAndExcludingTax:o.m.ExcludingTax}function p(t){switch(t){case i.ow.DisplayExcludingTax:return o.m.ExcludingTax;case i.ow.DisplayIncludingTax:return o.m.IncludingTax;case i.ow.DisplayTypeBoth:return o.m.IncludingAndExcludingTax}}var c=n(764),d=n(1092);function u(t,e,n,r,i,a,o){try{var s=t[a](o),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,i)}var h=function(){var t,e=(t=function*(){return(0,r.CA)("\n query getStoreConfig {\n storeConfig {\n cart_summary_display_quantity\n countries_with_required_region\n default_country\n display_state_if_optional\n is_guest_checkout_enabled\n is_one_page_checkout_enabled\n locale\n max_items_in_order_summary\n optional_zip_countries\n shopping_cart_display_full_summary\n shopping_cart_display_grand_total\n shopping_cart_display_price\n shopping_cart_display_shipping\n shopping_cart_display_subtotal\n shopping_cart_display_tax_gift_wrapping\n shopping_cart_display_zero_tax\n store_code\n }\n }\n",{method:"GET",cache:"no-cache"}).then((t=>{var{data:e,errors:n}=t;return(0,c.Y)(n),function(t){if(!t)return a.IJ;var e,{default_country:n,countries_with_required_region:r,display_state_if_optional:i,optional_zip_countries:c,is_guest_checkout_enabled:d,is_one_page_checkout_enabled:u,shopping_cart_display_price:h,shopping_cart_display_shipping:y,shopping_cart_display_subtotal:f,shopping_cart_display_tax_gift_wrapping:g,shopping_cart_display_grand_total:m,shopping_cart_display_full_summary:b,shopping_cart_display_zero_tax:_,max_items_in_order_summary:v,cart_summary_display_quantity:k}=t;return{defaultCountry:n||a.IJ.defaultCountry,countriesWithRequiredRegion:(null==r?void 0:r.split(","))||a.IJ.countriesWithRequiredRegion,displayStateIfOptional:i||a.IJ.displayStateIfOptional,countriesWithOptionalZipCode:(null==c?void 0:c.split(","))||a.IJ.countriesWithOptionalZipCode,isGuestCheckoutEnabled:d||a.IJ.isGuestCheckoutEnabled,isOnePageCheckoutEnabled:u||a.IJ.isOnePageCheckoutEnabled,taxCartDisplay:{shoppingCartDisplayPrice:h?l(h):a.IJ.taxCartDisplay.shoppingCartDisplayPrice,shoppingCartDisplayShipping:y?l(y):a.IJ.taxCartDisplay.shoppingCartDisplayShipping,shoppingCartDisplaySubtotal:f?l(f):a.IJ.taxCartDisplay.shoppingCartDisplaySubtotal,shoppingCartDisplayGiftWrapping:g?p(g):a.IJ.taxCartDisplay.shoppingCartDisplayGiftWrapping,shoppingCartDisplayGrandTotal:m||a.IJ.taxCartDisplay.shoppingCartDisplayGrandTotal,shoppingCartDisplayFullSummary:b||a.IJ.taxCartDisplay.shoppingCartDisplayFullSummary,shoppingCartDisplayZeroTax:_||a.IJ.taxCartDisplay.shoppingCartDisplayZeroTax},cartSummaryMaxItems:v||a.IJ.cartSummaryMaxItems,cartSummaryTotalDisplay:(0,s.q)(k)?a.IJ.cartSummaryTotalDisplay:(e=k,0===e?o.E.Rows:o.E.Quantity)}}(null==e?void 0:e.storeConfig)})).catch(d.i)},function(){var e=this,n=arguments;return new Promise((function(r,i){var a=t.apply(e,n);function o(t){u(a,r,i,o,s,"next",t)}function s(t){u(a,r,i,o,s,"throw",t)}o(void 0)}))});return function(){return e.apply(this,arguments)}}()},2216:(t,e,n)=>{n.d(e,{_:()=>g});var r=n(5536),i=n.n(r),a=n(7008),o=n.n(a),s=n(1496),l=n.n(s),p=n(9356),c=n.n(p),d=n(9904),u=n.n(d),h=n(7696),y={attributes:{"data-dropin":"storefront-checkout","data-sdk":"0.22.0"},styleTagTransform:function(t,e){window._loadedStyles=window._loadedStyles??{};const n=t?.match(/^\.dropin-(\w+)/)?.[1],r=e.getAttribute("data-sdk"),i=n?`sdk/${n}`:e.getAttribute("data-dropin");e.setAttribute("data-dropin",i),e.removeAttribute("data-sdk");const a=window._loadedStyles[i];if(a){const i=function(t,e){const[n,r]=t.split("-"),[i,a]=e.split("-"),o=[...n.split("."),r],s=[...i.split("."),a],l=parseInt(o[0],10),p=parseInt(s[0],10);if(l!==p)return l>p?t:e;const c=parseInt(o[1],10),d=parseInt(s[1],10);if(c!==d)return c>d?t:e;const u=parseInt(o[2],10),h=parseInt(s[2],10);if(u!==h)return u>h?t:e;if(o[3]&&s[3]){const n=/(alpha|beta)(.*)/,r=o[3].match(n),i=s[3].match(n),a=r[1],l=i[1],p=parseInt(r[2],10),c=parseInt(i[2],10);if(a===l)return p>c?t:e;if("alpha"===a&&"beta"===l)return e;if("beta"===a&&"alpha"===l)return t}return o[3]?e:t}(r,a.sdk);if(!n||n&&i===a.sdk){const e=a.style.textContent;a.style.textContent=`${e}\n/* --- MERGED --- */\n${t}`}else n&&i!==a.sdk&&(a.style.textContent=`/* --- UPGRADED --- */\n${t}`);return void e.remove()}e.textContent=t,window._loadedStyles[i]={sdk:r,core:n,style:e};const o=document.querySelector("head"),{lastDropinStyleInjected:s,lastSDKStyleInjected:l}=window._loadedStyles;n?(l?o.insertBefore(e,l.nextSibling):o.insertBefore(e,o.firstChild),window._loadedStyles.lastSDKStyleInjected=e):(s?o.insertBefore(e,s.nextSibling):l?o.insertBefore(e,l.nextSibling):o.insertBefore(e,o.firstChild),window._loadedStyles.lastDropinStyleInjected=e)}};y.setAttributes=c(),y.insert=l().bind(null,"head"),y.domAPI=o(),y.insertStyleElement=u();i()(h.c,y);h.c&&h.c.locals&&h.c.locals;var f=n(8412),g=t=>{var{className:e,children:n,level:r=2}=t,i=r>=1&&r<=6?"h".concat(r):"h2";return(0,f.im)(i,{className:e,children:n})}},6768:(t,e,n)=>{n.d(e,{AB:()=>r.A,EP:()=>r.E,cp:()=>r.E});var r=n(3316)},2256:(t,e,n)=>{n.d(e,{EV:()=>c,IJ:()=>l,o3:()=>d});var r=n(1036),i=n(4723),a=n(304),o=n(8596),s=n(8412),l={defaultCountry:"US",countriesWithRequiredRegion:[],displayStateIfOptional:!1,countriesWithOptionalZipCode:[],isGuestCheckoutEnabled:!1,isOnePageCheckoutEnabled:!1,taxCartDisplay:{shoppingCartDisplayPrice:i.m.ExcludingTax,shoppingCartDisplayShipping:i.m.ExcludingTax,shoppingCartDisplaySubtotal:i.m.ExcludingTax,shoppingCartDisplayGiftWrapping:i.m.ExcludingTax,shoppingCartDisplayGrandTotal:!1,shoppingCartDisplayFullSummary:!1,shoppingCartDisplayZeroTax:!1},cartSummaryMaxItems:10,cartSummaryTotalDisplay:i.E.Quantity},p=(0,a.GY)(void 0),c=t=>{var{children:e}=t,[n,i]=(0,o.oT)();return(0,o.YB)((()=>{(0,r.a)().then((t=>{i(t)})).catch((()=>{console.error("Failed to fetch store config"),i(l)}))}),[]),(0,s.im)(p.Provider,{value:{config:n},children:e})};function d(){var t=(0,o.Co)(p);if(void 0!==t)return t;throw new Error("useStore must be used within a StoreProvider")}},5172:(t,e,n)=>{n.d(e,{s:()=>r,w:()=>i});var r=function(t){return t.InStock="IN_STOCK",t.OutOfStock="OUT_OF_STOCK",t}({}),i=function(t){return t.Simple="SimpleProduct",t.Configurable="ConfigurableProduct",t.Downloadable="DownloadableProduct",t.GiftCard="GiftCardProduct",t.Virtual="VirtualProduct",t.Bundle="BundleProduct",t}({})},4723:(t,e,n)=>{n.d(e,{E:()=>i,m:()=>r});var r=function(t){return t[t.ExcludingTax=1]="ExcludingTax",t[t.IncludingTax=2]="IncludingTax",t[t.IncludingAndExcludingTax=3]="IncludingAndExcludingTax",t}({}),i=function(t){return t[t.Rows=0]="Rows",t[t.Quantity=1]="Quantity",t}({})},764:(t,e,n)=>{n.d(e,{Y:()=>r});var r=t=>{if(t)throw Error(t.map((t=>t.message)).join(" "))}},5668:(t,e,n)=>{n.d(e,{cartSignal:()=>r});var r=(0,n(1520).OC)({pending:!1,data:void 0})},4480:(t,e,n)=>{n.d(e,{c:()=>s});var r=n(6008),i=n.n(r),a=n(2076),o=n.n(a)()(i());o.push([t.id,".dropin-icon{\n}\n\n.dropin-icon--shape-stroke-1{\n stroke-width:var(--shape-icon-stroke-1);\n}\n\n.dropin-icon--shape-stroke-2{\n stroke-width:var(--shape-icon-stroke-2);\n}\n\n.dropin-icon--shape-stroke-3{\n stroke-width:var(--shape-icon-stroke-3);\n}\n\n.dropin-icon--shape-stroke-4{\n stroke-width:var(--shape-icon-stroke-4);\n}\n",""]);const s=o},7696:(t,e,n)=>{n.d(e,{c:()=>s});var r=n(6008),i=n.n(r),a=n(2076),o=n.n(a)()(i());o.push([t.id,"\n",""]);const s=o},8122:(e,n,r)=>{e.exports=(t=>{var e={};return r.d(e,t),e})({events:()=>t.events})},8616:(t,n,r)=>{t.exports=(t=>{var e={};return r.d(e,t),e})({FetchGraphQL:()=>e.FetchGraphQL})}};import n from"../runtime.js";import*as r from"../8412.js";n.C(r);import*as i from"../2892.js";n.C(i);import*as a from"../4928.js";n.C(a);import*as o from"../2956.js";n.C(o);import*as s from"../1424.js";n.C(s);import*as l from"../8668.js";n.C(l);import*as p from"../3316.js";n.C(p);import*as c from"./CartSummary.js";n.C(c);var d,u=(d=6768,n(n.s=d)),h=u.EP,y=u.cp,f=u.AB;export{h as CartSummary,y as default,f as useCartSummary};
|
|
1
|
+
import{C as b,C as c,u as g}from"../chunks/CartSummary.js";import"@dropins/tools/lib.js";import"../chunks/ToggleButton.js";import"@dropins/tools/event-bus.js";import"../chunks/getStoreConfig.js";import"@dropins/tools/fetch-graphql.js";import"@dropins/tools/preact.js";import"@dropins/tools/preact-hooks.js";import"@dropins/tools/preact-jsx-runtime.js";import"../chunks/getMultilineValues.js";import"../chunks/transform-shipping-methods.js";import"@dropins/tools/i18n.js";import"@dropins/tools/components.js";/* empty css */import"@dropins/tools/preact-compat.js";import"../chunks/cart-item.js";export{b as CartSummary,c as default,g as useCartSummary};
|
|
2
|
+
//# sourceMappingURL=CartSummary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CartSummary.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|