@shopify/hydrogen-react 2026.4.0 → 2026.4.2

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 (631) hide show
  1. package/dist/browser-dev/AddToCartButton.mjs +60 -71
  2. package/dist/browser-dev/AddToCartButton.mjs.map +1 -1
  3. package/dist/browser-dev/BaseButton.mjs +20 -26
  4. package/dist/browser-dev/BaseButton.mjs.map +1 -1
  5. package/dist/browser-dev/BuyNowButton.mjs +40 -45
  6. package/dist/browser-dev/BuyNowButton.mjs.map +1 -1
  7. package/dist/browser-dev/CartCheckoutButton.mjs +28 -23
  8. package/dist/browser-dev/CartCheckoutButton.mjs.map +1 -1
  9. package/dist/browser-dev/CartCost.mjs +26 -22
  10. package/dist/browser-dev/CartCost.mjs.map +1 -1
  11. package/dist/browser-dev/CartLineProvider.mjs +23 -18
  12. package/dist/browser-dev/CartLineProvider.mjs.map +1 -1
  13. package/dist/browser-dev/CartLineQuantity.mjs +18 -9
  14. package/dist/browser-dev/CartLineQuantity.mjs.map +1 -1
  15. package/dist/browser-dev/CartLineQuantityAdjustButton.mjs +48 -45
  16. package/dist/browser-dev/CartLineQuantityAdjustButton.mjs.map +1 -1
  17. package/dist/browser-dev/CartProvider.mjs +315 -385
  18. package/dist/browser-dev/CartProvider.mjs.map +1 -1
  19. package/dist/browser-dev/ExternalVideo.mjs +35 -47
  20. package/dist/browser-dev/ExternalVideo.mjs.map +1 -1
  21. package/dist/browser-dev/Image.mjs +335 -340
  22. package/dist/browser-dev/Image.mjs.map +1 -1
  23. package/dist/browser-dev/MediaFile.mjs +39 -61
  24. package/dist/browser-dev/MediaFile.mjs.map +1 -1
  25. package/dist/browser-dev/ModelViewer.mjs +115 -139
  26. package/dist/browser-dev/ModelViewer.mjs.map +1 -1
  27. package/dist/browser-dev/Money.mjs +53 -39
  28. package/dist/browser-dev/Money.mjs.map +1 -1
  29. package/dist/browser-dev/ProductPrice.mjs +44 -61
  30. package/dist/browser-dev/ProductPrice.mjs.map +1 -1
  31. package/dist/browser-dev/ProductProvider.mjs +147 -179
  32. package/dist/browser-dev/ProductProvider.mjs.map +1 -1
  33. package/dist/browser-dev/RichText.components.mjs +36 -46
  34. package/dist/browser-dev/RichText.components.mjs.map +1 -1
  35. package/dist/browser-dev/RichText.mjs +111 -154
  36. package/dist/browser-dev/RichText.mjs.map +1 -1
  37. package/dist/browser-dev/ShopPayButton.mjs +53 -81
  38. package/dist/browser-dev/ShopPayButton.mjs.map +1 -1
  39. package/dist/browser-dev/ShopifyProvider.mjs +71 -84
  40. package/dist/browser-dev/ShopifyProvider.mjs.map +1 -1
  41. package/dist/browser-dev/Video.mjs +35 -52
  42. package/dist/browser-dev/Video.mjs.map +1 -1
  43. package/dist/browser-dev/analytics-constants.mjs +41 -43
  44. package/dist/browser-dev/analytics-constants.mjs.map +1 -1
  45. package/dist/browser-dev/analytics-schema-custom-storefront-customer-tracking.mjs +127 -214
  46. package/dist/browser-dev/analytics-schema-custom-storefront-customer-tracking.mjs.map +1 -1
  47. package/dist/browser-dev/analytics-schema-trekkie-storefront-page-view.mjs +39 -50
  48. package/dist/browser-dev/analytics-schema-trekkie-storefront-page-view.mjs.map +1 -1
  49. package/dist/browser-dev/analytics-utils.mjs +78 -56
  50. package/dist/browser-dev/analytics-utils.mjs.map +1 -1
  51. package/dist/browser-dev/analytics.mjs +112 -155
  52. package/dist/browser-dev/analytics.mjs.map +1 -1
  53. package/dist/browser-dev/cart-constants.mjs +11 -15
  54. package/dist/browser-dev/cart-constants.mjs.map +1 -1
  55. package/dist/browser-dev/cart-hooks.mjs +42 -57
  56. package/dist/browser-dev/cart-hooks.mjs.map +1 -1
  57. package/dist/browser-dev/cart-queries.mjs +59 -135
  58. package/dist/browser-dev/cart-queries.mjs.map +1 -1
  59. package/dist/browser-dev/codegen.helpers.mjs +31 -20
  60. package/dist/browser-dev/codegen.helpers.mjs.map +1 -1
  61. package/dist/browser-dev/cookies-utils.mjs +44 -42
  62. package/dist/browser-dev/cookies-utils.mjs.map +1 -1
  63. package/dist/browser-dev/flatten-connection.mjs +23 -29
  64. package/dist/browser-dev/flatten-connection.mjs.map +1 -1
  65. package/dist/browser-dev/getProductOptions.mjs +248 -226
  66. package/dist/browser-dev/getProductOptions.mjs.map +1 -1
  67. package/dist/browser-dev/index.mjs +15 -70
  68. package/dist/browser-dev/load-script.mjs +38 -49
  69. package/dist/browser-dev/load-script.mjs.map +1 -1
  70. package/dist/browser-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs +175 -123
  71. package/dist/browser-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs.map +1 -1
  72. package/dist/browser-dev/optionValueDecoder.mjs +104 -86
  73. package/dist/browser-dev/optionValueDecoder.mjs.map +1 -1
  74. package/dist/browser-dev/packages/hydrogen-react/package.mjs +6 -0
  75. package/dist/browser-dev/packages/hydrogen-react/package.mjs.map +1 -0
  76. package/dist/browser-dev/parse-metafield.mjs +122 -134
  77. package/dist/browser-dev/parse-metafield.mjs.map +1 -1
  78. package/dist/browser-dev/storefront-api-constants.mjs +6 -5
  79. package/dist/browser-dev/storefront-api-constants.mjs.map +1 -1
  80. package/dist/browser-dev/storefront-client.mjs +62 -102
  81. package/dist/browser-dev/storefront-client.mjs.map +1 -1
  82. package/dist/browser-dev/tracking-utils.mjs +68 -88
  83. package/dist/browser-dev/tracking-utils.mjs.map +1 -1
  84. package/dist/browser-dev/useCartAPIStateMachine.mjs +188 -346
  85. package/dist/browser-dev/useCartAPIStateMachine.mjs.map +1 -1
  86. package/dist/browser-dev/useCartActions.mjs +197 -172
  87. package/dist/browser-dev/useCartActions.mjs.map +1 -1
  88. package/dist/browser-dev/useMachine.mjs +50 -62
  89. package/dist/browser-dev/useMachine.mjs.map +1 -1
  90. package/dist/browser-dev/useMoney.mjs +176 -154
  91. package/dist/browser-dev/useMoney.mjs.map +1 -1
  92. package/dist/browser-dev/useSelectedOptionInUrlParam.mjs +17 -27
  93. package/dist/browser-dev/useSelectedOptionInUrlParam.mjs.map +1 -1
  94. package/dist/browser-dev/useShopifyCookies.mjs +123 -138
  95. package/dist/browser-dev/useShopifyCookies.mjs.map +1 -1
  96. package/dist/browser-prod/AddToCartButton.mjs +60 -71
  97. package/dist/browser-prod/AddToCartButton.mjs.map +1 -1
  98. package/dist/browser-prod/BaseButton.mjs +20 -26
  99. package/dist/browser-prod/BaseButton.mjs.map +1 -1
  100. package/dist/browser-prod/BuyNowButton.mjs +40 -45
  101. package/dist/browser-prod/BuyNowButton.mjs.map +1 -1
  102. package/dist/browser-prod/CartCheckoutButton.mjs +28 -23
  103. package/dist/browser-prod/CartCheckoutButton.mjs.map +1 -1
  104. package/dist/browser-prod/CartCost.mjs +26 -22
  105. package/dist/browser-prod/CartCost.mjs.map +1 -1
  106. package/dist/browser-prod/CartLineProvider.mjs +23 -18
  107. package/dist/browser-prod/CartLineProvider.mjs.map +1 -1
  108. package/dist/browser-prod/CartLineQuantity.mjs +18 -9
  109. package/dist/browser-prod/CartLineQuantity.mjs.map +1 -1
  110. package/dist/browser-prod/CartLineQuantityAdjustButton.mjs +48 -45
  111. package/dist/browser-prod/CartLineQuantityAdjustButton.mjs.map +1 -1
  112. package/dist/browser-prod/CartProvider.mjs +315 -385
  113. package/dist/browser-prod/CartProvider.mjs.map +1 -1
  114. package/dist/browser-prod/ExternalVideo.mjs +35 -47
  115. package/dist/browser-prod/ExternalVideo.mjs.map +1 -1
  116. package/dist/browser-prod/Image.mjs +326 -325
  117. package/dist/browser-prod/Image.mjs.map +1 -1
  118. package/dist/browser-prod/MediaFile.mjs +44 -63
  119. package/dist/browser-prod/MediaFile.mjs.map +1 -1
  120. package/dist/browser-prod/ModelViewer.mjs +117 -135
  121. package/dist/browser-prod/ModelViewer.mjs.map +1 -1
  122. package/dist/browser-prod/Money.mjs +53 -39
  123. package/dist/browser-prod/Money.mjs.map +1 -1
  124. package/dist/browser-prod/ProductPrice.mjs +44 -61
  125. package/dist/browser-prod/ProductPrice.mjs.map +1 -1
  126. package/dist/browser-prod/ProductProvider.mjs +147 -179
  127. package/dist/browser-prod/ProductProvider.mjs.map +1 -1
  128. package/dist/browser-prod/RichText.components.mjs +36 -46
  129. package/dist/browser-prod/RichText.components.mjs.map +1 -1
  130. package/dist/browser-prod/RichText.mjs +111 -154
  131. package/dist/browser-prod/RichText.mjs.map +1 -1
  132. package/dist/browser-prod/ShopPayButton.mjs +53 -81
  133. package/dist/browser-prod/ShopPayButton.mjs.map +1 -1
  134. package/dist/browser-prod/ShopifyProvider.mjs +71 -84
  135. package/dist/browser-prod/ShopifyProvider.mjs.map +1 -1
  136. package/dist/browser-prod/Video.mjs +35 -52
  137. package/dist/browser-prod/Video.mjs.map +1 -1
  138. package/dist/browser-prod/analytics-constants.mjs +41 -43
  139. package/dist/browser-prod/analytics-constants.mjs.map +1 -1
  140. package/dist/browser-prod/analytics-schema-custom-storefront-customer-tracking.mjs +127 -214
  141. package/dist/browser-prod/analytics-schema-custom-storefront-customer-tracking.mjs.map +1 -1
  142. package/dist/browser-prod/analytics-schema-trekkie-storefront-page-view.mjs +39 -50
  143. package/dist/browser-prod/analytics-schema-trekkie-storefront-page-view.mjs.map +1 -1
  144. package/dist/browser-prod/analytics-utils.mjs +78 -56
  145. package/dist/browser-prod/analytics-utils.mjs.map +1 -1
  146. package/dist/browser-prod/analytics.mjs +111 -153
  147. package/dist/browser-prod/analytics.mjs.map +1 -1
  148. package/dist/browser-prod/cart-constants.mjs +11 -15
  149. package/dist/browser-prod/cart-constants.mjs.map +1 -1
  150. package/dist/browser-prod/cart-hooks.mjs +42 -57
  151. package/dist/browser-prod/cart-hooks.mjs.map +1 -1
  152. package/dist/browser-prod/cart-queries.mjs +59 -135
  153. package/dist/browser-prod/cart-queries.mjs.map +1 -1
  154. package/dist/browser-prod/codegen.helpers.mjs +31 -20
  155. package/dist/browser-prod/codegen.helpers.mjs.map +1 -1
  156. package/dist/browser-prod/cookies-utils.mjs +44 -42
  157. package/dist/browser-prod/cookies-utils.mjs.map +1 -1
  158. package/dist/browser-prod/flatten-connection.mjs +23 -25
  159. package/dist/browser-prod/flatten-connection.mjs.map +1 -1
  160. package/dist/browser-prod/getProductOptions.mjs +248 -226
  161. package/dist/browser-prod/getProductOptions.mjs.map +1 -1
  162. package/dist/browser-prod/index.mjs +15 -70
  163. package/dist/browser-prod/load-script.mjs +38 -49
  164. package/dist/browser-prod/load-script.mjs.map +1 -1
  165. package/dist/browser-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs +175 -123
  166. package/dist/browser-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs.map +1 -1
  167. package/dist/browser-prod/optionValueDecoder.mjs +104 -86
  168. package/dist/browser-prod/optionValueDecoder.mjs.map +1 -1
  169. package/dist/browser-prod/packages/hydrogen-react/package.mjs +6 -0
  170. package/dist/browser-prod/packages/hydrogen-react/package.mjs.map +1 -0
  171. package/dist/browser-prod/parse-metafield.mjs +134 -146
  172. package/dist/browser-prod/parse-metafield.mjs.map +1 -1
  173. package/dist/browser-prod/storefront-api-constants.mjs +6 -5
  174. package/dist/browser-prod/storefront-api-constants.mjs.map +1 -1
  175. package/dist/browser-prod/storefront-client.mjs +56 -84
  176. package/dist/browser-prod/storefront-client.mjs.map +1 -1
  177. package/dist/browser-prod/tracking-utils.mjs +68 -88
  178. package/dist/browser-prod/tracking-utils.mjs.map +1 -1
  179. package/dist/browser-prod/useCartAPIStateMachine.mjs +188 -346
  180. package/dist/browser-prod/useCartAPIStateMachine.mjs.map +1 -1
  181. package/dist/browser-prod/useCartActions.mjs +197 -172
  182. package/dist/browser-prod/useCartActions.mjs.map +1 -1
  183. package/dist/browser-prod/useMachine.mjs +50 -62
  184. package/dist/browser-prod/useMachine.mjs.map +1 -1
  185. package/dist/browser-prod/useMoney.mjs +176 -154
  186. package/dist/browser-prod/useMoney.mjs.map +1 -1
  187. package/dist/browser-prod/useSelectedOptionInUrlParam.mjs +17 -27
  188. package/dist/browser-prod/useSelectedOptionInUrlParam.mjs.map +1 -1
  189. package/dist/browser-prod/useShopifyCookies.mjs +123 -138
  190. package/dist/browser-prod/useShopifyCookies.mjs.map +1 -1
  191. package/dist/node-dev/AddToCartButton.js +64 -73
  192. package/dist/node-dev/AddToCartButton.js.map +1 -1
  193. package/dist/node-dev/AddToCartButton.mjs +60 -71
  194. package/dist/node-dev/AddToCartButton.mjs.map +1 -1
  195. package/dist/node-dev/BaseButton.js +21 -26
  196. package/dist/node-dev/BaseButton.js.map +1 -1
  197. package/dist/node-dev/BaseButton.mjs +20 -26
  198. package/dist/node-dev/BaseButton.mjs.map +1 -1
  199. package/dist/node-dev/BuyNowButton.js +42 -46
  200. package/dist/node-dev/BuyNowButton.js.map +1 -1
  201. package/dist/node-dev/BuyNowButton.mjs +40 -45
  202. package/dist/node-dev/BuyNowButton.mjs.map +1 -1
  203. package/dist/node-dev/CartCheckoutButton.js +30 -24
  204. package/dist/node-dev/CartCheckoutButton.js.map +1 -1
  205. package/dist/node-dev/CartCheckoutButton.mjs +28 -23
  206. package/dist/node-dev/CartCheckoutButton.mjs.map +1 -1
  207. package/dist/node-dev/CartCost.js +27 -22
  208. package/dist/node-dev/CartCost.js.map +1 -1
  209. package/dist/node-dev/CartCost.mjs +26 -22
  210. package/dist/node-dev/CartCost.mjs.map +1 -1
  211. package/dist/node-dev/CartLineProvider.js +24 -17
  212. package/dist/node-dev/CartLineProvider.js.map +1 -1
  213. package/dist/node-dev/CartLineProvider.mjs +23 -18
  214. package/dist/node-dev/CartLineProvider.mjs.map +1 -1
  215. package/dist/node-dev/CartLineQuantity.js +19 -9
  216. package/dist/node-dev/CartLineQuantity.js.map +1 -1
  217. package/dist/node-dev/CartLineQuantity.mjs +18 -9
  218. package/dist/node-dev/CartLineQuantity.mjs.map +1 -1
  219. package/dist/node-dev/CartLineQuantityAdjustButton.js +50 -46
  220. package/dist/node-dev/CartLineQuantityAdjustButton.js.map +1 -1
  221. package/dist/node-dev/CartLineQuantityAdjustButton.mjs +48 -45
  222. package/dist/node-dev/CartLineQuantityAdjustButton.mjs.map +1 -1
  223. package/dist/node-dev/CartProvider.js +317 -385
  224. package/dist/node-dev/CartProvider.js.map +1 -1
  225. package/dist/node-dev/CartProvider.mjs +315 -385
  226. package/dist/node-dev/CartProvider.mjs.map +1 -1
  227. package/dist/node-dev/ExternalVideo.js +36 -47
  228. package/dist/node-dev/ExternalVideo.js.map +1 -1
  229. package/dist/node-dev/ExternalVideo.mjs +35 -47
  230. package/dist/node-dev/ExternalVideo.mjs.map +1 -1
  231. package/dist/node-dev/Image.js +337 -355
  232. package/dist/node-dev/Image.js.map +1 -1
  233. package/dist/node-dev/Image.mjs +335 -340
  234. package/dist/node-dev/Image.mjs.map +1 -1
  235. package/dist/node-dev/MediaFile.js +42 -63
  236. package/dist/node-dev/MediaFile.js.map +1 -1
  237. package/dist/node-dev/MediaFile.mjs +39 -61
  238. package/dist/node-dev/MediaFile.mjs.map +1 -1
  239. package/dist/node-dev/ModelViewer.js +116 -139
  240. package/dist/node-dev/ModelViewer.js.map +1 -1
  241. package/dist/node-dev/ModelViewer.mjs +115 -139
  242. package/dist/node-dev/ModelViewer.mjs.map +1 -1
  243. package/dist/node-dev/Money.js +54 -39
  244. package/dist/node-dev/Money.js.map +1 -1
  245. package/dist/node-dev/Money.mjs +53 -39
  246. package/dist/node-dev/Money.mjs.map +1 -1
  247. package/dist/node-dev/ProductPrice.js +45 -61
  248. package/dist/node-dev/ProductPrice.js.map +1 -1
  249. package/dist/node-dev/ProductPrice.mjs +44 -61
  250. package/dist/node-dev/ProductPrice.mjs.map +1 -1
  251. package/dist/node-dev/ProductProvider.js +148 -178
  252. package/dist/node-dev/ProductProvider.js.map +1 -1
  253. package/dist/node-dev/ProductProvider.mjs +147 -179
  254. package/dist/node-dev/ProductProvider.mjs.map +1 -1
  255. package/dist/node-dev/RichText.components.js +37 -46
  256. package/dist/node-dev/RichText.components.js.map +1 -1
  257. package/dist/node-dev/RichText.components.mjs +36 -46
  258. package/dist/node-dev/RichText.components.mjs.map +1 -1
  259. package/dist/node-dev/RichText.js +112 -154
  260. package/dist/node-dev/RichText.js.map +1 -1
  261. package/dist/node-dev/RichText.mjs +111 -154
  262. package/dist/node-dev/RichText.mjs.map +1 -1
  263. package/dist/node-dev/ShopPayButton.js +54 -81
  264. package/dist/node-dev/ShopPayButton.js.map +1 -1
  265. package/dist/node-dev/ShopPayButton.mjs +53 -81
  266. package/dist/node-dev/ShopPayButton.mjs.map +1 -1
  267. package/dist/node-dev/ShopifyProvider.js +73 -83
  268. package/dist/node-dev/ShopifyProvider.js.map +1 -1
  269. package/dist/node-dev/ShopifyProvider.mjs +71 -84
  270. package/dist/node-dev/ShopifyProvider.mjs.map +1 -1
  271. package/dist/node-dev/Video.js +36 -52
  272. package/dist/node-dev/Video.js.map +1 -1
  273. package/dist/node-dev/Video.mjs +35 -52
  274. package/dist/node-dev/Video.mjs.map +1 -1
  275. package/dist/node-dev/_virtual/_rolldown/runtime.js +23 -0
  276. package/dist/node-dev/analytics-constants.js +40 -39
  277. package/dist/node-dev/analytics-constants.js.map +1 -1
  278. package/dist/node-dev/analytics-constants.mjs +41 -43
  279. package/dist/node-dev/analytics-constants.mjs.map +1 -1
  280. package/dist/node-dev/analytics-schema-custom-storefront-customer-tracking.js +128 -210
  281. package/dist/node-dev/analytics-schema-custom-storefront-customer-tracking.js.map +1 -1
  282. package/dist/node-dev/analytics-schema-custom-storefront-customer-tracking.mjs +127 -214
  283. package/dist/node-dev/analytics-schema-custom-storefront-customer-tracking.mjs.map +1 -1
  284. package/dist/node-dev/analytics-schema-trekkie-storefront-page-view.js +40 -51
  285. package/dist/node-dev/analytics-schema-trekkie-storefront-page-view.js.map +1 -1
  286. package/dist/node-dev/analytics-schema-trekkie-storefront-page-view.mjs +39 -50
  287. package/dist/node-dev/analytics-schema-trekkie-storefront-page-view.mjs.map +1 -1
  288. package/dist/node-dev/analytics-utils.js +77 -52
  289. package/dist/node-dev/analytics-utils.js.map +1 -1
  290. package/dist/node-dev/analytics-utils.mjs +78 -56
  291. package/dist/node-dev/analytics-utils.mjs.map +1 -1
  292. package/dist/node-dev/analytics.js +114 -156
  293. package/dist/node-dev/analytics.js.map +1 -1
  294. package/dist/node-dev/analytics.mjs +112 -155
  295. package/dist/node-dev/analytics.mjs.map +1 -1
  296. package/dist/node-dev/cart-constants.js +10 -9
  297. package/dist/node-dev/cart-constants.js.map +1 -1
  298. package/dist/node-dev/cart-constants.mjs +11 -15
  299. package/dist/node-dev/cart-constants.mjs.map +1 -1
  300. package/dist/node-dev/cart-hooks.js +43 -57
  301. package/dist/node-dev/cart-hooks.js.map +1 -1
  302. package/dist/node-dev/cart-hooks.mjs +42 -57
  303. package/dist/node-dev/cart-hooks.mjs.map +1 -1
  304. package/dist/node-dev/cart-queries.js +58 -125
  305. package/dist/node-dev/cart-queries.js.map +1 -1
  306. package/dist/node-dev/cart-queries.mjs +59 -135
  307. package/dist/node-dev/cart-queries.mjs.map +1 -1
  308. package/dist/node-dev/codegen.helpers.js +30 -18
  309. package/dist/node-dev/codegen.helpers.js.map +1 -1
  310. package/dist/node-dev/codegen.helpers.mjs +31 -20
  311. package/dist/node-dev/codegen.helpers.mjs.map +1 -1
  312. package/dist/node-dev/cookies-utils.js +45 -42
  313. package/dist/node-dev/cookies-utils.js.map +1 -1
  314. package/dist/node-dev/cookies-utils.mjs +44 -42
  315. package/dist/node-dev/cookies-utils.mjs.map +1 -1
  316. package/dist/node-dev/flatten-connection.js +22 -28
  317. package/dist/node-dev/flatten-connection.js.map +1 -1
  318. package/dist/node-dev/flatten-connection.mjs +23 -29
  319. package/dist/node-dev/flatten-connection.mjs.map +1 -1
  320. package/dist/node-dev/getProductOptions.js +248 -224
  321. package/dist/node-dev/getProductOptions.js.map +1 -1
  322. package/dist/node-dev/getProductOptions.mjs +248 -226
  323. package/dist/node-dev/getProductOptions.mjs.map +1 -1
  324. package/dist/node-dev/index.js +88 -90
  325. package/dist/node-dev/index.mjs +15 -70
  326. package/dist/node-dev/load-script.js +38 -48
  327. package/dist/node-dev/load-script.js.map +1 -1
  328. package/dist/node-dev/load-script.mjs +38 -49
  329. package/dist/node-dev/load-script.mjs.map +1 -1
  330. package/dist/node-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.js +185 -124
  331. package/dist/node-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.js.map +1 -1
  332. package/dist/node-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs +175 -123
  333. package/dist/node-dev/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs.map +1 -1
  334. package/dist/node-dev/optionValueDecoder.js +103 -84
  335. package/dist/node-dev/optionValueDecoder.js.map +1 -1
  336. package/dist/node-dev/optionValueDecoder.mjs +104 -86
  337. package/dist/node-dev/optionValueDecoder.mjs.map +1 -1
  338. package/dist/node-dev/packages/hydrogen-react/package.js +6 -0
  339. package/dist/node-dev/packages/hydrogen-react/package.js.map +1 -0
  340. package/dist/node-dev/packages/hydrogen-react/package.mjs +6 -0
  341. package/dist/node-dev/packages/hydrogen-react/package.mjs.map +1 -0
  342. package/dist/node-dev/parse-metafield.js +122 -134
  343. package/dist/node-dev/parse-metafield.js.map +1 -1
  344. package/dist/node-dev/parse-metafield.mjs +122 -134
  345. package/dist/node-dev/parse-metafield.mjs.map +1 -1
  346. package/dist/node-dev/storefront-api-constants.js +5 -4
  347. package/dist/node-dev/storefront-api-constants.js.map +1 -1
  348. package/dist/node-dev/storefront-api-constants.mjs +6 -5
  349. package/dist/node-dev/storefront-api-constants.mjs.map +1 -1
  350. package/dist/node-dev/storefront-client.js +62 -101
  351. package/dist/node-dev/storefront-client.js.map +1 -1
  352. package/dist/node-dev/storefront-client.mjs +62 -102
  353. package/dist/node-dev/storefront-client.mjs.map +1 -1
  354. package/dist/node-dev/tracking-utils.js +67 -85
  355. package/dist/node-dev/tracking-utils.js.map +1 -1
  356. package/dist/node-dev/tracking-utils.mjs +68 -88
  357. package/dist/node-dev/tracking-utils.mjs.map +1 -1
  358. package/dist/node-dev/useCartAPIStateMachine.js +192 -349
  359. package/dist/node-dev/useCartAPIStateMachine.js.map +1 -1
  360. package/dist/node-dev/useCartAPIStateMachine.mjs +188 -346
  361. package/dist/node-dev/useCartAPIStateMachine.mjs.map +1 -1
  362. package/dist/node-dev/useCartActions.js +198 -172
  363. package/dist/node-dev/useCartActions.js.map +1 -1
  364. package/dist/node-dev/useCartActions.mjs +197 -172
  365. package/dist/node-dev/useCartActions.mjs.map +1 -1
  366. package/dist/node-dev/useMachine.js +50 -61
  367. package/dist/node-dev/useMachine.js.map +1 -1
  368. package/dist/node-dev/useMachine.mjs +50 -62
  369. package/dist/node-dev/useMachine.mjs.map +1 -1
  370. package/dist/node-dev/useMoney.js +177 -154
  371. package/dist/node-dev/useMoney.js.map +1 -1
  372. package/dist/node-dev/useMoney.mjs +176 -154
  373. package/dist/node-dev/useMoney.mjs.map +1 -1
  374. package/dist/node-dev/useSelectedOptionInUrlParam.js +18 -27
  375. package/dist/node-dev/useSelectedOptionInUrlParam.js.map +1 -1
  376. package/dist/node-dev/useSelectedOptionInUrlParam.mjs +17 -27
  377. package/dist/node-dev/useSelectedOptionInUrlParam.mjs.map +1 -1
  378. package/dist/node-dev/useShopifyCookies.js +124 -138
  379. package/dist/node-dev/useShopifyCookies.js.map +1 -1
  380. package/dist/node-dev/useShopifyCookies.mjs +123 -138
  381. package/dist/node-dev/useShopifyCookies.mjs.map +1 -1
  382. package/dist/node-prod/AddToCartButton.js +64 -73
  383. package/dist/node-prod/AddToCartButton.js.map +1 -1
  384. package/dist/node-prod/AddToCartButton.mjs +60 -71
  385. package/dist/node-prod/AddToCartButton.mjs.map +1 -1
  386. package/dist/node-prod/BaseButton.js +21 -26
  387. package/dist/node-prod/BaseButton.js.map +1 -1
  388. package/dist/node-prod/BaseButton.mjs +20 -26
  389. package/dist/node-prod/BaseButton.mjs.map +1 -1
  390. package/dist/node-prod/BuyNowButton.js +42 -46
  391. package/dist/node-prod/BuyNowButton.js.map +1 -1
  392. package/dist/node-prod/BuyNowButton.mjs +40 -45
  393. package/dist/node-prod/BuyNowButton.mjs.map +1 -1
  394. package/dist/node-prod/CartCheckoutButton.js +30 -24
  395. package/dist/node-prod/CartCheckoutButton.js.map +1 -1
  396. package/dist/node-prod/CartCheckoutButton.mjs +28 -23
  397. package/dist/node-prod/CartCheckoutButton.mjs.map +1 -1
  398. package/dist/node-prod/CartCost.js +27 -22
  399. package/dist/node-prod/CartCost.js.map +1 -1
  400. package/dist/node-prod/CartCost.mjs +26 -22
  401. package/dist/node-prod/CartCost.mjs.map +1 -1
  402. package/dist/node-prod/CartLineProvider.js +24 -17
  403. package/dist/node-prod/CartLineProvider.js.map +1 -1
  404. package/dist/node-prod/CartLineProvider.mjs +23 -18
  405. package/dist/node-prod/CartLineProvider.mjs.map +1 -1
  406. package/dist/node-prod/CartLineQuantity.js +19 -9
  407. package/dist/node-prod/CartLineQuantity.js.map +1 -1
  408. package/dist/node-prod/CartLineQuantity.mjs +18 -9
  409. package/dist/node-prod/CartLineQuantity.mjs.map +1 -1
  410. package/dist/node-prod/CartLineQuantityAdjustButton.js +50 -46
  411. package/dist/node-prod/CartLineQuantityAdjustButton.js.map +1 -1
  412. package/dist/node-prod/CartLineQuantityAdjustButton.mjs +48 -45
  413. package/dist/node-prod/CartLineQuantityAdjustButton.mjs.map +1 -1
  414. package/dist/node-prod/CartProvider.js +317 -385
  415. package/dist/node-prod/CartProvider.js.map +1 -1
  416. package/dist/node-prod/CartProvider.mjs +315 -385
  417. package/dist/node-prod/CartProvider.mjs.map +1 -1
  418. package/dist/node-prod/ExternalVideo.js +36 -47
  419. package/dist/node-prod/ExternalVideo.js.map +1 -1
  420. package/dist/node-prod/ExternalVideo.mjs +35 -47
  421. package/dist/node-prod/ExternalVideo.mjs.map +1 -1
  422. package/dist/node-prod/Image.js +328 -340
  423. package/dist/node-prod/Image.js.map +1 -1
  424. package/dist/node-prod/Image.mjs +326 -325
  425. package/dist/node-prod/Image.mjs.map +1 -1
  426. package/dist/node-prod/MediaFile.js +47 -65
  427. package/dist/node-prod/MediaFile.js.map +1 -1
  428. package/dist/node-prod/MediaFile.mjs +44 -63
  429. package/dist/node-prod/MediaFile.mjs.map +1 -1
  430. package/dist/node-prod/ModelViewer.js +118 -135
  431. package/dist/node-prod/ModelViewer.js.map +1 -1
  432. package/dist/node-prod/ModelViewer.mjs +117 -135
  433. package/dist/node-prod/ModelViewer.mjs.map +1 -1
  434. package/dist/node-prod/Money.js +54 -39
  435. package/dist/node-prod/Money.js.map +1 -1
  436. package/dist/node-prod/Money.mjs +53 -39
  437. package/dist/node-prod/Money.mjs.map +1 -1
  438. package/dist/node-prod/ProductPrice.js +45 -61
  439. package/dist/node-prod/ProductPrice.js.map +1 -1
  440. package/dist/node-prod/ProductPrice.mjs +44 -61
  441. package/dist/node-prod/ProductPrice.mjs.map +1 -1
  442. package/dist/node-prod/ProductProvider.js +148 -178
  443. package/dist/node-prod/ProductProvider.js.map +1 -1
  444. package/dist/node-prod/ProductProvider.mjs +147 -179
  445. package/dist/node-prod/ProductProvider.mjs.map +1 -1
  446. package/dist/node-prod/RichText.components.js +37 -46
  447. package/dist/node-prod/RichText.components.js.map +1 -1
  448. package/dist/node-prod/RichText.components.mjs +36 -46
  449. package/dist/node-prod/RichText.components.mjs.map +1 -1
  450. package/dist/node-prod/RichText.js +112 -154
  451. package/dist/node-prod/RichText.js.map +1 -1
  452. package/dist/node-prod/RichText.mjs +111 -154
  453. package/dist/node-prod/RichText.mjs.map +1 -1
  454. package/dist/node-prod/ShopPayButton.js +54 -81
  455. package/dist/node-prod/ShopPayButton.js.map +1 -1
  456. package/dist/node-prod/ShopPayButton.mjs +53 -81
  457. package/dist/node-prod/ShopPayButton.mjs.map +1 -1
  458. package/dist/node-prod/ShopifyProvider.js +73 -83
  459. package/dist/node-prod/ShopifyProvider.js.map +1 -1
  460. package/dist/node-prod/ShopifyProvider.mjs +71 -84
  461. package/dist/node-prod/ShopifyProvider.mjs.map +1 -1
  462. package/dist/node-prod/Video.js +36 -52
  463. package/dist/node-prod/Video.js.map +1 -1
  464. package/dist/node-prod/Video.mjs +35 -52
  465. package/dist/node-prod/Video.mjs.map +1 -1
  466. package/dist/node-prod/_virtual/_rolldown/runtime.js +23 -0
  467. package/dist/node-prod/analytics-constants.js +40 -39
  468. package/dist/node-prod/analytics-constants.js.map +1 -1
  469. package/dist/node-prod/analytics-constants.mjs +41 -43
  470. package/dist/node-prod/analytics-constants.mjs.map +1 -1
  471. package/dist/node-prod/analytics-schema-custom-storefront-customer-tracking.js +128 -210
  472. package/dist/node-prod/analytics-schema-custom-storefront-customer-tracking.js.map +1 -1
  473. package/dist/node-prod/analytics-schema-custom-storefront-customer-tracking.mjs +127 -214
  474. package/dist/node-prod/analytics-schema-custom-storefront-customer-tracking.mjs.map +1 -1
  475. package/dist/node-prod/analytics-schema-trekkie-storefront-page-view.js +40 -51
  476. package/dist/node-prod/analytics-schema-trekkie-storefront-page-view.js.map +1 -1
  477. package/dist/node-prod/analytics-schema-trekkie-storefront-page-view.mjs +39 -50
  478. package/dist/node-prod/analytics-schema-trekkie-storefront-page-view.mjs.map +1 -1
  479. package/dist/node-prod/analytics-utils.js +77 -52
  480. package/dist/node-prod/analytics-utils.js.map +1 -1
  481. package/dist/node-prod/analytics-utils.mjs +78 -56
  482. package/dist/node-prod/analytics-utils.mjs.map +1 -1
  483. package/dist/node-prod/analytics.js +113 -154
  484. package/dist/node-prod/analytics.js.map +1 -1
  485. package/dist/node-prod/analytics.mjs +111 -153
  486. package/dist/node-prod/analytics.mjs.map +1 -1
  487. package/dist/node-prod/cart-constants.js +10 -9
  488. package/dist/node-prod/cart-constants.js.map +1 -1
  489. package/dist/node-prod/cart-constants.mjs +11 -15
  490. package/dist/node-prod/cart-constants.mjs.map +1 -1
  491. package/dist/node-prod/cart-hooks.js +43 -57
  492. package/dist/node-prod/cart-hooks.js.map +1 -1
  493. package/dist/node-prod/cart-hooks.mjs +42 -57
  494. package/dist/node-prod/cart-hooks.mjs.map +1 -1
  495. package/dist/node-prod/cart-queries.js +58 -125
  496. package/dist/node-prod/cart-queries.js.map +1 -1
  497. package/dist/node-prod/cart-queries.mjs +59 -135
  498. package/dist/node-prod/cart-queries.mjs.map +1 -1
  499. package/dist/node-prod/codegen.helpers.js +30 -18
  500. package/dist/node-prod/codegen.helpers.js.map +1 -1
  501. package/dist/node-prod/codegen.helpers.mjs +31 -20
  502. package/dist/node-prod/codegen.helpers.mjs.map +1 -1
  503. package/dist/node-prod/cookies-utils.js +45 -42
  504. package/dist/node-prod/cookies-utils.js.map +1 -1
  505. package/dist/node-prod/cookies-utils.mjs +44 -42
  506. package/dist/node-prod/cookies-utils.mjs.map +1 -1
  507. package/dist/node-prod/flatten-connection.js +22 -24
  508. package/dist/node-prod/flatten-connection.js.map +1 -1
  509. package/dist/node-prod/flatten-connection.mjs +23 -25
  510. package/dist/node-prod/flatten-connection.mjs.map +1 -1
  511. package/dist/node-prod/getProductOptions.js +248 -224
  512. package/dist/node-prod/getProductOptions.js.map +1 -1
  513. package/dist/node-prod/getProductOptions.mjs +248 -226
  514. package/dist/node-prod/getProductOptions.mjs.map +1 -1
  515. package/dist/node-prod/index.js +88 -90
  516. package/dist/node-prod/index.mjs +15 -70
  517. package/dist/node-prod/load-script.js +38 -48
  518. package/dist/node-prod/load-script.js.map +1 -1
  519. package/dist/node-prod/load-script.mjs +38 -49
  520. package/dist/node-prod/load-script.mjs.map +1 -1
  521. package/dist/node-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.js +185 -124
  522. package/dist/node-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.js.map +1 -1
  523. package/dist/node-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs +175 -123
  524. package/dist/node-prod/node_modules/.pnpm/@xstate_fsm@2.0.0/node_modules/@xstate/fsm/es/index.mjs.map +1 -1
  525. package/dist/node-prod/optionValueDecoder.js +103 -84
  526. package/dist/node-prod/optionValueDecoder.js.map +1 -1
  527. package/dist/node-prod/optionValueDecoder.mjs +104 -86
  528. package/dist/node-prod/optionValueDecoder.mjs.map +1 -1
  529. package/dist/node-prod/packages/hydrogen-react/package.js +6 -0
  530. package/dist/node-prod/packages/hydrogen-react/package.js.map +1 -0
  531. package/dist/node-prod/packages/hydrogen-react/package.mjs +6 -0
  532. package/dist/node-prod/packages/hydrogen-react/package.mjs.map +1 -0
  533. package/dist/node-prod/parse-metafield.js +134 -146
  534. package/dist/node-prod/parse-metafield.js.map +1 -1
  535. package/dist/node-prod/parse-metafield.mjs +134 -146
  536. package/dist/node-prod/parse-metafield.mjs.map +1 -1
  537. package/dist/node-prod/storefront-api-constants.js +5 -4
  538. package/dist/node-prod/storefront-api-constants.js.map +1 -1
  539. package/dist/node-prod/storefront-api-constants.mjs +6 -5
  540. package/dist/node-prod/storefront-api-constants.mjs.map +1 -1
  541. package/dist/node-prod/storefront-client.js +56 -83
  542. package/dist/node-prod/storefront-client.js.map +1 -1
  543. package/dist/node-prod/storefront-client.mjs +56 -84
  544. package/dist/node-prod/storefront-client.mjs.map +1 -1
  545. package/dist/node-prod/tracking-utils.js +67 -85
  546. package/dist/node-prod/tracking-utils.js.map +1 -1
  547. package/dist/node-prod/tracking-utils.mjs +68 -88
  548. package/dist/node-prod/tracking-utils.mjs.map +1 -1
  549. package/dist/node-prod/useCartAPIStateMachine.js +192 -349
  550. package/dist/node-prod/useCartAPIStateMachine.js.map +1 -1
  551. package/dist/node-prod/useCartAPIStateMachine.mjs +188 -346
  552. package/dist/node-prod/useCartAPIStateMachine.mjs.map +1 -1
  553. package/dist/node-prod/useCartActions.js +198 -172
  554. package/dist/node-prod/useCartActions.js.map +1 -1
  555. package/dist/node-prod/useCartActions.mjs +197 -172
  556. package/dist/node-prod/useCartActions.mjs.map +1 -1
  557. package/dist/node-prod/useMachine.js +50 -61
  558. package/dist/node-prod/useMachine.js.map +1 -1
  559. package/dist/node-prod/useMachine.mjs +50 -62
  560. package/dist/node-prod/useMachine.mjs.map +1 -1
  561. package/dist/node-prod/useMoney.js +177 -154
  562. package/dist/node-prod/useMoney.js.map +1 -1
  563. package/dist/node-prod/useMoney.mjs +176 -154
  564. package/dist/node-prod/useMoney.mjs.map +1 -1
  565. package/dist/node-prod/useSelectedOptionInUrlParam.js +18 -27
  566. package/dist/node-prod/useSelectedOptionInUrlParam.js.map +1 -1
  567. package/dist/node-prod/useSelectedOptionInUrlParam.mjs +17 -27
  568. package/dist/node-prod/useSelectedOptionInUrlParam.mjs.map +1 -1
  569. package/dist/node-prod/useShopifyCookies.js +124 -138
  570. package/dist/node-prod/useShopifyCookies.js.map +1 -1
  571. package/dist/node-prod/useShopifyCookies.mjs +123 -138
  572. package/dist/node-prod/useShopifyCookies.mjs.map +1 -1
  573. package/dist/types/AddToCartButton.d.ts +2 -0
  574. package/dist/types/BuyNowButton.d.ts +2 -0
  575. package/dist/types/CartCheckoutButton.d.ts +2 -0
  576. package/dist/types/CartCost.d.ts +2 -0
  577. package/dist/types/CartLineProvider.d.ts +2 -0
  578. package/dist/types/CartLineQuantity.d.ts +2 -0
  579. package/dist/types/CartLineQuantityAdjustButton.d.ts +1 -0
  580. package/dist/types/CartProvider.d.ts +7 -1
  581. package/dist/types/ExternalVideo.d.ts +4 -0
  582. package/dist/types/Image.d.ts +2 -0
  583. package/dist/types/MediaFile.d.ts +4 -0
  584. package/dist/types/ModelViewer.d.ts +1 -0
  585. package/dist/types/Money.d.ts +1 -0
  586. package/dist/types/ProductPrice.d.ts +2 -0
  587. package/dist/types/ProductProvider.d.ts +2 -0
  588. package/dist/types/RichText.d.ts +2 -0
  589. package/dist/types/ShopPayButton.d.ts +1 -0
  590. package/dist/types/ShopifyProvider.d.ts +2 -0
  591. package/dist/types/Video.d.ts +2 -0
  592. package/dist/types/analytics-constants.d.ts +9 -0
  593. package/dist/types/analytics-types.d.ts +1 -0
  594. package/dist/types/analytics-utils.d.ts +1 -0
  595. package/dist/types/analytics.d.ts +6 -1
  596. package/dist/types/cart-queries.d.ts +13 -9
  597. package/dist/types/codegen.helpers.d.ts +2 -0
  598. package/dist/types/cookies-utils.d.ts +2 -1
  599. package/dist/types/flatten-connection.d.ts +3 -0
  600. package/dist/types/getProductOptions.d.ts +3 -0
  601. package/dist/types/load-script.d.ts +3 -1
  602. package/dist/types/optionValueDecoder.d.ts +3 -0
  603. package/dist/types/parse-metafield.d.ts +1 -0
  604. package/dist/types/storefront-client.d.ts +1 -0
  605. package/dist/types/tracking-utils.d.ts +2 -2
  606. package/dist/types/useMoney.d.ts +1 -0
  607. package/dist/types/useSelectedOptionInUrlParam.d.ts +1 -0
  608. package/dist/types/useShopifyCookies.d.ts +1 -0
  609. package/dist/umd/hydrogen-react.dev.js +3957 -4483
  610. package/dist/umd/hydrogen-react.dev.js.map +1 -1
  611. package/dist/umd/hydrogen-react.prod.js +42 -101
  612. package/dist/umd/hydrogen-react.prod.js.map +1 -1
  613. package/package.json +5 -5
  614. package/dist/browser-dev/index.mjs.map +0 -1
  615. package/dist/browser-dev/packages/hydrogen-react/package.json.mjs +0 -5
  616. package/dist/browser-dev/packages/hydrogen-react/package.json.mjs.map +0 -1
  617. package/dist/browser-prod/index.mjs.map +0 -1
  618. package/dist/browser-prod/packages/hydrogen-react/package.json.mjs +0 -5
  619. package/dist/browser-prod/packages/hydrogen-react/package.json.mjs.map +0 -1
  620. package/dist/node-dev/index.js.map +0 -1
  621. package/dist/node-dev/index.mjs.map +0 -1
  622. package/dist/node-dev/packages/hydrogen-react/package.json.js +0 -5
  623. package/dist/node-dev/packages/hydrogen-react/package.json.js.map +0 -1
  624. package/dist/node-dev/packages/hydrogen-react/package.json.mjs +0 -5
  625. package/dist/node-dev/packages/hydrogen-react/package.json.mjs.map +0 -1
  626. package/dist/node-prod/index.js.map +0 -1
  627. package/dist/node-prod/index.mjs.map +0 -1
  628. package/dist/node-prod/packages/hydrogen-react/package.json.js +0 -5
  629. package/dist/node-prod/packages/hydrogen-react/package.json.js.map +0 -1
  630. package/dist/node-prod/packages/hydrogen-react/package.json.mjs +0 -5
  631. package/dist/node-prod/packages/hydrogen-react/package.json.mjs.map +0 -1
