@dropins/storefront-cart 1.6.0-alpha4 → 1.6.0-alpha5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"OrderSummary.js","sources":["/@dropins/storefront-cart/src/components/OrderSummary/OrderSummary.tsx","/@dropins/storefront-cart/src/hooks/useEstimatedTotals.tsx","/@dropins/storefront-cart/src/containers/OrderSummary/OrderSummary.tsx"],"sourcesContent":["/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { FunctionComponent, VNode } from 'preact';\nimport { HTMLAttributes, useState } from 'preact/compat';\nimport { classes, VComponent } from '@adobe-commerce/elsie/lib';\nimport '@/cart/components/OrderSummary/OrderSummary.css';\nimport { useText } from '@adobe-commerce/elsie/i18n';\nimport { ChevronDown, ChevronUp } from '@adobe-commerce/elsie/icons';\nimport {\n Accordion,\n AccordionSection,\n Divider,\n ProgressSpinner,\n} from '@adobe-commerce/elsie/components';\nimport { JSXInternal } from 'preact/src/jsx';\nimport { OrderSummaryLine } from '@/cart/containers/OrderSummaryLine/OrderSummaryLine';\n\nexport interface OrderSummaryLineItem {\n key: string;\n title?: string;\n className?: string;\n sortOrder: number;\n content:\n | string\n | JSXInternal.Element\n | VNode<HTMLAttributes<HTMLDivElement>>\n | OrderSummaryLineItem[]\n | undefined;\n}\n\nexport interface OrderSummaryProps\n extends Omit<HTMLAttributes<HTMLDivElement>, 'loading'> {\n variant?: 'primary' | 'secondary';\n heading?: VNode<HTMLAttributes<HTMLDivElement>>;\n loading?: boolean;\n subTotal?: {\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n priceExcludingTax?: VNode<HTMLAttributes<HTMLSpanElement>>;\n taxIncluded?: boolean;\n taxExcluded?: boolean;\n zeroTaxSubtotal?: boolean;\n };\n shipping?: VNode<HTMLAttributes<HTMLDivElement>>;\n discounts?: {\n label: string;\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n caption?: VNode<HTMLAttributes<HTMLDivElement>>;\n coupon?: VNode<HTMLAttributes<HTMLSpanElement>>;\n }[];\n taxTotal?: {\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n estimated?: boolean;\n };\n taxesApplied?: {\n label: string;\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n }[];\n total?: {\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n estimated?: boolean;\n priceWithoutTax?: VNode<HTMLAttributes<HTMLSpanElement>>;\n };\n printedCard?: {\n renderContent: boolean;\n taxIncluded: boolean;\n taxInclAndExcl: boolean;\n priceExclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n priceInclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n };\n itemsGiftWrapping?: {\n renderContent: boolean;\n taxIncluded: boolean;\n taxInclAndExcl: boolean;\n priceExclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n priceInclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n };\n orderGiftWrapping?: {\n renderContent: boolean;\n taxIncluded: boolean;\n taxInclAndExcl: boolean;\n priceExclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n priceInclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n };\n primaryAction?: VNode<HTMLAttributes<HTMLButtonElement>>;\n coupons?: VNode<HTMLAttributes<HTMLDivElement>>;\n giftCards?: VNode<HTMLAttributes<HTMLDivElement>>;\n totalSaved?: VNode<HTMLAttributes<HTMLSpanElement>>;\n appliedGiftCards?: {\n label: VNode<HTMLAttributes<HTMLSpanElement>> | string;\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n content?: VNode[];\n };\n updateLineItems?: (\n lineItems: Array<OrderSummaryLineItem>\n ) => Array<OrderSummaryLineItem>;\n}\n\nexport const OrderSummary: FunctionComponent<OrderSummaryProps> = ({\n className,\n children,\n variant = 'primary',\n heading,\n loading = true,\n subTotal,\n shipping,\n discounts,\n taxTotal,\n taxesApplied,\n total,\n primaryAction,\n coupons,\n giftCards,\n totalSaved,\n appliedGiftCards,\n printedCard,\n itemsGiftWrapping,\n orderGiftWrapping,\n updateLineItems = (lineItems) => lineItems,\n ...props\n}) => {\n const [showTaxBreakdown, setShowTaxBreakdown] = useState(false);\n\n const translations = useText({\n checkout: 'Cart.PriceSummary.checkout',\n discountedPrice: 'Cart.CartItem.discountedPrice',\n download: 'Cart.CartItem.download',\n heading: 'Cart.Cart.heading',\n message: 'Cart.CartItem.message',\n regularPrice: 'Cart.CartItem.regularPrice',\n recipient: 'Cart.CartItem.recipient',\n sender: 'Cart.CartItem.sender',\n file: 'Cart.CartItem.file',\n files: 'Cart.CartItem.files',\n\n orderSummary: 'Cart.PriceSummary.orderSummary',\n // Taxes\n taxesBreakdownTitle: 'Cart.PriceSummary.taxes.breakdown',\n taxTotal: 'Cart.PriceSummary.taxes.total',\n taxEstimated: 'Cart.PriceSummary.taxes.estimated',\n taxTotalOnly: 'Cart.PriceSummary.taxes.totalOnly',\n showTaxBreakdown: 'Cart.PriceSummary.taxes.showBreakdown',\n hideTaxBreakdown: 'Cart.PriceSummary.taxes.hideBreakdown',\n taxToBeDetermined: 'Cart.PriceSummary.taxToBeDetermined',\n\n // Subtotal\n subtotalLabel: 'Cart.PriceSummary.subTotal.label',\n subtotalWithTaxes: 'Cart.PriceSummary.subTotal.withTaxes',\n subtotalWithoutTaxes: 'Cart.PriceSummary.subTotal.withoutTaxes',\n\n // Total\n totalEstimated: 'Cart.PriceSummary.total.estimated',\n totalLabel: 'Cart.PriceSummary.total.label',\n totalWithoutTax: 'Cart.PriceSummary.total.withoutTax',\n totalSaved: 'Cart.PriceSummary.total.saved',\n\n // Shipping\n shippingLabel: 'Cart.PriceSummary.shipping.label',\n zipPlaceholder: 'Cart.PriceSummary.shipping.zipPlaceholder',\n editZipAction: 'Cart.PriceSummary.shipping.editZipAction',\n shippingWithTaxes: 'Cart.PriceSummary.shipping.withTaxes',\n shippingWithoutTaxes: 'Cart.PriceSummary.shipping.withoutTaxes',\n shippingEstimated: 'Cart.PriceSummary.shipping.estimated',\n shippingEstimatedByState: 'Cart.PriceSummary.shipping.alternateField.state',\n shippingEstimatedByZip: 'Cart.PriceSummary.shipping.alternateField.zip',\n destinationLinkAriaLabel:\n 'Cart.PriceSummary.shipping.destinationLinkAriaLabel',\n applyButton: 'Cart.PriceSummary.estimatedShippingForm.apply.label',\n countryField: 'Cart.PriceSummary.estimatedShippingForm.country.placeholder',\n freeShipping: 'Cart.PriceSummary.freeShipping',\n stateField: 'Cart.PriceSummary.estimatedShippingForm.state.placeholder',\n zipField: 'Cart.PriceSummary.estimatedShippingForm.zip.placeholder',\n\n // Printed Card\n printedCardTitle: 'Cart.PriceSummary.giftOptionsTax.printedCard.title',\n printedCardInclTax: 'Cart.PriceSummary.giftOptionsTax.printedCard.inclTax',\n printedCardExclTax: 'Cart.PriceSummary.giftOptionsTax.printedCard.exclTax',\n\n // Gift Wrapping Item\n itemGiftWrappingTitle:\n 'Cart.PriceSummary.giftOptionsTax.itemGiftWrapping.title',\n itemGiftWrappingInclTax:\n 'Cart.PriceSummary.giftOptionsTax.itemGiftWrapping.inclTax',\n itemGiftWrappingExclTax:\n 'Cart.PriceSummary.giftOptionsTax.itemGiftWrapping.exclTax',\n\n // Gift Wrapping Order\n orderGiftWrappingTitle:\n 'Cart.PriceSummary.giftOptionsTax.orderGiftWrapping.title',\n orderGiftWrappingInclTax:\n 'Cart.PriceSummary.giftOptionsTax.orderGiftWrapping.inclTax',\n orderGiftWrappingExclTax:\n 'Cart.PriceSummary.giftOptionsTax.orderGiftWrapping.exclTax',\n });\n\n const appliedGiftCardsContent = appliedGiftCards ? (\n <OrderSummaryLine\n key={appliedGiftCards?.label}\n label={appliedGiftCards?.label}\n price={appliedGiftCards?.price}\n classSuffixes={['applied-gift-cards']}\n >\n {appliedGiftCards?.content}\n </OrderSummaryLine>\n ) : null;\n\n const subTotalContent = subTotal && (\n <OrderSummaryLine\n key={translations.subtotalLabel}\n label={translations.subtotalLabel}\n price={subTotal.price}\n classSuffixes={['subTotal']}\n >\n {subTotal.taxIncluded && (\n <div\n data-testid=\"sub-total-tax-caption\"\n className=\"cart-order-summary__caption\"\n >\n <span>{translations.subtotalWithTaxes}</span>\n </div>\n )}\n\n {subTotal.taxExcluded ? (\n <div\n data-testid=\"sub-total-tax-caption-excluded\"\n className=\"cart-order-summary__caption\"\n >\n <span>\n {subTotal.priceExcludingTax}\n &nbsp;\n {translations.subtotalWithoutTaxes}\n </span>\n </div>\n ) : undefined}\n </OrderSummaryLine>\n );\n\n const discountsContent = discounts && discounts.length > 0 && (\n <>\n {discounts.map((discount) => (\n <OrderSummaryLine\n key={discount.label}\n label={discount.label}\n price={discount.price}\n classSuffixes={['discount']}\n >\n {discount.coupon && (\n <VComponent\n node={discount.coupon}\n className=\"cart-order-summary__coupon__code\"\n />\n )}\n\n {discount.caption && (\n <VComponent\n node={discount.caption}\n className=\"cart-order-summary__caption\"\n />\n )}\n </OrderSummaryLine>\n ))}\n </>\n );\n\n const taxContent =\n taxesApplied && taxesApplied.length > 0 ? (\n /* Show breakdown if provided */\n <Accordion\n data-testid=\"tax-breakdown\"\n className=\"cart-order-summary__taxes\"\n iconOpen={ChevronDown}\n iconClose={ChevronUp}\n >\n <AccordionSection\n title={translations.taxesBreakdownTitle}\n secondaryText={\n !showTaxBreakdown && taxTotal ? (\n <VComponent\n node={taxTotal.price}\n className=\"cart-order-summary__price\"\n />\n ) : undefined\n }\n renderContentWhenClosed={false}\n onStateChange={setShowTaxBreakdown}\n >\n <div className=\"cart-order-summary__appliedTaxes\">\n {taxesApplied.map((tax) => (\n <OrderSummaryLine\n key={tax.label}\n label={tax.label}\n price={tax.price}\n classSuffixes={['taxEntry']}\n labelClassSuffix=\"muted\"\n />\n ))}\n </div>\n\n {taxTotal && (\n <OrderSummaryLine\n label={translations.taxTotal}\n price={taxTotal.price}\n classSuffixes={['taxTotal']}\n labelClassSuffix=\"muted\"\n />\n )}\n </AccordionSection>\n </Accordion>\n ) : (\n taxTotal && (\n <OrderSummaryLine\n label={\n taxTotal.estimated\n ? translations.taxEstimated\n : translations.taxTotalOnly\n }\n price={taxTotal.price}\n classSuffixes={['taxTotal']}\n testId=\"tax-total-only\"\n />\n )\n );\n\n const printedCardContent = printedCard?.renderContent ? (\n <OrderSummaryLine\n key={translations.printedCardTitle}\n label={translations.printedCardTitle}\n price={\n printedCard.taxInclAndExcl || printedCard.taxIncluded\n ? printedCard.priceInclTax\n : printedCard.priceExclTax\n }\n classSuffixes={['printedCardContent']}\n >\n {printedCard.taxIncluded && (\n <div\n data-testid=\"printed-card-incl\"\n className=\"cart-order-summary__caption\"\n >\n <span>{translations.printedCardInclTax}</span>\n </div>\n )}\n\n {printedCard.taxInclAndExcl ? (\n <div\n data-testid=\"printed-card-incl-excl\"\n className=\"cart-order-summary__caption\"\n >\n <span>\n {printedCard.priceExclTax}\n &nbsp;\n {translations.printedCardExclTax}\n </span>\n </div>\n ) : undefined}\n </OrderSummaryLine>\n ) : null;\n\n const itemsGiftWrappingContent = itemsGiftWrapping?.renderContent ? (\n <OrderSummaryLine\n key={translations.itemGiftWrappingTitle}\n label={translations.itemGiftWrappingTitle}\n price={\n itemsGiftWrapping.taxInclAndExcl || itemsGiftWrapping.taxIncluded\n ? itemsGiftWrapping.priceInclTax\n : itemsGiftWrapping.priceExclTax\n }\n classSuffixes={['itemsGiftWrappingContent']}\n >\n {itemsGiftWrapping.taxIncluded ? (\n <div\n data-testid=\"item-gift-wrapping-incl\"\n className=\"cart-order-summary__caption\"\n >\n <span>{translations.itemGiftWrappingInclTax}</span>\n </div>\n ) : null}\n\n {itemsGiftWrapping.taxInclAndExcl ? (\n <div\n data-testid=\"item-gift-wrapping-incl-excl\"\n className=\"cart-order-summary__caption\"\n >\n <span>\n {itemsGiftWrapping.priceExclTax}\n &nbsp;\n {translations.itemGiftWrappingExclTax}\n </span>\n </div>\n ) : null}\n </OrderSummaryLine>\n ) : null;\n\n const orderGiftWrappingContent = orderGiftWrapping?.renderContent ? (\n <OrderSummaryLine\n key={translations.orderGiftWrappingTitle}\n label={translations.orderGiftWrappingTitle}\n price={\n orderGiftWrapping.taxInclAndExcl || orderGiftWrapping.taxIncluded\n ? orderGiftWrapping.priceInclTax\n : orderGiftWrapping.priceExclTax\n }\n classSuffixes={['orderGiftWrappingContent']}\n >\n {orderGiftWrapping.taxIncluded && (\n <div\n data-testid=\"order-gift-wrapping-incl\"\n className=\"cart-order-summary__caption\"\n >\n <span>{translations.orderGiftWrappingInclTax}</span>\n </div>\n )}\n\n {orderGiftWrapping.taxInclAndExcl ? (\n <div\n data-testid=\"order-gift-wrapping-incl-excl\"\n className=\"cart-order-summary__caption\"\n >\n <span>\n {orderGiftWrapping.priceExclTax}\n &nbsp;\n {translations.orderGiftWrappingExclTax}\n </span>\n </div>\n ) : undefined}\n </OrderSummaryLine>\n ) : null;\n\n const lineItems: Array<OrderSummaryLineItem> = [\n {\n key: 'subTotalContent',\n sortOrder: 100,\n content: subTotalContent,\n },\n ...(shipping\n ? [\n {\n key: 'shippingContent',\n sortOrder: 200,\n content: (\n <VComponent\n node={shipping}\n className=\"cart-order-summary__shipping\"\n />\n ),\n },\n ]\n : []),\n {\n key: 'printedCard',\n sortOrder: 300,\n content: printedCardContent,\n },\n {\n key: 'itemsGiftWrappingContent',\n sortOrder: 400,\n content: itemsGiftWrappingContent,\n },\n {\n key: 'orderGiftWrappingContent',\n sortOrder: 500,\n content: orderGiftWrappingContent,\n },\n {\n key: 'discountsContent',\n sortOrder: 600,\n content: discountsContent,\n },\n {\n key: 'appliedGiftCardsContent',\n sortOrder: 700,\n content: appliedGiftCardsContent,\n },\n {\n key: 'taxContent',\n sortOrder: 800,\n content: taxContent,\n },\n ...(total\n ? [\n {\n key: 'taxContent',\n sortOrder: 900,\n content: (\n <OrderSummaryLine\n label={\n total.estimated\n ? translations.totalEstimated\n : translations.totalLabel\n }\n price={total.price}\n classSuffixes={['total', 'total--padded']}\n testId=\"total-content\"\n labelClassSuffix=\"bold\"\n />\n ),\n },\n ]\n : []),\n ...(total?.priceWithoutTax\n ? [\n {\n key: 'totalWithoutTaxContent',\n sortOrder: 1000,\n content: (\n <OrderSummaryLine\n label={translations.totalWithoutTax}\n price={total.priceWithoutTax}\n classSuffixes={['totalWithoutTax']}\n testId=\"total-without-tax\"\n labelClassSuffix=\"muted\"\n />\n ),\n },\n ]\n : []),\n ...(totalSaved\n ? [\n {\n key: 'totalSavedContent',\n sortOrder: 1100,\n content: (\n <OrderSummaryLine\n label={translations.totalSaved}\n price={totalSaved}\n classSuffixes={['saved']}\n testId=\"total-saved\"\n labelClassSuffix=\"muted\"\n />\n ),\n },\n ]\n : []),\n ...(primaryAction\n ? [\n {\n key: 'primaryActionContent',\n sortOrder: 1200,\n content: (\n <div\n className={classes([\n 'cart-order-summary__entry',\n 'cart-order-summary__primaryAction',\n ])}\n >\n {primaryAction}\n </div>\n ),\n },\n ]\n : []),\n ...(coupons\n ? [\n {\n key: 'couponsContent',\n sortOrder: 1300,\n content: (\n <VComponent\n node={coupons}\n className=\"cart-order-summary__coupons\"\n />\n ),\n },\n ]\n : []),\n ...(giftCards\n ? [\n {\n key: 'giftCardsContent',\n sortOrder: 1400,\n content: (\n <VComponent\n node={giftCards}\n className=\"cart-order-summary__gift-cards\"\n />\n ),\n },\n ]\n : []),\n ];\n\n const updatedLineItems: Array<OrderSummaryLineItem> = updateLineItems(\n lineItems\n ).sort(\n (currentLine: OrderSummaryLineItem, nextLine: OrderSummaryLineItem) => {\n return currentLine.sortOrder - nextLine.sortOrder;\n }\n );\n\n return (\n <div\n {...props}\n className={classes([\n 'cart-order-summary',\n ['cart-order-summary--loading', loading],\n [`cart-order-summary__${variant}`, variant],\n className,\n ])}\n >\n {loading && <ProgressSpinner className=\"cart-order-summary__spinner\" />}\n\n <div className=\"cart-order-summary__heading\">\n {heading && (\n <VComponent\n node={heading}\n className=\"cart-order-summary__heading-text\"\n />\n )}\n\n <Divider\n variant=\"primary\"\n className=\"cart-order-summary__divider-primary\"\n />\n </div>\n\n <div className=\"cart-order-summary__content\">\n {updatedLineItems.map((line: OrderSummaryLineItem) => {\n if (Array.isArray(line.content)) {\n return (\n <Accordion\n key={line.key}\n className={line.className}\n actionIconPosition={'right'}\n iconOpen={ChevronDown}\n iconClose={ChevronUp}\n >\n <AccordionSection\n defaultOpen={false}\n title={line.title}\n renderContentWhenClosed={false}\n >\n {line.content.map((innerLine) => {\n return innerLine.content;\n })}\n </AccordionSection>\n </Accordion>\n );\n }\n return line.content;\n })}\n </div>\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { useState } from 'preact/compat';\nimport { PriceProps } from '@adobe-commerce/elsie/components';\n\nimport { getEstimatedTotals } from '@/cart/api';\n\nexport const useEstimatedTotals = () => {\n const [loading, setLoading] = useState<boolean>(false);\n\n const [estimatedTotals, setEstimatedTotals] = useState<any>();\n\n const handleEstimateTotals = (\n formValues: {\n shippingCountry: string;\n shippingState?: string;\n shippingStateId?: number;\n shippingZip?: string;\n },\n shippingMethods?: {\n carrier_code: string;\n method_code: string;\n }\n ) => {\n setLoading(true);\n\n const {\n shippingCountry,\n shippingState = '',\n shippingStateId,\n shippingZip = '',\n } = formValues;\n\n const inputData = {\n countryCode: shippingCountry,\n postcode: shippingZip,\n region: {\n region: shippingState,\n id: shippingStateId,\n },\n shipping_method: {\n carrier_code: shippingMethods?.carrier_code || '',\n method_code: shippingMethods?.method_code || '',\n },\n };\n\n getEstimatedTotals(inputData)\n .then((data) => {\n if (data) {\n setEstimatedTotals({\n estimatedTaxTotal: {\n amount: data.totalTax?.value,\n currency: data.totalTax?.currency,\n },\n estimatedSubTotal: {\n excludingTax: {\n amount: data.subtotal?.excludingTax?.value,\n currency: data.subtotal?.excludingTax?.currency,\n },\n includingTax: {\n amount: data.subtotal?.includingTax?.value,\n currency: data.subtotal?.includingTax?.currency,\n },\n includingDiscountOnly: {\n amount: data.subtotal?.includingDiscountOnly?.value,\n currency: data.subtotal?.includingDiscountOnly?.currency,\n },\n },\n estimatedGrandTotalPrice: {\n includingTax: {\n amount: data.total?.includingTax.value,\n currency: data.total?.includingTax.currency,\n },\n excludingTax: {\n amount: data.total?.excludingTax.value,\n currency: data.total?.excludingTax.currency,\n },\n },\n estimatedAppliedTaxes: {\n taxes: data.appliedTaxes?.map((tax) => {\n return {\n label: tax.label,\n amount: {\n value: tax.amount?.value,\n currency: tax.amount?.currency,\n },\n };\n }),\n },\n estimatedItems: {\n items: data.items?.map((item) => {\n return {\n uid: item.uid,\n price: {\n amount: item.price?.value,\n currency: item.price?.currency,\n },\n taxedPrice: {\n amount: item.taxedPrice?.value,\n currency: item.taxedPrice?.currency,\n },\n rowTotal: {\n amount: item.rowTotal?.value,\n currency: item.rowTotal?.currency,\n },\n rowTotalIncludingTax: {\n amount: item.rowTotalIncludingTax?.value,\n currency: item.rowTotalIncludingTax?.currency,\n },\n regularPrice: {\n amount: item.regularPrice?.value,\n currency: item.regularPrice?.currency,\n },\n };\n }),\n },\n } as PriceProps);\n }\n })\n .finally(() => {\n setLoading(false);\n });\n };\n\n return {\n handleEstimateTotals,\n estimatedTotals,\n setEstimatedTotals,\n loading,\n };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { VNode } from 'preact';\nimport {\n HTMLAttributes,\n useCallback,\n useEffect,\n useState,\n Fragment,\n} from 'preact/compat';\nimport { Container, Slot, SlotProps } from '@adobe-commerce/elsie/lib';\nimport { events } from '@adobe-commerce/event-bus';\nimport { CartModel, AppliedGiftCardProps } from '@/cart/data/models';\nimport { getPersistedCartData } from '@/cart/lib/persisted-data';\nimport { useEstimatedTotals } from '@/cart/hooks';\nimport { state } from '@/cart/lib/state';\nimport { Button, Price, Icon } from '@adobe-commerce/elsie/components';\nimport { useText, Text } from '@adobe-commerce/elsie/i18n';\nimport {\n OrderSummary as OrderSummaryComponent,\n OrderSummaryLineItem,\n} from '@/cart/components';\nimport { publishInitiateCheckoutEvent } from '@/cart/lib/acdl';\nimport { Coupon, GiftCard } from '@adobe-commerce/elsie/icons';\n\ninterface CheckoutRouteContext {\n cartId: string;\n}\n\nexport interface OrderSummaryProps extends HTMLAttributes<HTMLDivElement> {\n routeCheckout?: (context: CheckoutRouteContext) => string;\n slots?: {\n EstimateShipping?: SlotProps;\n Coupons?: SlotProps;\n GiftCards?: SlotProps;\n };\n enableCoupons?: boolean;\n enableGiftCards?: boolean;\n errors: boolean;\n showTotalSaved?: boolean;\n updateLineItems?: (\n lineItems: Array<OrderSummaryLineItem>\n ) => Array<OrderSummaryLineItem>;\n}\n\nexport const OrderSummary: Container<OrderSummaryProps, CartModel | null> = ({\n children,\n initialData = null,\n routeCheckout,\n slots,\n errors,\n showTotalSaved,\n enableCoupons,\n enableGiftCards,\n updateLineItems = (lineItems) => lineItems,\n ...props\n}) => {\n const [data, setData] = useState<CartModel | null>(initialData);\n const [hasQuantityErrors, setHasQuantityErrors] = useState(false);\n const isVirtual = data?.isVirtual;\n\n enableCoupons = enableCoupons ?? true;\n enableGiftCards = enableGiftCards ?? true;\n\n const {\n handleEstimateTotals,\n estimatedTotals,\n setEstimatedTotals,\n loading: handleEstimateLoading,\n } = useEstimatedTotals();\n\n const cartTaxesConfig = state.config?.shoppingCartDisplaySetting;\n const isIncludingTax = cartTaxesConfig?.subtotal === 'INCLUDING_TAX';\n const isIncludingAndExcludingTax =\n cartTaxesConfig?.subtotal === 'INCLUDING_EXCLUDING_TAX';\n const isZeroTax = cartTaxesConfig?.zeroTax;\n const calculateTotalGiftCardAmount = () => {\n return (\n data?.appliedGiftCards.reduce((acc: number, current: any) => {\n return acc + current.appliedBalance.value;\n }, 0) ?? 0\n );\n };\n const appliedGiftCardsPriceConfig = (giftCard: AppliedGiftCardProps) => {\n if (!giftCard?.code) return null;\n\n return (\n <Fragment key={giftCard.code}>\n <span className=\"cart-order-summary__coupon__code\">\n <Icon source={GiftCard} size=\"16\" />\n <span>{giftCard?.code}</span>\n </span>\n <span className=\"cart-order-summary__caption\">\n <Text id=\"Cart.PriceSummary.giftCard.appliedGiftCards.remainingBalance\" />\n <Price\n className=\"cart-order-summary__caption\"\n weight=\"normal\"\n size=\"small\"\n amount={giftCard.giftCardBalance.value}\n currency={giftCard.giftCardBalance.currency}\n />\n </span>\n </Fragment>\n );\n };\n const cartGiftWrappingTax = state.config?.cartGiftWrapping;\n const cartPrintedCardTax = state.config?.cartPrintedCard;\n const totalGiftOptions = data?.totalGiftOptions;\n\n useEffect(() => {\n const dataEvent = events.on(\n 'cart/data',\n (payload) => {\n setData(payload as CartModel);\n\n const shippingAddress = payload?.addresses?.shipping;\n const isVirtual = payload?.isVirtual;\n\n if (shippingAddress || isVirtual) {\n setEstimatedTotals(null);\n }\n\n if (estimatedTotals == null) {\n setEstimatedTotals({\n estimatedTaxTotal: {\n amount: payload?.totalTax?.value,\n currency: payload?.totalTax?.currency,\n },\n });\n }\n },\n { eager: true }\n );\n\n return () => {\n dataEvent?.off();\n };\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n useEffect(() => {\n setHasQuantityErrors(errors);\n }, [errors]);\n\n useEffect(() => {\n const shippingEvent = events.on('shipping/estimate', (payload) => {\n const formValues = {\n shippingCountry: payload?.address?.countryCode,\n shippingState: payload?.address?.region,\n shippingStateId: payload?.address?.regionId,\n shippingZip: payload?.address?.postCode,\n };\n\n const shippingMethods = {\n carrier_code: payload?.shippingMethod?.carrierCode || '',\n method_code: payload?.shippingMethod?.methodCode || '',\n };\n\n handleEstimateTotals(formValues, shippingMethods);\n });\n\n return () => {\n shippingEvent?.off();\n };\n }, [handleEstimateTotals]);\n\n const [isCheckoutInitialized, setIsCheckoutInitialized] = useState(false);\n\n useEffect(() => {\n const checkoutEvent = events.on('checkout/initialized', () => {\n setIsCheckoutInitialized(true);\n });\n\n return () => {\n checkoutEvent?.off();\n };\n }, []);\n\n const translations = useText({\n checkout: 'Cart.PriceSummary.checkout',\n free: 'Cart.PriceSummary.total.free',\n orderSummary: 'Cart.PriceSummary.orderSummary',\n taxToBeDetermined: 'Cart.PriceSummary.taxToBeDetermined',\n });\n\n const checkoutLinkDisabled = data?.hasOutOfStockItems || hasQuantityErrors;\n\n const handleInitiateCheckout = useCallback(() => {\n if (!checkoutLinkDisabled && data) {\n publishInitiateCheckoutEvent(data, state.locale);\n }\n }, [checkoutLinkDisabled, data]);\n\n const shipping =\n !isVirtual && slots?.EstimateShipping ? (\n <Slot\n name=\"EstimateShipping\"\n slot={slots.EstimateShipping}\n key=\"estimateShippingId\"\n />\n ) : undefined;\n\n if (!Object.keys(data ?? {}).length || data?.totalQuantity === 0) {\n return null;\n }\n\n const coupons =\n enableCoupons && slots?.Coupons ? (\n <Slot name=\"Coupons\" slot={slots.Coupons} key=\"couponsId\" />\n ) : undefined;\n\n const giftCards =\n enableGiftCards && slots?.GiftCards ? (\n <Slot name=\"GiftCards\" slot={slots.GiftCards} key=\"giftCardId\" />\n ) : undefined;\n\n return (\n <OrderSummaryComponent\n {...props}\n data-testid=\"cart-order-summary\"\n heading={<div>{translations.orderSummary}</div>}\n shipping={shipping}\n coupons={coupons}\n giftCards={giftCards}\n loading={handleEstimateLoading}\n updateLineItems={updateLineItems}\n appliedGiftCards={\n !data?.appliedGiftCards?.length\n ? undefined\n : {\n label: (\n <Text\n id=\"Cart.PriceSummary.giftCard.appliedGiftCards.label\"\n plural={data?.appliedGiftCards?.length}\n fields={{\n count: data?.appliedGiftCards?.length,\n }}\n />\n ),\n price: (\n <Price\n className=\"cart-order-summary__price\"\n amount={-calculateTotalGiftCardAmount()}\n currency={\n data?.appliedGiftCards?.[0]?.appliedBalance.currency\n }\n />\n ),\n content: data?.appliedGiftCards\n ?.map(appliedGiftCardsPriceConfig)\n .filter(Boolean) as VNode[],\n }\n }\n printedCard={{\n renderContent: !!totalGiftOptions?.printedCard?.value,\n taxIncluded: cartPrintedCardTax === 'INCLUDING_TAX',\n taxInclAndExcl: cartPrintedCardTax === 'INCLUDING_EXCLUDING_TAX',\n priceExclTax: (\n <Price\n data-testid=\"printed-card\"\n amount={totalGiftOptions?.printedCard?.value}\n currency={totalGiftOptions?.printedCard?.currency}\n />\n ),\n priceInclTax: (\n <Price\n amount={totalGiftOptions?.printedCardInclTax?.value}\n currency={totalGiftOptions?.printedCardInclTax?.currency}\n />\n ),\n }}\n itemsGiftWrapping={{\n renderContent: !!totalGiftOptions?.giftWrappingForItems?.value,\n taxIncluded: cartGiftWrappingTax === 'INCLUDING_TAX',\n taxInclAndExcl: cartGiftWrappingTax === 'INCLUDING_EXCLUDING_TAX',\n priceExclTax: (\n <Price\n amount={totalGiftOptions?.giftWrappingForItems?.value}\n currency={totalGiftOptions?.giftWrappingForItems?.currency}\n />\n ),\n priceInclTax: (\n <Price\n amount={totalGiftOptions?.giftWrappingForItemsInclTax?.value}\n currency={totalGiftOptions?.giftWrappingForItemsInclTax?.currency}\n />\n ),\n }}\n orderGiftWrapping={{\n renderContent: !!totalGiftOptions?.giftWrappingForOrder?.value,\n taxIncluded: cartGiftWrappingTax === 'INCLUDING_TAX',\n taxInclAndExcl: cartGiftWrappingTax === 'INCLUDING_EXCLUDING_TAX',\n priceExclTax: (\n <Price\n amount={totalGiftOptions?.giftWrappingForOrder?.value}\n currency={totalGiftOptions?.giftWrappingForOrder?.currency}\n />\n ),\n priceInclTax: (\n <Price\n amount={totalGiftOptions?.giftWrappingForOrderInclTax?.value}\n currency={totalGiftOptions?.giftWrappingForOrderInclTax?.currency}\n />\n ),\n }}\n subTotal={{\n taxIncluded: isIncludingTax && !isZeroTax,\n taxExcluded: isIncludingAndExcludingTax,\n zeroTaxSubtotal: isZeroTax,\n priceExcludingTax: estimatedTotals?.estimatedSubTotal?.excludingTax ? (\n <Price\n data-testid=\"subtotal\"\n {...estimatedTotals?.estimatedSubTotal?.excludingTax}\n />\n ) : (\n <Price\n data-testid=\"subtotal\"\n amount={data?.subtotal?.excludingTax?.value}\n currency={data?.subtotal?.excludingTax?.currency}\n />\n ),\n price:\n (!isZeroTax && isIncludingTax) ||\n (!isZeroTax && isIncludingAndExcludingTax) ? (\n estimatedTotals?.estimatedSubTotal?.includingTax ? (\n <Price\n data-testid=\"subtotal\"\n {...estimatedTotals?.estimatedSubTotal?.includingTax}\n />\n ) : (\n <Price\n data-testid=\"subtotal\"\n amount={data?.subtotal.includingTax?.value}\n currency={data?.subtotal.includingTax?.currency}\n />\n )\n ) : (\n <Price\n data-testid=\"subtotal\"\n amount={data?.subtotal?.excludingTax?.value}\n currency={data?.subtotal?.excludingTax?.currency}\n />\n ),\n }}\n discounts={data?.appliedDiscounts?.map((discount) => {\n return {\n label: discount.label,\n price: (\n <Price\n data-testid=\"summary-discount-total\"\n amount={-discount.amount.value}\n currency={discount.amount.currency}\n sale={true}\n />\n ),\n coupon: discount?.coupon ? (\n <span>\n <Icon source={Coupon} size=\"16\" />\n {discount?.coupon?.code}\n </span>\n ) : undefined,\n };\n })}\n taxTotal={\n (isVirtual && !data?.appliedTaxes.length && !isCheckoutInitialized) ||\n (estimatedTotals && estimatedTotals.estimatedTaxTotal == null)\n ? {\n price: (\n <span data-testid=\"tax-total-tbd\">\n {translations.taxToBeDetermined}\n </span>\n ),\n }\n : {\n price: estimatedTotals?.estimatedTaxTotal ? (\n <Price\n data-testid=\"tax-total-estimated\"\n {...estimatedTotals?.estimatedTaxTotal}\n />\n ) : (\n <Price\n data-testid=\"tax-total-actual\"\n amount={data?.totalTax?.value}\n currency={data?.totalTax?.currency}\n />\n ),\n estimated:\n (!estimatedTotals || !estimatedTotals.estimatedTaxTotal) &&\n !data?.addresses?.shipping,\n }\n }\n taxesApplied={\n isVirtual\n ? undefined\n : cartTaxesConfig?.fullSummary\n ? (\n estimatedTotals?.estimatedAppliedTaxes?.taxes ||\n data?.appliedTaxes\n )?.map((tax: any) => ({\n label: tax.label,\n price: (\n <Price\n data-testid=\"applied-taxes\"\n amount={tax.amount.value}\n currency={tax.amount.currency}\n />\n ),\n }))\n : undefined\n }\n total={{\n price: estimatedTotals?.estimatedGrandTotalPrice ? (\n estimatedTotals?.estimatedGrandTotalPrice?.includingTax?.amount ===\n 0 ? (\n <span data-testid=\"total-including-tax\">{translations.free}</span>\n ) : (\n <Price\n data-testid=\"total-including-tax-estimated\"\n {...estimatedTotals?.estimatedGrandTotalPrice?.includingTax}\n />\n )\n ) : data?.total?.includingTax.value === 0 ? (\n <span data-testid=\"total-including-tax\">{translations.free}</span>\n ) : (\n <Price\n data-testid=\"total-including-tax-actual\"\n amount={data?.total?.includingTax.value}\n currency={data?.total?.includingTax.currency}\n />\n ),\n estimated:\n (!estimatedTotals || !!estimatedTotals?.estimatedTaxTotal) &&\n !data?.addresses?.shipping,\n priceWithoutTax: cartTaxesConfig?.grandTotal ? (\n estimatedTotals?.estimatedAppliedTaxes ? (\n estimatedTotals?.estimatedGrandTotalPrice?.excludingTax?.amount ===\n 0 ? (\n <span data-testid=\"total-excluding-tax\">{translations.free}</span>\n ) : (\n <Price\n data-testid=\"total-excluding-tax\"\n {...estimatedTotals?.estimatedGrandTotalPrice?.excludingTax}\n />\n )\n ) : data?.total?.excludingTax.value === 0 ? (\n <span data-testid=\"total-excluding-tax\">{translations.free}</span>\n ) : (\n <Price\n data-testid=\"total-excluding-tax\"\n amount={data?.total?.excludingTax.value}\n currency={data?.total?.excludingTax.currency}\n />\n )\n ) : undefined,\n }}\n primaryAction={\n routeCheckout && (\n <Button\n data-testid=\"checkout-button\"\n variant=\"primary\"\n disabled={checkoutLinkDisabled}\n aria-disabled={checkoutLinkDisabled}\n href={\n checkoutLinkDisabled\n ? undefined\n : routeCheckout({\n cartId: data!.id,\n })\n }\n onClick={handleInitiateCheckout}\n >\n {translations.checkout}\n </Button>\n )\n }\n totalSaved={\n showTotalSaved ? (\n <Price\n amount={data?.discount?.value}\n currency={data?.total?.includingTax.currency}\n />\n ) : undefined\n }\n />\n );\n};\n\nOrderSummary.getInitialData = async function () {\n return getPersistedCartData();\n};\n"],"names":["OrderSummary","className","children","variant","heading","loading","subTotal","shipping","discounts","taxTotal","taxesApplied","total","primaryAction","coupons","giftCards","totalSaved","appliedGiftCards","printedCard","itemsGiftWrapping","orderGiftWrapping","updateLineItems","lineItems","props","showTaxBreakdown","setShowTaxBreakdown","useState","translations","useText","appliedGiftCardsContent","jsx","OrderSummaryLine","subTotalContent","jsxs","discountsContent","Fragment","discount","VComponent","taxContent","Accordion","ChevronDown","ChevronUp","AccordionSection","tax","printedCardContent","itemsGiftWrappingContent","orderGiftWrappingContent","classes","updatedLineItems","currentLine","nextLine","ProgressSpinner","Divider","line","innerLine","useEstimatedTotals","setLoading","estimatedTotals","setEstimatedTotals","formValues","shippingMethods","shippingCountry","shippingState","shippingStateId","shippingZip","inputData","getEstimatedTotals","data","_a","_b","_d","_c","_f","_e","_h","_g","_j","_i","_l","_k","_n","_m","_o","_p","_q","_r","_s","_t","item","initialData","routeCheckout","slots","errors","showTotalSaved","enableCoupons","enableGiftCards","setData","hasQuantityErrors","setHasQuantityErrors","isVirtual","handleEstimateTotals","handleEstimateLoading","cartTaxesConfig","state","isIncludingTax","isIncludingAndExcludingTax","isZeroTax","calculateTotalGiftCardAmount","acc","current","appliedGiftCardsPriceConfig","giftCard","Icon","GiftCard","Text","Price","cartGiftWrappingTax","cartPrintedCardTax","totalGiftOptions","useEffect","dataEvent","events","payload","shippingAddress","shippingEvent","isCheckoutInitialized","setIsCheckoutInitialized","checkoutEvent","checkoutLinkDisabled","handleInitiateCheckout","useCallback","publishInitiateCheckoutEvent","Slot","OrderSummaryComponent","_u","_v","_w","_x","_y","_z","_B","_A","_D","_C","_E","_F","_G","_H","_J","_I","_L","_K","_M","Coupon","_N","_O","_P","_R","_Q","_T","_S","_U","_V","_W","_X","_Y","__","_Z","_$","_aa","_ba","_ca","Button","_da","_ea","getPersistedCartData"],"mappings":"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"}
1
+ {"version":3,"file":"OrderSummary.js","sources":["/@dropins/storefront-cart/src/components/OrderSummary/OrderSummary.tsx","/@dropins/storefront-cart/src/hooks/useEstimatedTotals.tsx","/@dropins/storefront-cart/src/containers/OrderSummary/OrderSummary.tsx"],"sourcesContent":["/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { FunctionComponent, VNode } from 'preact';\nimport { HTMLAttributes, useState } from 'preact/compat';\nimport { classes, VComponent } from '@adobe-commerce/elsie/lib';\nimport '@/cart/components/OrderSummary/OrderSummary.css';\nimport { useText } from '@adobe-commerce/elsie/i18n';\nimport { ChevronDown, ChevronUp } from '@adobe-commerce/elsie/icons';\nimport {\n Accordion,\n AccordionSection,\n Divider,\n ProgressSpinner,\n} from '@adobe-commerce/elsie/components';\nimport { JSXInternal } from 'preact/src/jsx';\nimport { OrderSummaryLine } from '@/cart/containers/OrderSummaryLine/OrderSummaryLine';\n\nexport interface OrderSummaryLineItem {\n key: string;\n title?: string;\n className?: string;\n sortOrder: number;\n content:\n | string\n | JSXInternal.Element\n | VNode<HTMLAttributes<HTMLDivElement>>\n | OrderSummaryLineItem[]\n | undefined;\n}\n\nexport interface OrderSummaryProps\n extends Omit<HTMLAttributes<HTMLDivElement>, 'loading'> {\n variant?: 'primary' | 'secondary';\n heading?: VNode<HTMLAttributes<HTMLDivElement>>;\n loading?: boolean;\n subTotal?: {\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n priceExcludingTax?: VNode<HTMLAttributes<HTMLSpanElement>>;\n taxIncluded?: boolean;\n taxExcluded?: boolean;\n zeroTaxSubtotal?: boolean;\n };\n shipping?: VNode<HTMLAttributes<HTMLDivElement>>;\n discounts?: {\n label: string;\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n caption?: VNode<HTMLAttributes<HTMLDivElement>>;\n coupon?: VNode<HTMLAttributes<HTMLSpanElement>>;\n }[];\n taxTotal?: {\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n estimated?: boolean;\n };\n taxesApplied?: {\n label: string;\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n }[];\n total?: {\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n estimated?: boolean;\n priceWithoutTax?: VNode<HTMLAttributes<HTMLSpanElement>>;\n };\n printedCard?: {\n renderContent: boolean;\n taxIncluded: boolean;\n taxInclAndExcl: boolean;\n priceExclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n priceInclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n };\n itemsGiftWrapping?: {\n renderContent: boolean;\n taxIncluded: boolean;\n taxInclAndExcl: boolean;\n priceExclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n priceInclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n };\n orderGiftWrapping?: {\n renderContent: boolean;\n taxIncluded: boolean;\n taxInclAndExcl: boolean;\n priceExclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n priceInclTax: VNode<HTMLAttributes<HTMLSpanElement>>;\n };\n primaryAction?: VNode<HTMLAttributes<HTMLButtonElement>>;\n coupons?: VNode<HTMLAttributes<HTMLDivElement>>;\n giftCards?: VNode<HTMLAttributes<HTMLDivElement>>;\n totalSaved?: VNode<HTMLAttributes<HTMLSpanElement>>;\n appliedGiftCards?: {\n label: VNode<HTMLAttributes<HTMLSpanElement>> | string;\n price: VNode<HTMLAttributes<HTMLSpanElement>>;\n content?: VNode[];\n };\n updateLineItems?: (\n lineItems: Array<OrderSummaryLineItem>\n ) => Array<OrderSummaryLineItem>;\n}\n\nexport const OrderSummary: FunctionComponent<OrderSummaryProps> = ({\n className,\n children,\n variant = 'primary',\n heading,\n loading = true,\n subTotal,\n shipping,\n discounts,\n taxTotal,\n taxesApplied,\n total,\n primaryAction,\n coupons,\n giftCards,\n totalSaved,\n appliedGiftCards,\n printedCard,\n itemsGiftWrapping,\n orderGiftWrapping,\n updateLineItems = (lineItems) => lineItems,\n ...props\n}) => {\n const [showTaxBreakdown, setShowTaxBreakdown] = useState(false);\n\n const translations = useText({\n checkout: 'Cart.PriceSummary.checkout',\n discountedPrice: 'Cart.CartItem.discountedPrice',\n download: 'Cart.CartItem.download',\n heading: 'Cart.Cart.heading',\n message: 'Cart.CartItem.message',\n regularPrice: 'Cart.CartItem.regularPrice',\n recipient: 'Cart.CartItem.recipient',\n sender: 'Cart.CartItem.sender',\n file: 'Cart.CartItem.file',\n files: 'Cart.CartItem.files',\n\n orderSummary: 'Cart.PriceSummary.orderSummary',\n // Taxes\n taxesBreakdownTitle: 'Cart.PriceSummary.taxes.breakdown',\n taxTotal: 'Cart.PriceSummary.taxes.total',\n taxEstimated: 'Cart.PriceSummary.taxes.estimated',\n taxTotalOnly: 'Cart.PriceSummary.taxes.totalOnly',\n showTaxBreakdown: 'Cart.PriceSummary.taxes.showBreakdown',\n hideTaxBreakdown: 'Cart.PriceSummary.taxes.hideBreakdown',\n taxToBeDetermined: 'Cart.PriceSummary.taxToBeDetermined',\n\n // Subtotal\n subtotalLabel: 'Cart.PriceSummary.subTotal.label',\n subtotalWithTaxes: 'Cart.PriceSummary.subTotal.withTaxes',\n subtotalWithoutTaxes: 'Cart.PriceSummary.subTotal.withoutTaxes',\n\n // Total\n totalEstimated: 'Cart.PriceSummary.total.estimated',\n totalLabel: 'Cart.PriceSummary.total.label',\n totalWithoutTax: 'Cart.PriceSummary.total.withoutTax',\n totalSaved: 'Cart.PriceSummary.total.saved',\n\n // Shipping\n shippingLabel: 'Cart.PriceSummary.shipping.label',\n zipPlaceholder: 'Cart.PriceSummary.shipping.zipPlaceholder',\n editZipAction: 'Cart.PriceSummary.shipping.editZipAction',\n shippingWithTaxes: 'Cart.PriceSummary.shipping.withTaxes',\n shippingWithoutTaxes: 'Cart.PriceSummary.shipping.withoutTaxes',\n shippingEstimated: 'Cart.PriceSummary.shipping.estimated',\n shippingEstimatedByState: 'Cart.PriceSummary.shipping.alternateField.state',\n shippingEstimatedByZip: 'Cart.PriceSummary.shipping.alternateField.zip',\n destinationLinkAriaLabel:\n 'Cart.PriceSummary.shipping.destinationLinkAriaLabel',\n applyButton: 'Cart.PriceSummary.estimatedShippingForm.apply.label',\n countryField: 'Cart.PriceSummary.estimatedShippingForm.country.placeholder',\n freeShipping: 'Cart.PriceSummary.freeShipping',\n stateField: 'Cart.PriceSummary.estimatedShippingForm.state.placeholder',\n zipField: 'Cart.PriceSummary.estimatedShippingForm.zip.placeholder',\n\n // Printed Card\n printedCardTitle: 'Cart.PriceSummary.giftOptionsTax.printedCard.title',\n printedCardInclTax: 'Cart.PriceSummary.giftOptionsTax.printedCard.inclTax',\n printedCardExclTax: 'Cart.PriceSummary.giftOptionsTax.printedCard.exclTax',\n\n // Gift Wrapping Item\n itemGiftWrappingTitle:\n 'Cart.PriceSummary.giftOptionsTax.itemGiftWrapping.title',\n itemGiftWrappingInclTax:\n 'Cart.PriceSummary.giftOptionsTax.itemGiftWrapping.inclTax',\n itemGiftWrappingExclTax:\n 'Cart.PriceSummary.giftOptionsTax.itemGiftWrapping.exclTax',\n\n // Gift Wrapping Order\n orderGiftWrappingTitle:\n 'Cart.PriceSummary.giftOptionsTax.orderGiftWrapping.title',\n orderGiftWrappingInclTax:\n 'Cart.PriceSummary.giftOptionsTax.orderGiftWrapping.inclTax',\n orderGiftWrappingExclTax:\n 'Cart.PriceSummary.giftOptionsTax.orderGiftWrapping.exclTax',\n });\n\n const appliedGiftCardsContent = appliedGiftCards ? (\n <OrderSummaryLine\n key={appliedGiftCards?.label}\n label={appliedGiftCards?.label}\n price={appliedGiftCards?.price}\n classSuffixes={['applied-gift-cards']}\n >\n {appliedGiftCards?.content}\n </OrderSummaryLine>\n ) : null;\n\n const subTotalContent = subTotal && (\n <OrderSummaryLine\n key={translations.subtotalLabel}\n label={translations.subtotalLabel}\n price={subTotal.price}\n classSuffixes={['subTotal']}\n >\n {subTotal.taxIncluded && (\n <div\n data-testid=\"sub-total-tax-caption\"\n className=\"cart-order-summary__caption\"\n >\n <span>{translations.subtotalWithTaxes}</span>\n </div>\n )}\n\n {subTotal.taxExcluded ? (\n <div\n data-testid=\"sub-total-tax-caption-excluded\"\n className=\"cart-order-summary__caption\"\n >\n <span>\n {subTotal.priceExcludingTax}\n &nbsp;\n {translations.subtotalWithoutTaxes}\n </span>\n </div>\n ) : undefined}\n </OrderSummaryLine>\n );\n\n const discountsContent = discounts && discounts.length > 0 && (\n <>\n {discounts.map((discount) => (\n <OrderSummaryLine\n key={discount.label}\n label={discount.label}\n price={discount.price}\n classSuffixes={['discount']}\n >\n {discount.coupon && (\n <VComponent\n node={discount.coupon}\n className=\"cart-order-summary__coupon__code\"\n />\n )}\n\n {discount.caption && (\n <VComponent\n node={discount.caption}\n className=\"cart-order-summary__caption\"\n />\n )}\n </OrderSummaryLine>\n ))}\n </>\n );\n\n const taxContent =\n taxesApplied && taxesApplied.length > 0 ? (\n /* Show breakdown if provided */\n <Accordion\n data-testid=\"tax-breakdown\"\n className=\"cart-order-summary__taxes\"\n iconOpen={ChevronDown}\n iconClose={ChevronUp}\n >\n <AccordionSection\n title={translations.taxesBreakdownTitle}\n secondaryText={\n !showTaxBreakdown && taxTotal ? (\n <VComponent\n node={taxTotal.price}\n className=\"cart-order-summary__price\"\n />\n ) : undefined\n }\n renderContentWhenClosed={false}\n onStateChange={setShowTaxBreakdown}\n >\n <div className=\"cart-order-summary__appliedTaxes\">\n {taxesApplied.map((tax) => (\n <OrderSummaryLine\n key={tax.label}\n label={tax.label}\n price={tax.price}\n classSuffixes={['taxEntry']}\n labelClassSuffix=\"muted\"\n />\n ))}\n </div>\n\n {taxTotal && (\n <OrderSummaryLine\n label={translations.taxTotal}\n price={taxTotal.price}\n classSuffixes={['taxTotal']}\n labelClassSuffix=\"muted\"\n />\n )}\n </AccordionSection>\n </Accordion>\n ) : (\n taxTotal && (\n <OrderSummaryLine\n label={\n taxTotal.estimated\n ? translations.taxEstimated\n : translations.taxTotalOnly\n }\n price={taxTotal.price}\n classSuffixes={['taxTotal']}\n testId=\"tax-total-only\"\n />\n )\n );\n\n const printedCardContent = printedCard?.renderContent ? (\n <OrderSummaryLine\n key={translations.printedCardTitle}\n label={translations.printedCardTitle}\n price={\n printedCard.taxInclAndExcl || printedCard.taxIncluded\n ? printedCard.priceInclTax\n : printedCard.priceExclTax\n }\n classSuffixes={['printedCardContent']}\n >\n {printedCard.taxIncluded && (\n <div\n data-testid=\"printed-card-incl\"\n className=\"cart-order-summary__caption\"\n >\n <span>{translations.printedCardInclTax}</span>\n </div>\n )}\n\n {printedCard.taxInclAndExcl ? (\n <div\n data-testid=\"printed-card-incl-excl\"\n className=\"cart-order-summary__caption\"\n >\n <span>\n {printedCard.priceExclTax}\n &nbsp;\n {translations.printedCardExclTax}\n </span>\n </div>\n ) : undefined}\n </OrderSummaryLine>\n ) : null;\n\n const itemsGiftWrappingContent = itemsGiftWrapping?.renderContent ? (\n <OrderSummaryLine\n key={translations.itemGiftWrappingTitle}\n label={translations.itemGiftWrappingTitle}\n price={\n itemsGiftWrapping.taxInclAndExcl || itemsGiftWrapping.taxIncluded\n ? itemsGiftWrapping.priceInclTax\n : itemsGiftWrapping.priceExclTax\n }\n classSuffixes={['itemsGiftWrappingContent']}\n >\n {itemsGiftWrapping.taxIncluded ? (\n <div\n data-testid=\"item-gift-wrapping-incl\"\n className=\"cart-order-summary__caption\"\n >\n <span>{translations.itemGiftWrappingInclTax}</span>\n </div>\n ) : null}\n\n {itemsGiftWrapping.taxInclAndExcl ? (\n <div\n data-testid=\"item-gift-wrapping-incl-excl\"\n className=\"cart-order-summary__caption\"\n >\n <span>\n {itemsGiftWrapping.priceExclTax}\n &nbsp;\n {translations.itemGiftWrappingExclTax}\n </span>\n </div>\n ) : null}\n </OrderSummaryLine>\n ) : null;\n\n const orderGiftWrappingContent = orderGiftWrapping?.renderContent ? (\n <OrderSummaryLine\n key={translations.orderGiftWrappingTitle}\n label={translations.orderGiftWrappingTitle}\n price={\n orderGiftWrapping.taxInclAndExcl || orderGiftWrapping.taxIncluded\n ? orderGiftWrapping.priceInclTax\n : orderGiftWrapping.priceExclTax\n }\n classSuffixes={['orderGiftWrappingContent']}\n >\n {orderGiftWrapping.taxIncluded && (\n <div\n data-testid=\"order-gift-wrapping-incl\"\n className=\"cart-order-summary__caption\"\n >\n <span>{translations.orderGiftWrappingInclTax}</span>\n </div>\n )}\n\n {orderGiftWrapping.taxInclAndExcl ? (\n <div\n data-testid=\"order-gift-wrapping-incl-excl\"\n className=\"cart-order-summary__caption\"\n >\n <span>\n {orderGiftWrapping.priceExclTax}\n &nbsp;\n {translations.orderGiftWrappingExclTax}\n </span>\n </div>\n ) : undefined}\n </OrderSummaryLine>\n ) : null;\n\n const lineItems: Array<OrderSummaryLineItem> = [\n {\n key: 'subTotalContent',\n sortOrder: 100,\n content: subTotalContent,\n },\n ...(shipping\n ? [\n {\n key: 'shippingContent',\n sortOrder: 200,\n content: (\n <VComponent\n node={shipping}\n className=\"cart-order-summary__shipping\"\n />\n ),\n },\n ]\n : []),\n {\n key: 'printedCard',\n sortOrder: 300,\n content: printedCardContent,\n },\n {\n key: 'itemsGiftWrappingContent',\n sortOrder: 400,\n content: itemsGiftWrappingContent,\n },\n {\n key: 'orderGiftWrappingContent',\n sortOrder: 500,\n content: orderGiftWrappingContent,\n },\n {\n key: 'discountsContent',\n sortOrder: 600,\n content: discountsContent,\n },\n {\n key: 'appliedGiftCardsContent',\n sortOrder: 700,\n content: appliedGiftCardsContent,\n },\n {\n key: 'taxContent',\n sortOrder: 800,\n content: taxContent,\n },\n ...(total\n ? [\n {\n key: 'taxContent',\n sortOrder: 900,\n content: (\n <OrderSummaryLine\n label={\n total.estimated\n ? translations.totalEstimated\n : translations.totalLabel\n }\n price={total.price}\n classSuffixes={['total', 'total--padded']}\n testId=\"total-content\"\n labelClassSuffix=\"bold\"\n />\n ),\n },\n ]\n : []),\n ...(total?.priceWithoutTax\n ? [\n {\n key: 'totalWithoutTaxContent',\n sortOrder: 1000,\n content: (\n <OrderSummaryLine\n label={translations.totalWithoutTax}\n price={total.priceWithoutTax}\n classSuffixes={['totalWithoutTax']}\n testId=\"total-without-tax\"\n labelClassSuffix=\"muted\"\n />\n ),\n },\n ]\n : []),\n ...(totalSaved\n ? [\n {\n key: 'totalSavedContent',\n sortOrder: 1100,\n content: (\n <OrderSummaryLine\n label={translations.totalSaved}\n price={totalSaved}\n classSuffixes={['saved']}\n testId=\"total-saved\"\n labelClassSuffix=\"muted\"\n />\n ),\n },\n ]\n : []),\n ...(primaryAction\n ? [\n {\n key: 'primaryActionContent',\n sortOrder: 1200,\n content: (\n <div\n className={classes([\n 'cart-order-summary__entry',\n 'cart-order-summary__primaryAction',\n ])}\n >\n {primaryAction}\n </div>\n ),\n },\n ]\n : []),\n ...(coupons\n ? [\n {\n key: 'couponsContent',\n sortOrder: 1300,\n content: (\n <VComponent\n node={coupons}\n className=\"cart-order-summary__coupons\"\n />\n ),\n },\n ]\n : []),\n ...(giftCards\n ? [\n {\n key: 'giftCardsContent',\n sortOrder: 1400,\n content: (\n <VComponent\n node={giftCards}\n className=\"cart-order-summary__gift-cards\"\n />\n ),\n },\n ]\n : []),\n ];\n\n const updatedLineItems: Array<OrderSummaryLineItem> = updateLineItems(\n lineItems\n ).sort(\n (currentLine: OrderSummaryLineItem, nextLine: OrderSummaryLineItem) => {\n return currentLine.sortOrder - nextLine.sortOrder;\n }\n );\n\n return (\n <div\n {...props}\n className={classes([\n 'cart-order-summary',\n ['cart-order-summary--loading', loading],\n [`cart-order-summary__${variant}`, variant],\n className,\n ])}\n >\n {loading && <ProgressSpinner className=\"cart-order-summary__spinner\" />}\n\n <div className=\"cart-order-summary__heading\">\n {heading && (\n <VComponent\n node={heading}\n className=\"cart-order-summary__heading-text\"\n />\n )}\n\n <Divider\n variant=\"primary\"\n className=\"cart-order-summary__divider-primary\"\n />\n </div>\n\n <div className=\"cart-order-summary__content\">\n {updatedLineItems.map((line: OrderSummaryLineItem) => {\n if (Array.isArray(line.content)) {\n return (\n <Accordion\n key={line.key}\n className={line.className}\n actionIconPosition={'right'}\n iconOpen={ChevronDown}\n iconClose={ChevronUp}\n >\n <AccordionSection\n defaultOpen={false}\n title={line.title}\n renderContentWhenClosed={false}\n >\n {line.content.map((innerLine) => {\n return innerLine.content;\n })}\n </AccordionSection>\n </Accordion>\n );\n }\n return line.content;\n })}\n </div>\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { useState } from 'preact/compat';\nimport { PriceProps } from '@adobe-commerce/elsie/components';\n\nimport { getEstimatedTotals } from '@/cart/api';\n\nexport const useEstimatedTotals = () => {\n const [loading, setLoading] = useState<boolean>(false);\n\n const [estimatedTotals, setEstimatedTotals] = useState<any>();\n\n const handleEstimateTotals = (\n formValues: {\n shippingCountry: string;\n shippingState?: string;\n shippingStateId?: number;\n shippingZip?: string;\n },\n shippingMethods?: {\n carrier_code: string;\n method_code: string;\n }\n ) => {\n setLoading(true);\n\n const {\n shippingCountry,\n shippingState = '',\n shippingStateId,\n shippingZip = '',\n } = formValues;\n\n const inputData = {\n countryCode: shippingCountry,\n postcode: shippingZip,\n region: {\n region: shippingState,\n id: shippingStateId,\n },\n shipping_method: {\n carrier_code: shippingMethods?.carrier_code || '',\n method_code: shippingMethods?.method_code || '',\n },\n };\n\n getEstimatedTotals(inputData)\n .then((data) => {\n if (data) {\n setEstimatedTotals({\n estimatedTaxTotal: {\n amount: data.totalTax?.value,\n currency: data.totalTax?.currency,\n },\n estimatedSubTotal: {\n excludingTax: {\n amount: data.subtotal?.excludingTax?.value,\n currency: data.subtotal?.excludingTax?.currency,\n },\n includingTax: {\n amount: data.subtotal?.includingTax?.value,\n currency: data.subtotal?.includingTax?.currency,\n },\n includingDiscountOnly: {\n amount: data.subtotal?.includingDiscountOnly?.value,\n currency: data.subtotal?.includingDiscountOnly?.currency,\n },\n },\n estimatedGrandTotalPrice: {\n includingTax: {\n amount: data.total?.includingTax.value,\n currency: data.total?.includingTax.currency,\n },\n excludingTax: {\n amount: data.total?.excludingTax.value,\n currency: data.total?.excludingTax.currency,\n },\n },\n estimatedAppliedTaxes: {\n taxes: data.appliedTaxes?.map((tax) => {\n return {\n label: tax.label,\n amount: {\n value: tax.amount?.value,\n currency: tax.amount?.currency,\n },\n };\n }),\n },\n estimatedItems: {\n items: data.items?.map((item) => {\n return {\n uid: item.uid,\n price: {\n amount: item.price?.value,\n currency: item.price?.currency,\n },\n taxedPrice: {\n amount: item.taxedPrice?.value,\n currency: item.taxedPrice?.currency,\n },\n rowTotal: {\n amount: item.rowTotal?.value,\n currency: item.rowTotal?.currency,\n },\n rowTotalIncludingTax: {\n amount: item.rowTotalIncludingTax?.value,\n currency: item.rowTotalIncludingTax?.currency,\n },\n regularPrice: {\n amount: item.regularPrice?.value,\n currency: item.regularPrice?.currency,\n },\n };\n }),\n },\n } as PriceProps);\n }\n })\n .finally(() => {\n setLoading(false);\n });\n };\n\n return {\n handleEstimateTotals,\n estimatedTotals,\n setEstimatedTotals,\n loading,\n };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2024 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { VNode } from 'preact';\nimport {\n HTMLAttributes,\n useCallback,\n useEffect,\n useState,\n Fragment,\n} from 'preact/compat';\nimport { Container, Slot, SlotProps } from '@adobe-commerce/elsie/lib';\nimport { events } from '@adobe-commerce/event-bus';\nimport { CartModel, AppliedGiftCardProps } from '@/cart/data/models';\nimport { getPersistedCartData } from '@/cart/lib/persisted-data';\nimport { useEstimatedTotals } from '@/cart/hooks';\nimport { state } from '@/cart/lib/state';\nimport { Button, Price, Icon } from '@adobe-commerce/elsie/components';\nimport { useText, Text } from '@adobe-commerce/elsie/i18n';\nimport {\n OrderSummary as OrderSummaryComponent,\n OrderSummaryLineItem,\n} from '@/cart/components';\nimport { publishInitiateCheckoutEvent } from '@/cart/lib/acdl';\nimport { Coupon, GiftCard } from '@adobe-commerce/elsie/icons';\n\ninterface CheckoutRouteContext {\n cartId: string;\n}\n\nexport interface OrderSummaryProps extends HTMLAttributes<HTMLDivElement> {\n routeCheckout?: (context: CheckoutRouteContext) => string;\n slots?: {\n EstimateShipping?: SlotProps;\n Coupons?: SlotProps;\n GiftCards?: SlotProps;\n };\n enableCoupons?: boolean;\n enableGiftCards?: boolean;\n errors: boolean;\n showTotalSaved?: boolean;\n updateLineItems?: (\n lineItems: Array<OrderSummaryLineItem>\n ) => Array<OrderSummaryLineItem>;\n}\n\nexport const OrderSummary: Container<OrderSummaryProps, CartModel | null> = ({\n children,\n initialData = null,\n routeCheckout,\n slots,\n errors,\n showTotalSaved,\n enableCoupons,\n enableGiftCards,\n updateLineItems = (lineItems) => lineItems,\n ...props\n}) => {\n const [data, setData] = useState<CartModel | null>(initialData);\n const [hasQuantityErrors, setHasQuantityErrors] = useState(false);\n const isVirtual = data?.isVirtual;\n\n enableCoupons = enableCoupons ?? true;\n enableGiftCards = enableGiftCards ?? true;\n\n const {\n handleEstimateTotals,\n estimatedTotals,\n setEstimatedTotals,\n loading: handleEstimateLoading,\n } = useEstimatedTotals();\n\n const cartTaxesConfig = state.config?.shoppingCartDisplaySetting;\n const isIncludingTax = cartTaxesConfig?.subtotal === 'INCLUDING_TAX';\n const isIncludingAndExcludingTax =\n cartTaxesConfig?.subtotal === 'INCLUDING_EXCLUDING_TAX';\n const isZeroTax = cartTaxesConfig?.zeroTax;\n const calculateTotalGiftCardAmount = () => {\n return (\n data?.appliedGiftCards.reduce((acc: number, current: any) => {\n return acc + current.appliedBalance.value;\n }, 0) ?? 0\n );\n };\n const appliedGiftCardsPriceConfig = (giftCard: AppliedGiftCardProps) => {\n if (!giftCard?.code) return null;\n\n return (\n <Fragment key={giftCard.code}>\n <span className=\"cart-order-summary__coupon__code\">\n <Icon source={GiftCard} size=\"16\" />\n <span>{giftCard?.code}</span>\n </span>\n <span className=\"cart-order-summary__caption\">\n <Text id=\"Cart.PriceSummary.giftCard.appliedGiftCards.remainingBalance\" />\n <Price\n className=\"cart-order-summary__caption\"\n weight=\"normal\"\n size=\"small\"\n amount={giftCard.giftCardBalance.value}\n currency={giftCard.giftCardBalance.currency}\n />\n </span>\n </Fragment>\n );\n };\n const cartGiftWrappingTax = state.config?.cartGiftWrapping;\n const cartPrintedCardTax = state.config?.cartPrintedCard;\n const totalGiftOptions = data?.totalGiftOptions;\n\n useEffect(() => {\n const dataEvent = events.on(\n 'cart/data',\n (payload) => {\n setData(payload as CartModel);\n\n const shippingAddress = payload?.addresses?.shipping;\n const isVirtual = payload?.isVirtual;\n\n if (shippingAddress || isVirtual) {\n setEstimatedTotals(null);\n }\n\n if (estimatedTotals == null) {\n setEstimatedTotals({\n estimatedTaxTotal: {\n amount: payload?.totalTax?.value,\n currency: payload?.totalTax?.currency,\n },\n });\n }\n },\n { eager: true }\n );\n\n return () => {\n dataEvent?.off();\n };\n }, []); // eslint-disable-line react-hooks/exhaustive-deps\n\n useEffect(() => {\n setHasQuantityErrors(errors);\n }, [errors]);\n\n useEffect(() => {\n const shippingEvent = events.on('shipping/estimate', (payload) => {\n const formValues = {\n shippingCountry: payload?.address?.countryCode,\n shippingState: payload?.address?.region,\n shippingStateId: payload?.address?.regionId,\n shippingZip: payload?.address?.postCode,\n };\n\n const shippingMethods = {\n carrier_code: payload?.shippingMethod?.carrierCode || '',\n method_code: payload?.shippingMethod?.methodCode || '',\n };\n\n handleEstimateTotals(formValues, shippingMethods);\n });\n\n return () => {\n shippingEvent?.off();\n };\n }, [handleEstimateTotals]);\n\n const [isCheckoutInitialized, setIsCheckoutInitialized] = useState(false);\n\n useEffect(() => {\n const checkoutEvent = events.on('checkout/initialized', (payload) => {\n if (!payload || payload?.type === 'quote') return;\n \n setIsCheckoutInitialized(true);\n });\n\n return () => {\n checkoutEvent?.off();\n };\n }, []);\n\n const translations = useText({\n checkout: 'Cart.PriceSummary.checkout',\n free: 'Cart.PriceSummary.total.free',\n orderSummary: 'Cart.PriceSummary.orderSummary',\n taxToBeDetermined: 'Cart.PriceSummary.taxToBeDetermined',\n });\n\n const checkoutLinkDisabled = data?.hasOutOfStockItems || hasQuantityErrors;\n\n const handleInitiateCheckout = useCallback(() => {\n if (!checkoutLinkDisabled && data) {\n publishInitiateCheckoutEvent(data, state.locale);\n }\n }, [checkoutLinkDisabled, data]);\n\n const shipping =\n !isVirtual && slots?.EstimateShipping ? (\n <Slot\n name=\"EstimateShipping\"\n slot={slots.EstimateShipping}\n key=\"estimateShippingId\"\n />\n ) : undefined;\n\n if (!Object.keys(data ?? {}).length || data?.totalQuantity === 0) {\n return null;\n }\n\n const coupons =\n enableCoupons && slots?.Coupons ? (\n <Slot name=\"Coupons\" slot={slots.Coupons} key=\"couponsId\" />\n ) : undefined;\n\n const giftCards =\n enableGiftCards && slots?.GiftCards ? (\n <Slot name=\"GiftCards\" slot={slots.GiftCards} key=\"giftCardId\" />\n ) : undefined;\n\n return (\n <OrderSummaryComponent\n {...props}\n data-testid=\"cart-order-summary\"\n heading={<div>{translations.orderSummary}</div>}\n shipping={shipping}\n coupons={coupons}\n giftCards={giftCards}\n loading={handleEstimateLoading}\n updateLineItems={updateLineItems}\n appliedGiftCards={\n !data?.appliedGiftCards?.length\n ? undefined\n : {\n label: (\n <Text\n id=\"Cart.PriceSummary.giftCard.appliedGiftCards.label\"\n plural={data?.appliedGiftCards?.length}\n fields={{\n count: data?.appliedGiftCards?.length,\n }}\n />\n ),\n price: (\n <Price\n className=\"cart-order-summary__price\"\n amount={-calculateTotalGiftCardAmount()}\n currency={\n data?.appliedGiftCards?.[0]?.appliedBalance.currency\n }\n />\n ),\n content: data?.appliedGiftCards\n ?.map(appliedGiftCardsPriceConfig)\n .filter(Boolean) as VNode[],\n }\n }\n printedCard={{\n renderContent: !!totalGiftOptions?.printedCard?.value,\n taxIncluded: cartPrintedCardTax === 'INCLUDING_TAX',\n taxInclAndExcl: cartPrintedCardTax === 'INCLUDING_EXCLUDING_TAX',\n priceExclTax: (\n <Price\n data-testid=\"printed-card\"\n amount={totalGiftOptions?.printedCard?.value}\n currency={totalGiftOptions?.printedCard?.currency}\n />\n ),\n priceInclTax: (\n <Price\n amount={totalGiftOptions?.printedCardInclTax?.value}\n currency={totalGiftOptions?.printedCardInclTax?.currency}\n />\n ),\n }}\n itemsGiftWrapping={{\n renderContent: !!totalGiftOptions?.giftWrappingForItems?.value,\n taxIncluded: cartGiftWrappingTax === 'INCLUDING_TAX',\n taxInclAndExcl: cartGiftWrappingTax === 'INCLUDING_EXCLUDING_TAX',\n priceExclTax: (\n <Price\n amount={totalGiftOptions?.giftWrappingForItems?.value}\n currency={totalGiftOptions?.giftWrappingForItems?.currency}\n />\n ),\n priceInclTax: (\n <Price\n amount={totalGiftOptions?.giftWrappingForItemsInclTax?.value}\n currency={totalGiftOptions?.giftWrappingForItemsInclTax?.currency}\n />\n ),\n }}\n orderGiftWrapping={{\n renderContent: !!totalGiftOptions?.giftWrappingForOrder?.value,\n taxIncluded: cartGiftWrappingTax === 'INCLUDING_TAX',\n taxInclAndExcl: cartGiftWrappingTax === 'INCLUDING_EXCLUDING_TAX',\n priceExclTax: (\n <Price\n amount={totalGiftOptions?.giftWrappingForOrder?.value}\n currency={totalGiftOptions?.giftWrappingForOrder?.currency}\n />\n ),\n priceInclTax: (\n <Price\n amount={totalGiftOptions?.giftWrappingForOrderInclTax?.value}\n currency={totalGiftOptions?.giftWrappingForOrderInclTax?.currency}\n />\n ),\n }}\n subTotal={{\n taxIncluded: isIncludingTax && !isZeroTax,\n taxExcluded: isIncludingAndExcludingTax,\n zeroTaxSubtotal: isZeroTax,\n priceExcludingTax: estimatedTotals?.estimatedSubTotal?.excludingTax ? (\n <Price\n data-testid=\"subtotal\"\n {...estimatedTotals?.estimatedSubTotal?.excludingTax}\n />\n ) : (\n <Price\n data-testid=\"subtotal\"\n amount={data?.subtotal?.excludingTax?.value}\n currency={data?.subtotal?.excludingTax?.currency}\n />\n ),\n price:\n (!isZeroTax && isIncludingTax) ||\n (!isZeroTax && isIncludingAndExcludingTax) ? (\n estimatedTotals?.estimatedSubTotal?.includingTax ? (\n <Price\n data-testid=\"subtotal\"\n {...estimatedTotals?.estimatedSubTotal?.includingTax}\n />\n ) : (\n <Price\n data-testid=\"subtotal\"\n amount={data?.subtotal.includingTax?.value}\n currency={data?.subtotal.includingTax?.currency}\n />\n )\n ) : (\n <Price\n data-testid=\"subtotal\"\n amount={data?.subtotal?.excludingTax?.value}\n currency={data?.subtotal?.excludingTax?.currency}\n />\n ),\n }}\n discounts={data?.appliedDiscounts?.map((discount) => {\n return {\n label: discount.label,\n price: (\n <Price\n data-testid=\"summary-discount-total\"\n amount={-discount.amount.value}\n currency={discount.amount.currency}\n sale={true}\n />\n ),\n coupon: discount?.coupon ? (\n <span>\n <Icon source={Coupon} size=\"16\" />\n {discount?.coupon?.code}\n </span>\n ) : undefined,\n };\n })}\n taxTotal={\n (isVirtual && !data?.appliedTaxes.length && !isCheckoutInitialized) ||\n (estimatedTotals && estimatedTotals.estimatedTaxTotal == null)\n ? {\n price: (\n <span data-testid=\"tax-total-tbd\">\n {translations.taxToBeDetermined}\n </span>\n ),\n }\n : {\n price: estimatedTotals?.estimatedTaxTotal ? (\n <Price\n data-testid=\"tax-total-estimated\"\n {...estimatedTotals?.estimatedTaxTotal}\n />\n ) : (\n <Price\n data-testid=\"tax-total-actual\"\n amount={data?.totalTax?.value}\n currency={data?.totalTax?.currency}\n />\n ),\n estimated:\n (!estimatedTotals || !estimatedTotals.estimatedTaxTotal) &&\n !data?.addresses?.shipping,\n }\n }\n taxesApplied={\n isVirtual\n ? undefined\n : cartTaxesConfig?.fullSummary\n ? (\n estimatedTotals?.estimatedAppliedTaxes?.taxes ||\n data?.appliedTaxes\n )?.map((tax: any) => ({\n label: tax.label,\n price: (\n <Price\n data-testid=\"applied-taxes\"\n amount={tax.amount.value}\n currency={tax.amount.currency}\n />\n ),\n }))\n : undefined\n }\n total={{\n price: estimatedTotals?.estimatedGrandTotalPrice ? (\n estimatedTotals?.estimatedGrandTotalPrice?.includingTax?.amount ===\n 0 ? (\n <span data-testid=\"total-including-tax\">{translations.free}</span>\n ) : (\n <Price\n data-testid=\"total-including-tax-estimated\"\n {...estimatedTotals?.estimatedGrandTotalPrice?.includingTax}\n />\n )\n ) : data?.total?.includingTax.value === 0 ? (\n <span data-testid=\"total-including-tax\">{translations.free}</span>\n ) : (\n <Price\n data-testid=\"total-including-tax-actual\"\n amount={data?.total?.includingTax.value}\n currency={data?.total?.includingTax.currency}\n />\n ),\n estimated:\n (!estimatedTotals || !!estimatedTotals?.estimatedTaxTotal) &&\n !data?.addresses?.shipping,\n priceWithoutTax: cartTaxesConfig?.grandTotal ? (\n estimatedTotals?.estimatedAppliedTaxes ? (\n estimatedTotals?.estimatedGrandTotalPrice?.excludingTax?.amount ===\n 0 ? (\n <span data-testid=\"total-excluding-tax\">{translations.free}</span>\n ) : (\n <Price\n data-testid=\"total-excluding-tax\"\n {...estimatedTotals?.estimatedGrandTotalPrice?.excludingTax}\n />\n )\n ) : data?.total?.excludingTax.value === 0 ? (\n <span data-testid=\"total-excluding-tax\">{translations.free}</span>\n ) : (\n <Price\n data-testid=\"total-excluding-tax\"\n amount={data?.total?.excludingTax.value}\n currency={data?.total?.excludingTax.currency}\n />\n )\n ) : undefined,\n }}\n primaryAction={\n routeCheckout && (\n <Button\n data-testid=\"checkout-button\"\n variant=\"primary\"\n disabled={checkoutLinkDisabled}\n aria-disabled={checkoutLinkDisabled}\n href={\n checkoutLinkDisabled\n ? undefined\n : routeCheckout({\n cartId: data!.id,\n })\n }\n onClick={handleInitiateCheckout}\n >\n {translations.checkout}\n </Button>\n )\n }\n totalSaved={\n showTotalSaved ? (\n <Price\n amount={data?.discount?.value}\n currency={data?.total?.includingTax.currency}\n />\n ) : undefined\n }\n />\n );\n};\n\nOrderSummary.getInitialData = async function () {\n return getPersistedCartData();\n};\n"],"names":["OrderSummary","className","children","variant","heading","loading","subTotal","shipping","discounts","taxTotal","taxesApplied","total","primaryAction","coupons","giftCards","totalSaved","appliedGiftCards","printedCard","itemsGiftWrapping","orderGiftWrapping","updateLineItems","lineItems","props","showTaxBreakdown","setShowTaxBreakdown","useState","translations","useText","appliedGiftCardsContent","jsx","OrderSummaryLine","subTotalContent","jsxs","discountsContent","Fragment","discount","VComponent","taxContent","Accordion","ChevronDown","ChevronUp","AccordionSection","tax","printedCardContent","itemsGiftWrappingContent","orderGiftWrappingContent","classes","updatedLineItems","currentLine","nextLine","ProgressSpinner","Divider","line","innerLine","useEstimatedTotals","setLoading","estimatedTotals","setEstimatedTotals","formValues","shippingMethods","shippingCountry","shippingState","shippingStateId","shippingZip","inputData","getEstimatedTotals","data","_a","_b","_d","_c","_f","_e","_h","_g","_j","_i","_l","_k","_n","_m","_o","_p","_q","_r","_s","_t","item","initialData","routeCheckout","slots","errors","showTotalSaved","enableCoupons","enableGiftCards","setData","hasQuantityErrors","setHasQuantityErrors","isVirtual","handleEstimateTotals","handleEstimateLoading","cartTaxesConfig","state","isIncludingTax","isIncludingAndExcludingTax","isZeroTax","calculateTotalGiftCardAmount","acc","current","appliedGiftCardsPriceConfig","giftCard","Icon","GiftCard","Text","Price","cartGiftWrappingTax","cartPrintedCardTax","totalGiftOptions","useEffect","dataEvent","events","payload","shippingAddress","shippingEvent","isCheckoutInitialized","setIsCheckoutInitialized","checkoutEvent","checkoutLinkDisabled","handleInitiateCheckout","useCallback","publishInitiateCheckoutEvent","Slot","OrderSummaryComponent","_u","_v","_w","_x","_y","_z","_B","_A","_D","_C","_E","_F","_G","_H","_J","_I","_L","_K","_M","Coupon","_N","_O","_P","_R","_Q","_T","_S","_U","_V","_W","_X","_Y","__","_Z","_$","_aa","_ba","_ca","Button","_da","_ea","getPersistedCartData"],"mappings":"66BAgHO,MAAMA,GAAqD,CAAC,CACjE,UAAAC,GACA,SAAAC,EACA,QAAAC,EAAU,UACV,QAAAC,EACA,QAAAC,EAAU,GACV,SAAAC,EACA,SAAAC,EACA,UAAAC,EACA,SAAAC,EACA,aAAAC,EACA,MAAAC,EACA,cAAAC,EACA,QAAAC,EACA,UAAAC,EACA,WAAAC,EACA,iBAAAC,EACA,YAAAC,EACA,kBAAAC,EACA,kBAAAC,EACA,gBAAAC,EAAmBC,GAAcA,EACjC,GAAGC,CACL,IAAM,CACJ,KAAM,CAACC,EAAkBC,CAAmB,EAAIC,EAAS,EAAK,EAExDC,EAAeC,GAAQ,CAC3B,SAAU,6BACV,gBAAiB,gCACjB,SAAU,yBACV,QAAS,oBACT,QAAS,wBACT,aAAc,6BACd,UAAW,0BACX,OAAQ,uBACR,KAAM,qBACN,MAAO,sBAEP,aAAc,iCAEd,oBAAqB,oCACrB,SAAU,gCACV,aAAc,oCACd,aAAc,oCACd,iBAAkB,wCAClB,iBAAkB,wCAClB,kBAAmB,sCAGnB,cAAe,mCACf,kBAAmB,uCACnB,qBAAsB,0CAGtB,eAAgB,oCAChB,WAAY,gCACZ,gBAAiB,qCACjB,WAAY,gCAGZ,cAAe,mCACf,eAAgB,4CAChB,cAAe,2CACf,kBAAmB,uCACnB,qBAAsB,0CACtB,kBAAmB,uCACnB,yBAA0B,kDAC1B,uBAAwB,gDACxB,yBACE,sDACF,YAAa,sDACb,aAAc,8DACd,aAAc,iCACd,WAAY,4DACZ,SAAU,0DAGV,iBAAkB,qDAClB,mBAAoB,uDACpB,mBAAoB,uDAGpB,sBACE,0DACF,wBACE,4DACF,wBACE,4DAGF,uBACE,2DACF,yBACE,6DACF,yBACE,4DAAA,CACH,EAEKC,EAA0BZ,EAC9Ba,EAACC,EAAA,CAEC,MAAOd,GAAA,YAAAA,EAAkB,MACzB,MAAOA,GAAA,YAAAA,EAAkB,MACzB,cAAe,CAAC,oBAAoB,EAEnC,SAAkBA,GAAA,YAAAA,EAAA,OAAA,EALdA,GAAA,YAAAA,EAAkB,KAAA,EAOvB,KAEEe,EAAkBzB,GACtB0B,EAACF,EAAA,CAEC,MAAOJ,EAAa,cACpB,MAAOpB,EAAS,MAChB,cAAe,CAAC,UAAU,EAEzB,SAAA,CAAAA,EAAS,aACRuB,EAAC,MAAA,CACC,cAAY,wBACZ,UAAU,8BAEV,SAAAA,EAAC,OAAM,CAAA,SAAAH,EAAa,iBAAkB,CAAA,CAAA,CACxC,EAGDpB,EAAS,YACRuB,EAAC,MAAA,CACC,cAAY,iCACZ,UAAU,8BAEV,WAAC,OACE,CAAA,SAAA,CAASvB,EAAA,kBAAkB,IAE3BoB,EAAa,oBAAA,CAChB,CAAA,CAAA,CAAA,EAEA,MAAA,CAAA,EAzBCA,EAAa,aA0BpB,EAGIO,EAAmBzB,GAAaA,EAAU,OAAS,GAEpDqB,EAAAK,GAAA,CAAA,SAAA1B,EAAU,IAAK2B,GACdH,EAACF,EAAA,CAEC,MAAOK,EAAS,MAChB,MAAOA,EAAS,MAChB,cAAe,CAAC,UAAU,EAEzB,SAAA,CAAAA,EAAS,QACRN,EAACO,EAAA,CACC,KAAMD,EAAS,OACf,UAAU,kCAAA,CACZ,EAGDA,EAAS,SACRN,EAACO,EAAA,CACC,KAAMD,EAAS,QACf,UAAU,6BAAA,CAAA,CACZ,CAAA,EAhBGA,EAAS,KAmBjB,CAAA,EACH,EAGIE,EACJ3B,GAAgBA,EAAa,OAAS,EAEpCmB,EAACS,GAAA,CACC,cAAY,gBACZ,UAAU,4BACV,SAAUC,GACV,UAAWC,GAEX,SAAAR,EAACS,GAAA,CACC,MAAOf,EAAa,oBACpB,cACE,CAACH,GAAoBd,EACnBoB,EAACO,EAAA,CACC,KAAM3B,EAAS,MACf,UAAU,2BAAA,CAAA,EAEV,OAEN,wBAAyB,GACzB,cAAee,EAEf,SAAA,CAAAK,EAAC,OAAI,UAAU,mCACZ,SAAanB,EAAA,IAAKgC,GACjBb,EAACC,EAAA,CAEC,MAAOY,EAAI,MACX,MAAOA,EAAI,MACX,cAAe,CAAC,UAAU,EAC1B,iBAAiB,OAAA,EAJZA,EAAI,KAMZ,CAAA,EACH,EAECjC,GACCoB,EAACC,EAAA,CACC,MAAOJ,EAAa,SACpB,MAAOjB,EAAS,MAChB,cAAe,CAAC,UAAU,EAC1B,iBAAiB,OAAA,CAAA,CACnB,CAAA,CAAA,CAEJ,CAAA,EAGFA,GACEoB,EAACC,EAAA,CACC,MACErB,EAAS,UACLiB,EAAa,aACbA,EAAa,aAEnB,MAAOjB,EAAS,MAChB,cAAe,CAAC,UAAU,EAC1B,OAAO,gBAAA,CACT,EAIAkC,EAAqB1B,GAAA,MAAAA,EAAa,cACtCe,EAACF,EAAA,CAEC,MAAOJ,EAAa,iBACpB,MACET,EAAY,gBAAkBA,EAAY,YACtCA,EAAY,aACZA,EAAY,aAElB,cAAe,CAAC,oBAAoB,EAEnC,SAAA,CAAAA,EAAY,aACXY,EAAC,MAAA,CACC,cAAY,oBACZ,UAAU,8BAEV,SAAAA,EAAC,OAAM,CAAA,SAAAH,EAAa,kBAAmB,CAAA,CAAA,CACzC,EAGDT,EAAY,eACXY,EAAC,MAAA,CACC,cAAY,yBACZ,UAAU,8BAEV,WAAC,OACE,CAAA,SAAA,CAAYZ,EAAA,aAAa,IAEzBS,EAAa,kBAAA,CAChB,CAAA,CAAA,CAAA,EAEA,MAAA,CAAA,EA7BCA,EAAa,gBAAA,EA+BlB,KAEEkB,EAA2B1B,GAAA,MAAAA,EAAmB,cAClDc,EAACF,EAAA,CAEC,MAAOJ,EAAa,sBACpB,MACER,EAAkB,gBAAkBA,EAAkB,YAClDA,EAAkB,aAClBA,EAAkB,aAExB,cAAe,CAAC,0BAA0B,EAEzC,SAAA,CAAAA,EAAkB,YACjBW,EAAC,MAAA,CACC,cAAY,0BACZ,UAAU,8BAEV,SAAAA,EAAC,OAAM,CAAA,SAAAH,EAAa,uBAAwB,CAAA,CAAA,CAAA,EAE5C,KAEHR,EAAkB,eACjBW,EAAC,MAAA,CACC,cAAY,+BACZ,UAAU,8BAEV,WAAC,OACE,CAAA,SAAA,CAAkBX,EAAA,aAAa,IAE/BQ,EAAa,uBAAA,CAChB,CAAA,CAAA,CAAA,EAEA,IAAA,CAAA,EA7BCA,EAAa,qBAAA,EA+BlB,KAEEmB,EAA2B1B,GAAA,MAAAA,EAAmB,cAClDa,EAACF,EAAA,CAEC,MAAOJ,EAAa,uBACpB,MACEP,EAAkB,gBAAkBA,EAAkB,YAClDA,EAAkB,aAClBA,EAAkB,aAExB,cAAe,CAAC,0BAA0B,EAEzC,SAAA,CAAAA,EAAkB,aACjBU,EAAC,MAAA,CACC,cAAY,2BACZ,UAAU,8BAEV,SAAAA,EAAC,OAAM,CAAA,SAAAH,EAAa,wBAAyB,CAAA,CAAA,CAC/C,EAGDP,EAAkB,eACjBU,EAAC,MAAA,CACC,cAAY,gCACZ,UAAU,8BAEV,WAAC,OACE,CAAA,SAAA,CAAkBV,EAAA,aAAa,IAE/BO,EAAa,wBAAA,CAChB,CAAA,CAAA,CAAA,EAEA,MAAA,CAAA,EA7BCA,EAAa,sBAAA,EA+BlB,KAEEL,EAAyC,CAC7C,CACE,IAAK,kBACL,UAAW,IACX,QAASU,CACX,EACA,GAAIxB,EACA,CACE,CACE,IAAK,kBACL,UAAW,IACX,QACEsB,EAACO,EAAA,CACC,KAAM7B,EACN,UAAU,8BAAA,CAAA,CACZ,CAEJ,EAEF,CAAC,EACL,CACE,IAAK,cACL,UAAW,IACX,QAASoC,CACX,EACA,CACE,IAAK,2BACL,UAAW,IACX,QAASC,CACX,EACA,CACE,IAAK,2BACL,UAAW,IACX,QAASC,CACX,EACA,CACE,IAAK,mBACL,UAAW,IACX,QAASZ,CACX,EACA,CACE,IAAK,0BACL,UAAW,IACX,QAASL,CACX,EACA,CACE,IAAK,aACL,UAAW,IACX,QAASS,CACX,EACA,GAAI1B,EACA,CACE,CACE,IAAK,aACL,UAAW,IACX,QACEkB,EAACC,EAAA,CACC,MACEnB,EAAM,UACFe,EAAa,eACbA,EAAa,WAEnB,MAAOf,EAAM,MACb,cAAe,CAAC,QAAS,eAAe,EACxC,OAAO,gBACP,iBAAiB,MAAA,CAAA,CACnB,CAEJ,EAEF,CAAC,EACL,GAAIA,GAAA,MAAAA,EAAO,gBACP,CACE,CACE,IAAK,yBACL,UAAW,IACX,QACEkB,EAACC,EAAA,CACC,MAAOJ,EAAa,gBACpB,MAAOf,EAAM,gBACb,cAAe,CAAC,iBAAiB,EACjC,OAAO,oBACP,iBAAiB,OAAA,CAAA,CACnB,CAEJ,EAEF,CAAC,EACL,GAAII,EACA,CACE,CACE,IAAK,oBACL,UAAW,KACX,QACEc,EAACC,EAAA,CACC,MAAOJ,EAAa,WACpB,MAAOX,EACP,cAAe,CAAC,OAAO,EACvB,OAAO,cACP,iBAAiB,OAAA,CAAA,CACnB,CAEJ,EAEF,CAAC,EACL,GAAIH,EACA,CACE,CACE,IAAK,uBACL,UAAW,KACX,QACEiB,EAAC,MAAA,CACC,UAAWiB,GAAQ,CACjB,4BACA,mCAAA,CACD,EAEA,SAAAlC,CAAA,CAAA,CACH,CAEJ,EAEF,CAAC,EACL,GAAIC,EACA,CACE,CACE,IAAK,iBACL,UAAW,KACX,QACEgB,EAACO,EAAA,CACC,KAAMvB,EACN,UAAU,6BAAA,CAAA,CACZ,CAEJ,EAEF,CAAC,EACL,GAAIC,EACA,CACE,CACE,IAAK,mBACL,UAAW,KACX,QACEe,EAACO,EAAA,CACC,KAAMtB,EACN,UAAU,gCAAA,CAAA,CACZ,CAEJ,EAEF,CAAA,CACN,EAEMiC,EAAgD3B,EACpDC,CAAA,EACA,KACA,CAAC2B,EAAmCC,IAC3BD,EAAY,UAAYC,EAAS,SAE5C,EAGE,OAAAjB,EAAC,MAAA,CACE,GAAGV,EACJ,UAAWwB,GAAQ,CACjB,qBACA,CAAC,8BAA+BzC,CAAO,EACvC,CAAC,uBAAuBF,CAAO,GAAIA,CAAO,EAC1CF,EAAA,CACD,EAEA,SAAA,CAAWI,GAAAwB,EAACqB,GAAgB,CAAA,UAAU,6BAA8B,CAAA,EAErElB,EAAC,MAAI,CAAA,UAAU,8BACZ,SAAA,CACC5B,GAAAyB,EAACO,EAAA,CACC,KAAMhC,EACN,UAAU,kCAAA,CACZ,EAGFyB,EAACsB,GAAA,CACC,QAAQ,UACR,UAAU,qCAAA,CAAA,CACZ,EACF,IAEC,MAAI,CAAA,UAAU,8BACZ,SAAiBJ,EAAA,IAAKK,GACjB,MAAM,QAAQA,EAAK,OAAO,EAE1BvB,EAACS,GAAA,CAEC,UAAWc,EAAK,UAChB,mBAAoB,QACpB,SAAUb,GACV,UAAWC,GAEX,SAAAX,EAACY,GAAA,CACC,YAAa,GACb,MAAOW,EAAK,MACZ,wBAAyB,GAExB,SAAKA,EAAA,QAAQ,IAAKC,GACVA,EAAU,OAClB,CAAA,CAAA,CACH,EAdKD,EAAK,GAeZ,EAGGA,EAAK,OACb,CACH,CAAA,CAAA,CAAA,CACF,CAEJ,EC3nBaE,GAAqB,IAAM,CACtC,KAAM,CAACjD,GAASkD,CAAU,EAAI9B,EAAkB,EAAK,EAE/C,CAAC+B,EAAiBC,CAAkB,EAAIhC,EAAc,EAkHrD,MAAA,CACL,qBAjH2B,CAC3BiC,EAMAC,IAIG,CACHJ,EAAW,EAAI,EAET,KAAA,CACJ,gBAAAK,EACA,cAAAC,EAAgB,GAChB,gBAAAC,EACA,YAAAC,EAAc,EAAA,EACZL,EAEEM,EAAY,CAChB,YAAaJ,EACb,SAAUG,EACV,OAAQ,CACN,OAAQF,EACR,GAAIC,CACN,EACA,gBAAiB,CACf,cAAcH,GAAA,YAAAA,EAAiB,eAAgB,GAC/C,aAAaA,GAAA,YAAAA,EAAiB,cAAe,EAAA,CAEjD,EAEAM,GAAmBD,CAAS,EACzB,KAAME,GAAS,6CACVA,GACiBT,EAAA,CACjB,kBAAmB,CACjB,QAAQU,EAAAD,EAAK,WAAL,YAAAC,EAAe,MACvB,UAAUC,EAAAF,EAAK,WAAL,YAAAE,EAAe,QAC3B,EACA,kBAAmB,CACjB,aAAc,CACZ,QAAQC,GAAAC,EAAAJ,EAAK,WAAL,YAAAI,EAAe,eAAf,YAAAD,EAA6B,MACrC,UAAUE,GAAAC,EAAAN,EAAK,WAAL,YAAAM,EAAe,eAAf,YAAAD,EAA6B,QACzC,EACA,aAAc,CACZ,QAAQE,GAAAC,EAAAR,EAAK,WAAL,YAAAQ,EAAe,eAAf,YAAAD,EAA6B,MACrC,UAAUE,GAAAC,EAAAV,EAAK,WAAL,YAAAU,EAAe,eAAf,YAAAD,EAA6B,QACzC,EACA,sBAAuB,CACrB,QAAQE,GAAAC,EAAAZ,EAAK,WAAL,YAAAY,EAAe,wBAAf,YAAAD,EAAsC,MAC9C,UAAUE,GAAAC,EAAAd,EAAK,WAAL,YAAAc,EAAe,wBAAf,YAAAD,EAAsC,QAAA,CAEpD,EACA,yBAA0B,CACxB,aAAc,CACZ,QAAQE,EAAAf,EAAK,QAAL,YAAAe,EAAY,aAAa,MACjC,UAAUC,EAAAhB,EAAK,QAAL,YAAAgB,EAAY,aAAa,QACrC,EACA,aAAc,CACZ,QAAQC,EAAAjB,EAAK,QAAL,YAAAiB,EAAY,aAAa,MACjC,UAAUC,EAAAlB,EAAK,QAAL,YAAAkB,EAAY,aAAa,QAAA,CAEvC,EACA,sBAAuB,CACrB,OAAOC,EAAAnB,EAAK,eAAL,YAAAmB,EAAmB,IAAK3C,GAAQ,SAC9B,MAAA,CACL,MAAOA,EAAI,MACX,OAAQ,CACN,OAAOyB,EAAAzB,EAAI,SAAJ,YAAAyB,EAAY,MACnB,UAAUC,EAAA1B,EAAI,SAAJ,YAAA0B,EAAY,QAAA,CAE1B,CACD,EACH,EACA,eAAgB,CACd,OAAOkB,EAAApB,EAAK,QAAL,YAAAoB,EAAY,IAAKC,GAAS,yBACxB,MAAA,CACL,IAAKA,EAAK,IACV,MAAO,CACL,QAAQpB,EAAAoB,EAAK,QAAL,YAAApB,EAAY,MACpB,UAAUC,EAAAmB,EAAK,QAAL,YAAAnB,EAAY,QACxB,EACA,WAAY,CACV,QAAQE,EAAAiB,EAAK,aAAL,YAAAjB,EAAiB,MACzB,UAAUD,EAAAkB,EAAK,aAAL,YAAAlB,EAAiB,QAC7B,EACA,SAAU,CACR,QAAQG,EAAAe,EAAK,WAAL,YAAAf,EAAe,MACvB,UAAUD,EAAAgB,EAAK,WAAL,YAAAhB,EAAe,QAC3B,EACA,qBAAsB,CACpB,QAAQG,EAAAa,EAAK,uBAAL,YAAAb,EAA2B,MACnC,UAAUD,EAAAc,EAAK,uBAAL,YAAAd,EAA2B,QACvC,EACA,aAAc,CACZ,QAAQG,EAAAW,EAAK,eAAL,YAAAX,EAAmB,MAC3B,UAAUD,EAAAY,EAAK,eAAL,YAAAZ,EAAmB,QAAA,CAEjC,CACD,EAAA,CACH,CACa,CACjB,CACD,EACA,QAAQ,IAAM,CACbpB,EAAW,EAAK,CAAA,CACjB,CACL,EAIE,gBAAAC,EACA,mBAAAC,EACA,QAAApD,EACF,CACF,ECrFaL,GAA+D,CAAC,CAC3E,SAAAE,GACA,YAAAsF,EAAc,KACd,cAAAC,EACA,MAAAC,EACA,OAAAC,EACA,eAAAC,EACA,cAAAC,EACA,gBAAAC,EACA,gBAAA1E,EAAmBC,GAAcA,EACjC,GAAGC,CACL,IAAM,8KACJ,KAAM,CAAC4C,EAAM6B,CAAO,EAAItE,EAA2B+D,CAAW,EACxD,CAACQ,EAAmBC,CAAoB,EAAIxE,EAAS,EAAK,EAC1DyE,EAAYhC,GAAA,YAAAA,EAAM,UAExB2B,EAAgBA,GAAiB,GACjCC,EAAkBA,GAAmB,GAE/B,KAAA,CACJ,qBAAAK,EACA,gBAAA3C,EACA,mBAAAC,EACA,QAAS2C,GACP9C,GAAmB,EAEjB+C,GAAkBlC,EAAAmC,GAAM,SAAN,YAAAnC,EAAc,2BAChCoC,GAAiBF,GAAA,YAAAA,EAAiB,YAAa,gBAC/CG,GACJH,GAAA,YAAAA,EAAiB,YAAa,0BAC1BI,EAAYJ,GAAA,YAAAA,EAAiB,QAC7BK,EAA+B,KAEjCxC,GAAA,YAAAA,EAAM,iBAAiB,OAAO,CAACyC,EAAaC,IACnCD,EAAMC,EAAQ,eAAe,MACnC,KAAM,EAGPC,EAA+BC,GAC9BA,GAAA,MAAAA,EAAU,OAGZ5E,GACC,CAAA,SAAA,CAACF,EAAA,OAAA,CAAK,UAAU,mCACd,SAAA,CAAAH,EAACkF,GAAK,CAAA,OAAQC,GAAU,KAAK,KAAK,EAClCnF,EAAC,OAAM,CAAA,SAAAiF,GAAA,YAAAA,EAAU,IAAK,CAAA,CAAA,EACxB,EACA9E,EAAC,OAAK,CAAA,UAAU,8BACd,SAAA,CAACH,EAAAoF,GAAA,CAAK,GAAG,8DAA+D,CAAA,EACxEpF,EAACqF,EAAA,CACC,UAAU,8BACV,OAAO,SACP,KAAK,QACL,OAAQJ,EAAS,gBAAgB,MACjC,SAAUA,EAAS,gBAAgB,QAAA,CAAA,CACrC,CACF,CAAA,CAAA,CAAA,EAdaA,EAAS,IAexB,EAlB0B,KAqBxBK,GAAsB/C,EAAAkC,GAAM,SAAN,YAAAlC,EAAc,iBACpCgD,GAAqB9C,EAAAgC,GAAM,SAAN,YAAAhC,EAAc,gBACnC+C,EAAmBnD,GAAA,YAAAA,EAAM,iBAE/BoD,GAAU,IAAM,CACd,MAAMC,EAAYC,GAAO,GACvB,YACCC,GAAY,WACX1B,EAAQ0B,CAAoB,EAEtB,MAAAC,IAAkBvD,EAAAsD,GAAA,YAAAA,EAAS,YAAT,YAAAtD,EAAoB,SACtC+B,GAAYuB,GAAA,YAAAA,EAAS,WAEvBC,IAAmBxB,KACrBzC,EAAmB,IAAI,EAGrBD,GAAmB,MACFC,EAAA,CACjB,kBAAmB,CACjB,QAAQW,EAAAqD,GAAA,YAAAA,EAAS,WAAT,YAAArD,EAAmB,MAC3B,UAAUE,EAAAmD,GAAA,YAAAA,EAAS,WAAT,YAAAnD,EAAmB,QAAA,CAC/B,CACD,CAEL,EACA,CAAE,MAAO,EAAK,CAChB,EAEA,MAAO,IAAM,CACXiD,GAAA,MAAAA,EAAW,KACb,CACF,EAAG,EAAE,EAELD,GAAU,IAAM,CACdrB,EAAqBN,CAAM,CAAA,EAC1B,CAACA,CAAM,CAAC,EAEX2B,GAAU,IAAM,CACd,MAAMK,EAAgBH,GAAO,GAAG,oBAAsBC,GAAY,oBAChE,MAAM/D,GAAa,CACjB,iBAAiBS,EAAAsD,GAAA,YAAAA,EAAS,UAAT,YAAAtD,EAAkB,YACnC,eAAeC,EAAAqD,GAAA,YAAAA,EAAS,UAAT,YAAArD,EAAkB,OACjC,iBAAiBE,EAAAmD,GAAA,YAAAA,EAAS,UAAT,YAAAnD,EAAkB,SACnC,aAAaD,GAAAoD,GAAA,YAAAA,EAAS,UAAT,YAAApD,GAAkB,QACjC,EAEMV,GAAkB,CACtB,eAAca,GAAAiD,GAAA,YAAAA,EAAS,iBAAT,YAAAjD,GAAyB,cAAe,GACtD,cAAaD,GAAAkD,GAAA,YAAAA,EAAS,iBAAT,YAAAlD,GAAyB,aAAc,EACtD,EAEA4B,EAAqBzC,GAAYC,EAAe,CAAA,CACjD,EAED,MAAO,IAAM,CACXgE,GAAA,MAAAA,EAAe,KACjB,CAAA,EACC,CAACxB,CAAoB,CAAC,EAEzB,KAAM,CAACyB,EAAuBC,CAAwB,EAAIpG,EAAS,EAAK,EAExE6F,GAAU,IAAM,CACd,MAAMQ,EAAgBN,GAAO,GAAG,uBAAyBC,GAAY,CAC/D,CAACA,IAAWA,GAAA,YAAAA,EAAS,QAAS,SAElCI,EAAyB,EAAI,CAAA,CAC9B,EAED,MAAO,IAAM,CACXC,GAAA,MAAAA,EAAe,KACjB,CACF,EAAG,EAAE,EAEL,MAAMpG,EAAeC,GAAQ,CAC3B,SAAU,6BACV,KAAM,+BACN,aAAc,iCACd,kBAAmB,qCAAA,CACpB,EAEKoG,GAAuB7D,GAAA,YAAAA,EAAM,qBAAsB8B,EAEnDgC,EAAyBC,GAAY,IAAM,CAC3C,CAACF,GAAwB7D,GACEgE,GAAAhE,EAAMoC,GAAM,MAAM,CACjD,EACC,CAACyB,EAAsB7D,CAAI,CAAC,EAEzB3D,EACJ,CAAC2F,IAAaR,GAAA,MAAAA,EAAO,kBACnB7D,EAACsG,GAAA,CACC,KAAK,mBACL,KAAMzC,EAAM,gBAAA,EACR,oBAAA,EAEJ,OAEF,GAAA,CAAC,OAAO,KAAKxB,GAAQ,CAAA,CAAE,EAAE,SAAUA,GAAA,YAAAA,EAAM,iBAAkB,EACtD,OAAA,KAGT,MAAMrD,EACJgF,IAAiBH,GAAA,MAAAA,EAAO,SACrB7D,EAAAsG,GAAA,CAAK,KAAK,UAAU,KAAMzC,EAAM,OAAa,EAAA,WAAY,EACxD,OAEA5E,EACJgF,IAAmBJ,GAAA,MAAAA,EAAO,WACvB7D,EAAAsG,GAAA,CAAK,KAAK,YAAY,KAAMzC,EAAM,SAAe,EAAA,YAAa,EAC7D,OAGJ,OAAA7D,EAACuG,GAAA,CACE,GAAG9G,EACJ,cAAY,qBACZ,QAASO,EAAC,MAAK,CAAA,SAAAH,EAAa,aAAa,EACzC,SAAAnB,EACA,QAAAM,EACA,UAAAC,EACA,QAASsF,EACT,gBAAAhF,EACA,kBACGiD,EAAAH,GAAA,YAAAA,EAAM,mBAAN,MAAAG,EAAwB,OAErB,CACE,MACExC,EAACoF,GAAA,CACC,GAAG,oDACH,QAAQzC,EAAAN,GAAA,YAAAA,EAAM,mBAAN,YAAAM,EAAwB,OAChC,OAAQ,CACN,OAAOD,EAAAL,GAAA,YAAAA,EAAM,mBAAN,YAAAK,EAAwB,MAAA,CACjC,CACF,EAEF,MACE1C,EAACqF,EAAA,CACC,UAAU,4BACV,OAAQ,CAACR,EAA6B,EACtC,UACEjC,GAAAC,EAAAR,GAAA,YAAAA,EAAM,mBAAN,YAAAQ,EAAyB,KAAzB,YAAAD,EAA6B,eAAe,QAAA,CAEhD,EAEF,SAASG,GAAAV,GAAA,YAAAA,EAAM,mBAAN,YAAAU,GACL,IAAIiC,GACL,OAAO,QACZ,EAvBA,OAyBN,YAAa,CACX,cAAe,CAAC,GAAClC,GAAA0C,GAAA,YAAAA,EAAkB,cAAlB,MAAA1C,GAA+B,OAChD,YAAayC,IAAuB,gBACpC,eAAgBA,IAAuB,0BACvC,aACEvF,EAACqF,EAAA,CACC,cAAY,eACZ,QAAQpC,GAAAuC,GAAA,YAAAA,EAAkB,cAAlB,YAAAvC,GAA+B,MACvC,UAAUD,GAAAwC,GAAA,YAAAA,EAAkB,cAAlB,YAAAxC,GAA+B,QAAA,CAC3C,EAEF,aACEhD,EAACqF,EAAA,CACC,QAAQlC,GAAAqC,GAAA,YAAAA,EAAkB,qBAAlB,YAAArC,GAAsC,MAC9C,UAAUD,GAAAsC,GAAA,YAAAA,EAAkB,qBAAlB,YAAAtC,GAAsC,QAAA,CAAA,CAGtD,EACA,kBAAmB,CACjB,cAAe,CAAC,GAACE,GAAAoC,GAAA,YAAAA,EAAkB,uBAAlB,MAAApC,GAAwC,OACzD,YAAakC,IAAwB,gBACrC,eAAgBA,IAAwB,0BACxC,aACEtF,EAACqF,EAAA,CACC,QAAQhC,GAAAmC,GAAA,YAAAA,EAAkB,uBAAlB,YAAAnC,GAAwC,MAChD,UAAUC,GAAAkC,GAAA,YAAAA,EAAkB,uBAAlB,YAAAlC,GAAwC,QAAA,CACpD,EAEF,aACEtD,EAACqF,EAAA,CACC,QAAQ9B,GAAAiC,GAAA,YAAAA,EAAkB,8BAAlB,YAAAjC,GAA+C,MACvD,UAAUC,GAAAgC,GAAA,YAAAA,EAAkB,8BAAlB,YAAAhC,GAA+C,QAAA,CAAA,CAG/D,EACA,kBAAmB,CACjB,cAAe,CAAC,GAACC,GAAA+B,GAAA,YAAAA,EAAkB,uBAAlB,MAAA/B,GAAwC,OACzD,YAAa6B,IAAwB,gBACrC,eAAgBA,IAAwB,0BACxC,aACEtF,EAACqF,EAAA,CACC,QAAQmB,GAAAhB,GAAA,YAAAA,EAAkB,uBAAlB,YAAAgB,GAAwC,MAChD,UAAUC,GAAAjB,GAAA,YAAAA,EAAkB,uBAAlB,YAAAiB,GAAwC,QAAA,CACpD,EAEF,aACEzG,EAACqF,EAAA,CACC,QAAQqB,GAAAlB,GAAA,YAAAA,EAAkB,8BAAlB,YAAAkB,GAA+C,MACvD,UAAUC,GAAAnB,GAAA,YAAAA,EAAkB,8BAAlB,YAAAmB,GAA+C,QAAA,CAAA,CAG/D,EACA,SAAU,CACR,YAAajC,GAAkB,CAACE,EAChC,YAAaD,EACb,gBAAiBC,EACjB,mBAAmBgC,GAAAjF,GAAA,YAAAA,EAAiB,oBAAjB,MAAAiF,GAAoC,aACrD5G,EAACqF,EAAA,CACC,cAAY,WACX,IAAGwB,GAAAlF,GAAA,YAAAA,EAAiB,oBAAjB,YAAAkF,GAAoC,YAAA,CAAA,EAG1C7G,EAACqF,EAAA,CACC,cAAY,WACZ,QAAQyB,IAAAC,GAAA1E,GAAA,YAAAA,EAAM,WAAN,YAAA0E,GAAgB,eAAhB,YAAAD,GAA8B,MACtC,UAAUE,IAAAC,GAAA5E,GAAA,YAAAA,EAAM,WAAN,YAAA4E,GAAgB,eAAhB,YAAAD,GAA8B,QAAA,CAC1C,EAEF,MACG,CAACpC,GAAaF,GACd,CAACE,GAAaD,GACbuC,GAAAvF,GAAA,YAAAA,EAAiB,oBAAjB,MAAAuF,GAAoC,aAClClH,EAACqF,EAAA,CACC,cAAY,WACX,IAAG8B,GAAAxF,GAAA,YAAAA,EAAiB,oBAAjB,YAAAwF,GAAoC,YAAA,CAAA,EAG1CnH,EAACqF,EAAA,CACC,cAAY,WACZ,QAAQ+B,GAAA/E,GAAA,YAAAA,EAAM,SAAS,eAAf,YAAA+E,GAA6B,MACrC,UAAUC,GAAAhF,GAAA,YAAAA,EAAM,SAAS,eAAf,YAAAgF,GAA6B,QAAA,CAAA,EAI3CrH,EAACqF,EAAA,CACC,cAAY,WACZ,QAAQiC,IAAAC,GAAAlF,GAAA,YAAAA,EAAM,WAAN,YAAAkF,GAAgB,eAAhB,YAAAD,GAA8B,MACtC,UAAUE,IAAAC,GAAApF,GAAA,YAAAA,EAAM,WAAN,YAAAoF,GAAgB,eAAhB,YAAAD,GAA8B,QAAA,CAAA,CAGhD,EACA,WAAWE,GAAArF,GAAA,YAAAA,EAAM,mBAAN,YAAAqF,GAAwB,IAAKpH,GAAa,OAC5C,MAAA,CACL,MAAOA,EAAS,MAChB,MACEN,EAACqF,EAAA,CACC,cAAY,yBACZ,OAAQ,CAAC/E,EAAS,OAAO,MACzB,SAAUA,EAAS,OAAO,SAC1B,KAAM,EAAA,CACR,EAEF,OAAQA,GAAA,MAAAA,EAAU,OAChBH,EAAC,OACC,CAAA,SAAA,CAAAH,EAACkF,GAAK,CAAA,OAAQyC,GAAQ,KAAK,KAAK,GAC/BrF,EAAAhC,GAAA,YAAAA,EAAU,SAAV,YAAAgC,EAAkB,IAAA,CAAA,CACrB,EACE,MACN,CAAA,GAEF,SACG+B,GAAa,EAAChC,GAAA,MAAAA,EAAM,aAAa,SAAU,CAAC0D,GAC5CpE,GAAmBA,EAAgB,mBAAqB,KACrD,CACE,MACG3B,EAAA,OAAA,CAAK,cAAY,gBACf,WAAa,iBAChB,CAAA,CAAA,EAGJ,CACE,MAAO2B,GAAA,MAAAA,EAAiB,kBACtB3B,EAACqF,EAAA,CACC,cAAY,sBACX,GAAG1D,GAAA,YAAAA,EAAiB,iBAAA,CAAA,EAGvB3B,EAACqF,EAAA,CACC,cAAY,mBACZ,QAAQuC,GAAAvF,GAAA,YAAAA,EAAM,WAAN,YAAAuF,GAAgB,MACxB,UAAUC,GAAAxF,GAAA,YAAAA,EAAM,WAAN,YAAAwF,GAAgB,QAAA,CAC5B,EAEF,WACG,CAAClG,GAAmB,CAACA,EAAgB,oBACtC,GAACmG,GAAAzF,GAAA,YAAAA,EAAM,YAAN,MAAAyF,GAAiB,SACtB,EAEN,aACEzD,EACI,OACAG,GAAA,MAAAA,EAAiB,aAEfuD,KAAAC,GAAArG,GAAA,YAAAA,EAAiB,wBAAjB,YAAAqG,GAAwC,SACxC3F,GAAA,YAAAA,EAAM,gBADN,YAAA0F,GAEC,IAAKlH,IAAc,CACpB,MAAOA,EAAI,MACX,MACEb,EAACqF,EAAA,CACC,cAAY,gBACZ,OAAQxE,EAAI,OAAO,MACnB,SAAUA,EAAI,OAAO,QAAA,CAAA,KAI3B,OAEN,MAAO,CACL,MAAOc,GAAA,MAAAA,EAAiB,2BACtBsG,IAAAC,GAAAvG,GAAA,YAAAA,EAAiB,2BAAjB,YAAAuG,GAA2C,eAA3C,YAAAD,GAAyD,UACzD,EACEjI,EAAC,OAAK,CAAA,cAAY,sBAAuB,SAAAH,EAAa,IAAK,CAAA,EAE3DG,EAACqF,EAAA,CACC,cAAY,gCACX,IAAG8C,GAAAxG,GAAA,YAAAA,EAAiB,2BAAjB,YAAAwG,GAA2C,YAAA,CAAA,IAGjDC,GAAA/F,GAAA,YAAAA,EAAM,QAAN,YAAA+F,GAAa,aAAa,SAAU,EACrCpI,EAAA,OAAA,CAAK,cAAY,sBAAuB,SAAaH,EAAA,IAAA,CAAK,EAE3DG,EAACqF,EAAA,CACC,cAAY,6BACZ,QAAQgD,GAAAhG,GAAA,YAAAA,EAAM,QAAN,YAAAgG,GAAa,aAAa,MAClC,UAAUC,GAAAjG,GAAA,YAAAA,EAAM,QAAN,YAAAiG,GAAa,aAAa,QAAA,CACtC,EAEF,WACG,CAAC3G,GAAmB,CAAC,EAACA,GAAA,MAAAA,EAAiB,qBACxC,GAAC4G,GAAAlG,GAAA,YAAAA,EAAM,YAAN,MAAAkG,GAAiB,UACpB,gBAAiB/D,GAAA,MAAAA,EAAiB,WAChC7C,GAAA,MAAAA,EAAiB,wBACf6G,IAAAC,GAAA9G,GAAA,YAAAA,EAAiB,2BAAjB,YAAA8G,GAA2C,eAA3C,YAAAD,GAAyD,UACzD,IACG,OAAK,CAAA,cAAY,sBAAuB,SAAA3I,EAAa,IAAK,CAAA,EAE3DG,EAACqF,EAAA,CACC,cAAY,sBACX,IAAGqD,GAAA/G,GAAA,YAAAA,EAAiB,2BAAjB,YAAA+G,GAA2C,YAAA,CAAA,IAGjDC,GAAAtG,GAAA,YAAAA,EAAM,QAAN,YAAAsG,GAAa,aAAa,SAAU,EACrC3I,EAAA,OAAA,CAAK,cAAY,sBAAuB,SAAaH,EAAA,IAAA,CAAK,EAE3DG,EAACqF,EAAA,CACC,cAAY,sBACZ,QAAQuD,GAAAvG,GAAA,YAAAA,EAAM,QAAN,YAAAuG,GAAa,aAAa,MAClC,UAAUC,GAAAxG,GAAA,YAAAA,EAAM,QAAN,YAAAwG,GAAa,aAAa,QAAA,CAAA,EAGtC,MACN,EACA,cACEjF,GACE5D,EAAC8I,GAAA,CACC,cAAY,kBACZ,QAAQ,UACR,SAAU5C,EACV,gBAAeA,EACf,KACEA,EACI,OACAtC,EAAc,CACZ,OAAQvB,EAAM,EAAA,CACf,EAEP,QAAS8D,EAER,SAAatG,EAAA,QAAA,CAChB,EAGJ,WACEkE,EACE/D,EAACqF,EAAA,CACC,QAAQ0D,GAAA1G,GAAA,YAAAA,EAAM,WAAN,YAAA0G,GAAgB,MACxB,UAAUC,GAAA3G,GAAA,YAAAA,EAAM,QAAN,YAAA2G,GAAa,aAAa,QAAA,CAAA,EAEpC,MAAA,CAER,CAEJ,EAEA7K,GAAa,eAAiB,gBAAkB,CAC9C,OAAO8K,GAAqB,CAC9B"}
@@ -1,4 +1,4 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
- import*as e from"@dropins/tools/preact-compat.js";const r=t=>e.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},e.createElement("g",{clipPath:"url(#clip0_4797_15331)"},e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M10.25 20.91L1.5 17.55V6.51996L10.25 9.92996V20.91Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M6.24023 4.64001L14.9902 8.06001V11.42",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{className:"error-icon",vectorEffect:"non-scaling-stroke",d:"M19 13.31L15.5 19.37H22.5L19 13.31Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{className:"error-icon",vectorEffect:"non-scaling-stroke",d:"M19.0202 17.11H18.9802L18.9502 15.56H19.0502L19.0202 17.11ZM18.9602 18.29V18.06H19.0502V18.29H18.9602Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M19 12.16V6.51996L10.25 9.92996V20.91L14.27 19.37L14.4 19.32",stroke:"currentColor",strokeLinejoin:"round"}),e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M1.5 6.51999L10.25 3.04999L19 6.51999L10.25 9.92999L1.5 6.51999Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"})),e.createElement("defs",null,e.createElement("clipPath",{id:"clip0_4797_15331"},e.createElement("rect",{width:22,height:18.86,fill:"white",transform:"translate(1 2.54999)"})))),o=t=>e.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z",stroke:"currentColor"}),e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M11.75 5.88423V4.75H12.25V5.88423L12.0485 13.0713H11.9515L11.75 5.88423ZM11.7994 18.25V16.9868H12.2253V18.25H11.7994Z",stroke:"currentColor"})),n=t=>e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",...t},e.createElement("path",{d:"M1 5H23",stroke:"currentColor",strokeWidth:1.5,strokeMiterlimit:10}),e.createElement("path",{d:"M17.3674 22H6.63446C5.67952 22 4.88992 21.2688 4.8379 20.3338L4 5H20L19.1621 20.3338C19.1119 21.2688 18.3223 22 17.3655 22H17.3674Z",stroke:"currentColor",strokeWidth:1.5,strokeMiterlimit:10}),e.createElement("path",{d:"M9.87189 2H14.1281C14.6085 2 15 2.39766 15 2.88889V5H9V2.88889C9 2.39912 9.39006 2 9.87189 2Z",stroke:"currentColor",strokeWidth:1.5,strokeMiterlimit:10}),e.createElement("path",{d:"M8.87402 8.58057L9.39348 17.682",stroke:"currentColor",strokeWidth:1.5,strokeMiterlimit:10}),e.createElement("path",{d:"M14.6673 8.58057L14.146 17.682",stroke:"currentColor",strokeWidth:1.5,strokeMiterlimit:10}));export{r as S,o as a,n as b};
4
- //# sourceMappingURL=Trash.js.map
3
+ import*as e from"@dropins/tools/preact-compat.js";const r=t=>e.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},e.createElement("g",{clipPath:"url(#clip0_4797_15331)"},e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M10.25 20.91L1.5 17.55V6.51996L10.25 9.92996V20.91Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M6.24023 4.64001L14.9902 8.06001V11.42",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{className:"error-icon",vectorEffect:"non-scaling-stroke",d:"M19 13.31L15.5 19.37H22.5L19 13.31Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{className:"error-icon",vectorEffect:"non-scaling-stroke",d:"M19.0202 17.11H18.9802L18.9502 15.56H19.0502L19.0202 17.11ZM18.9602 18.29V18.06H19.0502V18.29H18.9602Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M19 12.16V6.51996L10.25 9.92996V20.91L14.27 19.37L14.4 19.32",stroke:"currentColor",strokeLinejoin:"round"}),e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M1.5 6.51999L10.25 3.04999L19 6.51999L10.25 9.92999L1.5 6.51999Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"})),e.createElement("defs",null,e.createElement("clipPath",{id:"clip0_4797_15331"},e.createElement("rect",{width:22,height:18.86,fill:"white",transform:"translate(1 2.54999)"})))),o=t=>e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",...t},e.createElement("path",{d:"M1 5H23",stroke:"currentColor",strokeWidth:1.5,strokeMiterlimit:10}),e.createElement("path",{d:"M17.3674 22H6.63446C5.67952 22 4.88992 21.2688 4.8379 20.3338L4 5H20L19.1621 20.3338C19.1119 21.2688 18.3223 22 17.3655 22H17.3674Z",stroke:"currentColor",strokeWidth:1.5,strokeMiterlimit:10}),e.createElement("path",{d:"M9.87189 2H14.1281C14.6085 2 15 2.39766 15 2.88889V5H9V2.88889C9 2.39912 9.39006 2 9.87189 2Z",stroke:"currentColor",strokeWidth:1.5,strokeMiterlimit:10}),e.createElement("path",{d:"M8.87402 8.58057L9.39348 17.682",stroke:"currentColor",strokeWidth:1.5,strokeMiterlimit:10}),e.createElement("path",{d:"M14.6673 8.58057L14.146 17.682",stroke:"currentColor",strokeWidth:1.5,strokeMiterlimit:10})),n=t=>e.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z",stroke:"currentColor"}),e.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M11.75 5.88423V4.75H12.25V5.88423L12.0485 13.0713H11.9515L11.75 5.88423ZM11.7994 18.25V16.9868H12.2253V18.25H11.7994Z",stroke:"currentColor"}));export{r as S,n as a,o as b};
4
+ //# sourceMappingURL=WarningWithCircle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WarningWithCircle.js","sources":["../../node_modules/@adobe-commerce/elsie/src/icons/OrderError.svg","../../node_modules/@adobe-commerce/elsie/src/icons/Trash.svg","../../node_modules/@adobe-commerce/elsie/src/icons/WarningWithCircle.svg"],"sourcesContent":["import * as React from \"react\";\nconst SvgOrderError = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"g\", { clipPath: \"url(#clip0_4797_15331)\" }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M10.25 20.91L1.5 17.55V6.51996L10.25 9.92996V20.91Z\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M6.24023 4.64001L14.9902 8.06001V11.42\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { className: \"error-icon\", vectorEffect: \"non-scaling-stroke\", d: \"M19 13.31L15.5 19.37H22.5L19 13.31Z\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { className: \"error-icon\", vectorEffect: \"non-scaling-stroke\", d: \"M19.0202 17.11H18.9802L18.9502 15.56H19.0502L19.0202 17.11ZM18.9602 18.29V18.06H19.0502V18.29H18.9602Z\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M19 12.16V6.51996L10.25 9.92996V20.91L14.27 19.37L14.4 19.32\", stroke: \"currentColor\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M1.5 6.51999L10.25 3.04999L19 6.51999L10.25 9.92999L1.5 6.51999Z\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" })), /* @__PURE__ */ React.createElement(\"defs\", null, /* @__PURE__ */ React.createElement(\"clipPath\", { id: \"clip0_4797_15331\" }, /* @__PURE__ */ React.createElement(\"rect\", { width: 22, height: 18.86, fill: \"white\", transform: \"translate(1 2.54999)\" }))));\nexport default SvgOrderError;\n","import * as React from \"react\";\nconst SvgTrash = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { d: \"M1 5H23\", stroke: \"currentColor\", strokeWidth: 1.5, strokeMiterlimit: 10 }), /* @__PURE__ */ React.createElement(\"path\", { d: \"M17.3674 22H6.63446C5.67952 22 4.88992 21.2688 4.8379 20.3338L4 5H20L19.1621 20.3338C19.1119 21.2688 18.3223 22 17.3655 22H17.3674Z\", stroke: \"currentColor\", strokeWidth: 1.5, strokeMiterlimit: 10 }), /* @__PURE__ */ React.createElement(\"path\", { d: \"M9.87189 2H14.1281C14.6085 2 15 2.39766 15 2.88889V5H9V2.88889C9 2.39912 9.39006 2 9.87189 2Z\", stroke: \"currentColor\", strokeWidth: 1.5, strokeMiterlimit: 10 }), /* @__PURE__ */ React.createElement(\"path\", { d: \"M8.87402 8.58057L9.39348 17.682\", stroke: \"currentColor\", strokeWidth: 1.5, strokeMiterlimit: 10 }), /* @__PURE__ */ React.createElement(\"path\", { d: \"M14.6673 8.58057L14.146 17.682\", stroke: \"currentColor\", strokeWidth: 1.5, strokeMiterlimit: 10 }));\nexport default SvgTrash;\n","import * as React from \"react\";\nconst SvgWarningWithCircle = (props) => /* @__PURE__ */ React.createElement(\"svg\", { width: 24, height: 24, viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\", ...props }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M0.75 12C0.75 5.78421 5.78421 0.75 12 0.75C18.2158 0.75 23.25 5.78421 23.25 12C23.25 18.2158 18.2158 23.25 12 23.25C5.78421 23.25 0.75 18.2158 0.75 12Z\", stroke: \"currentColor\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M11.75 5.88423V4.75H12.25V5.88423L12.0485 13.0713H11.9515L11.75 5.88423ZM11.7994 18.25V16.9868H12.2253V18.25H11.7994Z\", stroke: \"currentColor\" }));\nexport default SvgWarningWithCircle;\n"],"names":["SvgOrderError","props","React","SvgTrash","SvgWarningWithCircle"],"mappings":"kDACK,MAACA,EAAiBC,GAA0BC,EAAM,cAAc,MAAO,CAAE,MAAO,GAAI,OAAQ,GAAI,QAAS,YAAa,KAAM,OAAQ,MAAO,6BAA8B,GAAGD,CAAO,EAAkBC,EAAM,cAAc,IAAK,CAAE,SAAU,0BAA4CA,EAAM,cAAc,OAAQ,CAAE,aAAc,qBAAsB,EAAG,sDAAuD,OAAQ,eAAgB,cAAe,QAAS,eAAgB,OAAO,CAAE,EAAmBA,EAAM,cAAc,OAAQ,CAAE,aAAc,qBAAsB,EAAG,yCAA0C,OAAQ,eAAgB,cAAe,QAAS,eAAgB,OAAS,CAAA,EAAmBA,EAAM,cAAc,OAAQ,CAAE,UAAW,aAAc,aAAc,qBAAsB,EAAG,sCAAuC,OAAQ,eAAgB,cAAe,QAAS,eAAgB,OAAS,CAAA,EAAmBA,EAAM,cAAc,OAAQ,CAAE,UAAW,aAAc,aAAc,qBAAsB,EAAG,yGAA0G,OAAQ,eAAgB,cAAe,QAAS,eAAgB,OAAO,CAAE,EAAmBA,EAAM,cAAc,OAAQ,CAAE,aAAc,qBAAsB,EAAG,+DAAgE,OAAQ,eAAgB,eAAgB,OAAS,CAAA,EAAmBA,EAAM,cAAc,OAAQ,CAAE,aAAc,qBAAsB,EAAG,mEAAoE,OAAQ,eAAgB,cAAe,QAAS,eAAgB,OAAO,CAAE,CAAC,EAAmBA,EAAM,cAAc,OAAQ,KAAsBA,EAAM,cAAc,WAAY,CAAE,GAAI,kBAAoB,EAAkBA,EAAM,cAAc,OAAQ,CAAE,MAAO,GAAI,OAAQ,MAAO,KAAM,QAAS,UAAW,sBAAwB,CAAA,CAAC,CAAC,CAAC,ECAv1DC,EAAYF,GAA0BC,EAAM,cAAc,MAAO,CAAE,MAAO,6BAA8B,MAAO,GAAI,OAAQ,GAAI,QAAS,YAAa,KAAM,OAAQ,GAAGD,CAAK,EAAoBC,EAAM,cAAc,OAAQ,CAAE,EAAG,UAAW,OAAQ,eAAgB,YAAa,IAAK,iBAAkB,EAAI,CAAA,EAAmBA,EAAM,cAAc,OAAQ,CAAE,EAAG,sIAAuI,OAAQ,eAAgB,YAAa,IAAK,iBAAkB,EAAE,CAAE,EAAmBA,EAAM,cAAc,OAAQ,CAAE,EAAG,gGAAiG,OAAQ,eAAgB,YAAa,IAAK,iBAAkB,EAAE,CAAE,EAAmBA,EAAM,cAAc,OAAQ,CAAE,EAAG,kCAAmC,OAAQ,eAAgB,YAAa,IAAK,iBAAkB,EAAI,CAAA,EAAmBA,EAAM,cAAc,OAAQ,CAAE,EAAG,iCAAkC,OAAQ,eAAgB,YAAa,IAAK,iBAAkB,GAAI,CAAC,ECAziCE,EAAwBH,GAA0BC,EAAM,cAAc,MAAO,CAAE,MAAO,GAAI,OAAQ,GAAI,QAAS,YAAa,KAAM,OAAQ,MAAO,6BAA8B,GAAGD,CAAK,EAAoBC,EAAM,cAAc,OAAQ,CAAE,aAAc,qBAAsB,EAAG,0JAA2J,OAAQ,cAAc,CAAE,EAAmBA,EAAM,cAAc,OAAQ,CAAE,aAAc,qBAAsB,EAAG,wHAAyH,OAAQ,eAAgB,CAAC","x_google_ignoreList":[0,1,2]}
@@ -1,6 +1,6 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
- import{s as o,d as X,f as I,h as U}from"./resetCart.js";import{events as g}from"@dropins/tools/event-bus.js";import{Initializer as K,merge as j}from"@dropins/tools/lib.js";import{c as Y}from"./persisted-data.js";import{CART_FRAGMENT as A}from"../fragments.js";const q=new K({init:async r=>{const n={disableGuestCart:!1,...r};q.config.setConfig(n),D().catch(console.error)},listeners:()=>[g.on("authenticated",r=>{o.authenticated&&!r?g.emit("cart/reset",void 0):r&&!o.authenticated&&(o.authenticated=r,D().catch(console.error))},{eager:!0}),g.on("locale",async r=>{r!==o.locale&&(o.locale=r,D().catch(console.error))}),g.on("cart/reset",()=>{X().catch(console.error),g.emit("cart/data",null)}),g.on("cart/data",r=>{Y(r)}),g.on("checkout/updated",r=>{r&&z().catch(console.error)}),g.on("companyContext/changed",()=>{z().catch(console.error)})]}),B=q.config;function k(r){var c,e,u,l,i,_,a,f,y,d,m,h,b,x,t,T;if(!r)return null;const n={appliedGiftCards:((c=r==null?void 0:r.applied_gift_cards)==null?void 0:c.map(s=>{var w,R,M;const p={code:s.code??"",appliedBalance:{value:s.applied_balance.value??0,currency:s.applied_balance.currency??"USD"},currentBalance:{value:s.current_balance.value??0,currency:s.current_balance.currency??"USD"},expirationDate:s.expiration_date??""},v=(w=p==null?void 0:p.currentBalance)==null?void 0:w.value,C=(R=p==null?void 0:p.appliedBalance)==null?void 0:R.value,S=(M=p==null?void 0:p.currentBalance)==null?void 0:M.currency,L=v-C>0?v-C:0;return{...p,giftCardBalance:{value:L,currency:S}}}))??[],id:r.id,totalQuantity:tr(r),totalUniqueItems:r.itemsV2.items.length,totalGiftOptions:O((e=r==null?void 0:r.prices)==null?void 0:e.gift_options),giftReceiptIncluded:(r==null?void 0:r.gift_receipt_included)??!1,printedCardIncluded:(r==null?void 0:r.printed_card_included)??!1,cartGiftWrapping:((u=r==null?void 0:r.available_gift_wrappings)==null?void 0:u.map(s=>{var p,v,C,S,E;return{design:s.design??"",uid:s.uid,selected:((p=r==null?void 0:r.gift_wrapping)==null?void 0:p.uid)===s.uid,image:{url:((v=s==null?void 0:s.image)==null?void 0:v.url)??"",label:((C=s.image)==null?void 0:C.label)??""},price:{currency:((S=s==null?void 0:s.price)==null?void 0:S.currency)??"USD",value:((E=s==null?void 0:s.price)==null?void 0:E.value)??0}}}))??[],giftMessage:{senderName:((l=r==null?void 0:r.gift_message)==null?void 0:l.from)??"",recipientName:((i=r==null?void 0:r.gift_message)==null?void 0:i.to)??"",message:((_=r==null?void 0:r.gift_message)==null?void 0:_.message)??""},errors:cr(r==null?void 0:r.itemsV2),items:N(r==null?void 0:r.itemsV2),miniCartMaxItems:N(r==null?void 0:r.itemsV2).slice(0,((a=o.config)==null?void 0:a.miniCartMaxItemsDisplay)??10),total:{includingTax:{value:r.prices.grand_total.value,currency:r.prices.grand_total.currency},excludingTax:{value:r.prices.grand_total_excluding_tax.value,currency:r.prices.grand_total_excluding_tax.currency}},discount:P(r.prices.discounts,r.prices.grand_total.currency),subtotal:{excludingTax:{value:(f=r.prices.subtotal_excluding_tax)==null?void 0:f.value,currency:(y=r.prices.subtotal_excluding_tax)==null?void 0:y.currency},includingTax:{value:(d=r.prices.subtotal_including_tax)==null?void 0:d.value,currency:(m=r.prices.subtotal_including_tax)==null?void 0:m.currency},includingDiscountOnly:{value:(h=r.prices.subtotal_with_discount_excluding_tax)==null?void 0:h.value,currency:(b=r.prices.subtotal_with_discount_excluding_tax)==null?void 0:b.currency}},appliedTaxes:F(r.prices.applied_taxes),totalTax:P(r.prices.applied_taxes,r.prices.grand_total.currency),appliedDiscounts:F(r.prices.discounts),isVirtual:r.is_virtual,addresses:{shipping:r.shipping_addresses&&or(r)},isGuestCart:!o.authenticated,hasOutOfStockItems:_r(r),hasFullyOutOfStockItems:pr(r),appliedCoupons:r.applied_coupons};return j(n,(T=(t=(x=B.getConfig().models)==null?void 0:x.CartModel)==null?void 0:t.transformer)==null?void 0:T.call(t,r))}function O(r){var n,c,e,u,l,i,_,a,f,y,d,m;return{giftWrappingForItems:{value:((n=r==null?void 0:r.gift_wrapping_for_items)==null?void 0:n.value)??0,currency:((c=r==null?void 0:r.gift_wrapping_for_items)==null?void 0:c.currency)??"USD"},giftWrappingForItemsInclTax:{value:((e=r==null?void 0:r.gift_wrapping_for_items_incl_tax)==null?void 0:e.value)??0,currency:((u=r==null?void 0:r.gift_wrapping_for_items_incl_tax)==null?void 0:u.currency)??"USD"},giftWrappingForOrder:{value:((l=r==null?void 0:r.gift_wrapping_for_order)==null?void 0:l.value)??0,currency:((i=r==null?void 0:r.gift_wrapping_for_order)==null?void 0:i.currency)??"USD"},giftWrappingForOrderInclTax:{value:((_=r==null?void 0:r.gift_wrapping_for_order_incl_tax)==null?void 0:_.value)??0,currency:((a=r==null?void 0:r.gift_wrapping_for_order_incl_tax)==null?void 0:a.currency)??"USD"},printedCard:{value:((f=r==null?void 0:r.printed_card)==null?void 0:f.value)??0,currency:((y=r==null?void 0:r.printed_card)==null?void 0:y.currency)??"USD"},printedCardInclTax:{value:((d=r==null?void 0:r.printed_card_incl_tax)==null?void 0:d.value)??0,currency:((m=r==null?void 0:r.printed_card_incl_tax)==null?void 0:m.currency)??"USD"}}}function P(r,n){return r!=null&&r.length?r.reduce((c,e)=>({value:c.value+e.amount.value,currency:e.amount.currency}),{value:0,currency:n}):{value:0,currency:n}}function H(r,n){var c,e,u,l;return{src:r!=null&&r.useConfigurableParentThumbnail?n.product.thumbnail.url:((e=(c=n.configured_variant)==null?void 0:c.thumbnail)==null?void 0:e.url)||n.product.thumbnail.url,alt:r!=null&&r.useConfigurableParentThumbnail?n.product.thumbnail.label:((l=(u=n.configured_variant)==null?void 0:u.thumbnail)==null?void 0:l.label)||n.product.thumbnail.label}}function J(r){var n,c,e,u;return r.__typename==="ConfigurableCartItem"?{value:(c=(n=r.configured_variant)==null?void 0:n.price_range)==null?void 0:c.maximum_price.regular_price.value,currency:(u=(e=r.configured_variant)==null?void 0:e.price_range)==null?void 0:u.maximum_price.regular_price.currency}:r.__typename==="GiftCardCartItem"?{value:r.prices.price.value,currency:r.prices.price.currency}:{value:r.prices.original_item_price.value,currency:r.prices.original_item_price.currency}}function V(r,n){return r!=null&&r.length&&[...r].sort((e,u)=>u.quantity-e.quantity).find(e=>n>=e.quantity)||null}function Z(r){var i,_;const n=r.quantity,c=r.__typename==="ConfigurableCartItem",e=c?(i=r.configured_variant)==null?void 0:i.price_tiers:r.product.price_tiers,u=c?(_=r.configured_variant)==null?void 0:_.price_range:r.product.price_range,l=V(e,n);return l?l.discount.amount_off>0:(u==null?void 0:u.maximum_price.discount.amount_off)>0}function rr(r){var n,c,e;return{senderName:((n=r==null?void 0:r.gift_message)==null?void 0:n.from)??"",recipientName:((c=r==null?void 0:r.gift_message)==null?void 0:c.to)??"",message:((e=r==null?void 0:r.gift_message)==null?void 0:e.message)??""}}function er(r){return{currency:(r==null?void 0:r.currency)??"USD",value:(r==null?void 0:r.value)??0}}function N(r){var c;if(!((c=r==null?void 0:r.items)!=null&&c.length))return[];const n=o.config;return r.items.map(e=>{var u,l,i,_,a,f,y,d,m,h,b,x;return{giftWrappingAvailable:((u=e==null?void 0:e.product)==null?void 0:u.gift_wrapping_available)??!1,giftWrappingPrice:er((l=e==null?void 0:e.product)==null?void 0:l.gift_wrapping_price),giftMessage:rr(e),productGiftWrapping:((i=e==null?void 0:e.available_gift_wrapping)==null?void 0:i.map(t=>{var T,s,p,v,C;return{design:t.design??"",uid:t.uid,selected:((T=e.gift_wrapping)==null?void 0:T.uid)===t.uid,image:{url:((s=t==null?void 0:t.image)==null?void 0:s.url)??"",label:((p=t.image)==null?void 0:p.label)??""},price:{currency:((v=t==null?void 0:t.price)==null?void 0:v.currency)??"USD",value:((C=t==null?void 0:t.price)==null?void 0:C.value)??0}}}))??[],itemType:e.__typename,uid:e.uid,giftMessageAvailable:nr(e.product.gift_message_available),url:{urlKey:e.product.url_key,categories:e.product.categories.map(t=>t.url_key)},canonicalUrl:e.product.canonical_url,categories:e.product.categories.map(t=>t.name),priceTiers:e.__typename==="ConfigurableCartItem"?((a=(_=e.configured_variant)==null?void 0:_.price_tiers)==null?void 0:a.map(t=>t))||[]:((f=e.product.price_tiers)==null?void 0:f.map(t=>t))||[],quantity:e.quantity,sku:fr(e),topLevelSku:e.product.sku,name:e.product.name,image:H(n,e),price:{value:e.prices.price.value,currency:e.prices.price.currency},taxedPrice:{value:e.prices.price_including_tax.value,currency:e.prices.price_including_tax.currency},fixedProductTaxes:e.prices.fixed_product_taxes,rowTotal:{value:e.prices.row_total.value,currency:e.prices.row_total.currency},rowTotalIncludingTax:{value:e.prices.row_total_including_tax.value,currency:e.prices.row_total_including_tax.currency},links:sr(e.links),total:{value:(y=e.prices.original_row_total)==null?void 0:y.value,currency:(d=e.prices.original_row_total)==null?void 0:d.currency},discount:{value:e.prices.total_item_discount.value,currency:e.prices.total_item_discount.currency,label:(m=e.prices.discounts)==null?void 0:m.map(t=>t.label)},regularPrice:J(e),discounted:Z(e),bundleOptions:e.__typename==="BundleCartItem"?ur(e.bundle_options):null,bundleOptionsUIDs:e.__typename==="BundleCartItem"?lr(e.bundle_options):null,selectedOptions:(h=$(e.configurable_options))==null?void 0:h.options,selectedOptionsUIDs:(b=$(e.configurable_options))==null?void 0:b.uids,customizableOptions:ir(e.customizable_options),sender:e.__typename==="GiftCardCartItem"?e.sender_name:null,senderEmail:e.__typename==="GiftCardCartItem"?e.sender_email:null,recipient:e.__typename==="GiftCardCartItem"?e.recipient_name:null,recipientEmail:e.__typename==="GiftCardCartItem"?e.recipient_email:null,message:e.__typename==="GiftCardCartItem"?e.message:null,discountedTotal:{value:e.prices.row_total.value,currency:e.prices.row_total.currency},onlyXLeftInStock:e.__typename==="ConfigurableCartItem"?(x=e.configured_variant)==null?void 0:x.only_x_left_in_stock:e.product.only_x_left_in_stock,lowInventory:e.is_available&&e.product.only_x_left_in_stock!==null,insufficientQuantity:(e.__typename==="ConfigurableCartItem"?e.configured_variant:e.product).stock_status==="IN_STOCK"&&!e.is_available,outOfStock:e.product.stock_status==="OUT_OF_STOCK",stockLevel:ar(e),discountPercentage:gr(e),savingsAmount:yr(e),productAttributes:dr(e)}})}function nr(r){switch(+r){case 0:return!1;case 1:return!0;case 2:return null;default:return!1}}function cr(r){var c;const n=(c=r==null?void 0:r.items)==null?void 0:c.reduce((e,u)=>{var l;return(l=u.errors)==null||l.forEach(i=>{e.push({uid:u.uid,text:i.message})}),e},[]);return n!=null&&n.length?n:null}function F(r){return r!=null&&r.length?r.map(n=>({amount:{value:n.amount.value,currency:n.amount.currency},label:n.label,coupon:n.coupon})):[]}function ur(r){const n=r==null?void 0:r.map(e=>({uid:e.uid,label:e.label,value:e.values.map(u=>u.label).join(", ")})),c={};return n==null||n.forEach(e=>{c[e.label]=e.value}),Object.keys(c).length>0?c:null}function lr(r){if(!(r!=null&&r.length))return null;const n=[];return r.forEach(c=>{var e;if((e=c.values)!=null&&e.length){const u=c.values.map(l=>l.uid);n.push(...u)}}),n.length>0?n:null}function $(r){const n=r==null?void 0:r.map(u=>({uid:u.configurable_product_option_uid,label:u.option_label,value:u.value_label,valueUid:u.configurable_product_option_value_uid})),c={},e={};return n==null||n.forEach(u=>{c[u.label]=u.value,e[u.label]=u.valueUid}),{options:Object.keys(c).length>0?c:null,uids:Object.keys(e).length>0?e:null}}function ir(r){const n=r==null?void 0:r.map(e=>({uid:e.customizable_option_uid,label:e.label,type:e.type,values:e.values.map(u=>({uid:u.customizable_option_value_uid,label:u.label,value:u.value}))})),c={};return n==null||n.forEach(e=>{var u;switch(e.type){case"field":case"area":case"date_time":c[e.label]=e.values[0].value;break;case"radio":case"drop_down":c[e.label]=e.values[0].label;break;case"multiple":case"checkbox":c[e.label]=e.values.reduce((l,i)=>l?`${l}, ${i.label}`:i.label,"");break;case"file":{const l=new DOMParser,i=e.values[0].value,a=((u=l.parseFromString(i,"text/html").querySelector("a"))==null?void 0:u.textContent)||"";c[e.label]=a;break}}}),c}function tr(r){var n,c;return((n=o.config)==null?void 0:n.cartSummaryDisplayTotal)===0?r.itemsV2.items.length:((c=o.config)==null?void 0:c.cartSummaryDisplayTotal)===1?r.total_quantity:r.itemsV2.items.length}function sr(r){return(r==null?void 0:r.length)>0?{count:r.length,result:r.map(n=>n.title).join(", ")}:null}function or(r){var n,c,e,u;return(n=r.shipping_addresses)!=null&&n.length?(c=r.shipping_addresses)==null?void 0:c.map(l=>({countryCode:l.country.code,zipCode:l.postcode,regionCode:l.region.code})):(e=r.addresses)!=null&&e.length?(u=r.addresses)==null?void 0:u.filter(l=>l.default_shipping).map(l=>{var i;return l.default_shipping&&{countryCode:l.country_code,zipCode:l.postcode,regionCode:(i=l.region)==null?void 0:i.region_code}}):null}function _r(r){var n,c;return(c=(n=r==null?void 0:r.itemsV2)==null?void 0:n.items)==null?void 0:c.some(e=>{var u;return((u=e==null?void 0:e.product)==null?void 0:u.stock_status)==="OUT_OF_STOCK"||e.product.stock_status==="IN_STOCK"&&!e.is_available})}function ar(r){return r.not_available_message?r.product.quantity!=null?r.product.quantity:"noNumber":null}function pr(r){var n,c;return(c=(n=r==null?void 0:r.itemsV2)==null?void 0:n.items)==null?void 0:c.some(e=>{var u;return((u=e==null?void 0:e.product)==null?void 0:u.stock_status)==="OUT_OF_STOCK"})}function gr(r){var u,l,i,_,a,f,y,d;const n=r.quantity,c=V(r.product.price_tiers,n);if(c)return Math.round(c.discount.percent_off);let e;if(r.__typename==="ConfigurableCartItem")e=(_=(i=(l=(u=r==null?void 0:r.configured_variant)==null?void 0:u.price_range)==null?void 0:l.maximum_price)==null?void 0:i.discount)==null?void 0:_.percent_off;else{if(r.__typename==="BundleCartItem")return;e=(d=(y=(f=(a=r==null?void 0:r.product)==null?void 0:a.price_range)==null?void 0:f.maximum_price)==null?void 0:y.discount)==null?void 0:d.percent_off}if(e!==0)return Math.round(e)}function fr(r){var n;return r.__typename==="ConfigurableCartItem"?r.configured_variant.sku:((n=r.product)==null?void 0:n.variantSku)||r.product.sku}function yr(r){var e,u,l,i,_,a;let n,c;if(n=((u=(e=r==null?void 0:r.prices)==null?void 0:e.original_row_total)==null?void 0:u.value)-((i=(l=r==null?void 0:r.prices)==null?void 0:l.row_total)==null?void 0:i.value),c=(a=(_=r==null?void 0:r.prices)==null?void 0:_.row_total)==null?void 0:a.currency,n!==0)return{value:n,currency:c}}function dr(r){var n,c,e;return(e=(c=(n=r==null?void 0:r.product)==null?void 0:n.custom_attributesV2)==null?void 0:c.items)==null?void 0:e.map(u=>{const l=u.code.split("_").map(i=>i.charAt(0).toUpperCase()+i.slice(1)).join(" ");return{...u,code:l}})}function mr(r){var e,u;if(!r)return null;const n=l=>{switch(l){case 1:return"EXCLUDING_TAX";case 2:return"INCLUDING_TAX";case 3:return"INCLUDING_EXCLUDING_TAX";default:return"EXCLUDING_TAX"}},c=l=>{switch(+l){case 0:return!1;case 1:return!0;case 2:return null;default:return!1}};return{displayMiniCart:r.minicart_display,miniCartMaxItemsDisplay:r.minicart_max_items,cartExpiresInDays:r.cart_expires_in_days,cartSummaryDisplayTotal:r.cart_summary_display_quantity,cartSummaryMaxItems:r.max_items_in_order_summary,defaultCountry:r.default_country,categoryFixedProductTaxDisplaySetting:r.category_fixed_product_tax_display_setting,productFixedProductTaxDisplaySetting:r.product_fixed_product_tax_display_setting,salesFixedProductTaxDisplaySetting:r.sales_fixed_product_tax_display_setting,shoppingCartDisplaySetting:{zeroTax:r.shopping_cart_display_zero_tax,subtotal:n(r.shopping_cart_display_subtotal),price:n(r.shopping_cart_display_price),shipping:n(r.shopping_cart_display_shipping),fullSummary:r.shopping_cart_display_full_summary,grandTotal:r.shopping_cart_display_grand_total,taxGiftWrapping:r.shopping_cart_display_tax_gift_wrapping},useConfigurableParentThumbnail:r.configurable_thumbnail_source==="parent",allowGiftWrappingOnOrder:c(r==null?void 0:r.allow_gift_wrapping_on_order),allowGiftWrappingOnOrderItems:c(r==null?void 0:r.allow_gift_wrapping_on_order_items),allowGiftMessageOnOrder:c(r==null?void 0:r.allow_order),allowGiftMessageOnOrderItems:c(r==null?void 0:r.allow_items),allowGiftReceipt:!!+(r==null?void 0:r.allow_gift_receipt),allowPrintedCard:!!+(r==null?void 0:r.allow_printed_card),printedCardPrice:{currency:((e=r==null?void 0:r.printed_card_priceV2)==null?void 0:e.currency)??"",value:((u=r==null?void 0:r.printed_card_priceV2)==null?void 0:u.value)!=null?+r.printed_card_priceV2.value:0},cartGiftWrapping:n(+r.cart_gift_wrapping),cartPrintedCard:n(+r.cart_printed_card)}}const vr=`
3
+ import{s as o,d as X,f as I,h as G}from"./resetCart.js";import{events as g}from"@dropins/tools/event-bus.js";import{Initializer as K,merge as j}from"@dropins/tools/lib.js";import{c as Y}from"./persisted-data.js";import{CART_FRAGMENT as w}from"../fragments.js";const z=new K({init:async r=>{const n={disableGuestCart:!1,...r};z.config.setConfig(n),D().catch(console.error)},listeners:()=>[g.on("authenticated",r=>{o.authenticated&&!r?g.emit("cart/reset",void 0):r&&!o.authenticated&&(o.authenticated=r,D().catch(console.error))},{eager:!0}),g.on("locale",async r=>{r!==o.locale&&(o.locale=r,D().catch(console.error))}),g.on("cart/reset",()=>{X().catch(console.error),g.emit("cart/data",null)}),g.on("cart/data",r=>{Y(r)}),g.on("checkout/updated",r=>{!r||(r==null?void 0:r.type)==="quote"||U().catch(console.error)}),g.on("companyContext/changed",()=>{U().catch(console.error)}),g.on("requisitionList/alert",()=>{U().catch(console.error)})]}),B=z.config;function P(r){var c,e,u,l,i,_,a,f,y,d,m,h,b,x,t,T;if(!r)return null;const n={appliedGiftCards:((c=r==null?void 0:r.applied_gift_cards)==null?void 0:c.map(s=>{var R,M,k;const p={code:s.code??"",appliedBalance:{value:s.applied_balance.value??0,currency:s.applied_balance.currency??"USD"},currentBalance:{value:s.current_balance.value??0,currency:s.current_balance.currency??"USD"},expirationDate:s.expiration_date??""},v=(R=p==null?void 0:p.currentBalance)==null?void 0:R.value,C=(M=p==null?void 0:p.appliedBalance)==null?void 0:M.value,S=(k=p==null?void 0:p.currentBalance)==null?void 0:k.currency,L=v-C>0?v-C:0;return{...p,giftCardBalance:{value:L,currency:S}}}))??[],id:r.id,totalQuantity:tr(r),totalUniqueItems:r.itemsV2.items.length,totalGiftOptions:O((e=r==null?void 0:r.prices)==null?void 0:e.gift_options),giftReceiptIncluded:(r==null?void 0:r.gift_receipt_included)??!1,printedCardIncluded:(r==null?void 0:r.printed_card_included)??!1,cartGiftWrapping:((u=r==null?void 0:r.available_gift_wrappings)==null?void 0:u.map(s=>{var p,v,C,S,E;return{design:s.design??"",uid:s.uid,selected:((p=r==null?void 0:r.gift_wrapping)==null?void 0:p.uid)===s.uid,image:{url:((v=s==null?void 0:s.image)==null?void 0:v.url)??"",label:((C=s.image)==null?void 0:C.label)??""},price:{currency:((S=s==null?void 0:s.price)==null?void 0:S.currency)??"USD",value:((E=s==null?void 0:s.price)==null?void 0:E.value)??0}}}))??[],giftMessage:{senderName:((l=r==null?void 0:r.gift_message)==null?void 0:l.from)??"",recipientName:((i=r==null?void 0:r.gift_message)==null?void 0:i.to)??"",message:((_=r==null?void 0:r.gift_message)==null?void 0:_.message)??""},errors:cr(r==null?void 0:r.itemsV2),items:F(r==null?void 0:r.itemsV2),miniCartMaxItems:F(r==null?void 0:r.itemsV2).slice(0,((a=o.config)==null?void 0:a.miniCartMaxItemsDisplay)??10),total:{includingTax:{value:r.prices.grand_total.value,currency:r.prices.grand_total.currency},excludingTax:{value:r.prices.grand_total_excluding_tax.value,currency:r.prices.grand_total_excluding_tax.currency}},discount:N(r.prices.discounts,r.prices.grand_total.currency),subtotal:{excludingTax:{value:(f=r.prices.subtotal_excluding_tax)==null?void 0:f.value,currency:(y=r.prices.subtotal_excluding_tax)==null?void 0:y.currency},includingTax:{value:(d=r.prices.subtotal_including_tax)==null?void 0:d.value,currency:(m=r.prices.subtotal_including_tax)==null?void 0:m.currency},includingDiscountOnly:{value:(h=r.prices.subtotal_with_discount_excluding_tax)==null?void 0:h.value,currency:(b=r.prices.subtotal_with_discount_excluding_tax)==null?void 0:b.currency}},appliedTaxes:q(r.prices.applied_taxes),totalTax:N(r.prices.applied_taxes,r.prices.grand_total.currency),appliedDiscounts:q(r.prices.discounts),isVirtual:r.is_virtual,addresses:{shipping:r.shipping_addresses&&or(r)},isGuestCart:!o.authenticated,hasOutOfStockItems:_r(r),hasFullyOutOfStockItems:pr(r),appliedCoupons:r.applied_coupons};return j(n,(T=(t=(x=B.getConfig().models)==null?void 0:x.CartModel)==null?void 0:t.transformer)==null?void 0:T.call(t,r))}function O(r){var n,c,e,u,l,i,_,a,f,y,d,m;return{giftWrappingForItems:{value:((n=r==null?void 0:r.gift_wrapping_for_items)==null?void 0:n.value)??0,currency:((c=r==null?void 0:r.gift_wrapping_for_items)==null?void 0:c.currency)??"USD"},giftWrappingForItemsInclTax:{value:((e=r==null?void 0:r.gift_wrapping_for_items_incl_tax)==null?void 0:e.value)??0,currency:((u=r==null?void 0:r.gift_wrapping_for_items_incl_tax)==null?void 0:u.currency)??"USD"},giftWrappingForOrder:{value:((l=r==null?void 0:r.gift_wrapping_for_order)==null?void 0:l.value)??0,currency:((i=r==null?void 0:r.gift_wrapping_for_order)==null?void 0:i.currency)??"USD"},giftWrappingForOrderInclTax:{value:((_=r==null?void 0:r.gift_wrapping_for_order_incl_tax)==null?void 0:_.value)??0,currency:((a=r==null?void 0:r.gift_wrapping_for_order_incl_tax)==null?void 0:a.currency)??"USD"},printedCard:{value:((f=r==null?void 0:r.printed_card)==null?void 0:f.value)??0,currency:((y=r==null?void 0:r.printed_card)==null?void 0:y.currency)??"USD"},printedCardInclTax:{value:((d=r==null?void 0:r.printed_card_incl_tax)==null?void 0:d.value)??0,currency:((m=r==null?void 0:r.printed_card_incl_tax)==null?void 0:m.currency)??"USD"}}}function N(r,n){return r!=null&&r.length?r.reduce((c,e)=>({value:c.value+e.amount.value,currency:e.amount.currency}),{value:0,currency:n}):{value:0,currency:n}}function H(r,n){var c,e,u,l;return{src:r!=null&&r.useConfigurableParentThumbnail?n.product.thumbnail.url:((e=(c=n.configured_variant)==null?void 0:c.thumbnail)==null?void 0:e.url)||n.product.thumbnail.url,alt:r!=null&&r.useConfigurableParentThumbnail?n.product.thumbnail.label:((l=(u=n.configured_variant)==null?void 0:u.thumbnail)==null?void 0:l.label)||n.product.thumbnail.label}}function J(r){var n,c,e,u;return r.__typename==="ConfigurableCartItem"?{value:(c=(n=r.configured_variant)==null?void 0:n.price_range)==null?void 0:c.maximum_price.regular_price.value,currency:(u=(e=r.configured_variant)==null?void 0:e.price_range)==null?void 0:u.maximum_price.regular_price.currency}:r.__typename==="GiftCardCartItem"?{value:r.prices.price.value,currency:r.prices.price.currency}:{value:r.prices.original_item_price.value,currency:r.prices.original_item_price.currency}}function V(r,n){return r!=null&&r.length&&[...r].sort((e,u)=>u.quantity-e.quantity).find(e=>n>=e.quantity)||null}function Z(r){var i,_;const n=r.quantity,c=r.__typename==="ConfigurableCartItem",e=c?(i=r.configured_variant)==null?void 0:i.price_tiers:r.product.price_tiers,u=c?(_=r.configured_variant)==null?void 0:_.price_range:r.product.price_range,l=V(e,n);return l?l.discount.amount_off>0:(u==null?void 0:u.maximum_price.discount.amount_off)>0}function rr(r){var n,c,e;return{senderName:((n=r==null?void 0:r.gift_message)==null?void 0:n.from)??"",recipientName:((c=r==null?void 0:r.gift_message)==null?void 0:c.to)??"",message:((e=r==null?void 0:r.gift_message)==null?void 0:e.message)??""}}function er(r){return{currency:(r==null?void 0:r.currency)??"USD",value:(r==null?void 0:r.value)??0}}function F(r){var c;if(!((c=r==null?void 0:r.items)!=null&&c.length))return[];const n=o.config;return r.items.map(e=>{var u,l,i,_,a,f,y,d,m,h,b,x;return{giftWrappingAvailable:((u=e==null?void 0:e.product)==null?void 0:u.gift_wrapping_available)??!1,giftWrappingPrice:er((l=e==null?void 0:e.product)==null?void 0:l.gift_wrapping_price),giftMessage:rr(e),productGiftWrapping:((i=e==null?void 0:e.available_gift_wrapping)==null?void 0:i.map(t=>{var T,s,p,v,C;return{design:t.design??"",uid:t.uid,selected:((T=e.gift_wrapping)==null?void 0:T.uid)===t.uid,image:{url:((s=t==null?void 0:t.image)==null?void 0:s.url)??"",label:((p=t.image)==null?void 0:p.label)??""},price:{currency:((v=t==null?void 0:t.price)==null?void 0:v.currency)??"USD",value:((C=t==null?void 0:t.price)==null?void 0:C.value)??0}}}))??[],itemType:e.__typename,uid:e.uid,giftMessageAvailable:nr(e.product.gift_message_available),url:{urlKey:e.product.url_key,categories:e.product.categories.map(t=>t.url_key)},canonicalUrl:e.product.canonical_url,categories:e.product.categories.map(t=>t.name),priceTiers:e.__typename==="ConfigurableCartItem"?((a=(_=e.configured_variant)==null?void 0:_.price_tiers)==null?void 0:a.map(t=>t))||[]:((f=e.product.price_tiers)==null?void 0:f.map(t=>t))||[],quantity:e.quantity,sku:fr(e),topLevelSku:e.product.sku,name:e.product.name,image:H(n,e),price:{value:e.prices.price.value,currency:e.prices.price.currency},taxedPrice:{value:e.prices.price_including_tax.value,currency:e.prices.price_including_tax.currency},fixedProductTaxes:e.prices.fixed_product_taxes,rowTotal:{value:e.prices.row_total.value,currency:e.prices.row_total.currency},rowTotalIncludingTax:{value:e.prices.row_total_including_tax.value,currency:e.prices.row_total_including_tax.currency},links:sr(e.links),total:{value:(y=e.prices.original_row_total)==null?void 0:y.value,currency:(d=e.prices.original_row_total)==null?void 0:d.currency},discount:{value:e.prices.total_item_discount.value,currency:e.prices.total_item_discount.currency,label:(m=e.prices.discounts)==null?void 0:m.map(t=>t.label)},regularPrice:J(e),discounted:Z(e),bundleOptions:e.__typename==="BundleCartItem"?ur(e.bundle_options):null,bundleOptionsUIDs:e.__typename==="BundleCartItem"?lr(e.bundle_options):null,selectedOptions:(h=$(e.configurable_options))==null?void 0:h.options,selectedOptionsUIDs:(b=$(e.configurable_options))==null?void 0:b.uids,customizableOptions:ir(e.customizable_options),sender:e.__typename==="GiftCardCartItem"?e.sender_name:null,senderEmail:e.__typename==="GiftCardCartItem"?e.sender_email:null,recipient:e.__typename==="GiftCardCartItem"?e.recipient_name:null,recipientEmail:e.__typename==="GiftCardCartItem"?e.recipient_email:null,message:e.__typename==="GiftCardCartItem"?e.message:null,discountedTotal:{value:e.prices.row_total.value,currency:e.prices.row_total.currency},onlyXLeftInStock:e.__typename==="ConfigurableCartItem"?(x=e.configured_variant)==null?void 0:x.only_x_left_in_stock:e.product.only_x_left_in_stock,lowInventory:e.is_available&&e.product.only_x_left_in_stock!==null,insufficientQuantity:(e.__typename==="ConfigurableCartItem"?e.configured_variant:e.product).stock_status==="IN_STOCK"&&!e.is_available,outOfStock:e.product.stock_status==="OUT_OF_STOCK",stockLevel:ar(e),discountPercentage:gr(e),savingsAmount:yr(e),productAttributes:dr(e)}})}function nr(r){switch(+r){case 0:return!1;case 1:return!0;case 2:return null;default:return!1}}function cr(r){var c;const n=(c=r==null?void 0:r.items)==null?void 0:c.reduce((e,u)=>{var l;return(l=u.errors)==null||l.forEach(i=>{e.push({uid:u.uid,text:i.message})}),e},[]);return n!=null&&n.length?n:null}function q(r){return r!=null&&r.length?r.map(n=>({amount:{value:n.amount.value,currency:n.amount.currency},label:n.label,coupon:n.coupon})):[]}function ur(r){const n=r==null?void 0:r.map(e=>({uid:e.uid,label:e.label,value:e.values.map(u=>u.label).join(", ")})),c={};return n==null||n.forEach(e=>{c[e.label]=e.value}),Object.keys(c).length>0?c:null}function lr(r){if(!(r!=null&&r.length))return null;const n=[];return r.forEach(c=>{var e;if((e=c.values)!=null&&e.length){const u=c.values.map(l=>l.uid);n.push(...u)}}),n.length>0?n:null}function $(r){const n=r==null?void 0:r.map(u=>({uid:u.configurable_product_option_uid,label:u.option_label,value:u.value_label,valueUid:u.configurable_product_option_value_uid})),c={},e={};return n==null||n.forEach(u=>{c[u.label]=u.value,e[u.label]=u.valueUid}),{options:Object.keys(c).length>0?c:null,uids:Object.keys(e).length>0?e:null}}function ir(r){const n=r==null?void 0:r.map(e=>({uid:e.customizable_option_uid,label:e.label,type:e.type,values:e.values.map(u=>({uid:u.customizable_option_value_uid,label:u.label,value:u.value}))})),c={};return n==null||n.forEach(e=>{var u;switch(e.type){case"field":case"area":case"date_time":c[e.label]=e.values[0].value;break;case"radio":case"drop_down":c[e.label]=e.values[0].label;break;case"multiple":case"checkbox":c[e.label]=e.values.reduce((l,i)=>l?`${l}, ${i.label}`:i.label,"");break;case"file":{const l=new DOMParser,i=e.values[0].value,a=((u=l.parseFromString(i,"text/html").querySelector("a"))==null?void 0:u.textContent)||"";c[e.label]=a;break}}}),c}function tr(r){var n,c;return((n=o.config)==null?void 0:n.cartSummaryDisplayTotal)===0?r.itemsV2.items.length:((c=o.config)==null?void 0:c.cartSummaryDisplayTotal)===1?r.total_quantity:r.itemsV2.items.length}function sr(r){return(r==null?void 0:r.length)>0?{count:r.length,result:r.map(n=>n.title).join(", ")}:null}function or(r){var n,c,e,u;return(n=r.shipping_addresses)!=null&&n.length?(c=r.shipping_addresses)==null?void 0:c.map(l=>({countryCode:l.country.code,zipCode:l.postcode,regionCode:l.region.code})):(e=r.addresses)!=null&&e.length?(u=r.addresses)==null?void 0:u.filter(l=>l.default_shipping).map(l=>{var i;return l.default_shipping&&{countryCode:l.country_code,zipCode:l.postcode,regionCode:(i=l.region)==null?void 0:i.region_code}}):null}function _r(r){var n,c;return(c=(n=r==null?void 0:r.itemsV2)==null?void 0:n.items)==null?void 0:c.some(e=>{var u;return((u=e==null?void 0:e.product)==null?void 0:u.stock_status)==="OUT_OF_STOCK"||e.product.stock_status==="IN_STOCK"&&!e.is_available})}function ar(r){return r.not_available_message?r.product.quantity!=null?r.product.quantity:"noNumber":null}function pr(r){var n,c;return(c=(n=r==null?void 0:r.itemsV2)==null?void 0:n.items)==null?void 0:c.some(e=>{var u;return((u=e==null?void 0:e.product)==null?void 0:u.stock_status)==="OUT_OF_STOCK"})}function gr(r){var u,l,i,_,a,f,y,d;const n=r.quantity,c=V(r.product.price_tiers,n);if(c)return Math.round(c.discount.percent_off);let e;if(r.__typename==="ConfigurableCartItem")e=(_=(i=(l=(u=r==null?void 0:r.configured_variant)==null?void 0:u.price_range)==null?void 0:l.maximum_price)==null?void 0:i.discount)==null?void 0:_.percent_off;else{if(r.__typename==="BundleCartItem")return;e=(d=(y=(f=(a=r==null?void 0:r.product)==null?void 0:a.price_range)==null?void 0:f.maximum_price)==null?void 0:y.discount)==null?void 0:d.percent_off}if(e!==0)return Math.round(e)}function fr(r){var n;return r.__typename==="ConfigurableCartItem"?r.configured_variant.sku:((n=r.product)==null?void 0:n.variantSku)||r.product.sku}function yr(r){var e,u,l,i,_,a;let n,c;if(n=((u=(e=r==null?void 0:r.prices)==null?void 0:e.original_row_total)==null?void 0:u.value)-((i=(l=r==null?void 0:r.prices)==null?void 0:l.row_total)==null?void 0:i.value),c=(a=(_=r==null?void 0:r.prices)==null?void 0:_.row_total)==null?void 0:a.currency,n!==0)return{value:n,currency:c}}function dr(r){var n,c,e;return(e=(c=(n=r==null?void 0:r.product)==null?void 0:n.custom_attributesV2)==null?void 0:c.items)==null?void 0:e.map(u=>{const l=u.code.split("_").map(i=>i.charAt(0).toUpperCase()+i.slice(1)).join(" ");return{...u,code:l}})}function mr(r){var e,u;if(!r)return null;const n=l=>{switch(l){case 1:return"EXCLUDING_TAX";case 2:return"INCLUDING_TAX";case 3:return"INCLUDING_EXCLUDING_TAX";default:return"EXCLUDING_TAX"}},c=l=>{switch(+l){case 0:return!1;case 1:return!0;case 2:return null;default:return!1}};return{displayMiniCart:r.minicart_display,miniCartMaxItemsDisplay:r.minicart_max_items,cartExpiresInDays:r.cart_expires_in_days,cartSummaryDisplayTotal:r.cart_summary_display_quantity,cartSummaryMaxItems:r.max_items_in_order_summary,defaultCountry:r.default_country,categoryFixedProductTaxDisplaySetting:r.category_fixed_product_tax_display_setting,productFixedProductTaxDisplaySetting:r.product_fixed_product_tax_display_setting,salesFixedProductTaxDisplaySetting:r.sales_fixed_product_tax_display_setting,shoppingCartDisplaySetting:{zeroTax:r.shopping_cart_display_zero_tax,subtotal:n(r.shopping_cart_display_subtotal),price:n(r.shopping_cart_display_price),shipping:n(r.shopping_cart_display_shipping),fullSummary:r.shopping_cart_display_full_summary,grandTotal:r.shopping_cart_display_grand_total,taxGiftWrapping:r.shopping_cart_display_tax_gift_wrapping},useConfigurableParentThumbnail:r.configurable_thumbnail_source==="parent",allowGiftWrappingOnOrder:c(r==null?void 0:r.allow_gift_wrapping_on_order),allowGiftWrappingOnOrderItems:c(r==null?void 0:r.allow_gift_wrapping_on_order_items),allowGiftMessageOnOrder:c(r==null?void 0:r.allow_order),allowGiftMessageOnOrderItems:c(r==null?void 0:r.allow_items),allowGiftReceipt:!!+(r==null?void 0:r.allow_gift_receipt),allowPrintedCard:!!+(r==null?void 0:r.allow_printed_card),printedCardPrice:{currency:((e=r==null?void 0:r.printed_card_priceV2)==null?void 0:e.currency)??"",value:((u=r==null?void 0:r.printed_card_priceV2)==null?void 0:u.value)!=null?+r.printed_card_priceV2.value:0},cartGiftWrapping:n(+r.cart_gift_wrapping),cartPrintedCard:n(+r.cart_printed_card)}}const vr=`
4
4
  fragment CUSTOMER_FRAGMENT on Customer {
5
5
  addresses {
6
6
  default_shipping
@@ -26,7 +26,7 @@ import{s as o,d as X,f as I,h as U}from"./resetCart.js";import{events as g}from"
26
26
  }
27
27
  }
