@dropins/storefront-cart 1.1.0 → 1.2.0-beta1

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 (75) hide show
  1. package/api/applyGiftCardToCart/applyGiftCardToCart.d.ts +4 -0
  2. package/api/applyGiftCardToCart/graphql/ApplyGiftCardToCartMutation.d.ts +18 -0
  3. package/api/applyGiftCardToCart/index.d.ts +18 -0
  4. package/api/fragments.d.ts +1 -0
  5. package/api/getStoreConfig/graphql/StoreConfigQuery.d.ts +1 -1
  6. package/api/graphql/GiftFragment.d.ts +5 -0
  7. package/api/index.d.ts +3 -0
  8. package/api/removeGiftCardFromCart/graphql/RemoveGiftCardFromCartMutation.d.ts +18 -0
  9. package/api/removeGiftCardFromCart/index.d.ts +18 -0
  10. package/api/removeGiftCardFromCart/removeGiftCardFromCart.d.ts +4 -0
  11. package/api/setGiftOptionsOnCart/graphql/UpdateGiftOptionsMutation.d.ts +18 -0
  12. package/api/setGiftOptionsOnCart/index.d.ts +18 -0
  13. package/api/setGiftOptionsOnCart/setGiftOptionsOnCart.d.ts +5 -0
  14. package/api/updateProductsFromCart/updateProductsFromCart.d.ts +8 -0
  15. package/api.js +3 -3
  16. package/chunks/CartSummaryGrid.js +1 -1
  17. package/chunks/CartSummaryList.js +1 -1
  18. package/chunks/ChevronUp.js +3 -0
  19. package/chunks/Coupons.js +3 -0
  20. package/chunks/EmptyCart.js +1 -1
  21. package/chunks/GiftCard.js +3 -0
  22. package/chunks/OrderSummary.js +1 -1
  23. package/chunks/OrderSummaryLine.js +1 -1
  24. package/chunks/refreshCart.js +28 -16
  25. package/chunks/removeGiftCardFromCart.js +31 -0
  26. package/chunks/setGiftOptionsOnCart.js +20 -0
  27. package/chunks/updateProductsFromCart.js +4 -4
  28. package/components/Coupons/Coupons.d.ts +2 -0
  29. package/components/GiftOptions/Elements/CheckboxGroup.d.ts +20 -0
  30. package/components/GiftOptions/Elements/FormFields.d.ts +15 -0
  31. package/components/GiftOptions/Elements/GiftLoader.d.ts +4 -0
  32. package/components/GiftOptions/Elements/GiftOptionModal.d.ts +14 -0
  33. package/components/GiftOptions/Elements/ReadOnlyFormView.d.ts +11 -0
  34. package/components/GiftOptions/Elements/index.d.ts +5 -0
  35. package/components/GiftOptions/GiftOptions.d.ts +29 -0
  36. package/components/GiftOptions/index.d.ts +19 -0
  37. package/components/OrderSummary/OrderSummary.d.ts +27 -0
  38. package/components/OrderSummaryLine/OrderSummaryLine.d.ts +2 -2
  39. package/components/index.d.ts +1 -0
  40. package/containers/CartSummaryGrid.js +1 -1
  41. package/containers/CartSummaryList.js +1 -1
  42. package/containers/Coupons.js +1 -1
  43. package/containers/EmptyCart.js +1 -1
  44. package/containers/EstimateShipping.js +1 -1
  45. package/containers/GiftCards/GiftCards.d.ts +7 -0
  46. package/containers/GiftCards/index.d.ts +19 -0
  47. package/containers/GiftCards.d.ts +3 -0
  48. package/containers/GiftCards.js +3 -0
  49. package/containers/GiftOptions/GiftOptions.d.ts +20 -0
  50. package/containers/GiftOptions/index.d.ts +19 -0
  51. package/containers/GiftOptions.d.ts +3 -0
  52. package/containers/GiftOptions.js +3 -0
  53. package/containers/MiniCart.js +1 -1
  54. package/containers/OrderSummary/OrderSummary.d.ts +2 -0
  55. package/containers/OrderSummary.js +1 -1
  56. package/containers/OrderSummaryLine/OrderSummaryLine.d.ts +2 -2
  57. package/containers/OrderSummaryLine.js +1 -1
  58. package/containers/index.d.ts +2 -0
  59. package/data/models/cart-model.d.ts +51 -0
  60. package/data/models/gift-card-account.d.ts +8 -0
  61. package/data/models/index.d.ts +1 -0
  62. package/data/models/store-models.d.ts +11 -16
  63. package/data/transforms/__fixtures__/cartModel.d.ts +14 -0
  64. package/data/transforms/__fixtures__/productTypesData.d.ts +15 -0
  65. package/data/transforms/index.d.ts +1 -0
  66. package/data/transforms/transform-gift-card-account.d.ts +4 -0
  67. package/fragments.js +130 -5
  68. package/hooks/index.d.ts +1 -0
  69. package/hooks/useGiftOptions.d.ts +46 -0
  70. package/i18n/en_US.json.d.ts +117 -1
  71. package/lib/giftOptionsHelper.d.ts +18 -0
  72. package/package.json +1 -1
  73. package/render.js +2 -2
  74. package/types/giftOptions.types.d.ts +35 -0
  75. package/types/index.d.ts +2 -0
