@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.
Files changed (254) hide show
  1. package/dist/components/breadcrumbs/index.d.ts +4 -6
  2. package/dist/components/breadcrumbs/index.d.ts.map +1 -1
  3. package/dist/components/breadcrumbs/index.js.map +1 -1
  4. package/dist/components/cart-button/index.d.ts +2 -2
  5. package/dist/components/cart-button/index.d.ts.map +1 -1
  6. package/dist/components/cart-button/index.js +11 -17
  7. package/dist/components/cart-button/index.js.map +1 -0
  8. package/dist/components/cart-dropdown/index.d.ts +3 -3
  9. package/dist/components/cart-dropdown/index.d.ts.map +1 -1
  10. package/dist/components/cart-dropdown/index.js +193 -16
  11. package/dist/components/cart-dropdown/index.js.map +1 -0
  12. package/dist/components/cart-mismatch-banner/index.d.ts +3 -3
  13. package/dist/components/cart-mismatch-banner/index.d.ts.map +1 -1
  14. package/dist/components/cart-mismatch-banner/index.js +1 -8
  15. package/dist/components/cart-mismatch-banner/index.js.map +1 -1
  16. package/dist/components/country-select/index.d.ts +1 -1
  17. package/dist/components/delete-button/index.d.ts +2 -2
  18. package/dist/components/delete-button/index.js +27 -11
  19. package/dist/components/delete-button/index.js.map +1 -0
  20. package/dist/components/error-message/index.d.ts +2 -2
  21. package/dist/components/error-message/index.d.ts.map +1 -1
  22. package/dist/components/footer/index.d.ts +2 -2
  23. package/dist/components/footer/index.d.ts.map +1 -1
  24. package/dist/components/footer/index.js +5 -10
  25. package/dist/components/footer/index.js.map +1 -1
  26. package/dist/components/free-shipping-price-nudge/index.d.ts +3 -3
  27. package/dist/components/free-shipping-price-nudge/index.d.ts.map +1 -1
  28. package/dist/components/free-shipping-price-nudge/index.js +2 -2
  29. package/dist/components/interactive-link/index.d.ts +2 -2
  30. package/dist/components/interactive-link/index.js +1 -1
  31. package/dist/components/layout-country-select/index.d.ts +4 -4
  32. package/dist/components/layout-country-select/index.js +89 -11
  33. package/dist/components/layout-country-select/index.js.map +1 -0
  34. package/dist/components/line-item-options/index.d.ts +3 -3
  35. package/dist/components/line-item-options/index.js +15 -2
  36. package/dist/components/line-item-options/index.js.map +1 -0
  37. package/dist/components/line-item-price/index.d.ts +3 -3
  38. package/dist/components/line-item-price/index.d.ts.map +1 -1
  39. package/dist/components/line-item-price/index.js +46 -2
  40. package/dist/components/line-item-price/index.js.map +1 -0
  41. package/dist/components/localized-client-link/index.d.ts +5 -12
  42. package/dist/components/localized-client-link/index.d.ts.map +1 -1
  43. package/dist/components/localized-client-link/index.js +19 -2
  44. package/dist/components/localized-client-link/index.js.map +1 -0
  45. package/dist/components/modal/index.d.ts +2 -2
  46. package/dist/components/modal/index.js +101 -3
  47. package/dist/components/modal/index.js.map +1 -0
  48. package/dist/components/nav/index.d.ts +2 -2
  49. package/dist/components/nav/index.js +6 -25
  50. package/dist/components/nav/index.js.map +1 -1
  51. package/dist/components/portable-text/index.d.ts +3 -3
  52. package/dist/components/portable-text/index.js +329 -2
  53. package/dist/components/portable-text/index.js.map +1 -0
  54. package/dist/components/preview-price/index.d.ts +1 -1
  55. package/dist/components/preview-price/index.js +19 -2
  56. package/dist/components/preview-price/index.js.map +1 -0
  57. package/dist/components/product-card/index.d.ts +2 -2
  58. package/dist/components/product-card/index.d.ts.map +1 -1
  59. package/dist/components/product-card/index.js +3 -4
  60. package/dist/components/product-card/index.js.map +1 -1
  61. package/dist/components/product-preview/index.d.ts +3 -3
  62. package/dist/components/product-preview/index.d.ts.map +1 -1
  63. package/dist/components/product-preview/index.js +4 -4
  64. package/dist/components/search-modal/index.d.ts +2 -2
  65. package/dist/components/search-modal/index.d.ts.map +1 -1
  66. package/dist/components/search-modal/index.js +135 -9
  67. package/dist/components/search-modal/index.js.map +1 -0
  68. package/dist/components/side-menu/index.d.ts +3 -3
  69. package/dist/components/side-menu/index.js +96 -13
  70. package/dist/components/side-menu/index.js.map +1 -0
  71. package/dist/components/thumbnail/index.js +43 -2
  72. package/dist/components/thumbnail/index.js.map +1 -0
  73. package/dist/lib/config/medusa.js +11 -2
  74. package/dist/lib/config/medusa.js.map +1 -0
  75. package/dist/lib/context/apollo-context.js +1 -2
  76. package/dist/lib/context/apollo-context.js.map +1 -1
  77. package/dist/lib/context/modal-context.d.ts +2 -2
  78. package/dist/lib/context/modal-context.js +19 -2
  79. package/dist/lib/context/modal-context.js.map +1 -0
  80. package/dist/lib/data/cart.d.ts +1 -1
  81. package/dist/lib/data/cart.d.ts.map +1 -1
  82. package/dist/lib/data/cart.js +102 -10
  83. package/dist/lib/data/cart.js.map +1 -0
  84. package/dist/lib/data/categories.d.ts +1 -1
  85. package/dist/lib/data/categories.js +15 -5
  86. package/dist/lib/data/categories.js.map +1 -0
  87. package/dist/lib/data/collections.d.ts +1 -1
  88. package/dist/lib/data/collections.js +21 -5
  89. package/dist/lib/data/collections.js.map +1 -0
  90. package/dist/lib/data/cookies.d.ts +2 -1
  91. package/dist/lib/data/cookies.d.ts.map +1 -1
  92. package/dist/lib/data/cookies.js +45 -2
  93. package/dist/lib/data/cookies.js.map +1 -0
  94. package/dist/lib/data/customer.d.ts +1 -1
  95. package/dist/lib/data/customer.d.ts.map +1 -1
  96. package/dist/lib/data/customer.js +39 -9
  97. package/dist/lib/data/customer.js.map +1 -0
  98. package/dist/lib/data/footer.js +15 -4
  99. package/dist/lib/data/footer.js.map +1 -0
  100. package/dist/lib/data/orders.d.ts +1 -1
  101. package/dist/lib/data/orders.js +4 -4
  102. package/dist/lib/data/regions.d.ts +1 -1
  103. package/dist/lib/data/regions.js +33 -4
  104. package/dist/lib/data/regions.js.map +1 -0
  105. package/dist/lib/data/search.d.ts +1 -1
  106. package/dist/lib/data/search.js +20 -5
  107. package/dist/lib/data/search.js.map +1 -0
  108. package/dist/lib/gql/apollo-client.js +66 -2
  109. package/dist/lib/gql/apollo-client.js.map +1 -0
  110. package/dist/lib/gql/fragments/cart.d.ts +9 -9
  111. package/dist/lib/gql/fragments/cart.d.ts.map +1 -1
  112. package/dist/lib/gql/fragments/cart.js +141 -3
  113. package/dist/{cart-BNoIGQmw.js.map → lib/gql/fragments/cart.js.map} +1 -1
  114. package/dist/lib/gql/fragments/customer.d.ts +3 -3
  115. package/dist/lib/gql/fragments/customer.js +41 -2
  116. package/dist/{customer-CgN4zI00.js.map → lib/gql/fragments/customer.js.map} +1 -1
  117. package/dist/lib/gql/fragments/product.d.ts +8 -8
  118. package/dist/lib/gql/fragments/product.js +89 -2
  119. package/dist/{product-COu5D1mS.js.map → lib/gql/fragments/product.js.map} +1 -1
  120. package/dist/lib/gql/mutations/cart.d.ts +4 -4
  121. package/dist/lib/gql/mutations/cart.d.ts.map +1 -1
  122. package/dist/lib/gql/mutations/cart.js +41 -4
  123. package/dist/{cart-IHaLnQC4.js.map → lib/gql/mutations/cart.js.map} +1 -1
  124. package/dist/lib/gql/mutations/customer.js +0 -1
  125. package/dist/lib/gql/queries/cart.d.ts +2 -2
  126. package/dist/lib/gql/queries/cart.d.ts.map +1 -1
  127. package/dist/lib/gql/queries/cart.js +15 -4
  128. package/dist/{cart-DH8urwwT.js.map → lib/gql/queries/cart.js.map} +1 -1
  129. package/dist/lib/gql/queries/collections.d.ts +2 -2
  130. package/dist/lib/gql/queries/collections.d.ts.map +1 -1
  131. package/dist/lib/gql/queries/collections.js +19 -3
  132. package/dist/{collections-DMv3UYgC.js.map → lib/gql/queries/collections.js.map} +1 -1
  133. package/dist/lib/gql/queries/customer.d.ts +2 -2
  134. package/dist/lib/gql/queries/customer.d.ts.map +1 -1
  135. package/dist/lib/gql/queries/customer.js +15 -3
  136. package/dist/{customer-DIJz6m7L.js.map → lib/gql/queries/customer.js.map} +1 -1
  137. package/dist/lib/gql/queries/footer.d.ts +2 -2
  138. package/dist/lib/gql/queries/footer.d.ts.map +1 -1
  139. package/dist/lib/gql/queries/footer.js +21 -2
  140. package/dist/lib/gql/queries/footer.js.map +1 -0
  141. package/dist/lib/gql/queries/product.d.ts +3 -3
  142. package/dist/lib/gql/queries/product.d.ts.map +1 -1
  143. package/dist/lib/gql/queries/product.js +46 -3
  144. package/dist/{product-C3HQUIgX.js.map → lib/gql/queries/product.js.map} +1 -1
  145. package/dist/lib/hooks/use-apollo.d.ts +2 -2
  146. package/dist/lib/hooks/use-apollo.js +10 -3
  147. package/dist/lib/hooks/use-apollo.js.map +1 -0
  148. package/dist/lib/hooks/use-search.d.ts +1 -1
  149. package/dist/lib/hooks/use-search.js +66 -6
  150. package/dist/lib/hooks/use-search.js.map +1 -0
  151. package/dist/lib/hooks/use-toggle-state.d.ts +23 -2
  152. package/dist/lib/hooks/use-toggle-state.d.ts.map +1 -0
  153. package/dist/lib/utils/data-types.js +9 -2
  154. package/dist/lib/utils/data-types.js.map +1 -0
  155. package/dist/lib/utils/env.js +1 -1
  156. package/dist/lib/utils/env.js.map +1 -1
  157. package/dist/lib/utils/get-percentage-diff.js +7 -2
  158. package/dist/lib/utils/get-percentage-diff.js.map +1 -0
  159. package/dist/lib/utils/get-product-price.d.ts +1 -1
  160. package/dist/lib/utils/get-product-price.js +46 -2
  161. package/dist/lib/utils/get-product-price.js.map +1 -0
  162. package/dist/lib/utils/medusa-error.js +16 -2
  163. package/dist/lib/utils/medusa-error.js.map +1 -0
  164. package/dist/lib/utils/money.js +14 -2
  165. package/dist/lib/utils/money.js.map +1 -0
  166. package/dist/lib/utils/normalize-functions.d.ts +1 -1
  167. package/dist/lib/utils/normalize-functions.js +69 -2
  168. package/dist/lib/utils/normalize-functions.js.map +1 -0
  169. package/dist/types/graphql.d.ts +1368 -2
  170. package/dist/types/graphql.d.ts.map +1 -0
  171. package/dist/types/prices.d.ts +20 -2
  172. package/dist/types/prices.d.ts.map +1 -0
  173. package/dist/types/prices.js +0 -1
  174. package/package.json +12 -12
  175. package/dist/apollo-client-Bw50r80c.js +0 -66
  176. package/dist/apollo-client-Bw50r80c.js.map +0 -1
  177. package/dist/cart-BNoIGQmw.js +0 -142
  178. package/dist/cart-DH8urwwT.js +0 -16
  179. package/dist/cart-IHaLnQC4.js +0 -42
  180. package/dist/cart-button-Dj_zRxop.js +0 -12
  181. package/dist/cart-button-Dj_zRxop.js.map +0 -1
  182. package/dist/cart-dropdown-D_PUJarp.js +0 -195
  183. package/dist/cart-dropdown-D_PUJarp.js.map +0 -1
  184. package/dist/cart-xkcyWLfU.js +0 -103
  185. package/dist/cart-xkcyWLfU.js.map +0 -1
  186. package/dist/categories-B-RYCIZ3.js +0 -16
  187. package/dist/categories-B-RYCIZ3.js.map +0 -1
  188. package/dist/collections-BgyvhW2p.js +0 -22
  189. package/dist/collections-BgyvhW2p.js.map +0 -1
  190. package/dist/collections-DMv3UYgC.js +0 -20
  191. package/dist/cookies-lksVIe4_.js +0 -38
  192. package/dist/cookies-lksVIe4_.js.map +0 -1
  193. package/dist/customer-CgN4zI00.js +0 -42
  194. package/dist/customer-ClewjBBr.js +0 -38
  195. package/dist/customer-ClewjBBr.js.map +0 -1
  196. package/dist/customer-DIJz6m7L.js +0 -16
  197. package/dist/data-types-CTPJXmJH.js +0 -10
  198. package/dist/data-types-CTPJXmJH.js.map +0 -1
  199. package/dist/delete-button-Bnm5bof2.js +0 -28
  200. package/dist/delete-button-Bnm5bof2.js.map +0 -1
  201. package/dist/footer-BvNV-R9D.js +0 -16
  202. package/dist/footer-BvNV-R9D.js.map +0 -1
  203. package/dist/footer-DCtgtjKS.js +0 -76
  204. package/dist/footer-DCtgtjKS.js.map +0 -1
  205. package/dist/get-percentage-diff-B_UVOFgE.js +0 -8
  206. package/dist/get-percentage-diff-B_UVOFgE.js.map +0 -1
  207. package/dist/get-product-price-DKWc76ev.js +0 -47
  208. package/dist/get-product-price-DKWc76ev.js.map +0 -1
  209. package/dist/graphql-CdTGi4Pp.d.ts +0 -1368
  210. package/dist/graphql-CdTGi4Pp.d.ts.map +0 -1
  211. package/dist/layout-country-select-C7Ra-opl.js +0 -90
  212. package/dist/layout-country-select-C7Ra-opl.js.map +0 -1
  213. package/dist/line-item-options-l_eRZIIq.js +0 -16
  214. package/dist/line-item-options-l_eRZIIq.js.map +0 -1
  215. package/dist/line-item-price-BlTwskFC.js +0 -47
  216. package/dist/line-item-price-BlTwskFC.js.map +0 -1
  217. package/dist/localized-client-link-CthmRcvb.js +0 -22
  218. package/dist/localized-client-link-CthmRcvb.js.map +0 -1
  219. package/dist/medusa-TumrpCF2.js +0 -12
  220. package/dist/medusa-TumrpCF2.js.map +0 -1
  221. package/dist/medusa-error-DDhA6RGC.js +0 -17
  222. package/dist/medusa-error-DDhA6RGC.js.map +0 -1
  223. package/dist/modal-BASYY-YM.js +0 -102
  224. package/dist/modal-BASYY-YM.js.map +0 -1
  225. package/dist/modal-context-02cA-7jy.js +0 -20
  226. package/dist/modal-context-02cA-7jy.js.map +0 -1
  227. package/dist/money-DVQGzXns.js +0 -15
  228. package/dist/money-DVQGzXns.js.map +0 -1
  229. package/dist/normalize-functions-Bqr-JkYn.js +0 -70
  230. package/dist/normalize-functions-Bqr-JkYn.js.map +0 -1
  231. package/dist/portable-text-CuI022GH.js +0 -330
  232. package/dist/portable-text-CuI022GH.js.map +0 -1
  233. package/dist/preview-price-_4sxkXQs.js +0 -20
  234. package/dist/preview-price-_4sxkXQs.js.map +0 -1
  235. package/dist/prices-eO1YBciD.d.ts +0 -20
  236. package/dist/prices-eO1YBciD.d.ts.map +0 -1
  237. package/dist/product-C3HQUIgX.js +0 -47
  238. package/dist/product-COu5D1mS.js +0 -90
  239. package/dist/regions-r1AvxfT8.js +0 -34
  240. package/dist/regions-r1AvxfT8.js.map +0 -1
  241. package/dist/search-D7Gw7jAk.js +0 -21
  242. package/dist/search-D7Gw7jAk.js.map +0 -1
  243. package/dist/search-modal-DaXadYWM.js +0 -137
  244. package/dist/search-modal-DaXadYWM.js.map +0 -1
  245. package/dist/side-menu-B6IjTd5M.js +0 -97
  246. package/dist/side-menu-B6IjTd5M.js.map +0 -1
  247. package/dist/thumbnail-C0TU3rh-.js +0 -44
  248. package/dist/thumbnail-C0TU3rh-.js.map +0 -1
  249. package/dist/use-apollo-BxAFd1Y5.js +0 -11
  250. package/dist/use-apollo-BxAFd1Y5.js.map +0 -1
  251. package/dist/use-search-VX-u8o1D.js +0 -67
  252. package/dist/use-search-VX-u8o1D.js.map +0 -1
  253. package/dist/use-toggle-state-DI4Gwlfj.d.ts +0 -23
  254. package/dist/use-toggle-state-DI4Gwlfj.d.ts.map +0 -1