@@ -1,91 +1,89 @@
1
- "use strict";
2
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const AddToCartButton = require("./AddToCartButton.js");
4
- const analytics = require("./analytics.js");
5
- const analyticsConstants = require("./analytics-constants.js");
6
- const analyticsUtils = require("./analytics-utils.js");
7
- const BuyNowButton = require("./BuyNowButton.js");
8
- const cartConstants = require("./cart-constants.js");
9
- const CartCheckoutButton = require("./CartCheckoutButton.js");
10
- const CartCost = require("./CartCost.js");
11
- const CartLineProvider = require("./CartLineProvider.js");
12
- const CartLineQuantity = require("./CartLineQuantity.js");
13
- const CartLineQuantityAdjustButton = require("./CartLineQuantityAdjustButton.js");
14
- const CartProvider = require("./CartProvider.js");
15
- const codegen_helpers = require("./codegen.helpers.js");
16
- const cookiesUtils = require("./cookies-utils.js");
17
- const ExternalVideo = require("./ExternalVideo.js");
18
- const flattenConnection = require("./flatten-connection.js");
19
- const getProductOptions = require("./getProductOptions.js");
20
- const Image = require("./Image.js");
21
- const loadScript = require("./load-script.js");
22
- const MediaFile = require("./MediaFile.js");
23
- const ModelViewer = require("./ModelViewer.js");
24
- const Money = require("./Money.js");
25
- const optionValueDecoder = require("./optionValueDecoder.js");
26
- const parseMetafield = require("./parse-metafield.js");
27
- const ProductPrice = require("./ProductPrice.js");
28
- const ProductProvider = require("./ProductProvider.js");
29
- const RichText = require("./RichText.js");
30
- const ShopifyProvider = require("./ShopifyProvider.js");
31
- const ShopPayButton = require("./ShopPayButton.js");
32
- const storefrontClient = require("./storefront-client.js");
33
- const trackingUtils = require("./tracking-utils.js");
34
- const useMoney = require("./useMoney.js");
35
- const useSelectedOptionInUrlParam = require("./useSelectedOptionInUrlParam.js");
36
- const useShopifyCookies = require("./useShopifyCookies.js");
37
- const Video = require("./Video.js");
38
- exports.AddToCartButton = AddToCartButton.AddToCartButton;
39
- exports.getClientBrowserParameters = analytics.getClientBrowserParameters;
40
- exports.sendShopifyAnalytics = analytics.sendShopifyAnalytics;
41
- exports.AnalyticsEventName = analyticsConstants.AnalyticsEventName;
42
- exports.AnalyticsPageType = analyticsConstants.AnalyticsPageType;
43
- exports.ShopifySalesChannel = analyticsConstants.ShopifySalesChannel;
44
- exports.parseGid = analyticsUtils.parseGid;
45
- exports.BuyNowButton = BuyNowButton.BuyNowButton;
46
- exports.SHOPIFY_S = cartConstants.SHOPIFY_S;
47
- exports.SHOPIFY_STOREFRONT_ID_HEADER = cartConstants.SHOPIFY_STOREFRONT_ID_HEADER;
48
- exports.SHOPIFY_STOREFRONT_S_HEADER = cartConstants.SHOPIFY_STOREFRONT_S_HEADER;
49
- exports.SHOPIFY_STOREFRONT_Y_HEADER = cartConstants.SHOPIFY_STOREFRONT_Y_HEADER;
50
- exports.SHOPIFY_Y = cartConstants.SHOPIFY_Y;
51
- exports.CartCheckoutButton = CartCheckoutButton.CartCheckoutButton;
52
- exports.CartCost = CartCost.CartCost;
53
- exports.CartLineProvider = CartLineProvider.CartLineProvider;
54
- exports.useCartLine = CartLineProvider.useCartLine;
55
- exports.CartLineQuantity = CartLineQuantity.CartLineQuantity;
56
- exports.CartLineQuantityAdjustButton = CartLineQuantityAdjustButton.CartLineQuantityAdjustButton;
57
- exports.CartProvider = CartProvider.CartProvider;
58
- exports.useCart = CartProvider.useCart;
59
- exports.customerAccountApiCustomScalars = codegen_helpers.customerAccountApiCustomScalars;
60
- exports.storefrontApiCustomScalars = codegen_helpers.storefrontApiCustomScalars;
61
- exports.getShopifyCookies = cookiesUtils.getShopifyCookies;
62
- exports.ExternalVideo = ExternalVideo.ExternalVideo;
63
- exports.flattenConnection = flattenConnection.flattenConnection;
64
- exports.getAdjacentAndFirstAvailableVariants = getProductOptions.getAdjacentAndFirstAvailableVariants;
65
- exports.getProductOptions = getProductOptions.getProductOptions;
66
- exports.mapSelectedProductOptionToObject = getProductOptions.mapSelectedProductOptionToObject;
67
- exports.IMAGE_FRAGMENT = Image.IMAGE_FRAGMENT;
68
- exports.Image = Image.Image;
69
- exports.useLoadScript = loadScript.useLoadScript;
70
- exports.MediaFile = MediaFile.MediaFile;
71
- exports.ModelViewer = ModelViewer.ModelViewer;
72
- exports.Money = Money.Money;
73
- exports.decodeEncodedVariant = optionValueDecoder.decodeEncodedVariant;
74
- exports.isOptionValueCombinationInEncodedVariant = optionValueDecoder.isOptionValueCombinationInEncodedVariant;
75
- exports.parseMetafield = parseMetafield.parseMetafield;
76
- exports.ProductPrice = ProductPrice.ProductPrice;
77
- exports.ProductProvider = ProductProvider.ProductProvider;
78
- exports.useProduct = ProductProvider.useProduct;
79
- exports.RichText = RichText.RichText;
80
- exports.ShopifyProvider = ShopifyProvider.ShopifyProvider;
81
- exports.useShop = ShopifyProvider.useShop;
82
- exports.ShopPayButton = ShopPayButton.ShopPayButton;
83
- exports.createStorefrontClient = storefrontClient.createStorefrontClient;
84
- exports.SHOPIFY_UNIQUE_TOKEN_HEADER = trackingUtils.SHOPIFY_UNIQUE_TOKEN_HEADER;
85
- exports.SHOPIFY_VISIT_TOKEN_HEADER = trackingUtils.SHOPIFY_VISIT_TOKEN_HEADER;
86
- exports.getTrackingValues = trackingUtils.getTrackingValues;
87
- exports.useMoney = useMoney.useMoney;
88
- exports.useSelectedOptionInUrlParam = useSelectedOptionInUrlParam.useSelectedOptionInUrlParam;
89
- exports.useShopifyCookies = useShopifyCookies.useShopifyCookies;
90
- exports.Video = Video.Video;
91
- //# sourceMappingURL=index.js.map
2
+ const require_flatten_connection = require("./flatten-connection.js");
3
+ const require_storefront_client = require("./storefront-client.js");
4
+ const require_ShopifyProvider = require("./ShopifyProvider.js");
5
+ const require_cart_constants = require("./cart-constants.js");
6
+ const require_tracking_utils = require("./tracking-utils.js");
7
+ const require_CartProvider = require("./CartProvider.js");
8
+ const require_ProductProvider = require("./ProductProvider.js");
9
+ const require_AddToCartButton = require("./AddToCartButton.js");
10
+ const require_analytics_constants = require("./analytics-constants.js");
11
+ const require_analytics_utils = require("./analytics-utils.js");
12
+ const require_cookies_utils = require("./cookies-utils.js");
13
+ const require_analytics = require("./analytics.js");
14
+ const require_BuyNowButton = require("./BuyNowButton.js");
15
+ const require_CartCheckoutButton = require("./CartCheckoutButton.js");
16
+ const require_useMoney = require("./useMoney.js");
17
+ const require_Money = require("./Money.js");
18
+ const require_CartCost = require("./CartCost.js");
19
+ const require_CartLineProvider = require("./CartLineProvider.js");
20
+ const require_CartLineQuantity = require("./CartLineQuantity.js");
21
+ const require_CartLineQuantityAdjustButton = require("./CartLineQuantityAdjustButton.js");
22
+ const require_codegen_helpers = require("./codegen.helpers.js");
23
+ const require_ExternalVideo = require("./ExternalVideo.js");
24
+ const require_optionValueDecoder = require("./optionValueDecoder.js");
25
+ const require_getProductOptions = require("./getProductOptions.js");
26
+ const require_Image = require("./Image.js");
27
+ const require_load_script = require("./load-script.js");
28
+ const require_Video = require("./Video.js");
29
+ const require_ModelViewer = require("./ModelViewer.js");
30
+ const require_MediaFile = require("./MediaFile.js");
31
+ const require_parse_metafield = require("./parse-metafield.js");
32
+ const require_ProductPrice = require("./ProductPrice.js");
33
+ const require_RichText = require("./RichText.js");
34
+ const require_ShopPayButton = require("./ShopPayButton.js");
35
+ const require_useSelectedOptionInUrlParam = require("./useSelectedOptionInUrlParam.js");
36
+ const require_useShopifyCookies = require("./useShopifyCookies.js");
37
+ exports.AddToCartButton = require_AddToCartButton.AddToCartButton;
38
+ exports.AnalyticsEventName = require_analytics_constants.AnalyticsEventName;
39
+ exports.AnalyticsPageType = require_analytics_constants.AnalyticsPageType;
40
+ exports.BuyNowButton = require_BuyNowButton.BuyNowButton;
41
+ exports.CartCheckoutButton = require_CartCheckoutButton.CartCheckoutButton;
42
+ exports.CartCost = require_CartCost.CartCost;
43
+ exports.CartLineProvider = require_CartLineProvider.CartLineProvider;
44
+ exports.CartLineQuantity = require_CartLineQuantity.CartLineQuantity;
45
+ exports.CartLineQuantityAdjustButton = require_CartLineQuantityAdjustButton.CartLineQuantityAdjustButton;
46
+ exports.CartProvider = require_CartProvider.CartProvider;
47
+ exports.ExternalVideo = require_ExternalVideo.ExternalVideo;
48
+ exports.IMAGE_FRAGMENT = require_Image.IMAGE_FRAGMENT;
49
+ exports.Image = require_Image.Image;
50
+ exports.MediaFile = require_MediaFile.MediaFile;
51
+ exports.ModelViewer = require_ModelViewer.ModelViewer;
52
+ exports.Money = require_Money.Money;
53
+ exports.ProductPrice = require_ProductPrice.ProductPrice;
54
+ exports.ProductProvider = require_ProductProvider.ProductProvider;
55
+ exports.RichText = require_RichText.RichText;
56
+ exports.SHOPIFY_S = require_cart_constants.SHOPIFY_S;
57
+ exports.SHOPIFY_STOREFRONT_ID_HEADER = require_cart_constants.SHOPIFY_STOREFRONT_ID_HEADER;
58
+ exports.SHOPIFY_STOREFRONT_S_HEADER = require_cart_constants.SHOPIFY_STOREFRONT_S_HEADER;
59
+ exports.SHOPIFY_STOREFRONT_Y_HEADER = require_cart_constants.SHOPIFY_STOREFRONT_Y_HEADER;
60
+ exports.SHOPIFY_UNIQUE_TOKEN_HEADER = require_tracking_utils.SHOPIFY_UNIQUE_TOKEN_HEADER;
61
+ exports.SHOPIFY_VISIT_TOKEN_HEADER = require_tracking_utils.SHOPIFY_VISIT_TOKEN_HEADER;
62
+ exports.SHOPIFY_Y = require_cart_constants.SHOPIFY_Y;
63
+ exports.ShopPayButton = require_ShopPayButton.ShopPayButton;
64
+ exports.ShopifyProvider = require_ShopifyProvider.ShopifyProvider;
65
+ exports.ShopifySalesChannel = require_analytics_constants.ShopifySalesChannel;
66
+ exports.Video = require_Video.Video;
67
+ exports.createStorefrontClient = require_storefront_client.createStorefrontClient;
68
+ exports.customerAccountApiCustomScalars = require_codegen_helpers.customerAccountApiCustomScalars;
69
+ exports.decodeEncodedVariant = require_optionValueDecoder.decodeEncodedVariant;
70
+ exports.flattenConnection = require_flatten_connection.flattenConnection;
71
+ exports.getAdjacentAndFirstAvailableVariants = require_getProductOptions.getAdjacentAndFirstAvailableVariants;
72
+ exports.getClientBrowserParameters = require_analytics.getClientBrowserParameters;
73
+ exports.getProductOptions = require_getProductOptions.getProductOptions;
74
+ exports.getShopifyCookies = require_cookies_utils.getShopifyCookies;
75
+ exports.getTrackingValues = require_tracking_utils.getTrackingValues;
76
+ exports.isOptionValueCombinationInEncodedVariant = require_optionValueDecoder.isOptionValueCombinationInEncodedVariant;
77
+ exports.mapSelectedProductOptionToObject = require_getProductOptions.mapSelectedProductOptionToObject;
78
+ exports.parseGid = require_analytics_utils.parseGid;
79
+ exports.parseMetafield = require_parse_metafield.parseMetafield;
80
+ exports.sendShopifyAnalytics = require_analytics.sendShopifyAnalytics;
81
+ exports.storefrontApiCustomScalars = require_codegen_helpers.storefrontApiCustomScalars;
82
+ exports.useCart = require_CartProvider.useCart;
83
+ exports.useCartLine = require_CartLineProvider.useCartLine;
84
+ exports.useLoadScript = require_load_script.useLoadScript;
85
+ exports.useMoney = require_useMoney.useMoney;
86
+ exports.useProduct = require_ProductProvider.useProduct;
87
+ exports.useSelectedOptionInUrlParam = require_useSelectedOptionInUrlParam.useSelectedOptionInUrlParam;
88
+ exports.useShop = require_ShopifyProvider.useShop;
89
+ exports.useShopifyCookies = require_useShopifyCookies.useShopifyCookies;
@@ -1,91 +1,36 @@
1
+ import { flattenConnection } from "./flatten-connection.mjs";
2
+ import { createStorefrontClient } from "./storefront-client.mjs";
3
+ import { ShopifyProvider, useShop } from "./ShopifyProvider.mjs";
4
+ import { SHOPIFY_S, SHOPIFY_STOREFRONT_ID_HEADER, SHOPIFY_STOREFRONT_S_HEADER, SHOPIFY_STOREFRONT_Y_HEADER, SHOPIFY_Y } from "./cart-constants.mjs";
5
+ import { SHOPIFY_UNIQUE_TOKEN_HEADER, SHOPIFY_VISIT_TOKEN_HEADER, getTrackingValues } from "./tracking-utils.mjs";
6
+ import { CartProvider, useCart } from "./CartProvider.mjs";
7
+ import { ProductProvider, useProduct } from "./ProductProvider.mjs";
1
8
  import { AddToCartButton } from "./AddToCartButton.mjs";
