@dropins/storefront-wishlist 0.1.0-alpha1

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 (133) hide show
  1. package/LICENSE.md +127 -0
  2. package/api/addProductsToWishlist/addProductsToWishlist.d.ts +15 -0
  3. package/api/addProductsToWishlist/graphql/addProductsToWishlistMutation.d.ts +18 -0
  4. package/api/addProductsToWishlist/index.d.ts +18 -0
  5. package/api/fetch-graphql/fetch-graphql.d.ts +24 -0
  6. package/api/fetch-graphql/index.d.ts +18 -0
  7. package/api/fragments.d.ts +5 -0
  8. package/api/getProductBySku/getProductBySku.d.ts +4 -0
  9. package/api/getProductBySku/graphql/getProductBySku.graphql.d.ts +18 -0
  10. package/api/getProductBySku/graphql/index.d.ts +18 -0
  11. package/api/getProductBySku/index.d.ts +18 -0
  12. package/api/getStoreConfig/getStoreConfig.d.ts +4 -0
  13. package/api/getStoreConfig/graphql/StoreConfigQuery.d.ts +18 -0
  14. package/api/getStoreConfig/index.d.ts +18 -0
  15. package/api/getWishlistById/getWishlistById.d.ts +4 -0
  16. package/api/getWishlistById/graphql/getWishlistById.graphql.d.ts +18 -0
  17. package/api/getWishlistById/graphql/index.d.ts +18 -0
  18. package/api/getWishlistById/index.d.ts +18 -0
  19. package/api/getWishlists/getWishlists.d.ts +4 -0
  20. package/api/getWishlists/graphql/getWishlists.graphql.d.ts +18 -0
  21. package/api/getWishlists/graphql/index.d.ts +18 -0
  22. package/api/getWishlists/index.d.ts +18 -0
  23. package/api/graphql/CustomizableOptionsFragment.graphql.d.ts +18 -0
  24. package/api/graphql/PriceRangeFragment.graphql.d.ts +18 -0
  25. package/api/graphql/ProductFragment.graphql.d.ts +18 -0
  26. package/api/graphql/WishlistFragment.graphql.d.ts +18 -0
  27. package/api/graphql/WishlistItemFragment.graphql.d.ts +18 -0
  28. package/api/graphql/WishlistPaginationArguments.graphql.d.ts +18 -0
  29. package/api/graphql/WishlistPaginationVariables.graphql.d.ts +18 -0
  30. package/api/index.d.ts +29 -0
  31. package/api/initialize/index.d.ts +2 -0
  32. package/api/initialize/initialize.d.ts +11 -0
  33. package/api/initializeWishlist/index.d.ts +18 -0
  34. package/api/initializeWishlist/initializeWishlist.d.ts +6 -0
  35. package/api/localStorage/index.d.ts +2 -0
  36. package/api/removeProductsFromWishlist/graphql/removeProductsFromWishlistMutation.d.ts +18 -0
  37. package/api/removeProductsFromWishlist/index.d.ts +18 -0
  38. package/api/removeProductsFromWishlist/removeProductsFromWishlist.d.ts +9 -0
  39. package/api/resetWishlist/index.d.ts +18 -0
  40. package/api/resetWishlist/resetWishlist.d.ts +4 -0
  41. package/api/updateProductsInWishlist/graphql/updateProductsInWishlistMutation.d.ts +18 -0
  42. package/api/updateProductsInWishlist/index.d.ts +18 -0
  43. package/api/updateProductsInWishlist/updateProductsInWishlist.d.ts +13 -0
  44. package/api.d.ts +1 -0
  45. package/api.js +23 -0
  46. package/chunks/Add.js +3 -0
  47. package/chunks/AddressBook.js +3 -0
  48. package/chunks/Bulk.js +3 -0
  49. package/chunks/Burger.js +3 -0
  50. package/chunks/Card.js +3 -0
  51. package/chunks/Check.js +3 -0
  52. package/chunks/CheckWithCircle.js +3 -0
  53. package/chunks/ChevronRight.js +3 -0
  54. package/chunks/ChevronUp.js +3 -0
  55. package/chunks/Close.js +3 -0
  56. package/chunks/Coupon.js +3 -0
  57. package/chunks/Date.js +3 -0
  58. package/chunks/Delivery.js +3 -0
  59. package/chunks/EmptyBox.js +3 -0
  60. package/chunks/Eye.js +3 -0
  61. package/chunks/EyeClose.js +3 -0
  62. package/chunks/Gift.js +3 -0
  63. package/chunks/GiftCard.js +3 -0
  64. package/chunks/HeartFilled.js +3 -0
  65. package/chunks/InfoFilled.js +3 -0
  66. package/chunks/Locker.js +3 -0
  67. package/chunks/Minus.js +3 -0
  68. package/chunks/Order.js +3 -0
  69. package/chunks/OrderError.js +3 -0
  70. package/chunks/OrderSuccess.js +3 -0
  71. package/chunks/PaymentError.js +3 -0
  72. package/chunks/Placeholder.js +3 -0
  73. package/chunks/PlaceholderFilled.js +3 -0
  74. package/chunks/Search.js +3 -0
  75. package/chunks/SearchFilled.js +3 -0
  76. package/chunks/Sort.js +3 -0
  77. package/chunks/Star.js +3 -0
  78. package/chunks/User.js +3 -0
  79. package/chunks/View.js +3 -0
  80. package/chunks/Wallet.js +3 -0
  81. package/chunks/Warning.js +3 -0
  82. package/chunks/WarningFilled.js +3 -0
  83. package/chunks/WarningWithCircle.js +3 -0
  84. package/chunks/WishlistItem.js +3 -0
  85. package/chunks/getWishlistById.js +31 -0
  86. package/chunks/initializeWishlist.js +110 -0
  87. package/chunks/removeProductsFromWishlist.js +166 -0
  88. package/components/EmptyWishlist/EmptyWishlist.d.ts +8 -0
  89. package/components/EmptyWishlist/index.d.ts +19 -0
  90. package/components/ImageCarousel/ImageCarousel.d.ts +13 -0
  91. package/components/ImageCarousel/index.d.ts +19 -0
  92. package/components/Login/Login.d.ts +4 -0
  93. package/components/Login/index.d.ts +18 -0
  94. package/components/ProductItem/ProductItem.d.ts +16 -0
  95. package/components/ProductItem/index.d.ts +19 -0
  96. package/components/Wishlist/Wishlist.d.ts +17 -0
  97. package/components/Wishlist/index.d.ts +19 -0
  98. package/components/index.d.ts +22 -0
  99. package/containers/Wishlist/Wishlist.d.ts +12 -0
  100. package/containers/Wishlist/index.d.ts +19 -0
  101. package/containers/Wishlist.d.ts +3 -0
  102. package/containers/Wishlist.js +3 -0
  103. package/containers/WishlistItem/WishlistItem.d.ts +13 -0
  104. package/containers/WishlistItem/index.d.ts +19 -0
  105. package/containers/WishlistItem.d.ts +3 -0
  106. package/containers/WishlistItem.js +3 -0
  107. package/containers/WishlistToggle/WishlistToggle.d.ts +9 -0
  108. package/containers/WishlistToggle/index.d.ts +19 -0
  109. package/containers/WishlistToggle.d.ts +3 -0
  110. package/containers/WishlistToggle.js +3 -0
  111. package/containers/index.d.ts +20 -0
  112. package/data/models/index.d.ts +20 -0
  113. package/data/models/product.d.ts +60 -0
  114. package/data/models/selected-customizable-option.d.ts +30 -0
  115. package/data/models/store-config.d.ts +27 -0
  116. package/data/models/wishlist.d.ts +20 -0
  117. package/data/transforms/__fixtures__/productData.d.ts +6 -0
  118. package/data/transforms/__fixtures__/wishlistData.d.ts +5 -0
  119. package/data/transforms/index.d.ts +20 -0
  120. package/data/transforms/transform-product.d.ts +4 -0
  121. package/data/transforms/transform-store-config.d.ts +4 -0
  122. package/data/transforms/transform-wishlist.d.ts +4 -0
  123. package/i18n/en_US.json.d.ts +38 -0
  124. package/lib/cookies.d.ts +18 -0
  125. package/lib/fetch-error.d.ts +21 -0
  126. package/lib/persisted-data.d.ts +5 -0
  127. package/lib/state.d.ts +14 -0
  128. package/package.json +1 -0
  129. package/render/Provider.d.ts +8 -0
  130. package/render/index.d.ts +2 -0
  131. package/render/render.d.ts +4 -0
  132. package/render.d.ts +1 -0
  133. package/render.js +5 -0