@@ -1,2 +1,23 @@
1
- import { n as useToggleState, t as StateType } from "../../use-toggle-state-DI4Gwlfj.js";
2
- export { StateType, useToggleState as default };
1
+ //#region src/lib/hooks/use-toggle-state.d.ts
2
+ type StateType = [boolean, () => void, () => void, () => void] & {
3
+ state: boolean;
4
+ open: () => void;
5
+ close: () => void;
6
+ toggle: () => void;
7
+ };
8
+ /**
9
+ *
10
+ * @param initialState - boolean
11
+ * @returns An array like object with `state`, `open`, `close`, and `toggle` properties
12
+ * to allow both object and array destructuring
13
+ *
14
+ * ```
15
+ * const [showModal, openModal, closeModal, toggleModal] = useToggleState()
16
+ * // or
17
+ * const { state, open, close, toggle } = useToggleState()
18
+ * ```
19
+ */
20
+ declare const useToggleState: (initialState?: boolean) => StateType;
21
+ //#endregion
22
+ export { StateType, useToggleState as default };
23
+ //# sourceMappingURL=use-toggle-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-toggle-state.d.ts","names":[],"sources":["../../../src/lib/hooks/use-toggle-state.tsx"],"sourcesContent":[],"mappings":";KAEY,SAAA;EAAA,KAAA,EAAA,OAAS;EAoBf,IAAA,EAAA,GAAA,GAAA,IAAA;;;;;;;;;;;;;;;;cAAA,4CAAsC"}
@@ -1,3 +1,10 @@
1
- import { n as isEmpty, r as isObject, t as isArray } from "../../data-types-CTPJXmJH.js";
1
+ //#region src/lib/utils/data-types.ts
2
+ const isObject = (input) => input instanceof Object;
3
+ const isArray = (input) => Array.isArray(input);
4
+ const isEmpty = (input) => {
5
+ return input === null || input === void 0 || isObject(input) && Object.keys(input).length === 0 || isArray(input) && input.length === 0 || typeof input === "string" && input.trim().length === 0;
6
+ };
2
7
 