2
- import { getClientBrowserParameters, sendShopifyAnalytics } from "./analytics.mjs";
3
9
  import { AnalyticsEventName, AnalyticsPageType, ShopifySalesChannel } from "./analytics-constants.mjs";
4
10
  import { parseGid } from "./analytics-utils.mjs";
11
+ import { getShopifyCookies } from "./cookies-utils.mjs";
12
+ import { getClientBrowserParameters, sendShopifyAnalytics } from "./analytics.mjs";
5
13
  import { BuyNowButton } from "./BuyNowButton.mjs";
6
- import { SHOPIFY_S, SHOPIFY_STOREFRONT_ID_HEADER, SHOPIFY_STOREFRONT_S_HEADER, SHOPIFY_STOREFRONT_Y_HEADER, SHOPIFY_Y } from "./cart-constants.mjs";
7
14
  import { CartCheckoutButton } from "./CartCheckoutButton.mjs";
15
+ import { useMoney } from "./useMoney.mjs";
16
+ import { Money } from "./Money.mjs";
8
17
  import { CartCost } from "./CartCost.mjs";
9
18
  import { CartLineProvider, useCartLine } from "./CartLineProvider.mjs";
10
19
  import { CartLineQuantity } from "./CartLineQuantity.mjs";
11
20
  import { CartLineQuantityAdjustButton } from "./CartLineQuantityAdjustButton.mjs";
