@dropins/storefront-order 1.3.0-beta2 → 1.3.0-beta3

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.
Files changed (81) hide show
  1. package/api/fragments.d.ts +1 -1
  2. package/api/graphql/GiftFragment.graphql.d.ts +0 -1
  3. package/api.js +1 -0
  4. package/api.js.map +1 -0
  5. package/chunks/CartSummaryItem.js +1 -0
  6. package/chunks/CartSummaryItem.js.map +1 -0
  7. package/chunks/OrderCancelForm.js +1 -0
  8. package/chunks/OrderCancelForm.js.map +1 -0
  9. package/chunks/OrderLoaders.js +1 -0
  10. package/chunks/OrderLoaders.js.map +1 -0
  11. package/chunks/ReturnsListContent.js +1 -0
  12. package/chunks/ReturnsListContent.js.map +1 -0
  13. package/chunks/ShippingStatusCard.js +1 -0
  14. package/chunks/ShippingStatusCard.js.map +1 -0
  15. package/chunks/capitalizeFirst.js +1 -0
  16. package/chunks/capitalizeFirst.js.map +1 -0
  17. package/chunks/confirmCancelOrder.js +1 -0
  18. package/chunks/confirmCancelOrder.js.map +1 -0
  19. package/chunks/fetch-graphql.js +1 -0
  20. package/chunks/fetch-graphql.js.map +1 -0
  21. package/chunks/formatDateToLocale.js +1 -0
  22. package/chunks/formatDateToLocale.js.map +1 -0
  23. package/chunks/getAttributesForm.js +1 -0
  24. package/chunks/getAttributesForm.js.map +1 -0
  25. package/chunks/getCustomerOrdersReturn.js +1 -0
  26. package/chunks/getCustomerOrdersReturn.js.map +1 -0
  27. package/chunks/getFormValues.js +1 -0
  28. package/chunks/getFormValues.js.map +1 -0
  29. package/chunks/getGuestOrder.js +1 -0
  30. package/chunks/getGuestOrder.js.map +1 -0
  31. package/chunks/getQueryParam.js +1 -0
  32. package/chunks/getQueryParam.js.map +1 -0
  33. package/chunks/getStoreConfig.js +1 -0
  34. package/chunks/getStoreConfig.js.map +1 -0
  35. package/chunks/initialize.js +1 -0
  36. package/chunks/initialize.js.map +1 -0
  37. package/chunks/network-error.js +1 -0
  38. package/chunks/network-error.js.map +1 -0
  39. package/chunks/redirectTo.js +1 -0
  40. package/chunks/redirectTo.js.map +1 -0
  41. package/chunks/requestGuestOrderCancel.js +1 -0
  42. package/chunks/requestGuestOrderCancel.js.map +1 -0
  43. package/chunks/requestGuestReturn.js +1 -0
  44. package/chunks/requestGuestReturn.js.map +1 -0
  45. package/chunks/returnOrdersHelper.js +1 -0
  46. package/chunks/returnOrdersHelper.js.map +1 -0
  47. package/chunks/setTaxStatus.js +1 -0
  48. package/chunks/setTaxStatus.js.map +1 -0
  49. package/chunks/transform-attributes-form.js +1 -0
  50. package/chunks/transform-attributes-form.js.map +1 -0
  51. package/chunks/useGetStoreConfig.js +1 -0
  52. package/chunks/useGetStoreConfig.js.map +1 -0
  53. package/chunks/useIsMobile.js +1 -0
  54. package/chunks/useIsMobile.js.map +1 -0
  55. package/containers/CreateReturn.js +1 -0
  56. package/containers/CreateReturn.js.map +1 -0
  57. package/containers/CustomerDetails.js +1 -0
  58. package/containers/CustomerDetails.js.map +1 -0
  59. package/containers/OrderCancelForm.js +1 -0
  60. package/containers/OrderCancelForm.js.map +1 -0
  61. package/containers/OrderCostSummary.js +1 -0
  62. package/containers/OrderCostSummary.js.map +1 -0
  63. package/containers/OrderHeader.js +1 -0
  64. package/containers/OrderHeader.js.map +1 -0
  65. package/containers/OrderProductList.js +1 -0
  66. package/containers/OrderProductList.js.map +1 -0
  67. package/containers/OrderReturns.js +1 -0
  68. package/containers/OrderReturns.js.map +1 -0
  69. package/containers/OrderSearch.js +1 -0
  70. package/containers/OrderSearch.js.map +1 -0
  71. package/containers/OrderStatus.js +1 -0
  72. package/containers/OrderStatus.js.map +1 -0
  73. package/containers/ReturnsList.js +1 -0
  74. package/containers/ReturnsList.js.map +1 -0
  75. package/containers/ShippingStatus.js +1 -0
  76. package/containers/ShippingStatus.js.map +1 -0
  77. package/fragments.js +2 -15
  78. package/fragments.js.map +1 -0
  79. package/package.json +1 -1
  80. package/render.js +2 -1
  81. package/render.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomerDetails.js","sources":["../../node_modules/@adobe-commerce/elsie/src/icons/Wallet.svg","../../node_modules/@adobe-commerce/elsie/src/icons/Card.svg","/@dropins/storefront-order/src/components/CustomerDetailsContent/CustomerDetailsContent.tsx","/@dropins/storefront-order/src/configs/defaultAttributePreset.config.ts","/@dropins/storefront-order/src/hooks/containers/useCustomerDetails.tsx","/@dropins/storefront-order/src/containers/CustomerDetails/CustomerDetails.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgWallet = (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: \"M17.93 14.8V18.75H5.97C4.75 18.75 3.75 17.97 3.75 17V6.5M3.75 6.5C3.75 5.53 4.74 4.75 5.97 4.75H15.94V8.25H5.97C4.75 8.25 3.75 7.47 3.75 6.5Z\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M19.35 11.64H14.04V14.81H19.35V11.64Z\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M17.9304 11.64V8.25H15.1504\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\", strokeLinejoin: \"round\" }));\nexport default SvgWallet;\n","import * as React from \"react\";\nconst SvgCard = (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: \"M2.00718 5H22.1507C22.7047 5 23.1579 5.45323 23.1579 6.00718V7.51794C23.1579 7.51794 1.01007 7.58844 1 7.55823V6.00718C1 5.45323 1.45323 5 2.00718 5Z\", stroke: \"currentColor\", strokeWidth: 1 }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M23.1579 9.78409V18.3451C23.1579 18.899 22.7047 19.3523 22.1507 19.3523H2.00718C1.45323 19.3523 1 18.899 1 18.3451V9.78409H23.1579Z\", stroke: \"currentColor\", strokeWidth: 1 }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M3.01465 15.9682H8.40305\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M17.6192 17.5897C18.4535 17.5897 19.1299 16.9133 19.1299 16.0789C19.1299 15.2446 18.4535 14.5682 17.6192 14.5682C16.7848 14.5682 16.1084 15.2446 16.1084 16.0789C16.1084 16.9133 16.7848 17.5897 17.6192 17.5897Z\", stroke: \"currentColor\", strokeWidth: 1 }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M19.8848 17.5897C20.7192 17.5897 21.3956 16.9133 21.3956 16.0789C21.3956 15.2446 20.7192 14.5682 19.8848 14.5682C19.0504 14.5682 18.374 15.2446 18.374 16.0789C18.374 16.9133 19.0504 17.5897 19.8848 17.5897Z\", stroke: \"currentColor\", strokeWidth: 1 }));\nexport default SvgCard;\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 } from 'preact';\nimport { classes, Slot } from '@adobe-commerce/elsie/lib';\nimport {\n Card,\n Header,\n Icon,\n IconNode,\n IconType,\n Price,\n} from '@adobe-commerce/elsie/components';\nimport { Text } from '@adobe-commerce/elsie/i18n';\nimport {\n CustomerDetailsContentProps,\n NormalizeAddressProps,\n} from '@/order/types';\nimport { DetailsSkeleton } from '@/order/components';\nimport { Card as CreditCard, Wallet } from '@adobe-commerce/elsie/icons';\nimport { useMemo } from 'preact/hooks';\nimport { formatReturnStatus } from '@/order/lib/returnOrdersHelper';\nimport { formatDateToLocale } from '@/order/lib/formatDateToLocale';\nimport '@/order/components/CustomerDetailsContent/CustomerDetailsContent.css';\n\nconst renderAddressData = (\n normalizeAddress: {\n billingAddress: NormalizeAddressProps[][];\n shippingAddress: NormalizeAddressProps[][];\n },\n type: 'shippingAddress' | 'billingAddress'\n) => {\n const getFieldContent = (field: any) => {\n const value = Array.isArray(field.value)\n ? field.value.join(' ')\n : field?.value;\n return field.label ? `${field.label}: ${value}` : value;\n };\n\n return normalizeAddress[type]?.map((field: any, fieldIndex: number) => {\n return <p key={`${field.value}${fieldIndex}`}>{getFieldContent(field)}</p>;\n });\n};\n\nconst extractPaymentMethodsData = (\n paymentMethods: { code: string; name: string }[]\n) => {\n const hasPaymentMethod = paymentMethods && paymentMethods.length > 0;\n const selectedPaymentMethod = hasPaymentMethod ? paymentMethods[0]?.name : '';\n const selectedPaymentMethodCode = hasPaymentMethod\n ? paymentMethods[0]?.code\n : '';\n const hasToDisplayPaymentMethod =\n hasPaymentMethod && selectedPaymentMethod !== '';\n return {\n selectedPaymentMethod,\n selectedPaymentMethodCode,\n hasToDisplayPaymentMethod,\n };\n};\n\nexport const CustomerDetailsContent: FunctionComponent<\n CustomerDetailsContentProps\n> = ({\n loading,\n order,\n withHeader = true,\n title,\n paymentIconsMap = {},\n normalizeAddress,\n translations,\n slots,\n}) => {\n const isReturnPage = !!order?.returnNumber;\n const isVirtual = !!order?.isVirtual;\n const orderReturn = order?.returns?.[0];\n\n const iconsList: Record<string, IconType | IconNode> = useMemo(\n () => ({\n checkmo: Wallet,\n card: CreditCard,\n ...paymentIconsMap,\n }),\n [paymentIconsMap]\n );\n\n if (!order || loading) return <DetailsSkeleton />;\n\n const emailAddress = order?.email ?? '';\n const shippingMethod = order?.shipping?.code;\n const shippingCost = order?.shipping?.amount;\n const shippingCurrency = order?.shipping?.currency;\n const paymentMethods = order?.payments;\n const {\n selectedPaymentMethod,\n selectedPaymentMethodCode,\n hasToDisplayPaymentMethod,\n } = extractPaymentMethodsData(paymentMethods);\n const paymentMethodIconSource = iconsList[selectedPaymentMethodCode];\n const shippingAddress =\n renderAddressData(normalizeAddress, 'shippingAddress') ?? [];\n const billingAddress =\n renderAddressData(normalizeAddress, 'billingAddress') ?? [];\n\n const contactDetails = (\n <div className=\"order-customer-details-content__container-email\">\n <div className={'order-customer-details-content__container-title'}>\n {translations?.emailTitle}\n </div>\n <p>{emailAddress}</p>\n </div>\n );\n\n const returnDetails = isReturnPage ? (\n <div\n className=\"order-customer-details-content__container-return-information\"\n data-testid=\"returnDetailsBlock\"\n >\n <div className={'order-customer-details-content__container-title'}>\n {translations?.returnInformationTitle}\n </div>\n <div className=\"order-customer-details-content__container-description\">\n <Slot\n data-testid=\"OrderReturnInformation\"\n name=\"OrderReturnInformation\"\n slot={slots?.OrderReturnInformation}\n context={orderReturn}\n >\n <>\n <p>\n {translations.createdReturnAt}\n <span>{formatDateToLocale(orderReturn?.createdReturnAt!)}</span>\n </p>\n <p>\n {translations.returnStatusLabel}\n <Text\n id={`Order.CustomerDetails.returnStatus.${formatReturnStatus(\n orderReturn?.returnStatus!\n )}`}\n />\n </p>\n <p>\n {translations.orderNumberLabel}\n <span>{orderReturn?.orderNumber}</span>\n </p>\n </>\n </Slot>\n </div>\n </div>\n ) : null;\n\n const shippingAddressDetails =\n !isVirtual && shippingAddress.length ? (\n <div className=\"order-customer-details-content__container-shipping_address\">\n <div className={'order-customer-details-content__container-title'}>\n {translations.shippingAddressTitle}\n </div>\n <div className=\"order-customer-details-content__container-description\">\n {shippingAddress}\n </div>\n </div>\n ) : null;\n\n const billingAddressDetails = billingAddress.length ? (\n <div\n className={classes([\n 'order-customer-details-content__container-billing_address',\n [\n 'order-customer-details-content__container-billing_address--fullwidth',\n !shippingAddress.length || isVirtual,\n ],\n ])}\n >\n <div className={'order-customer-details-content__container-title'}>\n {translations.billingAddressTitle}\n </div>\n <div className=\"order-customer-details-content__container-description\">\n {billingAddress}\n </div>\n </div>\n ) : null;\n\n const paymentMethodDetails = hasToDisplayPaymentMethod ? (\n <div\n className={classes([\n 'order-customer-details-content__container-payment_methods',\n [\n 'order-customer-details-content__container-payment_methods--fullwidth',\n !shippingMethod,\n ],\n ])}\n >\n <div className={'order-customer-details-content__container-title'}>\n {translations?.paymentMethodsTitle}\n </div>\n <p\n data-testid=\"payment_methods_description\"\n className={classes([\n [\n 'order-customer-details-content__container-payment_methods--icon',\n !!paymentMethodIconSource,\n ],\n ])}\n >\n <Slot\n data-testid=\"PaymentMethodIcon\"\n name=\"PaymentMethodIcon\"\n slot={slots?.PaymentMethodIcon}\n context={{ selectedPaymentMethodCode }}\n >\n {paymentMethodIconSource ? (\n <Icon source={paymentMethodIconSource} />\n ) : null}\n </Slot>\n {selectedPaymentMethod}\n </p>\n </div>\n ) : null;\n\n const shippingMethodDetails = shippingMethod ? (\n <div className=\"order-customer-details-content__container-shipping_methods\">\n <div className={'order-customer-details-content__container-title'}>\n {translations?.shippingMethodsTitle}\n </div>\n {shippingCost ? (\n <p data-testid=\"shipping_methods_price\">\n <Price amount={shippingCost} currency={shippingCurrency} />{' '}\n {shippingMethod}\n </p>\n ) : (\n <p data-testid=\"shipping_methods_placeholder\">\n {translations?.freeShipping}\n </p>\n )}\n </div>\n ) : null;\n\n const pageSpecificDetails = isReturnPage ? (\n returnDetails\n ) : (\n <>\n {billingAddressDetails}\n {shippingMethodDetails}\n {paymentMethodDetails}\n </>\n );\n\n return (\n <Card\n data-testid=\"order-details\"\n variant={'secondary'}\n className={classes(['order-customer-details-content'])}\n >\n {withHeader ? <Header title={title ?? translations?.headerText} /> : null}\n\n <div\n className={classes([\n 'order-customer-details-content__container',\n [\n 'order-customer-details-content__container--no-margin',\n shippingAddress.length || billingAddress.length,\n ],\n ])}\n >\n {contactDetails}\n {shippingAddressDetails}\n {pageSpecificDetails}\n </div>\n </Card>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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\nexport const defaultAttributePreset = [\n 'firstname',\n 'lastname',\n 'city',\n 'company',\n 'country_code',\n 'region',\n 'region_code',\n 'region_id',\n 'telephone',\n 'id',\n 'vat_id',\n 'postcode',\n 'street',\n 'street_2',\n 'default_shipping',\n 'default_billing',\n];\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { getAttributesForm } from '@/order/api';\nimport { defaultAttributePreset } from '@/order/configs/defaultAttributePreset.config';\nimport { OrderDataModel } from '@/order/data/models';\nimport { convertToCamelCase } from '@/order/lib/convertCase';\nimport {\n KeysSortOrderProps,\n NormalizeAddressProps,\n UseCustomerDetails,\n} from '@/order/types';\nimport { events } from '@adobe-commerce/event-bus';\nimport { useState, useEffect, useMemo, useCallback } from 'preact/hooks';\n\nexport const useCustomerDetails = ({ orderData }: UseCustomerDetails) => {\n const [loading, setLoading] = useState<boolean>(true);\n const [order, setOrder] = useState(orderData);\n const [keysSortOrder, setKeysSortOrder] = useState<KeysSortOrderProps[] | []>(\n []\n );\n\n useEffect(() => {\n const event = events.on(\n 'order/data',\n (order: OrderDataModel) => {\n setOrder(order);\n },\n { eager: true }\n );\n\n return () => {\n event?.off();\n };\n }, []);\n\n useEffect(() => {\n getAttributesForm('shortRequest')\n .then((attributesFormResponse) => {\n if (attributesFormResponse) {\n const result: KeysSortOrderProps[] = attributesFormResponse.map(\n ({ name, orderNumber, label }) => ({\n name: convertToCamelCase(name as string),\n orderNumber,\n label: !defaultAttributePreset.includes(name as string)\n ? label\n : null,\n })\n );\n\n setKeysSortOrder(result);\n }\n })\n .finally(() => {\n setLoading(false);\n });\n }, []);\n\n const getNormalizeAddress = useCallback(\n (\n type: 'billingAddress' | 'shippingAddress'\n ): NormalizeAddressProps[] | [] => {\n if (!keysSortOrder.length || !order || !order[type]) return [];\n\n const address: Record<string, unknown> = order[type]\n ? Object.fromEntries(\n Object.entries(order[type] as Record<string, unknown>).map(\n ([key, value]) => [key.toLowerCase(), value]\n )\n )\n : {};\n\n // @ts-ignore\n return keysSortOrder\n .filter(({ name }) => address[name.toLowerCase()])\n .map((item) => {\n return {\n name: item.name,\n orderNumber: item.orderNumber,\n value: address[item.name.toLowerCase()],\n label: item.label,\n };\n });\n },\n [keysSortOrder, order]\n );\n\n const normalizeAddress = useMemo(\n () => ({\n billingAddress: getNormalizeAddress('billingAddress'),\n shippingAddress: getNormalizeAddress('shippingAddress'),\n }),\n [getNormalizeAddress]\n );\n\n return { order, normalizeAddress, loading };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { Container, classes } from '@adobe-commerce/elsie/lib';\nimport { useCustomerDetails } from '@/order/hooks';\nimport { CustomerDetailsContent } from '@/order/components';\nimport { CustomerDetailsProps, NormalizeAddressProps } from '@/order/types';\nimport { useText } from '@adobe-commerce/elsie/i18n';\n\nexport const CustomerDetails: Container<CustomerDetailsProps> = ({\n paymentIconsMap,\n orderData,\n title,\n className,\n slots,\n}) => {\n const translations = useText({\n emailTitle: 'Order.CustomerDetails.email.title',\n shippingAddressTitle: 'Order.CustomerDetails.shippingAddress.title',\n shippingMethodsTitle: 'Order.CustomerDetails.shippingMethods.title',\n billingAddressTitle: 'Order.CustomerDetails.billingAddress.title',\n paymentMethodsTitle: 'Order.CustomerDetails.paymentMethods.title',\n returnInformationTitle: 'Order.CustomerDetails.returnInformation.title',\n headerText: 'Order.CustomerDetails.headerText',\n freeShipping: 'Order.CustomerDetails.freeShipping',\n createdReturnAt: 'Order.CustomerDetails.orderReturnLabels.createdReturnAt',\n orderNumberLabel:\n 'Order.CustomerDetails.orderReturnLabels.orderNumberLabel',\n returnStatusLabel:\n 'Order.CustomerDetails.orderReturnLabels.returnStatusLabel',\n });\n\n const { order, normalizeAddress, loading } = useCustomerDetails({\n orderData,\n });\n\n return (\n <div className={classes(['order-customer-details', className])}>\n <CustomerDetailsContent\n slots={slots}\n loading={loading}\n order={order}\n title={title}\n paymentIconsMap={paymentIconsMap}\n normalizeAddress={\n normalizeAddress as {\n billingAddress: [] | NormalizeAddressProps[][];\n shippingAddress: [] | NormalizeAddressProps[][];\n }\n }\n translations={translations}\n />\n </div>\n );\n};\n"],"names":["SvgWallet","props","React","SvgCard","renderAddressData","normalizeAddress","type","getFieldContent","field","value","_a","fieldIndex","jsx","extractPaymentMethodsData","paymentMethods","hasPaymentMethod","selectedPaymentMethod","selectedPaymentMethodCode","_b","CustomerDetailsContent","loading","order","withHeader","title","paymentIconsMap","translations","slots","isReturnPage","isVirtual","orderReturn","iconsList","useMemo","Wallet","CreditCard","DetailsSkeleton","emailAddress","shippingMethod","shippingCost","_c","shippingCurrency","_d","hasToDisplayPaymentMethod","paymentMethodIconSource","shippingAddress","billingAddress","contactDetails","jsxs","returnDetails","Slot","Fragment","formatDateToLocale","Text","formatReturnStatus","shippingAddressDetails","billingAddressDetails","classes","paymentMethodDetails","Icon","shippingMethodDetails","Price","pageSpecificDetails","Card","Header","defaultAttributePreset","useCustomerDetails","orderData","setLoading","useState","setOrder","keysSortOrder","setKeysSortOrder","useEffect","event","events","getAttributesForm","attributesFormResponse","result","name","orderNumber","label","convertToCamelCase","getNormalizeAddress","useCallback","address","key","item","CustomerDetails","className","useText"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -1,3 +1,4 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
3
  import{O as C,O as F}from"../chunks/OrderCancelForm.js";import"@dropins/tools/preact-jsx-runtime.js";import"@dropins/tools/components.js";import"../chunks/ShippingStatusCard.js";import"@dropins/tools/preact-hooks.js";import"@dropins/tools/i18n.js";import"@dropins/tools/preact-compat.js";import"@dropins/tools/lib.js";import"@dropins/tools/preact.js";import"@dropins/tools/event-bus.js";import"../chunks/requestGuestOrderCancel.js";import"../fragments.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";import"../chunks/initialize.js";import"../chunks/network-error.js";export{C as OrderCancelForm,F as default};
4
+ //# sourceMappingURL=OrderCancelForm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrderCancelForm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,3 +1,4 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsx as t,jsxs as r,Fragment as _}from"@dropins/tools/preact-jsx-runtime.js";import{classes as b}from"@dropins/tools/lib.js";import{useState as v,useEffect as E}from"@dropins/tools/preact-hooks.js";import"@dropins/tools/preact.js";import{events as Z}from"@dropins/tools/event-bus.js";import{s as g}from"../chunks/setTaxStatus.js";import{Price as m,Icon as H,Accordion as I,AccordionSection as G,Card as W,Header as k}from"@dropins/tools/components.js";import{u as z}from"../chunks/useGetStoreConfig.js";import"../chunks/ShippingStatusCard.js";import*as T from"@dropins/tools/preact-compat.js";import{O as D}from"../chunks/OrderLoaders.js";import{useText as F,Text as A}from"@dropins/tools/i18n.js";import"../chunks/getStoreConfig.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";const j=c=>T.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},T.createElement("path",{d:"M7.74512 9.87701L12.0001 14.132L16.2551 9.87701",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"square",strokeLinejoin:"round"})),B=c=>T.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},T.createElement("path",{d:"M7.74512 14.132L12.0001 9.87701L16.2551 14.132",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"square",strokeLinejoin:"round"})),q=c=>T.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},T.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M22 6.25H22.75C22.75 5.83579 22.4142 5.5 22 5.5V6.25ZM22 9.27L22.2514 9.97663C22.5503 9.87029 22.75 9.58731 22.75 9.27H22ZM20.26 12.92L19.5534 13.1714L19.5539 13.1728L20.26 12.92ZM22 14.66H22.75C22.75 14.3433 22.551 14.0607 22.2528 13.9539L22 14.66ZM22 17.68V18.43C22.4142 18.43 22.75 18.0942 22.75 17.68H22ZM2 17.68H1.25C1.25 18.0942 1.58579 18.43 2 18.43V17.68ZM2 14.66L1.74865 13.9534C1.44969 14.0597 1.25 14.3427 1.25 14.66H2ZM3.74 11.01L4.44663 10.7586L4.44611 10.7572L3.74 11.01ZM2 9.27H1.25C1.25 9.58675 1.44899 9.86934 1.7472 9.97611L2 9.27ZM2 6.25V5.5C1.58579 5.5 1.25 5.83579 1.25 6.25H2ZM21.25 6.25V9.27H22.75V6.25H21.25ZM21.7486 8.56337C19.8706 9.23141 18.8838 11.2889 19.5534 13.1714L20.9666 12.6686C20.5762 11.5711 21.1494 10.3686 22.2514 9.97663L21.7486 8.56337ZM19.5539 13.1728C19.9195 14.1941 20.7259 15.0005 21.7472 15.3661L22.2528 13.9539C21.6541 13.7395 21.1805 13.2659 20.9661 12.6672L19.5539 13.1728ZM21.25 14.66V17.68H22.75V14.66H21.25ZM22 16.93H2V18.43H22V16.93ZM2.75 17.68V14.66H1.25V17.68H2.75ZM2.25135 15.3666C4.12941 14.6986 5.11623 12.6411 4.44663 10.7586L3.03337 11.2614C3.42377 12.3589 2.85059 13.5614 1.74865 13.9534L2.25135 15.3666ZM4.44611 10.7572C4.08045 9.73588 3.27412 8.92955 2.2528 8.56389L1.7472 9.97611C2.34588 10.1905 2.81955 10.6641 3.03389 11.2628L4.44611 10.7572ZM2.75 9.27V6.25H1.25V9.27H2.75ZM2 7H22V5.5H2V7ZM7.31 6.74V18.17H8.81V6.74H7.31ZM17.0997 8.39967L11.0397 14.4597L12.1003 15.5203L18.1603 9.46033L17.0997 8.39967ZM12.57 9.67C12.57 9.87231 12.4159 10 12.27 10V11.5C13.2839 11.5 14.07 10.6606 14.07 9.67H12.57ZM12.27 10C12.1241 10 11.97 9.87231 11.97 9.67H10.47C10.47 10.6606 11.2561 11.5 12.27 11.5V10ZM11.97 9.67C11.97 9.46769 12.1241 9.34 12.27 9.34V7.84C11.2561 7.84 10.47 8.67938 10.47 9.67H11.97ZM12.27 9.34C12.4159 9.34 12.57 9.46769 12.57 9.67H14.07C14.07 8.67938 13.2839 7.84 12.27 7.84V9.34ZM17.22 14.32C17.22 14.5223 17.0659 14.65 16.92 14.65V16.15C17.9339 16.15 18.72 15.3106 18.72 14.32H17.22ZM16.92 14.65C16.7741 14.65 16.62 14.5223 16.62 14.32H15.12C15.12 15.3106 15.9061 16.15 16.92 16.15V14.65ZM16.62 14.32C16.62 14.1177 16.7741 13.99 16.92 13.99V12.49C15.9061 12.49 15.12 13.3294 15.12 14.32H16.62ZM16.92 13.99C17.0659 13.99 17.22 14.1177 17.22 14.32H18.72C18.72 13.3294 17.9339 12.49 16.92 12.49V13.99Z",fill:"currentColor"})),$=c=>T.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...c},T.createElement("path",{d:"M22 12.8571V6.75774C22 6.33761 21.5848 6 21.0884 6H2.91155C2.40614 6 2 6.34511 2 6.75774V12.8571M22 12.8571H2M22 12.8571V17.0049C22 17.5468 21.5939 18 21.0884 18H2.91155C2.41516 18 2 17.5567 2 17.0049V12.8571M5.18182 16.0886L8.64545 12.8229M8.64545 12.8229L12.1087 16.0886M8.64545 12.8229C8.64545 12.8229 8.09964 10.4743 7.56328 9.96857C7.02692 9.46286 6.15419 9.46286 5.61783 9.96857C5.08146 10.4743 5.08146 11.2971 5.61783 11.8029C6.15419 12.3086 8.64545 12.8229 8.64545 12.8229ZM8.64545 12.8229C8.64545 12.8229 11.1542 12.2914 11.6905 11.7857C12.2269 11.28 12.2269 10.4571 11.6905 9.95141C11.1542 9.4457 10.2814 9.4457 9.74507 9.95141C9.2087 10.4571 8.64545 12.8229 8.64545 12.8229ZM8.64506 17.2886V6.70286",stroke:"currentColor",strokeWidth:1,strokeLinecap:"round"})),R=({orderData:c,config:a})=>{const[e,n]=v(!0),[i,s]=v(c),[l,o]=v(null);return E(()=>{if(a){const{shoppingOrderDisplayPrice:u,shoppingOrdersDisplayShipping:d,shoppingOrdersDisplaySubtotal:p,...x}=a;o(h=>({...h,...x,shoppingOrderDisplayPrice:g(u),shoppingOrdersDisplayShipping:g(d),shoppingOrdersDisplaySubtotal:g(p),salesPrintedCard:g(a.salesPrintedCard),salesGiftWrapping:g(a.salesGiftWrapping)})),n(!1)}},[a]),E(()=>{const u=Z.on("order/data",d=>{s(d)},{eager:!0});return()=>{u==null||u.off()}},[]),{loading:e,storeConfig:l,order:i}},xt=({withHeader:c,orderData:a,children:e,className:n,...i})=>{const s=z(),{loading:l,storeConfig:o,order:u}=R({orderData:a,config:s}),d=F({subtotal:"Order.OrderCostSummary.subtotal.title",shipping:"Order.OrderCostSummary.shipping.title",freeShipping:"Order.OrderCostSummary.shipping.freeShipping",tax:"Order.OrderCostSummary.tax.title",incl:"Order.OrderCostSummary.tax.incl",excl:"Order.OrderCostSummary.tax.excl",discount:"Order.OrderCostSummary.discount.title",discountSubtitle:"Order.OrderCostSummary.discount.subtitle",total:"Order.OrderCostSummary.total.title",totalFree:"Order.OrderCostSummary.totalFree",accordionTitle:"Order.OrderCostSummary.tax.accordionTitle",accordionTotalTax:"Order.OrderCostSummary.tax.accordionTotalTax",totalExcludingTaxes:"Order.OrderCostSummary.tax.totalExcludingTaxes",headerText:"Order.OrderCostSummary.headerText",printedCardTitle:"Order.OrderCostSummary.giftOptionsTax.printedCard.title",printedCardTitleInclTax:"Order.OrderCostSummary.giftOptionsTax.printedCard.inclTax",printedCardTitleExclTax:"Order.OrderCostSummary.giftOptionsTax.printedCard.exclTax",itemGiftWrappingTitle:"Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.title",itemGiftWrappingInclTax:"Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.inclTax",itemGiftWrappingExclTax:"Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.exclTax",orderGiftWrappingTitle:"Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.title",orderGiftWrappingInclTax:"Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.inclTax",orderGiftWrappingExclTax:"Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.exclTax"});return t("div",{...i,className:b(["order-cost-summary",n]),children:t(tt,{order:u,withHeader:c,loading:l,storeConfig:o,translations:d})})},M=({salesGiftWrapping:c,giftWrappingPrice:a,giftWrappingPriceInclTax:e,giftWrappingTitle:n,giftWrappingExclTaxText:i,giftWrappingInclTaxText:s})=>{const l=c==null?void 0:c.taxIncluded,o=c==null?void 0:c.taxExcluded,u=l&&!o,d=o&&!l,p=o&&l;if(a.value===0||e.value===0)return null;const x=u?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:s}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:e.currency,amount:e.value})]}),t("div",{className:"order-cost-summary-content__description--subheader",children:t("span",{children:s})})]}):null,h=d?r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:n}),t("span",{children:t(m,{weight:"normal",currency:a.currency,amount:a.value})})]}):null,y=p?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:n}),t("span",{children:t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:e.currency,amount:e.value})})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[t(m,{currency:a.currency,amount:a.value,size:"small",weight:"bold"})," ",t("span",{children:i})]})]}):null;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--gift-wrapping",children:[x,h,y]})},U=({translations:c,order:a,salesPrintedCard:e})=>{const n=a==null?void 0:a.totalGiftOptions,{printedCard:i,printedCardInclTax:s}=n,l=e==null?void 0:e.taxIncluded,o=e==null?void 0:e.taxExcluded;if(i.value===0||s.value===0)return null;const u=l&&!o?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.printedCardTitle}),t("span",{children:t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:s.currency,amount:s.value})})]}),t("div",{className:"order-cost-summary-content__description--subheader",children:t("span",{children:t("span",{children:c.printedCardTitleInclTax})})})]}):null,d=o&&!l?r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.printedCardTitle}),t("span",{children:t(m,{weight:"normal",currency:i.currency,amount:i.value})})]}):null,p=o&&l?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.printedCardTitle}),t("span",{children:t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:s.currency,amount:s.value})})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[t(m,{currency:i.currency,amount:i.value,size:"small",weight:"bold"})," ",t("span",{children:c.printedCardTitleExclTax})]})]}):null;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--printed-card",children:[u,d,p]})},J=({translations:c,order:a,subtotalInclTax:e,subtotalExclTax:n,shoppingOrdersDisplaySubtotal:i})=>{var p,x,h,y;const s=i.taxIncluded,l=i.taxExcluded,o=s&&!l?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.subtotal}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:(p=a==null?void 0:a.subtotalInclTax)==null?void 0:p.currency,amount:e})]}),t("div",{className:"order-cost-summary-content__description--subheader",children:t("span",{children:c.incl})})]}):null,u=l&&!s?r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.subtotal}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:(x=a==null?void 0:a.subtotalExclTax)==null?void 0:x.currency,amount:n})]}):null,d=l&&s?r(_,{children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.subtotal}),t(m,{className:"order-cost-summary-content__description--normal-price",weight:"normal",currency:(h=a==null?void 0:a.subtotalInclTax)==null?void 0:h.currency,amount:e})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[t(m,{currency:(y=a==null?void 0:a.subtotalExclTax)==null?void 0:y.currency,amount:n,size:"small",weight:"bold"})," ",t("span",{children:c.excl})]})]}):null;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--subtotal",children:[o,u,d]})},K=({translations:c,shoppingOrdersDisplayShipping:a,order:e,totalShipping:n})=>{var i,s,l,o;return e!=null&&e.isVirtual?null:r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--shipping",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.shipping}),(i=e==null?void 0:e.totalShipping)!=null&&i.value?t(m,{weight:"normal",currency:(s=e==null?void 0:e.totalShipping)==null?void 0:s.currency,amount:n}):t("span",{children:c.freeShipping})]}),r("div",{className:"order-cost-summary-content__description--subheader",children:[a.taxIncluded&&a.taxExcluded?r(_,{children:[t(m,{weight:"normal",currency:(l=e==null?void 0:e.totalShipping)==null?void 0:l.currency,amount:(o=e==null?void 0:e.totalShipping)==null?void 0:o.value,size:"small"}),r("span",{children:[" ",c.excl]})]}):null,a.taxIncluded&&!a.taxExcluded?t("span",{children:c.incl}):null]})]})},Q=({translations:c,order:a})=>{var s,l;const e=a==null?void 0:a.coupons,n=a==null?void 0:a.discounts,i=(n==null?void 0:n.reduce((o,u)=>o+(u.amount.value??0),0))||0;return!((s=a==null?void 0:a.discounts)!=null&&s.length)&&i===0?null:r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--discount",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.discount}),t("span",{children:t(m,{weight:"normal",sale:!0,currency:(l=n[0])==null?void 0:l.amount.currency,amount:-i})})]}),e.map(o=>t("div",{className:"order-cost-summary-content__description--subheader",children:r("span",{children:[t(H,{source:q,size:"16",className:"order-cost-summary-content__description--coupon-icon"}),t("span",{children:o.code})]})},o.code))]})},X=({translations:c,shoppingOrdersDisplaySubtotal:a,order:e})=>{var i,s,l,o,u;const n=((i=e==null?void 0:e.grandTotal)==null?void 0:i.value)===0;return r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--total",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.total}),n?t("span",{className:"order-cost-summary-content__description--total-free",children:c.totalFree}):t(m,{currency:(s=e==null?void 0:e.grandTotal)==null?void 0:s.currency,amount:(l=e==null?void 0:e.grandTotal)==null?void 0:l.value,weight:"bold",size:"medium"})]}),a.taxExcluded&&a.taxIncluded&&!n?r("div",{className:"order-cost-summary-content__description--subheader",children:[t("span",{children:c.totalExcludingTaxes}),t(m,{currency:(o=e==null?void 0:e.grandTotalExclTax)==null?void 0:o.currency,amount:(u=e==null?void 0:e.grandTotalExclTax)==null?void 0:u.value,weight:"normal",size:"small"})]}):null]})},Y=({translations:c,renderTaxAccordion:a,totalAccordionTaxValue:e,order:n})=>{var l,o,u;const[i,s]=v(!1);return a?t(I,{"data-testid":"tax-accordionTaxes",className:"order-cost-summary-content__accordion",iconOpen:j,iconClose:B,children:r(G,{onStateChange:s,title:c.accordionTitle,secondaryText:t(_,{children:i?null:t(m,{weight:"normal",amount:e,currency:(o=n==null?void 0:n.totalTax)==null?void 0:o.currency})}),renderContentWhenClosed:!1,children:[(u=n==null?void 0:n.taxes)==null?void 0:u.map((d,p)=>{var x,h,y;return r("div",{className:"order-cost-summary-content__accordion-row",children:[t("p",{children:d==null?void 0:d.title}),t("p",{children:t(m,{weight:"normal",amount:(x=d==null?void 0:d.amount)==null?void 0:x.value,currency:(h=d==null?void 0:d.amount)==null?void 0:h.currency})})]},`${(y=d==null?void 0:d.amount)==null?void 0:y.value}${p}`)}),r("div",{className:"order-cost-summary-content__accordion-row order-cost-summary-content__accordion-total",children:[t("p",{children:c.accordionTotalTax}),t("p",{children:t(m,{weight:"normal",amount:e,currency:n.totalTax.currency,size:"medium"})})]})]})}):t("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--tax",children:r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:c.tax}),t(m,{currency:(l=n==null?void 0:n.totalTax)==null?void 0:l.currency,amount:n==null?void 0:n.totalTax.value,weight:"normal",size:"small"})]})})},P=({totalGiftCardValue:c,totalGiftCardCurrency:a,order:e})=>{const n=e==null?void 0:e.appliedGiftCards;return c?r("div",{className:"order-cost-summary-content__description order-cost-summary-content__description--discount",children:[r("div",{className:"order-cost-summary-content__description--header",children:[t("span",{children:t(A,{id:"Order.OrderCostSummary.appliedGiftCards.label",plural:n==null?void 0:n.length,fields:{count:n==null?void 0:n.length}})}),t("span",{children:t(m,{weight:"normal",sale:!0,currency:a,amount:-c})})]}),n.map(i=>t("div",{className:"order-cost-summary-content__description--subheader",children:r("span",{children:[t(H,{source:$,size:"16",className:"order-cost-summary-content__description--giftcard-icon"}),t("span",{children:i.code})]})},i.code))]}):null},tt=({translations:c,loading:a,storeConfig:e,order:n,withHeader:i=!0})=>{var h,y,C,w,S,f,N;if(a||!n)return t(D,{});const s=((h=n==null?void 0:n.totalGiftCard)==null?void 0:h.value)??0,l=((y=n.totalGiftCard)==null?void 0:y.currency)??"",o=((C=n.subtotalInclTax)==null?void 0:C.value)??0,u=((w=n.subtotalExclTax)==null?void 0:w.value)??0,d=((S=n.totalShipping)==null?void 0:S.value)??0,p=!!((f=n==null?void 0:n.taxes)!=null&&f.length)&&(e==null?void 0:e.shoppingOrdersDisplayFullSummary),x=p?(N=n==null?void 0:n.taxes)==null?void 0:N.reduce((L,O)=>{var V;return+((V=O==null?void 0:O.amount)==null?void 0:V.value)+L},0):0;return r(W,{variant:"secondary",className:b(["order-cost-summary-content"]),children:[i?t(k,{title:c.headerText}):null,r("div",{className:"order-cost-summary-content__wrapper",children:[t(J,{translations:c,order:n,subtotalInclTax:o,subtotalExclTax:u,shoppingOrdersDisplaySubtotal:e==null?void 0:e.shoppingOrdersDisplaySubtotal}),t(K,{translations:c,order:n,totalShipping:d,shoppingOrdersDisplayShipping:e==null?void 0:e.shoppingOrdersDisplayShipping}),t(U,{order:n,translations:c,salesPrintedCard:e==null?void 0:e.salesPrintedCard}),t(M,{salesGiftWrapping:e==null?void 0:e.salesGiftWrapping,giftWrappingPrice:n.totalGiftOptions.giftWrappingForItems,giftWrappingPriceInclTax:n.totalGiftOptions.giftWrappingForItemsInclTax,giftWrappingTitle:c.itemGiftWrappingTitle,giftWrappingExclTaxText:c.itemGiftWrappingExclTax,giftWrappingInclTaxText:c.itemGiftWrappingInclTax}),t(M,{salesGiftWrapping:e==null?void 0:e.salesGiftWrapping,giftWrappingPrice:n.totalGiftOptions.giftWrappingForOrder,giftWrappingPriceInclTax:n.totalGiftOptions.giftWrappingForOrderInclTax,giftWrappingTitle:c.orderGiftWrappingTitle,giftWrappingExclTaxText:c.orderGiftWrappingExclTax,giftWrappingInclTaxText:c.orderGiftWrappingInclTax}),t(Q,{translations:c,order:n}),t(P,{order:n,totalGiftCardValue:s,totalGiftCardCurrency:l}),t(Y,{order:n,translations:c,renderTaxAccordion:p,totalAccordionTaxValue:x}),t(X,{translations:c,shoppingOrdersDisplaySubtotal:e==null?void 0:e.shoppingOrdersDisplaySubtotal,order:n})]})]})};export{xt as OrderCostSummary,xt as default};
4
+ //# sourceMappingURL=OrderCostSummary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrderCostSummary.js","sources":["../../node_modules/@adobe-commerce/elsie/src/icons/ChevronDown.svg","../../node_modules/@adobe-commerce/elsie/src/icons/ChevronUp.svg","../../node_modules/@adobe-commerce/elsie/src/icons/Coupon.svg","../../node_modules/@adobe-commerce/elsie/src/icons/GiftCard.svg","/@dropins/storefront-order/src/hooks/containers/useOrderCostSummary.tsx","/@dropins/storefront-order/src/containers/OrderCostSummary/OrderCostSummary.tsx","/@dropins/storefront-order/src/components/OrderCostSummaryContent/Blocks/GiftWrapping.tsx","/@dropins/storefront-order/src/components/OrderCostSummaryContent/Blocks/PrintedCard.tsx","/@dropins/storefront-order/src/components/OrderCostSummaryContent/Blocks/Subtotal.tsx","/@dropins/storefront-order/src/components/OrderCostSummaryContent/Blocks/Shipping.tsx","/@dropins/storefront-order/src/components/OrderCostSummaryContent/Blocks/Discounts.tsx","/@dropins/storefront-order/src/components/OrderCostSummaryContent/Blocks/Total.tsx","/@dropins/storefront-order/src/components/OrderCostSummaryContent/Blocks/Tax.tsx","/@dropins/storefront-order/src/components/OrderCostSummaryContent/Blocks/GiftCards.tsx","/@dropins/storefront-order/src/components/OrderCostSummaryContent/OrderCostSummaryContent.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgChevronDown = (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\", { d: \"M7.74512 9.87701L12.0001 14.132L16.2551 9.87701\", stroke: \"currentColor\", strokeWidth: 1.5, strokeLinecap: \"square\", strokeLinejoin: \"round\" }));\nexport default SvgChevronDown;\n","import * as React from \"react\";\nconst SvgChevronUp = (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\", { d: \"M7.74512 14.132L12.0001 9.87701L16.2551 14.132\", stroke: \"currentColor\", strokeWidth: 1.5, strokeLinecap: \"square\", strokeLinejoin: \"round\" }));\nexport default SvgChevronUp;\n","import * as React from \"react\";\nconst SvgCoupon = (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: \"M22 6.25H22.75C22.75 5.83579 22.4142 5.5 22 5.5V6.25ZM22 9.27L22.2514 9.97663C22.5503 9.87029 22.75 9.58731 22.75 9.27H22ZM20.26 12.92L19.5534 13.1714L19.5539 13.1728L20.26 12.92ZM22 14.66H22.75C22.75 14.3433 22.551 14.0607 22.2528 13.9539L22 14.66ZM22 17.68V18.43C22.4142 18.43 22.75 18.0942 22.75 17.68H22ZM2 17.68H1.25C1.25 18.0942 1.58579 18.43 2 18.43V17.68ZM2 14.66L1.74865 13.9534C1.44969 14.0597 1.25 14.3427 1.25 14.66H2ZM3.74 11.01L4.44663 10.7586L4.44611 10.7572L3.74 11.01ZM2 9.27H1.25C1.25 9.58675 1.44899 9.86934 1.7472 9.97611L2 9.27ZM2 6.25V5.5C1.58579 5.5 1.25 5.83579 1.25 6.25H2ZM21.25 6.25V9.27H22.75V6.25H21.25ZM21.7486 8.56337C19.8706 9.23141 18.8838 11.2889 19.5534 13.1714L20.9666 12.6686C20.5762 11.5711 21.1494 10.3686 22.2514 9.97663L21.7486 8.56337ZM19.5539 13.1728C19.9195 14.1941 20.7259 15.0005 21.7472 15.3661L22.2528 13.9539C21.6541 13.7395 21.1805 13.2659 20.9661 12.6672L19.5539 13.1728ZM21.25 14.66V17.68H22.75V14.66H21.25ZM22 16.93H2V18.43H22V16.93ZM2.75 17.68V14.66H1.25V17.68H2.75ZM2.25135 15.3666C4.12941 14.6986 5.11623 12.6411 4.44663 10.7586L3.03337 11.2614C3.42377 12.3589 2.85059 13.5614 1.74865 13.9534L2.25135 15.3666ZM4.44611 10.7572C4.08045 9.73588 3.27412 8.92955 2.2528 8.56389L1.7472 9.97611C2.34588 10.1905 2.81955 10.6641 3.03389 11.2628L4.44611 10.7572ZM2.75 9.27V6.25H1.25V9.27H2.75ZM2 7H22V5.5H2V7ZM7.31 6.74V18.17H8.81V6.74H7.31ZM17.0997 8.39967L11.0397 14.4597L12.1003 15.5203L18.1603 9.46033L17.0997 8.39967ZM12.57 9.67C12.57 9.87231 12.4159 10 12.27 10V11.5C13.2839 11.5 14.07 10.6606 14.07 9.67H12.57ZM12.27 10C12.1241 10 11.97 9.87231 11.97 9.67H10.47C10.47 10.6606 11.2561 11.5 12.27 11.5V10ZM11.97 9.67C11.97 9.46769 12.1241 9.34 12.27 9.34V7.84C11.2561 7.84 10.47 8.67938 10.47 9.67H11.97ZM12.27 9.34C12.4159 9.34 12.57 9.46769 12.57 9.67H14.07C14.07 8.67938 13.2839 7.84 12.27 7.84V9.34ZM17.22 14.32C17.22 14.5223 17.0659 14.65 16.92 14.65V16.15C17.9339 16.15 18.72 15.3106 18.72 14.32H17.22ZM16.92 14.65C16.7741 14.65 16.62 14.5223 16.62 14.32H15.12C15.12 15.3106 15.9061 16.15 16.92 16.15V14.65ZM16.62 14.32C16.62 14.1177 16.7741 13.99 16.92 13.99V12.49C15.9061 12.49 15.12 13.3294 15.12 14.32H16.62ZM16.92 13.99C17.0659 13.99 17.22 14.1177 17.22 14.32H18.72C18.72 13.3294 17.9339 12.49 16.92 12.49V13.99Z\", fill: \"currentColor\" }));\nexport default SvgCoupon;\n","import * as React from \"react\";\nconst SvgGiftCard = (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\", { d: \"M22 12.8571V6.75774C22 6.33761 21.5848 6 21.0884 6H2.91155C2.40614 6 2 6.34511 2 6.75774V12.8571M22 12.8571H2M22 12.8571V17.0049C22 17.5468 21.5939 18 21.0884 18H2.91155C2.41516 18 2 17.5567 2 17.0049V12.8571M5.18182 16.0886L8.64545 12.8229M8.64545 12.8229L12.1087 16.0886M8.64545 12.8229C8.64545 12.8229 8.09964 10.4743 7.56328 9.96857C7.02692 9.46286 6.15419 9.46286 5.61783 9.96857C5.08146 10.4743 5.08146 11.2971 5.61783 11.8029C6.15419 12.3086 8.64545 12.8229 8.64545 12.8229ZM8.64545 12.8229C8.64545 12.8229 11.1542 12.2914 11.6905 11.7857C12.2269 11.28 12.2269 10.4571 11.6905 9.95141C11.1542 9.4457 10.2814 9.4457 9.74507 9.95141C9.2087 10.4571 8.64545 12.8229 8.64545 12.8229ZM8.64506 17.2886V6.70286\", stroke: \"currentColor\", strokeWidth: 1, strokeLinecap: \"round\" }));\nexport default SvgGiftCard;\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel } from '@/order/data/models';\nimport { setTaxStatus } from '@/order/lib/setTaxStatus';\nimport { StoreConfigProps, UseOrderCostSummaryProps } from '@/order/types';\nimport { events } from '@adobe-commerce/event-bus';\nimport { useState, useEffect } from 'preact/hooks';\n\nexport const useOrderCostSummary = ({\n orderData,\n config,\n}: UseOrderCostSummaryProps) => {\n const [loading, setLoading] = useState(true);\n const [order, setOrder] = useState(orderData);\n const [storeConfig, setStoreConfig] = useState<StoreConfigProps | null>(null);\n\n useEffect(() => {\n if (config) {\n const {\n shoppingOrderDisplayPrice,\n shoppingOrdersDisplayShipping,\n shoppingOrdersDisplaySubtotal,\n ...props\n } = config;\n\n setStoreConfig((prev) => ({\n ...prev,\n ...props,\n shoppingOrderDisplayPrice: setTaxStatus(shoppingOrderDisplayPrice),\n shoppingOrdersDisplayShipping: setTaxStatus(\n shoppingOrdersDisplayShipping\n ),\n shoppingOrdersDisplaySubtotal: setTaxStatus(\n shoppingOrdersDisplaySubtotal\n ),\n salesPrintedCard: setTaxStatus(config.salesPrintedCard),\n salesGiftWrapping: setTaxStatus(config.salesGiftWrapping),\n }));\n setLoading(false);\n }\n }, [config]);\n\n useEffect(() => {\n const event = events.on(\n 'order/data',\n (order: OrderDataModel) => {\n setOrder(order);\n },\n { eager: true }\n );\n\n return () => {\n event?.off();\n };\n }, []);\n\n return { loading, storeConfig, order };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { classes, Container } from '@adobe-commerce/elsie/lib';\nimport { useGetStoreConfig, useOrderCostSummary } from '@/order/hooks';\nimport { OrderCostSummaryProps } from '@/order/types';\nimport { OrderCostSummaryContent } from '@/order/components';\nimport { useText } from '@adobe-commerce/elsie/i18n';\n\nexport const OrderCostSummary: Container<OrderCostSummaryProps> = ({\n withHeader,\n orderData,\n children,\n className,\n ...props\n}) => {\n const config = useGetStoreConfig();\n const { loading, storeConfig, order } = useOrderCostSummary({\n orderData,\n config,\n });\n\n const translations = useText({\n subtotal: 'Order.OrderCostSummary.subtotal.title',\n shipping: 'Order.OrderCostSummary.shipping.title',\n freeShipping: 'Order.OrderCostSummary.shipping.freeShipping',\n tax: 'Order.OrderCostSummary.tax.title',\n incl: 'Order.OrderCostSummary.tax.incl',\n excl: 'Order.OrderCostSummary.tax.excl',\n discount: 'Order.OrderCostSummary.discount.title',\n discountSubtitle: 'Order.OrderCostSummary.discount.subtitle',\n total: 'Order.OrderCostSummary.total.title',\n totalFree: 'Order.OrderCostSummary.totalFree',\n accordionTitle: 'Order.OrderCostSummary.tax.accordionTitle',\n accordionTotalTax: 'Order.OrderCostSummary.tax.accordionTotalTax',\n totalExcludingTaxes: 'Order.OrderCostSummary.tax.totalExcludingTaxes',\n headerText: 'Order.OrderCostSummary.headerText',\n\n printedCardTitle: 'Order.OrderCostSummary.giftOptionsTax.printedCard.title',\n printedCardTitleInclTax:\n 'Order.OrderCostSummary.giftOptionsTax.printedCard.inclTax',\n printedCardTitleExclTax:\n 'Order.OrderCostSummary.giftOptionsTax.printedCard.exclTax',\n\n itemGiftWrappingTitle:\n 'Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.title',\n itemGiftWrappingInclTax:\n 'Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.inclTax',\n itemGiftWrappingExclTax:\n 'Order.OrderCostSummary.giftOptionsTax.itemGiftWrapping.exclTax',\n\n orderGiftWrappingTitle:\n 'Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.title',\n orderGiftWrappingInclTax:\n 'Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.inclTax',\n orderGiftWrappingExclTax:\n 'Order.OrderCostSummary.giftOptionsTax.orderGiftWrapping.exclTax',\n });\n\n return (\n <div {...props} className={classes(['order-cost-summary', className])}>\n <OrderCostSummaryContent\n order={order}\n withHeader={withHeader}\n loading={loading}\n storeConfig={storeConfig}\n translations={translations}\n />\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { MoneyProps, TaxTypes } from '@/order/types';\nimport { Price } from '@adobe-commerce/elsie/components';\n\nexport const GiftWrapping = ({\n salesGiftWrapping,\n giftWrappingPrice,\n giftWrappingPriceInclTax,\n giftWrappingTitle,\n giftWrappingExclTaxText,\n giftWrappingInclTaxText,\n}: {\n salesGiftWrapping?: TaxTypes;\n giftWrappingPrice: MoneyProps;\n giftWrappingPriceInclTax: MoneyProps;\n giftWrappingTitle: string;\n giftWrappingExclTaxText: string;\n giftWrappingInclTaxText: string;\n}) => {\n const isGiftWrappingTaxIncluded = salesGiftWrapping?.taxIncluded;\n const isGiftWrappingTaxExcluded = salesGiftWrapping?.taxExcluded;\n const isIncludedView =\n isGiftWrappingTaxIncluded && !isGiftWrappingTaxExcluded;\n const isExcludedView =\n isGiftWrappingTaxExcluded && !isGiftWrappingTaxIncluded;\n const isInclExclView = isGiftWrappingTaxExcluded && isGiftWrappingTaxIncluded;\n\n if (giftWrappingPrice.value === 0 || giftWrappingPriceInclTax.value === 0) {\n return null;\n }\n\n const taxIncludedView = isIncludedView ? (\n <>\n <div className=\"order-cost-summary-content__description--header\">\n <span>{giftWrappingInclTaxText}</span>\n <Price\n className=\"order-cost-summary-content__description--normal-price\"\n weight=\"normal\"\n currency={giftWrappingPriceInclTax.currency}\n amount={giftWrappingPriceInclTax.value}\n />\n </div>\n <div className=\"order-cost-summary-content__description--subheader\">\n <span>{giftWrappingInclTaxText}</span>\n </div>\n </>\n ) : null;\n\n const taxExcludedView = isExcludedView ? (\n <div className=\"order-cost-summary-content__description--header\">\n <span>{giftWrappingTitle}</span>\n <span>\n <Price\n weight=\"normal\"\n currency={giftWrappingPrice.currency}\n amount={giftWrappingPrice.value}\n />\n </span>\n </div>\n ) : null;\n\n const taxIncludedAndExcludedView = isInclExclView ? (\n <>\n <div className=\"order-cost-summary-content__description--header\">\n <span>{giftWrappingTitle}</span>\n <span>\n <Price\n className=\"order-cost-summary-content__description--normal-price\"\n weight=\"normal\"\n currency={giftWrappingPriceInclTax.currency}\n amount={giftWrappingPriceInclTax.value}\n />\n </span>\n </div>\n <div className=\"order-cost-summary-content__description--subheader\">\n <Price\n currency={giftWrappingPrice.currency}\n amount={giftWrappingPrice.value}\n size=\"small\"\n weight=\"bold\"\n />{' '}\n <span>{giftWrappingExclTaxText}</span>\n </div>\n </>\n ) : null;\n\n return (\n <div className=\"order-cost-summary-content__description order-cost-summary-content__description--gift-wrapping\">\n {taxIncludedView}\n {taxExcludedView}\n {taxIncludedAndExcludedView}\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel } from '@/order/data/models';\nimport { TaxTypes } from '@/order/types';\nimport { Price } from '@adobe-commerce/elsie/components';\n\ntype translationsTypes = Record<string, string>;\n\nexport const PrintedCard = ({\n translations,\n order,\n salesPrintedCard,\n}: {\n translations: translationsTypes;\n order?: OrderDataModel;\n salesPrintedCard?: TaxTypes;\n}) => {\n const totalGiftOptions = order?.totalGiftOptions;\n const { printedCard, printedCardInclTax } = totalGiftOptions!;\n\n const isPrintedCardTaxIncluded = salesPrintedCard?.taxIncluded;\n const isPrintedCardTaxExcluded = salesPrintedCard?.taxExcluded;\n\n if (printedCard.value === 0 || printedCardInclTax.value === 0) {\n return null;\n }\n\n const taxIncludedView =\n isPrintedCardTaxIncluded && !isPrintedCardTaxExcluded ? (\n <>\n <div className=\"order-cost-summary-content__description--header\">\n <span>{translations.printedCardTitle}</span>\n <span>\n <Price\n className=\"order-cost-summary-content__description--normal-price\"\n weight=\"normal\"\n currency={printedCardInclTax.currency}\n amount={printedCardInclTax.value}\n />\n </span>\n </div>\n <div className=\"order-cost-summary-content__description--subheader\">\n <span>\n <span>{translations.printedCardTitleInclTax}</span>\n </span>\n </div>\n </>\n ) : null;\n\n const taxExcludedView =\n isPrintedCardTaxExcluded && !isPrintedCardTaxIncluded ? (\n <div className=\"order-cost-summary-content__description--header\">\n <span>{translations.printedCardTitle}</span>\n <span>\n <Price\n weight=\"normal\"\n currency={printedCard.currency}\n amount={printedCard.value}\n />\n </span>\n </div>\n ) : null;\n\n const taxIncludedAndExcludedView =\n isPrintedCardTaxExcluded && isPrintedCardTaxIncluded ? (\n <>\n <div className=\"order-cost-summary-content__description--header\">\n <span>{translations.printedCardTitle}</span>\n <span>\n <Price\n className=\"order-cost-summary-content__description--normal-price\"\n weight=\"normal\"\n currency={printedCardInclTax.currency}\n amount={printedCardInclTax.value}\n />\n </span>\n </div>\n <div className=\"order-cost-summary-content__description--subheader\">\n <Price\n currency={printedCard.currency}\n amount={printedCard.value}\n size=\"small\"\n weight=\"bold\"\n />{' '}\n <span>{translations.printedCardTitleExclTax}</span>\n </div>\n </>\n ) : null;\n\n return (\n <div className=\"order-cost-summary-content__description order-cost-summary-content__description--printed-card\">\n {taxIncludedView}\n {taxExcludedView}\n {taxIncludedAndExcludedView}\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel } from '@/order/data/models';\nimport { TaxTypes } from '@/order/types';\nimport { Price } from '@adobe-commerce/elsie/components';\n\ntype translationsTypes = Record<string, string>;\n\nexport const Subtotal = ({\n translations,\n order,\n subtotalInclTax,\n subtotalExclTax,\n shoppingOrdersDisplaySubtotal,\n}: {\n translations: translationsTypes;\n order?: OrderDataModel;\n subtotalInclTax: number;\n subtotalExclTax: number;\n shoppingOrdersDisplaySubtotal: TaxTypes;\n}) => {\n const isTaxIncluded = shoppingOrdersDisplaySubtotal.taxIncluded;\n const isTaxExcluded = shoppingOrdersDisplaySubtotal.taxExcluded;\n\n const taxIncludedView =\n isTaxIncluded && !isTaxExcluded ? (\n <>\n <div className=\"order-cost-summary-content__description--header\">\n <span>{translations.subtotal}</span>\n <Price\n className=\"order-cost-summary-content__description--normal-price\"\n weight=\"normal\"\n currency={order?.subtotalInclTax?.currency}\n amount={subtotalInclTax}\n />\n </div>\n <div className=\"order-cost-summary-content__description--subheader\">\n <span>{translations.incl}</span>\n </div>\n </>\n ) : null;\n\n const taxExcludedView =\n isTaxExcluded && !isTaxIncluded ? (\n <div className=\"order-cost-summary-content__description--header\">\n <span>{translations.subtotal}</span>\n <Price\n className=\"order-cost-summary-content__description--normal-price\"\n weight=\"normal\"\n currency={order?.subtotalExclTax?.currency}\n amount={subtotalExclTax}\n />\n </div>\n ) : null;\n\n const taxIncludedAndExcludedView =\n isTaxExcluded && isTaxIncluded ? (\n <>\n <div className=\"order-cost-summary-content__description--header\">\n <span>{translations.subtotal}</span>\n <Price\n className=\"order-cost-summary-content__description--normal-price\"\n weight=\"normal\"\n currency={order?.subtotalInclTax?.currency}\n amount={subtotalInclTax}\n />\n </div>\n <div className=\"order-cost-summary-content__description--subheader\">\n <Price\n currency={order?.subtotalExclTax?.currency}\n amount={subtotalExclTax}\n size=\"small\"\n weight={'bold'}\n />{' '}\n <span>{translations.excl}</span>\n </div>\n </>\n ) : null;\n\n return (\n <div className=\"order-cost-summary-content__description order-cost-summary-content__description--subtotal\">\n {taxIncludedView}\n {taxExcludedView}\n {taxIncludedAndExcludedView}\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel } from '@/order/data/models';\nimport { TaxTypes } from '@/order/types';\nimport { Price } from '@adobe-commerce/elsie/components';\n\ntype translationsTypes = Record<string, string>;\n\nexport const Shipping = ({\n translations,\n shoppingOrdersDisplayShipping,\n order,\n totalShipping,\n}: {\n totalShipping: number;\n shoppingOrdersDisplayShipping: TaxTypes;\n order: OrderDataModel;\n translations: translationsTypes;\n}) => {\n if (order?.isVirtual) return null;\n\n return (\n <div className=\"order-cost-summary-content__description order-cost-summary-content__description--shipping\">\n <div className=\"order-cost-summary-content__description--header\">\n <span>{translations.shipping}</span>\n {order?.totalShipping?.value ? (\n <Price\n weight=\"normal\"\n currency={order?.totalShipping?.currency}\n amount={totalShipping}\n />\n ) : (\n <span>{translations.freeShipping}</span>\n )}\n </div>\n <div className=\"order-cost-summary-content__description--subheader\">\n {shoppingOrdersDisplayShipping.taxIncluded &&\n shoppingOrdersDisplayShipping.taxExcluded ? (\n <>\n <Price\n weight=\"normal\"\n currency={order?.totalShipping?.currency}\n amount={order?.totalShipping?.value}\n size=\"small\"\n />\n <span> {translations.excl}</span>\n </>\n ) : null}\n {shoppingOrdersDisplayShipping.taxIncluded &&\n !shoppingOrdersDisplayShipping.taxExcluded ? (\n <span>{translations.incl}</span>\n ) : null}\n </div>\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel } from '@/order/data/models';\nimport { Icon, Price } from '@adobe-commerce/elsie/components';\nimport { Coupon } from '@adobe-commerce/elsie/icons';\n\ntype translationsTypes = Record<string, string>;\n\nexport const Discounts = ({\n translations,\n order,\n}: {\n order: OrderDataModel;\n translations: translationsTypes;\n}) => {\n const appliedCoupons = order?.coupons;\n const discounts = order?.discounts;\n const discountValue =\n discounts?.reduce((acc, item) => {\n return acc + (item.amount.value ?? 0);\n }, 0) || 0;\n\n if (!order?.discounts?.length && discountValue === 0) return null;\n\n return (\n <div className=\"order-cost-summary-content__description order-cost-summary-content__description--discount\">\n <div className=\"order-cost-summary-content__description--header\">\n <span>{translations.discount}</span>\n <span>\n <Price\n weight=\"normal\"\n sale\n currency={discounts[0]?.amount.currency}\n amount={-discountValue}\n />\n </span>\n </div>\n\n {appliedCoupons.map((el) => {\n return (\n <div\n className=\"order-cost-summary-content__description--subheader\"\n key={el.code}\n >\n <span>\n <Icon\n source={Coupon}\n size=\"16\"\n className=\"order-cost-summary-content__description--coupon-icon\"\n />\n <span>{el.code}</span>\n </span>\n </div>\n );\n })}\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel } from '@/order/data/models';\nimport { TaxTypes } from '@/order/types';\nimport { Price } from '@adobe-commerce/elsie/components';\n\ntype translationsTypes = Record<string, string>;\n\nexport const Total = ({\n translations,\n shoppingOrdersDisplaySubtotal,\n order,\n}: {\n translations: translationsTypes;\n order?: OrderDataModel;\n shoppingOrdersDisplaySubtotal: TaxTypes;\n}) => {\n const isFree = order?.grandTotal?.value === 0;\n\n return (\n <div className=\"order-cost-summary-content__description order-cost-summary-content__description--total\">\n <div className=\"order-cost-summary-content__description--header\">\n <span>{translations.total}</span>\n {!isFree ? (\n <Price\n currency={order?.grandTotal?.currency}\n amount={order?.grandTotal?.value}\n weight=\"bold\"\n size=\"medium\"\n />\n ) : (\n <span className=\"order-cost-summary-content__description--total-free\">\n {translations.totalFree}\n </span>\n )}\n </div>\n {shoppingOrdersDisplaySubtotal.taxExcluded &&\n shoppingOrdersDisplaySubtotal.taxIncluded && !isFree ? (\n <div className=\"order-cost-summary-content__description--subheader\">\n <span>{translations.totalExcludingTaxes}</span>\n <Price\n currency={order?.grandTotalExclTax?.currency}\n amount={order?.grandTotalExclTax?.value}\n weight=\"normal\"\n size=\"small\"\n />\n </div>\n ) : null}\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel } from '@/order/data/models';\nimport { Accordion, AccordionSection, Price } from '@adobe-commerce/elsie/components';\nimport { ChevronDown, ChevronUp } from '@adobe-commerce/elsie/icons';\nimport { useState } from 'preact/hooks';\n\ntype translationsTypes = Record<string, string>;\n\nexport const Tax = ({\n translations,\n renderTaxAccordion,\n totalAccordionTaxValue,\n order,\n}: {\n translations: translationsTypes;\n order: OrderDataModel;\n renderTaxAccordion: boolean;\n totalAccordionTaxValue: number;\n}) => {\n const [changeAccordion, setChangeAccordion] = useState(false);\n if (!renderTaxAccordion)\n return (\n <div className=\"order-cost-summary-content__description order-cost-summary-content__description--tax\">\n <div className=\"order-cost-summary-content__description--header\">\n <span>{translations.tax}</span>\n <Price\n currency={order?.totalTax?.currency}\n amount={order?.totalTax.value}\n weight=\"normal\"\n size=\"small\"\n />\n </div>\n </div>\n );\n\n return (\n <Accordion\n data-testid=\"tax-accordionTaxes\"\n className=\"order-cost-summary-content__accordion\"\n iconOpen={ChevronDown}\n iconClose={ChevronUp}\n >\n <AccordionSection\n onStateChange={setChangeAccordion}\n title={translations.accordionTitle}\n secondaryText={\n <>\n {!changeAccordion ? (\n <Price\n weight=\"normal\"\n amount={totalAccordionTaxValue}\n currency={order?.totalTax?.currency}\n />\n ) : null}\n </>\n }\n renderContentWhenClosed={false}\n >\n {order?.taxes?.map((el, index) => (\n <div\n key={`${el?.amount?.value}${index}`}\n className={'order-cost-summary-content__accordion-row'}\n >\n <p>{el?.title}</p>\n <p>\n <Price\n weight=\"normal\"\n amount={el?.amount?.value}\n currency={el?.amount?.currency}\n />\n </p>\n </div>\n ))}\n <div\n className={\n 'order-cost-summary-content__accordion-row order-cost-summary-content__accordion-total'\n }\n >\n <p>{translations.accordionTotalTax}</p>\n <p>\n <Price\n weight=\"normal\"\n amount={totalAccordionTaxValue}\n currency={order.totalTax.currency}\n size=\"medium\"\n />\n </p>\n </div>\n </AccordionSection>\n </Accordion>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel } from '@/order/data/models';\nimport { Icon, Price } from '@adobe-commerce/elsie/components';\nimport { Text } from '@adobe-commerce/elsie/i18n';\nimport { GiftCard } from '@adobe-commerce/elsie/icons';\n\nexport const GiftCards = ({\n totalGiftCardValue,\n totalGiftCardCurrency,\n order,\n}: {\n order: OrderDataModel;\n totalGiftCardValue: number;\n totalGiftCardCurrency: string;\n}) => {\n const appliedGiftCards = order?.appliedGiftCards;\n\n if (!totalGiftCardValue) return null;\n\n return (\n <div className=\"order-cost-summary-content__description order-cost-summary-content__description--discount\">\n <div className=\"order-cost-summary-content__description--header\">\n <span>\n <Text\n id=\"Order.OrderCostSummary.appliedGiftCards.label\"\n plural={appliedGiftCards?.length}\n fields={{\n count: appliedGiftCards?.length,\n }}\n />\n </span>\n <span>\n <Price\n weight=\"normal\"\n sale\n currency={totalGiftCardCurrency}\n amount={-totalGiftCardValue}\n />\n </span>\n </div>\n\n {appliedGiftCards.map((el) => {\n return (\n <div\n className=\"order-cost-summary-content__description--subheader\"\n key={el.code}\n >\n <span>\n <Icon\n source={GiftCard}\n size=\"16\"\n className=\"order-cost-summary-content__description--giftcard-icon\"\n />\n <span>{el.code}</span>\n </span>\n </div>\n );\n })}\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 } from 'preact';\nimport { Card, Header } from '@adobe-commerce/elsie/components';\nimport { classes } from '@adobe-commerce/elsie/lib';\nimport { OrderCostSummaryContentProps } from '@/order/types';\nimport { OrderSummarySkeleton } from '@/order/components/OrderLoaders';\nimport '@/order/components/OrderCostSummaryContent/OrderCostSummaryContent.css';\nimport {\n Discounts,\n Shipping,\n Subtotal,\n Tax,\n Total,\n GiftWrapping,\n PrintedCard,\n GiftCards,\n} from '@/order/components/OrderCostSummaryContent/Blocks';\n\nexport const OrderCostSummaryContent: FunctionComponent<\n OrderCostSummaryContentProps\n> = ({\n translations,\n loading,\n storeConfig,\n order,\n withHeader = true,\n}: OrderCostSummaryContentProps) => {\n if (loading || !order) return <OrderSummarySkeleton />;\n\n const totalGiftCardValue = order?.totalGiftCard?.value ?? 0;\n const totalGiftCardCurrency = order.totalGiftCard?.currency ?? '';\n const subtotalInclTax = order.subtotalInclTax?.value ?? 0;\n const subtotalExclTax = order.subtotalExclTax?.value ?? 0;\n const totalShipping = order.totalShipping?.value ?? 0;\n const renderTaxAccordion =\n !!order?.taxes?.length && storeConfig?.shoppingOrdersDisplayFullSummary!;\n const totalAccordionTaxValue = renderTaxAccordion\n ? order?.taxes?.reduce((value, acc) => {\n return +acc?.amount?.value + value;\n }, 0)\n : 0;\n\n return (\n <Card\n variant=\"secondary\"\n className={classes(['order-cost-summary-content'])}\n >\n {withHeader ? <Header title={translations.headerText} /> : null}\n\n <div className=\"order-cost-summary-content__wrapper\">\n <Subtotal\n translations={translations}\n order={order}\n subtotalInclTax={subtotalInclTax}\n subtotalExclTax={subtotalExclTax}\n shoppingOrdersDisplaySubtotal={\n storeConfig?.shoppingOrdersDisplaySubtotal!\n }\n />\n <Shipping\n translations={translations}\n order={order}\n totalShipping={totalShipping}\n shoppingOrdersDisplayShipping={\n storeConfig?.shoppingOrdersDisplayShipping!\n }\n />\n <PrintedCard\n order={order}\n translations={translations}\n salesPrintedCard={storeConfig?.salesPrintedCard}\n />\n <GiftWrapping\n salesGiftWrapping={storeConfig?.salesGiftWrapping}\n giftWrappingPrice={order.totalGiftOptions.giftWrappingForItems}\n giftWrappingPriceInclTax={\n order.totalGiftOptions.giftWrappingForItemsInclTax\n }\n giftWrappingTitle={translations.itemGiftWrappingTitle}\n giftWrappingExclTaxText={translations.itemGiftWrappingExclTax}\n giftWrappingInclTaxText={translations.itemGiftWrappingInclTax}\n />\n <GiftWrapping\n salesGiftWrapping={storeConfig?.salesGiftWrapping}\n giftWrappingPrice={order.totalGiftOptions.giftWrappingForOrder}\n giftWrappingPriceInclTax={\n order.totalGiftOptions.giftWrappingForOrderInclTax\n }\n giftWrappingTitle={translations.orderGiftWrappingTitle}\n giftWrappingExclTaxText={translations.orderGiftWrappingExclTax}\n giftWrappingInclTaxText={translations.orderGiftWrappingInclTax}\n />\n <Discounts translations={translations} order={order} />\n <GiftCards\n order={order}\n totalGiftCardValue={totalGiftCardValue}\n totalGiftCardCurrency={totalGiftCardCurrency}\n />\n <Tax\n order={order}\n translations={translations}\n renderTaxAccordion={renderTaxAccordion}\n totalAccordionTaxValue={totalAccordionTaxValue}\n />\n <Total\n translations={translations}\n shoppingOrdersDisplaySubtotal={\n storeConfig?.shoppingOrdersDisplaySubtotal!\n }\n order={order}\n />\n </div>\n </Card>\n );\n};\n"],"names":["SvgChevronDown","props","React","SvgChevronUp","SvgCoupon","SvgGiftCard","useOrderCostSummary","orderData","config","loading","setLoading","useState","order","setOrder","storeConfig","setStoreConfig","useEffect","shoppingOrderDisplayPrice","shoppingOrdersDisplayShipping","shoppingOrdersDisplaySubtotal","prev","setTaxStatus","event","events","OrderCostSummary","withHeader","children","className","useGetStoreConfig","translations","useText","jsx","classes","OrderCostSummaryContent","GiftWrapping","salesGiftWrapping","giftWrappingPrice","giftWrappingPriceInclTax","giftWrappingTitle","giftWrappingExclTaxText","giftWrappingInclTaxText","isGiftWrappingTaxIncluded","isGiftWrappingTaxExcluded","isIncludedView","isExcludedView","isInclExclView","taxIncludedView","jsxs","Fragment","Price","taxExcludedView","taxIncludedAndExcludedView","PrintedCard","salesPrintedCard","totalGiftOptions","printedCard","printedCardInclTax","isPrintedCardTaxIncluded","isPrintedCardTaxExcluded","Subtotal","subtotalInclTax","subtotalExclTax","isTaxIncluded","isTaxExcluded","_a","_b","_c","_d","Shipping","totalShipping","Discounts","appliedCoupons","discounts","discountValue","acc","item","el","Icon","Coupon","Total","isFree","_e","Tax","renderTaxAccordion","totalAccordionTaxValue","changeAccordion","setChangeAccordion","Accordion","ChevronDown","ChevronUp","AccordionSection","index","GiftCards","totalGiftCardValue","totalGiftCardCurrency","appliedGiftCards","Text","GiftCard","OrderSummarySkeleton","_f","_g","value","Card","Header"],"mappings":"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","x_google_ignoreList":[0,1,2,3]}
@@ -1,3 +1,4 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsx as l,jsxs as k}from"@dropins/tools/preact-jsx-runtime.js";import"@dropins/tools/lib.js";import{Icon as O,Header as d,Button as H}from"@dropins/tools/components.js";import{useState as f,useEffect as p}from"@dropins/tools/preact-hooks.js";import"../chunks/ShippingStatusCard.js";import*as c from"@dropins/tools/preact-compat.js";import"@dropins/tools/preact.js";import{events as _}from"@dropins/tools/event-bus.js";import{b}from"../chunks/OrderLoaders.js";import{useText as w,Text as L}from"@dropins/tools/i18n.js";function s(e){var r;return{region:{region_id:e!=null&&e.regionId?Number(e==null?void 0:e.regionId):null,region:e==null?void 0:e.region},city:e==null?void 0:e.city,company:e==null?void 0:e.company,country_code:e==null?void 0:e.countryCode,firstname:e==null?void 0:e.firstName,lastname:e==null?void 0:e.lastName,middlename:e==null?void 0:e.middleName,postcode:e==null?void 0:e.postCode,street:e==null?void 0:e.street,telephone:e==null?void 0:e.telephone,custom_attributesV2:((r=e==null?void 0:e.customAttributes)==null?void 0:r.map(i=>({attribute_code:i.code,value:i.value})))||[]}}const V=e=>c.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},c.createElement("g",{clipPath:"url(#clip0_4797_15077)"},c.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M10.15 20.85L1.5 17.53V6.63L10.15 10V20.85Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),c.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M1.5 6.63001L10.15 3.20001L18.8 6.63001L10.15 10L1.5 6.63001Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),c.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M6.17969 4.77002L14.8297 8.15002V11.47",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),c.createElement("path",{vectorEffect:"non-scaling-stroke",d:"M18.7896 12.64V6.63L10.1396 10V20.85L14.8296 19.05",stroke:"currentColor",strokeLinejoin:"round"}),c.createElement("path",{className:"success-icon",vectorEffect:"non-scaling-stroke",d:"M15.71 17.26C15.71 15.38 17.23 13.86 19.11 13.86C20.99 13.86 22.51 15.38 22.51 17.26C22.51 19.14 20.99 20.66 19.11 20.66C17.23 20.66 15.71 19.14 15.71 17.26Z",stroke:"currentColor"}),c.createElement("path",{className:"success-icon",vectorEffect:"non-scaling-stroke",d:"M17.4805 17.49L18.5605 18.41L20.7205 16.33",stroke:"currentColor",strokeLinecap:"square",strokeLinejoin:"round"})),c.createElement("defs",null,c.createElement("clipPath",{id:"clip0_4797_15077"},c.createElement("rect",{width:22,height:18.65,fill:"white",transform:"translate(1 2.70001)"})))),M=({orderData:e,handleEmailAvailability:r,handleSignUpClick:i})=>{const[t,v]=f(e),[u,C]=f(),[N,h]=f(r?void 0:!0),a=t==null?void 0:t.email,E=i&&t!==void 0&&u===!1&&N===!0?()=>{const o=t.shippingAddress,n=t.billingAddress,A=[{code:"email",defaultValue:t.email},{code:"firstname",defaultValue:(n==null?void 0:n.firstName)??""},{code:"lastname",defaultValue:(n==null?void 0:n.lastName)??""}];let m=[];if(o){const g={...s(o),default_shipping:!0};m=[{...s(n),default_billing:!0},g]}else m=[{...s(n),default_billing:!0,default_shipping:!0}];i({inputsDefaultValueSet:A,addressesData:m})}:void 0;return p(()=>{const o=_.on("authenticated",n=>{C(n)},{eager:!0});return()=>{o==null||o.off()}},[]),p(()=>{const o=_.on("order/data",n=>{v(n)},{eager:!0});return()=>{o==null||o.off()}},[]),p(()=>{r&&u!==void 0&&(u||!a||r(a).then(o=>h(o)).catch(()=>h(!0)))},[u,r,a]),{order:t,onSignUpClickHandler:E}},R=e=>{var t;const{order:r,onSignUpClickHandler:i}=M(e);return l("div",{children:r?l(j,{customerName:(t=r.billingAddress)==null?void 0:t.firstName,onSignUpClick:i,orderNumber:r.number}):l(b,{})})},j=({customerName:e,orderNumber:r,onSignUpClick:i})=>{const t=w({title:l(L,{id:"Order.OrderHeader.title",fields:{name:e}}),defaultTitle:"Order.OrderHeader.defaultTitle",order:l(L,{id:"Order.OrderHeader.order",fields:{order:r}}),createAccountMessage:"Order.OrderHeader.CreateAccount.message",createAccountButton:"Order.OrderHeader.CreateAccount.button"});return k("div",{"data-testid":"order-header",className:"order-header order-header__card",children:[l(O,{source:V,size:"64",className:"order-header__icon"}),l(d,{className:"order-header__title",title:t.title,size:"large",divider:!1,children:e?t.title:t.defaultTitle}),l("p",{className:"order-header__order",children:t.order}),i&&k("div",{className:"order-header-create-account",children:[l("p",{className:"order-header-create-account__message",children:t.createAccountMessage}),l(H,{"data-testid":"create-account-button",className:"order-header-create-account__button",size:"medium",variant:"secondary",type:"submit",onClick:i,children:t.createAccountButton})]})]})};export{R as OrderHeader,R as default};
4
+ //# sourceMappingURL=OrderHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrderHeader.js","sources":["/@dropins/storefront-order/src/data/transforms/transform-customer-address-input.ts","../../node_modules/@adobe-commerce/elsie/src/icons/OrderSuccess.svg","/@dropins/storefront-order/src/hooks/containers/useOrderHeader.tsx","/@dropins/storefront-order/src/containers/OrderHeader/OrderHeader.tsx","/@dropins/storefront-order/src/components/OrderHeader/OrderHeader.tsx"],"sourcesContent":["/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderAddressModel } from '@/order/data/models';\n\nexport function transformCustomerAddressInput(address: OrderAddressModel) {\n return {\n region: {\n region_id: address?.regionId ? Number(address?.regionId) : null,\n region: address?.region,\n },\n city: address?.city,\n company: address?.company,\n country_code: address?.countryCode,\n firstname: address?.firstName,\n lastname: address?.lastName,\n middlename: address?.middleName,\n postcode: address?.postCode,\n street: address?.street,\n telephone: address?.telephone,\n custom_attributesV2:\n address?.customAttributes?.map((attr) => ({\n attribute_code: attr.code,\n value: attr.value,\n })) || [],\n };\n}\n","import * as React from \"react\";\nconst SvgOrderSuccess = (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_15077)\" }, /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M10.15 20.85L1.5 17.53V6.63L10.15 10V20.85Z\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M1.5 6.63001L10.15 3.20001L18.8 6.63001L10.15 10L1.5 6.63001Z\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M6.17969 4.77002L14.8297 8.15002V11.47\", stroke: \"currentColor\", strokeLinecap: \"round\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { vectorEffect: \"non-scaling-stroke\", d: \"M18.7896 12.64V6.63L10.1396 10V20.85L14.8296 19.05\", stroke: \"currentColor\", strokeLinejoin: \"round\" }), /* @__PURE__ */ React.createElement(\"path\", { className: \"success-icon\", vectorEffect: \"non-scaling-stroke\", d: \"M15.71 17.26C15.71 15.38 17.23 13.86 19.11 13.86C20.99 13.86 22.51 15.38 22.51 17.26C22.51 19.14 20.99 20.66 19.11 20.66C17.23 20.66 15.71 19.14 15.71 17.26Z\", stroke: \"currentColor\" }), /* @__PURE__ */ React.createElement(\"path\", { className: \"success-icon\", vectorEffect: \"non-scaling-stroke\", d: \"M17.4805 17.49L18.5605 18.41L20.7205 16.33\", stroke: \"currentColor\", strokeLinecap: \"square\", strokeLinejoin: \"round\" })), /* @__PURE__ */ React.createElement(\"defs\", null, /* @__PURE__ */ React.createElement(\"clipPath\", { id: \"clip0_4797_15077\" }, /* @__PURE__ */ React.createElement(\"rect\", { width: 22, height: 18.65, fill: \"white\", transform: \"translate(1 2.70001)\" }))));\nexport default SvgOrderSuccess;\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel } from '@/order/data/models';\nimport { transformCustomerAddressInput } from '@/order/data/transforms/transform-customer-address-input';\nimport { SignUpContext, UseOrderHeaderProps } from '@/order/types';\nimport { events } from '@adobe-commerce/event-bus';\nimport { useEffect, useState } from 'preact/hooks';\n\nexport const useOrderHeader = ({\n orderData,\n handleEmailAvailability,\n handleSignUpClick,\n}: UseOrderHeaderProps) => {\n const [order, setOrder] = useState(orderData);\n const [isAuthenticated, setIsAuthenticated] = useState<boolean | undefined>();\n const [isEmailAvailable, setIsEmailAvailable] = useState<boolean | undefined>(\n handleEmailAvailability ? undefined : true\n );\n\n const customerEmail = order?.email;\n\n const canCreateNewAccount =\n handleSignUpClick &&\n order !== undefined &&\n isAuthenticated === false &&\n isEmailAvailable === true;\n\n const onSignUpClickHandler = canCreateNewAccount\n ? () => {\n const shippingAddress = order.shippingAddress;\n const billingAddress = order.billingAddress;\n\n const inputsDefaultValueSet: SignUpContext['inputsDefaultValueSet'] = [\n { code: 'email', defaultValue: order.email },\n { code: 'firstname', defaultValue: billingAddress?.firstName ?? '' },\n { code: 'lastname', defaultValue: billingAddress?.lastName ?? '' },\n ];\n\n let addressesData: SignUpContext['addressesData'] = [];\n\n if (shippingAddress) {\n const customerShippingAddress = {\n ...transformCustomerAddressInput(shippingAddress),\n default_shipping: true,\n };\n const customerBillingAddress = {\n ...transformCustomerAddressInput(billingAddress),\n default_billing: true,\n };\n addressesData = [customerBillingAddress, customerShippingAddress];\n } else {\n const customerAddress = {\n ...transformCustomerAddressInput(billingAddress),\n default_billing: true,\n default_shipping: true,\n };\n addressesData = [customerAddress];\n }\n\n handleSignUpClick({ inputsDefaultValueSet, addressesData });\n }\n : undefined;\n\n useEffect(() => {\n const event = events.on(\n 'authenticated',\n (authenticated) => {\n setIsAuthenticated(authenticated);\n },\n { eager: true }\n );\n\n return () => {\n event?.off();\n };\n }, []);\n\n useEffect(() => {\n const event = events.on(\n 'order/data',\n (order: OrderDataModel) => {\n setOrder(order);\n },\n { eager: true }\n );\n\n return () => {\n event?.off();\n };\n }, []);\n\n useEffect(() => {\n if (!handleEmailAvailability) return;\n if (isAuthenticated === undefined) return;\n if (isAuthenticated || !customerEmail) return;\n\n handleEmailAvailability(customerEmail)\n .then((result) => setIsEmailAvailable(result))\n .catch(() => setIsEmailAvailable(true));\n }, [isAuthenticated, handleEmailAvailability, customerEmail]);\n\n return { order, onSignUpClickHandler };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 {\n OrderHeader as OrderHeaderComponent,\n OrderHeaderSkeleton,\n} from '@/order/components';\nimport { useOrderHeader } from '@/order/hooks/containers/useOrderHeader';\nimport { OrderHeaderProps } from '@/order/types';\nimport { FunctionComponent } from 'preact';\n\nexport const OrderHeader: FunctionComponent<OrderHeaderProps> = (props) => {\n const { order, onSignUpClickHandler } = useOrderHeader(props);\n\n return (\n <div>\n {order ? (\n <OrderHeaderComponent\n customerName={order.billingAddress?.firstName}\n onSignUpClick={onSignUpClickHandler}\n orderNumber={order.number}\n />\n ) : (\n <OrderHeaderSkeleton />\n )}\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 '@/order/components/OrderHeader/OrderHeader.css';\nimport { Button, Header, Icon } from '@adobe-commerce/elsie/components';\nimport { Text, useText } from '@adobe-commerce/elsie/i18n';\nimport { OrderSuccess } from '@adobe-commerce/elsie/icons';\nimport { FunctionComponent } from 'preact';\n\nexport interface OrderHeaderProps {\n customerName?: string;\n onSignUpClick?: () => void;\n orderNumber: string;\n}\n\nexport const OrderHeader: FunctionComponent<OrderHeaderProps> = ({\n customerName,\n orderNumber,\n onSignUpClick,\n}) => {\n const translations = useText({\n title: (\n <Text id=\"Order.OrderHeader.title\" fields={{ name: customerName }} />\n ),\n defaultTitle: 'Order.OrderHeader.defaultTitle',\n order: (\n <Text id=\"Order.OrderHeader.order\" fields={{ order: orderNumber }} />\n ),\n createAccountMessage: 'Order.OrderHeader.CreateAccount.message',\n createAccountButton: 'Order.OrderHeader.CreateAccount.button',\n });\n\n return (\n <div data-testid=\"order-header\" className=\"order-header order-header__card\">\n <Icon source={OrderSuccess} size=\"64\" className=\"order-header__icon\" />\n\n <Header\n className=\"order-header__title\"\n title={translations.title}\n size=\"large\"\n divider={false}\n >\n {customerName ? translations.title : translations.defaultTitle}\n </Header>\n\n <p className=\"order-header__order\">{translations.order}</p>\n\n {onSignUpClick && (\n <div className=\"order-header-create-account\">\n <p className=\"order-header-create-account__message\">\n {translations.createAccountMessage}\n </p>\n\n <Button\n data-testid=\"create-account-button\"\n className=\"order-header-create-account__button\"\n size=\"medium\"\n variant=\"secondary\"\n type=\"submit\"\n onClick={onSignUpClick}\n >\n {translations.createAccountButton}\n </Button>\n </div>\n )}\n </div>\n );\n};\n"],"names":["transformCustomerAddressInput","address","_a","attr","SvgOrderSuccess","props","React","useOrderHeader","orderData","handleEmailAvailability","handleSignUpClick","order","setOrder","useState","isAuthenticated","setIsAuthenticated","isEmailAvailable","setIsEmailAvailable","customerEmail","onSignUpClickHandler","shippingAddress","billingAddress","inputsDefaultValueSet","addressesData","customerShippingAddress","useEffect","event","events","authenticated","result","OrderHeader","jsx","OrderHeaderComponent","OrderHeaderSkeleton","customerName","orderNumber","onSignUpClick","translations","useText","Text","jsxs","Icon","OrderSuccess","Header","Button"],"mappings":"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","x_google_ignoreList":[1]}
@@ -1,3 +1,4 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsx as l,jsxs as h}from"@dropins/tools/preact-jsx-runtime.js";import{classes as q}from"@dropins/tools/lib.js";import{Card as R,Header as S}from"@dropins/tools/components.js";import{useState as g,useEffect as T,useMemo as b}from"@dropins/tools/preact-hooks.js";import"../chunks/ShippingStatusCard.js";import"@dropins/tools/preact-compat.js";import{u as x}from"../chunks/useGetStoreConfig.js";import{Fragment as N}from"@dropins/tools/preact.js";import{events as Q}from"@dropins/tools/event-bus.js";import{s as k}from"../chunks/setTaxStatus.js";import{a as G}from"../chunks/OrderLoaders.js";import{C as M}from"../chunks/CartSummaryItem.js";import{useText as v}from"@dropins/tools/i18n.js";import"../chunks/getStoreConfig.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";const w=({orderData:s})=>{const[i,o]=g(!0),[d,e]=g(s);return T(()=>{const t=Q.on("order/data",r=>{e(r),o(!1)},{eager:!0});return()=>{t==null||t.off()}},[]),{loading:i,order:d}},Z=({slots:s,className:i,orderData:o,withHeader:d,showConfigurableOptions:e,routeProductDetails:t})=>{const r=x(),{loading:c,order:p}=w({orderData:o});return l("div",{className:q(["order-order-product-list",i]),children:l(j,{slots:s,loading:c,placeholderImage:(r==null?void 0:r.baseMediaUrl)??"",taxConfig:k((r==null?void 0:r.shoppingOrderDisplayPrice)??0),order:p,withHeader:d,showConfigurableOptions:e,routeProductDetails:t})})},I=s=>{const i=(s==null?void 0:s.items)??[],o=i.filter(t=>(t==null?void 0:t.eligibleForReturn)&&(t==null?void 0:t.quantityReturnRequested)).map(t=>({...t,totalQuantity:t.quantityReturnRequested})),d=new Map(o.map(t=>[t.id,t])),e=i.map(t=>{const r=d.get(t==null?void 0:t.id);if(r){const c=t.totalQuantity-r.quantityReturnRequested;return c===0?null:{...t,totalQuantity:c}}return t}).filter(t=>t!==null);return{returnedList:o,canceledItems:e==null?void 0:e.filter(t=>t.quantityCanceled),nonCanceledItems:e==null?void 0:e.filter(t=>!t.quantityCanceled)}},j=({slots:s,placeholderImage:i,loading:o,taxConfig:d,order:e=null,withHeader:t=!0,showConfigurableOptions:r,routeProductDetails:c})=>{const p=!!(e!=null&&e.returnNumber),m=v({cancelled:"Order.OrderProductListContent.cancelledTitle",allOrders:"Order.OrderProductListContent.allOrdersTitle",returned:"Order.OrderProductListContent.returnedTitle",refunded:"Order.OrderProductListContent.refundedTitle",sender:"Order.OrderProductListContent.GiftCard.sender",recipient:"Order.OrderProductListContent.GiftCard.recipient",message:"Order.OrderProductListContent.GiftCard.message",outOfStock:"Order.OrderProductListContent.stockStatus.outOfStock",downloadableCount:"Order.OrderProductListContent.downloadableCount"}),y=b(()=>{var f,O;if(!e)return[];if(!p){const{returnedList:u,canceledItems:n,nonCanceledItems:C}=I(e);return[{type:"returned",list:u,title:m.returned},{type:"cancelled",list:n,title:m.cancelled},{type:"allItems",list:C,title:m.allOrders}].filter(L=>{var P;return((P=L==null?void 0:L.list)==null?void 0:P.length)>0})}return[{type:"returned",list:((O=(f=e.returns.find(u=>u.returnNumber===(e==null?void 0:e.returnNumber)))==null?void 0:f.items)==null?void 0:O.map(u=>({...u,totalQuantity:u.requestQuantity})))??[],title:m.returned}]},[e,p,m]);return e?y.every(a=>a.list.length===0)?null:l(R,{variant:"secondary",className:"order-order-product-list-content",children:y.map((a,f)=>{var u;const O=a.list.filter(n=>n!==null).reduce((n,{totalQuantity:C})=>C+n,0);return h(N,{children:[t?l(S,{title:`${a.title} (${O})`}):null,l("ul",{className:"order-order-product-list-content__items",children:(u=a.list)==null?void 0:u.filter(n=>n!==null).map(n=>l("li",{"data-testid":"order-product-list-content-item",children:l(M,{slots:s,placeholderImage:i,loading:o,product:n,itemType:a.type,taxConfig:d,translations:m,showConfigurableOptions:r,routeProductDetails:c})},n.id))})]},f)})}):l(G,{})};export{Z as OrderProductList,Z as default};
4
+ //# sourceMappingURL=OrderProductList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrderProductList.js","sources":["/@dropins/storefront-order/src/hooks/containers/useOrderProductList.tsx","/@dropins/storefront-order/src/containers/OrderProductList/OrderProductList.tsx","/@dropins/storefront-order/src/lib/categorizeProducts.ts","/@dropins/storefront-order/src/components/OrderProductListContent/OrderProductListContent.tsx"],"sourcesContent":["/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel } from '@/order/data/models';\nimport { UseOrderProductListProps } from '@/order/types';\nimport { events } from '@adobe-commerce/event-bus';\nimport { useEffect, useState } from 'preact/hooks';\n\nexport const useOrderProductList = ({\n orderData,\n}: UseOrderProductListProps) => {\n const [loading, setLoading] = useState(true);\n const [order, setOrder] = useState(orderData);\n\n useEffect(() => {\n const event = events.on(\n 'order/data',\n (order: OrderDataModel) => {\n setOrder(order);\n setLoading(false);\n },\n { eager: true }\n );\n\n return () => {\n event?.off();\n };\n }, []);\n\n return { loading, order };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderProductListContent } from '@/order/components';\nimport { useGetStoreConfig, useOrderProductList } from '@/order/hooks';\nimport { setTaxStatus } from '@/order/lib/setTaxStatus';\nimport { OrderProductListProps } from '@/order/types';\nimport { classes, Container } from '@adobe-commerce/elsie/lib';\n\nexport const OrderProductList: Container<OrderProductListProps> = ({\n slots,\n className,\n orderData,\n withHeader,\n showConfigurableOptions,\n routeProductDetails,\n}) => {\n const storeConfig = useGetStoreConfig();\n const { loading, order } = useOrderProductList({\n orderData,\n });\n\n return (\n <div className={classes(['order-order-product-list', className])}>\n <OrderProductListContent\n slots={slots}\n loading={loading}\n placeholderImage={storeConfig?.baseMediaUrl ?? ''}\n taxConfig={setTaxStatus(storeConfig?.shoppingOrderDisplayPrice ?? 0)}\n order={order}\n withHeader={withHeader}\n showConfigurableOptions={showConfigurableOptions}\n routeProductDetails={routeProductDetails}\n />\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel, OrderItemModel } from '../data/models';\n\nexport const categorizeProducts = (order: OrderDataModel) => {\n const itemsList = order?.items ?? [];\n const returnedList = itemsList\n .filter((el) => el?.eligibleForReturn && el?.quantityReturnRequested)\n .map((item) => ({\n ...item,\n totalQuantity: item.quantityReturnRequested,\n }));\n\n const returnedListMap = new Map(returnedList.map((item) => [item.id, item]));\n const modifyOrder = itemsList\n .map((mainItem) => {\n const matchingItem = returnedListMap.get(mainItem?.id);\n\n if (matchingItem) {\n const quantityResult =\n mainItem.totalQuantity - matchingItem.quantityReturnRequested;\n\n if (quantityResult === 0) return null;\n\n return {\n ...mainItem,\n totalQuantity: quantityResult,\n };\n }\n\n return mainItem;\n })\n .filter((item): item is OrderItemModel => item !== null);\n\n return {\n returnedList,\n canceledItems: modifyOrder?.filter((element) => element.quantityCanceled),\n nonCanceledItems: modifyOrder?.filter(\n (element) => !element.quantityCanceled\n ),\n };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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, Fragment } from 'preact';\nimport { OrderProductListContentProps } from '@/order/types';\nimport { Card, Header } from '@adobe-commerce/elsie/components';\nimport { useMemo } from 'preact/hooks';\nimport { CartSummaryItem, OrderProductListSkeleton } from '@/order/components';\nimport { useText } from '@adobe-commerce/elsie/i18n';\nimport { OrderItemModel } from '@/order/data/models';\nimport '@/order/components/OrderProductListContent/OrderProductListContent.css';\nimport { categorizeProducts } from '@/order/lib/categorizeProducts';\n\nexport const OrderProductListContent: FunctionComponent<\n OrderProductListContentProps\n> = ({\n slots,\n placeholderImage,\n loading,\n taxConfig,\n order = null,\n withHeader = true,\n showConfigurableOptions,\n routeProductDetails,\n}) => {\n const isReturnPage = !!order?.returnNumber;\n\n const translations = useText({\n cancelled: 'Order.OrderProductListContent.cancelledTitle',\n allOrders: 'Order.OrderProductListContent.allOrdersTitle',\n returned: 'Order.OrderProductListContent.returnedTitle',\n refunded: 'Order.OrderProductListContent.refundedTitle',\n sender: 'Order.OrderProductListContent.GiftCard.sender',\n recipient: 'Order.OrderProductListContent.GiftCard.recipient',\n message: 'Order.OrderProductListContent.GiftCard.message',\n outOfStock: 'Order.OrderProductListContent.stockStatus.outOfStock',\n downloadableCount: 'Order.OrderProductListContent.downloadableCount',\n });\n\n const itemsList = useMemo(() => {\n if (!order) return [];\n\n if (!isReturnPage) {\n const { returnedList, canceledItems, nonCanceledItems } =\n categorizeProducts(order);\n\n return [\n {\n type: 'returned',\n list: returnedList,\n title: translations.returned,\n },\n {\n type: 'cancelled',\n list: canceledItems,\n title: translations.cancelled,\n },\n {\n type: 'allItems',\n list: nonCanceledItems,\n title: translations.allOrders,\n },\n ].filter((section) => section?.list?.length > 0);\n }\n\n const returnItems =\n order.returns\n .find((returnData) => returnData.returnNumber === order?.returnNumber)\n ?.items?.map((el) => ({ ...el, totalQuantity: el.requestQuantity })) ??\n [];\n\n return [\n {\n type: 'returned',\n list: returnItems,\n title: translations.returned,\n },\n ];\n }, [order, isReturnPage, translations]);\n\n if (!order) return <OrderProductListSkeleton />;\n\n if (itemsList.every((el) => el.list.length === 0)) return null;\n\n return (\n <Card variant=\"secondary\" className={'order-order-product-list-content'}>\n {itemsList.map((item, index) => {\n const headerTotalProductValue = item.list\n .filter((entry): entry is OrderItemModel => entry !== null)\n .reduce(\n (accumulator, { totalQuantity }) => totalQuantity + accumulator,\n 0\n );\n\n return (\n <Fragment key={index}>\n {withHeader ? (\n <Header title={`${item.title} (${headerTotalProductValue})`} />\n ) : null}\n <ul className=\"order-order-product-list-content__items\">\n {item.list\n ?.filter(\n (product): product is OrderItemModel => product !== null\n )\n .map((product) => (\n <li\n data-testid=\"order-product-list-content-item\"\n key={product.id}\n >\n <CartSummaryItem\n slots={slots}\n placeholderImage={placeholderImage}\n loading={loading}\n product={product}\n itemType={item.type}\n taxConfig={taxConfig}\n translations={translations}\n showConfigurableOptions={showConfigurableOptions}\n routeProductDetails={routeProductDetails}\n />\n </li>\n ))}\n </ul>\n </Fragment>\n );\n })}\n </Card>\n );\n};\n"],"names":["useOrderProductList","orderData","loading","setLoading","useState","order","setOrder","useEffect","event","events","OrderProductList","slots","className","withHeader","showConfigurableOptions","routeProductDetails","storeConfig","useGetStoreConfig","jsx","classes","OrderProductListContent","setTaxStatus","categorizeProducts","itemsList","returnedList","el","item","returnedListMap","modifyOrder","mainItem","matchingItem","quantityResult","element","placeholderImage","taxConfig","isReturnPage","translations","useText","useMemo","canceledItems","nonCanceledItems","section","_a","_b","returnData","Card","index","headerTotalProductValue","entry","accumulator","totalQuantity","Fragment","Header","product","CartSummaryItem","OrderProductListSkeleton"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsx as d}from"@dropins/tools/preact-jsx-runtime.js";import{classes as L}from"@dropins/tools/lib.js";import"@dropins/tools/components.js";import{useState as p,useEffect as O}from"@dropins/tools/preact-hooks.js";import"../chunks/ShippingStatusCard.js";import"@dropins/tools/preact-compat.js";import{u as b}from"../chunks/useGetStoreConfig.js";import"@dropins/tools/preact.js";import{events as g}from"@dropins/tools/event-bus.js";import{u as w}from"../chunks/useIsMobile.js";import{R as N}from"../chunks/ReturnsListContent.js";import{useText as $}from"@dropins/tools/i18n.js";import"../chunks/getStoreConfig.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";import"../chunks/returnOrdersHelper.js";import"../chunks/getFormValues.js";import"../chunks/OrderLoaders.js";import"../chunks/capitalizeFirst.js";const h=({orderData:s})=>{const[i,n]=p(s),[o,u]=p([]);return O(()=>{const t=g.on("order/data",e=>{n(e),u(e==null?void 0:e.returns)},{eager:!0});return()=>{t==null||t.off()}},[]),{order:i,orderReturns:o}},B=({slots:s,className:i,orderData:n,withHeader:o,withThumbnails:u,routeReturnDetails:t,routeProductDetails:e,routeTracking:l})=>{const m=b(),{orderReturns:a}=h({orderData:n}),f=w(),r="fullSizeView",c=(m==null?void 0:m.baseMediaUrl)??"",R=$({minifiedViewTitle:`Order.Returns.${r}.returnsList.minifiedViewTitle`,ariaLabelLink:`Order.Returns.${r}.returnsList.ariaLabelLink`,emptyOrdersListMessage:`Order.Returns.${r}.returnsList.emptyOrdersListMessage`,orderNumber:`Order.Returns.${r}.returnsList.orderNumber`,returnNumber:`Order.Returns.${r}.returnsList.returnNumber`,carrier:`Order.Returns.${r}.returnsList.carrier`});return d("div",{className:L(["order-order-returns",i]),children:a.length?d(N,{placeholderImage:c,pageInfo:{pageSize:1,totalPages:1,currentPage:1},minifiedViewKey:r,slots:s,isMobile:f,withOrderNumber:!1,withReturnNumber:!0,orderReturns:a,translations:R,withHeader:o,withThumbnails:u,minifiedView:!1,routeReturnDetails:t,routeProductDetails:e,routeTracking:l,loading:!1}):null})};export{B as OrderReturns,B as default};
4
+ //# sourceMappingURL=OrderReturns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrderReturns.js","sources":["/@dropins/storefront-order/src/hooks/containers/useOrderReturns.tsx","/@dropins/storefront-order/src/containers/OrderReturns/OrderReturns.tsx"],"sourcesContent":["/********************************************************************\n * ADOBE CONFIDENTIAL\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 { OrderDataModel, OrdersReturnPropsModel } from '@/order/data/models';\nimport { UseOrderReturnsProps } from '@/order/types';\nimport { events } from '@adobe-commerce/event-bus';\nimport { useState, useEffect } from 'preact/hooks';\n\nexport const useOrderReturns = ({ orderData }: UseOrderReturnsProps) => {\n const [order, setOrder] = useState(orderData);\n const [orderReturns, setOrderReturns] = useState<\n OrdersReturnPropsModel[] | []\n >([]);\n\n useEffect(() => {\n const event = events.on(\n 'order/data',\n (order: OrderDataModel) => {\n setOrder(order);\n setOrderReturns(order?.returns);\n },\n { eager: true }\n );\n return () => {\n event?.off();\n };\n }, []);\n\n return { order, orderReturns };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { ReturnsListContent } from '@/order/components';\nimport { useOrderReturns } from '@/order/hooks/containers/useOrderReturns';\nimport { OrderReturnsProps } from '@/order/types';\nimport { classes, Container } from '@adobe-commerce/elsie/lib';\nimport { useText } from '@adobe-commerce/elsie/i18n';\nimport { useGetStoreConfig, useIsMobile } from '@/order/hooks';\n\nexport const OrderReturns: Container<OrderReturnsProps> = ({\n slots,\n className,\n orderData,\n withHeader,\n withThumbnails,\n routeReturnDetails,\n routeProductDetails,\n routeTracking,\n}) => {\n const storeConfig = useGetStoreConfig();\n const { orderReturns } = useOrderReturns({ orderData });\n const isMobile = useIsMobile();\n\n const minifiedViewKey = 'fullSizeView';\n const placeholderImage = storeConfig?.baseMediaUrl ?? '';\n\n const translations = useText({\n minifiedViewTitle: `Order.Returns.${minifiedViewKey}.returnsList.minifiedViewTitle`,\n ariaLabelLink: `Order.Returns.${minifiedViewKey}.returnsList.ariaLabelLink`,\n emptyOrdersListMessage: `Order.Returns.${minifiedViewKey}.returnsList.emptyOrdersListMessage`,\n orderNumber: `Order.Returns.${minifiedViewKey}.returnsList.orderNumber`,\n returnNumber: `Order.Returns.${minifiedViewKey}.returnsList.returnNumber`,\n carrier: `Order.Returns.${minifiedViewKey}.returnsList.carrier`,\n });\n\n return (\n <div className={classes(['order-order-returns', className])}>\n {orderReturns.length ? (\n <ReturnsListContent\n placeholderImage={placeholderImage}\n pageInfo={{\n pageSize: 1,\n totalPages: 1,\n currentPage: 1,\n }}\n minifiedViewKey={minifiedViewKey}\n slots={slots}\n isMobile={isMobile}\n withOrderNumber={false}\n withReturnNumber={true}\n orderReturns={orderReturns}\n translations={translations}\n withHeader={withHeader}\n withThumbnails={withThumbnails}\n minifiedView={false}\n routeReturnDetails={routeReturnDetails}\n routeProductDetails={routeProductDetails}\n routeTracking={routeTracking}\n loading={false}\n />\n ) : null}\n </div>\n );\n};\n"],"names":["useOrderReturns","orderData","order","setOrder","useState","orderReturns","setOrderReturns","useEffect","event","events","OrderReturns","slots","className","withHeader","withThumbnails","routeReturnDetails","routeProductDetails","routeTracking","storeConfig","useGetStoreConfig","isMobile","useIsMobile","minifiedViewKey","placeholderImage","translations","useText","jsx","classes","ReturnsListContent"],"mappings":"q0BAqBO,MAAMA,EAAkB,CAAC,CAAE,UAAAC,KAAsC,CACtE,KAAM,CAACC,EAAOC,CAAQ,EAAIC,EAASH,CAAS,EACtC,CAACI,EAAcC,CAAe,EAAIF,EAEtC,CAAA,CAAE,EAEJ,OAAAG,EAAU,IAAM,CACd,MAAMC,EAAQC,EAAO,GACnB,aACCP,GAA0B,CACzBC,EAASD,CAAK,EACdI,EAAgBJ,GAAAA,YAAAA,EAAO,OAAO,CAChC,EACA,CAAE,MAAO,EAAK,CAChB,EACA,MAAO,IAAM,CACXM,GAAA,MAAAA,EAAO,KACT,CACF,EAAG,EAAE,EAEE,CAAE,MAAAN,EAAO,aAAAG,CAAa,CAC/B,ECnBaK,EAA6C,CAAC,CACzD,MAAAC,EACA,UAAAC,EACA,UAAAX,EACA,WAAAY,EACA,eAAAC,EACA,mBAAAC,EACA,oBAAAC,EACA,cAAAC,CACF,IAAM,CACJ,MAAMC,EAAcC,EAAkB,EAChC,CAAE,aAAAd,CAAa,EAAIL,EAAgB,CAAE,UAAAC,EAAW,EAChDmB,EAAWC,EAAY,EAEvBC,EAAkB,eAClBC,GAAmBL,GAAA,YAAAA,EAAa,eAAgB,GAEhDM,EAAeC,EAAQ,CAC3B,kBAAmB,iBAAiBH,CAAe,iCACnD,cAAe,iBAAiBA,CAAe,6BAC/C,uBAAwB,iBAAiBA,CAAe,sCACxD,YAAa,iBAAiBA,CAAe,2BAC7C,aAAc,iBAAiBA,CAAe,4BAC9C,QAAS,iBAAiBA,CAAe,sBAAA,CAC1C,EAGC,OAAAI,EAAC,MAAI,CAAA,UAAWC,EAAQ,CAAC,sBAAuBf,CAAS,CAAC,EACvD,SAAAP,EAAa,OACZqB,EAACE,EAAA,CACC,iBAAAL,EACA,SAAU,CACR,SAAU,EACV,WAAY,EACZ,YAAa,CACf,EACA,gBAAAD,EACA,MAAAX,EACA,SAAAS,EACA,gBAAiB,GACjB,iBAAkB,GAClB,aAAAf,EACA,aAAAmB,EACA,WAAAX,EACA,eAAAC,EACA,aAAc,GACd,mBAAAC,EACA,oBAAAC,EACA,cAAAC,EACA,QAAS,EAAA,GAET,IACN,CAAA,CAEJ"}
@@ -1,3 +1,4 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsx as t,jsxs as q}from"@dropins/tools/preact-jsx-runtime.js";import{classes as L}from"@dropins/tools/lib.js";import{Card as M,InLineAlert as V,Icon as k,Button as C}from"@dropins/tools/components.js";import{useState as v,useCallback as F,useEffect as _,useMemo as D}from"@dropins/tools/preact-hooks.js";import{F as U}from"../chunks/ShippingStatusCard.js";import*as w from"@dropins/tools/preact-compat.js";import"@dropins/tools/preact.js";import{events as N}from"@dropins/tools/event-bus.js";import{F as g,g as H}from"../chunks/getFormValues.js";import{r as f}from"../chunks/redirectTo.js";import{g as E}from"../chunks/getQueryParam.js";import{g as x,a as B}from"../chunks/getGuestOrder.js";import{useText as z,Text as T}from"@dropins/tools/i18n.js";import"../chunks/network-error.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";import"../fragments.js";import"../chunks/initialize.js";const X=i=>w.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...i},w.createElement("path",{vectorEffect:"non-scaling-stroke",fillRule:"evenodd",clipRule:"evenodd",d:"M1 20.8953L12.1922 1.5L23.395 20.8953H1ZM13.0278 13.9638L13.25 10.0377V9H11.25V10.0377L11.4722 13.9638H13.0278ZM11.2994 16V17.7509H13.2253V16H11.2994Z",fill:"currentColor"})),Z=({onError:i,isAuth:r,renderSignIn:a,routeCustomerOrder:s,routeGuestOrder:c})=>{const[b,u]=v({text:"",type:"success"}),[y,p]=v(!1),m=z({invalidSearch:"Order.Errors.invalidSearch",email:"Order.OrderSearchForm.email",lastname:"Order.OrderSearchForm.lastname",number:"Order.OrderSearchForm.orderNumber"}),R=F(async e=>{const l=E("orderRef"),o=l&&l.length>20;if(!e&&!l||!(e!=null&&e.number)&&!(e!=null&&e.token)&&!l)return null;if(r){const d=await x();(d==null?void 0:d.email)===e.email?f(s,{orderRef:e==null?void 0:e.number}):o||f(c,{orderRef:e.token})}else o||f(c,{orderRef:e==null?void 0:e.token})},[r,s,c]);_(()=>{const e=N.on("order/data",l=>{R(l)},{eager:!0});return()=>{e==null||e.off()}},[R]),_(()=>{const e=E("orderRef"),l=e&&e.length>20?e:null;e&&(l?f(c,{orderRef:e}):r?f(s,{orderRef:e}):a==null||a({render:!0,formValues:{number:e}}))},[r,s,c,a]);const O=D(()=>[{entityType:"CUSTOMER_ADDRESS",is_unique:!1,label:m.email,options:[],defaultValue:"",fieldType:g.TEXT,className:"",required:!0,orderNumber:1,name:"email",id:"email",code:"email",isUnique:!1},{entityType:"CUSTOMER_ADDRESS",is_unique:!1,label:m.lastname,options:[],defaultValue:"",fieldType:g.TEXT,className:"",required:!0,orderNumber:2,name:"lastname",id:"lastname",code:"lastname",isUnique:!1},{entityType:"CUSTOMER_ADDRESS",is_unique:!1,label:m.number,options:[],defaultValue:"",fieldType:g.TEXT,className:"",required:!0,orderNumber:3,name:"number",id:"number",code:"number",isUnique:!1}],[m]);return{onSubmit:F(async(e,l)=>{if(!l)return null;p(!0);const o=H(e.target);await B(o).then(n=>{n||u({text:m.invalidSearch,type:"warning"}),N.emit("order/data",n)}).catch(async n=>{var S;let d=!0;i==null||i({error:n.message});const h=r?await x():{email:""};if((h==null?void 0:h.email)===(o==null?void 0:o.email)){f(s,{orderRef:o.number});return}d=a==null?void 0:a({render:h===null||((S=n==null?void 0:n.message)==null?void 0:S.includes("Please login to view the order.")),formValues:o}),d&&u({text:n.message,type:"warning"})}).finally(()=>{p(!1)})},[r,i,a,s,m.invalidSearch]),inLineAlert:b,loading:y,normalizeFieldsConfig:O}},me=({className:i,isAuth:r,renderSignIn:a,routeCustomerOrder:s,routeGuestOrder:c,onError:b})=>{const{onSubmit:u,loading:y,inLineAlert:p,normalizeFieldsConfig:m}=Z({onError:b,isAuth:r,renderSignIn:a,routeCustomerOrder:s,routeGuestOrder:c});return t("div",{className:L(["order-order-search",i]),children:t(j,{onSubmit:u,loading:y,inLineAlert:p,fieldsConfig:m})})},j=({onSubmit:i,loading:r,inLineAlert:a,fieldsConfig:s})=>q(M,{variant:"secondary",className:"order-order-search-form",children:[t("h2",{className:"order-order-search-form__title",children:t(T,{id:"Order.OrderSearchForm.title"})}),t("p",{children:t(T,{id:"Order.OrderSearchForm.description"})}),a.text?t(V,{"data-testid":"orderAlert",className:"order-order-search-form__alert",type:a.type,variant:"secondary",heading:a.text,icon:t(k,{source:X})}):null,t(U,{className:"order-order-search-form__wrapper",name:"orderSearchForm",loading:r,fieldsConfig:s,onSubmit:i,children:t("div",{className:"order-order-search-form__button-container",children:t(C,{className:"order-order-search-form__button",size:"medium",variant:"primary",type:"submit",disabled:r,children:t(T,{id:"Order.OrderSearchForm.button"})},"logIn")})})]});export{me as OrderSearch,me as default};
4
+ //# sourceMappingURL=OrderSearch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OrderSearch.js","sources":["../../node_modules/@adobe-commerce/elsie/src/icons/WarningFilled.svg","/@dropins/storefront-order/src/hooks/containers/useOrderSearch.tsx","/@dropins/storefront-order/src/containers/OrderSearch/OrderSearch.tsx","/@dropins/storefront-order/src/components/OrderSearchForm/OrderSearchForm.tsx"],"sourcesContent":["import * as React from \"react\";\nconst SvgWarningFilled = (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\", fillRule: \"evenodd\", clipRule: \"evenodd\", d: \"M1 20.8953L12.1922 1.5L23.395 20.8953H1ZM13.0278 13.9638L13.25 10.0377V9H11.25V10.0377L11.4722 13.9638H13.0278ZM11.2994 16V17.7509H13.2253V16H11.2994Z\", fill: \"currentColor\" }));\nexport default SvgWarningFilled;\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { useCallback, useEffect, useMemo, useState } from 'preact/hooks';\nimport {\n FieldEnumList,\n inLineAlertProps,\n useOrderSearchProps,\n} from '@/order/types';\nimport { getFormValues } from '@/order/lib/getFormValues';\nimport { getCustomer, getGuestOrder } from '@/order/api';\nimport { useText } from '@adobe-commerce/elsie/i18n';\nimport { events } from '@adobe-commerce/event-bus';\nimport { OrderDataModel } from '@/order/data/models';\nimport { redirectTo } from '@/order/lib/redirectTo';\nimport { getQueryParam } from '@/order/lib/getQueryParam';\n\nexport const useOrderSearch = ({\n onError,\n isAuth,\n renderSignIn,\n routeCustomerOrder,\n routeGuestOrder,\n}: useOrderSearchProps) => {\n const [inLineAlert, setInLineAlert] = useState<inLineAlertProps>({\n text: '',\n type: 'success',\n });\n const [loading, setLoading] = useState(false);\n\n const translations = useText({\n invalidSearch: 'Order.Errors.invalidSearch',\n email: 'Order.OrderSearchForm.email',\n lastname: 'Order.OrderSearchForm.lastname',\n number: 'Order.OrderSearchForm.orderNumber',\n });\n\n const orderSearchRedirect = useCallback(\n async (order: OrderDataModel) => {\n const orderRef = getQueryParam('orderRef');\n const isToken = orderRef && orderRef.length > 20;\n const dataIsEmpty =\n (!order && !orderRef) || (!order?.number && !order?.token && !orderRef);\n\n if (dataIsEmpty) return null;\n\n if (isAuth) {\n const customer = await getCustomer();\n\n if (customer?.email === order.email) {\n redirectTo(routeCustomerOrder, {\n orderRef: order?.number,\n });\n } else if (!isToken) {\n redirectTo(routeGuestOrder, { orderRef: order.token! });\n }\n } else if (!isToken) {\n redirectTo(routeGuestOrder, { orderRef: order?.token! });\n }\n },\n [isAuth, routeCustomerOrder, routeGuestOrder]\n );\n\n useEffect(() => {\n const event = events.on(\n 'order/data',\n (order: OrderDataModel) => {\n orderSearchRedirect(order);\n },\n { eager: true }\n );\n\n return () => {\n event?.off();\n };\n }, [orderSearchRedirect]);\n\n useEffect(() => {\n const orderRef = getQueryParam('orderRef');\n const isToken = orderRef && orderRef.length > 20 ? orderRef : null;\n\n if (!orderRef) return;\n\n if (isToken) {\n redirectTo(routeGuestOrder, { orderRef });\n } else if (isAuth) {\n redirectTo(routeCustomerOrder, { orderRef });\n } else {\n renderSignIn?.({ render: true, formValues: { number: orderRef } });\n }\n }, [isAuth, routeCustomerOrder, routeGuestOrder, renderSignIn]);\n\n const normalizeFieldsConfig = useMemo(() => {\n return [\n {\n entityType: 'CUSTOMER_ADDRESS',\n is_unique: false,\n label: translations.email,\n options: [],\n defaultValue: '',\n fieldType: FieldEnumList.TEXT,\n className: '',\n required: true,\n orderNumber: 1,\n name: 'email',\n id: 'email',\n code: 'email',\n isUnique: false,\n },\n {\n entityType: 'CUSTOMER_ADDRESS',\n is_unique: false,\n label: translations.lastname,\n options: [],\n defaultValue: '',\n fieldType: FieldEnumList.TEXT,\n className: '',\n required: true,\n orderNumber: 2,\n name: 'lastname',\n id: 'lastname',\n code: 'lastname',\n isUnique: false,\n },\n {\n entityType: 'CUSTOMER_ADDRESS',\n is_unique: false,\n label: translations.number,\n options: [],\n defaultValue: '',\n fieldType: FieldEnumList.TEXT,\n className: '',\n required: true,\n orderNumber: 3,\n name: 'number',\n id: 'number',\n code: 'number',\n isUnique: false,\n },\n ];\n }, [translations]);\n\n const onSubmit = useCallback(\n async (event: Event, valid: boolean) => {\n if (!valid) return null;\n\n setLoading(true);\n\n const formValues = getFormValues(event.target as HTMLFormElement);\n\n await getGuestOrder(formValues)\n .then((guestOrder) => {\n if (!guestOrder) {\n setInLineAlert({\n text: translations.invalidSearch,\n type: 'warning',\n });\n }\n\n events.emit('order/data', guestOrder as OrderDataModel);\n })\n .catch(async (error) => {\n let showErrorMessage: boolean | undefined = true;\n\n onError?.({\n error: error.message,\n });\n\n const customer = isAuth ? await getCustomer() : { email: '' };\n\n const isOrderBelongsToCustomer =\n customer?.email === formValues?.email;\n\n if (isOrderBelongsToCustomer) {\n redirectTo(routeCustomerOrder, { orderRef: formValues.number });\n\n return;\n }\n\n showErrorMessage = renderSignIn?.({\n render:\n customer === null ||\n error?.message?.includes('Please login to view the order.'),\n formValues,\n });\n\n if (showErrorMessage) {\n setInLineAlert({\n text: error.message,\n type: 'warning',\n });\n }\n })\n .finally(() => {\n setLoading(false);\n });\n },\n [\n isAuth,\n onError,\n renderSignIn,\n routeCustomerOrder,\n translations.invalidSearch,\n ]\n );\n\n return { onSubmit, inLineAlert, loading, normalizeFieldsConfig };\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { classes, Container } from '@adobe-commerce/elsie/lib';\nimport { OrderSearchForm } from '@/order/components';\nimport { useOrderSearch } from '@/order/hooks';\nimport { FieldsProps, OrderSearchProps } from '@/order/types';\n\nexport const OrderSearch: Container<OrderSearchProps> = ({\n className,\n isAuth,\n renderSignIn,\n routeCustomerOrder,\n routeGuestOrder,\n onError,\n}) => {\n const { onSubmit, loading, inLineAlert, normalizeFieldsConfig } =\n useOrderSearch({\n onError,\n isAuth,\n renderSignIn,\n routeCustomerOrder,\n routeGuestOrder,\n });\n\n return (\n <div className={classes(['order-order-search', className])}>\n <OrderSearchForm\n onSubmit={onSubmit}\n loading={loading}\n inLineAlert={inLineAlert}\n fieldsConfig={normalizeFieldsConfig as FieldsProps[]}\n />\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\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 { Button, Card, Icon, InLineAlert } from '@adobe-commerce/elsie/components';\nimport { Text } from '@adobe-commerce/elsie/i18n';\nimport { WarningFilled } from '@adobe-commerce/elsie/icons';\nimport { FunctionComponent } from 'preact';\nimport { OrderSearchFormProps } from '@/order/types';\nimport { Form } from '@/order/components';\nimport '@/order/components/OrderSearchForm/OrderSearchForm.css';\n\nexport const OrderSearchForm: FunctionComponent<OrderSearchFormProps> = ({\n onSubmit,\n loading,\n inLineAlert,\n fieldsConfig,\n}) => {\n return (\n <Card variant={'secondary'} className={'order-order-search-form'}>\n <h2 className={'order-order-search-form__title'}>\n <Text id={'Order.OrderSearchForm.title'} />\n </h2>\n\n <p>\n <Text id={'Order.OrderSearchForm.description'} />\n </p>\n {inLineAlert.text ? (\n <InLineAlert\n data-testid=\"orderAlert\"\n className={'order-order-search-form__alert'}\n type={inLineAlert.type}\n variant=\"secondary\"\n heading={inLineAlert.text}\n icon={<Icon source={WarningFilled} />}\n />\n ) : null}\n\n <Form\n className={'order-order-search-form__wrapper'}\n name=\"orderSearchForm\"\n loading={loading}\n fieldsConfig={fieldsConfig}\n onSubmit={onSubmit}\n >\n <div className=\"order-order-search-form__button-container\">\n <Button\n className={'order-order-search-form__button'}\n size={'medium'}\n variant={'primary'}\n key={'logIn'}\n type={'submit'}\n disabled={loading}\n >\n <Text id={'Order.OrderSearchForm.button'} />\n </Button>\n </div>\n </Form>\n </Card>\n );\n};\n"],"names":["SvgWarningFilled","props","React","useOrderSearch","onError","isAuth","renderSignIn","routeCustomerOrder","routeGuestOrder","inLineAlert","setInLineAlert","useState","loading","setLoading","translations","useText","orderSearchRedirect","useCallback","order","orderRef","getQueryParam","isToken","customer","getCustomer","redirectTo","useEffect","event","events","normalizeFieldsConfig","useMemo","FieldEnumList","valid","formValues","getFormValues","getGuestOrder","guestOrder","error","showErrorMessage","_a","OrderSearch","className","onSubmit","jsx","classes","OrderSearchForm","fieldsConfig","jsxs","Card","Text","InLineAlert","Icon","WarningFilled","Form","Button"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,3 +1,4 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
3
  import{jsx as s,Fragment as S,jsxs as A}from"@dropins/tools/preact-jsx-runtime.js";import{Slot as $,classes as _}from"@dropins/tools/lib.js";import{Button as P,InLineAlert as B,Modal as V,Card as K,Header as Q}from"@dropins/tools/components.js";import{useState as C,useEffect as k,useCallback as T}from"@dropins/tools/preact-hooks.js";import"../chunks/ShippingStatusCard.js";import{useMemo as J}from"@dropins/tools/preact-compat.js";import{u as G}from"../chunks/useGetStoreConfig.js";import"@dropins/tools/preact.js";import{events as I}from"@dropins/tools/event-bus.js";import{c as X,a as Y,r as Z}from"../chunks/confirmCancelOrder.js";import{useText as O,Text as M}from"@dropins/tools/i18n.js";import{C as D}from"../chunks/OrderLoaders.js";import{f as ee}from"../chunks/returnOrdersHelper.js";import{f as w}from"../chunks/formatDateToLocale.js";import{c as b}from"../chunks/capitalizeFirst.js";import{r as U}from"../chunks/redirectTo.js";import{O as te}from"../chunks/OrderCancelForm.js";import"../chunks/getStoreConfig.js";import"../chunks/fetch-graphql.js";import"@dropins/tools/fetch-graphql.js";import"../chunks/network-error.js";import"../fragments.js";import"../chunks/initialize.js";import"../chunks/getFormValues.js";import"../chunks/requestGuestOrderCancel.js";var y=(t=>(t.CANCEL="CANCEL",t.RETURN="RETURN",t.REORDER="REORDER",t))(y||{});const re=({className:t,orderData:e,slots:n,routeCreateReturn:r,routeOnSuccess:u,onError:i})=>{const d=O({cancel:"Order.OrderStatusContent.actions.cancel",createReturn:"Order.OrderStatusContent.actions.createReturn",createAnotherReturn:"Order.OrderStatusContent.actions.createAnotherReturn",reorder:"Order.OrderStatusContent.actions.reorder"}),l=J(()=>{const c=e==null?void 0:e.availableActions,o=!!(c!=null&&c.length),a=!!(e!=null&&e.returnNumber),m=()=>{U(r,{},e)};return s(S,{children:n!=null&&n.OrderActions?s($,{"data-testid":"OrderActionsSlot",name:"OrderCanceledActions",slot:n==null?void 0:n.OrderActions,context:e}):s("div",{"data-testid":"availableActionsList",className:_(["order-order-actions__wrapper",["order-order-actions__wrapper--empty",!o]]),children:c==null?void 0:c.map(p=>{switch(p){case y.CANCEL:return s(S,{children:a?null:s(ce,{orderRef:(e==null?void 0:e.token)||(e==null?void 0:e.id)})});case y.RETURN:return s(P,{variant:"secondary",onClick:m,children:a?d.createAnotherReturn:d.createReturn});case y.REORDER:return s(S,{children:a?null:s(ie,{orderData:e,onError:i,routeOnSuccess:u,children:d.reorder})})}})})})},[i,e,u,r,n,d]);return s("div",{className:_(["order-order-actions",t]),children:l})},ne=({orderData:t})=>{const[e,n]=C(t),[r,u]=C(t==null?void 0:t.status);return k(()=>{const i=I.on("order/data",d=>{n(d),u(d.status)},{eager:!0});return()=>{i==null||i.off()}},[]),{orderStatus:r,order:e}},H=t=>{const e=new URL(window.location.href);t.forEach(n=>{e.searchParams.has(n)&&e.searchParams.delete(n)}),window.history.replaceState({},document.title,e.toString())},se=({enableOrderCancellation:t})=>{const e=O({cancelOrderHeading:"Order.OrderStatusContent.actions.cancel",confirmGuestReturnHeading:"Order.OrderStatusContent.actions.confirmGuestReturn",orderCancelled:"Order.OrderStatusContent.orderCanceled.message",guestRequestReturnMessage:"Order.OrderStatusContent.actions.confirmGuestReturnMessage"}),[n,r]=C(!1),[u,i]=C(!1),[d,l]=C({heading:"",text:"",status:void 0}),c=T(()=>{r(!0),H(["order_id","confirmation_key","action"])},[]),o=T((a,m,p)=>{l({heading:a,text:m,status:p}),H(["action"])},[]);return k(()=>{const a=new URLSearchParams(window.location.search),m=a.get("order_id")??"",p=a.get("confirmation_key")??"",g=a.get("action")??"";u||!m||!p||!g||(t&&g==="cancel"&&(i(!0),X(m,p).then(()=>{l({heading:e.cancelOrderHeading,text:e.orderCancelled,status:"success"})}).catch(h=>{l({heading:e.cancelOrderHeading,text:h.message,status:"warning"})})),g==="return"&&(i(!0),Y(m,p).then(()=>{l({heading:e.confirmGuestReturnHeading,text:e.guestRequestReturnMessage,status:"success"})}).catch(h=>{l({heading:e.confirmGuestReturnHeading,text:h.message,status:"warning"})})))},[t,e,o,u]),{orderActionStatus:d,isDismissed:n,onDismiss:c}},be=({slots:t,orderData:e,className:n,statusTitle:r,status:u,routeCreateReturn:i,onError:d,routeOnSuccess:l})=>{const{orderStatus:c,order:o}=ne({orderData:e}),a=G(),{orderActionStatus:m,isDismissed:p,onDismiss:g}=se({enableOrderCancellation:a==null?void 0:a.orderCancellationEnabled});return A("div",{className:_(["order-order-status",n]),children:[!p&&(m==null?void 0:m.status)!==void 0?s(B,{style:{marginBottom:"1rem"},heading:m.heading,onDismiss:g,description:m.text,type:m.status}):null,o?s(oe,{title:r,status:u||c,slots:t,orderData:o,routeCreateReturn:i,onError:d,routeOnSuccess:l}):s(D,{withCard:!1})]})},ce=({orderRef:t})=>{const[e,n]=C(!1),r=()=>{n(!0)},u=()=>{n(!1)},i=G(),d=(i==null?void 0:i.orderCancellationReasons)??[],l=c=>c.map((o,a)=>({text:o==null?void 0:o.description,value:a.toString()}));return I.on("order/data",c=>{const o=String(c.status).toLocaleLowerCase();(o==="guest order cancellation requested"||o==="canceled")&&u()}),A(S,{children:[s(P,{variant:"secondary",onClick:r,"data-testid":"cancel-button",children:s(M,{id:"Order.OrderStatusContent.actions.cancel"})}),e&&s(V,{centered:!0,size:"medium",onClose:u,className:"order-order-cancel__modal",title:s("h2",{className:"order-order-cancel__title",children:s(M,{id:"Order.OrderCancelForm.title"})}),"data-testid":"order-cancellation-reasons-modal",children:s(te,{orderRef:t,cancelReasons:l(d)})})]})},N={pending:"orderPending",shiping:"orderShipped",complete:"orderComplete",processing:"orderProcessing","on hold":"orderOnHold",canceled:"orderCanceled","suspected fraud":"orderSuspectedFraud","payment Review":"orderPaymentReview","order received":"orderReceived","guest order cancellation requested":"guestOrderCancellationRequested","pending payment":"orderPendingPayment",rejected:"orderRejected",authorized:"orderAuthorized","paypal canceled reversal":"orderPaypalCanceledReversal","pending paypal":"orderPendingPaypal","paypal reversed":"orderPaypalReversed",closed:"orderClosed"},oe=({slots:t,title:e,status:n,orderData:r,routeCreateReturn:u,onError:i,routeOnSuccess:d})=>{var x,E,L;const l=!!(r!=null&&r.returnNumber),c=String(n).toLocaleLowerCase(),o=(x=r==null?void 0:r.returns)==null?void 0:x[0],a=(o==null?void 0:o.returnStatus)??"",m=(o==null?void 0:o.createdReturnAt)??"",p=O({message:"Order.OrderStatusContent.orderPlaceholder.message",messageWithoutDate:"Order.OrderStatusContent.orderPlaceholder.messageWithoutDate"}),g=O(`Order.OrderStatusContent.${N[c]}.title`),h=O(`Order.OrderStatusContent.${N[c]}.message`),R=O(`Order.OrderStatusContent.${N[c]}.messageWithoutDate`),f=O({title:`Order.OrderStatusContent.returnStatus.${ee(a)}`,returnMessage:"Order.OrderStatusContent.returnMessage"});if(!n)return s("div",{});const q=g!=null&&g.title?g:{title:b(c)},v=h!=null&&h.message?h:p,F=R!=null&&R.messageWithoutDate?R:p,W=r!=null&&r.orderStatusChangeDate?v==null?void 0:v.message.replace("{DATE}",w(r==null?void 0:r.orderStatusChangeDate)):F.messageWithoutDate,j=((L=(E=f==null?void 0:f.returnMessage)==null?void 0:E.replace("{ORDER_CREATE_DATE}",w(r==null?void 0:r.orderDate)))==null?void 0:L.replace("{RETURN_CREATE_DATE}",w(m)))??"",z=l?e??(f.title||b(a)):e??q.title;return A(K,{className:"order-order-status-content",variant:"secondary",children:[s(Q,{title:z}),A("div",{className:"order-order-status-content__wrapper",children:[s("div",{className:_(["order-order-status-content__wrapper-description",["order-order-status-content__wrapper-description--actions-slot",!!(t!=null&&t.OrderActions)]]),children:s("p",{children:l?j:W})}),s(re,{orderData:r,slots:t,routeCreateReturn:u,routeOnSuccess:d,onError:i})]})]})},ie=({onError:t,routeOnSuccess:e,orderData:n,children:r})=>{const[u,i]=C(!1),d=T(()=>{i(!0);const l=n==null?void 0:n.number;Z(l).then(({success:c,userInputErrors:o})=>{c&&U(e,{}),o.length&&(t==null||t(o))}).catch(c=>{t==null||t(c.message)}).finally(()=>{i(!1)})},[n,e,t]);return s(P,{type:"button",disabled:u,variant:"secondary",className:"order-reorder",onClick:d,children:r})};export{be as OrderStatus,be as default};
4
+ //# sourceMappingURL=OrderStatus.js.map