3
- export { isArray, isEmpty, isObject };
8
+ //#endregion
9
+ export { isArray, isEmpty, isObject };
10
+ //# sourceMappingURL=data-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-types.js","names":[],"sources":["../../../src/lib/utils/data-types.ts"],"sourcesContent":["export const isObject = (input: any) => input instanceof Object;\nexport const isArray = (input: any) => Array.isArray(input);\nexport const isEmpty = (input: any) => {\n return (\n input === null ||\n input === undefined ||\n (isObject(input) && Object.keys(input).length === 0) ||\n (isArray(input) && (input as any[]).length === 0) ||\n (typeof input === 'string' && input.trim().length === 0)\n );\n};\n"],"mappings":";AAAA,MAAa,YAAY,UAAe,iBAAiB;AACzD,MAAa,WAAW,UAAe,MAAM,QAAQ,MAAM;AAC3D,MAAa,WAAW,UAAe;AACrC,QACE,UAAU,QACV,UAAU,UACT,SAAS,MAAM,IAAI,OAAO,KAAK,MAAM,CAAC,WAAW,KACjD,QAAQ,MAAM,IAAK,MAAgB,WAAW,KAC9C,OAAO,UAAU,YAAY,MAAM,MAAM,CAAC,WAAW"}
@@ -1,6 +1,6 @@
1
1
  //#region src/lib/utils/env.ts