12
- import { CartProvider, useCart } from "./CartProvider.mjs";
13
21
  import { customerAccountApiCustomScalars, storefrontApiCustomScalars } from "./codegen.helpers.mjs";
14
- import { getShopifyCookies } from "./cookies-utils.mjs";
15
22
  import { ExternalVideo } from "./ExternalVideo.mjs";
16
- import { flattenConnection } from "./flatten-connection.mjs";
23
+ import { decodeEncodedVariant, isOptionValueCombinationInEncodedVariant } from "./optionValueDecoder.mjs";
17
24
  import { getAdjacentAndFirstAvailableVariants, getProductOptions, mapSelectedProductOptionToObject } from "./getProductOptions.mjs";
18
25
  import { IMAGE_FRAGMENT, Image } from "./Image.mjs";
19
26
  import { useLoadScript } from "./load-script.mjs";
20
- import { MediaFile } from "./MediaFile.mjs";
27
+ import { Video } from "./Video.mjs";
21
28
  import { ModelViewer } from "./ModelViewer.mjs";
22
- import { Money } from "./Money.mjs";
23
- import { decodeEncodedVariant, isOptionValueCombinationInEncodedVariant } from "./optionValueDecoder.mjs";
29
+ import { MediaFile } from "./MediaFile.mjs";
24
30
  import { parseMetafield } from "./parse-metafield.mjs";
