@gfed-medusa/sf-lib-common 1.0.0
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.
- package/LICENSE +21 -0
- package/README.md +38 -0
- package/dist/apollo-client-BuznVAE4.js +66 -0
- package/dist/apollo-client-BuznVAE4.js.map +1 -0
- package/dist/cart-CLJvIUQC.js +103 -0
- package/dist/cart-CLJvIUQC.js.map +1 -0
- package/dist/cart-D99u8SUJ.js +16 -0
- package/dist/cart-D99u8SUJ.js.map +1 -0
- package/dist/cart-XQIczSA1.js +42 -0
- package/dist/cart-XQIczSA1.js.map +1 -0
- package/dist/cart-button-NgoZb9LI.js +12 -0
- package/dist/cart-button-NgoZb9LI.js.map +1 -0
- package/dist/cart-dropdown-_ZpvhX--.js +195 -0
- package/dist/cart-dropdown-_ZpvhX--.js.map +1 -0
- package/dist/cart-p3ffQQ5R.js +142 -0
- package/dist/cart-p3ffQQ5R.js.map +1 -0
- package/dist/categories-BCbIwAcV.js +16 -0
- package/dist/categories-BCbIwAcV.js.map +1 -0
- package/dist/collections-Buw8B8l9.js +20 -0
- package/dist/collections-Buw8B8l9.js.map +1 -0
- package/dist/collections-Dkcq21tC.js +22 -0
- package/dist/collections-Dkcq21tC.js.map +1 -0
- package/dist/components/breadcrumbs/index.d.ts +22 -0
- package/dist/components/breadcrumbs/index.d.ts.map +1 -0
- package/dist/components/breadcrumbs/index.js +54 -0
- package/dist/components/breadcrumbs/index.js.map +1 -0
- package/dist/components/cart-button/index.d.ts +7 -0
- package/dist/components/cart-button/index.d.ts.map +1 -0
- package/dist/components/cart-button/index.js +18 -0
- package/dist/components/cart-dropdown/index.d.ts +12 -0
- package/dist/components/cart-dropdown/index.d.ts.map +1 -0
- package/dist/components/cart-dropdown/index.js +19 -0
- package/dist/components/cart-mismatch-banner/index.d.ts +11 -0
- package/dist/components/cart-mismatch-banner/index.d.ts.map +1 -0
- package/dist/components/cart-mismatch-banner/index.js +55 -0
- package/dist/components/cart-mismatch-banner/index.js.map +1 -0
- package/dist/components/country-select/index.d.ts +14 -0
- package/dist/components/country-select/index.d.ts.map +1 -0
- package/dist/components/country-select/index.js +31 -0
- package/dist/components/country-select/index.js.map +1 -0
- package/dist/components/delete-button/index.d.ts +15 -0
- package/dist/components/delete-button/index.d.ts.map +1 -0
- package/dist/components/delete-button/index.js +12 -0
- package/dist/components/error-message/index.d.ts +13 -0
- package/dist/components/error-message/index.d.ts.map +1 -0
- package/dist/components/error-message/index.js +15 -0
- package/dist/components/error-message/index.js.map +1 -0
- package/dist/components/footer/index.d.ts +7 -0
- package/dist/components/footer/index.d.ts.map +1 -0
- package/dist/components/footer/index.js +115 -0
- package/dist/components/footer/index.js.map +1 -0
- package/dist/components/free-shipping-price-nudge/index.d.ts +17 -0
- package/dist/components/free-shipping-price-nudge/index.d.ts.map +1 -0
- package/dist/components/free-shipping-price-nudge/index.js +182 -0
- package/dist/components/free-shipping-price-nudge/index.js.map +1 -0
- package/dist/components/interactive-link/index.d.ts +17 -0
- package/dist/components/interactive-link/index.d.ts.map +1 -0
- package/dist/components/interactive-link/index.js +25 -0
- package/dist/components/interactive-link/index.js.map +1 -0
- package/dist/components/layout-country-select/index.d.ts +16 -0
- package/dist/components/layout-country-select/index.d.ts.map +1 -0
- package/dist/components/layout-country-select/index.js +14 -0
- package/dist/components/line-item-options/index.d.ts +17 -0
- package/dist/components/line-item-options/index.d.ts.map +1 -0
- package/dist/components/line-item-options/index.js +3 -0
- package/dist/components/line-item-price/index.d.ts +17 -0
- package/dist/components/line-item-price/index.d.ts.map +1 -0
- package/dist/components/line-item-price/index.js +3 -0
- package/dist/components/localized-client-link/index.d.ts +24 -0
- package/dist/components/localized-client-link/index.d.ts.map +1 -0
- package/dist/components/localized-client-link/index.js +5 -0
- package/dist/components/modal/index.d.ts +39 -0
- package/dist/components/modal/index.d.ts.map +1 -0
- package/dist/components/modal/index.js +4 -0
- package/dist/components/nav/index.d.ts +7 -0
- package/dist/components/nav/index.d.ts.map +1 -0
- package/dist/components/nav/index.js +85 -0
- package/dist/components/nav/index.js.map +1 -0
- package/dist/components/portable-text/index.d.ts +13 -0
- package/dist/components/portable-text/index.d.ts.map +1 -0
- package/dist/components/portable-text/index.js +3 -0
- package/dist/components/preview-price/index.d.ts +12 -0
- package/dist/components/preview-price/index.d.ts.map +1 -0
- package/dist/components/preview-price/index.js +3 -0
- package/dist/components/product-card/index.d.ts +65 -0
- package/dist/components/product-card/index.d.ts.map +1 -0
- package/dist/components/product-card/index.js +146 -0
- package/dist/components/product-card/index.js.map +1 -0
- package/dist/components/product-preview/index.d.ts +15 -0
- package/dist/components/product-preview/index.d.ts.map +1 -0
- package/dist/components/product-preview/index.js +38 -0
- package/dist/components/product-preview/index.js.map +1 -0
- package/dist/components/search-modal/index.d.ts +12 -0
- package/dist/components/search-modal/index.d.ts.map +1 -0
- package/dist/components/search-modal/index.js +12 -0
- package/dist/components/side-menu/index.d.ts +12 -0
- package/dist/components/side-menu/index.d.ts.map +1 -0
- package/dist/components/side-menu/index.js +16 -0
- package/dist/components/submit-button/index.d.ts +20 -0
- package/dist/components/submit-button/index.d.ts.map +1 -0
- package/dist/components/submit-button/index.js +24 -0
- package/dist/components/submit-button/index.js.map +1 -0
- package/dist/components/thumbnail/index.d.ts +15 -0
- package/dist/components/thumbnail/index.d.ts.map +1 -0
- package/dist/components/thumbnail/index.js +3 -0
- package/dist/cookies-DANAjt8U.js +38 -0
- package/dist/cookies-DANAjt8U.js.map +1 -0
- package/dist/customer-GZZNI4eh.js +25 -0
- package/dist/customer-GZZNI4eh.js.map +1 -0
- package/dist/data-types-C_rGnTUp.js +10 -0
- package/dist/data-types-C_rGnTUp.js.map +1 -0
- package/dist/delete-button-Bfog7z-I.js +28 -0
- package/dist/delete-button-Bfog7z-I.js.map +1 -0
- package/dist/footer-BqaZhjlE.js +76 -0
- package/dist/footer-BqaZhjlE.js.map +1 -0
- package/dist/footer-fWFeFSUp.js +16 -0
- package/dist/footer-fWFeFSUp.js.map +1 -0
- package/dist/get-percentage-diff-CxGe_n9N.js +8 -0
- package/dist/get-percentage-diff-CxGe_n9N.js.map +1 -0
- package/dist/get-product-price-DxBbPmOZ.js +47 -0
- package/dist/get-product-price-DxBbPmOZ.js.map +1 -0
- package/dist/graphql-BWZPPI_N.d.ts +1368 -0
- package/dist/graphql-BWZPPI_N.d.ts.map +1 -0
- package/dist/layout-country-select-DrwpoVMM.js +90 -0
- package/dist/layout-country-select-DrwpoVMM.js.map +1 -0
- package/dist/lib/config/medusa.d.ts +7 -0
- package/dist/lib/config/medusa.d.ts.map +1 -0
- package/dist/lib/config/medusa.js +3 -0
- package/dist/lib/context/apollo-context.d.ts +10 -0
- package/dist/lib/context/apollo-context.d.ts.map +1 -0
- package/dist/lib/context/apollo-context.js +18 -0
- package/dist/lib/context/apollo-context.js.map +1 -0
- package/dist/lib/context/modal-context.d.ts +20 -0
- package/dist/lib/context/modal-context.d.ts.map +1 -0
- package/dist/lib/context/modal-context.js +5 -0
- package/dist/lib/data/cart.d.ts +24 -0
- package/dist/lib/data/cart.d.ts.map +1 -0
- package/dist/lib/data/cart.js +13 -0
- package/dist/lib/data/categories.d.ts +19 -0
- package/dist/lib/data/categories.d.ts.map +1 -0
- package/dist/lib/data/categories.js +6 -0
- package/dist/lib/data/collections.d.ts +14 -0
- package/dist/lib/data/collections.d.ts.map +1 -0
- package/dist/lib/data/collections.js +8 -0
- package/dist/lib/data/cookies.d.ts +15 -0
- package/dist/lib/data/cookies.d.ts.map +1 -0
- package/dist/lib/data/cookies.js +3 -0
- package/dist/lib/data/customer.d.ts +7 -0
- package/dist/lib/data/customer.d.ts.map +1 -0
- package/dist/lib/data/customer.js +8 -0
- package/dist/lib/data/footer.d.ts +75 -0
- package/dist/lib/data/footer.d.ts.map +1 -0
- package/dist/lib/data/footer.js +5 -0
- package/dist/lib/data/regions.d.ts +8 -0
- package/dist/lib/data/regions.d.ts.map +1 -0
- package/dist/lib/data/regions.js +5 -0
- package/dist/lib/data/search.d.ts +9 -0
- package/dist/lib/data/search.d.ts.map +1 -0
- package/dist/lib/data/search.js +8 -0
- package/dist/lib/gql/apollo-client.d.ts +18 -0
- package/dist/lib/gql/apollo-client.d.ts.map +1 -0
- package/dist/lib/gql/apollo-client.js +3 -0
- package/dist/lib/gql/fragments/cart.d.ts +14 -0
- package/dist/lib/gql/fragments/cart.d.ts.map +1 -0
- package/dist/lib/gql/fragments/cart.js +4 -0
- package/dist/lib/gql/fragments/product.d.ts +13 -0
- package/dist/lib/gql/fragments/product.d.ts.map +1 -0
- package/dist/lib/gql/fragments/product.js +3 -0
- package/dist/lib/gql/mutations/cart.d.ts +9 -0
- package/dist/lib/gql/mutations/cart.d.ts.map +1 -0
- package/dist/lib/gql/mutations/cart.js +5 -0
- package/dist/lib/gql/mutations/customer.d.ts +1 -0
- package/dist/lib/gql/mutations/customer.js +1 -0
- package/dist/lib/gql/queries/cart.d.ts +7 -0
- package/dist/lib/gql/queries/cart.d.ts.map +1 -0
- package/dist/lib/gql/queries/cart.js +5 -0
- package/dist/lib/gql/queries/collections.d.ts +7 -0
- package/dist/lib/gql/queries/collections.d.ts.map +1 -0
- package/dist/lib/gql/queries/collections.js +4 -0
- package/dist/lib/gql/queries/footer.d.ts +7 -0
- package/dist/lib/gql/queries/footer.d.ts.map +1 -0
- package/dist/lib/gql/queries/footer.js +3 -0
- package/dist/lib/gql/queries/product.d.ts +8 -0
- package/dist/lib/gql/queries/product.d.ts.map +1 -0
- package/dist/lib/gql/queries/product.js +4 -0
- package/dist/lib/hooks/use-apollo.d.ts +7 -0
- package/dist/lib/hooks/use-apollo.d.ts.map +1 -0
- package/dist/lib/hooks/use-apollo.js +4 -0
- package/dist/lib/hooks/use-search.d.ts +22 -0
- package/dist/lib/hooks/use-search.d.ts.map +1 -0
- package/dist/lib/hooks/use-search.js +9 -0
- package/dist/lib/hooks/use-toggle-state.d.ts +2 -0
- package/dist/lib/hooks/use-toggle-state.js +43 -0
- package/dist/lib/hooks/use-toggle-state.js.map +1 -0
- package/dist/lib/utils/data-types.d.ts +7 -0
- package/dist/lib/utils/data-types.d.ts.map +1 -0
- package/dist/lib/utils/data-types.js +3 -0
- package/dist/lib/utils/env.d.ts +5 -0
- package/dist/lib/utils/env.d.ts.map +1 -0
- package/dist/lib/utils/env.js +8 -0
- package/dist/lib/utils/env.js.map +1 -0
- package/dist/lib/utils/get-percentage-diff.d.ts +5 -0
- package/dist/lib/utils/get-percentage-diff.d.ts.map +1 -0
- package/dist/lib/utils/get-percentage-diff.js +3 -0
- package/dist/lib/utils/get-product-price.d.ts +42 -0
- package/dist/lib/utils/get-product-price.d.ts.map +1 -0
- package/dist/lib/utils/get-product-price.js +3 -0
- package/dist/lib/utils/medusa-error.d.ts +5 -0
- package/dist/lib/utils/medusa-error.d.ts.map +1 -0
- package/dist/lib/utils/medusa-error.js +3 -0
- package/dist/lib/utils/money.d.ts +18 -0
- package/dist/lib/utils/money.d.ts.map +1 -0
- package/dist/lib/utils/money.js +3 -0
- package/dist/lib/utils/normalize-functions.d.ts +8 -0
- package/dist/lib/utils/normalize-functions.d.ts.map +1 -0
- package/dist/lib/utils/normalize-functions.js +3 -0
- package/dist/line-item-options-B3rbud31.js +16 -0
- package/dist/line-item-options-B3rbud31.js.map +1 -0
- package/dist/line-item-price-BBlC_T8m.js +47 -0
- package/dist/line-item-price-BBlC_T8m.js.map +1 -0
- package/dist/localized-client-link-C3mE37Ub.js +22 -0
- package/dist/localized-client-link-C3mE37Ub.js.map +1 -0
- package/dist/medusa-C1jfAM1B.js +12 -0
- package/dist/medusa-C1jfAM1B.js.map +1 -0
- package/dist/medusa-error-Cf_eEPhR.js +17 -0
- package/dist/medusa-error-Cf_eEPhR.js.map +1 -0
- package/dist/modal-C-crvjtF.js +102 -0
- package/dist/modal-C-crvjtF.js.map +1 -0
- package/dist/modal-context-D-ugwFUM.js +20 -0
- package/dist/modal-context-D-ugwFUM.js.map +1 -0
- package/dist/money-BrwiFQUW.js +15 -0
- package/dist/money-BrwiFQUW.js.map +1 -0
- package/dist/normalize-functions-BIuKc_-k.js +15 -0
- package/dist/normalize-functions-BIuKc_-k.js.map +1 -0
- package/dist/portable-text-DSWXgovn.js +330 -0
- package/dist/portable-text-DSWXgovn.js.map +1 -0
- package/dist/preview-price-D_GqXrT4.js +20 -0
- package/dist/preview-price-D_GqXrT4.js.map +1 -0
- package/dist/prices-IWR3xm6o.d.ts +20 -0
- package/dist/prices-IWR3xm6o.d.ts.map +1 -0
- package/dist/product-Cgtch-vz.js +90 -0
- package/dist/product-Cgtch-vz.js.map +1 -0
- package/dist/product-DMWvgZkb.js +47 -0
- package/dist/product-DMWvgZkb.js.map +1 -0
- package/dist/regions-CF6DH579.js +34 -0
- package/dist/regions-CF6DH579.js.map +1 -0
- package/dist/search-CKhI5RO4.js +21 -0
- package/dist/search-CKhI5RO4.js.map +1 -0
- package/dist/search-modal-D1tgUDXQ.js +137 -0
- package/dist/search-modal-D1tgUDXQ.js.map +1 -0
- package/dist/side-menu-ByDXpZJO.js +97 -0
- package/dist/side-menu-ByDXpZJO.js.map +1 -0
- package/dist/thumbnail-CXIliWAD.js +44 -0
- package/dist/thumbnail-CXIliWAD.js.map +1 -0
- package/dist/types/graphql.d.ts +2 -0
- package/dist/types/graphql.js +14516 -0
- package/dist/types/graphql.js.map +1 -0
- package/dist/types/prices.d.ts +2 -0
- package/dist/types/prices.js +1 -0
- package/dist/use-apollo-q4uz05i-.js +11 -0
- package/dist/use-apollo-q4uz05i-.js.map +1 -0
- package/dist/use-search-BTEnFlC0.js +67 -0
- package/dist/use-search-BTEnFlC0.js.map +1 -0
- package/dist/use-toggle-state-zIAKMNfR.d.ts +23 -0
- package/dist/use-toggle-state-zIAKMNfR.d.ts.map +1 -0
- package/package.json +94 -0
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { s as PRODUCT_VARIANT_FRAGMENT } from "./product-Cgtch-vz.js";
|
|
2
|
+
import { gql } from "@apollo/client";
|
|
3
|
+
|
|
4
|
+
//#region src/lib/gql/fragments/cart.ts
|
|
5
|
+
const LINE_ITEM_FRAGMENT = gql`
|
|
6
|
+
fragment CartItemFields on LineItem {
|
|
7
|
+
id
|
|
8
|
+
title
|
|
9
|
+
quantity
|
|
10
|
+
unitPrice
|
|
11
|
+
createdAt
|
|
12
|
+
thumbnail
|
|
13
|
+
productHandle
|
|
14
|
+
productTitle
|
|
15
|
+
total
|
|
16
|
+
originalTotal
|
|
17
|
+
variant {
|
|
18
|
+
...ProductVariant
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
${PRODUCT_VARIANT_FRAGMENT}
|
|
22
|
+
`;
|
|
23
|
+
const COUNTRY_FRAGMENT = gql`
|
|
24
|
+
fragment CountryFields on Country {
|
|
25
|
+
id
|
|
26
|
+
iso2
|
|
27
|
+
name
|
|
28
|
+
displayName
|
|
29
|
+
}
|
|
30
|
+
`;
|
|
31
|
+
const REGION_FRAGMENT = gql`
|
|
32
|
+
fragment RegionFields on Region {
|
|
33
|
+
id
|
|
34
|
+
name
|
|
35
|
+
currencyCode
|
|
36
|
+
createdAt
|
|
37
|
+
countries {
|
|
38
|
+
...CountryFields
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
${COUNTRY_FRAGMENT}
|
|
42
|
+
`;
|
|
43
|
+
const SHIPPING_METHODS_FRAGMENT = gql`
|
|
44
|
+
fragment ShippingMethodFields on ShippingMethod {
|
|
45
|
+
id
|
|
46
|
+
cartId
|
|
47
|
+
name
|
|
48
|
+
amount
|
|
49
|
+
shippingOptionId
|
|
50
|
+
createdAt
|
|
51
|
+
total
|
|
52
|
+
}
|
|
53
|
+
`;
|
|
54
|
+
const PAYMENT_COLLECTION_FRAGMENT = gql`
|
|
55
|
+
fragment PaymentCollectionFields on PaymentCollection {
|
|
56
|
+
id
|
|
57
|
+
currencyCode
|
|
58
|
+
amount
|
|
59
|
+
status
|
|
60
|
+
paymentProviders {
|
|
61
|
+
id
|
|
62
|
+
}
|
|
63
|
+
paymentSessions {
|
|
64
|
+
id
|
|
65
|
+
amount
|
|
66
|
+
currencyCode
|
|
67
|
+
providerId
|
|
68
|
+
data
|
|
69
|
+
status
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
`;
|
|
73
|
+
const ADDRESS_FRAGMENT = gql`
|
|
74
|
+
fragment AddressFields on Address {
|
|
75
|
+
firstName
|
|
76
|
+
lastName
|
|
77
|
+
phone
|
|
78
|
+
address1
|
|
79
|
+
city
|
|
80
|
+
countryCode
|
|
81
|
+
postalCode
|
|
82
|
+
}
|
|
83
|
+
`;
|
|
84
|
+
const PROMOTION_FRAGMENT = gql`
|
|
85
|
+
fragment PromotionFields on Promotion {
|
|
86
|
+
id
|
|
87
|
+
code
|
|
88
|
+
applicationMethod {
|
|
89
|
+
value
|
|
90
|
+
type
|
|
91
|
+
currencyCode
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
`;
|
|
95
|
+
const CART_FRAGMENT = gql`
|
|
96
|
+
fragment CartFields on Cart {
|
|
97
|
+
id
|
|
98
|
+
customerId
|
|
99
|
+
regionId
|
|
100
|
+
email
|
|
101
|
+
total
|
|
102
|
+
subtotal
|
|
103
|
+
taxTotal
|
|
104
|
+
itemTotal
|
|
105
|
+
discountTotal
|
|
106
|
+
originalTotal
|
|
107
|
+
currencyCode
|
|
108
|
+
shippingTotal
|
|
109
|
+
giftCardTotal
|
|
110
|
+
promotions {
|
|
111
|
+
...PromotionFields
|
|
112
|
+
}
|
|
113
|
+
items {
|
|
114
|
+
...CartItemFields
|
|
115
|
+
}
|
|
116
|
+
shippingAddress {
|
|
117
|
+
...AddressFields
|
|
118
|
+
}
|
|
119
|
+
billingAddress {
|
|
120
|
+
...AddressFields
|
|
121
|
+
}
|
|
122
|
+
region {
|
|
123
|
+
...RegionFields
|
|
124
|
+
}
|
|
125
|
+
shippingMethods {
|
|
126
|
+
...ShippingMethodFields
|
|
127
|
+
}
|
|
128
|
+
paymentCollection {
|
|
129
|
+
...PaymentCollectionFields
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
${LINE_ITEM_FRAGMENT}
|
|
133
|
+
${ADDRESS_FRAGMENT}
|
|
134
|
+
${REGION_FRAGMENT}
|
|
135
|
+
${SHIPPING_METHODS_FRAGMENT}
|
|
136
|
+
${PAYMENT_COLLECTION_FRAGMENT}
|
|
137
|
+
${PROMOTION_FRAGMENT}
|
|
138
|
+
`;
|
|
139
|
+
|
|
140
|
+
//#endregion
|
|
141
|
+
export { PAYMENT_COLLECTION_FRAGMENT as a, SHIPPING_METHODS_FRAGMENT as c, LINE_ITEM_FRAGMENT as i, CART_FRAGMENT as n, PROMOTION_FRAGMENT as o, COUNTRY_FRAGMENT as r, REGION_FRAGMENT as s, ADDRESS_FRAGMENT as t };
|
|
142
|
+
//# sourceMappingURL=cart-p3ffQQ5R.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cart-p3ffQQ5R.js","names":[],"sources":["../src/lib/gql/fragments/cart.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nimport { PRODUCT_VARIANT_FRAGMENT } from './product';\n\nexport const LINE_ITEM_FRAGMENT = gql`\n fragment CartItemFields on LineItem {\n id\n title\n quantity\n unitPrice\n createdAt\n thumbnail\n productHandle\n productTitle\n total\n originalTotal\n variant {\n ...ProductVariant\n }\n }\n ${PRODUCT_VARIANT_FRAGMENT}\n`;\n\nexport const COUNTRY_FRAGMENT = gql`\n fragment CountryFields on Country {\n id\n iso2\n name\n displayName\n }\n`;\n\nexport const REGION_FRAGMENT = gql`\n fragment RegionFields on Region {\n id\n name\n currencyCode\n createdAt\n countries {\n ...CountryFields\n }\n }\n ${COUNTRY_FRAGMENT}\n`;\n\nexport const SHIPPING_METHODS_FRAGMENT = gql`\n fragment ShippingMethodFields on ShippingMethod {\n id\n cartId\n name\n amount\n shippingOptionId\n createdAt\n total\n }\n`;\n\nexport const PAYMENT_COLLECTION_FRAGMENT = gql`\n fragment PaymentCollectionFields on PaymentCollection {\n id\n currencyCode\n amount\n status\n paymentProviders {\n id\n }\n paymentSessions {\n id\n amount\n currencyCode\n providerId\n data\n status\n }\n }\n`;\n\nexport const ADDRESS_FRAGMENT = gql`\n fragment AddressFields on Address {\n firstName\n lastName\n phone\n address1\n city\n countryCode\n postalCode\n }\n`;\n\nexport const PROMOTION_FRAGMENT = gql`\n fragment PromotionFields on Promotion {\n id\n code\n applicationMethod {\n value\n type\n currencyCode\n }\n }\n`;\n\nexport const CART_FRAGMENT = gql`\n fragment CartFields on Cart {\n id\n customerId\n regionId\n email\n total\n subtotal\n taxTotal\n itemTotal\n discountTotal\n originalTotal\n currencyCode\n shippingTotal\n giftCardTotal\n promotions {\n ...PromotionFields\n }\n items {\n ...CartItemFields\n }\n shippingAddress {\n ...AddressFields\n }\n billingAddress {\n ...AddressFields\n }\n region {\n ...RegionFields\n }\n shippingMethods {\n ...ShippingMethodFields\n }\n paymentCollection {\n ...PaymentCollectionFields\n }\n }\n ${LINE_ITEM_FRAGMENT}\n ${ADDRESS_FRAGMENT}\n ${REGION_FRAGMENT}\n ${SHIPPING_METHODS_FRAGMENT}\n ${PAYMENT_COLLECTION_FRAGMENT}\n ${PROMOTION_FRAGMENT}\n`;\n"],"mappings":";;;;AAIA,MAAa,qBAAqB,GAAG;;;;;;;;;;;;;;;;IAgBjC,yBAAyB;;AAG7B,MAAa,mBAAmB,GAAG;;;;;;;;AASnC,MAAa,kBAAkB,GAAG;;;;;;;;;;IAU9B,iBAAiB;;AAGrB,MAAa,4BAA4B,GAAG;;;;;;;;;;;AAY5C,MAAa,8BAA8B,GAAG;;;;;;;;;;;;;;;;;;;AAoB9C,MAAa,mBAAmB,GAAG;;;;;;;;;;;AAYnC,MAAa,qBAAqB,GAAG;;;;;;;;;;;AAYrC,MAAa,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqC5B,mBAAmB;IACnB,iBAAiB;IACjB,gBAAgB;IAChB,0BAA0B;IAC1B,4BAA4B;IAC5B,mBAAmB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { r as graphqlFetch } from "./apollo-client-BuznVAE4.js";
|
|
2
|
+
import { t as GET_PRODUCT_CATEGORIES_QUERY } from "./product-DMWvgZkb.js";
|
|
3
|
+
|
|
4
|
+
//#region src/lib/data/categories.ts
|
|
5
|
+
const listCategories = async () => {
|
|
6
|
+
try {
|
|
7
|
+
return (await graphqlFetch({ query: GET_PRODUCT_CATEGORIES_QUERY }))?.productCategories || [];
|
|
8
|
+
} catch (error) {
|
|
9
|
+
console.error("Error fetching categories from BFF:", error);
|
|
10
|
+
return [];
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
export { listCategories as t };
|
|
16
|
+
//# sourceMappingURL=categories-BCbIwAcV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"categories-BCbIwAcV.js","names":[],"sources":["../src/lib/data/categories.ts"],"sourcesContent":["import { graphqlFetch } from '@/lib/gql/apollo-client';\nimport { GET_PRODUCT_CATEGORIES_QUERY } from '@/lib/gql/queries/product';\nimport {\n GetProductCategoriesQuery,\n GetProductCategoriesQueryVariables,\n} from '@/types/graphql';\n\nexport const listCategories = async () => {\n try {\n const data = await graphqlFetch<\n GetProductCategoriesQuery,\n GetProductCategoriesQueryVariables\n >({\n query: GET_PRODUCT_CATEGORIES_QUERY,\n });\n\n return data?.productCategories || [];\n } catch (error) {\n console.error('Error fetching categories from BFF:', error);\n return [];\n }\n};\n"],"mappings":";;;;AAOA,MAAa,iBAAiB,YAAY;AACxC,KAAI;AAQF,UAPa,MAAM,aAGjB,EACA,OAAO,8BACR,CAAC,GAEW,qBAAqB,EAAE;UAC7B,OAAO;AACd,UAAQ,MAAM,uCAAuC,MAAM;AAC3D,SAAO,EAAE"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { i as PRODUCT_COLLECTION_FRAGMENT, t as COLLECTION_PRODUCTS_FRAGMENT } from "./product-Cgtch-vz.js";
|
|
2
|
+
import { gql } from "@apollo/client";
|
|
3
|
+
|
|
4
|
+
//#region src/lib/gql/queries/collections.ts
|
|
5
|
+
const GET_COLLECTIONS_QUERY = gql`
|
|
6
|
+
query GetCollections($limit: Int, $offset: Int) {
|
|
7
|
+
collections(limit: $limit, offset: $offset) {
|
|
8
|
+
...ProductCollection
|
|
9
|
+
products {
|
|
10
|
+
...CollectionProducts
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
${PRODUCT_COLLECTION_FRAGMENT}
|
|
15
|
+
${COLLECTION_PRODUCTS_FRAGMENT}
|
|
16
|
+
`;
|
|
17
|
+
|
|
18
|
+
//#endregion
|
|
19
|
+
export { GET_COLLECTIONS_QUERY as t };
|
|
20
|
+
//# sourceMappingURL=collections-Buw8B8l9.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collections-Buw8B8l9.js","names":[],"sources":["../src/lib/gql/queries/collections.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nimport {\n COLLECTION_PRODUCTS_FRAGMENT,\n PRODUCT_COLLECTION_FRAGMENT,\n} from '../fragments/product';\n\nexport const GET_COLLECTIONS_QUERY = gql`\n query GetCollections($limit: Int, $offset: Int) {\n collections(limit: $limit, offset: $offset) {\n ...ProductCollection\n products {\n ...CollectionProducts\n }\n }\n }\n ${PRODUCT_COLLECTION_FRAGMENT}\n ${COLLECTION_PRODUCTS_FRAGMENT}\n`;\n"],"mappings":";;;;AAOA,MAAa,wBAAwB,GAAG;;;;;;;;;IASpC,4BAA4B;IAC5B,6BAA6B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { r as graphqlFetch } from "./apollo-client-BuznVAE4.js";
|
|
2
|
+
import { t as GET_COLLECTIONS_QUERY } from "./collections-Buw8B8l9.js";
|
|
3
|
+
|
|
4
|
+
//#region src/lib/data/collections.ts
|
|
5
|
+
const listCollections = async (queryParams = {}) => {
|
|
6
|
+
try {
|
|
7
|
+
return { collections: (await graphqlFetch({
|
|
8
|
+
query: GET_COLLECTIONS_QUERY,
|
|
9
|
+
variables: {
|
|
10
|
+
limit: parseInt(queryParams.limit || "100"),
|
|
11
|
+
offset: parseInt(queryParams.offset || "0")
|
|
12
|
+
}
|
|
13
|
+
}))?.collections };
|
|
14
|
+
} catch (error) {
|
|
15
|
+
console.error("Error fetching collections from BFF:", error);
|
|
16
|
+
return { collections: [] };
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
//#endregion
|
|
21
|
+
export { listCollections as t };
|
|
22
|
+
//# sourceMappingURL=collections-Dkcq21tC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collections-Dkcq21tC.js","names":[],"sources":["../src/lib/data/collections.ts"],"sourcesContent":["'use server';\n\nimport { graphqlFetch } from '@/lib/gql/apollo-client';\nimport { GET_COLLECTIONS_QUERY } from '@/lib/gql/queries/collections';\nimport {\n GetCollectionsQuery,\n GetCollectionsQueryVariables,\n} from '@/types/graphql';\n\nexport const listCollections = async (\n queryParams: Record<string, string> = {}\n) => {\n try {\n const limit = parseInt(queryParams.limit || '100');\n const offset = parseInt(queryParams.offset || '0');\n\n const data = await graphqlFetch<\n GetCollectionsQuery,\n GetCollectionsQueryVariables\n >({\n query: GET_COLLECTIONS_QUERY,\n variables: { limit, offset },\n });\n\n return {\n collections: data?.collections,\n };\n } catch (error) {\n console.error('Error fetching collections from BFF:', error);\n return { collections: [] };\n }\n};\n"],"mappings":";;;;AASA,MAAa,kBAAkB,OAC7B,cAAsC,EAAE,KACrC;AACH,KAAI;AAYF,SAAO,EACL,cATW,MAAM,aAGjB;GACA,OAAO;GACP,WAAW;IAAE,OARD,SAAS,YAAY,SAAS,MAAM;IAQ5B,QAPP,SAAS,YAAY,UAAU,IAAI;IAOpB;GAC7B,CAAC,GAGmB,aACpB;UACM,OAAO;AACd,UAAQ,MAAM,wCAAwC,MAAM;AAC5D,SAAO,EAAE,aAAa,EAAE,EAAE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as react0 from "react";
|
|
2
|
+
import * as lucide_react0 from "lucide-react";
|
|
3
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
|
+
|
|
5
|
+
//#region src/components/breadcrumbs/index.d.ts
|
|
6
|
+
declare const SEPARATOR_ICONS: {
|
|
7
|
+
readonly verticalLine: react0.ForwardRefExoticComponent<Omit<lucide_react0.LucideProps, "ref"> & react0.RefAttributes<SVGSVGElement>>;
|
|
8
|
+
readonly slash: react0.ForwardRefExoticComponent<Omit<lucide_react0.LucideProps, "ref"> & react0.RefAttributes<SVGSVGElement>>;
|
|
9
|
+
};
|
|
10
|
+
interface BreadcrumbsProps {
|
|
11
|
+
separatorIcon?: keyof typeof SEPARATOR_ICONS;
|
|
12
|
+
iconSize?: number;
|
|
13
|
+
iconClassName?: string;
|
|
14
|
+
}
|
|
15
|
+
declare function Breadcrumbs({
|
|
16
|
+
iconClassName,
|
|
17
|
+
iconSize,
|
|
18
|
+
separatorIcon
|
|
19
|
+
}: BreadcrumbsProps): react_jsx_runtime0.JSX.Element;
|
|
20
|
+
//#endregion
|
|
21
|
+
export { Breadcrumbs };
|
|
22
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/components/breadcrumbs/index.tsx"],"sourcesContent":[],"mappings":";;;;;cAiBM;+DAGI,aAAA,CAAA,WAAA;;;UAEA,gBAAA;EALJ,aAAA,CAAA,EAAA,MAGI,OAGqB,eAHrB;EAAA,QAAA,CAAA,EAAA,MAAA;;;iBAiCD,WAAA;;;;GAIN,mBAAgB,kBAAA,CAAA,GAAA,CAAA"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { Fragment } from "react";
|
|
4
|
+
import { usePathname } from "next/navigation";
|
|
5
|
+
import { SlashIcon, Tally1 } from "lucide-react";
|
|
6
|
+
import { Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator } from "@gfed-medusa/sf-lib-ui/components/breadcrumb";
|
|
7
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
|
|
9
|
+
//#region src/components/breadcrumbs/index.tsx
|
|
10
|
+
const SEPARATOR_ICONS = {
|
|
11
|
+
verticalLine: Tally1,
|
|
12
|
+
slash: SlashIcon
|
|
13
|
+
};
|
|
14
|
+
const formatSegmentLabel = (segment) => segment.charAt(0).toUpperCase() + segment.slice(1).replace(/-/g, " ");
|
|
15
|
+
const createBreadcrumbItems = (segments) => [{
|
|
16
|
+
label: "Home",
|
|
17
|
+
href: "/"
|
|
18
|
+
}, ...segments.map((segment, index) => ({
|
|
19
|
+
href: "/" + segments.slice(0, index + 1).join("/"),
|
|
20
|
+
label: formatSegmentLabel(segment)
|
|
21
|
+
}))];
|
|
22
|
+
const isLocaleCode = (segment) => /^[a-zA-Z]{2}(-[a-zA-Z]{2})?$/.test(segment);
|
|
23
|
+
const getPathSegments = (pathname) => {
|
|
24
|
+
const segments = pathname.split("/").filter(Boolean);
|
|
25
|
+
if (segments.length > 0 && isLocaleCode(segments[0] ?? "")) segments.shift();
|
|
26
|
+
return segments;
|
|
27
|
+
};
|
|
28
|
+
function Breadcrumbs({ iconClassName, iconSize, separatorIcon }) {
|
|
29
|
+
const breadcrumbItems = createBreadcrumbItems(getPathSegments(usePathname()));
|
|
30
|
+
const SeparatorIcon = separatorIcon ? SEPARATOR_ICONS[separatorIcon] : null;
|
|
31
|
+
return /* @__PURE__ */ jsx(Breadcrumb, {
|
|
32
|
+
className: "mt-3",
|
|
33
|
+
children: /* @__PURE__ */ jsx(BreadcrumbList, {
|
|
34
|
+
className: "lg:gap-6",
|
|
35
|
+
children: breadcrumbItems.map((item, index) => {
|
|
36
|
+
const isLast = index === breadcrumbItems.length - 1;
|
|
37
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(BreadcrumbItem, {
|
|
38
|
+
className: "text-sm",
|
|
39
|
+
children: isLast ? /* @__PURE__ */ jsx(BreadcrumbPage, { children: item.label }) : /* @__PURE__ */ jsx(BreadcrumbLink, {
|
|
40
|
+
href: item.href,
|
|
41
|
+
children: item.label
|
|
42
|
+
})
|
|
43
|
+
}), !isLast && /* @__PURE__ */ jsx(BreadcrumbSeparator, { children: SeparatorIcon && /* @__PURE__ */ jsx(SeparatorIcon, {
|
|
44
|
+
size: iconSize,
|
|
45
|
+
className: iconClassName
|
|
46
|
+
}) })] }, item.href);
|
|
47
|
+
})
|
|
48
|
+
})
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
//#endregion
|
|
53
|
+
export { Breadcrumbs };
|
|
54
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["segments: string[]"],"sources":["../../../src/components/breadcrumbs/index.tsx"],"sourcesContent":["'use client';\n\nimport { Fragment } from 'react';\n\nimport { usePathname } from 'next/navigation';\n\nimport { SlashIcon, Tally1 } from 'lucide-react';\n\nimport {\n Breadcrumb,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n} from '@gfed-medusa/sf-lib-ui/components/breadcrumb';\n\nconst SEPARATOR_ICONS = {\n verticalLine: Tally1,\n slash: SlashIcon,\n} as const;\n\ninterface BreadcrumbsProps {\n separatorIcon?: keyof typeof SEPARATOR_ICONS;\n iconSize?: number;\n iconClassName?: string;\n}\n\nconst formatSegmentLabel = (segment: string): string =>\n segment.charAt(0).toUpperCase() + segment.slice(1).replace(/-/g, ' ');\n\nconst createBreadcrumbItems = (segments: string[]) => [\n { label: 'Home', href: '/' },\n ...segments.map((segment, index) => ({\n href: '/' + segments.slice(0, index + 1).join('/'),\n label: formatSegmentLabel(segment),\n })),\n];\n\n// Helper function to check if a string is a locale code (e.g., 'en', 'en-US')\nconst isLocaleCode = (segment: string): boolean =>\n /^[a-zA-Z]{2}(-[a-zA-Z]{2})?$/.test(segment);\n\nconst getPathSegments = (pathname: string): string[] => {\n const segments: string[] = pathname.split('/').filter(Boolean);\n\n if (segments.length > 0 && isLocaleCode(segments[0] ?? '')) {\n segments.shift();\n }\n\n return segments;\n};\n\nfunction Breadcrumbs({\n iconClassName,\n iconSize,\n separatorIcon,\n}: BreadcrumbsProps) {\n const pathname = usePathname();\n const pathSegments = getPathSegments(pathname);\n const breadcrumbItems = createBreadcrumbItems(pathSegments);\n const SeparatorIcon = separatorIcon ? SEPARATOR_ICONS[separatorIcon] : null;\n\n return (\n <Breadcrumb className=\"mt-3\">\n <BreadcrumbList className=\"lg:gap-6\">\n {breadcrumbItems.map((item, index) => {\n const isLast = index === breadcrumbItems.length - 1;\n\n return (\n <Fragment key={item.href}>\n <BreadcrumbItem className=\"text-sm\">\n {isLast ? (\n <BreadcrumbPage>{item.label}</BreadcrumbPage>\n ) : (\n <BreadcrumbLink href={item.href}>{item.label}</BreadcrumbLink>\n )}\n </BreadcrumbItem>\n {!isLast && (\n <BreadcrumbSeparator>\n {SeparatorIcon && (\n <SeparatorIcon size={iconSize} className={iconClassName} />\n )}\n </BreadcrumbSeparator>\n )}\n </Fragment>\n );\n })}\n </BreadcrumbList>\n </Breadcrumb>\n );\n}\n\nexport { Breadcrumbs };\n"],"mappings":";;;;;;;;;AAiBA,MAAM,kBAAkB;CACtB,cAAc;CACd,OAAO;CACR;AAQD,MAAM,sBAAsB,YAC1B,QAAQ,OAAO,EAAE,CAAC,aAAa,GAAG,QAAQ,MAAM,EAAE,CAAC,QAAQ,MAAM,IAAI;AAEvE,MAAM,yBAAyB,aAAuB,CACpD;CAAE,OAAO;CAAQ,MAAM;CAAK,EAC5B,GAAG,SAAS,KAAK,SAAS,WAAW;CACnC,MAAM,MAAM,SAAS,MAAM,GAAG,QAAQ,EAAE,CAAC,KAAK,IAAI;CAClD,OAAO,mBAAmB,QAAQ;CACnC,EAAE,CACJ;AAGD,MAAM,gBAAgB,YACpB,+BAA+B,KAAK,QAAQ;AAE9C,MAAM,mBAAmB,aAA+B;CACtD,MAAMA,WAAqB,SAAS,MAAM,IAAI,CAAC,OAAO,QAAQ;AAE9D,KAAI,SAAS,SAAS,KAAK,aAAa,SAAS,MAAM,GAAG,CACxD,UAAS,OAAO;AAGlB,QAAO;;AAGT,SAAS,YAAY,EACnB,eACA,UACA,iBACmB;CAGnB,MAAM,kBAAkB,sBADH,gBADJ,aAAa,CACgB,CACa;CAC3D,MAAM,gBAAgB,gBAAgB,gBAAgB,iBAAiB;AAEvE,QACE,oBAAC;EAAW,WAAU;YACpB,oBAAC;GAAe,WAAU;aACvB,gBAAgB,KAAK,MAAM,UAAU;IACpC,MAAM,SAAS,UAAU,gBAAgB,SAAS;AAElD,WACE,qBAAC,uBACC,oBAAC;KAAe,WAAU;eACvB,SACC,oBAAC,4BAAgB,KAAK,QAAuB,GAE7C,oBAAC;MAAe,MAAM,KAAK;gBAAO,KAAK;OAAuB;MAEjD,EAChB,CAAC,UACA,oBAAC,iCACE,iBACC,oBAAC;KAAc,MAAM;KAAU,WAAW;MAAiB,GAEzC,KAbX,KAAK,KAeT;KAEb;IACa;GACN"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/components/cart-button/index.tsx"],"sourcesContent":[],"mappings":";;;iBAIe,UAAA,CAAA,GAAU,QAAA,mBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import "../../medusa-C1jfAM1B.js";
|
|
2
|
+
import "../../apollo-client-BuznVAE4.js";
|
|
3
|
+
import "../../product-Cgtch-vz.js";
|
|
4
|
+
import "../../cart-p3ffQQ5R.js";
|
|
5
|
+
import "../../cart-XQIczSA1.js";
|
|
6
|
+
import "../../cart-D99u8SUJ.js";
|
|
7
|
+
import "../../cookies-DANAjt8U.js";
|
|
8
|
+
import "../../regions-CF6DH579.js";
|
|
9
|
+
import "../../cart-CLJvIUQC.js";
|
|
10
|
+
import "../../delete-button-Bfog7z-I.js";
|
|
11
|
+
import "../../line-item-options-B3rbud31.js";
|
|
12
|
+
import "../../line-item-price-BBlC_T8m.js";
|
|
13
|
+
import "../../localized-client-link-C3mE37Ub.js";
|
|
14
|
+
import "../../thumbnail-CXIliWAD.js";
|
|
15
|
+
import "../../cart-dropdown-_ZpvhX--.js";
|
|
16
|
+
import { t as CartButton } from "../../cart-button-NgoZb9LI.js";
|
|
17
|
+
|
|
18
|
+
export { CartButton };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { p as Cart } from "../../graphql-BWZPPI_N.js";
|
|
2
|
+
import * as react_jsx_runtime4 from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/components/cart-dropdown/index.d.ts
|
|
5
|
+
declare const CartDropdown: ({
|
|
6
|
+
cart: cartState
|
|
7
|
+
}: {
|
|
8
|
+
cart?: Cart | null;
|
|
9
|
+
}) => react_jsx_runtime4.JSX.Element;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { CartDropdown };
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/components/cart-dropdown/index.tsx"],"sourcesContent":[],"mappings":";;;;cAuBM;QAAgB;;SAA8B;MAAa,kBAAA,CAAA,GAAA,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import "../../medusa-C1jfAM1B.js";
|
|
4
|
+
import "../../apollo-client-BuznVAE4.js";
|
|
5
|
+
import "../../product-Cgtch-vz.js";
|
|
6
|
+
import "../../cart-p3ffQQ5R.js";
|
|
7
|
+
import "../../cart-XQIczSA1.js";
|
|
8
|
+
import "../../cart-D99u8SUJ.js";
|
|
9
|
+
import "../../cookies-DANAjt8U.js";
|
|
10
|
+
import "../../regions-CF6DH579.js";
|
|
11
|
+
import "../../cart-CLJvIUQC.js";
|
|
12
|
+
import "../../delete-button-Bfog7z-I.js";
|
|
13
|
+
import "../../line-item-options-B3rbud31.js";
|
|
14
|
+
import "../../line-item-price-BBlC_T8m.js";
|
|
15
|
+
import "../../localized-client-link-C3mE37Ub.js";
|
|
16
|
+
import "../../thumbnail-CXIliWAD.js";
|
|
17
|
+
import { t as CartDropdown } from "../../cart-dropdown-_ZpvhX--.js";
|
|
18
|
+
|
|
19
|
+
export { CartDropdown };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { p as Cart, z as Customer } from "../../graphql-BWZPPI_N.js";
|
|
2
|
+
import * as react_jsx_runtime3 from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/components/cart-mismatch-banner/index.d.ts
|
|
5
|
+
declare function CartMismatchBanner(props: {
|
|
6
|
+
customer: Customer;
|
|
7
|
+
cart: Cart;
|
|
8
|
+
}): react_jsx_runtime3.JSX.Element | undefined;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { CartMismatchBanner };
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/components/cart-mismatch-banner/index.tsx"],"sourcesContent":[],"mappings":";;;;iBAWS,kBAAA;YAAsC;EAAtC,IAAA,EAAsD,IAAtD;CAAsC,CAAA,EAAsB,kBAAA,CAAA,GAAA,CAAA,OAAA,GAAtB,SAAA"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import "../../apollo-client-BuznVAE4.js";
|
|
4
|
+
import "../../product-Cgtch-vz.js";
|
|
5
|
+
import "../../cart-p3ffQQ5R.js";
|
|
6
|
+
import "../../cart-XQIczSA1.js";
|
|
7
|
+
import "../../cookies-DANAjt8U.js";
|
|
8
|
+
import { t as transferCart } from "../../customer-GZZNI4eh.js";
|
|
9
|
+
import { useState } from "react";
|
|
10
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
11
|
+
import { Button } from "@medusajs/ui";
|
|
12
|
+
import { ExclamationCircleSolid } from "@medusajs/icons";
|
|
13
|
+
|
|
14
|
+
//#region src/components/cart-mismatch-banner/index.tsx
|
|
15
|
+
function CartMismatchBanner(props) {
|
|
16
|
+
const { customer, cart } = props;
|
|
17
|
+
const [isPending, setIsPending] = useState(false);
|
|
18
|
+
const [actionText, setActionText] = useState("Run transfer again");
|
|
19
|
+
if (!customer || !!cart.customerId) return;
|
|
20
|
+
const handleSubmit = async () => {
|
|
21
|
+
try {
|
|
22
|
+
setIsPending(true);
|
|
23
|
+
setActionText("Transferring..");
|
|
24
|
+
await transferCart();
|
|
25
|
+
} catch {
|
|
26
|
+
setActionText("Run transfer again");
|
|
27
|
+
setIsPending(false);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
return /* @__PURE__ */ jsx("div", {
|
|
31
|
+
className: "small:gap-2 small:p-4 mt-2 flex items-center justify-center gap-1 bg-orange-300 p-2 text-center text-sm text-orange-800",
|
|
32
|
+
children: /* @__PURE__ */ jsxs("div", {
|
|
33
|
+
className: "small:flex-row small:gap-2 flex flex-col items-center gap-1",
|
|
34
|
+
children: [
|
|
35
|
+
/* @__PURE__ */ jsxs("span", {
|
|
36
|
+
className: "flex items-center gap-1",
|
|
37
|
+
children: [/* @__PURE__ */ jsx(ExclamationCircleSolid, { className: "inline" }), "Something went wrong when we tried to transfer your cart"]
|
|
38
|
+
}),
|
|
39
|
+
/* @__PURE__ */ jsx("span", { children: "·" }),
|
|
40
|
+
/* @__PURE__ */ jsx(Button, {
|
|
41
|
+
variant: "transparent",
|
|
42
|
+
className: "bg-transparent p-0 text-orange-950 hover:bg-transparent focus:bg-transparent active:bg-transparent disabled:text-orange-500",
|
|
43
|
+
size: "base",
|
|
44
|
+
disabled: isPending,
|
|
45
|
+
onClick: handleSubmit,
|
|
46
|
+
children: actionText
|
|
47
|
+
})
|
|
48
|
+
]
|
|
49
|
+
})
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
//#endregion
|
|
54
|
+
export { CartMismatchBanner };
|
|
55
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/cart-mismatch-banner/index.tsx"],"sourcesContent":["'use client';\n\nimport { useState } from 'react';\n\nimport { ExclamationCircleSolid } from '@medusajs/icons';\nimport { Button } from '@medusajs/ui';\n\nimport { transferCart } from '@/lib/data/customer';\nimport { Customer } from '@/types/graphql';\nimport { Cart } from '@/types/graphql';\n\nfunction CartMismatchBanner(props: { customer: Customer; cart: Cart }) {\n const { customer, cart } = props;\n const [isPending, setIsPending] = useState(false);\n const [actionText, setActionText] = useState('Run transfer again');\n\n if (!customer || !!cart.customerId) {\n return;\n }\n\n const handleSubmit = async () => {\n try {\n setIsPending(true);\n setActionText('Transferring..');\n\n await transferCart();\n } catch {\n setActionText('Run transfer again');\n setIsPending(false);\n }\n };\n\n return (\n <div className=\"small:gap-2 small:p-4 mt-2 flex items-center justify-center gap-1 bg-orange-300 p-2 text-center text-sm text-orange-800\">\n <div className=\"small:flex-row small:gap-2 flex flex-col items-center gap-1\">\n <span className=\"flex items-center gap-1\">\n <ExclamationCircleSolid className=\"inline\" />\n Something went wrong when we tried to transfer your cart\n </span>\n\n <span>·</span>\n\n <Button\n variant=\"transparent\"\n className=\"bg-transparent p-0 text-orange-950 hover:bg-transparent focus:bg-transparent active:bg-transparent disabled:text-orange-500\"\n size=\"base\"\n disabled={isPending}\n onClick={handleSubmit}\n >\n {actionText}\n </Button>\n </div>\n </div>\n );\n}\n\nexport { CartMismatchBanner };\n"],"mappings":";;;;;;;;;;;;;;AAWA,SAAS,mBAAmB,OAA2C;CACrE,MAAM,EAAE,UAAU,SAAS;CAC3B,MAAM,CAAC,WAAW,gBAAgB,SAAS,MAAM;CACjD,MAAM,CAAC,YAAY,iBAAiB,SAAS,qBAAqB;AAElE,KAAI,CAAC,YAAY,CAAC,CAAC,KAAK,WACtB;CAGF,MAAM,eAAe,YAAY;AAC/B,MAAI;AACF,gBAAa,KAAK;AAClB,iBAAc,iBAAiB;AAE/B,SAAM,cAAc;UACd;AACN,iBAAc,qBAAqB;AACnC,gBAAa,MAAM;;;AAIvB,QACE,oBAAC;EAAI,WAAU;YACb,qBAAC;GAAI,WAAU;;IACb,qBAAC;KAAK,WAAU;gBACd,oBAAC,0BAAuB,WAAU,WAAW;MAExC;IAEP,oBAAC,oBAAK,MAAQ;IAEd,oBAAC;KACC,SAAQ;KACR,WAAU;KACV,MAAK;KACL,UAAU;KACV,SAAS;eAER;MACM;;IACL;GACF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { tr as Region } from "../../graphql-BWZPPI_N.js";
|
|
2
|
+
import * as react3 from "react";
|
|
3
|
+
|
|
4
|
+
//#region src/components/country-select/index.d.ts
|
|
5
|
+
declare const CountrySelect: react3.ForwardRefExoticComponent<{
|
|
6
|
+
placeholder?: string;
|
|
7
|
+
errors?: Record<string, unknown>;
|
|
8
|
+
touched?: Record<string, unknown>;
|
|
9
|
+
} & react3.SelectHTMLAttributes<HTMLSelectElement> & {
|
|
10
|
+
region?: Region | null;
|
|
11
|
+
} & react3.RefAttributes<HTMLSelectElement>>;
|
|
12
|
+
//#endregion
|
|
13
|
+
export { CountrySelect };
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/components/country-select/index.tsx"],"sourcesContent":[],"mappings":";;;;cAQM,sBAAa;;;EAAb,OAAA,CAAA,QAsCJ,CAAA,MAAA,EAAA,OAAA,CAAA;;WAnCW"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { forwardRef, useImperativeHandle, useMemo, useRef } from "react";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import NativeSelect from "@gfed-medusa/sf-lib-ui/components/native-select";
|
|
4
|
+
|
|
5
|
+
//#region src/components/country-select/index.tsx
|
|
6
|
+
const CountrySelect = forwardRef(({ placeholder = "Country", region, defaultValue, ...props }, ref) => {
|
|
7
|
+
const innerRef = useRef(null);
|
|
8
|
+
useImperativeHandle(ref, () => innerRef.current);
|
|
9
|
+
const countryOptions = useMemo(() => {
|
|
10
|
+
if (!region) return [];
|
|
11
|
+
return region.countries?.map((country) => ({
|
|
12
|
+
value: country?.iso2,
|
|
13
|
+
label: country?.displayName
|
|
14
|
+
}));
|
|
15
|
+
}, [region]);
|
|
16
|
+
return /* @__PURE__ */ jsx(NativeSelect, {
|
|
17
|
+
ref: innerRef,
|
|
18
|
+
placeholder,
|
|
19
|
+
defaultValue,
|
|
20
|
+
...props,
|
|
21
|
+
children: countryOptions?.map(({ value, label }, index) => /* @__PURE__ */ jsx("option", {
|
|
22
|
+
value: value ?? "",
|
|
23
|
+
children: label
|
|
24
|
+
}, index))
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
CountrySelect.displayName = "CountrySelect";
|
|
28
|
+
|
|
29
|
+
//#endregion
|
|
30
|
+
export { CountrySelect };
|
|
31
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/country-select/index.tsx"],"sourcesContent":["import { forwardRef, useImperativeHandle, useMemo, useRef } from 'react';\n\nimport NativeSelect, {\n NativeSelectProps,\n} from '@gfed-medusa/sf-lib-ui/components/native-select';\n\nimport { Region } from '@/types/graphql';\n\nconst CountrySelect = forwardRef<\n HTMLSelectElement,\n NativeSelectProps & {\n region?: Region | null;\n }\n>(({ placeholder = 'Country', region, defaultValue, ...props }, ref) => {\n const innerRef = useRef<HTMLSelectElement>(null);\n\n useImperativeHandle<HTMLSelectElement | null, HTMLSelectElement | null>(\n ref,\n () => innerRef.current\n );\n\n const countryOptions = useMemo(() => {\n if (!region) {\n return [];\n }\n\n return region.countries?.map((country) => ({\n value: country?.iso2,\n label: country?.displayName,\n }));\n }, [region]);\n\n return (\n <NativeSelect\n ref={innerRef}\n placeholder={placeholder}\n defaultValue={defaultValue}\n {...props}\n >\n {countryOptions?.map(({ value, label }, index) => (\n <option key={index} value={value ?? ''}>\n {label}\n </option>\n ))}\n </NativeSelect>\n );\n});\n\nCountrySelect.displayName = 'CountrySelect';\n\nexport { CountrySelect };\n"],"mappings":";;;;;AAQA,MAAM,gBAAgB,YAKnB,EAAE,cAAc,WAAW,QAAQ,cAAc,GAAG,SAAS,QAAQ;CACtE,MAAM,WAAW,OAA0B,KAAK;AAEhD,qBACE,WACM,SAAS,QAChB;CAED,MAAM,iBAAiB,cAAc;AACnC,MAAI,CAAC,OACH,QAAO,EAAE;AAGX,SAAO,OAAO,WAAW,KAAK,aAAa;GACzC,OAAO,SAAS;GAChB,OAAO,SAAS;GACjB,EAAE;IACF,CAAC,OAAO,CAAC;AAEZ,QACE,oBAAC;EACC,KAAK;EACQ;EACC;EACd,GAAI;YAEH,gBAAgB,KAAK,EAAE,OAAO,SAAS,UACtC,oBAAC;GAAmB,OAAO,SAAS;aACjC;KADU,MAEJ,CACT;GACW;EAEjB;AAEF,cAAc,cAAc"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
|
|
3
|
+
//#region src/components/delete-button/index.d.ts
|
|
4
|
+
declare const DeleteButton: ({
|
|
5
|
+
id,
|
|
6
|
+
children,
|
|
7
|
+
className
|
|
8
|
+
}: {
|
|
9
|
+
id: string;
|
|
10
|
+
children?: React.ReactNode;
|
|
11
|
+
className?: string;
|
|
12
|
+
}) => react_jsx_runtime0.JSX.Element;
|
|
13
|
+
//#endregion
|
|
14
|
+
export { DeleteButton };
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/components/delete-button/index.tsx"],"sourcesContent":[],"mappings":";;;cAOM;;;;;;aAMO,KAAA,CAAM;EANb,SAAA,CAAA,EAAA,MAkCL;CAlCqB,EAAA,GAQrB,kBAAA,CAAA,GAAA,CAAA,OARqB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import "../../medusa-C1jfAM1B.js";
|
|
2
|
+
import "../../apollo-client-BuznVAE4.js";
|
|
3
|
+
import "../../product-Cgtch-vz.js";
|
|
4
|
+
import "../../cart-p3ffQQ5R.js";
|
|
5
|
+
import "../../cart-XQIczSA1.js";
|
|
6
|
+
import "../../cart-D99u8SUJ.js";
|
|
7
|
+
import "../../cookies-DANAjt8U.js";
|
|
8
|
+
import "../../regions-CF6DH579.js";
|
|
9
|
+
import "../../cart-CLJvIUQC.js";
|
|
10
|
+
import { t as DeleteButton } from "../../delete-button-Bfog7z-I.js";
|
|
11
|
+
|
|
12
|
+
export { DeleteButton };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as react_jsx_runtime5 from "react/jsx-runtime";
|
|
2
|
+
|
|
3
|
+
//#region src/components/error-message/index.d.ts
|
|
4
|
+
declare const ErrorMessage: ({
|
|
5
|
+
error,
|
|
6
|
+
"data-testid": dataTestid
|
|
7
|
+
}: {
|
|
8
|
+
error?: string | null;
|
|
9
|
+
"data-testid"?: string;
|
|
10
|
+
}) => react_jsx_runtime5.JSX.Element | null;
|
|
11
|
+
//#endregion
|
|
12
|
+
export { ErrorMessage };
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/components/error-message/index.tsx"],"sourcesContent":[],"mappings":";;;cAAM;;iBAAgB;AAMrB;;;AAAA,CAAA,EAAA,GAAA,kBAAA,CAAA,GAAA,CAAA,OAAA,GAaA,IAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
|
|
3
|
+
//#region src/components/error-message/index.tsx
|
|
4
|
+
const ErrorMessage = ({ error, "data-testid": dataTestid }) => {
|
|
5
|
+
if (!error) return null;
|
|
6
|
+
return /* @__PURE__ */ jsx("div", {
|
|
7
|
+
className: "text-small-regular pt-2 text-rose-600",
|
|
8
|
+
"data-testid": dataTestid,
|
|
9
|
+
children: /* @__PURE__ */ jsx("span", { children: error })
|
|
10
|
+
});
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
//#endregion
|
|
14
|
+
export { ErrorMessage };
|
|
15
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/error-message/index.tsx"],"sourcesContent":["const ErrorMessage = ({\n error,\n 'data-testid': dataTestid,\n}: {\n error?: string | null;\n 'data-testid'?: string;\n}) => {\n if (!error) {\n return null;\n }\n\n return (\n <div\n className=\"text-small-regular pt-2 text-rose-600\"\n data-testid={dataTestid}\n >\n <span>{error}</span>\n </div>\n );\n};\n\nexport { ErrorMessage };\n"],"mappings":";;;AAAA,MAAM,gBAAgB,EACpB,OACA,eAAe,iBAIX;AACJ,KAAI,CAAC,MACH,QAAO;AAGT,QACE,oBAAC;EACC,WAAU;EACV,eAAa;YAEb,oBAAC,oBAAM,QAAa;GAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/components/footer/index.tsx"],"sourcesContent":[],"mappings":";;;iBAU8B,MAAA,CAAA,GAAM,QAAA,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|