2
2
  const getBaseURL = () => {
3
- return process.env.NEXT_PUBLIC_BASE_URL || "https://localhost:8000";
3
+ return process.env.RENDER_EXTERNAL_URL || process.env.NEXT_PUBLIC_BASE_URL || "https://localhost:8000";
4
4
  };
5
5
 
6
6
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","names":[],"sources":["../../../src/lib/utils/env.ts"],"sourcesContent":["export const getBaseURL = () => {\n return process.env.NEXT_PUBLIC_BASE_URL || 'https://localhost:8000';\n};\n"],"mappings":";AAAA,MAAa,mBAAmB;AAC9B,QAAO,QAAQ,IAAI,wBAAwB"}
1
+ {"version":3,"file":"env.js","names":[],"sources":["../../../src/lib/utils/env.ts"],"sourcesContent":["export const getBaseURL = () => {\n return (\n process.env.RENDER_EXTERNAL_URL ||\n process.env.NEXT_PUBLIC_BASE_URL ||\n 'https://localhost:8000'\n );\n};\n"],"mappings":";AAAA,MAAa,mBAAmB;AAC9B,QACE,QAAQ,IAAI,uBACZ,QAAQ,IAAI,wBACZ"}
@@ -1,3 +1,8 @@
1
- import { t as getPercentageDiff } from "../../get-percentage-diff-B_UVOFgE.js";
1
+ //#region src/lib/utils/get-percentage-diff.ts
2
+ const getPercentageDiff = (original, calculated) => {
3
+ return ((original - calculated) / original * 100).toFixed();
4
+ };
2
5
 