25
31
  import { ProductPrice } from "./ProductPrice.mjs";
26
- import { ProductProvider, useProduct } from "./ProductProvider.mjs";
27
32
  import { RichText } from "./RichText.mjs";
28
- import { ShopifyProvider, useShop } from "./ShopifyProvider.mjs";
29
33
  import { ShopPayButton } from "./ShopPayButton.mjs";
30
- import { createStorefrontClient } from "./storefront-client.mjs";
31
- import { SHOPIFY_UNIQUE_TOKEN_HEADER, SHOPIFY_VISIT_TOKEN_HEADER, getTrackingValues } from "./tracking-utils.mjs";
32
- import { useMoney } from "./useMoney.mjs";
33
34
  import { useSelectedOptionInUrlParam } from "./useSelectedOptionInUrlParam.mjs";
34
35
  import { useShopifyCookies } from "./useShopifyCookies.mjs";
35
- import { Video } from "./Video.mjs";
36
- export {
37
- AddToCartButton,
38
- AnalyticsEventName,
39
- AnalyticsPageType,
40
- BuyNowButton,
41
- CartCheckoutButton,
42
- CartCost,
43
- CartLineProvider,
44
- CartLineQuantity,
45
- CartLineQuantityAdjustButton,
46
- CartProvider,
47
- ExternalVideo,
48
- IMAGE_FRAGMENT,
49
- Image,
50
- MediaFile,
51
- ModelViewer,
52
- Money,
53
- ProductPrice,
54
- ProductProvider,
55
- RichText,
56
- SHOPIFY_S,
57
- SHOPIFY_STOREFRONT_ID_HEADER,
58
- SHOPIFY_STOREFRONT_S_HEADER,
59
- SHOPIFY_STOREFRONT_Y_HEADER,
60
- SHOPIFY_UNIQUE_TOKEN_HEADER,
61
- SHOPIFY_VISIT_TOKEN_HEADER,
62
- SHOPIFY_Y,
63
- ShopPayButton,
64
- ShopifyProvider,
65
- ShopifySalesChannel,
66
- Video,
67
- createStorefrontClient,
68
- customerAccountApiCustomScalars,
69
- decodeEncodedVariant,
70
- flattenConnection,
71
- getAdjacentAndFirstAvailableVariants,
72
- getClientBrowserParameters,
73
- getProductOptions,
74
- getShopifyCookies,
75
- getTrackingValues,
76
- isOptionValueCombinationInEncodedVariant,
77
- mapSelectedProductOptionToObject,
78
- parseGid,
79
- parseMetafield,
80
- sendShopifyAnalytics,
81
- storefrontApiCustomScalars,
82
- useCart,
83
- useCartLine,
84
- useLoadScript,
85
- useMoney,
86
- useProduct,
87
- useSelectedOptionInUrlParam,
88
- useShop,
89
- useShopifyCookies
90
- };
91
- //# sourceMappingURL=index.mjs.map
36
+ export { AddToCartButton, AnalyticsEventName, AnalyticsPageType, BuyNowButton, CartCheckoutButton, CartCost, CartLineProvider, CartLineQuantity, CartLineQuantityAdjustButton, CartProvider, ExternalVideo, IMAGE_FRAGMENT, Image, MediaFile, ModelViewer, Money, ProductPrice, ProductProvider, RichText, SHOPIFY_S, SHOPIFY_STOREFRONT_ID_HEADER, SHOPIFY_STOREFRONT_S_HEADER, SHOPIFY_STOREFRONT_Y_HEADER, SHOPIFY_UNIQUE_TOKEN_HEADER, SHOPIFY_VISIT_TOKEN_HEADER, SHOPIFY_Y, ShopPayButton, ShopifyProvider, ShopifySalesChannel, Video, createStorefrontClient, customerAccountApiCustomScalars, decodeEncodedVariant, flattenConnection, getAdjacentAndFirstAvailableVariants, getClientBrowserParameters, getProductOptions, getShopifyCookies, getTrackingValues, isOptionValueCombinationInEncodedVariant, mapSelectedProductOptionToObject, parseGid, parseMetafield, sendShopifyAnalytics, storefrontApiCustomScalars, useCart, useCartLine, useLoadScript, useMoney, useProduct, useSelectedOptionInUrlParam, useShop, useShopifyCookies };
@@ -1,53 +1,43 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const React = require("react");
4
- const SCRIPTS_LOADED = {};
1
+ require("./_virtual/_rolldown/runtime.js");
2
+ let react = require("react");
3
+ //#region src/load-script.tsx
4
+ var SCRIPTS_LOADED = {};
5
5
  function loadScript(src, options) {
6
- const isScriptLoaded = SCRIPTS_LOADED[src];
7
- if (isScriptLoaded) {
8
- return isScriptLoaded;
9
- }
10
- const promise = new Promise((resolve, reject) => {
11
- const script = document.createElement("script");
12
- if (options == null ? void 0 : options.module) {
13
- script.type = "module";
14
- } else {
15
- script.type = "text/javascript";
16
- }
17
- script.src = src;
18
- script.onload = () => {
19
- resolve(true);
20
- };
21
- script.onerror = () => {
22
- reject(false);
23
- };
24
- if ((options == null ? void 0 : options.in) === "head") {
25
- document.head.appendChild(script);
26
- } else {
27
- document.body.appendChild(script);
28
- }
29
- const attributes = options == null ? void 0 : options.attributes;
30
- if (attributes) {
31
- Object.keys(attributes).forEach((key) => {
32
- script.setAttribute(key, attributes[key]);
33
- });
34
- }
35
- });
36
- SCRIPTS_LOADED[src] = promise;
37
- return promise;
6
+ const isScriptLoaded = SCRIPTS_LOADED[src];
7
+ if (isScriptLoaded) return isScriptLoaded;
8
+ const promise = new Promise((resolve, reject) => {
9
+ const script = document.createElement("script");
10
+ if (options?.module) script.type = "module";
11
+ else script.type = "text/javascript";
12
+ script.src = src;
13
+ script.onload = () => {
14
+ resolve(true);
15
+ };
16
+ script.onerror = () => {
17
+ reject(false);
18
+ };
19
+ if (options?.in === "head") document.head.appendChild(script);
20
+ else document.body.appendChild(script);
21
+ const attributes = options?.attributes;
22
+ if (attributes) Object.keys(attributes).forEach((key) => {
23
+ script.setAttribute(key, attributes[key]);
24
+ });
25
+ });
26
+ SCRIPTS_LOADED[src] = promise;
27
+ return promise;
38
28
  }