@@ -0,0 +1,46 @@
1
+ import { CartModel, Item } from '../data/models';
2
+ import { GiftOptionsDataSourcesProps, GiftOptionsViewProps, GiftWrappingConfigProps, GiftFormDataType, ProductGiftOptionsConfig } from '../types';
3
+
4
+ interface UseGiftOptionsProps {
5
+ item: Item | ProductGiftOptionsConfig;
6
+ view: GiftOptionsViewProps;
7
+ dataSource: GiftOptionsDataSourcesProps;
8
+ initialLoading: boolean;
9
+ handleItemsLoading?: (uid: string, state: boolean) => void;
10
+ handleItemsError?: (uid: string, message?: string) => void;
11
+ onItemUpdate?: ({ item }: {
12
+ item: Item;
13
+ }) => void;
14
+ onGiftOptionsChange?: (data: GiftFormDataType) => void;
15
+ }
16
+ export declare const useGiftOptions: ({ item, view, dataSource, initialLoading, handleItemsLoading, handleItemsError, onItemUpdate, onGiftOptionsChange, }: UseGiftOptionsProps) => {
17
+ loading: boolean;
18
+ giftOptions: GiftFormDataType;
19
+ showModal: boolean;
20
+ errorsField: {
21
+ recipientName: string;
22
+ senderName: string;
23
+ message: string;
24
+ };
25
+ updateLoading: boolean;
26
+ cartData: CartModel | null;
27
+ fieldsDisabled: boolean;
28
+ isGiftOptionsApplied: boolean;
29
+ giftWrappingConfig: [] | GiftWrappingConfigProps[];
30
+ setFieldsDisabled: import('preact/hooks').Dispatch<import('preact/hooks').StateUpdater<boolean>>;
31
+ handleFormMouseLeave: () => Promise<void>;
32
+ onInputChange: (event: Event) => void;
33
+ updateGiftOptions: (name: string, value: string | boolean | number | undefined, extraGiftOptions?: Record<string, string | boolean | number>) => void;
34
+ setShowModal: import('preact/hooks').Dispatch<import('preact/hooks').StateUpdater<boolean>>;
35
+ handleBlur: (event: Event) => Promise<void>;
36
+ isGiftMessageVisible: boolean;
37
+ areGiftOptionsVisible: {
38
+ isGiftReceiptVisible: boolean;
39
+ isPrintedCartVisible: boolean;
40
+ isGiftWrappingVisible: boolean;
41
+ isGiftOptionsVisible: boolean;
42
+ };
43
+ isGiftOptionsHidden: boolean;
44
+ };
45
+ export {};
46
+ //# sourceMappingURL=useGiftOptions.d.ts.map
@@ -21,6 +21,38 @@ declare const _default: {
21
21
  "taxToBeDetermined": "TBD",
22
22
  "checkout": "Checkout",
23
23
  "orderSummary": "Order Summary",
24
+ "giftCard": {
25
+ "label": "Gift Card",
26
+ "applyAction": "Apply",
27
+ "ariaLabel": "Enter gift card code",
28
+ "ariaLabelRemove": "Remove gift card",
29
+ "placeholder": "Enter code",
30
+ "title": "Gift Card",
31
+ "errors": {
32
+ "empty": "Please enter a gift card code."
33
+ },
34
+ "appliedGiftCards": {
35
+ "label": { "singular": "Gift card", "plural": "Gift cards" },
36
+ "remainingBalance": "Remaining balance"
37
+ }
38
+ },
39
+ "giftOptionsTax": {
40
+ "printedCard": {
41
+ "title": "Printed card",
42
+ "inclTax": "Including taxes",
43
+ "exclTax": "excluding taxes"
44
+ },
45
+ "itemGiftWrapping": {
46
+ "title": "Item gift wrapping",
47
+ "inclTax": "Including taxes",
48
+ "exclTax": "excluding taxes"
49
+ },
50
+ "orderGiftWrapping": {
51
+ "title": "Order gift wrapping",
52
+ "inclTax": "Including taxes",
53
+ "exclTax": "excluding taxes"
54
+ }
55
+ },
24
56
  "subTotal": {
25
57
  "label": "Subtotal",
26
58
  "withTaxes": "Including taxes",
@@ -73,7 +105,8 @@ declare const _default: {
73
105
  "coupon": {
74
106
  "applyAction": "Apply",
75
107
  "placeholder": "Enter code",
76
- "title": "Discount code"
108
+ "title": "Discount code",
109
+ "ariaLabelRemove": "Remove coupon"
77
110
  }
78
111
  },
79
112
  "CartItem": {
@@ -111,6 +144,89 @@ declare const _default: {
111
144
  "message": "Please adjust quantities to continue",
112
145
  "alert": "Out of stock",
113
146
  "action": "Remove all out of stock items from cart"
147
+ },
148
+ "GiftOptions": {
149
+ "formText": {
150
+ "requiredFieldError": "This field is required"
151
+ },
152
+ "modal": {
153
+ "defaultTitle": "Gift wrapping for Cart",
154
+ "title": "Gift wrapping for",
155
+ "wrappingText": "Wrapping choice",
156
+ "wrappingSubText": "",
157
+ "modalConfirmButton": "Apply",
158
+ "modalCancelButton": "Cancel"
159
+ },
160
+ "order": {
161
+ "customize": "Customize",
162
+ "accordionHeading": "Gift options",
163
+ "giftReceiptIncluded": {
164
+ "title": "Use gift receipt",
165
+ "subtitle": "The receipt and order invoice will not show the price."
166
+ },
167
+ "printedCardIncluded": {
168
+ "title": "Include printed card",
169
+ "subtitle": ""
170
+ },
171
+ "giftOptionsWrap": {
172
+ "title": "Gift wrap this order",
173
+ "subtitle": "Wrapping option:"
174
+ },
175
+ "formContent": {
176
+ "formTitle": "Add a message to the order (optional)",
177
+ "formTo": "To",
178
+ "formFrom": "From",
179
+ "giftMessageTitle": "Gift message",
180
+ "formToPlaceholder": "Recipient’s name",
181
+ "formFromPlaceholder": "Sender’s name",
182
+ "formMessagePlaceholder": "Gift message"
183
+ },
184
+ "readOnlyFormView": {
185
+ "title": "Selected gift order options",
186
+ "giftWrap": "Gift wrap this order",
187
+ "giftWrapOptions": "Wrapping option:",
188
+ "giftReceipt": "Use gift receipt",
189
+ "giftReceiptText": "The receipt and order invoice will not show the price.",
190
+ "printCard": "Use printed card",
191
+ "printCardText": "",
192
+ "formTitle": "Your gift message",
193
+ "formTo": "To",
194
+ "formFrom": "From",
195
+ "formMessageTitle": "Gift message"
196
+ }
197
+ },
198
+ "product": {
199
+ "customize": "Customize",
200
+ "accordionHeading": "Gift options",
201
+ "giftReceiptIncluded": {
202
+ "title": "Use gift receipt",
203
+ "subtitle": "The receipt and order invoice will not show the price."
204
+ },
205
+ "printedCardIncluded": {
206
+ "title": "Include printed card",
207
+ "subtitle": ""
208
+ },
209
+ "giftOptionsWrap": {
210
+ "title": "Gift wrap this item",
211
+ "subtitle": "Wrapping option:"
212
+ },
213
+ "formContent": {
214
+ "formTitle": "Add a message to the item (optional)",
215
+ "formTo": "To",
216
+ "formFrom": "From",
217
+ "giftMessageTitle": "Gift message",
218
+ "formToPlaceholder": "Recipient’s name",
219
+ "formFromPlaceholder": "Sender’s name",
220
+ "formMessagePlaceholder": "Gift message"
221
+ },
222
+ "readOnlyFormView": {
223
+ "title": "This item is a gift",
224
+ "wrapping": "Wrapping:",
225
+ "recipient": "To:",
226
+ "sender": "From:",
227
+ "message": "Message:"
228
+ }
229
+ }
114
230
  }
115
231
  }
116
232
  }
@@ -0,0 +1,18 @@
1
+ import { CartModel, Item } from '../data/models';
2
+ import { GiftWrappingConfigProps, GiftOptionsViewProps, ProductGiftOptionsConfig } from '../types';
3
+
4
+ export declare const DEFAULT_FORM_STATE: {
5
+ recipientName: string;
6
+ senderName: string;
7
+ message: string;
8
+ };
9
+ export declare const DEFAULT_CHECKBOXES_STATE: {
10
+ giftReceiptIncluded: boolean;
11
+ printedCardIncluded: boolean;
12
+ isGiftWrappingSelected: boolean;
13
+ };
14
+ export declare const shouldShowGiftMessage: (item: CartModel['items'][0] | ProductGiftOptionsConfig, isProductView: boolean) => boolean;
15
+ export declare const getSelectedGiftWrapping: (giftWrappingOptions: GiftWrappingConfigProps[] | [
16
+ ]) => GiftWrappingConfigProps | undefined;
17
+ export declare const areGiftOptionsDisabled: (view: GiftOptionsViewProps, item: Item | ProductGiftOptionsConfig) => boolean;
18
+ //# sourceMappingURL=giftOptionsHelper.d.ts.map
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name": "@dropins/storefront-cart", "version": "1.1.0", "@dropins/tools": "~0.41.0", "license": "SEE LICENSE IN LICENSE.md"}
1
+ {"name": "@dropins/storefront-cart", "version": "1.2.0-beta1", "@dropins/tools": "~0.41.0", "license": "SEE LICENSE IN LICENSE.md"}
package/render.js CHANGED
@@ -1,4 +1,4 @@
1
1
  /*! Copyright 2025 Adobe
2
2
  All Rights Reserved. */
3
- (function(i,t){try{if(typeof document<"u"){const a=document.createElement("style"),n=t.styleId;for(const r in t.attributes)a.setAttribute(r,t.attributes[r]);a.setAttribute("data-dropin",n),a.appendChild(document.createTextNode(i));const e=document.querySelector('style[data-dropin="sdk"]');if(e)e.after(a);else{const r=document.querySelector('link[rel="stylesheet"], style');r?r.before(a):document.head.append(a)}}}catch(a){console.error("dropin-styles (injectCodeFunction)",a)}})(".cart-empty-cart{container-type:inline-size;container-name:cart}.cart-empty-cart__wrapper .dropin-card--secondary{display:grid;grid-auto-rows:min-content;justify-content:center;text-align:center}@container cart (width < 737px){.cart-empty-cart__wrapper .dropin-card{border:unset;border-style:hidden}}.cart-estimate-shipping{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xsmall);align-items:flex-end;color:var(--color-neutral-800)}.cart-estimate-shipping__label,.cart-estimate-shipping__price{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing)}.cart-estimate-shipping__label--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-700)}.cart-estimate-shipping__price--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.cart-estimate-shipping__price{text-align:right}a.cart-estimate-shippingLink{text-decoration:underline}.cart-estimate-shipping__label--bold,.cart-estimate-shipping__price--bold{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing)}.cart-estimate-shipping__caption{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing);grid-column:span 2;color:var(--color-neutral-700)}.cart-estimate-shipping--zip,.cart-estimate-shipping--state{background-color:var(--color-neutral-50)}.cart-estimate-shipping--edit{display:grid;grid-column:1 / span 2;gap:var(--spacing-small);padding-top:var(--spacing-small)}a.cart-estimate-shipping__link{text-decoration:underline}.cart-estimate-shipping--hide{display:none!important}.cart-estimate-shipping--edit button{width:var(--spacing-huge);justify-self:end}.cart-estimate-shipping--loading{opacity:.4;pointer-events:none}.cart-mini-cart{display:flex;flex-direction:column;height:100%;padding:var(--spacing-small) var(--spacing-small) var(--spacing-medium);box-sizing:border-box}.cart-mini-cart__empty-cart{width:100%;max-width:800px;height:100%;display:flex;flex-direction:column;justify-content:center;align-self:center}.cart-mini-cart__heading{display:grid;row-gap:var(--spacing-xsmall);font:var(--type-headline-2-default-font);letter-spacing:var(--type-headline-2-default-letter-spacing)}.cart-mini-cart__heading-divider{width:100%;margin:var(--spacing-xxsmall) 0 0 0}.cart-mini-cart__products{flex:1;overflow-y:auto;max-height:100%;padding-bottom:var(--spacing-medium)}.cart-mini-cart__products .cart-cart-summary-list__heading{padding:0}.cart-mini-cart__products .dropin-cart-item__configurations li{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-mini-cart__footer{display:grid;grid-auto-flow:row;gap:var(--spacing-small);padding-top:var(--spacing-small);row-gap:var(--spacing-xsmall)}.cart-mini-cart__footer__estimated-total{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing);display:grid;grid-template:max-content / 1fr auto;gap:var(--spacing-xsmall)}.cart-mini-cart__footer__estimated-total-excluding-taxes{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);display:grid;grid-template:max-content / 1fr auto;gap:var(--spacing-xsmall);color:var(--color-neutral-700)}.cart-mini-cart__productListFooter,.cart-mini-cart__preCheckoutSection{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-800)}.cart-mini-cart__footer__ctas{display:grid;grid-auto-flow:row;gap:var(--spacing-xsmall);padding-top:var(--spacing-small)}.cart-cart-summary-grid{container-type:inline-size;container-name:cart-summary-grid;max-width:inherit}.cart-cart-summary-grid__content{display:grid;flex-wrap:wrap;gap:var(--spacing-small);grid-template-columns:repeat(6,1fr);margin:auto}.cart-cart-summary-grid__item-container{aspect-ratio:auto 3/4;display:inline-block}.cart-cart-summary-grid__item-container img{height:auto;max-width:100%}.cart-cart-summary-grid__item-container a:focus{display:block}.cart-cart-summary-grid__content--empty{grid-template-columns:repeat(1,1fr)}.cart-cart-summary-grid__empty-cart{align-self:center;justify-self:center;max-width:800px;width:100%}@container cart-summary-grid (width < 360px){.cart-cart-summary-grid__content{grid-template-columns:repeat(4,1fr);gap:var(--spacing-xsmall)}.cart-cart-summary-grid__content--empty{grid-template-columns:repeat(1,1fr)}}.cart-cart-summary-list{container-type:inline-size;container-name:cart-summary-list}.cart-cart-summary-list__background--secondary{background-color:var(--color-neutral-200)}.cart-cart-summary-list__heading{display:grid;row-gap:var(--spacing-xsmall);padding:var(--spacing-medium) 0 0 0;font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);color:var(--color-neutral-800)}.cart-cart-summary-list__heading--full-width{width:100%}.cart-cart-summary-list__heading-divider{width:100%;margin:var(--spacing-xxsmall) 0 var(--spacing-medium) 0}.cart-cart-summary-list__content{display:grid;grid-template-columns:1fr;padding:0}.cart-cart-summary-list__out-of-stock-message{margin:calc(-1 * var(--spacing-xsmall)) 0 var(--spacing-medium) 0}.cart-cart-summary-list__empty-cart{justify-self:center;align-self:center;width:100%;max-width:800px}.cart-cart-summary-list-footer__action,.cart-cart-summary-list-footer__action:focus .cart-cart-summary-list-footer__action:active,.cart-cart-summary-list-footer__action:link{font:var(--type-body-2-strong-font);margin:0 auto;width:auto;margin-top:var(--spacing-medium);margin-bottom:var(--spacing-medium)}.cart-cart-summary-list-footer__action:hover{text-decoration:underline;text-underline-offset:var(--spacing-xxsmall);background:transparent;color:var(--color-brand-700)}.cart-cart-summary-list-footer__action:visited{background-color:none}.cart-cart-summary-list-accordion{border-left:var(--shape-border-width-2) solid var(--color-neutral-400);border-right:var(--shape-border-width-2) solid var(--color-neutral-400)}.cart-cart-summary-list-accordion__section{margin:var(--spacing-medium)}@container cart-summary-list (width >= 768px){.cart-cart-summary-list__out-of-stock-message{margin:calc(-1 * var(--spacing-small)) 0 var(--spacing-xxbig) 0}}@container cart-summary-list (width >= 1024px){.cart-cart-summary-list__content,.cart-cart-summary-list__heading{grid-column:1 / span 8}.cart-cart-summary-list__heading--full-width,.cart-cart-summary-list__content--empty{grid-column:1 / span 12}.cart-cart-summary-list__content{padding:0}}.cart-order-summary{display:grid;position:relative;grid-auto-flow:row;padding:var(--spacing-medium)}.cart-order-summary__primary{background-color:var(--color-neutral-200)}.cart-order-summary__secondary{background-color:var(--color-neutral-50)}.cart-order-summary__content{display:grid;gap:var(--spacing-xsmall);margin-top:var(--spacing-small)}.cart-order-summary__heading{display:grid;font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing);color:var(--color-neutral-800);gap:var(--spacing-small)}.cart-order-summary__discount .cart-order-summary__label,.cart-order-summary__discount .cart-order-summary__price{color:var(--color-warning-800)}.cart-order-summary__coupon__code{display:flex;align-items:center;font:var(--type-details-overline-font);letter-spacing:var(--type-details-overline-letter-spacing);color:var(--color-neutral-700);gap:var(--spacing-xsmall);grid-column:span 2}.cart-order-summary__taxes .dropin-divider:last-child{margin-bottom:0}.cart-order-summary__total{margin-top:var(--spacing-medium)}.cart-order-summary__divider-primary,.cart-order-summary__divider-secondary{width:100%;margin:0}.cart-order-summary__divider-secondary{margin:0}.cart-order-summary__taxEntry.cart-order-summary__entry{margin-top:0}.cart-order-summary__entry,.cart-order-summary__taxEntry{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xxsmall);align-items:center;color:var(--color-neutral-800)}.cart-order-summary__caption{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing);grid-column:span 2;color:var(--color-neutral-700)}.cart-order-summary__primaryAction{margin-top:var(--spacing-small);grid-template-columns:1fr}.cart-order-summary__shipping--edit{display:grid;grid-column:1 / span 2;gap:var(--spacing-small);padding-top:var(--spacing-small);padding-left:var(--spacing-small)}a.cart-order-summary__shippingLink{text-decoration:underline}.cart-order-summary__shipping--hide{display:none!important}.cart-order-summary__shipping--edit button{width:var(--spacing-huge);justify-self:end}.cart-order-summary__shipping--zip,.cart-order-summary__shipping--state{background-color:var(--color-neutral-50)}.cart-order-summary__taxes .dropin-accordion-section__content-container{gap:var(--spacing-small);margin:var(--spacing-small) 0}.cart-order-summary--loading{opacity:.4;pointer-events:none}.cart-order-summary__spinner{margin:0 auto;position:absolute;z-index:999;left:0;right:0;top:calc(50% - (var(--size) / 2));bottom:0}.coupon-code-form__action{display:flex}.coupon-code-form__action .dropin-input-container{flex-grow:1;margin-right:var(--spacing-small)}.cart-coupons__accordion-section .dropin-accordion-section__content-container{gap:var(--spacing-small)}.coupon-code-form__codes{background-color:var(--color-neutral-50)}.coupon-code-form__error{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing);color:var(--color-alert-500);margin-top:calc(var(--spacing-xsmall) * -1)}.coupon-code-form__applied{display:flex;flex-wrap:wrap;gap:var(--spacing-small)}div.coupon-code-form__applied button{background:var(--color-neutral-400);color:var(--color-neutral-800);display:flex;flex-direction:row-reverse}.cart-order-summary__label,.cart-order-summary__price{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing)}.cart-order-summary__price{text-align:right;text-transform:uppercase}.cart-order-summary__label--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-700)}.cart-order-summary__price--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.cart-order-summary__label--bold,.cart-order-summary__price--bold{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing)}",{styleId:"Cart"});
4
- import{jsx as n}from"@dropins/tools/preact-jsx-runtime.js";import{deepmerge as c,Render as d}from"@dropins/tools/lib.js";import{useState as u,useEffect as p}from"@dropins/tools/preact-hooks.js";import{UIProvider as m}from"@dropins/tools/components.js";import{events as g}from"@dropins/tools/event-bus.js";import"./chunks/resetCart.js";import{c as h}from"./chunks/refreshCart.js";import"@dropins/tools/fetch-graphql.js";import"./chunks/persisted-data.js";import"./fragments.js";const f={Cart:{heading:"Shopping Cart ({count})",editCart:"Edit",viewAll:"View all in cart",viewMore:"View more"},MiniCart:{heading:"Shopping Cart ({count})",subtotal:"Subtotal",subtotalExcludingTaxes:"Subtotal excluding taxes",cartLink:"View Cart",checkoutLink:"Checkout"},EmptyCart:{heading:"Your cart is empty",cta:"Start shopping"},PriceSummary:{taxToBeDetermined:"TBD",checkout:"Checkout",orderSummary:"Order Summary",subTotal:{label:"Subtotal",withTaxes:"Including taxes",withoutTaxes:"excluding taxes"},shipping:{label:"Shipping",editZipAction:"Apply",estimated:"Estimated Shipping",estimatedDestination:"Estimated Shipping to",destinationLinkAriaLabel:"Change destination",zipPlaceholder:"Zip Code",withTaxes:"Including taxes",withoutTaxes:"excluding taxes",alternateField:{zip:"Estimate using country/zip",state:"Estimate using country/state"}},taxes:{total:"Tax Total",totalOnly:"Tax",breakdown:"Taxes",showBreakdown:"Show Tax Breakdown",hideBreakdown:"Hide Tax Breakdown",estimated:"Estimated Tax"},total:{estimated:"Estimated Total",free:"Free",label:"Total",withoutTax:"Total excluding taxes",saved:"Total saved"},estimatedShippingForm:{country:{placeholder:"Country"},state:{placeholder:"State"},zip:{placeholder:"Zip Code"},apply:{label:"Apply"}},freeShipping:"Free",coupon:{applyAction:"Apply",placeholder:"Enter code",title:"Discount code"}},CartItem:{discountedPrice:"Discounted Price",download:"file",message:"Note",recipient:"To",regularPrice:"Regular Price",sender:"From",file:"{count} file",files:"{count} files",lowInventory:"Only {count} left!",insufficientQuantity:"Only {inventory} of {count} in stock",insufficientQuantityGeneral:"Not enough items for sale",notAvailableMessage:"Requested qty. not available",discountPercentage:"{discount}% off",savingsAmount:"Savings"},EstimateShipping:{label:"Shipping",editZipAction:"Apply",estimated:"Estimated Shipping",estimatedDestination:"Estimated Shipping to",destinationLinkAriaLabel:"{destination}, Change destination",zipPlaceholder:"Zip Code",withTaxes:"Including taxes",withoutTaxes:"excluding taxes",alternateField:{zip:"Estimate using country/zip",state:"Estimate using country/state"}},OutOfStockMessage:{heading:"Your cart contains items with limited stock",message:"Please adjust quantities to continue",alert:"Out of stock",action:"Remove all out of stock items from cart"}},x={Cart:f},y={default:x},S=({children:o})=>{var i;const[t,s]=u(),r=(i=h.getConfig())==null?void 0:i.langDefinitions;p(()=>{const e=g.on("locale",a=>{a!==t&&s(a)},{eager:!0});return()=>{e==null||e.off()}},[t]);const l=c(y,r??{});return n(m,{lang:t,langDefinitions:l,children:o})},L=new d(n(S,{}));export{L as render};
3
+ (function(o,a){try{if(typeof document<"u"){const t=document.createElement("style"),e=a.styleId;for(const r in a.attributes)t.setAttribute(r,a.attributes[r]);t.setAttribute("data-dropin",e),t.appendChild(document.createTextNode(o));const i=document.querySelector('style[data-dropin="sdk"]');if(i)i.after(t);else{const r=document.querySelector('link[rel="stylesheet"], style');r?r.before(t):document.head.append(t)}}}catch(t){console.error("dropin-styles (injectCodeFunction)",t)}})(".cart-empty-cart{container-type:inline-size;container-name:cart}.cart-empty-cart__wrapper .dropin-card--secondary{display:grid;grid-auto-rows:min-content;justify-content:center;text-align:center}@container cart (width < 737px){.cart-empty-cart__wrapper .dropin-card{border:unset;border-style:hidden}}.cart-estimate-shipping{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xsmall);align-items:flex-end;color:var(--color-neutral-800)}.cart-estimate-shipping__label,.cart-estimate-shipping__price{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing)}.cart-estimate-shipping__label--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-700)}.cart-estimate-shipping__price--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.cart-estimate-shipping__price{text-align:right}a.cart-estimate-shippingLink{text-decoration:underline}.cart-estimate-shipping__label--bold,.cart-estimate-shipping__price--bold{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing)}.cart-estimate-shipping__caption{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing);grid-column:span 2;color:var(--color-neutral-700)}.cart-estimate-shipping--zip,.cart-estimate-shipping--state{background-color:var(--color-neutral-50)}.cart-estimate-shipping--edit{display:grid;grid-column:1 / span 2;gap:var(--spacing-small);padding-top:var(--spacing-small)}a.cart-estimate-shipping__link{text-decoration:underline}.cart-estimate-shipping--hide{display:none!important}.cart-estimate-shipping--edit button{width:var(--spacing-huge);justify-self:end}.cart-estimate-shipping--loading{opacity:.4;pointer-events:none}.cart-mini-cart{display:flex;flex-direction:column;height:100%;padding:var(--spacing-small) var(--spacing-small) var(--spacing-medium);box-sizing:border-box}.cart-mini-cart__empty-cart{width:100%;max-width:800px;height:100%;display:flex;flex-direction:column;justify-content:center;align-self:center}.cart-mini-cart__heading{display:grid;row-gap:var(--spacing-xsmall);font:var(--type-headline-2-default-font);letter-spacing:var(--type-headline-2-default-letter-spacing)}.cart-mini-cart__heading-divider{width:100%;margin:var(--spacing-xxsmall) 0 0 0}.cart-mini-cart__products{flex:1;overflow-y:auto;max-height:100%;padding-bottom:var(--spacing-medium)}.cart-mini-cart__products .cart-cart-summary-list__heading{padding:0}.cart-mini-cart__products .dropin-cart-item__configurations li{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-mini-cart__footer{display:grid;grid-auto-flow:row;gap:var(--spacing-small);padding-top:var(--spacing-small);row-gap:var(--spacing-xsmall)}.cart-mini-cart__footer__estimated-total{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing);display:grid;grid-template:max-content / 1fr auto;gap:var(--spacing-xsmall)}.cart-mini-cart__footer__estimated-total-excluding-taxes{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);display:grid;grid-template:max-content / 1fr auto;gap:var(--spacing-xsmall);color:var(--color-neutral-700)}.cart-mini-cart__productListFooter,.cart-mini-cart__preCheckoutSection{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-800)}.cart-mini-cart__footer__ctas{display:grid;grid-auto-flow:row;gap:var(--spacing-xsmall);padding-top:var(--spacing-small)}.cart-cart-summary-grid{container-type:inline-size;container-name:cart-summary-grid;max-width:inherit}.cart-cart-summary-grid__content{display:grid;flex-wrap:wrap;gap:var(--spacing-small);grid-template-columns:repeat(6,1fr);margin:auto}.cart-cart-summary-grid__item-container{aspect-ratio:auto 3/4;display:inline-block}.cart-cart-summary-grid__item-container img{height:auto;max-width:100%}.cart-cart-summary-grid__item-container a:focus{display:block}.cart-cart-summary-grid__content--empty{grid-template-columns:repeat(1,1fr)}.cart-cart-summary-grid__empty-cart{align-self:center;justify-self:center;max-width:800px;width:100%}@container cart-summary-grid (width < 360px){.cart-cart-summary-grid__content{grid-template-columns:repeat(4,1fr);gap:var(--spacing-xsmall)}.cart-cart-summary-grid__content--empty{grid-template-columns:repeat(1,1fr)}}.cart-cart-summary-list{container-type:inline-size;container-name:cart-summary-list}.cart-cart-summary-list__background--secondary{background-color:var(--color-neutral-200)}.cart-cart-summary-list__heading{display:grid;row-gap:var(--spacing-xsmall);padding:var(--spacing-medium) 0 0 0;font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);color:var(--color-neutral-800)}.cart-cart-summary-list__heading--full-width{width:100%}.cart-cart-summary-list__heading-divider{width:100%;margin:var(--spacing-xxsmall) 0 var(--spacing-medium) 0}.cart-cart-summary-list__content{display:grid;grid-template-columns:1fr;padding:0}.cart-cart-summary-list__out-of-stock-message{margin:calc(-1 * var(--spacing-xsmall)) 0 var(--spacing-medium) 0}.cart-cart-summary-list__empty-cart{justify-self:center;align-self:center;width:100%;max-width:800px}.cart-cart-summary-list-footer__action,.cart-cart-summary-list-footer__action:focus .cart-cart-summary-list-footer__action:active,.cart-cart-summary-list-footer__action:link{font:var(--type-body-2-strong-font);margin:0 auto;width:auto;margin-top:var(--spacing-medium);margin-bottom:var(--spacing-medium)}.cart-cart-summary-list-footer__action:hover{text-decoration:underline;text-underline-offset:var(--spacing-xxsmall);background:transparent;color:var(--color-brand-700)}.cart-cart-summary-list-footer__action:visited{background-color:none}.cart-cart-summary-list-accordion{border-left:var(--shape-border-width-2) solid var(--color-neutral-400);border-right:var(--shape-border-width-2) solid var(--color-neutral-400)}.cart-cart-summary-list-accordion__section{margin:var(--spacing-medium)}@container cart-summary-list (width >= 768px){.cart-cart-summary-list__out-of-stock-message{margin:calc(-1 * var(--spacing-small)) 0 var(--spacing-xxbig) 0}}@container cart-summary-list (width >= 1024px){.cart-cart-summary-list__content,.cart-cart-summary-list__heading{grid-column:1 / span 8}.cart-cart-summary-list__heading--full-width,.cart-cart-summary-list__content--empty{grid-column:1 / span 12}.cart-cart-summary-list__content{padding:0}}.cart-order-summary{display:grid;position:relative;grid-auto-flow:row;padding:var(--spacing-medium)}.cart-order-summary__primary{background-color:var(--color-neutral-200)}.cart-order-summary__secondary{background-color:var(--color-neutral-50)}.cart-order-summary__content{display:grid;gap:var(--spacing-xsmall);margin-top:var(--spacing-small)}.cart-order-summary__heading{display:grid;font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing);color:var(--color-neutral-800);gap:var(--spacing-small)}.cart-order-summary__discount .cart-order-summary__label,.cart-order-summary__discount .cart-order-summary__price,.cart-order-summary__applied-gift-cards .cart-order-summary__price{color:var(--color-warning-800)}.cart-order-summary__coupon__code{display:flex;align-items:center;font:var(--type-details-overline-font);letter-spacing:var(--type-details-overline-letter-spacing);color:var(--color-neutral-700);gap:var(--spacing-xsmall);grid-column:span 2}.cart-order-summary__taxes .dropin-divider:last-child{margin-bottom:0}.cart-order-summary__total{margin-top:var(--spacing-medium)}.cart-order-summary__divider-primary,.cart-order-summary__divider-secondary{width:100%;margin:0}.cart-order-summary__divider-secondary{margin:0}.cart-order-summary__taxEntry.cart-order-summary__entry{margin-top:0}.cart-order-summary__entry,.cart-order-summary__taxEntry{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xxsmall);align-items:center;color:var(--color-neutral-800)}.cart-order-summary__caption{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing);grid-column:span 2;color:var(--color-neutral-700)}.cart-order-summary__primaryAction{margin-top:var(--spacing-small);grid-template-columns:1fr}.cart-order-summary__shipping--edit{display:grid;grid-column:1 / span 2;gap:var(--spacing-small);padding-top:var(--spacing-small);padding-left:var(--spacing-small)}a.cart-order-summary__shippingLink{text-decoration:underline}.cart-order-summary__shipping--hide{display:none!important}.cart-order-summary__shipping--edit button{width:var(--spacing-huge);justify-self:end}.cart-order-summary__shipping--zip,.cart-order-summary__shipping--state{background-color:var(--color-neutral-50)}.cart-order-summary__taxes .dropin-accordion-section__content-container{gap:var(--spacing-small);margin:var(--spacing-small) 0}.cart-order-summary--loading{opacity:.4;pointer-events:none}.cart-order-summary__spinner{margin:0 auto;position:absolute;z-index:999;left:0;right:0;top:calc(50% - (var(--size) / 2));bottom:0}.cart-order-summary__content:has(.cart-order-summary__coupons .dropin-accordion):has(.cart-order-summary__gift-cards .dropin-accordion):has(.cart-order-summary__coupons+.cart-order-summary__gift-cards) .cart-order-summary__coupons .dropin-accordion hr:last-child{opacity:0;margin-bottom:0}.cart-order-summary__content:has(.cart-order-summary__coupons .dropin-accordion):has(.cart-order-summary__gift-cards .dropin-accordion):has(.cart-order-summary__coupons+.cart-order-summary__gift-cards) .cart-order-summary__gift-cards .dropin-accordion hr:first-child{margin-top:calc(var(--spacing-xsmall) * -1)}.cart-order-summary__applied-gift-cards .cart-order-summary__coupon__code,.cart-order-summary__applied-gift-cards .cart-order-summary__caption{display:flex;justify-content:flex-start;align-items:end;gap:0 var(--spacing-xsmall)}.coupon-code-form__action{display:flex}.coupon-code-form__action .dropin-input-container{flex-grow:1;margin-right:var(--spacing-small)}.cart-coupons__accordion-section .dropin-accordion-section__content-container{gap:var(--spacing-small)}.coupon-code-form__codes{background-color:var(--color-neutral-50)}.coupon-code-form__error{font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing);color:var(--color-alert-500);margin-top:calc(var(--spacing-xsmall) * -1)}.coupon-code-form__applied{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:var(--spacing-small)}.coupon-code-form__applied-item{box-sizing:border-box;display:grid;grid-template-columns:1fr auto;gap:0 var(--spacing-small)}.coupon-code-form__applied-item button{all:unset;margin:0;padding:0;display:flex;justify-content:center;align-items:center;background-color:transparent;border-color:transparent;cursor:pointer}.coupon-code-form__applied .dropin-tag-container{background-color:var(--color-neutral-400);color:var(--color-neutral-800);font:var(--type-button-2-font);letter-spacing:var(--type-button-2-letter-spacing)}.cart-gift-cards .dropin-accordion-section__title-container svg:first-of-type path{transform-box:fill-box;transform-origin:center;transform:translateY(4px)}.cart-order-summary__label,.cart-order-summary__price{font:var(--type-body-1-default-font);letter-spacing:var(--type-body-1-default-letter-spacing)}.cart-order-summary__price{text-align:right;text-transform:uppercase}.cart-order-summary__label--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);color:var(--color-neutral-700)}.cart-order-summary__price--muted{font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.cart-order-summary__label--bold,.cart-order-summary__price--bold{font:var(--type-body-1-emphasized-font);letter-spacing:var(--type-body-1-emphasized-letter-spacing)}.cart-gift-options-view{position:relative}.cart-gift-options-view textarea{border:var(--shape-border-width-1) solid var(--color-neutral-600)}.cart-gift-options-view.cart-gift-options-view--product .dropin-accordion-section__heading{grid-template-columns:auto 1fr}.cart-gift-options-view.cart-gift-options-view--product .dropin-accordion-section__flex,.cart-gift-options-view.cart-gift-options-view--product .dropin-accordion-section__heading,.cart-gift-options-view.cart-gift-options-view--product .dropin-accordion-section__title-container,.cart-gift-options-view.cart-gift-options-view--product .cart-gift-options-view__icon--success{margin-top:0}.cart-gift-options-view.cart-gift-options-view--order .dropin-accordion-section__title-container,.cart-gift-options-view.cart-gift-options-view--order .dropin-accordion-section__title-container .dropin-accordion-section__title{width:100%}.cart-gift-options-view.cart-gift-options-view--order .dropin-accordion-section__title-container svg{min-width:24px}#cart-gift-options-view.cart-gift-options-view .dropin-accordion-section__content-container{display:block!important;margin-bottom:0;gap:0}.cart-gift-options-view .dropin-accordion-section__heading{align-items:flex-end}.cart-gift-options-view .cart-gift-options-view__top{display:grid;grid-template-columns:1fr;gap:var(--grid-1-gutters) 0;width:100%;align-items:start;margin-top:var(--spacing-small);margin-bottom:var(--spacing-medium)}.cart-gift-options-view .cart-gift-options-view__top.cart-gift-options-view__top--hidden{display:none}.cart-gift-options-view .cart-gift-options-view__field-gift-wrap{margin-top:0;grid-column:1 / -1}.cart-gift-options-view .cart-gift-options-view__top .dropin-field:nth-child(3){grid-column:1 / -1}.cart-gift-options-view .cart-gift-options-view__top .dropin-checkbox__label.dropin-checkbox__label--medium{margin-right:var(--spacing-xsmall)}@media (max-width: 768px){.cart-gift-options-view .cart-gift-options-view__top{display:flex;flex-direction:column}}.cart-gift-options-view .cart-gift-options-view__top .dropin-field:nth-child(2){grid-column:1;margin-top:0}.cart-gift-options-view .cart-gift-options-view__top .dropin-field div{margin-top:0}.cart-gift-options-view .cart-gift-options-view__top button{font:var(--type-body-2-strong-font);padding:0;margin:0;text-decoration:underline;grid-column:2;align-self:start}.cart-gift-options-view .cart-gift-options-view__footer{display:grid;grid-template-columns:1fr 1fr;gap:var(--grid-1-gutters);margin-top:var(--spacing-xsmall)}.cart-gift-options-view .cart-gift-options-view__footer>:first-child{grid-column:span 2;font:var(--type-body-2-strong-font);color:var(--color-neutral-800)}.cart-gift-options-view .cart-gift-options-view__footer>:nth-child(4){grid-column:span 2}.cart-gift-options-view .cart-gift-options-view__footer div>span{font:var(--type-details-caption-1-font);color:var(--color-neutral-800);display:inline-block;margin-bottom:var(--spacing-xsmall)}.cart-gift-options-view .cart-gift-options-view__footer .dropin-textarea__label--floating.dropin-textarea__label--floating--error{padding-top:0;color:var(--color-neutral-700);font:var(--type-body-2-default-font)}.cart-gift-options-view .dropin-textarea__label--floating--text.dropin-textarea__label--floating--error{color:var(--color-alert-800);font:var(--type-details-caption-2-font)}.cart-gift-options-view .dropin-textarea.dropin-textarea--error{border:var(--shape-border-width-2) solid var(--color-alert-500)}.cart-gift-options-view .cart-gift-options-view__modal{width:100%;max-width:735px;margin:auto}.cart-gift-options-view.cart-gift-options-view--product .dropin-modal.dropin-modal--dim{margin:0}.cart-gift-options-view.cart-gift-options-view--product .dropin-modal.dropin-modal--dim .cart-gift-options-view__modal{margin-top:var(--spacing-huge)}.cart-gift-options-view.cart-gift-options-view--product .dropin-modal__header.dropin-modal__header-title{display:grid;grid-template-columns:1fr auto}.cart-gift-options-view__modal .dropin-modal__header-title-content{display:block}.cart-gift-options-view__modal .dropin-modal__header-title-content span{display:block;word-wrap:break-word;overflow-wrap:break-word}.cart-gift-options-view__modal .dropin-modal__header-title-content span:first-child{font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing)}.cart-gift-options-view__modal .dropin-modal__header-title-content .dropin-price{font:var(--type-headline-2-strong-font);letter-spacing:var(--type-headline-2-strong-letter-spacing)}.cart-gift-options-view__modal .dropin-iconButton{text-align:right}.cart-gift-options-view__modal .dropin-modal__content.dropin-modal__body--centered{margin:0}.cart-gift-options-view__modal .cart-gift-options-view__modal-content span{display:block;text-align:left;font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing)}.cart-gift-options-view__modal .cart-gift-options-view__modal-content span:last-child{margin-top:var(--spacing-xsmall);font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing)}.cart-gift-options-view__modal .dropin-content-grid.cart-gift-options-view__modal-grid{margin-top:0;overflow:auto}.cart-gift-options-view__modal .dropin-content-grid__content{margin-top:0;padding:var(--spacing-xsmall);gap:var(--spacing-xsmall)}.cart-gift-options-view__modal .cart-gift-options-view__modal-content{margin-bottom:var(--spacing-big)}.cart-gift-options-view__modal button{width:100%;display:block;text-align:center}.cart-gift-options-view__modal button:nth-child(2){margin-bottom:var(--spacing-xsmall)}.cart-gift-options-view .dropin-divider{display:none}.cart-gift-options-view .cart-gift-options-view__footer div{margin:0}.cart-gift-options-view .cart-gift-options-view__icon--success{display:grid;grid-template-columns:auto 1fr;gap:0 var(--spacing-xsmall);align-items:center}.cart-gift-options-view .cart-gift-options-view__icon--success svg{fill:var(--color-informational-800);margin-left:auto}.cart-gift-options-view .cart-gift-options-view__icon--success svg path:first-of-type{stroke:var(--color-informational-800)}.cart-gift-options-view .cart-gift-options-view__icon--success svg path:last-of-type{stroke:var(--color-neutral-50)}.cart-gift-options-view .dropin-textarea{padding:var(--spacing-xxsmall) var(--spacing-small);min-height:40px;height:40px}.cart-gift-options-view textarea:focus::placeholder{color:transparent}.dropin-textarea:not(:placeholder-shown)+.dropin-textarea__label--floating,.dropin-textarea:focus+.dropin-textarea__label--floating{display:none;opacity:0;z-index:-1}.cart-gift-options-view .dropin-textarea__label--floating{top:10px}.cart-gift-options-view__spinner{position:absolute;margin:0 auto;z-index:999;left:0;right:0;top:calc(50% - (var(--size) / 2));bottom:0}.cart-gift-options-view--loading{opacity:.4;pointer-events:none}.cart-gift-options-view .cart-gift-options-view--readonly .dropin-card.dropin-card--primary{border-radius:0}.cart-gift-options-view .cart-gift-options-view--readonly .cart-gift-options-readonly__header>span{color:var(--color-neutral-800);font:var(--type-body-1-strong-font);letter-spacing:var(--type-body-1-strong-letter-spacing);cursor:pointer}.cart-gift-options-view.cart-gift-options-view--product .cart-gift-options-view--readonly p{margin:var(--spacing-xxsmall) 0;font:var(--type-body-2-strong-font);color:var(--color-neutral-800)}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .dropin-card__content{gap:var(--spacing-small)}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .cart-gift-options-readonly__header{display:flex;align-items:center;gap:var(--spacing-xsmall)}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .cart-gift-options-readonly__checkboxes{display:grid;grid-template-columns:auto 1fr;gap:0 var(--spacing-xsmall);align-items:center}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly p{margin:0;padding:0}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .cart-gift-options-readonly__checkboxes svg{grid-column:1;grid-row:1;fill:var(--color-positive-800);color:var(--color-neutral-50)}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .cart-gift-options-readonly__checkboxes svg>path:first-of-type{stroke:var(--color-positive-800)}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .cart-gift-options-readonly__checkboxes p{grid-column:2;grid-row:1;color:var(--color-neutral-800);font:var(--type-body-2-default-font);letter-spacing:var(--type-body-2-default-letter-spacing)}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .cart-gift-options-readonly__checkboxes p:last-child{grid-column:2;grid-row:2;color:var(--color-neutral-700);font:var(--type-details-caption-2-font);letter-spacing:var(--type-details-caption-2-letter-spacing)}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .cart-gift-options-readonly__form{display:flex;flex-direction:column;gap:var(--spacing-small) 0;font:var(--type-body-2-strong-font);letter-spacing:var(--type-body-2-strong-letter-spacing);color:var(--color-neutral-800)}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .cart-gift-options-readonly__form div:nth-child(2){display:grid;grid-template-columns:repeat(2,1fr);gap:var(--grid-1-gutters);justify-content:start}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .cart-gift-options-readonly__form div:nth-child(2) p span{display:block;margin-bottom:var(--spacing-xsmall)}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .cart-gift-options-readonly__form div:nth-child(2) p span:first-child{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing)}.cart-gift-options-view.cart-gift-options-view--order .cart-gift-options-view--readonly .cart-gift-options-readonly__form div:last-child p:first-child{font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing);margin-bottom:var(--spacing-xsmall)}",{styleId:"Cart"});
4
+ import{jsx as o}from"@dropins/tools/preact-jsx-runtime.js";import{deepmerge as d,Render as p}from"@dropins/tools/lib.js";import{useState as c,useEffect as m}from"@dropins/tools/preact-hooks.js";import{UIProvider as g}from"@dropins/tools/components.js";import{events as f}from"@dropins/tools/event-bus.js";import"./chunks/resetCart.js";import{c as u}from"./chunks/refreshCart.js";import"@dropins/tools/fetch-graphql.js";import"./chunks/persisted-data.js";import"./fragments.js";const h={Cart:{heading:"Shopping Cart ({count})",editCart:"Edit",viewAll:"View all in cart",viewMore:"View more"},MiniCart:{heading:"Shopping Cart ({count})",subtotal:"Subtotal",subtotalExcludingTaxes:"Subtotal excluding taxes",cartLink:"View Cart",checkoutLink:"Checkout"},EmptyCart:{heading:"Your cart is empty",cta:"Start shopping"},PriceSummary:{taxToBeDetermined:"TBD",checkout:"Checkout",orderSummary:"Order Summary",giftCard:{label:"Gift Card",applyAction:"Apply",ariaLabel:"Enter gift card code",ariaLabelRemove:"Remove gift card",placeholder:"Enter code",title:"Gift Card",errors:{empty:"Please enter a gift card code."},appliedGiftCards:{label:{singular:"Gift card",plural:"Gift cards"},remainingBalance:"Remaining balance"}},giftOptionsTax:{printedCard:{title:"Printed card",inclTax:"Including taxes",exclTax:"excluding taxes"},itemGiftWrapping:{title:"Item gift wrapping",inclTax:"Including taxes",exclTax:"excluding taxes"},orderGiftWrapping:{title:"Order gift wrapping",inclTax:"Including taxes",exclTax:"excluding taxes"}},subTotal:{label:"Subtotal",withTaxes:"Including taxes",withoutTaxes:"excluding taxes"},shipping:{label:"Shipping",editZipAction:"Apply",estimated:"Estimated Shipping",estimatedDestination:"Estimated Shipping to",destinationLinkAriaLabel:"Change destination",zipPlaceholder:"Zip Code",withTaxes:"Including taxes",withoutTaxes:"excluding taxes",alternateField:{zip:"Estimate using country/zip",state:"Estimate using country/state"}},taxes:{total:"Tax Total",totalOnly:"Tax",breakdown:"Taxes",showBreakdown:"Show Tax Breakdown",hideBreakdown:"Hide Tax Breakdown",estimated:"Estimated Tax"},total:{estimated:"Estimated Total",free:"Free",label:"Total",withoutTax:"Total excluding taxes",saved:"Total saved"},estimatedShippingForm:{country:{placeholder:"Country"},state:{placeholder:"State"},zip:{placeholder:"Zip Code"},apply:{label:"Apply"}},freeShipping:"Free",coupon:{applyAction:"Apply",placeholder:"Enter code",title:"Discount code",ariaLabelRemove:"Remove coupon"}},CartItem:{discountedPrice:"Discounted Price",download:"file",message:"Note",recipient:"To",regularPrice:"Regular Price",sender:"From",file:"{count} file",files:"{count} files",lowInventory:"Only {count} left!",insufficientQuantity:"Only {inventory} of {count} in stock",insufficientQuantityGeneral:"Not enough items for sale",notAvailableMessage:"Requested qty. not available",discountPercentage:"{discount}% off",savingsAmount:"Savings"},EstimateShipping:{label:"Shipping",editZipAction:"Apply",estimated:"Estimated Shipping",estimatedDestination:"Estimated Shipping to",destinationLinkAriaLabel:"{destination}, Change destination",zipPlaceholder:"Zip Code",withTaxes:"Including taxes",withoutTaxes:"excluding taxes",alternateField:{zip:"Estimate using country/zip",state:"Estimate using country/state"}},OutOfStockMessage:{heading:"Your cart contains items with limited stock",message:"Please adjust quantities to continue",alert:"Out of stock",action:"Remove all out of stock items from cart"},GiftOptions:{formText:{requiredFieldError:"This field is required"},modal:{defaultTitle:"Gift wrapping for Cart",title:"Gift wrapping for",wrappingText:"Wrapping choice",wrappingSubText:"",modalConfirmButton:"Apply",modalCancelButton:"Cancel"},order:{customize:"Customize",accordionHeading:"Gift options",giftReceiptIncluded:{title:"Use gift receipt",subtitle:"The receipt and order invoice will not show the price."},printedCardIncluded:{title:"Include printed card",subtitle:""},giftOptionsWrap:{title:"Gift wrap this order",subtitle:"Wrapping option:"},formContent:{formTitle:"Add a message to the order (optional)",formTo:"To",formFrom:"From",giftMessageTitle:"Gift message",formToPlaceholder:"Recipient’s name",formFromPlaceholder:"Sender’s name",formMessagePlaceholder:"Gift message"},readOnlyFormView:{title:"Selected gift order options",giftWrap:"Gift wrap this order",giftWrapOptions:"Wrapping option:",giftReceipt:"Use gift receipt",giftReceiptText:"The receipt and order invoice will not show the price.",printCard:"Use printed card",printCardText:"",formTitle:"Your gift message",formTo:"To",formFrom:"From",formMessageTitle:"Gift message"}},product:{customize:"Customize",accordionHeading:"Gift options",giftReceiptIncluded:{title:"Use gift receipt",subtitle:"The receipt and order invoice will not show the price."},printedCardIncluded:{title:"Include printed card",subtitle:""},giftOptionsWrap:{title:"Gift wrap this item",subtitle:"Wrapping option:"},formContent:{formTitle:"Add a message to the item (optional)",formTo:"To",formFrom:"From",giftMessageTitle:"Gift message",formToPlaceholder:"Recipient’s name",formFromPlaceholder:"Sender’s name",formMessagePlaceholder:"Gift message"},readOnlyFormView:{title:"This item is a gift",wrapping:"Wrapping:",recipient:"To:",sender:"From:",message:"Message:"}}}},x={Cart:h},T={default:x},w=({children:r})=>{var i;const[e,n]=c(),s=(i=u.getConfig())==null?void 0:i.langDefinitions;m(()=>{const t=f.on("locale",a=>{a!==e&&n(a)},{eager:!0});return()=>{t==null||t.off()}},[e]);const l=d(T,s??{});return o(g,{lang:e,langDefinitions:l,children:r})},A=new p(o(w,{}));export{A as render};
@@ -0,0 +1,35 @@
1
+ import { WrappingImage, Price } from '../data/models';
2
+
3
+ export type GiftOptionsReadOnlyViewProps = 'primary' | 'secondary';
4
+ export type GiftOptionsViewProps = 'product' | 'order';
5
+ export type GiftOptionsDataSourcesProps = 'cart' | 'order';
6
+ export type GiftWrappingConfigProps = {
7
+ uid: string;
8
+ design: string;
9
+ selected: boolean;
10
+ image: WrappingImage;
11
+ price: Price;
12
+ };
13
+ export type GiftFormDataType = {
14
+ giftReceiptIncluded?: boolean;
15
+ printedCardIncluded?: boolean;
16
+ isGiftWrappingSelected?: boolean;
17
+ recipientName?: string;
18
+ senderName?: string;
19
+ message?: string;
20
+ giftWrappingId?: string;
21
+ itemId?: string;
22
+ giftWrappingOptions?: GiftWrappingConfigProps[];
23
+ };
24
+ export type ProductGiftOptionsConfig = {
25
+ giftWrappingAvailable: boolean;
26
+ giftMessageAvailable: boolean;
27
+ giftWrappingPrice?: Price;
28
+ giftMessage?: {
29
+ recipientName?: string;
30
+ senderName?: string;
31
+ message?: string;
32
+ };
33
+ productGiftWrapping: GiftWrappingConfigProps[];
34
+ };
35
+ //# sourceMappingURL=giftOptions.types.d.ts.map
@@ -0,0 +1,2 @@
1
+ export * from './giftOptions.types';
2
+ //# sourceMappingURL=index.d.ts.map