28
28
 
29
- ${A}
29
+ ${w}
30
30
  `,hr=`
31
31
  query CUSTOMER_CART_QUERY(
32
32
  $pageSize: Int! = 100,
@@ -44,8 +44,8 @@ import{s as o,d as X,f as I,h as U}from"./resetCart.js";import{events as g}from"
44
44
  }
45
45
 
46
46
  ${vr}
47
- ${A}
48
- `,G=async()=>{const r=o.authenticated,n=o.cartId;if(r)return I(hr,{method:"POST"}).then(({errors:c,data:e})=>{if(c)return U(c);const u={...e.cart,...e.customer};return k(u)});if(!n)throw new Error("No cart ID found");return I(Cr,{method:"POST",cache:"no-cache",variables:{cartId:n}}).then(({errors:c,data:e})=>c?U(c):k(e.cart))},br=`
47
+ ${w}
48
+ `,A=async()=>{const r=o.authenticated,n=o.cartId;if(r)return I(hr,{method:"POST"}).then(({errors:c,data:e})=>{if(c)return G(c);const u={...e.cart,...e.customer};return P(u)});if(!n)throw new Error("No cart ID found");return I(Cr,{method:"POST",cache:"no-cache",variables:{cartId:n}}).then(({errors:c,data:e})=>c?G(c):P(e.cart))},br=`
49
49
  mutation MERGE_CARTS_MUTATION(
50
50
  $guestCartId: String!,
51
51
  $customerCartId: String!,
@@ -61,8 +61,8 @@ import{s as o,d as X,f as I,h as U}from"./resetCart.js";import{events as g}from"
61
61
  }
