@shopify/hydrogen-react 0.0.0-next-72f8a5c → 0.0.0-next-ea37299

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 (349) hide show
  1. package/dist/dev/CartProvider.js +35 -35
  2. package/dist/dev/CartProvider.js.map +1 -1
  3. package/dist/dev/{CartProvider.cjs → CartProvider.mjs} +36 -36
  4. package/dist/dev/{CartProvider.cjs.map → CartProvider.mjs.map} +1 -1
  5. package/dist/dev/ExternalVideo.js +5 -5
  6. package/dist/dev/ExternalVideo.js.map +1 -1
  7. package/dist/dev/{ExternalVideo.cjs → ExternalVideo.mjs} +6 -6
  8. package/dist/{prod/ExternalVideo.cjs.map → dev/ExternalVideo.mjs.map} +1 -1
  9. package/dist/dev/Image.js +12 -12
  10. package/dist/dev/Image.js.map +1 -1
  11. package/dist/dev/{Image.cjs → Image.mjs} +13 -13
  12. package/dist/dev/{Image.cjs.map → Image.mjs.map} +1 -1
  13. package/dist/dev/MediaFile.js +12 -12
  14. package/dist/dev/MediaFile.js.map +1 -1
  15. package/dist/dev/{MediaFile.cjs → MediaFile.mjs} +13 -13
  16. package/dist/dev/{MediaFile.cjs.map → MediaFile.mjs.map} +1 -1
  17. package/dist/dev/Metafield.js +32 -32
  18. package/dist/dev/Metafield.js.map +1 -1
  19. package/dist/dev/{Metafield.cjs → Metafield.mjs} +33 -33
  20. package/dist/dev/{Metafield.cjs.map → Metafield.mjs.map} +1 -1
  21. package/dist/dev/ModelViewer.js +11 -11
  22. package/dist/dev/ModelViewer.js.map +1 -1
  23. package/dist/dev/{ModelViewer.cjs → ModelViewer.mjs} +12 -12
  24. package/dist/dev/{ModelViewer.cjs.map → ModelViewer.mjs.map} +1 -1
  25. package/dist/dev/Money.js +8 -8
  26. package/dist/dev/Money.js.map +1 -1
  27. package/dist/{prod/Money.cjs → dev/Money.mjs} +9 -9
  28. package/dist/dev/{Money.cjs.map → Money.mjs.map} +1 -1
  29. package/dist/dev/ProductPrice.js +9 -9
  30. package/dist/dev/ProductPrice.js.map +1 -1
  31. package/dist/{prod/ProductPrice.cjs → dev/ProductPrice.mjs} +10 -10
  32. package/dist/dev/{ProductPrice.cjs.map → ProductPrice.mjs.map} +1 -1
  33. package/dist/dev/ProductProvider.js +25 -25
  34. package/dist/dev/ProductProvider.js.map +1 -1
  35. package/dist/{prod/ProductProvider.cjs → dev/ProductProvider.mjs} +26 -26
  36. package/dist/dev/{ProductProvider.cjs.map → ProductProvider.mjs.map} +1 -1
  37. package/dist/dev/ShopPayButton.js +13 -13
  38. package/dist/dev/ShopPayButton.js.map +1 -1
  39. package/dist/{prod/ShopPayButton.cjs → dev/ShopPayButton.mjs} +14 -14
  40. package/dist/{prod/ShopPayButton.cjs.map → dev/ShopPayButton.mjs.map} +1 -1
  41. package/dist/dev/ShopifyProvider.js +14 -14
  42. package/dist/dev/ShopifyProvider.js.map +1 -1
  43. package/dist/dev/ShopifyProvider.mjs +46 -0
  44. package/dist/dev/{ShopifyProvider.cjs.map → ShopifyProvider.mjs.map} +1 -1
  45. package/dist/dev/Video.js +9 -9
  46. package/dist/dev/Video.js.map +1 -1
  47. package/dist/dev/{Video.cjs → Video.mjs} +10 -10
  48. package/dist/dev/{Video.cjs.map → Video.mjs.map} +1 -1
  49. package/dist/dev/_virtual/index.js +5 -0
  50. package/dist/dev/_virtual/index.js.map +1 -0
  51. package/dist/dev/_virtual/index.mjs +5 -0
  52. package/dist/dev/_virtual/index.mjs.map +1 -0
  53. package/dist/dev/_virtual/use-sync-external-store-shim.development.js +5 -0
  54. package/dist/dev/_virtual/use-sync-external-store-shim.development.js.map +1 -0
  55. package/dist/dev/_virtual/use-sync-external-store-shim.development.mjs +5 -0
  56. package/dist/dev/_virtual/use-sync-external-store-shim.development.mjs.map +1 -0
  57. package/dist/dev/_virtual/use-sync-external-store-shim.production.min.js +5 -0
  58. package/dist/dev/_virtual/use-sync-external-store-shim.production.min.js.map +1 -0
  59. package/dist/dev/_virtual/use-sync-external-store-shim.production.min.mjs +5 -0
  60. package/dist/dev/_virtual/use-sync-external-store-shim.production.min.mjs.map +1 -0
  61. package/dist/dev/_virtual/with-selector.development.js +5 -0
  62. package/dist/dev/_virtual/with-selector.development.js.map +1 -0
  63. package/dist/dev/_virtual/with-selector.development.mjs +5 -0
  64. package/dist/dev/_virtual/with-selector.development.mjs.map +1 -0
  65. package/dist/dev/_virtual/with-selector.js +5 -0
  66. package/dist/dev/_virtual/with-selector.js.map +1 -0
  67. package/dist/dev/_virtual/with-selector.mjs +5 -0
  68. package/dist/dev/_virtual/with-selector.mjs.map +1 -0
  69. package/dist/dev/_virtual/with-selector.production.min.js +5 -0
  70. package/dist/dev/_virtual/with-selector.production.min.js.map +1 -0
  71. package/dist/dev/_virtual/with-selector.production.min.mjs +5 -0
  72. package/dist/dev/_virtual/with-selector.production.min.mjs.map +1 -0
  73. package/dist/dev/cart-constants.js +9 -9
  74. package/dist/dev/cart-constants.js.map +1 -1
  75. package/dist/dev/cart-constants.mjs +17 -0
  76. package/dist/dev/{cart-constants.cjs.map → cart-constants.mjs.map} +1 -1
  77. package/dist/dev/cart-hooks.js +15 -15
  78. package/dist/dev/cart-hooks.js.map +1 -1
  79. package/dist/dev/cart-hooks.mjs +48 -0
  80. package/dist/dev/{cart-hooks.cjs.map → cart-hooks.mjs.map} +1 -1
  81. package/dist/dev/cart-queries.js +11 -11
  82. package/dist/dev/cart-queries.js.map +1 -1
  83. package/dist/{prod/cart-queries.cjs → dev/cart-queries.mjs} +12 -12
  84. package/dist/dev/{cart-queries.cjs.map → cart-queries.mjs.map} +1 -1
  85. package/dist/dev/flatten-connection.js +3 -3
  86. package/dist/dev/flatten-connection.js.map +1 -1
  87. package/dist/dev/{flatten-connection.cjs → flatten-connection.mjs} +4 -4
  88. package/dist/dev/{flatten-connection.cjs.map → flatten-connection.mjs.map} +1 -1
  89. package/dist/dev/image-size.js +6 -6
  90. package/dist/dev/image-size.js.map +1 -1
  91. package/dist/dev/{image-size.cjs → image-size.mjs} +7 -7
  92. package/dist/dev/{image-size.cjs.map → image-size.mjs.map} +1 -1
  93. package/dist/dev/index.js +37 -37
  94. package/dist/dev/index.js.map +1 -1
  95. package/dist/dev/index.mjs +38 -0
  96. package/dist/dev/index.mjs.map +1 -0
  97. package/dist/dev/load-script.js +7 -7
  98. package/dist/dev/load-script.js.map +1 -1
  99. package/dist/{prod/load-script.cjs → dev/load-script.mjs} +8 -8
  100. package/dist/dev/{load-script.cjs.map → load-script.mjs.map} +1 -1
  101. package/dist/dev/node_modules/@xstate/fsm/es/index.js +158 -0
  102. package/dist/dev/node_modules/@xstate/fsm/es/index.js.map +1 -0
  103. package/dist/dev/node_modules/@xstate/fsm/es/index.mjs +159 -0
  104. package/dist/dev/node_modules/@xstate/fsm/es/index.mjs.map +1 -0
  105. package/dist/dev/node_modules/@xstate/react/es/fsm.js +94 -0
  106. package/dist/dev/node_modules/@xstate/react/es/fsm.js.map +1 -0
  107. package/dist/dev/node_modules/@xstate/react/es/fsm.mjs +94 -0
  108. package/dist/dev/node_modules/@xstate/react/es/fsm.mjs.map +1 -0
  109. package/dist/dev/node_modules/@xstate/react/es/useConstant.js +30 -0
  110. package/dist/dev/node_modules/@xstate/react/es/useConstant.js.map +1 -0
  111. package/dist/dev/node_modules/@xstate/react/es/useConstant.mjs +12 -0
  112. package/dist/dev/node_modules/@xstate/react/es/useConstant.mjs.map +1 -0
  113. package/dist/dev/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js +5 -0
  114. package/dist/dev/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js.map +1 -0
  115. package/dist/dev/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.mjs +6 -0
  116. package/dist/dev/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.mjs.map +1 -0
  117. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +107 -0
  118. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +1 -0
  119. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs +105 -0
  120. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs.map +1 -0
  121. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js +74 -0
  122. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js.map +1 -0
  123. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs +72 -0
  124. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs.map +1 -0
  125. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +138 -0
  126. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +1 -0
  127. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs +136 -0
  128. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs.map +1 -0
  129. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js +60 -0
  130. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js.map +1 -0
  131. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs +58 -0
  132. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs.map +1 -0
  133. package/dist/dev/node_modules/use-sync-external-store/shim/index.js +21 -0
  134. package/dist/dev/node_modules/use-sync-external-store/shim/index.js.map +1 -0
  135. package/dist/dev/node_modules/use-sync-external-store/shim/index.mjs +21 -0
  136. package/dist/dev/node_modules/use-sync-external-store/shim/index.mjs.map +1 -0
  137. package/dist/dev/node_modules/use-sync-external-store/shim/with-selector.js +12 -0
  138. package/dist/dev/node_modules/use-sync-external-store/shim/with-selector.js.map +1 -0
  139. package/dist/dev/node_modules/use-sync-external-store/shim/with-selector.mjs +11 -0
  140. package/dist/dev/node_modules/use-sync-external-store/shim/with-selector.mjs.map +1 -0
  141. package/dist/dev/node_modules/worktop/cookie/index.js +27 -0
  142. package/dist/dev/node_modules/worktop/cookie/index.js.map +1 -0
  143. package/dist/dev/node_modules/worktop/cookie/index.mjs +27 -0
  144. package/dist/dev/node_modules/worktop/cookie/index.mjs.map +1 -0
  145. package/dist/dev/storefront-api-constants.js +3 -3
  146. package/dist/dev/storefront-api-constants.js.map +1 -1
  147. package/dist/dev/storefront-api-constants.mjs +5 -0
  148. package/dist/dev/storefront-api-constants.mjs.map +1 -0
  149. package/dist/dev/storefront-client.js +6 -6
  150. package/dist/dev/storefront-client.js.map +1 -1
  151. package/dist/dev/{storefront-client.cjs → storefront-client.mjs} +7 -7
  152. package/dist/dev/storefront-client.mjs.map +1 -0
  153. package/dist/dev/useCartAPIStateMachine.js +20 -20
  154. package/dist/dev/useCartAPIStateMachine.js.map +1 -1
  155. package/dist/{prod/useCartAPIStateMachine.cjs → dev/useCartAPIStateMachine.mjs} +21 -21
  156. package/dist/{prod/useCartAPIStateMachine.cjs.map → dev/useCartAPIStateMachine.mjs.map} +1 -1
  157. package/dist/dev/useCartActions.js +26 -26
  158. package/dist/dev/useCartActions.js.map +1 -1
  159. package/dist/dev/{useCartActions.cjs → useCartActions.mjs} +27 -27
  160. package/dist/dev/{useCartActions.cjs.map → useCartActions.mjs.map} +1 -1
  161. package/dist/dev/useMoney.js +10 -10
  162. package/dist/dev/useMoney.js.map +1 -1
  163. package/dist/{prod/useMoney.cjs → dev/useMoney.mjs} +11 -11
  164. package/dist/{prod/useMoney.cjs.map → dev/useMoney.mjs.map} +1 -1
  165. package/dist/prod/CartProvider.js +35 -35
  166. package/dist/prod/CartProvider.js.map +1 -1
  167. package/dist/prod/{CartProvider.cjs → CartProvider.mjs} +36 -36
  168. package/dist/prod/{CartProvider.cjs.map → CartProvider.mjs.map} +1 -1
  169. package/dist/prod/ExternalVideo.js +5 -5
  170. package/dist/prod/ExternalVideo.js.map +1 -1
  171. package/dist/prod/{ExternalVideo.cjs → ExternalVideo.mjs} +6 -6
  172. package/dist/{dev/ExternalVideo.cjs.map → prod/ExternalVideo.mjs.map} +1 -1
  173. package/dist/prod/Image.js +12 -12
  174. package/dist/prod/Image.js.map +1 -1
  175. package/dist/prod/{Image.cjs → Image.mjs} +13 -13
  176. package/dist/prod/{Image.cjs.map → Image.mjs.map} +1 -1
  177. package/dist/prod/MediaFile.js +12 -12
  178. package/dist/prod/MediaFile.js.map +1 -1
  179. package/dist/prod/{MediaFile.cjs → MediaFile.mjs} +13 -13
  180. package/dist/prod/{MediaFile.cjs.map → MediaFile.mjs.map} +1 -1
  181. package/dist/prod/Metafield.js +32 -32
  182. package/dist/prod/Metafield.js.map +1 -1
  183. package/dist/prod/{Metafield.cjs → Metafield.mjs} +33 -33
  184. package/dist/prod/{Metafield.cjs.map → Metafield.mjs.map} +1 -1
  185. package/dist/prod/ModelViewer.js +11 -11
  186. package/dist/prod/ModelViewer.js.map +1 -1
  187. package/dist/prod/{ModelViewer.cjs → ModelViewer.mjs} +12 -12
  188. package/dist/prod/{ModelViewer.cjs.map → ModelViewer.mjs.map} +1 -1
  189. package/dist/prod/Money.js +8 -8
  190. package/dist/prod/Money.js.map +1 -1
  191. package/dist/{dev/Money.cjs → prod/Money.mjs} +9 -9
  192. package/dist/prod/{Money.cjs.map → Money.mjs.map} +1 -1
  193. package/dist/prod/ProductPrice.js +9 -9
  194. package/dist/prod/ProductPrice.js.map +1 -1
  195. package/dist/{dev/ProductPrice.cjs → prod/ProductPrice.mjs} +10 -10
  196. package/dist/prod/{ProductPrice.cjs.map → ProductPrice.mjs.map} +1 -1
  197. package/dist/prod/ProductProvider.js +25 -25
  198. package/dist/prod/ProductProvider.js.map +1 -1
  199. package/dist/{dev/ProductProvider.cjs → prod/ProductProvider.mjs} +26 -26
  200. package/dist/prod/{ProductProvider.cjs.map → ProductProvider.mjs.map} +1 -1
  201. package/dist/prod/ShopPayButton.js +13 -13
  202. package/dist/prod/ShopPayButton.js.map +1 -1
  203. package/dist/{dev/ShopPayButton.cjs → prod/ShopPayButton.mjs} +14 -14
  204. package/dist/{dev/ShopPayButton.cjs.map → prod/ShopPayButton.mjs.map} +1 -1
  205. package/dist/prod/ShopifyProvider.js +14 -14
  206. package/dist/prod/ShopifyProvider.js.map +1 -1
  207. package/dist/prod/ShopifyProvider.mjs +46 -0
  208. package/dist/prod/{ShopifyProvider.cjs.map → ShopifyProvider.mjs.map} +1 -1
  209. package/dist/prod/Video.js +9 -9
  210. package/dist/prod/Video.js.map +1 -1
  211. package/dist/prod/{Video.cjs → Video.mjs} +10 -10
  212. package/dist/prod/{Video.cjs.map → Video.mjs.map} +1 -1
  213. package/dist/prod/_virtual/index.js +5 -0
  214. package/dist/prod/_virtual/index.js.map +1 -0
  215. package/dist/prod/_virtual/index.mjs +5 -0
  216. package/dist/prod/_virtual/index.mjs.map +1 -0
  217. package/dist/prod/_virtual/use-sync-external-store-shim.development.js +5 -0
  218. package/dist/prod/_virtual/use-sync-external-store-shim.development.js.map +1 -0
  219. package/dist/prod/_virtual/use-sync-external-store-shim.development.mjs +5 -0
  220. package/dist/prod/_virtual/use-sync-external-store-shim.development.mjs.map +1 -0
  221. package/dist/prod/_virtual/use-sync-external-store-shim.production.min.js +5 -0
  222. package/dist/prod/_virtual/use-sync-external-store-shim.production.min.js.map +1 -0
  223. package/dist/prod/_virtual/use-sync-external-store-shim.production.min.mjs +5 -0
  224. package/dist/prod/_virtual/use-sync-external-store-shim.production.min.mjs.map +1 -0
  225. package/dist/prod/_virtual/with-selector.development.js +5 -0
  226. package/dist/prod/_virtual/with-selector.development.js.map +1 -0
  227. package/dist/prod/_virtual/with-selector.development.mjs +5 -0
  228. package/dist/prod/_virtual/with-selector.development.mjs.map +1 -0
  229. package/dist/prod/_virtual/with-selector.js +5 -0
  230. package/dist/prod/_virtual/with-selector.js.map +1 -0
  231. package/dist/prod/_virtual/with-selector.mjs +5 -0
  232. package/dist/prod/_virtual/with-selector.mjs.map +1 -0
  233. package/dist/prod/_virtual/with-selector.production.min.js +5 -0
  234. package/dist/prod/_virtual/with-selector.production.min.js.map +1 -0
  235. package/dist/prod/_virtual/with-selector.production.min.mjs +5 -0
  236. package/dist/prod/_virtual/with-selector.production.min.mjs.map +1 -0
  237. package/dist/prod/cart-constants.js +9 -9
  238. package/dist/prod/cart-constants.js.map +1 -1
  239. package/dist/prod/cart-constants.mjs +17 -0
  240. package/dist/prod/{cart-constants.cjs.map → cart-constants.mjs.map} +1 -1
  241. package/dist/prod/cart-hooks.js +15 -15
  242. package/dist/prod/cart-hooks.js.map +1 -1
  243. package/dist/prod/cart-hooks.mjs +48 -0
  244. package/dist/prod/{cart-hooks.cjs.map → cart-hooks.mjs.map} +1 -1
  245. package/dist/prod/cart-queries.js +11 -11
  246. package/dist/prod/cart-queries.js.map +1 -1
  247. package/dist/{dev/cart-queries.cjs → prod/cart-queries.mjs} +12 -12
  248. package/dist/prod/{cart-queries.cjs.map → cart-queries.mjs.map} +1 -1
  249. package/dist/prod/flatten-connection.js +3 -3
  250. package/dist/prod/flatten-connection.js.map +1 -1
  251. package/dist/prod/{flatten-connection.cjs → flatten-connection.mjs} +4 -4
  252. package/dist/prod/{flatten-connection.cjs.map → flatten-connection.mjs.map} +1 -1
  253. package/dist/prod/image-size.js +6 -6
  254. package/dist/prod/image-size.js.map +1 -1
  255. package/dist/prod/{image-size.cjs → image-size.mjs} +7 -7
  256. package/dist/prod/{image-size.cjs.map → image-size.mjs.map} +1 -1
  257. package/dist/prod/index.js +37 -37
  258. package/dist/prod/index.js.map +1 -1
  259. package/dist/prod/index.mjs +38 -0
  260. package/dist/prod/index.mjs.map +1 -0
  261. package/dist/prod/load-script.js +7 -7
  262. package/dist/prod/load-script.js.map +1 -1
  263. package/dist/{dev/load-script.cjs → prod/load-script.mjs} +8 -8
  264. package/dist/prod/{load-script.cjs.map → load-script.mjs.map} +1 -1
  265. package/dist/prod/node_modules/@xstate/fsm/es/index.js +158 -0
  266. package/dist/prod/node_modules/@xstate/fsm/es/index.js.map +1 -0
  267. package/dist/prod/node_modules/@xstate/fsm/es/index.mjs +159 -0
  268. package/dist/prod/node_modules/@xstate/fsm/es/index.mjs.map +1 -0
  269. package/dist/prod/node_modules/@xstate/react/es/fsm.js +94 -0
  270. package/dist/prod/node_modules/@xstate/react/es/fsm.js.map +1 -0
  271. package/dist/prod/node_modules/@xstate/react/es/fsm.mjs +94 -0
  272. package/dist/prod/node_modules/@xstate/react/es/fsm.mjs.map +1 -0
  273. package/dist/prod/node_modules/@xstate/react/es/useConstant.js +30 -0
  274. package/dist/prod/node_modules/@xstate/react/es/useConstant.js.map +1 -0
  275. package/dist/prod/node_modules/@xstate/react/es/useConstant.mjs +12 -0
  276. package/dist/prod/node_modules/@xstate/react/es/useConstant.mjs.map +1 -0
  277. package/dist/prod/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js +5 -0
  278. package/dist/prod/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js.map +1 -0
  279. package/dist/prod/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.mjs +6 -0
  280. package/dist/prod/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.mjs.map +1 -0
  281. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +107 -0
  282. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +1 -0
  283. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs +105 -0
  284. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs.map +1 -0
  285. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js +74 -0
  286. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js.map +1 -0
  287. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs +72 -0
  288. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs.map +1 -0
  289. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +138 -0
  290. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +1 -0
  291. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs +136 -0
  292. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs.map +1 -0
  293. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js +60 -0
  294. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js.map +1 -0
  295. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs +58 -0
  296. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs.map +1 -0
  297. package/dist/prod/node_modules/use-sync-external-store/shim/index.js +21 -0
  298. package/dist/prod/node_modules/use-sync-external-store/shim/index.js.map +1 -0
  299. package/dist/prod/node_modules/use-sync-external-store/shim/index.mjs +21 -0
  300. package/dist/prod/node_modules/use-sync-external-store/shim/index.mjs.map +1 -0
  301. package/dist/prod/node_modules/use-sync-external-store/shim/with-selector.js +12 -0
  302. package/dist/prod/node_modules/use-sync-external-store/shim/with-selector.js.map +1 -0
  303. package/dist/prod/node_modules/use-sync-external-store/shim/with-selector.mjs +11 -0
  304. package/dist/prod/node_modules/use-sync-external-store/shim/with-selector.mjs.map +1 -0
  305. package/dist/prod/node_modules/worktop/cookie/index.js +27 -0
  306. package/dist/prod/node_modules/worktop/cookie/index.js.map +1 -0
  307. package/dist/prod/node_modules/worktop/cookie/index.mjs +27 -0
  308. package/dist/prod/node_modules/worktop/cookie/index.mjs.map +1 -0
  309. package/dist/prod/storefront-api-constants.js +3 -3
  310. package/dist/prod/storefront-api-constants.js.map +1 -1
  311. package/dist/prod/storefront-api-constants.mjs +5 -0
  312. package/dist/prod/storefront-api-constants.mjs.map +1 -0
  313. package/dist/prod/storefront-client.js +6 -6
  314. package/dist/prod/storefront-client.js.map +1 -1
  315. package/dist/prod/{storefront-client.cjs → storefront-client.mjs} +7 -7
  316. package/dist/prod/storefront-client.mjs.map +1 -0
  317. package/dist/prod/useCartAPIStateMachine.js +20 -20
  318. package/dist/prod/useCartAPIStateMachine.js.map +1 -1
  319. package/dist/{dev/useCartAPIStateMachine.cjs → prod/useCartAPIStateMachine.mjs} +21 -21
  320. package/dist/{dev/useCartAPIStateMachine.cjs.map → prod/useCartAPIStateMachine.mjs.map} +1 -1
  321. package/dist/prod/useCartActions.js +26 -26
  322. package/dist/prod/useCartActions.js.map +1 -1
  323. package/dist/prod/{useCartActions.cjs → useCartActions.mjs} +27 -27
  324. package/dist/prod/{useCartActions.cjs.map → useCartActions.mjs.map} +1 -1
  325. package/dist/prod/useMoney.js +10 -10
  326. package/dist/prod/useMoney.js.map +1 -1
  327. package/dist/{dev/useMoney.cjs → prod/useMoney.mjs} +11 -11
  328. package/dist/{dev/useMoney.cjs.map → prod/useMoney.mjs.map} +1 -1
  329. package/dist/umd/hydrogen-react.dev.js +1 -1
  330. package/dist/umd/hydrogen-react.dev.js.map +1 -1
  331. package/dist/umd/hydrogen-react.prod.js +1 -1
  332. package/dist/umd/hydrogen-react.prod.js.map +1 -1
  333. package/package.json +14 -14
  334. package/dist/dev/ShopifyProvider.cjs +0 -46
  335. package/dist/dev/cart-constants.cjs +0 -17
  336. package/dist/dev/cart-hooks.cjs +0 -48
  337. package/dist/dev/index.cjs +0 -38
  338. package/dist/dev/index.cjs.map +0 -1
  339. package/dist/dev/storefront-api-constants.cjs +0 -5
  340. package/dist/dev/storefront-api-constants.cjs.map +0 -1
  341. package/dist/dev/storefront-client.cjs.map +0 -1
  342. package/dist/prod/ShopifyProvider.cjs +0 -46
  343. package/dist/prod/cart-constants.cjs +0 -17
  344. package/dist/prod/cart-hooks.cjs +0 -48
  345. package/dist/prod/index.cjs +0 -38
  346. package/dist/prod/index.cjs.map +0 -1
  347. package/dist/prod/storefront-api-constants.cjs +0 -5
  348. package/dist/prod/storefront-api-constants.cjs.map +0 -1
  349. package/dist/prod/storefront-client.cjs.map +0 -1