29
+ /**
30
+ * The `useLoadScript` hook loads an external script tag in the browser. It allows React components to lazy-load large third-party dependencies.
31
+ * @publicDocs
32
+ */
39
33
  function useLoadScript(url, options) {
40
- const [status, setStatus] = React.useState("loading");
41
- React.useEffect(
42
- () => {
43
- loadScript(url, options).then(() => setStatus("done")).catch(() => setStatus("error"));
44
- },
45
- // Ignore options changes since it won't trigger a new load.
46
- // eslint-disable-next-line react-hooks/exhaustive-deps
47
- [url]
48
- );
49
- return status;
34
+ const [status, setStatus] = (0, react.useState)("loading");
35
+ (0, react.useEffect)(() => {
36
+ loadScript(url, options).then(() => setStatus("done")).catch(() => setStatus("error"));
37
+ }, [url]);
38
+ return status;
50
39
  }
51
- exports.loadScript = loadScript;
40
+ //#endregion
52
41
  exports.useLoadScript = useLoadScript;
53
- //# sourceMappingURL=load-script.js.map
42
+
43
+ //# sourceMappingURL=load-script.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"load-script.js","sources":["../../src/load-script.tsx"],"sourcesContent":["import {useState, useEffect} from 'react';\n\nconst SCRIPTS_LOADED: Record<string, Promise<boolean>> = {};\n\ntype LoadScriptOptions = {\n module?: boolean;\n in?: 'head' | 'body';\n attributes?: Record<string, string>;\n};\n\nexport function loadScript(\n src: string,\n options?: LoadScriptOptions,\n): Promise<boolean> {\n const isScriptLoaded = SCRIPTS_LOADED[src];\n\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n if (isScriptLoaded) {\n return isScriptLoaded;\n }\n\n const promise = new Promise<boolean>((resolve, reject) => {\n const script = document.createElement('script');\n if (options?.module) {\n script.type = 'module';\n } else {\n script.type = 'text/javascript';\n }\n script.src = src;\n script.onload = (): void => {\n resolve(true);\n };\n script.onerror = (): void => {\n reject(false);\n };\n if (options?.in === 'head') {\n document.head.appendChild(script);\n } else {\n document.body.appendChild(script);\n }\n\n const attributes = options?.attributes;\n if (attributes) {\n Object.keys(attributes).forEach((key) => {\n script.setAttribute(key, attributes[key]);\n });\n }\n });\n\n SCRIPTS_LOADED[src] = promise;\n\n return promise;\n}\n\ntype LoadScriptParams = Parameters<typeof loadScript>;\n\n/**\n * The `useLoadScript` hook loads an external script tag in the browser. It allows React components to lazy-load large third-party dependencies.\n */\nexport function useLoadScript(\n url: LoadScriptParams[0],\n options?: LoadScriptParams[1],\n): ScriptState {\n const [status, setStatus] = useState<ScriptState>('loading');\n\n useEffect(\n () => {\n loadScript(url, options)\n .then(() => setStatus('done'))\n .catch(() => setStatus('error'));\n },\n // Ignore options changes since it won't trigger a new load.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [url],\n );\n\n return status;\n}\n\ntype ScriptState = 'loading' | 'done' | 'error';\n"],"names":["useState","useEffect"],"mappings":";;;AAEA,MAAM,iBAAmD,CAAA;AAQlD,SAAS,WACd,KACA,SACkB;AAClB,QAAM,iBAAiB,eAAe,GAAG;AAGzC,MAAI,gBAAgB;AAClB,WAAO;AAAA,EACT;AAEA,QAAM,UAAU,IAAI,QAAiB,CAAC,SAAS,WAAW;AACxD,UAAM,SAAS,SAAS,cAAc,QAAQ;AAC9C,QAAI,mCAAS,QAAQ;AACnB,aAAO,OAAO;AAAA,IAChB,OAAO;AACL,aAAO,OAAO;AAAA,IAChB;AACA,WAAO,MAAM;AACb,WAAO,SAAS,MAAY;AAC1B,cAAQ,IAAI;AAAA,IACd;AACA,WAAO,UAAU,MAAY;AAC3B,aAAO,KAAK;AAAA,IACd;AACA,SAAI,mCAAS,QAAO,QAAQ;AAC1B,eAAS,KAAK,YAAY,MAAM;AAAA,IAClC,OAAO;AACL,eAAS,KAAK,YAAY,MAAM;AAAA,IAClC;AAEA,UAAM,aAAa,mCAAS;AAC5B,QAAI,YAAY;AACd,aAAO,KAAK,UAAU,EAAE,QAAQ,CAAC,QAAQ;AACvC,eAAO,aAAa,KAAK,WAAW,GAAG,CAAC;AAAA,MAC1C,CAAC;AAAA,IACH;AAAA,EACF,CAAC;AAED,iBAAe,GAAG,IAAI;AAEtB,SAAO;AACT;AAOO,SAAS,cACd,KACA,SACa;AACb,QAAM,CAAC,QAAQ,SAAS,IAAIA,MAAAA,SAAsB,SAAS;AAE3DC,QAAAA;AAAAA,IACE,MAAM;AACJ,iBAAW,KAAK,OAAO,EACpB,KAAK,MAAM,UAAU,MAAM,CAAC,EAC5B,MAAM,MAAM,UAAU,OAAO,CAAC;AAAA,IACnC;AAAA;AAAA;AAAA,IAGA,CAAC,GAAG;AAAA,EAAA;AAGN,SAAO;AACT;;;"}
1
+ {"version":3,"file":"load-script.js","names":[],"sources":["../../src/load-script.tsx"],"sourcesContent":["import {useState, useEffect} from 'react';\n\nconst SCRIPTS_LOADED: Record<string, Promise<boolean>> = {};\n\ntype LoadScriptOptions = {\n module?: boolean;\n in?: 'head' | 'body';\n attributes?: Record<string, string>;\n};\n\nexport function loadScript(\n src: string,\n options?: LoadScriptOptions,\n): Promise<boolean> {\n const isScriptLoaded = SCRIPTS_LOADED[src];\n\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n if (isScriptLoaded) {\n return isScriptLoaded;\n }\n\n const promise = new Promise<boolean>((resolve, reject) => {\n const script = document.createElement('script');\n if (options?.module) {\n script.type = 'module';\n } else {\n script.type = 'text/javascript';\n }\n script.src = src;\n script.onload = (): void => {\n resolve(true);\n };\n script.onerror = (): void => {\n reject(false);\n };\n if (options?.in === 'head') {\n document.head.appendChild(script);\n } else {\n document.body.appendChild(script);\n }\n\n const attributes = options?.attributes;\n if (attributes) {\n Object.keys(attributes).forEach((key) => {\n script.setAttribute(key, attributes[key]);\n });\n }\n });\n\n SCRIPTS_LOADED[src] = promise;\n\n return promise;\n}\n\n/** @publicDocs */\nexport type LoadScriptParams = Parameters<typeof loadScript>;\n\n/**\n * The `useLoadScript` hook loads an external script tag in the browser. It allows React components to lazy-load large third-party dependencies.\n * @publicDocs\n */\nexport function useLoadScript(\n url: LoadScriptParams[0],\n options?: LoadScriptParams[1],\n): ScriptState {\n const [status, setStatus] = useState<ScriptState>('loading');\n\n useEffect(\n () => {\n loadScript(url, options)\n .then(() => setStatus('done'))\n .catch(() => setStatus('error'));\n },\n // Ignore options changes since it won't trigger a new load.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [url],\n );\n\n return status;\n}\n\ntype ScriptState = 'loading' | 'done' | 'error';\n"],"mappings":";;;AAEA,IAAM,iBAAmD,EAAE;AAQ3D,SAAgB,WACd,KACA,SACkB;CAClB,MAAM,iBAAiB,eAAe;AAGtC,KAAI,eACF,QAAO;CAGT,MAAM,UAAU,IAAI,SAAkB,SAAS,WAAW;EACxD,MAAM,SAAS,SAAS,cAAc,SAAS;AAC/C,MAAI,SAAS,OACX,QAAO,OAAO;MAEd,QAAO,OAAO;AAEhB,SAAO,MAAM;AACb,SAAO,eAAqB;AAC1B,WAAQ,KAAK;;AAEf,SAAO,gBAAsB;AAC3B,UAAO,MAAM;;AAEf,MAAI,SAAS,OAAO,OAClB,UAAS,KAAK,YAAY,OAAO;MAEjC,UAAS,KAAK,YAAY,OAAO;EAGnC,MAAM,aAAa,SAAS;AAC5B,MAAI,WACF,QAAO,KAAK,WAAW,CAAC,SAAS,QAAQ;AACvC,UAAO,aAAa,KAAK,WAAW,KAAK;IACzC;GAEJ;AAEF,gBAAe,OAAO;AAEtB,QAAO;;;;;;AAUT,SAAgB,cACd,KACA,SACa;CACb,MAAM,CAAC,QAAQ,cAAA,GAAA,MAAA,UAAmC,UAAU;AAE5D,EAAA,GAAA,MAAA,iBACQ;AACJ,aAAW,KAAK,QAAQ,CACrB,WAAW,UAAU,OAAO,CAAC,CAC7B,YAAY,UAAU,QAAQ,CAAC;IAIpC,CAAC,IAAI,CACN;AAED,QAAO"}
@@ -1,53 +1,42 @@
1
- import { useState, useEffect } from "react";
2
- const SCRIPTS_LOADED = {};
1
+ import { useEffect, useState } from "react";
2
+ //#region src/load-script.tsx
3
+ var SCRIPTS_LOADED = {};
3
4
  function loadScript(src, options) {
4
- const isScriptLoaded = SCRIPTS_LOADED[src];
5
- if (isScriptLoaded) {
6
- return isScriptLoaded;
7
- }
8
- const promise = new Promise((resolve, reject) => {
9
- const script = document.createElement("script");
10
- if (options == null ? void 0 : options.module) {
11
- script.type = "module";
12
- } else {
13
- script.type = "text/javascript";
14
- }
15
- script.src = src;
16
- script.onload = () => {
17
- resolve(true);
18
- };
19
- script.onerror = () => {
20
- reject(false);
21
- };
22
- if ((options == null ? void 0 : options.in) === "head") {
23
- document.head.appendChild(script);
24
- } else {
25
- document.body.appendChild(script);
26
- }
27
- const attributes = options == null ? void 0 : options.attributes;
28
- if (attributes) {
29
- Object.keys(attributes).forEach((key) => {
30
- script.setAttribute(key, attributes[key]);
31
- });
32
- }
33
- });
34
- SCRIPTS_LOADED[src] = promise;
35
- return promise;
5
+ const isScriptLoaded = SCRIPTS_LOADED[src];
6
+ if (isScriptLoaded) return isScriptLoaded;
7
+ const promise = new Promise((resolve, reject) => {
8
+ const script = document.createElement("script");
9
+ if (options?.module) script.type = "module";
10
+ else script.type = "text/javascript";
11
+ script.src = src;
12
+ script.onload = () => {
13
+ resolve(true);
14
+ };
15
+ script.onerror = () => {
16
+ reject(false);
17
+ };
18
+ if (options?.in === "head") document.head.appendChild(script);
19
+ else document.body.appendChild(script);
20
+ const attributes = options?.attributes;
21
+ if (attributes) Object.keys(attributes).forEach((key) => {
22
+ script.setAttribute(key, attributes[key]);
23
+ });
24
+ });
25
+ SCRIPTS_LOADED[src] = promise;
26
+ return promise;
36
27
  }
