@gfed-medusa/sf-lib-common 1.1.0 → 2.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/dist/components/breadcrumbs/index.d.ts +4 -6
- package/dist/components/breadcrumbs/index.d.ts.map +1 -1
- package/dist/components/breadcrumbs/index.js.map +1 -1
- package/dist/components/cart-button/index.d.ts +2 -2
- package/dist/components/cart-button/index.d.ts.map +1 -1
- package/dist/components/cart-button/index.js +11 -17
- package/dist/components/cart-button/index.js.map +1 -0
- package/dist/components/cart-dropdown/index.d.ts +3 -3
- package/dist/components/cart-dropdown/index.d.ts.map +1 -1
- package/dist/components/cart-dropdown/index.js +193 -16
- package/dist/components/cart-dropdown/index.js.map +1 -0
- package/dist/components/cart-mismatch-banner/index.d.ts +3 -3
- package/dist/components/cart-mismatch-banner/index.d.ts.map +1 -1
- package/dist/components/cart-mismatch-banner/index.js +1 -8
- package/dist/components/cart-mismatch-banner/index.js.map +1 -1
- package/dist/components/country-select/index.d.ts +1 -1
- package/dist/components/delete-button/index.d.ts +2 -2
- package/dist/components/delete-button/index.js +27 -11
- package/dist/components/delete-button/index.js.map +1 -0
- package/dist/components/error-message/index.d.ts +2 -2
- package/dist/components/error-message/index.d.ts.map +1 -1
- package/dist/components/footer/index.d.ts +2 -2
- package/dist/components/footer/index.d.ts.map +1 -1
- package/dist/components/footer/index.js +5 -10
- package/dist/components/footer/index.js.map +1 -1
- package/dist/components/free-shipping-price-nudge/index.d.ts +3 -3
- package/dist/components/free-shipping-price-nudge/index.d.ts.map +1 -1
- package/dist/components/free-shipping-price-nudge/index.js +2 -2
- package/dist/components/interactive-link/index.d.ts +2 -2
- package/dist/components/interactive-link/index.js +1 -1
- package/dist/components/layout-country-select/index.d.ts +4 -4
- package/dist/components/layout-country-select/index.js +89 -11
- package/dist/components/layout-country-select/index.js.map +1 -0
- package/dist/components/line-item-options/index.d.ts +3 -3
- package/dist/components/line-item-options/index.js +15 -2
- package/dist/components/line-item-options/index.js.map +1 -0
- package/dist/components/line-item-price/index.d.ts +3 -3
- package/dist/components/line-item-price/index.d.ts.map +1 -1
- package/dist/components/line-item-price/index.js +46 -2
- package/dist/components/line-item-price/index.js.map +1 -0
- package/dist/components/localized-client-link/index.d.ts +5 -12
- package/dist/components/localized-client-link/index.d.ts.map +1 -1
- package/dist/components/localized-client-link/index.js +19 -2
- package/dist/components/localized-client-link/index.js.map +1 -0
- package/dist/components/modal/index.d.ts +2 -2
- package/dist/components/modal/index.js +101 -3
- package/dist/components/modal/index.js.map +1 -0
- package/dist/components/nav/index.d.ts +2 -2
- package/dist/components/nav/index.js +6 -25
- package/dist/components/nav/index.js.map +1 -1
- package/dist/components/portable-text/index.d.ts +3 -3
- package/dist/components/portable-text/index.js +329 -2
- package/dist/components/portable-text/index.js.map +1 -0
- package/dist/components/preview-price/index.d.ts +1 -1
- package/dist/components/preview-price/index.js +19 -2
- package/dist/components/preview-price/index.js.map +1 -0
- package/dist/components/product-card/index.d.ts +2 -2
- package/dist/components/product-card/index.d.ts.map +1 -1
- package/dist/components/product-card/index.js +3 -4
- package/dist/components/product-card/index.js.map +1 -1
- package/dist/components/product-preview/index.d.ts +3 -3
- package/dist/components/product-preview/index.d.ts.map +1 -1
- package/dist/components/product-preview/index.js +4 -4
- package/dist/components/search-modal/index.d.ts +2 -2
- package/dist/components/search-modal/index.d.ts.map +1 -1
- package/dist/components/search-modal/index.js +135 -9
- package/dist/components/search-modal/index.js.map +1 -0
- package/dist/components/side-menu/index.d.ts +3 -3
- package/dist/components/side-menu/index.js +96 -13
- package/dist/components/side-menu/index.js.map +1 -0
- package/dist/components/thumbnail/index.js +43 -2
- package/dist/components/thumbnail/index.js.map +1 -0
- package/dist/lib/config/medusa.js +11 -2
- package/dist/lib/config/medusa.js.map +1 -0
- package/dist/lib/context/apollo-context.js +1 -2
- package/dist/lib/context/apollo-context.js.map +1 -1
- package/dist/lib/context/modal-context.d.ts +2 -2
- package/dist/lib/context/modal-context.js +19 -2
- package/dist/lib/context/modal-context.js.map +1 -0
- package/dist/lib/data/cart.d.ts +1 -1
- package/dist/lib/data/cart.d.ts.map +1 -1
- package/dist/lib/data/cart.js +102 -10
- package/dist/lib/data/cart.js.map +1 -0
- package/dist/lib/data/categories.d.ts +1 -1
- package/dist/lib/data/categories.js +15 -5
- package/dist/lib/data/categories.js.map +1 -0
- package/dist/lib/data/collections.d.ts +1 -1
- package/dist/lib/data/collections.js +21 -5
- package/dist/lib/data/collections.js.map +1 -0
- package/dist/lib/data/cookies.d.ts +2 -1
- package/dist/lib/data/cookies.d.ts.map +1 -1
- package/dist/lib/data/cookies.js +45 -2
- package/dist/lib/data/cookies.js.map +1 -0
- package/dist/lib/data/customer.d.ts +1 -1
- package/dist/lib/data/customer.d.ts.map +1 -1
- package/dist/lib/data/customer.js +39 -9
- package/dist/lib/data/customer.js.map +1 -0
- package/dist/lib/data/footer.js +15 -4
- package/dist/lib/data/footer.js.map +1 -0
- package/dist/lib/data/orders.d.ts +1 -1
- package/dist/lib/data/orders.js +4 -4
- package/dist/lib/data/regions.d.ts +1 -1
- package/dist/lib/data/regions.js +33 -4
- package/dist/lib/data/regions.js.map +1 -0
- package/dist/lib/data/search.d.ts +1 -1
- package/dist/lib/data/search.js +20 -5
- package/dist/lib/data/search.js.map +1 -0
- package/dist/lib/gql/apollo-client.js +66 -2
- package/dist/lib/gql/apollo-client.js.map +1 -0
- package/dist/lib/gql/fragments/cart.d.ts +9 -9
- package/dist/lib/gql/fragments/cart.d.ts.map +1 -1
- package/dist/lib/gql/fragments/cart.js +141 -3
- package/dist/{cart-BNoIGQmw.js.map → lib/gql/fragments/cart.js.map} +1 -1
- package/dist/lib/gql/fragments/customer.d.ts +3 -3
- package/dist/lib/gql/fragments/customer.js +41 -2
- package/dist/{customer-CgN4zI00.js.map → lib/gql/fragments/customer.js.map} +1 -1
- package/dist/lib/gql/fragments/product.d.ts +8 -8
- package/dist/lib/gql/fragments/product.js +89 -2
- package/dist/{product-COu5D1mS.js.map → lib/gql/fragments/product.js.map} +1 -1
- package/dist/lib/gql/mutations/cart.d.ts +4 -4
- package/dist/lib/gql/mutations/cart.d.ts.map +1 -1
- package/dist/lib/gql/mutations/cart.js +41 -4
- package/dist/{cart-IHaLnQC4.js.map → lib/gql/mutations/cart.js.map} +1 -1
- package/dist/lib/gql/mutations/customer.js +0 -1
- package/dist/lib/gql/queries/cart.d.ts +2 -2
- package/dist/lib/gql/queries/cart.d.ts.map +1 -1
- package/dist/lib/gql/queries/cart.js +15 -4
- package/dist/{cart-DH8urwwT.js.map → lib/gql/queries/cart.js.map} +1 -1
- package/dist/lib/gql/queries/collections.d.ts +2 -2
- package/dist/lib/gql/queries/collections.d.ts.map +1 -1
- package/dist/lib/gql/queries/collections.js +19 -3
- package/dist/{collections-DMv3UYgC.js.map → lib/gql/queries/collections.js.map} +1 -1
- package/dist/lib/gql/queries/customer.d.ts +2 -2
- package/dist/lib/gql/queries/customer.d.ts.map +1 -1
- package/dist/lib/gql/queries/customer.js +15 -3
- package/dist/{customer-DIJz6m7L.js.map → lib/gql/queries/customer.js.map} +1 -1
- package/dist/lib/gql/queries/footer.d.ts +2 -2
- package/dist/lib/gql/queries/footer.d.ts.map +1 -1
- package/dist/lib/gql/queries/footer.js +21 -2
- package/dist/lib/gql/queries/footer.js.map +1 -0
- package/dist/lib/gql/queries/product.d.ts +3 -3
- package/dist/lib/gql/queries/product.d.ts.map +1 -1
- package/dist/lib/gql/queries/product.js +46 -3
- package/dist/{product-C3HQUIgX.js.map → lib/gql/queries/product.js.map} +1 -1
- package/dist/lib/hooks/use-apollo.d.ts +2 -2
- package/dist/lib/hooks/use-apollo.js +10 -3
- package/dist/lib/hooks/use-apollo.js.map +1 -0
- package/dist/lib/hooks/use-search.d.ts +1 -1
- package/dist/lib/hooks/use-search.js +66 -6
- package/dist/lib/hooks/use-search.js.map +1 -0
- package/dist/lib/hooks/use-toggle-state.d.ts +23 -2
- package/dist/lib/hooks/use-toggle-state.d.ts.map +1 -0
- package/dist/lib/utils/data-types.js +9 -2
- package/dist/lib/utils/data-types.js.map +1 -0
- package/dist/lib/utils/env.js +1 -1
- package/dist/lib/utils/env.js.map +1 -1
- package/dist/lib/utils/get-percentage-diff.js +7 -2
- package/dist/lib/utils/get-percentage-diff.js.map +1 -0
- package/dist/lib/utils/get-product-price.d.ts +1 -1
- package/dist/lib/utils/get-product-price.js +46 -2
- package/dist/lib/utils/get-product-price.js.map +1 -0
- package/dist/lib/utils/medusa-error.js +16 -2
- package/dist/lib/utils/medusa-error.js.map +1 -0
- package/dist/lib/utils/money.js +14 -2
- package/dist/lib/utils/money.js.map +1 -0
- package/dist/lib/utils/normalize-functions.d.ts +1 -1
- package/dist/lib/utils/normalize-functions.js +69 -2
- package/dist/lib/utils/normalize-functions.js.map +1 -0
- package/dist/types/graphql.d.ts +1368 -2
- package/dist/types/graphql.d.ts.map +1 -0
- package/dist/types/prices.d.ts +20 -2
- package/dist/types/prices.d.ts.map +1 -0
- package/dist/types/prices.js +0 -1
- package/package.json +12 -12
- package/dist/apollo-client-Bw50r80c.js +0 -66
- package/dist/apollo-client-Bw50r80c.js.map +0 -1
- package/dist/cart-BNoIGQmw.js +0 -142
- package/dist/cart-DH8urwwT.js +0 -16
- package/dist/cart-IHaLnQC4.js +0 -42
- package/dist/cart-button-Dj_zRxop.js +0 -12
- package/dist/cart-button-Dj_zRxop.js.map +0 -1
- package/dist/cart-dropdown-D_PUJarp.js +0 -195
- package/dist/cart-dropdown-D_PUJarp.js.map +0 -1
- package/dist/cart-xkcyWLfU.js +0 -103
- package/dist/cart-xkcyWLfU.js.map +0 -1
- package/dist/categories-B-RYCIZ3.js +0 -16
- package/dist/categories-B-RYCIZ3.js.map +0 -1
- package/dist/collections-BgyvhW2p.js +0 -22
- package/dist/collections-BgyvhW2p.js.map +0 -1
- package/dist/collections-DMv3UYgC.js +0 -20
- package/dist/cookies-lksVIe4_.js +0 -38
- package/dist/cookies-lksVIe4_.js.map +0 -1
- package/dist/customer-CgN4zI00.js +0 -42
- package/dist/customer-ClewjBBr.js +0 -38
- package/dist/customer-ClewjBBr.js.map +0 -1
- package/dist/customer-DIJz6m7L.js +0 -16
- package/dist/data-types-CTPJXmJH.js +0 -10
- package/dist/data-types-CTPJXmJH.js.map +0 -1
- package/dist/delete-button-Bnm5bof2.js +0 -28
- package/dist/delete-button-Bnm5bof2.js.map +0 -1
- package/dist/footer-BvNV-R9D.js +0 -16
- package/dist/footer-BvNV-R9D.js.map +0 -1
- package/dist/footer-DCtgtjKS.js +0 -76
- package/dist/footer-DCtgtjKS.js.map +0 -1
- package/dist/get-percentage-diff-B_UVOFgE.js +0 -8
- package/dist/get-percentage-diff-B_UVOFgE.js.map +0 -1
- package/dist/get-product-price-DKWc76ev.js +0 -47
- package/dist/get-product-price-DKWc76ev.js.map +0 -1
- package/dist/graphql-CdTGi4Pp.d.ts +0 -1368
- package/dist/graphql-CdTGi4Pp.d.ts.map +0 -1
- package/dist/layout-country-select-C7Ra-opl.js +0 -90
- package/dist/layout-country-select-C7Ra-opl.js.map +0 -1
- package/dist/line-item-options-l_eRZIIq.js +0 -16
- package/dist/line-item-options-l_eRZIIq.js.map +0 -1
- package/dist/line-item-price-BlTwskFC.js +0 -47
- package/dist/line-item-price-BlTwskFC.js.map +0 -1
- package/dist/localized-client-link-CthmRcvb.js +0 -22
- package/dist/localized-client-link-CthmRcvb.js.map +0 -1
- package/dist/medusa-TumrpCF2.js +0 -12
- package/dist/medusa-TumrpCF2.js.map +0 -1
- package/dist/medusa-error-DDhA6RGC.js +0 -17
- package/dist/medusa-error-DDhA6RGC.js.map +0 -1
- package/dist/modal-BASYY-YM.js +0 -102
- package/dist/modal-BASYY-YM.js.map +0 -1
- package/dist/modal-context-02cA-7jy.js +0 -20
- package/dist/modal-context-02cA-7jy.js.map +0 -1
- package/dist/money-DVQGzXns.js +0 -15
- package/dist/money-DVQGzXns.js.map +0 -1
- package/dist/normalize-functions-Bqr-JkYn.js +0 -70
- package/dist/normalize-functions-Bqr-JkYn.js.map +0 -1
- package/dist/portable-text-CuI022GH.js +0 -330
- package/dist/portable-text-CuI022GH.js.map +0 -1
- package/dist/preview-price-_4sxkXQs.js +0 -20
- package/dist/preview-price-_4sxkXQs.js.map +0 -1
- package/dist/prices-eO1YBciD.d.ts +0 -20
- package/dist/prices-eO1YBciD.d.ts.map +0 -1
- package/dist/product-C3HQUIgX.js +0 -47
- package/dist/product-COu5D1mS.js +0 -90
- package/dist/regions-r1AvxfT8.js +0 -34
- package/dist/regions-r1AvxfT8.js.map +0 -1
- package/dist/search-D7Gw7jAk.js +0 -21
- package/dist/search-D7Gw7jAk.js.map +0 -1
- package/dist/search-modal-DaXadYWM.js +0 -137
- package/dist/search-modal-DaXadYWM.js.map +0 -1
- package/dist/side-menu-B6IjTd5M.js +0 -97
- package/dist/side-menu-B6IjTd5M.js.map +0 -1
- package/dist/thumbnail-C0TU3rh-.js +0 -44
- package/dist/thumbnail-C0TU3rh-.js.map +0 -1
- package/dist/use-apollo-BxAFd1Y5.js +0 -11
- package/dist/use-apollo-BxAFd1Y5.js.map +0 -1
- package/dist/use-search-VX-u8o1D.js +0 -67
- package/dist/use-search-VX-u8o1D.js.map +0 -1
- package/dist/use-toggle-state-DI4Gwlfj.d.ts +0 -23
- package/dist/use-toggle-state-DI4Gwlfj.d.ts.map +0 -1
package/dist/footer-DCtgtjKS.js
DELETED
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
import { gql } from "@apollo/client";
|
|
2
|
-
|
|
3
|
-
//#region src/lib/gql/queries/footer.ts
|
|
4
|
-
const GET_FOOTER_QUERY = gql`
|
|
5
|
-
query GetFooter {
|
|
6
|
-
footer {
|
|
7
|
-
storeName
|
|
8
|
-
social {
|
|
9
|
-
text
|
|
10
|
-
url
|
|
11
|
-
}
|
|
12
|
-
copyright
|
|
13
|
-
poweredByCta {
|
|
14
|
-
text {
|
|
15
|
-
... on TextBlock {
|
|
16
|
-
_key
|
|
17
|
-
_type
|
|
18
|
-
style
|
|
19
|
-
children {
|
|
20
|
-
_key
|
|
21
|
-
text
|
|
22
|
-
marks
|
|
23
|
-
}
|
|
24
|
-
markDefs {
|
|
25
|
-
... on LinkMark {
|
|
26
|
-
_key
|
|
27
|
-
_type
|
|
28
|
-
href
|
|
29
|
-
target
|
|
30
|
-
}
|
|
31
|
-
... on IconLinkMark {
|
|
32
|
-
_key
|
|
33
|
-
_type
|
|
34
|
-
href
|
|
35
|
-
iconType
|
|
36
|
-
iconClass
|
|
37
|
-
iconFill
|
|
38
|
-
iconComponent
|
|
39
|
-
iconImage {
|
|
40
|
-
asset {
|
|
41
|
-
url
|
|
42
|
-
}
|
|
43
|
-
alt
|
|
44
|
-
}
|
|
45
|
-
iconUrl
|
|
46
|
-
target
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
... on ImageBlock {
|
|
51
|
-
_key
|
|
52
|
-
_type
|
|
53
|
-
asset {
|
|
54
|
-
url
|
|
55
|
-
}
|
|
56
|
-
alt
|
|
57
|
-
}
|
|
58
|
-
... on FileBlock {
|
|
59
|
-
_key
|
|
60
|
-
_type
|
|
61
|
-
asset {
|
|
62
|
-
url
|
|
63
|
-
originalFilename
|
|
64
|
-
size
|
|
65
|
-
mimeType
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
`;
|
|
73
|
-
|
|
74
|
-
//#endregion
|
|
75
|
-
export { GET_FOOTER_QUERY as t };
|
|
76
|
-
//# sourceMappingURL=footer-DCtgtjKS.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"footer-DCtgtjKS.js","names":[],"sources":["../src/lib/gql/queries/footer.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nexport const GET_FOOTER_QUERY = gql`\n query GetFooter {\n footer {\n storeName\n social {\n text\n url\n }\n copyright\n poweredByCta {\n text {\n ... on TextBlock {\n _key\n _type\n style\n children {\n _key\n text\n marks\n }\n markDefs {\n ... on LinkMark {\n _key\n _type\n href\n target\n }\n ... on IconLinkMark {\n _key\n _type\n href\n iconType\n iconClass\n iconFill\n iconComponent\n iconImage {\n asset {\n url\n }\n alt\n }\n iconUrl\n target\n }\n }\n }\n ... on ImageBlock {\n _key\n _type\n asset {\n url\n }\n alt\n }\n ... on FileBlock {\n _key\n _type\n asset {\n url\n originalFilename\n size\n mimeType\n }\n }\n }\n }\n }\n }\n`;\n"],"mappings":";;;AAEA,MAAa,mBAAmB,GAAG"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
//#region src/lib/utils/get-percentage-diff.ts
|
|
2
|
-
const getPercentageDiff = (original, calculated) => {
|
|
3
|
-
return ((original - calculated) / original * 100).toFixed();
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
//#endregion
|
|
7
|
-
export { getPercentageDiff as t };
|
|
8
|
-
//# sourceMappingURL=get-percentage-diff-B_UVOFgE.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-percentage-diff-B_UVOFgE.js","names":[],"sources":["../src/lib/utils/get-percentage-diff.ts"],"sourcesContent":["export const getPercentageDiff = (original: number, calculated: number) => {\n const diff = original - calculated;\n const decrease = (diff / original) * 100;\n\n return decrease.toFixed();\n};\n"],"mappings":";AAAA,MAAa,qBAAqB,UAAkB,eAAuB;AAIzE,UAHa,WAAW,cACC,WAAY,KAErB,SAAS"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { t as convertToLocale } from "./money-DVQGzXns.js";
|
|
2
|
-
import { t as getPercentageDiff } from "./get-percentage-diff-B_UVOFgE.js";
|
|
3
|
-
|
|
4
|
-
//#region src/lib/utils/get-product-price.ts
|
|
5
|
-
const getPricesForVariant = (variant) => {
|
|
6
|
-
if (!variant?.price?.amount) return null;
|
|
7
|
-
return {
|
|
8
|
-
calculated_price_number: variant.price?.amount,
|
|
9
|
-
calculated_price: convertToLocale({
|
|
10
|
-
amount: variant.price.amount,
|
|
11
|
-
currency_code: variant.price.currencyCode || ""
|
|
12
|
-
}),
|
|
13
|
-
original_price_number: variant.originalPrice?.amount || variant.price.amount,
|
|
14
|
-
original_price: convertToLocale({
|
|
15
|
-
amount: variant.originalPrice?.amount || variant.price.amount,
|
|
16
|
-
currency_code: variant.price.currencyCode || ""
|
|
17
|
-
}),
|
|
18
|
-
currency_code: variant.price.currencyCode,
|
|
19
|
-
price_type: variant.price.priceType || "default",
|
|
20
|
-
percentage_diff: getPercentageDiff(variant.originalPrice?.amount || variant.price.amount, variant.price.amount)
|
|
21
|
-
};
|
|
22
|
-
};
|
|
23
|
-
function getProductPrice({ product, variantId }) {
|
|
24
|
-
if (!product || !product.id) throw new Error("No product provided");
|
|
25
|
-
const cheapestPrice = () => {
|
|
26
|
-
if (!product || !product.variants?.length) return null;
|
|
27
|
-
const cheapestVariant = product.variants.filter((v) => !!v.price).sort((a, b) => {
|
|
28
|
-
return (a.price?.amount ?? 0) - (b.price?.amount ?? 0);
|
|
29
|
-
})[0];
|
|
30
|
-
return getPricesForVariant(cheapestVariant);
|
|
31
|
-
};
|
|
32
|
-
const variantPrice = () => {
|
|
33
|
-
if (!product || !variantId) return null;
|
|
34
|
-
const variant = product.variants?.find((v) => v.id === variantId || v.sku === variantId);
|
|
35
|
-
if (!variant) return null;
|
|
36
|
-
return getPricesForVariant(variant);
|
|
37
|
-
};
|
|
38
|
-
return {
|
|
39
|
-
product,
|
|
40
|
-
cheapestPrice: cheapestPrice(),
|
|
41
|
-
variantPrice: variantPrice()
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
//#endregion
|
|
46
|
-
export { getProductPrice as n, getPricesForVariant as t };
|
|
47
|
-
//# sourceMappingURL=get-product-price-DKWc76ev.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-product-price-DKWc76ev.js","names":["cheapestVariant: any","variant: any"],"sources":["../src/lib/utils/get-product-price.ts"],"sourcesContent":["import { Product } from '@/types/graphql';\n\nimport { getPercentageDiff } from './get-percentage-diff';\nimport { convertToLocale } from './money';\n\nexport const getPricesForVariant = (variant: any) => {\n if (!variant?.price?.amount) {\n return null;\n }\n\n return {\n calculated_price_number: variant.price?.amount,\n calculated_price: convertToLocale({\n amount: variant.price.amount,\n currency_code: variant.price.currencyCode || '',\n }),\n original_price_number:\n variant.originalPrice?.amount || variant.price.amount,\n original_price: convertToLocale({\n amount: variant.originalPrice?.amount || variant.price.amount,\n currency_code: variant.price.currencyCode || '',\n }),\n currency_code: variant.price.currencyCode,\n price_type: variant.price.priceType || 'default',\n percentage_diff: getPercentageDiff(\n variant.originalPrice?.amount || variant.price.amount,\n variant.price.amount\n ),\n };\n};\n\nexport function getProductPrice({\n product,\n variantId,\n}: {\n product: Product;\n variantId?: string;\n}) {\n if (!product || !product.id) {\n throw new Error('No product provided');\n }\n\n const cheapestPrice = () => {\n if (!product || !product.variants?.length) {\n return null;\n }\n\n const cheapestVariant: any = product.variants\n .filter((v: any) => !!v.price)\n .sort((a: any, b: any) => {\n return (a.price?.amount ?? 0) - (b.price?.amount ?? 0);\n })[0];\n\n return getPricesForVariant(cheapestVariant);\n };\n\n const variantPrice = () => {\n if (!product || !variantId) {\n return null;\n }\n\n const variant: any = product.variants?.find(\n (v) => v.id === variantId || v.sku === variantId\n );\n\n if (!variant) {\n return null;\n }\n\n return getPricesForVariant(variant);\n };\n\n return {\n product,\n cheapestPrice: cheapestPrice(),\n variantPrice: variantPrice(),\n };\n}\n"],"mappings":";;;;AAKA,MAAa,uBAAuB,YAAiB;AACnD,KAAI,CAAC,SAAS,OAAO,OACnB,QAAO;AAGT,QAAO;EACL,yBAAyB,QAAQ,OAAO;EACxC,kBAAkB,gBAAgB;GAChC,QAAQ,QAAQ,MAAM;GACtB,eAAe,QAAQ,MAAM,gBAAgB;GAC9C,CAAC;EACF,uBACE,QAAQ,eAAe,UAAU,QAAQ,MAAM;EACjD,gBAAgB,gBAAgB;GAC9B,QAAQ,QAAQ,eAAe,UAAU,QAAQ,MAAM;GACvD,eAAe,QAAQ,MAAM,gBAAgB;GAC9C,CAAC;EACF,eAAe,QAAQ,MAAM;EAC7B,YAAY,QAAQ,MAAM,aAAa;EACvC,iBAAiB,kBACf,QAAQ,eAAe,UAAU,QAAQ,MAAM,QAC/C,QAAQ,MAAM,OACf;EACF;;AAGH,SAAgB,gBAAgB,EAC9B,SACA,aAIC;AACD,KAAI,CAAC,WAAW,CAAC,QAAQ,GACvB,OAAM,IAAI,MAAM,sBAAsB;CAGxC,MAAM,sBAAsB;AAC1B,MAAI,CAAC,WAAW,CAAC,QAAQ,UAAU,OACjC,QAAO;EAGT,MAAMA,kBAAuB,QAAQ,SAClC,QAAQ,MAAW,CAAC,CAAC,EAAE,MAAM,CAC7B,MAAM,GAAQ,MAAW;AACxB,WAAQ,EAAE,OAAO,UAAU,MAAM,EAAE,OAAO,UAAU;IACpD,CAAC;AAEL,SAAO,oBAAoB,gBAAgB;;CAG7C,MAAM,qBAAqB;AACzB,MAAI,CAAC,WAAW,CAAC,UACf,QAAO;EAGT,MAAMC,UAAe,QAAQ,UAAU,MACpC,MAAM,EAAE,OAAO,aAAa,EAAE,QAAQ,UACxC;AAED,MAAI,CAAC,QACH,QAAO;AAGT,SAAO,oBAAoB,QAAQ;;AAGrC,QAAO;EACL;EACA,eAAe,eAAe;EAC9B,cAAc,cAAc;EAC7B"}
|