@@ -1,8 +1,6 @@
1
- "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const imageSize = require("./image-size.cjs");
4
- const react = require("react");
5
- const jsxRuntime = require("react/jsx-runtime");
1
+ import { shopifyImageLoader } from "./image-size.mjs";
2
+ import { createElement } from "react";
3
+ import { jsx } from "react/jsx-runtime";
6
4
  function Video(props) {
7
5
  var _a, _b;
8
6
  const {
@@ -14,14 +12,14 @@ function Video(props) {
14
12
  sourceProps = {},
15
13
  ...passthroughProps
16
14
  } = props;
17
- const posterUrl = imageSize.shopifyImageLoader({
15
+ const posterUrl = shopifyImageLoader({
18
16
  src: (_b = (_a = data.previewImage) == null ? void 0 : _a.url) != null ? _b : "",
19
17
  ...previewImageOptions
20
18
  });
21
19
  if (!data.sources) {
22
20
  throw new Error(`<Video/> requires a 'data.sources' array`);
23
21
  }
24
- return /* @__PURE__ */ jsxRuntime.jsx("video", {
22
+ return /* @__PURE__ */ jsx("video", {
25
23
  ...passthroughProps,
26
24
  id,
27
25
  playsInline,
@@ -31,7 +29,7 @@ function Video(props) {
31
29
  if (!((source == null ? void 0 : source.url) && (source == null ? void 0 : source.mimeType))) {
32
30
  throw new Error(`<Video/> needs 'source.url' and 'source.mimeType'`);
33
31
  }
34
- return /* @__PURE__ */ react.createElement("source", {
32
+ return /* @__PURE__ */ createElement("source", {
35
33
  ...sourceProps,
36
34
  key: source.url,
37
35
  src: source.url,
@@ -40,5 +38,7 @@ function Video(props) {
40
38
  })
41
39
  });
42
40
  }
43
- exports.Video = Video;
44
- //# sourceMappingURL=Video.cjs.map
41
+ export {
42
+ Video
43
+ };
44
+ //# sourceMappingURL=Video.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Video.cjs","sources":["../../src/Video.tsx"],"sourcesContent":["import {type HTMLAttributes} from 'react';\nimport {shopifyImageLoader} from './image-size.js';\nimport type {Video as VideoType} from './storefront-api-types.js';\nimport type {PartialDeep} from 'type-fest';\n\nexport interface VideoProps {\n /** An object with fields that correspond to the Storefront API's [Video object](https://shopify.dev/api/storefront/latest/objects/video). */\n data: PartialDeep<VideoType, {recurseIntoArrays: true}>;\n /** An object of image size options for the video's `previewImage`. Uses `shopifyImageLoader` to generate the `poster` URL. */\n previewImageOptions?: Parameters<typeof shopifyImageLoader>[0];\n /** Props that will be passed to the `video` element's `source` children elements. */\n sourceProps?: HTMLAttributes<HTMLSourceElement> & {\n 'data-testid'?: string;\n };\n}\n\n/**\n * The `Video` component renders a `video` for the Storefront API's [Video object](https://shopify.dev/api/storefront/reference/products/video).\n */\nexport function Video(props: JSX.IntrinsicElements['video'] & VideoProps) {\n const {\n data,\n previewImageOptions,\n id = data.id,\n playsInline = true,\n controls = true,\n sourceProps = {},\n ...passthroughProps\n } = props;\n\n const posterUrl = shopifyImageLoader({\n src: data.previewImage?.url ?? '',\n ...previewImageOptions,\n });\n\n if (!data.sources) {\n throw new Error(`<Video/> requires a 'data.sources' array`);\n }\n\n return (\n // eslint-disable-next-line jsx-a11y/media-has-caption\n <video\n {...passthroughProps}\n id={id}\n playsInline={playsInline}\n controls={controls}\n poster={posterUrl}\n >\n {data.sources.map((source) => {\n if (!(source?.url && source?.mimeType)) {\n throw new Error(`<Video/> needs 'source.url' and 'source.mimeType'`);\n }\n return (\n <source\n {...sourceProps}\n key={source.url}\n src={source.url}\n type={source.mimeType}\n />\n );\n })}\n </video>\n );\n}\n"],"names":["Video","props","data","previewImageOptions","id","playsInline","controls","sourceProps","passthroughProps","posterUrl","shopifyImageLoader","src","previewImage","url","sources","Error","map","source","mimeType"],"mappings":";;;;;AAmBO,SAASA,MAAMC,OAAoD;;AAClE,QAAA;AAAA,IACJC;AAAAA,IACAC;AAAAA,IACAC,KAAKF,KAAKE;AAAAA,IACVC,cAAc;AAAA,IACdC,WAAW;AAAA,IACXC,cAAc,CANV;AAAA,OAODC;AAAAA,EACDP,IAAAA;AAEJ,QAAMQ,YAAYC,UAAAA,mBAAmB;AAAA,IACnCC,MAAKT,gBAAKU,iBAALV,mBAAmBW,QAAnBX,YAA0B;AAAA,IAC/B,GAAGC;AAAAA,EAAAA,CAF+B;AAKhC,MAAA,CAACD,KAAKY,SAAS;AACX,UAAA,IAAIC,MAAO,0CAAX;AAAA,EACP;AAED,wCAEE,SAAA;AAAA,IAAA,GACMP;AAAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQC;AAAAA,IALV,UAOGP,KAAKY,QAAQE,IAAKC,CAAW,WAAA;AAC5B,UAAI,GAAEA,iCAAQJ,SAAOI,iCAAQC,YAAW;AAChC,cAAA,IAAIH,MAAO,mDAAX;AAAA,MACP;AACD;WAEQR;AAAAA,QACJ,KAAKU,OAAOJ;AAAAA,QACZ,KAAKI,OAAOJ;AAAAA,QACZ,MAAMI,OAAOC;AAAAA,MAAAA,CALjB;AAAA,IAAA,CAJD;AAAA,EAAA,CAPH;AAsBH;;"}
1
+ {"version":3,"file":"Video.mjs","sources":["../../src/Video.tsx"],"sourcesContent":["import {type HTMLAttributes} from 'react';\nimport {shopifyImageLoader} from './image-size.js';\nimport type {Video as VideoType} from './storefront-api-types.js';\nimport type {PartialDeep} from 'type-fest';\n\nexport interface VideoProps {\n /** An object with fields that correspond to the Storefront API's [Video object](https://shopify.dev/api/storefront/latest/objects/video). */\n data: PartialDeep<VideoType, {recurseIntoArrays: true}>;\n /** An object of image size options for the video's `previewImage`. Uses `shopifyImageLoader` to generate the `poster` URL. */\n previewImageOptions?: Parameters<typeof shopifyImageLoader>[0];\n /** Props that will be passed to the `video` element's `source` children elements. */\n sourceProps?: HTMLAttributes<HTMLSourceElement> & {\n 'data-testid'?: string;\n };\n}\n\n/**\n * The `Video` component renders a `video` for the Storefront API's [Video object](https://shopify.dev/api/storefront/reference/products/video).\n */\nexport function Video(props: JSX.IntrinsicElements['video'] & VideoProps) {\n const {\n data,\n previewImageOptions,\n id = data.id,\n playsInline = true,\n controls = true,\n sourceProps = {},\n ...passthroughProps\n } = props;\n\n const posterUrl = shopifyImageLoader({\n src: data.previewImage?.url ?? '',\n ...previewImageOptions,\n });\n\n if (!data.sources) {\n throw new Error(`<Video/> requires a 'data.sources' array`);\n }\n\n return (\n // eslint-disable-next-line jsx-a11y/media-has-caption\n <video\n {...passthroughProps}\n id={id}\n playsInline={playsInline}\n controls={controls}\n poster={posterUrl}\n >\n {data.sources.map((source) => {\n if (!(source?.url && source?.mimeType)) {\n throw new Error(`<Video/> needs 'source.url' and 'source.mimeType'`);\n }\n return (\n <source\n {...sourceProps}\n key={source.url}\n src={source.url}\n type={source.mimeType}\n />\n );\n })}\n </video>\n );\n}\n"],"names":["Video","props","data","previewImageOptions","id","playsInline","controls","sourceProps","passthroughProps","posterUrl","shopifyImageLoader","src","previewImage","url","sources","Error","map","source","mimeType"],"mappings":";;;AAmBO,SAASA,MAAMC,OAAoD;;AAClE,QAAA;AAAA,IACJC;AAAAA,IACAC;AAAAA,IACAC,KAAKF,KAAKE;AAAAA,IACVC,cAAc;AAAA,IACdC,WAAW;AAAA,IACXC,cAAc,CANV;AAAA,OAODC;AAAAA,EACDP,IAAAA;AAEJ,QAAMQ,YAAYC,mBAAmB;AAAA,IACnCC,MAAKT,gBAAKU,iBAALV,mBAAmBW,QAAnBX,YAA0B;AAAA,IAC/B,GAAGC;AAAAA,EAAAA,CAF+B;AAKhC,MAAA,CAACD,KAAKY,SAAS;AACX,UAAA,IAAIC,MAAO,0CAAX;AAAA,EACP;AAED,6BAEE,SAAA;AAAA,IAAA,GACMP;AAAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQC;AAAAA,IALV,UAOGP,KAAKY,QAAQE,IAAKC,CAAW,WAAA;AAC5B,UAAI,GAAEA,iCAAQJ,SAAOI,iCAAQC,YAAW;AAChC,cAAA,IAAIH,MAAO,mDAAX;AAAA,MACP;AACD;WAEQR;AAAAA,QACJ,KAAKU,OAAOJ;AAAAA,QACZ,KAAKI,OAAOJ;AAAAA,QACZ,MAAMI,OAAOC;AAAAA,MAAAA,CALjB;AAAA,IAAA,CAJD;AAAA,EAAA,CAPH;AAsBH;"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ var shim = { exports: {} };
4
+ exports.shim = shim;
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,5 @@
1
+ var shim = { exports: {} };
2
+ export {
3
+ shim as s
4
+ };
5
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ var useSyncExternalStoreShim_development = {};
4
+ exports.__exports = useSyncExternalStoreShim_development;
5
+ //# sourceMappingURL=use-sync-external-store-shim.development.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-sync-external-store-shim.development.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,5 @@
1
+ var useSyncExternalStoreShim_development = {};
2
+ export {
3
+ useSyncExternalStoreShim_development as __exports
4
+ };
5
+ //# sourceMappingURL=use-sync-external-store-shim.development.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-sync-external-store-shim.development.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ var useSyncExternalStoreShim_production_min = {};
4
+ exports.__exports = useSyncExternalStoreShim_production_min;
5
+ //# sourceMappingURL=use-sync-external-store-shim.production.min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-sync-external-store-shim.production.min.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,5 @@
1
+ var useSyncExternalStoreShim_production_min = {};
2
+ export {
3
+ useSyncExternalStoreShim_production_min as __exports
4
+ };
5
+ //# sourceMappingURL=use-sync-external-store-shim.production.min.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-sync-external-store-shim.production.min.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ var withSelector_development = {};
4
+ exports.__exports = withSelector_development;
5
+ //# sourceMappingURL=with-selector.development.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"with-selector.development.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,5 @@
1
+ var withSelector_development = {};
2
+ export {
3
+ withSelector_development as __exports
4
+ };
5
+ //# sourceMappingURL=with-selector.development.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"with-selector.development.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ var withSelector = { exports: {} };
4
+ exports.withSelector = withSelector;
5
+ //# sourceMappingURL=with-selector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"with-selector.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,5 @@
1
+ var withSelector = { exports: {} };
2
+ export {
3
+ withSelector as w
4
+ };
5
+ //# sourceMappingURL=with-selector.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"with-selector.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ var withSelector_production_min = {};
4
+ exports.__exports = withSelector_production_min;
5
+ //# sourceMappingURL=with-selector.production.min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"with-selector.production.min.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,5 @@
1
+ var withSelector_production_min = {};
2
+ export {
3
+ withSelector_production_min as __exports
4
+ };
5
+ //# sourceMappingURL=with-selector.production.min.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"with-selector.production.min.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -1,3 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
1
3
  const CART_ID_STORAGE_KEY = "shopifyCartId";
2
4
  const STOREFRONT_API_PUBLIC_TOKEN_HEADER = "X-Shopify-Storefront-Access-Token";
3
5
  const SHOPIFY_STOREFRONT_ID_HEADER = "Shopify-Storefront-Id";
@@ -5,13 +7,11 @@ const SHOPIFY_STOREFRONT_Y_HEADER = "Shopify-Storefront-Y";
5
7
  const SHOPIFY_STOREFRONT_S_HEADER = "Shopify-Storefront-S";
6
8
  const SHOPIFY_Y = "_shopify_y";
7
9
  const SHOPIFY_S = "_shopify_s";
8
- export {
9
- CART_ID_STORAGE_KEY,
10
- SHOPIFY_S,
11
- SHOPIFY_STOREFRONT_ID_HEADER,
12
- SHOPIFY_STOREFRONT_S_HEADER,
13
- SHOPIFY_STOREFRONT_Y_HEADER,
14
- SHOPIFY_Y,
15
- STOREFRONT_API_PUBLIC_TOKEN_HEADER
16
- };
10
+ exports.CART_ID_STORAGE_KEY = CART_ID_STORAGE_KEY;
11
+ exports.SHOPIFY_S = SHOPIFY_S;
12
+ exports.SHOPIFY_STOREFRONT_ID_HEADER = SHOPIFY_STOREFRONT_ID_HEADER;
13
+ exports.SHOPIFY_STOREFRONT_S_HEADER = SHOPIFY_STOREFRONT_S_HEADER;
14
+ exports.SHOPIFY_STOREFRONT_Y_HEADER = SHOPIFY_STOREFRONT_Y_HEADER;
15
+ exports.SHOPIFY_Y = SHOPIFY_Y;
16
+ exports.STOREFRONT_API_PUBLIC_TOKEN_HEADER = STOREFRONT_API_PUBLIC_TOKEN_HEADER;
17
17
  //# sourceMappingURL=cart-constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cart-constants.js","sources":["../../src/cart-constants.ts"],"sourcesContent":["export const CART_ID_STORAGE_KEY = 'shopifyCartId';\nexport const CART_COOKIE_TTL_DAYS = 14;\n\n// Needed for cart analytics within Shopify\nexport const STOREFRONT_API_PUBLIC_TOKEN_HEADER =\n 'X-Shopify-Storefront-Access-Token';\nexport const SHOPIFY_STOREFRONT_ID_HEADER = 'Shopify-Storefront-Id';\nexport const SHOPIFY_STOREFRONT_Y_HEADER = 'Shopify-Storefront-Y';\nexport const SHOPIFY_STOREFRONT_S_HEADER = 'Shopify-Storefront-S';\nexport const SHOPIFY_Y = '_shopify_y';\nexport const SHOPIFY_S = '_shopify_s';\n"],"names":[],"mappings":"AAAO,MAAM,sBAAsB;AAI5B,MAAM,qCACX;AACK,MAAM,+BAA+B;AACrC,MAAM,8BAA8B;AACpC,MAAM,8BAA8B;AACpC,MAAM,YAAY;AAClB,MAAM,YAAY;"}
1
+ {"version":3,"file":"cart-constants.js","sources":["../../src/cart-constants.ts"],"sourcesContent":["export const CART_ID_STORAGE_KEY = 'shopifyCartId';\nexport const CART_COOKIE_TTL_DAYS = 14;\n\n// Needed for cart analytics within Shopify\nexport const STOREFRONT_API_PUBLIC_TOKEN_HEADER =\n 'X-Shopify-Storefront-Access-Token';\nexport const SHOPIFY_STOREFRONT_ID_HEADER = 'Shopify-Storefront-Id';\nexport const SHOPIFY_STOREFRONT_Y_HEADER = 'Shopify-Storefront-Y';\nexport const SHOPIFY_STOREFRONT_S_HEADER = 'Shopify-Storefront-S';\nexport const SHOPIFY_Y = '_shopify_y';\nexport const SHOPIFY_S = '_shopify_s';\n"],"names":[],"mappings":";;AAAO,MAAM,sBAAsB;AAI5B,MAAM,qCACX;AACK,MAAM,+BAA+B;AACrC,MAAM,8BAA8B;AACpC,MAAM,8BAA8B;AACpC,MAAM,YAAY;AAClB,MAAM,YAAY;;;;;;;;"}
@@ -0,0 +1,17 @@
1
+ const CART_ID_STORAGE_KEY = "shopifyCartId";
2
+ const STOREFRONT_API_PUBLIC_TOKEN_HEADER = "X-Shopify-Storefront-Access-Token";
3
+ const SHOPIFY_STOREFRONT_ID_HEADER = "Shopify-Storefront-Id";
4
+ const SHOPIFY_STOREFRONT_Y_HEADER = "Shopify-Storefront-Y";
5
+ const SHOPIFY_STOREFRONT_S_HEADER = "Shopify-Storefront-S";
6
+ const SHOPIFY_Y = "_shopify_y";
7
+ const SHOPIFY_S = "_shopify_s";
8
+ export {
9
+ CART_ID_STORAGE_KEY,
10
+ SHOPIFY_S,
11
+ SHOPIFY_STOREFRONT_ID_HEADER,
12
+ SHOPIFY_STOREFRONT_S_HEADER,
13
+ SHOPIFY_STOREFRONT_Y_HEADER,
14
+ SHOPIFY_Y,
15
+ STOREFRONT_API_PUBLIC_TOKEN_HEADER
16
+ };
17
+ //# sourceMappingURL=cart-constants.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"cart-constants.cjs","sources":["../../src/cart-constants.ts"],"sourcesContent":["export const CART_ID_STORAGE_KEY = 'shopifyCartId';\nexport const CART_COOKIE_TTL_DAYS = 14;\n\n// Needed for cart analytics within Shopify\nexport const STOREFRONT_API_PUBLIC_TOKEN_HEADER =\n 'X-Shopify-Storefront-Access-Token';\nexport const SHOPIFY_STOREFRONT_ID_HEADER = 'Shopify-Storefront-Id';\nexport const SHOPIFY_STOREFRONT_Y_HEADER = 'Shopify-Storefront-Y';\nexport const SHOPIFY_STOREFRONT_S_HEADER = 'Shopify-Storefront-S';\nexport const SHOPIFY_Y = '_shopify_y';\nexport const SHOPIFY_S = '_shopify_s';\n"],"names":[],"mappings":";;AAAO,MAAM,sBAAsB;AAI5B,MAAM,qCACX;AACK,MAAM,+BAA+B;AACrC,MAAM,8BAA8B;AACpC,MAAM,8BAA8B;AACpC,MAAM,YAAY;AAClB,MAAM,YAAY;;;;;;;;"}
1
+ {"version":3,"file":"cart-constants.mjs","sources":["../../src/cart-constants.ts"],"sourcesContent":["export const CART_ID_STORAGE_KEY = 'shopifyCartId';\nexport const CART_COOKIE_TTL_DAYS = 14;\n\n// Needed for cart analytics within Shopify\nexport const STOREFRONT_API_PUBLIC_TOKEN_HEADER =\n 'X-Shopify-Storefront-Access-Token';\nexport const SHOPIFY_STOREFRONT_ID_HEADER = 'Shopify-Storefront-Id';\nexport const SHOPIFY_STOREFRONT_Y_HEADER = 'Shopify-Storefront-Y';\nexport const SHOPIFY_STOREFRONT_S_HEADER = 'Shopify-Storefront-S';\nexport const SHOPIFY_Y = '_shopify_y';\nexport const SHOPIFY_S = '_shopify_s';\n"],"names":[],"mappings":"AAAO,MAAM,sBAAsB;AAI5B,MAAM,qCACX;AACK,MAAM,+BAA+B;AACrC,MAAM,8BAA8B;AACpC,MAAM,8BAA8B;AACpC,MAAM,YAAY;AAClB,MAAM,YAAY;"}
@@ -1,15 +1,17 @@
1
- import { useCallback } from "react";
2
- import { useShop } from "./ShopifyProvider.js";
3
- import { SHOPIFY_Y, SHOPIFY_S, STOREFRONT_API_PUBLIC_TOKEN_HEADER, SHOPIFY_STOREFRONT_ID_HEADER, SHOPIFY_STOREFRONT_Y_HEADER, SHOPIFY_STOREFRONT_S_HEADER } from "./cart-constants.js";
4
- import { parse } from "worktop/cookie";
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const require$$0 = require("react");
4
+ const ShopifyProvider = require("./ShopifyProvider.js");
5
+ const cartConstants = require("./cart-constants.js");
6
+ const index = require("./node_modules/worktop/cookie/index.js");
5
7
  function useCartFetch() {
6
8
  const {
7
9
  storeDomain,
8
10
  storefrontApiVersion,
9
11
  storefrontToken,
10
12
  storefrontId
11
- } = useShop();
12
- return useCallback(({
13
+ } = ShopifyProvider.useShop();
14
+ return require$$0.useCallback(({
13
15
  query,
14
16
  variables
15
17
  }) => {
@@ -17,15 +19,15 @@ function useCartFetch() {
17
19
  "Content-Type": "application/json",
18
20
  "X-SDK-Variant": "hydrogen",
19
21
  "X-SDK-Version": storefrontApiVersion,
20
- [STOREFRONT_API_PUBLIC_TOKEN_HEADER]: storefrontToken
22
+ [cartConstants.STOREFRONT_API_PUBLIC_TOKEN_HEADER]: storefrontToken
21
23
  };
22
24
  if (storefrontId) {
23
- headers[SHOPIFY_STOREFRONT_ID_HEADER] = storefrontId;
25
+ headers[cartConstants.SHOPIFY_STOREFRONT_ID_HEADER] = storefrontId;
24
26
  }
25
- const cookieData = parse(document.cookie);
26
- if (cookieData[SHOPIFY_Y] && cookieData[SHOPIFY_S]) {
27
- headers[SHOPIFY_STOREFRONT_Y_HEADER] = cookieData[SHOPIFY_Y];
28
- headers[SHOPIFY_STOREFRONT_S_HEADER] = cookieData[SHOPIFY_S];
27
+ const cookieData = index.parse(document.cookie);
28
+ if (cookieData[cartConstants.SHOPIFY_Y] && cookieData[cartConstants.SHOPIFY_S]) {
29
+ headers[cartConstants.SHOPIFY_STOREFRONT_Y_HEADER] = cookieData[cartConstants.SHOPIFY_Y];
30
+ headers[cartConstants.SHOPIFY_STOREFRONT_S_HEADER] = cookieData[cartConstants.SHOPIFY_S];
29
31
  }
30
32
  return fetch(`https://${storeDomain}/api/${storefrontApiVersion}/graphql.json`, {
31
33
  method: "POST",
@@ -42,7 +44,5 @@ function useCartFetch() {
42
44
  });
43
45
  }, [storeDomain, storefrontApiVersion, storefrontToken, storefrontId]);
44
46
  }
45
- export {
46
- useCartFetch
47
- };
47
+ exports.useCartFetch = useCartFetch;
48
48
  //# sourceMappingURL=cart-hooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cart-hooks.js","sources":["../../src/cart-hooks.tsx"],"sourcesContent":["import {useState, useCallback} from 'react';\nimport {useShop} from './ShopifyProvider.js';\nimport {flattenConnection} from './flatten-connection.js';\nimport {CartInput, Cart as CartType} from './storefront-api-types.js';\nimport {CartCreate, defaultCartFragment} from './cart-queries.js';\nimport {Cart} from './cart-types.js';\nimport {\n SHOPIFY_STOREFRONT_ID_HEADER,\n STOREFRONT_API_PUBLIC_TOKEN_HEADER,\n SHOPIFY_STOREFRONT_Y_HEADER,\n SHOPIFY_STOREFRONT_S_HEADER,\n SHOPIFY_Y,\n SHOPIFY_S,\n} from './cart-constants.js';\nimport {parse} from 'worktop/cookie';\nimport type {StorefrontApiResponseOkPartial} from './storefront-api-response.types.js';\n\nexport function useCartFetch() {\n const {storeDomain, storefrontApiVersion, storefrontToken, storefrontId} =\n useShop();\n\n return useCallback(\n <ReturnDataGeneric,>({\n query,\n variables,\n }: {\n query: string;\n variables: Record<string, unknown>;\n }): Promise<StorefrontApiResponseOkPartial<ReturnDataGeneric>> => {\n const headers: Record<string, string> = {\n 'Content-Type': 'application/json',\n 'X-SDK-Variant': 'hydrogen',\n 'X-SDK-Version': storefrontApiVersion,\n [STOREFRONT_API_PUBLIC_TOKEN_HEADER]: storefrontToken,\n };\n\n if (storefrontId) {\n headers[SHOPIFY_STOREFRONT_ID_HEADER] = storefrontId;\n }\n\n // Find Shopify cookies\n const cookieData = parse(document.cookie);\n if (cookieData[SHOPIFY_Y] && cookieData[SHOPIFY_S]) {\n headers[SHOPIFY_STOREFRONT_Y_HEADER] = cookieData[SHOPIFY_Y];\n headers[SHOPIFY_STOREFRONT_S_HEADER] = cookieData[SHOPIFY_S];\n }\n\n return fetch(\n `https://${storeDomain}/api/${storefrontApiVersion}/graphql.json`,\n {\n method: 'POST',\n headers,\n body: JSON.stringify({\n query: query.toString(),\n variables,\n }),\n }\n )\n .then((res) => res.json())\n .catch((error) => {\n return {\n data: undefined,\n errors: error.toString(),\n };\n });\n },\n [storeDomain, storefrontApiVersion, storefrontToken, storefrontId]\n );\n}\n\nexport function useInstantCheckout() {\n const [cart, updateCart] = useState<Cart | undefined>();\n const [checkoutUrl, updateCheckoutUrl] = useState<Cart['checkoutUrl']>();\n const [error, updateError] = useState<string | undefined>();\n\n const fetch = useCartFetch();\n\n const createInstantCheckout = useCallback(\n async (cartInput: CartInput) => {\n const {data, errors} = await fetch<{\n cartCreate: {cart: CartType};\n }>({\n query: CartCreate(defaultCartFragment),\n variables: {\n input: cartInput,\n },\n });\n\n if (errors) {\n updateError(errors.toString());\n updateCart(undefined);\n updateCheckoutUrl(undefined);\n }\n\n if (data?.cartCreate?.cart) {\n const dataCart = data.cartCreate.cart;\n updateCart({\n ...dataCart,\n lines: flattenConnection(dataCart.lines),\n note: dataCart.note ?? undefined,\n });\n updateCheckoutUrl(dataCart.checkoutUrl);\n }\n },\n [fetch]\n );\n\n return {cart, checkoutUrl, error, createInstantCheckout};\n}\n"],"names":["useCartFetch","storeDomain","storefrontApiVersion","storefrontToken","storefrontId","useShop","useCallback","query","variables","headers","STOREFRONT_API_PUBLIC_TOKEN_HEADER","SHOPIFY_STOREFRONT_ID_HEADER","cookieData","parse","document","cookie","SHOPIFY_Y","SHOPIFY_S","SHOPIFY_STOREFRONT_Y_HEADER","SHOPIFY_STOREFRONT_S_HEADER","fetch","method","body","JSON","stringify","toString","then","res","json","catch","error","data","undefined","errors"],"mappings":";;;;AAiBO,SAASA,eAAe;AACvB,QAAA;AAAA,IAACC;AAAAA,IAAaC;AAAAA,IAAsBC;AAAAA,IAAiBC;AAAAA,MACzDC,QADF;AAGA,SAAOC,YACL,CAAqB;AAAA,IACnBC;AAAAA,IACAC;AAAAA,EAAAA,MAIgE;AAChE,UAAMC,UAAkC;AAAA,MACtC,gBAAgB;AAAA,MAChB,iBAAiB;AAAA,MACjB,iBAAiBP;AAAAA,MACjB,CAACQ,qCAAqCP;AAAAA,IAAAA;AAGxC,QAAIC,cAAc;AAChBK,cAAQE,gCAAgCP;AAAAA,IACzC;AAGKQ,UAAAA,aAAaC,MAAMC,SAASC,MAAV;AACpBH,QAAAA,WAAWI,cAAcJ,WAAWK,YAAY;AAClDR,cAAQS,+BAA+BN,WAAWI;AAClDP,cAAQU,+BAA+BP,WAAWK;AAAAA,IACnD;AAEMG,WAAAA,MACJ,WAAUnB,mBAAmBC,qCAC9B;AAAA,MACEmB,QAAQ;AAAA,MACRZ;AAAAA,MACAa,MAAMC,KAAKC,UAAU;AAAA,QACnBjB,OAAOA,MAAMkB,SADM;AAAA,QAEnBjB;AAAAA,MAAAA,CAFI;AAAA,IAAA,CALE,EAWTkB,KAAMC,CAAAA,QAAQA,IAAIC,MAXd,EAYJC,MAAOC,CAAU,UAAA;AACT,aAAA;AAAA,QACLC,MAAMC;AAAAA,QACNC,QAAQH,MAAML,SAAN;AAAA,MAAA;AAAA,IAFH,CAbJ;AAAA,KAmBT,CAACxB,aAAaC,sBAAsBC,iBAAiBC,YAArD,CA7CgB;AA+CnB;"}
1
+ {"version":3,"file":"cart-hooks.js","sources":["../../src/cart-hooks.tsx"],"sourcesContent":["import {useState, useCallback} from 'react';\nimport {useShop} from './ShopifyProvider.js';\nimport {flattenConnection} from './flatten-connection.js';\nimport {CartInput, Cart as CartType} from './storefront-api-types.js';\nimport {CartCreate, defaultCartFragment} from './cart-queries.js';\nimport {Cart} from './cart-types.js';\nimport {\n SHOPIFY_STOREFRONT_ID_HEADER,\n STOREFRONT_API_PUBLIC_TOKEN_HEADER,\n SHOPIFY_STOREFRONT_Y_HEADER,\n SHOPIFY_STOREFRONT_S_HEADER,\n SHOPIFY_Y,\n SHOPIFY_S,\n} from './cart-constants.js';\nimport {parse} from 'worktop/cookie';\nimport type {StorefrontApiResponseOkPartial} from './storefront-api-response.types.js';\n\nexport function useCartFetch() {\n const {storeDomain, storefrontApiVersion, storefrontToken, storefrontId} =\n useShop();\n\n return useCallback(\n <ReturnDataGeneric,>({\n query,\n variables,\n }: {\n query: string;\n variables: Record<string, unknown>;\n }): Promise<StorefrontApiResponseOkPartial<ReturnDataGeneric>> => {\n const headers: Record<string, string> = {\n 'Content-Type': 'application/json',\n 'X-SDK-Variant': 'hydrogen',\n 'X-SDK-Version': storefrontApiVersion,\n [STOREFRONT_API_PUBLIC_TOKEN_HEADER]: storefrontToken,\n };\n\n if (storefrontId) {\n headers[SHOPIFY_STOREFRONT_ID_HEADER] = storefrontId;\n }\n\n // Find Shopify cookies\n const cookieData = parse(document.cookie);\n if (cookieData[SHOPIFY_Y] && cookieData[SHOPIFY_S]) {\n headers[SHOPIFY_STOREFRONT_Y_HEADER] = cookieData[SHOPIFY_Y];\n headers[SHOPIFY_STOREFRONT_S_HEADER] = cookieData[SHOPIFY_S];\n }\n\n return fetch(\n `https://${storeDomain}/api/${storefrontApiVersion}/graphql.json`,\n {\n method: 'POST',\n headers,\n body: JSON.stringify({\n query: query.toString(),\n variables,\n }),\n }\n )\n .then((res) => res.json())\n .catch((error) => {\n return {\n data: undefined,\n errors: error.toString(),\n };\n });\n },\n [storeDomain, storefrontApiVersion, storefrontToken, storefrontId]\n );\n}\n\nexport function useInstantCheckout() {\n const [cart, updateCart] = useState<Cart | undefined>();\n const [checkoutUrl, updateCheckoutUrl] = useState<Cart['checkoutUrl']>();\n const [error, updateError] = useState<string | undefined>();\n\n const fetch = useCartFetch();\n\n const createInstantCheckout = useCallback(\n async (cartInput: CartInput) => {\n const {data, errors} = await fetch<{\n cartCreate: {cart: CartType};\n }>({\n query: CartCreate(defaultCartFragment),\n variables: {\n input: cartInput,\n },\n });\n\n if (errors) {\n updateError(errors.toString());\n updateCart(undefined);\n updateCheckoutUrl(undefined);\n }\n\n if (data?.cartCreate?.cart) {\n const dataCart = data.cartCreate.cart;\n updateCart({\n ...dataCart,\n lines: flattenConnection(dataCart.lines),\n note: dataCart.note ?? undefined,\n });\n updateCheckoutUrl(dataCart.checkoutUrl);\n }\n },\n [fetch]\n );\n\n return {cart, checkoutUrl, error, createInstantCheckout};\n}\n"],"names":["useCartFetch","storeDomain","storefrontApiVersion","storefrontToken","storefrontId","useShop","useCallback","query","variables","headers","STOREFRONT_API_PUBLIC_TOKEN_HEADER","SHOPIFY_STOREFRONT_ID_HEADER","cookieData","parse","document","cookie","SHOPIFY_Y","SHOPIFY_S","SHOPIFY_STOREFRONT_Y_HEADER","SHOPIFY_STOREFRONT_S_HEADER","fetch","method","body","JSON","stringify","toString","then","res","json","catch","error","data","undefined","errors"],"mappings":";;;;;;AAiBO,SAASA,eAAe;AACvB,QAAA;AAAA,IAACC;AAAAA,IAAaC;AAAAA,IAAsBC;AAAAA,IAAiBC;AAAAA,MACzDC,gBADF,QAAA;AAGA,SAAOC,uBACL,CAAqB;AAAA,IACnBC;AAAAA,IACAC;AAAAA,EAAAA,MAIgE;AAChE,UAAMC,UAAkC;AAAA,MACtC,gBAAgB;AAAA,MAChB,iBAAiB;AAAA,MACjB,iBAAiBP;AAAAA,MACjB,CAACQ,cAAqCP,qCAAAA;AAAAA,IAAAA;AAGxC,QAAIC,cAAc;AAChBK,cAAQE,cAAAA,gCAAgCP;AAAAA,IACzC;AAGKQ,UAAAA,aAAaC,MAAAA,MAAMC,SAASC,MAAV;AACpBH,QAAAA,WAAWI,cAAcJ,cAAAA,WAAWK,cAAY,YAAA;AAClDR,cAAQS,6CAA+BN,WAAWI,cAAAA;AAClDP,cAAQU,6CAA+BP,WAAWK,cAAAA;AAAAA,IACnD;AAEMG,WAAAA,MACJ,WAAUnB,mBAAmBC,qCAC9B;AAAA,MACEmB,QAAQ;AAAA,MACRZ;AAAAA,MACAa,MAAMC,KAAKC,UAAU;AAAA,QACnBjB,OAAOA,MAAMkB,SADM;AAAA,QAEnBjB;AAAAA,MAAAA,CAFI;AAAA,IAAA,CALE,EAWTkB,KAAMC,CAAAA,QAAQA,IAAIC,MAXd,EAYJC,MAAOC,CAAU,UAAA;AACT,aAAA;AAAA,QACLC,MAAMC;AAAAA,QACNC,QAAQH,MAAML,SAAN;AAAA,MAAA;AAAA,IAFH,CAbJ;AAAA,KAmBT,CAACxB,aAAaC,sBAAsBC,iBAAiBC,YAArD,CA7CgB;AA+CnB;;"}
@@ -0,0 +1,48 @@
1
+ import { useCallback } from "react";
2
+ import { useShop } from "./ShopifyProvider.mjs";
3
+ import { STOREFRONT_API_PUBLIC_TOKEN_HEADER, SHOPIFY_STOREFRONT_ID_HEADER, SHOPIFY_Y, SHOPIFY_S, SHOPIFY_STOREFRONT_Y_HEADER, SHOPIFY_STOREFRONT_S_HEADER } from "./cart-constants.mjs";
4
+ import { parse as u } from "./node_modules/worktop/cookie/index.mjs";
5
+ function useCartFetch() {
6
+ const {
7
+ storeDomain,
8
+ storefrontApiVersion,
9
+ storefrontToken,
10
+ storefrontId
11
+ } = useShop();
12
+ return useCallback(({
13
+ query,
14
+ variables
15
+ }) => {
16
+ const headers = {
17
+ "Content-Type": "application/json",
18
+ "X-SDK-Variant": "hydrogen",
19
+ "X-SDK-Version": storefrontApiVersion,
20
+ [STOREFRONT_API_PUBLIC_TOKEN_HEADER]: storefrontToken
21
+ };
22
+ if (storefrontId) {
23
+ headers[SHOPIFY_STOREFRONT_ID_HEADER] = storefrontId;
24
+ }
25
+ const cookieData = u(document.cookie);
26
+ if (cookieData[SHOPIFY_Y] && cookieData[SHOPIFY_S]) {
27
+ headers[SHOPIFY_STOREFRONT_Y_HEADER] = cookieData[SHOPIFY_Y];
28
+ headers[SHOPIFY_STOREFRONT_S_HEADER] = cookieData[SHOPIFY_S];
29
+ }
30
+ return fetch(`https://${storeDomain}/api/${storefrontApiVersion}/graphql.json`, {
31
+ method: "POST",
32
+ headers,
33
+ body: JSON.stringify({
34
+ query: query.toString(),
35
+ variables
36
+ })
37
+ }).then((res) => res.json()).catch((error) => {
38
+ return {
39
+ data: void 0,
40
+ errors: error.toString()
41
+ };
42
+ });
43
+ }, [storeDomain, storefrontApiVersion, storefrontToken, storefrontId]);
44
+ }
45
+ export {
46
+ useCartFetch
47
+ };
48
+ //# sourceMappingURL=cart-hooks.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"cart-hooks.cjs","sources":["../../src/cart-hooks.tsx"],"sourcesContent":["import {useState, useCallback} from 'react';\nimport {useShop} from './ShopifyProvider.js';\nimport {flattenConnection} from './flatten-connection.js';\nimport {CartInput, Cart as CartType} from './storefront-api-types.js';\nimport {CartCreate, defaultCartFragment} from './cart-queries.js';\nimport {Cart} from './cart-types.js';\nimport {\n SHOPIFY_STOREFRONT_ID_HEADER,\n STOREFRONT_API_PUBLIC_TOKEN_HEADER,\n SHOPIFY_STOREFRONT_Y_HEADER,\n SHOPIFY_STOREFRONT_S_HEADER,\n SHOPIFY_Y,\n SHOPIFY_S,\n} from './cart-constants.js';\nimport {parse} from 'worktop/cookie';\nimport type {StorefrontApiResponseOkPartial} from './storefront-api-response.types.js';\n\nexport function useCartFetch() {\n const {storeDomain, storefrontApiVersion, storefrontToken, storefrontId} =\n useShop();\n\n return useCallback(\n <ReturnDataGeneric,>({\n query,\n variables,\n }: {\n query: string;\n variables: Record<string, unknown>;\n }): Promise<StorefrontApiResponseOkPartial<ReturnDataGeneric>> => {\n const headers: Record<string, string> = {\n 'Content-Type': 'application/json',\n 'X-SDK-Variant': 'hydrogen',\n 'X-SDK-Version': storefrontApiVersion,\n [STOREFRONT_API_PUBLIC_TOKEN_HEADER]: storefrontToken,\n };\n\n if (storefrontId) {\n headers[SHOPIFY_STOREFRONT_ID_HEADER] = storefrontId;\n }\n\n // Find Shopify cookies\n const cookieData = parse(document.cookie);\n if (cookieData[SHOPIFY_Y] && cookieData[SHOPIFY_S]) {\n headers[SHOPIFY_STOREFRONT_Y_HEADER] = cookieData[SHOPIFY_Y];\n headers[SHOPIFY_STOREFRONT_S_HEADER] = cookieData[SHOPIFY_S];\n }\n\n return fetch(\n `https://${storeDomain}/api/${storefrontApiVersion}/graphql.json`,\n {\n method: 'POST',\n headers,\n body: JSON.stringify({\n query: query.toString(),\n variables,\n }),\n }\n )\n .then((res) => res.json())\n .catch((error) => {\n return {\n data: undefined,\n errors: error.toString(),\n };\n });\n },\n [storeDomain, storefrontApiVersion, storefrontToken, storefrontId]\n );\n}\n\nexport function useInstantCheckout() {\n const [cart, updateCart] = useState<Cart | undefined>();\n const [checkoutUrl, updateCheckoutUrl] = useState<Cart['checkoutUrl']>();\n const [error, updateError] = useState<string | undefined>();\n\n const fetch = useCartFetch();\n\n const createInstantCheckout = useCallback(\n async (cartInput: CartInput) => {\n const {data, errors} = await fetch<{\n cartCreate: {cart: CartType};\n }>({\n query: CartCreate(defaultCartFragment),\n variables: {\n input: cartInput,\n },\n });\n\n if (errors) {\n updateError(errors.toString());\n updateCart(undefined);\n updateCheckoutUrl(undefined);\n }\n\n if (data?.cartCreate?.cart) {\n const dataCart = data.cartCreate.cart;\n updateCart({\n ...dataCart,\n lines: flattenConnection(dataCart.lines),\n note: dataCart.note ?? undefined,\n });\n updateCheckoutUrl(dataCart.checkoutUrl);\n }\n },\n [fetch]\n );\n\n return {cart, checkoutUrl, error, createInstantCheckout};\n}\n"],"names":["useCartFetch","storeDomain","storefrontApiVersion","storefrontToken","storefrontId","useShop","useCallback","query","variables","headers","STOREFRONT_API_PUBLIC_TOKEN_HEADER","SHOPIFY_STOREFRONT_ID_HEADER","cookieData","parse","document","cookie","SHOPIFY_Y","SHOPIFY_S","SHOPIFY_STOREFRONT_Y_HEADER","SHOPIFY_STOREFRONT_S_HEADER","fetch","method","body","JSON","stringify","toString","then","res","json","catch","error","data","undefined","errors"],"mappings":";;;;;;AAiBO,SAASA,eAAe;AACvB,QAAA;AAAA,IAACC;AAAAA,IAAaC;AAAAA,IAAsBC;AAAAA,IAAiBC;AAAAA,MACzDC,gBADF,QAAA;AAGA,SAAOC,kBACL,CAAqB;AAAA,IACnBC;AAAAA,IACAC;AAAAA,EAAAA,MAIgE;AAChE,UAAMC,UAAkC;AAAA,MACtC,gBAAgB;AAAA,MAChB,iBAAiB;AAAA,MACjB,iBAAiBP;AAAAA,MACjB,CAACQ,cAAqCP,qCAAAA;AAAAA,IAAAA;AAGxC,QAAIC,cAAc;AAChBK,cAAQE,cAAAA,gCAAgCP;AAAAA,IACzC;AAGKQ,UAAAA,aAAaC,OAAAA,MAAMC,SAASC,MAAV;AACpBH,QAAAA,WAAWI,cAAcJ,cAAAA,WAAWK,cAAY,YAAA;AAClDR,cAAQS,6CAA+BN,WAAWI,cAAAA;AAClDP,cAAQU,6CAA+BP,WAAWK,cAAAA;AAAAA,IACnD;AAEMG,WAAAA,MACJ,WAAUnB,mBAAmBC,qCAC9B;AAAA,MACEmB,QAAQ;AAAA,MACRZ;AAAAA,MACAa,MAAMC,KAAKC,UAAU;AAAA,QACnBjB,OAAOA,MAAMkB,SADM;AAAA,QAEnBjB;AAAAA,MAAAA,CAFI;AAAA,IAAA,CALE,EAWTkB,KAAMC,CAAAA,QAAQA,IAAIC,MAXd,EAYJC,MAAOC,CAAU,UAAA;AACT,aAAA;AAAA,QACLC,MAAMC;AAAAA,QACNC,QAAQH,MAAML,SAAN;AAAA,MAAA;AAAA,IAFH,CAbJ;AAAA,KAmBT,CAACxB,aAAaC,sBAAsBC,iBAAiBC,YAArD,CA7CgB;AA+CnB;;"}
1
+ {"version":3,"file":"cart-hooks.mjs","sources":["../../src/cart-hooks.tsx"],"sourcesContent":["import {useState, useCallback} from 'react';\nimport {useShop} from './ShopifyProvider.js';\nimport {flattenConnection} from './flatten-connection.js';\nimport {CartInput, Cart as CartType} from './storefront-api-types.js';\nimport {CartCreate, defaultCartFragment} from './cart-queries.js';\nimport {Cart} from './cart-types.js';\nimport {\n SHOPIFY_STOREFRONT_ID_HEADER,\n STOREFRONT_API_PUBLIC_TOKEN_HEADER,\n SHOPIFY_STOREFRONT_Y_HEADER,\n SHOPIFY_STOREFRONT_S_HEADER,\n SHOPIFY_Y,\n SHOPIFY_S,\n} from './cart-constants.js';\nimport {parse} from 'worktop/cookie';\nimport type {StorefrontApiResponseOkPartial} from './storefront-api-response.types.js';\n\nexport function useCartFetch() {\n const {storeDomain, storefrontApiVersion, storefrontToken, storefrontId} =\n useShop();\n\n return useCallback(\n <ReturnDataGeneric,>({\n query,\n variables,\n }: {\n query: string;\n variables: Record<string, unknown>;\n }): Promise<StorefrontApiResponseOkPartial<ReturnDataGeneric>> => {\n const headers: Record<string, string> = {\n 'Content-Type': 'application/json',\n 'X-SDK-Variant': 'hydrogen',\n 'X-SDK-Version': storefrontApiVersion,\n [STOREFRONT_API_PUBLIC_TOKEN_HEADER]: storefrontToken,\n };\n\n if (storefrontId) {\n headers[SHOPIFY_STOREFRONT_ID_HEADER] = storefrontId;\n }\n\n // Find Shopify cookies\n const cookieData = parse(document.cookie);\n if (cookieData[SHOPIFY_Y] && cookieData[SHOPIFY_S]) {\n headers[SHOPIFY_STOREFRONT_Y_HEADER] = cookieData[SHOPIFY_Y];\n headers[SHOPIFY_STOREFRONT_S_HEADER] = cookieData[SHOPIFY_S];\n }\n\n return fetch(\n `https://${storeDomain}/api/${storefrontApiVersion}/graphql.json`,\n {\n method: 'POST',\n headers,\n body: JSON.stringify({\n query: query.toString(),\n variables,\n }),\n }\n )\n .then((res) => res.json())\n .catch((error) => {\n return {\n data: undefined,\n errors: error.toString(),\n };\n });\n },\n [storeDomain, storefrontApiVersion, storefrontToken, storefrontId]\n );\n}\n\nexport function useInstantCheckout() {\n const [cart, updateCart] = useState<Cart | undefined>();\n const [checkoutUrl, updateCheckoutUrl] = useState<Cart['checkoutUrl']>();\n const [error, updateError] = useState<string | undefined>();\n\n const fetch = useCartFetch();\n\n const createInstantCheckout = useCallback(\n async (cartInput: CartInput) => {\n const {data, errors} = await fetch<{\n cartCreate: {cart: CartType};\n }>({\n query: CartCreate(defaultCartFragment),\n variables: {\n input: cartInput,\n },\n });\n\n if (errors) {\n updateError(errors.toString());\n updateCart(undefined);\n updateCheckoutUrl(undefined);\n }\n\n if (data?.cartCreate?.cart) {\n const dataCart = data.cartCreate.cart;\n updateCart({\n ...dataCart,\n lines: flattenConnection(dataCart.lines),\n note: dataCart.note ?? undefined,\n });\n updateCheckoutUrl(dataCart.checkoutUrl);\n }\n },\n [fetch]\n );\n\n return {cart, checkoutUrl, error, createInstantCheckout};\n}\n"],"names":["useCartFetch","storeDomain","storefrontApiVersion","storefrontToken","storefrontId","useShop","useCallback","query","variables","headers","STOREFRONT_API_PUBLIC_TOKEN_HEADER","SHOPIFY_STOREFRONT_ID_HEADER","cookieData","parse","document","cookie","SHOPIFY_Y","SHOPIFY_S","SHOPIFY_STOREFRONT_Y_HEADER","SHOPIFY_STOREFRONT_S_HEADER","fetch","method","body","JSON","stringify","toString","then","res","json","catch","error","data","undefined","errors"],"mappings":";;;;AAiBO,SAASA,eAAe;AACvB,QAAA;AAAA,IAACC;AAAAA,IAAaC;AAAAA,IAAsBC;AAAAA,IAAiBC;AAAAA,MACzDC,QADF;AAGA,SAAOC,YACL,CAAqB;AAAA,IACnBC;AAAAA,IACAC;AAAAA,EAAAA,MAIgE;AAChE,UAAMC,UAAkC;AAAA,MACtC,gBAAgB;AAAA,MAChB,iBAAiB;AAAA,MACjB,iBAAiBP;AAAAA,MACjB,CAACQ,qCAAqCP;AAAAA,IAAAA;AAGxC,QAAIC,cAAc;AAChBK,cAAQE,gCAAgCP;AAAAA,IACzC;AAGKQ,UAAAA,aAAaC,EAAMC,SAASC,MAAV;AACpBH,QAAAA,WAAWI,cAAcJ,WAAWK,YAAY;AAClDR,cAAQS,+BAA+BN,WAAWI;AAClDP,cAAQU,+BAA+BP,WAAWK;AAAAA,IACnD;AAEMG,WAAAA,MACJ,WAAUnB,mBAAmBC,qCAC9B;AAAA,MACEmB,QAAQ;AAAA,MACRZ;AAAAA,MACAa,MAAMC,KAAKC,UAAU;AAAA,QACnBjB,OAAOA,MAAMkB,SADM;AAAA,QAEnBjB;AAAAA,MAAAA,CAFI;AAAA,IAAA,CALE,EAWTkB,KAAMC,CAAAA,QAAQA,IAAIC,MAXd,EAYJC,MAAOC,CAAU,UAAA;AACT,aAAA;AAAA,QACLC,MAAMC;AAAAA,QACNC,QAAQH,MAAML,SAAN;AAAA,MAAA;AAAA,IAFH,CAbJ;AAAA,KAmBT,CAACxB,aAAaC,sBAAsBC,iBAAiBC,YAArD,CA7CgB;AA+CnB;"}
@@ -1,3 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
1
3
  const CartLineAdd = (cartFragment) => `
2
4
  mutation CartLineAdd($cartId: ID!, $lines: [CartLineInput!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {
3
5
  cartLinesAdd(cartId: $cartId, lines: $lines) {
@@ -100,15 +102,13 @@ query CartQuery($id: ID!, $numCartLines: Int = 250, $country: CountryCode = ZZ)
100
102
 
101
103
  ${cartFragment}
102
104
  `;
103
- export {
104
- CartAttributesUpdate,
105
- CartBuyerIdentityUpdate,
106
- CartCreate,
107
- CartDiscountCodesUpdate,
108
- CartLineAdd,
109
- CartLineRemove,
110
- CartLineUpdate,
111
- CartNoteUpdate,
112
- CartQuery
113
- };
105
+ exports.CartAttributesUpdate = CartAttributesUpdate;
106
+ exports.CartBuyerIdentityUpdate = CartBuyerIdentityUpdate;
107
+ exports.CartCreate = CartCreate;
108
+ exports.CartDiscountCodesUpdate = CartDiscountCodesUpdate;
109
+ exports.CartLineAdd = CartLineAdd;
110
+ exports.CartLineRemove = CartLineRemove;
111
+ exports.CartLineUpdate = CartLineUpdate;
112
+ exports.CartNoteUpdate = CartNoteUpdate;
113
+ exports.CartQuery = CartQuery;
114
114
  //# sourceMappingURL=cart-queries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cart-queries.js","sources":["../../src/cart-queries.ts"],"sourcesContent":["export const CartLineAdd = (cartFragment: string) => `\nmutation CartLineAdd($cartId: ID!, $lines: [CartLineInput!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesAdd(cartId: $cartId, lines: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartCreate = (cartFragment: string) => `\nmutation CartCreate($input: CartInput!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartCreate(input: $input) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartLineRemove = (cartFragment: string) => `\nmutation CartLineRemove($cartId: ID!, $lines: [ID!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesRemove(cartId: $cartId, lineIds: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartLineUpdate = (cartFragment: string) => `\nmutation CartLineUpdate($cartId: ID!, $lines: [CartLineUpdateInput!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesUpdate(cartId: $cartId, lines: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartNoteUpdate = (cartFragment: string) => `\nmutation CartNoteUpdate($cartId: ID!, $note: String, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartNoteUpdate(cartId: $cartId, note: $note) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartBuyerIdentityUpdate = (cartFragment: string) => `\nmutation CartBuyerIdentityUpdate(\n $cartId: ID!\n $buyerIdentity: CartBuyerIdentityInput!\n $numCartLines: Int = 250\n $country: CountryCode = ZZ\n) @inContext(country: $country) {\n cartBuyerIdentityUpdate(cartId: $cartId, buyerIdentity: $buyerIdentity) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartAttributesUpdate = (cartFragment: string) => `\nmutation CartAttributesUpdate($attributes: [AttributeInput!]!, $cartId: ID!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartAttributesUpdate(attributes: $attributes, cartId: $cartId) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartDiscountCodesUpdate = (cartFragment: string) => `\nmutation CartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!], $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartDiscountCodesUpdate(cartId: $cartId, discountCodes: $discountCodes) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartQuery = (cartFragment: string) => `\nquery CartQuery($id: ID!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cart(id: $id) {\n ...CartFragment\n }\n}\n\n${cartFragment}\n`;\n\nexport const defaultCartFragment = `\nfragment CartFragment on Cart {\n id\n checkoutUrl\n totalQuantity\n buyerIdentity {\n countryCode\n customer {\n id\n email\n firstName\n lastName\n displayName\n }\n email\n phone\n }\n lines(first: $numCartLines) {\n edges {\n node {\n id\n quantity\n attributes {\n key\n value\n }\n cost {\n totalAmount {\n amount\n currencyCode\n }\n compareAtAmountPerQuantity {\n amount\n currencyCode\n }\n }\n merchandise {\n ... on ProductVariant {\n id\n availableForSale\n compareAtPriceV2 {\n ...MoneyFragment\n }\n priceV2 {\n ...MoneyFragment\n }\n requiresShipping\n title\n image {\n ...ImageFragment\n }\n product {\n handle\n title\n id\n }\n selectedOptions {\n name\n value\n }\n }\n }\n }\n }\n }\n cost {\n subtotalAmount {\n ...MoneyFragment\n }\n totalAmount {\n ...MoneyFragment\n }\n totalDutyAmount {\n ...MoneyFragment\n }\n totalTaxAmount {\n ...MoneyFragment\n }\n }\n note\n attributes {\n key\n value\n }\n discountCodes {\n code\n }\n}\n\nfragment MoneyFragment on MoneyV2 {\n currencyCode\n amount\n}\nfragment ImageFragment on Image {\n id\n url\n altText\n width\n height\n}\n`;\n"],"names":[],"mappings":"AAAa,MAAA,cAAc,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASnD;AAAA;AAGW,MAAA,aAAa,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASlD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,0BAA0B,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAc/D;AAAA;AAGW,MAAA,uBAAuB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS5D;AAAA;AAGW,MAAA,0BAA0B,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS/D;AAAA;AAGW,MAAA,YAAY,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOjD;AAAA;"}
1
+ {"version":3,"file":"cart-queries.js","sources":["../../src/cart-queries.ts"],"sourcesContent":["export const CartLineAdd = (cartFragment: string) => `\nmutation CartLineAdd($cartId: ID!, $lines: [CartLineInput!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesAdd(cartId: $cartId, lines: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartCreate = (cartFragment: string) => `\nmutation CartCreate($input: CartInput!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartCreate(input: $input) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartLineRemove = (cartFragment: string) => `\nmutation CartLineRemove($cartId: ID!, $lines: [ID!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesRemove(cartId: $cartId, lineIds: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartLineUpdate = (cartFragment: string) => `\nmutation CartLineUpdate($cartId: ID!, $lines: [CartLineUpdateInput!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesUpdate(cartId: $cartId, lines: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartNoteUpdate = (cartFragment: string) => `\nmutation CartNoteUpdate($cartId: ID!, $note: String, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartNoteUpdate(cartId: $cartId, note: $note) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartBuyerIdentityUpdate = (cartFragment: string) => `\nmutation CartBuyerIdentityUpdate(\n $cartId: ID!\n $buyerIdentity: CartBuyerIdentityInput!\n $numCartLines: Int = 250\n $country: CountryCode = ZZ\n) @inContext(country: $country) {\n cartBuyerIdentityUpdate(cartId: $cartId, buyerIdentity: $buyerIdentity) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartAttributesUpdate = (cartFragment: string) => `\nmutation CartAttributesUpdate($attributes: [AttributeInput!]!, $cartId: ID!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartAttributesUpdate(attributes: $attributes, cartId: $cartId) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartDiscountCodesUpdate = (cartFragment: string) => `\nmutation CartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!], $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartDiscountCodesUpdate(cartId: $cartId, discountCodes: $discountCodes) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartQuery = (cartFragment: string) => `\nquery CartQuery($id: ID!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cart(id: $id) {\n ...CartFragment\n }\n}\n\n${cartFragment}\n`;\n\nexport const defaultCartFragment = `\nfragment CartFragment on Cart {\n id\n checkoutUrl\n totalQuantity\n buyerIdentity {\n countryCode\n customer {\n id\n email\n firstName\n lastName\n displayName\n }\n email\n phone\n }\n lines(first: $numCartLines) {\n edges {\n node {\n id\n quantity\n attributes {\n key\n value\n }\n cost {\n totalAmount {\n amount\n currencyCode\n }\n compareAtAmountPerQuantity {\n amount\n currencyCode\n }\n }\n merchandise {\n ... on ProductVariant {\n id\n availableForSale\n compareAtPriceV2 {\n ...MoneyFragment\n }\n priceV2 {\n ...MoneyFragment\n }\n requiresShipping\n title\n image {\n ...ImageFragment\n }\n product {\n handle\n title\n id\n }\n selectedOptions {\n name\n value\n }\n }\n }\n }\n }\n }\n cost {\n subtotalAmount {\n ...MoneyFragment\n }\n totalAmount {\n ...MoneyFragment\n }\n totalDutyAmount {\n ...MoneyFragment\n }\n totalTaxAmount {\n ...MoneyFragment\n }\n }\n note\n attributes {\n key\n value\n }\n discountCodes {\n code\n }\n}\n\nfragment MoneyFragment on MoneyV2 {\n currencyCode\n amount\n}\nfragment ImageFragment on Image {\n id\n url\n altText\n width\n height\n}\n`;\n"],"names":[],"mappings":";;AAAa,MAAA,cAAc,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASnD;AAAA;AAGW,MAAA,aAAa,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASlD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,0BAA0B,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAc/D;AAAA;AAGW,MAAA,uBAAuB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS5D;AAAA;AAGW,MAAA,0BAA0B,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS/D;AAAA;AAGW,MAAA,YAAY,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOjD;AAAA;;;;;;;;;;"}
@@ -1,5 +1,3 @@
1
- "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
1
  const CartLineAdd = (cartFragment) => `
4
2
  mutation CartLineAdd($cartId: ID!, $lines: [CartLineInput!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {
5
3
  cartLinesAdd(cartId: $cartId, lines: $lines) {
@@ -102,13 +100,15 @@ query CartQuery($id: ID!, $numCartLines: Int = 250, $country: CountryCode = ZZ)
102
100
 
103
101
  ${cartFragment}
104
102
  `;
105
- exports.CartAttributesUpdate = CartAttributesUpdate;
106
- exports.CartBuyerIdentityUpdate = CartBuyerIdentityUpdate;
107
- exports.CartCreate = CartCreate;
108
- exports.CartDiscountCodesUpdate = CartDiscountCodesUpdate;
109
- exports.CartLineAdd = CartLineAdd;
110
- exports.CartLineRemove = CartLineRemove;
111
- exports.CartLineUpdate = CartLineUpdate;
112
- exports.CartNoteUpdate = CartNoteUpdate;
113
- exports.CartQuery = CartQuery;
114
- //# sourceMappingURL=cart-queries.cjs.map
103
+ export {
104
+ CartAttributesUpdate,
105
+ CartBuyerIdentityUpdate,
106
+ CartCreate,
107
+ CartDiscountCodesUpdate,
108
+ CartLineAdd,
109
+ CartLineRemove,
110
+ CartLineUpdate,
111
+ CartNoteUpdate,
112
+ CartQuery
113
+ };
114
+ //# sourceMappingURL=cart-queries.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"cart-queries.cjs","sources":["../../src/cart-queries.ts"],"sourcesContent":["export const CartLineAdd = (cartFragment: string) => `\nmutation CartLineAdd($cartId: ID!, $lines: [CartLineInput!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesAdd(cartId: $cartId, lines: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartCreate = (cartFragment: string) => `\nmutation CartCreate($input: CartInput!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartCreate(input: $input) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartLineRemove = (cartFragment: string) => `\nmutation CartLineRemove($cartId: ID!, $lines: [ID!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesRemove(cartId: $cartId, lineIds: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartLineUpdate = (cartFragment: string) => `\nmutation CartLineUpdate($cartId: ID!, $lines: [CartLineUpdateInput!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesUpdate(cartId: $cartId, lines: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartNoteUpdate = (cartFragment: string) => `\nmutation CartNoteUpdate($cartId: ID!, $note: String, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartNoteUpdate(cartId: $cartId, note: $note) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartBuyerIdentityUpdate = (cartFragment: string) => `\nmutation CartBuyerIdentityUpdate(\n $cartId: ID!\n $buyerIdentity: CartBuyerIdentityInput!\n $numCartLines: Int = 250\n $country: CountryCode = ZZ\n) @inContext(country: $country) {\n cartBuyerIdentityUpdate(cartId: $cartId, buyerIdentity: $buyerIdentity) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartAttributesUpdate = (cartFragment: string) => `\nmutation CartAttributesUpdate($attributes: [AttributeInput!]!, $cartId: ID!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartAttributesUpdate(attributes: $attributes, cartId: $cartId) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartDiscountCodesUpdate = (cartFragment: string) => `\nmutation CartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!], $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartDiscountCodesUpdate(cartId: $cartId, discountCodes: $discountCodes) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartQuery = (cartFragment: string) => `\nquery CartQuery($id: ID!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cart(id: $id) {\n ...CartFragment\n }\n}\n\n${cartFragment}\n`;\n\nexport const defaultCartFragment = `\nfragment CartFragment on Cart {\n id\n checkoutUrl\n totalQuantity\n buyerIdentity {\n countryCode\n customer {\n id\n email\n firstName\n lastName\n displayName\n }\n email\n phone\n }\n lines(first: $numCartLines) {\n edges {\n node {\n id\n quantity\n attributes {\n key\n value\n }\n cost {\n totalAmount {\n amount\n currencyCode\n }\n compareAtAmountPerQuantity {\n amount\n currencyCode\n }\n }\n merchandise {\n ... on ProductVariant {\n id\n availableForSale\n compareAtPriceV2 {\n ...MoneyFragment\n }\n priceV2 {\n ...MoneyFragment\n }\n requiresShipping\n title\n image {\n ...ImageFragment\n }\n product {\n handle\n title\n id\n }\n selectedOptions {\n name\n value\n }\n }\n }\n }\n }\n }\n cost {\n subtotalAmount {\n ...MoneyFragment\n }\n totalAmount {\n ...MoneyFragment\n }\n totalDutyAmount {\n ...MoneyFragment\n }\n totalTaxAmount {\n ...MoneyFragment\n }\n }\n note\n attributes {\n key\n value\n }\n discountCodes {\n code\n }\n}\n\nfragment MoneyFragment on MoneyV2 {\n currencyCode\n amount\n}\nfragment ImageFragment on Image {\n id\n url\n altText\n width\n height\n}\n`;\n"],"names":[],"mappings":";;AAAa,MAAA,cAAc,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASnD;AAAA;AAGW,MAAA,aAAa,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASlD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,0BAA0B,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAc/D;AAAA;AAGW,MAAA,uBAAuB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS5D;AAAA;AAGW,MAAA,0BAA0B,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS/D;AAAA;AAGW,MAAA,YAAY,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOjD;AAAA;;;;;;;;;;"}
1
+ {"version":3,"file":"cart-queries.mjs","sources":["../../src/cart-queries.ts"],"sourcesContent":["export const CartLineAdd = (cartFragment: string) => `\nmutation CartLineAdd($cartId: ID!, $lines: [CartLineInput!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesAdd(cartId: $cartId, lines: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartCreate = (cartFragment: string) => `\nmutation CartCreate($input: CartInput!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartCreate(input: $input) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartLineRemove = (cartFragment: string) => `\nmutation CartLineRemove($cartId: ID!, $lines: [ID!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesRemove(cartId: $cartId, lineIds: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartLineUpdate = (cartFragment: string) => `\nmutation CartLineUpdate($cartId: ID!, $lines: [CartLineUpdateInput!]!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartLinesUpdate(cartId: $cartId, lines: $lines) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartNoteUpdate = (cartFragment: string) => `\nmutation CartNoteUpdate($cartId: ID!, $note: String, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartNoteUpdate(cartId: $cartId, note: $note) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartBuyerIdentityUpdate = (cartFragment: string) => `\nmutation CartBuyerIdentityUpdate(\n $cartId: ID!\n $buyerIdentity: CartBuyerIdentityInput!\n $numCartLines: Int = 250\n $country: CountryCode = ZZ\n) @inContext(country: $country) {\n cartBuyerIdentityUpdate(cartId: $cartId, buyerIdentity: $buyerIdentity) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartAttributesUpdate = (cartFragment: string) => `\nmutation CartAttributesUpdate($attributes: [AttributeInput!]!, $cartId: ID!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartAttributesUpdate(attributes: $attributes, cartId: $cartId) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartDiscountCodesUpdate = (cartFragment: string) => `\nmutation CartDiscountCodesUpdate($cartId: ID!, $discountCodes: [String!], $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cartDiscountCodesUpdate(cartId: $cartId, discountCodes: $discountCodes) {\n cart {\n ...CartFragment\n }\n }\n}\n\n${cartFragment}\n`;\n\nexport const CartQuery = (cartFragment: string) => `\nquery CartQuery($id: ID!, $numCartLines: Int = 250, $country: CountryCode = ZZ) @inContext(country: $country) {\n cart(id: $id) {\n ...CartFragment\n }\n}\n\n${cartFragment}\n`;\n\nexport const defaultCartFragment = `\nfragment CartFragment on Cart {\n id\n checkoutUrl\n totalQuantity\n buyerIdentity {\n countryCode\n customer {\n id\n email\n firstName\n lastName\n displayName\n }\n email\n phone\n }\n lines(first: $numCartLines) {\n edges {\n node {\n id\n quantity\n attributes {\n key\n value\n }\n cost {\n totalAmount {\n amount\n currencyCode\n }\n compareAtAmountPerQuantity {\n amount\n currencyCode\n }\n }\n merchandise {\n ... on ProductVariant {\n id\n availableForSale\n compareAtPriceV2 {\n ...MoneyFragment\n }\n priceV2 {\n ...MoneyFragment\n }\n requiresShipping\n title\n image {\n ...ImageFragment\n }\n product {\n handle\n title\n id\n }\n selectedOptions {\n name\n value\n }\n }\n }\n }\n }\n }\n cost {\n subtotalAmount {\n ...MoneyFragment\n }\n totalAmount {\n ...MoneyFragment\n }\n totalDutyAmount {\n ...MoneyFragment\n }\n totalTaxAmount {\n ...MoneyFragment\n }\n }\n note\n attributes {\n key\n value\n }\n discountCodes {\n code\n }\n}\n\nfragment MoneyFragment on MoneyV2 {\n currencyCode\n amount\n}\nfragment ImageFragment on Image {\n id\n url\n altText\n width\n height\n}\n`;\n"],"names":[],"mappings":"AAAa,MAAA,cAAc,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASnD;AAAA;AAGW,MAAA,aAAa,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASlD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,iBAAiB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAStD;AAAA;AAGW,MAAA,0BAA0B,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAc/D;AAAA;AAGW,MAAA,uBAAuB,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS5D;AAAA;AAGW,MAAA,0BAA0B,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS/D;AAAA;AAGW,MAAA,YAAY,CAAC,iBAAyB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOjD;AAAA;"}
@@ -1,3 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
1
3
  function flattenConnection(connection) {
2
4
  if (!connection) {
3
5
  const noConnectionErr = `flattenConnection(): needs a 'connection' to flatten, but received '${connection}' instead`;
@@ -19,7 +21,5 @@ function flattenConnection(connection) {
19
21
  }
20
22
  return [];
21
23
  }
22
- export {
23
- flattenConnection
24
- };
24
+ exports.flattenConnection = flattenConnection;
25
25
  //# sourceMappingURL=flatten-connection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flatten-connection.js","sources":["../../src/flatten-connection.ts"],"sourcesContent":["import type {PartialDeep} from 'type-fest';\n\n/**\n * The `flattenConnection` utility transforms a connection object from the Storefront API (for example, [Product-related connections](https://shopify.dev/api/storefront/reference/products/product)) into a flat array of nodes.\n * The utility works with either `nodes` or `edges.node`.\n *\n * If `connection` is null or undefined, will return an empty array instead in production. In development, an error will be thrown.\n */\nexport function flattenConnection<T>(\n connection?: PartialDeep<GraphQLConnection<T>, {recurseIntoArrays: true}>\n): PartialDeep<T, {recurseIntoArrays: true}>[] {\n if (!connection) {\n const noConnectionErr = `flattenConnection(): needs a 'connection' to flatten, but received '${connection}' instead`;\n if (__HYDROGEN_DEV__) {\n throw new Error(noConnectionErr);\n } else {\n console.error(noConnectionErr);\n return [];\n }\n }\n\n if (connection.nodes) {\n return connection.nodes as PartialDeep<T, {recurseIntoArrays: true}>[];\n }\n\n if (connection.edges) {\n return connection.edges.map((edge) => {\n if (!edge?.node) {\n throw new Error('Connection edges must contain nodes');\n }\n return edge.node;\n });\n }\n\n if (__HYDROGEN_DEV__) {\n console.warn(\n `The connection did not contain either \"nodes\" or \"edges.node\". A empty array will be returned in its place.`\n );\n }\n\n return [];\n}\n\ninterface GraphQLConnection<T> {\n edges?: {node: T}[];\n nodes?: T[];\n}\n"],"names":[],"mappings":"AAQO,SAAS,kBACd,YAC6C;AAC7C,MAAI,CAAC,YAAY;AACf,UAAM,kBAAkB,uEAAuE;AAGxF;AACL,cAAQ,MAAM,eAAe;AAC7B,aAAO;IACT;AAAA,EACF;AAEA,MAAI,WAAW,OAAO;AACpB,WAAO,WAAW;AAAA,EACpB;AAEA,MAAI,WAAW,OAAO;AACpB,WAAO,WAAW,MAAM,IAAI,CAAC,SAAS;AAChC,UAAA,EAAC,6BAAM,OAAM;AACT,cAAA,IAAI,MAAM,qCAAqC;AAAA,MACvD;AACA,aAAO,KAAK;AAAA,IAAA,CACb;AAAA,EACH;AAQA,SAAO;AACT;"}
1
+ {"version":3,"file":"flatten-connection.js","sources":["../../src/flatten-connection.ts"],"sourcesContent":["import type {PartialDeep} from 'type-fest';\n\n/**\n * The `flattenConnection` utility transforms a connection object from the Storefront API (for example, [Product-related connections](https://shopify.dev/api/storefront/reference/products/product)) into a flat array of nodes.\n * The utility works with either `nodes` or `edges.node`.\n *\n * If `connection` is null or undefined, will return an empty array instead in production. In development, an error will be thrown.\n */\nexport function flattenConnection<T>(\n connection?: PartialDeep<GraphQLConnection<T>, {recurseIntoArrays: true}>\n): PartialDeep<T, {recurseIntoArrays: true}>[] {\n if (!connection) {\n const noConnectionErr = `flattenConnection(): needs a 'connection' to flatten, but received '${connection}' instead`;\n if (__HYDROGEN_DEV__) {\n throw new Error(noConnectionErr);\n } else {\n console.error(noConnectionErr);\n return [];\n }\n }\n\n if (connection.nodes) {\n return connection.nodes as PartialDeep<T, {recurseIntoArrays: true}>[];\n }\n\n if (connection.edges) {\n return connection.edges.map((edge) => {\n if (!edge?.node) {\n throw new Error('Connection edges must contain nodes');\n }\n return edge.node;\n });\n }\n\n if (__HYDROGEN_DEV__) {\n console.warn(\n `The connection did not contain either \"nodes\" or \"edges.node\". A empty array will be returned in its place.`\n );\n }\n\n return [];\n}\n\ninterface GraphQLConnection<T> {\n edges?: {node: T}[];\n nodes?: T[];\n}\n"],"names":[],"mappings":";;AAQO,SAAS,kBACd,YAC6C;AAC7C,MAAI,CAAC,YAAY;AACf,UAAM,kBAAkB,uEAAuE;AAGxF;AACL,cAAQ,MAAM,eAAe;AAC7B,aAAO;IACT;AAAA,EACF;AAEA,MAAI,WAAW,OAAO;AACpB,WAAO,WAAW;AAAA,EACpB;AAEA,MAAI,WAAW,OAAO;AACpB,WAAO,WAAW,MAAM,IAAI,CAAC,SAAS;AAChC,UAAA,EAAC,6BAAM,OAAM;AACT,cAAA,IAAI,MAAM,qCAAqC;AAAA,MACvD;AACA,aAAO,KAAK;AAAA,IAAA,CACb;AAAA,EACH;AAQA,SAAO;AACT;;"}
@@ -1,5 +1,3 @@
1
- "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
1
  function flattenConnection(connection) {
4
2
  if (!connection) {
5
3
  const noConnectionErr = `flattenConnection(): needs a 'connection' to flatten, but received '${connection}' instead`;
@@ -21,5 +19,7 @@ function flattenConnection(connection) {
21
19
  }
22
20
  return [];
23
21
  }
24
- exports.flattenConnection = flattenConnection;
25
- //# sourceMappingURL=flatten-connection.cjs.map
22
+ export {
23
+ flattenConnection
24
+ };
25
+ //# sourceMappingURL=flatten-connection.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"flatten-connection.cjs","sources":["../../src/flatten-connection.ts"],"sourcesContent":["import type {PartialDeep} from 'type-fest';\n\n/**\n * The `flattenConnection` utility transforms a connection object from the Storefront API (for example, [Product-related connections](https://shopify.dev/api/storefront/reference/products/product)) into a flat array of nodes.\n * The utility works with either `nodes` or `edges.node`.\n *\n * If `connection` is null or undefined, will return an empty array instead in production. In development, an error will be thrown.\n */\nexport function flattenConnection<T>(\n connection?: PartialDeep<GraphQLConnection<T>, {recurseIntoArrays: true}>\n): PartialDeep<T, {recurseIntoArrays: true}>[] {\n if (!connection) {\n const noConnectionErr = `flattenConnection(): needs a 'connection' to flatten, but received '${connection}' instead`;\n if (__HYDROGEN_DEV__) {\n throw new Error(noConnectionErr);\n } else {\n console.error(noConnectionErr);\n return [];\n }\n }\n\n if (connection.nodes) {\n return connection.nodes as PartialDeep<T, {recurseIntoArrays: true}>[];\n }\n\n if (connection.edges) {\n return connection.edges.map((edge) => {\n if (!edge?.node) {\n throw new Error('Connection edges must contain nodes');\n }\n return edge.node;\n });\n }\n\n if (__HYDROGEN_DEV__) {\n console.warn(\n `The connection did not contain either \"nodes\" or \"edges.node\". A empty array will be returned in its place.`\n );\n }\n\n return [];\n}\n\ninterface GraphQLConnection<T> {\n edges?: {node: T}[];\n nodes?: T[];\n}\n"],"names":[],"mappings":";;AAQO,SAAS,kBACd,YAC6C;AAC7C,MAAI,CAAC,YAAY;AACf,UAAM,kBAAkB,uEAAuE;AAGxF;AACL,cAAQ,MAAM,eAAe;AAC7B,aAAO;IACT;AAAA,EACF;AAEA,MAAI,WAAW,OAAO;AACpB,WAAO,WAAW;AAAA,EACpB;AAEA,MAAI,WAAW,OAAO;AACpB,WAAO,WAAW,MAAM,IAAI,CAAC,SAAS;AAChC,UAAA,EAAC,6BAAM,OAAM;AACT,cAAA,IAAI,MAAM,qCAAqC;AAAA,MACvD;AACA,aAAO,KAAK;AAAA,IAAA,CACb;AAAA,EACH;AAQA,SAAO;AACT;;"}
1
+ {"version":3,"file":"flatten-connection.mjs","sources":["../../src/flatten-connection.ts"],"sourcesContent":["import type {PartialDeep} from 'type-fest';\n\n/**\n * The `flattenConnection` utility transforms a connection object from the Storefront API (for example, [Product-related connections](https://shopify.dev/api/storefront/reference/products/product)) into a flat array of nodes.\n * The utility works with either `nodes` or `edges.node`.\n *\n * If `connection` is null or undefined, will return an empty array instead in production. In development, an error will be thrown.\n */\nexport function flattenConnection<T>(\n connection?: PartialDeep<GraphQLConnection<T>, {recurseIntoArrays: true}>\n): PartialDeep<T, {recurseIntoArrays: true}>[] {\n if (!connection) {\n const noConnectionErr = `flattenConnection(): needs a 'connection' to flatten, but received '${connection}' instead`;\n if (__HYDROGEN_DEV__) {\n throw new Error(noConnectionErr);\n } else {\n console.error(noConnectionErr);\n return [];\n }\n }\n\n if (connection.nodes) {\n return connection.nodes as PartialDeep<T, {recurseIntoArrays: true}>[];\n }\n\n if (connection.edges) {\n return connection.edges.map((edge) => {\n if (!edge?.node) {\n throw new Error('Connection edges must contain nodes');\n }\n return edge.node;\n });\n }\n\n if (__HYDROGEN_DEV__) {\n console.warn(\n `The connection did not contain either \"nodes\" or \"edges.node\". A empty array will be returned in its place.`\n );\n }\n\n return [];\n}\n\ninterface GraphQLConnection<T> {\n edges?: {node: T}[];\n nodes?: T[];\n}\n"],"names":[],"mappings":"AAQO,SAAS,kBACd,YAC6C;AAC7C,MAAI,CAAC,YAAY;AACf,UAAM,kBAAkB,uEAAuE;AAGxF;AACL,cAAQ,MAAM,eAAe;AAC7B,aAAO;IACT;AAAA,EACF;AAEA,MAAI,WAAW,OAAO;AACpB,WAAO,WAAW;AAAA,EACpB;AAEA,MAAI,WAAW,OAAO;AACpB,WAAO,WAAW,MAAM,IAAI,CAAC,SAAS;AAChC,UAAA,EAAC,6BAAM,OAAM;AACT,cAAA,IAAI,MAAM,qCAAqC;AAAA,MACvD;AACA,aAAO,KAAK;AAAA,IAAA,CACb;AAAA,EACH;AAQA,SAAO;AACT;"}