62
62
  }
63
63
 
64
- ${A}
65
- `,D=async()=>{if(o.initializing)return null;o.initializing=!0,o.config||(o.config=await Tr());const r=o.authenticated?await Q():await W();return g.emit("cart/initialized",r),g.emit("cart/data",r),o.initializing=!1,r};async function Q(){const r=o.cartId,n=await G();return n?(o.cartId=n.id,!r||n.id===r?n:await I(br,{variables:{guestCartId:r,customerCartId:n.id}}).then(()=>G()).then(c=>{const e={oldCartItems:n.items,newCart:c};return g.emit("cart/merged",e),c}).catch(()=>(console.error("Could not merge carts"),n))):null}async function W(){if(B.getConfig().disableGuestCart===!0||!o.cartId)return null;try{return await G()}catch(r){return console.error(r),null}}const xr=`
64
+ ${w}
65
+ `,D=async()=>{if(o.initializing)return null;o.initializing=!0,o.config||(o.config=await Tr());const r=o.authenticated?await Q():await W();return g.emit("cart/initialized",r),g.emit("cart/data",r),o.initializing=!1,r};async function Q(){const r=o.cartId,n=await A();return n?(o.cartId=n.id,!r||n.id===r?n:await I(br,{variables:{guestCartId:r,customerCartId:n.id}}).then(()=>A()).then(c=>{const e={oldCartItems:n.items,newCart:c};return g.emit("cart/merged",e),c}).catch(()=>(console.error("Could not merge carts"),n))):null}async function W(){if(B.getConfig().disableGuestCart===!0||!o.cartId)return null;try{return await A()}catch(r){return console.error(r),null}}const xr=`
66
66
  query STORE_CONFIG_QUERY {
67
67
  storeConfig {
68
68
  minicart_display
@@ -96,5 +96,5 @@ query STORE_CONFIG_QUERY {
96
96
  cart_printed_card
97
97
  }
98
98
  }
99
- `,Tr=async()=>I(xr,{method:"GET",cache:"force-cache"}).then(({errors:r,data:n})=>r?U(r):mr(n.storeConfig)),z=async()=>{const r=o.authenticated?await Q():await W();return g.emit("cart/data",r),r};export{D as a,Q as b,B as c,W as d,Tr as e,G as g,q as i,z as r,k as t};
99
+ `,Tr=async()=>I(xr,{method:"GET",cache:"force-cache"}).then(({errors:r,data:n})=>r?G(r):mr(n.storeConfig)),U=async()=>{const r=o.authenticated?await Q():await W();return g.emit("cart/data",r),r};export{D as a,Q as b,B as c,W as d,Tr as e,A as g,z as i,U as r,P as t};
100
100
  //# sourceMappingURL=refreshCart.js.map