28
+ /**
29
+ * The `useLoadScript` hook loads an external script tag in the browser. It allows React components to lazy-load large third-party dependencies.
30
+ * @publicDocs
31
+ */
37
32
  function useLoadScript(url, options) {
38
- const [status, setStatus] = useState("loading");
39
- useEffect(
40
- () => {
41
- loadScript(url, options).then(() => setStatus("done")).catch(() => setStatus("error"));
42
- },
43
- // Ignore options changes since it won't trigger a new load.
44
- // eslint-disable-next-line react-hooks/exhaustive-deps
45
- [url]
46
- );
47
- return status;
33
+ const [status, setStatus] = useState("loading");
34
+ useEffect(() => {
35
+ loadScript(url, options).then(() => setStatus("done")).catch(() => setStatus("error"));
36
+ }, [url]);
37
+ return status;
48
38
  }
49
- export {
50
- loadScript,
51
- useLoadScript
52
- };
53
- //# sourceMappingURL=load-script.mjs.map
39
+ //#endregion
40
+ export { useLoadScript };
41
+
42
+ //# sourceMappingURL=load-script.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"load-script.mjs","sources":["../../src/load-script.tsx"],"sourcesContent":["import {useState, useEffect} from 'react';\n\nconst SCRIPTS_LOADED: Record<string, Promise<boolean>> = {};\n\ntype LoadScriptOptions = {\n module?: boolean;\n in?: 'head' | 'body';\n attributes?: Record<string, string>;\n};\n\nexport function loadScript(\n src: string,\n options?: LoadScriptOptions,\n): Promise<boolean> {\n const isScriptLoaded = SCRIPTS_LOADED[src];\n\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n if (isScriptLoaded) {\n return isScriptLoaded;\n }\n\n const promise = new Promise<boolean>((resolve, reject) => {\n const script = document.createElement('script');\n if (options?.module) {\n script.type = 'module';\n } else {\n script.type = 'text/javascript';\n }\n script.src = src;\n script.onload = (): void => {\n resolve(true);\n };\n script.onerror = (): void => {\n reject(false);\n };\n if (options?.in === 'head') {\n document.head.appendChild(script);\n } else {\n document.body.appendChild(script);\n }\n\n const attributes = options?.attributes;\n if (attributes) {\n Object.keys(attributes).forEach((key) => {\n script.setAttribute(key, attributes[key]);\n });\n }\n });\n\n SCRIPTS_LOADED[src] = promise;\n\n return promise;\n}\n\ntype LoadScriptParams = Parameters<typeof loadScript>;\n\n/**\n * The `useLoadScript` hook loads an external script tag in the browser. It allows React components to lazy-load large third-party dependencies.\n */\nexport function useLoadScript(\n url: LoadScriptParams[0],\n options?: LoadScriptParams[1],\n): ScriptState {\n const [status, setStatus] = useState<ScriptState>('loading');\n\n useEffect(\n () => {\n loadScript(url, options)\n .then(() => setStatus('done'))\n .catch(() => setStatus('error'));\n },\n // Ignore options changes since it won't trigger a new load.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [url],\n );\n\n return status;\n}\n\ntype ScriptState = 'loading' | 'done' | 'error';\n"],"names":[],"mappings":";AAEA,MAAM,iBAAmD,CAAA;AAQlD,SAAS,WACd,KACA,SACkB;AAClB,QAAM,iBAAiB,eAAe,GAAG;AAGzC,MAAI,gBAAgB;AAClB,WAAO;AAAA,EACT;AAEA,QAAM,UAAU,IAAI,QAAiB,CAAC,SAAS,WAAW;AACxD,UAAM,SAAS,SAAS,cAAc,QAAQ;AAC9C,QAAI,mCAAS,QAAQ;AACnB,aAAO,OAAO;AAAA,IAChB,OAAO;AACL,aAAO,OAAO;AAAA,IAChB;AACA,WAAO,MAAM;AACb,WAAO,SAAS,MAAY;AAC1B,cAAQ,IAAI;AAAA,IACd;AACA,WAAO,UAAU,MAAY;AAC3B,aAAO,KAAK;AAAA,IACd;AACA,SAAI,mCAAS,QAAO,QAAQ;AAC1B,eAAS,KAAK,YAAY,MAAM;AAAA,IAClC,OAAO;AACL,eAAS,KAAK,YAAY,MAAM;AAAA,IAClC;AAEA,UAAM,aAAa,mCAAS;AAC5B,QAAI,YAAY;AACd,aAAO,KAAK,UAAU,EAAE,QAAQ,CAAC,QAAQ;AACvC,eAAO,aAAa,KAAK,WAAW,GAAG,CAAC;AAAA,MAC1C,CAAC;AAAA,IACH;AAAA,EACF,CAAC;AAED,iBAAe,GAAG,IAAI;AAEtB,SAAO;AACT;AAOO,SAAS,cACd,KACA,SACa;AACb,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAsB,SAAS;AAE3D;AAAA,IACE,MAAM;AACJ,iBAAW,KAAK,OAAO,EACpB,KAAK,MAAM,UAAU,MAAM,CAAC,EAC5B,MAAM,MAAM,UAAU,OAAO,CAAC;AAAA,IACnC;AAAA;AAAA;AAAA,IAGA,CAAC,GAAG;AAAA,EAAA;AAGN,SAAO;AACT;"}
1
+ {"version":3,"file":"load-script.mjs","names":[],"sources":["../../src/load-script.tsx"],"sourcesContent":["import {useState, useEffect} from 'react';\n\nconst SCRIPTS_LOADED: Record<string, Promise<boolean>> = {};\n\ntype LoadScriptOptions = {\n module?: boolean;\n in?: 'head' | 'body';\n attributes?: Record<string, string>;\n};\n\nexport function loadScript(\n src: string,\n options?: LoadScriptOptions,\n): Promise<boolean> {\n const isScriptLoaded = SCRIPTS_LOADED[src];\n\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n if (isScriptLoaded) {\n return isScriptLoaded;\n }\n\n const promise = new Promise<boolean>((resolve, reject) => {\n const script = document.createElement('script');\n if (options?.module) {\n script.type = 'module';\n } else {\n script.type = 'text/javascript';\n }\n script.src = src;\n script.onload = (): void => {\n resolve(true);\n };\n script.onerror = (): void => {\n reject(false);\n };\n if (options?.in === 'head') {\n document.head.appendChild(script);\n } else {\n document.body.appendChild(script);\n }\n\n const attributes = options?.attributes;\n if (attributes) {\n Object.keys(attributes).forEach((key) => {\n script.setAttribute(key, attributes[key]);\n });\n }\n });\n\n SCRIPTS_LOADED[src] = promise;\n\n return promise;\n}\n\n/** @publicDocs */\nexport type LoadScriptParams = Parameters<typeof loadScript>;\n\n/**\n * The `useLoadScript` hook loads an external script tag in the browser. It allows React components to lazy-load large third-party dependencies.\n * @publicDocs\n */\nexport function useLoadScript(\n url: LoadScriptParams[0],\n options?: LoadScriptParams[1],\n): ScriptState {\n const [status, setStatus] = useState<ScriptState>('loading');\n\n useEffect(\n () => {\n loadScript(url, options)\n .then(() => setStatus('done'))\n .catch(() => setStatus('error'));\n },\n // Ignore options changes since it won't trigger a new load.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [url],\n );\n\n return status;\n}\n\ntype ScriptState = 'loading' | 'done' | 'error';\n"],"mappings":";;AAEA,IAAM,iBAAmD,EAAE;AAQ3D,SAAgB,WACd,KACA,SACkB;CAClB,MAAM,iBAAiB,eAAe;AAGtC,KAAI,eACF,QAAO;CAGT,MAAM,UAAU,IAAI,SAAkB,SAAS,WAAW;EACxD,MAAM,SAAS,SAAS,cAAc,SAAS;AAC/C,MAAI,SAAS,OACX,QAAO,OAAO;MAEd,QAAO,OAAO;AAEhB,SAAO,MAAM;AACb,SAAO,eAAqB;AAC1B,WAAQ,KAAK;;AAEf,SAAO,gBAAsB;AAC3B,UAAO,MAAM;;AAEf,MAAI,SAAS,OAAO,OAClB,UAAS,KAAK,YAAY,OAAO;MAEjC,UAAS,KAAK,YAAY,OAAO;EAGnC,MAAM,aAAa,SAAS;AAC5B,MAAI,WACF,QAAO,KAAK,WAAW,CAAC,SAAS,QAAQ;AACvC,UAAO,aAAa,KAAK,WAAW,KAAK;IACzC;GAEJ;AAEF,gBAAe,OAAO;AAEtB,QAAO;;;;;;AAUT,SAAgB,cACd,KACA,SACa;CACb,MAAM,CAAC,QAAQ,aAAa,SAAsB,UAAU;AAE5D,iBACQ;AACJ,aAAW,KAAK,QAAQ,CACrB,WAAW,UAAU,OAAO,CAAC,CAC7B,YAAY,UAAU,QAAQ,CAAC;IAIpC,CAAC,IAAI,CACN;AAED,QAAO"}