3
- export { getPercentageDiff };
6
+ //#endregion
7
+ export { getPercentageDiff };
8
+ //# sourceMappingURL=get-percentage-diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-percentage-diff.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,4 +1,4 @@
1
- import { gn as Product } from "../../graphql-CdTGi4Pp.js";
1
+ import { Product } from "../../types/graphql.js";
2
2
 
3
3
  //#region src/lib/utils/get-product-price.d.ts
4
4
  declare const getPricesForVariant: (variant: any) => {
@@ -1,3 +1,47 @@
1
- import { n as getProductPrice, t as getPricesForVariant } from "../../get-product-price-DKWc76ev.js";
1
+ import { convertToLocale } from "./money.js";
2
+ import { getPercentageDiff } from "./get-percentage-diff.js";
2
3
 
3
- export { getPricesForVariant, getProductPrice };
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 { getPricesForVariant, getProductPrice };
47
+ //# sourceMappingURL=get-product-price.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-product-price.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"}
@@ -1,3 +1,17 @@
1
- import { t as medusaError } from "../../medusa-error-DDhA6RGC.js";
1
+ //#region src/lib/utils/medusa-error.ts
2
+ function medusaError(error) {
3
+ if (error.response) {
4
+ const u = new URL(error.config.url, error.config.baseURL);
5
+ console.error("Resource:", u.toString());
6
+ console.error("Response data:", error.response.data);
7
+ console.error("Status code:", error.response.status);
8
+ console.error("Headers:", error.response.headers);
9
+ const message = error.response.data.message || error.response.data;
10
+ throw new Error(message.charAt(0).toUpperCase() + message.slice(1) + ".");
11
+ } else if (error.request) throw new Error("No response received: " + error.request);
12
+ else throw new Error("Error setting up the request: " + error.message);
13
+ }
2
14
 
3
- export { medusaError };
15
+ //#endregion
16
+ export { medusaError };
17
+ //# sourceMappingURL=medusa-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"medusa-error.js","names":[],"sources":["../../../src/lib/utils/medusa-error.ts"],"sourcesContent":["export function medusaError(error: any): never {\n if (error.response) {\n // The request was made and the server responded with a status code\n // that falls out of the range of 2xx\n const u = new URL(error.config.url, error.config.baseURL);\n console.error('Resource:', u.toString());\n console.error('Response data:', error.response.data);\n console.error('Status code:', error.response.status);\n console.error('Headers:', error.response.headers);\n\n // Extracting the error message from the response data\n const message = error.response.data.message || error.response.data;\n\n throw new Error(message.charAt(0).toUpperCase() + message.slice(1) + '.');\n } else if (error.request) {\n // The request was made but no response was received\n throw new Error('No response received: ' + error.request);\n } else {\n // Something happened in setting up the request that triggered an Error\n throw new Error('Error setting up the request: ' + error.message);\n }\n}\n"],"mappings":";AAAA,SAAgB,YAAY,OAAmB;AAC7C,KAAI,MAAM,UAAU;EAGlB,MAAM,IAAI,IAAI,IAAI,MAAM,OAAO,KAAK,MAAM,OAAO,QAAQ;AACzD,UAAQ,MAAM,aAAa,EAAE,UAAU,CAAC;AACxC,UAAQ,MAAM,kBAAkB,MAAM,SAAS,KAAK;AACpD,UAAQ,MAAM,gBAAgB,MAAM,SAAS,OAAO;AACpD,UAAQ,MAAM,YAAY,MAAM,SAAS,QAAQ;EAGjD,MAAM,UAAU,MAAM,SAAS,KAAK,WAAW,MAAM,SAAS;AAE9D,QAAM,IAAI,MAAM,QAAQ,OAAO,EAAE,CAAC,aAAa,GAAG,QAAQ,MAAM,EAAE,GAAG,IAAI;YAChE,MAAM,QAEf,OAAM,IAAI,MAAM,2BAA2B,MAAM,QAAQ;KAGzD,OAAM,IAAI,MAAM,mCAAmC,MAAM,QAAQ"}
@@ -1,3 +1,15 @@
1
- import { t as convertToLocale } from "../../money-DVQGzXns.js";
1
+ import { isEmpty } from "./data-types.js";
2
2
 
3
- export { convertToLocale };
3
+ //#region src/lib/utils/money.ts
4
+ const convertToLocale = ({ amount = 0, currency_code, minimumFractionDigits, maximumFractionDigits, locale = "en-US" }) => {
5
+ return currency_code && !isEmpty(currency_code) ? new Intl.NumberFormat(locale, {
6
+ style: "currency",
7
+ currency: currency_code,
8
+ minimumFractionDigits,
9
+ maximumFractionDigits
10
+ }).format(amount) : amount.toString();
11
+ };
12
+
13
+ //#endregion
14
+ export { convertToLocale };
15
+ //# sourceMappingURL=money.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"money.js","names":[],"sources":["../../../src/lib/utils/money.ts"],"sourcesContent":["import { isEmpty } from './data-types';\n\ntype ConvertToLocaleParams = {\n amount?: number;\n currency_code: string;\n minimumFractionDigits?: number;\n maximumFractionDigits?: number;\n locale?: string;\n};\n\nexport const convertToLocale = ({\n amount = 0,\n currency_code,\n minimumFractionDigits,\n maximumFractionDigits,\n locale = 'en-US',\n}: ConvertToLocaleParams) => {\n return currency_code && !isEmpty(currency_code)\n ? new Intl.NumberFormat(locale, {\n style: 'currency',\n currency: currency_code,\n minimumFractionDigits,\n maximumFractionDigits,\n }).format(amount)\n : amount.toString();\n};\n"],"mappings":";;;AAUA,MAAa,mBAAmB,EAC9B,SAAS,GACT,eACA,uBACA,uBACA,SAAS,cACkB;AAC3B,QAAO,iBAAiB,CAAC,QAAQ,cAAc,GAC3C,IAAI,KAAK,aAAa,QAAQ;EAC5B,OAAO;EACP,UAAU;EACV;EACA;EACD,CAAC,CAAC,OAAO,OAAO,GACjB,OAAO,UAAU"}
@@ -1,4 +1,4 @@
1
- import { in as Order, tr as Region } from "../../graphql-CdTGi4Pp.js";
1
+ import { Order, Region } from "../../types/graphql.js";
2
2
  import { HttpTypes } from "@medusajs/types";
3
3
 
4
4
  //#region src/lib/utils/normalize-functions.d.ts
@@ -1,3 +1,70 @@
1
- import { n as normalizeRegion, t as normalizeOrder } from "../../normalize-functions-Bqr-JkYn.js";
1
+ //#region src/lib/utils/normalize-functions.ts
2
+ const toISO = (d) => d instanceof Date ? d.toISOString() : d ?? "";
3
+ function normalizeLineItems(items = [], cartId) {
4
+ return items.map((item) => ({
5
+ id: item.id,
6
+ title: item.title ?? "",
7
+ quantity: item.quantity ?? 0,
8
+ requiresShipping: item.requires_shipping ?? false,
9
+ unitPrice: item.unit_price ?? 0,
10
+ total: item.total ?? 0,
11
+ originalTotal: item.original_total ?? 0,
12
+ cartId: item.cart_id ?? cartId ?? "",
13
+ thumbnail: item.thumbnail ?? "",
14
+ productHandle: item.variant?.product?.handle ?? "",
15
+ productTitle: item.variant?.product?.title ?? "",
16
+ createdAt: item.created_at ?? null,
17
+ variant: item.variant ?? null
18
+ }));
19
+ }
20
+ const normalizeRegion = (region) => ({
21
+ id: region.id,
22
+ name: region.name,
23
+ currencyCode: region.currency_code,
24
+ countries: region.countries?.map((c) => ({
25
+ iso2: c.iso_2,
26
+ name: c.name
27
+ })) ?? [],
28
+ createdAt: region.created_at
29
+ });
30
+ function normalizeOrder(order) {
31
+ return {
32
+ id: order.id,
33
+ displayId: order.display_id,
34
+ email: order.email ?? "",
35
+ customerId: order.customer_id ?? "",
36
+ regionId: order.region_id ?? "",
37
+ paymentStatus: order.payment_status ?? "",
38
+ fulfillmentStatus: order.fulfillment_status ?? "",
39
+ total: order.total ?? 0,
40
+ subtotal: order.subtotal ?? 0,
41
+ discountTotal: order.discount_total ?? 0,
42
+ giftCardTotal: order.gift_card_total ?? 0,
43
+ taxTotal: order.tax_total ?? 0,
44
+ shippingTotal: order.shipping_total ?? 0,
45
+ currencyCode: order.currency_code ?? "usd",
46
+ status: order.status ?? "",
47
+ createdAt: toISO(order.created_at),
48
+ items: normalizeLineItems(order?.items ?? []),
49
+ shippingMethods: (order.shipping_methods ?? []).map((sm) => ({
50
+ id: sm.id ?? "",
51
+ name: sm.name ?? "",
52
+ amount: sm.amount ?? 0,
53
+ createdAt: toISO(sm.created_at),
54
+ shippingOptionId: sm.shipping_option_id
55
+ })),
56
+ shippingAddress: order.shipping_address ? {
57
+ firstName: order.shipping_address.first_name,
58
+ lastName: order.shipping_address.last_name,
59
+ address1: order.shipping_address.address_1,
60
+ address2: order.shipping_address.address_2,
61
+ city: order.shipping_address.city,
62
+ postalCode: order.shipping_address.postal_code,
63
+ phone: order.shipping_address.phone
64
+ } : null
65
+ };
66
+ }
2
67
 
3
- export { normalizeOrder, normalizeRegion };
68
+ //#endregion
69
+ export { normalizeOrder, normalizeRegion };
70
+ //# sourceMappingURL=normalize-functions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize-functions.js","names":[],"sources":["../../../src/lib/utils/normalize-functions.ts"],"sourcesContent":["// TODO: To be removed once Order and Region resolvers are implemented, the normalizers will then be used within the resolvers themselves\nimport { HttpTypes } from '@medusajs/types';\n\nimport { Order, Region } from '@/types/graphql';\n\nconst toISO = (d: string | Date | undefined) =>\n d instanceof Date ? d.toISOString() : (d ?? '');\n\nfunction normalizeLineItems(items: any[] = [], cartId?: string) {\n return items.map((item) => ({\n id: item.id,\n title: item.title ?? '',\n quantity: item.quantity ?? 0,\n requiresShipping: item.requires_shipping ?? false,\n unitPrice: item.unit_price ?? 0,\n total: item.total ?? 0,\n originalTotal: item.original_total ?? 0,\n cartId: item.cart_id ?? cartId ?? '',\n thumbnail: item.thumbnail ?? '',\n productHandle: item.variant?.product?.handle ?? '',\n productTitle: item.variant?.product?.title ?? '',\n createdAt: item.created_at ?? null,\n variant: item.variant ?? null,\n }));\n}\n\nexport const normalizeRegion = (region: HttpTypes.StoreRegion): Region => ({\n id: region.id,\n name: region.name,\n currencyCode: region.currency_code,\n countries:\n region.countries?.map((c) => ({\n iso2: c.iso_2,\n name: c.name,\n })) ?? [],\n createdAt: region.created_at,\n});\n\nexport function normalizeOrder(order: HttpTypes.StoreOrder): Order {\n return {\n id: order.id,\n displayId: order.display_id,\n email: order.email ?? '',\n customerId: order.customer_id ?? '',\n regionId: order.region_id ?? '',\n paymentStatus: order.payment_status ?? '',\n fulfillmentStatus: order.fulfillment_status ?? '',\n total: order.total ?? 0,\n subtotal: order.subtotal ?? 0,\n discountTotal: order.discount_total ?? 0,\n giftCardTotal: order.gift_card_total ?? 0,\n taxTotal: order.tax_total ?? 0,\n shippingTotal: order.shipping_total ?? 0,\n currencyCode: order.currency_code ?? 'usd',\n status: order.status ?? '',\n createdAt: toISO(order.created_at),\n items: normalizeLineItems(order?.items ?? []),\n shippingMethods: (order.shipping_methods ?? []).map((sm) => ({\n id: sm.id ?? '',\n name: sm.name ?? '',\n amount: sm.amount ?? 0,\n createdAt: toISO(sm.created_at),\n shippingOptionId: sm.shipping_option_id,\n })),\n shippingAddress: order.shipping_address\n ? {\n firstName: order.shipping_address.first_name,\n lastName: order.shipping_address.last_name,\n address1: order.shipping_address.address_1,\n address2: order.shipping_address.address_2,\n city: order.shipping_address.city,\n postalCode: order.shipping_address.postal_code,\n phone: order.shipping_address.phone,\n }\n : null,\n };\n}\n"],"mappings":";AAKA,MAAM,SAAS,MACb,aAAa,OAAO,EAAE,aAAa,GAAI,KAAK;AAE9C,SAAS,mBAAmB,QAAe,EAAE,EAAE,QAAiB;AAC9D,QAAO,MAAM,KAAK,UAAU;EAC1B,IAAI,KAAK;EACT,OAAO,KAAK,SAAS;EACrB,UAAU,KAAK,YAAY;EAC3B,kBAAkB,KAAK,qBAAqB;EAC5C,WAAW,KAAK,cAAc;EAC9B,OAAO,KAAK,SAAS;EACrB,eAAe,KAAK,kBAAkB;EACtC,QAAQ,KAAK,WAAW,UAAU;EAClC,WAAW,KAAK,aAAa;EAC7B,eAAe,KAAK,SAAS,SAAS,UAAU;EAChD,cAAc,KAAK,SAAS,SAAS,SAAS;EAC9C,WAAW,KAAK,cAAc;EAC9B,SAAS,KAAK,WAAW;EAC1B,EAAE;;AAGL,MAAa,mBAAmB,YAA2C;CACzE,IAAI,OAAO;CACX,MAAM,OAAO;CACb,cAAc,OAAO;CACrB,WACE,OAAO,WAAW,KAAK,OAAO;EAC5B,MAAM,EAAE;EACR,MAAM,EAAE;EACT,EAAE,IAAI,EAAE;CACX,WAAW,OAAO;CACnB;AAED,SAAgB,eAAe,OAAoC;AACjE,QAAO;EACL,IAAI,MAAM;EACV,WAAW,MAAM;EACjB,OAAO,MAAM,SAAS;EACtB,YAAY,MAAM,eAAe;EACjC,UAAU,MAAM,aAAa;EAC7B,eAAe,MAAM,kBAAkB;EACvC,mBAAmB,MAAM,sBAAsB;EAC/C,OAAO,MAAM,SAAS;EACtB,UAAU,MAAM,YAAY;EAC5B,eAAe,MAAM,kBAAkB;EACvC,eAAe,MAAM,mBAAmB;EACxC,UAAU,MAAM,aAAa;EAC7B,eAAe,MAAM,kBAAkB;EACvC,cAAc,MAAM,iBAAiB;EACrC,QAAQ,MAAM,UAAU;EACxB,WAAW,MAAM,MAAM,WAAW;EAClC,OAAO,mBAAmB,OAAO,SAAS,EAAE,CAAC;EAC7C,kBAAkB,MAAM,oBAAoB,EAAE,EAAE,KAAK,QAAQ;GAC3D,IAAI,GAAG,MAAM;GACb,MAAM,GAAG,QAAQ;GACjB,QAAQ,GAAG,UAAU;GACrB,WAAW,MAAM,GAAG,WAAW;GAC/B,kBAAkB,GAAG;GACtB,EAAE;EACH,iBAAiB,MAAM,mBACnB;GACE,WAAW,MAAM,iBAAiB;GAClC,UAAU,MAAM,iBAAiB;GACjC,UAAU,MAAM,iBAAiB;GACjC,UAAU,MAAM,iBAAiB;GACjC,MAAM,MAAM,iBAAiB;GAC7B,YAAY,MAAM,iBAAiB;GACnC,OAAO,MAAM,iBAAiB;GAC/B,GACD;EACL"}