{"version":3,"file":"0417e353.js","sources":["../../../src/components/globals/cart/LocalCartProvider.client.tsx"],"sourcesContent":["import {useCallback} from 'react';\nimport {CartProvider as ShopifyCartProvider} from '@shopify/hydrogen';\n\nimport {CartUIProvider, useCartUI} from './CartUIProvider.client';\n\n/**\n * A client component that creates a cart object and provides callbacks that can be accessed by any descendent component using the `useCart` hook and related hooks\n */\ninterface CartProviderProps {\n children?: JSX.Element[];\n numCartLines?: any;\n customerAccessToken: string;\n countryCode: string;\n}\nexport function LocalCartProvider({\n children,\n numCartLines,\n customerAccessToken,\n countryCode = 'US',\n}: CartProviderProps): JSX.Element {\n return (\n \n \n {children}\n \n \n );\n}\n\nfunction Provider({\n children,\n numCartLines,\n customerAccessToken,\n countryCode = 'US',\n}: CartProviderProps): JSX.Element {\n const {openCart} = useCartUI();\n\n const open = useCallback(() => {\n if (openCart) openCart();\n }, [openCart]);\n\n return (\n <>\n \n {children}\n \n >\n );\n}\n\nconst customCartFragment = `\nfragment CartFragment on Cart {\n id\n checkoutUrl\n totalQuantity\n buyerIdentity {\n countryCode\n customer {\n id\n email\n firstName\n lastName\n displayName\n }\n email\n phone\n }\n lines(first: $numCartLines) {\n edges {\n node {\n id\n quantity\n attributes {\n key\n value\n }\n cost {\n totalAmount {\n amount\n currencyCode\n }\n subtotalAmount {\n amount\n currencyCode\n }\n compareAtAmountPerQuantity {\n amount\n currencyCode\n }\n }\n merchandise {\n ... on ProductVariant {\n id\n sku\n title\n availableForSale\n compareAtPriceV2 {\n ...MoneyFragment\n }\n priceV2 {\n ...MoneyFragment\n }\n requiresShipping\n title\n image {\n ...ImageFragment\n }\n product {\n id\n handle\n title\n productType\n vendor\n tags\n }\n selectedOptions {\n name\n value\n }\n }\n }\n }\n }\n }\n cost {\n subtotalAmount {\n ...MoneyFragment\n }\n totalAmount {\n ...MoneyFragment\n }\n totalDutyAmount {\n ...MoneyFragment\n }\n totalTaxAmount {\n ...MoneyFragment\n }\n }\n note\n attributes {\n key\n value\n }\n discountCodes {\n code\n }\n}\n\nfragment MoneyFragment on MoneyV2 {\n currencyCode\n amount\n}\n\nfragment ImageFragment on Image {\n id\n url\n altText\n width\n height\n}\n`;\n"],"names":["LocalCartProvider","children","numCartLines","customerAccessToken","countryCode","CartUIProvider","Provider","openCart","useCartUI","open","useCallback","_Fragment","ShopifyCartProvider","customCartFragment"],"mappings":"wYAcO,SAASA,EAAkB,CAChCC,SAAAA,EACAC,aAAAA,EACAC,oBAAAA,EACAC,YAAAA,EAAc,IACG,EAAgB,CACjC,SACGC,EAAc,CAAA,WACZC,EAAQ,CACP,oBAAAH,EACA,aAAAD,EACA,YAAAE,EAAyB,SAAAH,CAAA,CAEhB,CAAA,CAEI,CAErB,CAEA,SAASK,EAAS,CAChBL,SAAAA,EACAC,aAAAA,EACAC,oBAAAA,EACAC,YAAAA,EAAc,IACG,EAAgB,CAC3B,KAAA,CAACG,SAAAA,GAAYC,EAAW,EAExBC,EAAOC,EAAAA,QAAAA,YAAY,IAAM,CACzBH,GAAoBA,GAAA,EACvB,CAACA,CAAQ,CAAC,EAEb,SACEI,EAAA,CAAA,WACGC,EAAmB,CAClB,aAAcC,EACd,oBAAAV,EAEA,YAAAC,EACA,aAAAF,EACA,UAAWO,EACX,SAAUA,EAAK,SAAAR,CAAA,CAEN,CAAA,CAEV,CAEP,CAEA,MAAMY,EAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;"}