@@ -0,0 +1,20 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2024 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export * from './store-config';
18
+ export * from './product';
19
+ export * from './wishlist';
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,60 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export interface Product {
18
+ name: string;
19
+ sku: string;
20
+ uid: string;
21
+ image: Image;
22
+ stockStatus?: string;
23
+ canonicalUrl?: string;
24
+ urlKey: string;
25
+ categories: string[];
26
+ prices: PriceDetails;
27
+ productAttributes?: Attribute[];
28
+ }
29
+ export interface PriceDetails {
30
+ regularPrice: MoneyProps;
31
+ finalPrice: MoneyProps;
32
+ discount?: {
33
+ amountOff: number;
34
+ percentOff: number;
35
+ };
36
+ fixedProductTaxes: FixedProductTaxesProps[];
37
+ }
38
+ interface MoneyProps {
39
+ value: number;
40
+ currency: string;
41
+ }
42
+ interface FixedProductTaxesProps {
43
+ money: MoneyProps;
44
+ label: string;
45
+ }
46
+ interface Image {
47
+ alt: string;
48
+ src: string;
49
+ }
50
+ interface AttributeOption {
51
+ value: string;
52
+ label: string;
53
+ }
54
+ interface Attribute {
55
+ code: string;
56
+ value?: string;
57
+ selected_options?: AttributeOption[];
58
+ }
59
+ export {};
60
+ //# sourceMappingURL=product.d.ts.map
@@ -0,0 +1,30 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export interface SelectedCustomizableOption {
18
+ customizable_option_uid: string;
19
+ label: string;
20
+ type: string;
21
+ required: boolean;
22
+ sort_order: number;
23
+ values: SelectedCustomizableOptionValue[];
24
+ }
25
+ export interface SelectedCustomizableOptionValue {
26
+ customizable_option_value_uid: string;
27
+ label: string;
28
+ value: string;
29
+ }
30
+ //# sourceMappingURL=selected-customizable-option.d.ts.map
@@ -0,0 +1,27 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2024 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export interface StoreConfigModel {
18
+ wishlistIsEnabled: boolean;
19
+ wishlistMaxNumber: number;
20
+ wishlistMultipleListIsEnabled: boolean;
21
+ fixedProductTaxesEnabled: boolean;
22
+ fixedProductTaxesApply: boolean;
23
+ fixedProductTaxesEnabledDisplayInProductLists: string;
24
+ fixedProductTaxesEnabledDisplayInSalesModules: string;
25
+ fixedProductTaxesEnabledDisplayInProductView: string;
26
+ }
27
+ //# sourceMappingURL=store-config.d.ts.map
@@ -0,0 +1,20 @@
1
+ import { SelectedCustomizableOption } from './selected-customizable-option';
2
+ import { Product } from './product';
3
+
4
+ export interface Wishlist {
5
+ id: string;
6
+ updated_at: string;
7
+ sharing_code: string;
8
+ items_count: number;
9
+ total_pages: number;
10
+ items: Item[];
11
+ }
12
+ export interface Item {
13
+ id: string;
14
+ quantity: number;
15
+ description: string;
16
+ added_at: string;
17
+ product: Product;
18
+ customizableOptions: SelectedCustomizableOption[];
19
+ }
20
+ //# sourceMappingURL=wishlist.d.ts.map
@@ -0,0 +1,6 @@
1
+ import { Product } from '../../models/product';
2
+
3
+ declare const product: Product;
4
+ declare const productOutOfStock: Product;
5
+ export { product, productOutOfStock };
6
+ //# sourceMappingURL=productData.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { Wishlist } from '../../models/wishlist';
2
+
3
+ declare const wishlist: Wishlist;
4
+ export { wishlist };
5
+ //# sourceMappingURL=wishlistData.d.ts.map
@@ -0,0 +1,20 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2024 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export * from './transform-store-config';
18
+ export * from './transform-wishlist';
19
+ export * from './transform-product';
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { Product } from '../models';
2
+
3
+ export declare function transformProduct(data: any): Product | null;
4
+ //# sourceMappingURL=transform-product.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { StoreConfigModel } from '../models';
2
+
3
+ export declare function transformStoreConfig(data: any): StoreConfigModel | null;
4
+ //# sourceMappingURL=transform-store-config.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { Wishlist } from '../models/wishlist';
2
+
3
+ export declare function transformWishlist(data: any): Wishlist | null;
4
+ //# sourceMappingURL=transform-wishlist.d.ts.map
@@ -0,0 +1,38 @@
1
+ declare const _default: {
2
+ "Wishlist": {
3
+ "EmptyWishlist": {
4
+ "heading": "Your wishlist is empty",
5
+ "message": "Add items by clicking on the heart icon.",
6
+ "cta": "Start shopping"
7
+ },
8
+ "Wishlist": {
9
+ "heading": "Wishlist {count}"
10
+ },
11
+ "Alert": {
12
+ "addProduct": {
13
+ "heading": "Added to wishlist",
14
+ "message": "{product} has been added to your wishlist"
15
+ },
16
+ "removeProduct": {
17
+ "heading": "Removed from wishlist",
18
+ "message": "{product} has been removed from your wishlist"
19
+ },
20
+ "moveToCart": {
21
+ "heading": "Moved to cart",
22
+ "message": "{product} has been moved to your cart"
23
+ },
24
+ "viewWishlist": "View wishlist"
25
+ },
26
+ "Login": {
27
+ "sync": " to sync your saved items across all your devices.",
28
+ "logIn": "Log in"
29
+ }
30
+ },
31
+ "ProductItem": {
32
+ "CartActionButton": "Move To Cart",
33
+ "TrashActionButton": "Remove this product from wishlist"
34
+ }
35
+ }
36
+ ;
37
+
38
+ export default _default;
@@ -0,0 +1,18 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2024 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export declare function getCookie(cookieName: string): string | null;
18
+ //# sourceMappingURL=cookies.d.ts.map
@@ -0,0 +1,21 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2024 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ /** Actions */
18
+ export declare const handleFetchError: (errors: Array<{
19
+ message: string;
20
+ }>) => never;
21
+ //# sourceMappingURL=fetch-error.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { Wishlist } from '../data/models';
2
+
3
+ export declare function setPersistedWishlistData(data: Wishlist | null): void;
4
+ export declare function getPersistedWishlistData(): Wishlist | {};
5
+ //# sourceMappingURL=persisted-data.d.ts.map
package/lib/state.d.ts ADDED
@@ -0,0 +1,14 @@
1
+ import { StoreConfigModel } from '../data/models/store-config';
2
+
3
+ type State = {
4
+ wishlistId: string | null;
5
+ initializing?: boolean;
6
+ locale?: string;
7
+ config?: StoreConfigModel | null;
8
+ authenticated: boolean;
9
+ currentPage?: number;
10
+ pageSize?: number;
11
+ };
12
+ export declare const state: State;
13
+ export {};
14
+ //# sourceMappingURL=state.d.ts.map
package/package.json ADDED
@@ -0,0 +1 @@
1
+ {"name": "@dropins/storefront-wishlist", "version": "0.1.0-alpha1", "@dropins/tools": "~1.0.0", "license": "SEE LICENSE IN LICENSE.md"}
@@ -0,0 +1,8 @@
1
+ import { FunctionComponent } from 'preact';
2
+
3
+ interface CartProviderProps {
4
+ children?: any;
5
+ }
6
+ export declare const Provider: FunctionComponent<CartProviderProps>;
7
+ export {};
8
+ //# sourceMappingURL=Provider.d.ts.map
@@ -0,0 +1,2 @@
1
+ export * from './render';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { Render } from '../../@adobe-commerce/elsie/src/lib';
2
+
3
+ export declare const render: Render;
4
+ //# sourceMappingURL=render.d.ts.map
package/render.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from './render/index'
package/render.js ADDED
@@ -0,0 +1,5 @@
1
+ /*! Copyright 2025 Adobe
2
+ All Rights Reserved. */
3
+ (function(r,e){try{if(typeof document<"u"){const i=document.createElement("style"),n=e.styleId;for(const t in e.attributes)i.setAttribute(t,e.attributes[t]);i.setAttribute("data-dropin",n),i.appendChild(document.createTextNode(r));const a=document.querySelector('style[data-dropin="sdk"]');if(a)a.after(i);else{const t=document.querySelector('link[rel="stylesheet"], style');t?t.before(i):document.head.append(i)}}}catch(i){console.error("dropin-styles (injectCodeFunction)",i)}})(`.wishlist-empty-wishlist{container-type:inline-size;container-name:wishlist}.wishlist-empty-wishlist__wrapper .dropin-card--secondary{display:grid;grid-auto-rows:min-content;justify-content:center;text-align:center;border:unset}.wishlist-empty-wishlist .dropin-illustrated-message__heading{font:var(--type-headline-1-font)}.wishlist-empty-wishlist .dropin-illustrated-message__message{font:var(--type-body-1-default-font)}@container wishlist (width < 737px){.wishlist-empty-wishlist__wrapper .dropin-card{border:unset;border-style:hidden}}.wishlist-wishlist{container-type:inline-size;container-name:wishlist-grid;max-width:inherit}.wishlist-wishlist__content{display:grid;gap:var(--spacing-medium);margin:auto;padding:var(--spacing-medium) 0}.wishlist-wishlist__heading{color:var(--color-neutral-800);display:grid;font:var(--type-headline-1-font);letter-spacing:var(--type-headline-1-letter-spacing);padding:var(--spacing-small) 0;row-gap:var(--spacing-xsmall)}.wishlist-wishlist__heading-count{color:#6d6d6d;margin-left:var(--spacing-xxsmall);letter-spacing:normal;font:var(--type-details-caption-2-font)}.wishlist-wishlist__content.wishlist-wishlist__content--empty{border:var(--shape-border-width-2) solid var(--color-neutral-400);border-radius:var(--shape-border-radius-2);grid-template-columns:repeat(1,1fr);padding:var(--spacing-xxbig)}@media only screen and (max-width: 480px){.wishlist-wishlist__content{grid-template-columns:repeat(1,1fr)}}@media only screen and (min-width: 480px) and (max-width: 600px){.wishlist-wishlist__content{grid-template-columns:repeat(2,1fr)}}@media only screen and (min-width: 600px){.wishlist-wishlist__content{grid-template-columns:repeat(2,1fr)}}@media only screen and (min-width: 768px){.wishlist-wishlist__content{grid-template-columns:repeat(3,1fr)}}.wishlist-product-item{background-color:var(--color-neutral-50);margin-bottom:var(--spacing-small)}.wishlist-product-item__content{display:flex;flex-direction:column;gap:var(--spacing-small)}.wishlist-product-item__content .wishlist-product-item-image{height:100%;padding:0;width:100%}.wishlist-product-item__content .wishlist-product-item__title{color:var(--color-neutral-800);font:var(--type-body-2-strong-font);letter-spacing:var(--type-body-2-strong-letter-spacing);margin:0;position:relative}.wishlist-product-item-name{display:block}.wishlist-product-item__content .wishlist-product-item-button__remove{position:absolute;right:0;top:-10px}.wishlist-product-item__content .wishlist-product-item-price{display:inline;font:var(--type-body-2-default-font)}.strikeout{text-decoration:line-through}.wishlist-product-item__content .wishlist-product-item-discounted-price{display:inline;margin-left:var(--spacing-xsmall);color:var(--color-alert-800)}.wishlist-product-item-move-to-cart{display:grid;grid-area:product-add-to-cart;justify-content:end}.wishlist-product-item-tax{color:var(--color-neutral-500)}.wishlist-product-item-tax span{margin-right:var(--spacing-xsmall)}.image-carousel{display:flex;flex-direction:column;gap:var(--spacing-medium);padding:var(--spacing-medium)}.image-carousel .image-carousel-image{object-fit:contain;padding:var(--spacing-xxsmall) 0;width:100%}.image-switcher-area{margin-top:var(--spacing-small);text-align:center;width:100%}.image-switcher-area .image-switcher{cursor:pointer;border-radius:50%;display:inline-flex;height:var(--spacing-xsmall);margin:0 var(--spacing-xxsmall);width:var(--spacing-xsmall)}.image-switcher-area .image-switcher-active{background-color:var(--color-neutral-900);border:var(--shape-border-width-1) solid var(--color-brand-700)}.image-switcher-area .image-switcher-inactive{background-color:var(--color-neutral-600);border:var(--shape-border-width-1) solid var(--color-neutral-600)}@media only screen and (max-width: 480px){.image-carousel{gap:var(--spacing-xxsmall)}.image-carousel .image-carousel-image{height:250px}}@media only screen and (min-width: 480px) and (max-width: 600px){.image-carousel{gap:var(--spacing-xsmall)}.image-carousel .image-carousel-image{height:300px}}@media only screen and (min-width: 600px){.image-carousel{gap:var(--spacing-xsmall)}.image-carousel .image-carousel-image{height:300px}}@media only screen and (min-width: 768px){.image-carousel{gap:var(--spacing-small)}.image-carousel .image-carousel-image{height:350px}}@media only screen and (min-width: 1024px){.image-carousel{gap:var(--spacing-medium)}.image-carousel .image-carousel-image{height:400px}}.wishlist-login__sign-in{grid-column-start:2;color:var(--color-neutral-800);font:var(--type-body-1-default-font);letter-spacing:var(--type-body-2-default-letter-spacing);margin-top:var(--spacing-xxsmall);text-align:center}a.wishlist-login__link{font:var(--type-body-1-strong-font);letter-spacing:var(--type-body-2-strong-letter-spacing);margin-left:var(--spacing-xxsmall);text-decoration:underline;text-decoration-thickness:auto;text-underline-offset:auto;color:var(--color-neutral-800)}a.wishlist-login__link:hover{color:var(--color-neutral-800);text-decoration:underline;text-decoration-thickness:auto;text-underline-offset:auto}
4
+ .dropin-icon--shape-stroke-1{stroke-width:var(--shape-icon-stroke-1)}.dropin-icon--shape-stroke-2{stroke-width:var(--shape-icon-stroke-2)}.dropin-icon--shape-stroke-3{stroke-width:var(--shape-icon-stroke-3)}.dropin-icon--shape-stroke-4{stroke-width:var(--shape-icon-stroke-4)}.dropin-pagination{display:flex;justify-content:center;align-items:center;gap:0 var(--grid-2-gutters)}.dropin-pagination-arrow{margin:0;padding:0;box-sizing:border-box;background-color:transparent;border:none;display:flex;justify-content:center;align-items:center;cursor:pointer}.dropin-pagination-arrow--backward svg{transform:rotate(90deg)}.dropin-pagination-arrow--forward svg{transform:rotate(-90deg)}.dropin-pagination_list{list-style:none;display:flex;justify-content:center;align-items:center;gap:0 var(--grid-2-gutters);margin:0;padding:0}.dropin-pagination_list-item{display:flex;justify-content:center;align-items:center;margin:0;padding:0;width:16px;height:16px}.dropin-pagination_list-item--active{background-color:var(--color-neutral-300);width:16px;height:16px;border-radius:50%;display:flex;justify-content:center;align-items:center}.dropin-pagination_list-item button{cursor:pointer;margin:0;padding:0;background-color:transparent;border:none;font:var(--type-details-caption-1-font);letter-spacing:var(--type-details-caption-1-letter-spacing)}.dropin-pagination_list-item--active button{cursor:default}.dropin-pagination_list-item--active button:disabled,.dropin-pagination_list-item--ellipsis button,.dropin-pagination-arrow--backward:disabled,.dropin-pagination-arrow--forward:disabled{cursor:default}.dropin-pagination button:not(:disabled){color:var(--color-neutral-800)}.dropin-pagination button{-moz-appearance:none;appearance:none;-webkit-appearance:none}`,{styleId:"Wishlist"});
5
+ import{jsx as e}from"@dropins/tools/preact-jsx-runtime.js";import{Render as n}from"@dropins/tools/lib.js";import{useState as d,useEffect as a}from"@dropins/tools/preact-hooks.js";import{UIProvider as c}from"@dropins/tools/components.js";import{events as m}from"@dropins/tools/event-bus.js";const h={EmptyWishlist:{heading:"Your wishlist is empty",message:"Add items by clicking on the heart icon.",cta:"Start shopping"},Wishlist:{heading:"Wishlist {count}"},Alert:{addProduct:{heading:"Added to wishlist",message:"{product} has been added to your wishlist"},removeProduct:{heading:"Removed from wishlist",message:"{product} has been removed from your wishlist"},moveToCart:{heading:"Moved to cart",message:"{product} has been moved to your cart"},viewWishlist:"View wishlist"},Login:{sync:" to sync your saved items across all your devices.",logIn:"Log in"}},u={CartActionButton:"Move To Cart",TrashActionButton:"Remove this product from wishlist"},l={Wishlist:h,ProductItem:u},g={default:l},f=({children:o})=>{const[s,i]=d("en_US");return a(()=>{const t=m.on("locale",r=>{i(r)},{eager:!0});return()=>{t==null||t.off()}},[]),e(c,{lang:s,langDefinitions:g,children:o})},W=new n(e(f,{}));export{W as render};