@shopify/hydrogen 0.24.0 → 0.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (593) hide show
  1. package/CHANGELOG.md +144 -0
  2. package/dist/esnext/components/AddToCartButton/AddToCartButton.client.d.ts +2 -5
  3. package/dist/esnext/components/AddToCartButton/AddToCartButton.client.js +15 -14
  4. package/dist/esnext/components/BaseButton/BaseButton.client.d.ts +14 -0
  5. package/dist/esnext/components/BaseButton/BaseButton.client.js +15 -0
  6. package/dist/esnext/components/BaseButton/index.d.ts +1 -0
  7. package/dist/esnext/components/BaseButton/index.js +1 -0
  8. package/dist/esnext/components/BuyNowButton/BuyNowButton.client.d.ts +2 -5
  9. package/dist/esnext/components/BuyNowButton/BuyNowButton.client.js +5 -4
  10. package/dist/esnext/components/CartEstimatedCost/CartEstimatedCost.client.js +4 -4
  11. package/dist/esnext/components/CartLineProvider/context.d.ts +4 -4
  12. package/dist/esnext/components/CartLineQuantityAdjustButton/CartLineQuantityAdjustButton.d.ts +4 -5
  13. package/dist/esnext/components/CartLineQuantityAdjustButton/CartLineQuantityAdjustButton.js +16 -14
  14. package/dist/esnext/components/CartLines/CartLines.client.js +1 -1
  15. package/dist/esnext/components/CartProvider/CartProvider.client.js +31 -35
  16. package/dist/esnext/components/CartProvider/hooks.client.js +2 -3
  17. package/dist/esnext/components/ExternalVideo/ExternalVideo.js +1 -1
  18. package/dist/esnext/components/Image/Image.d.ts +13 -0
  19. package/dist/esnext/components/Image/Image.js +46 -20
  20. package/dist/esnext/components/Link/Link.client.js +1 -1
  21. package/dist/esnext/components/LocalizationProvider/LocalizationProvider.server.js +2 -2
  22. package/dist/esnext/components/Metafield/Metafield.client.d.ts +6 -10
  23. package/dist/esnext/components/Metafield/Metafield.client.js +67 -31
  24. package/dist/esnext/components/Metafield/components/StarRating/StarRating.js +1 -1
  25. package/dist/esnext/components/ModelViewer/ModelViewer.client.js +2 -3
  26. package/dist/esnext/components/Money/Money.client.js +1 -1
  27. package/dist/esnext/components/ProductOptionsProvider/ProductOptionsProvider.client.js +16 -24
  28. package/dist/esnext/components/ProductPrice/ProductPrice.client.js +7 -7
  29. package/dist/esnext/components/Seo/CollectionSeo.client.js +2 -3
  30. package/dist/esnext/components/Seo/DefaultPageSeo.client.js +3 -3
  31. package/dist/esnext/components/Seo/NoIndexSeo.client.js +2 -2
  32. package/dist/esnext/components/Seo/PageSeo.client.js +2 -3
  33. package/dist/esnext/components/Seo/ProductSeo.client.js +9 -10
  34. package/dist/esnext/components/ShopPayButton/ShopPayButton.client.js +2 -3
  35. package/dist/esnext/components/Video/Video.js +2 -3
  36. package/dist/esnext/config.d.ts +4 -0
  37. package/dist/esnext/config.js +4 -0
  38. package/dist/esnext/constants.d.ts +2 -0
  39. package/dist/esnext/constants.js +2 -0
  40. package/dist/esnext/entry-client.js +5 -19
  41. package/dist/esnext/entry-server.d.ts +1 -17
  42. package/dist/esnext/entry-server.js +189 -48
  43. package/dist/esnext/foundation/Analytics/ServerAnalyticsRoute.d.ts +4 -0
  44. package/dist/esnext/foundation/Analytics/{ServerAnalyticsRoute.server.js → ServerAnalyticsRoute.js} +5 -4
  45. package/dist/esnext/foundation/Analytics/connectors/PerformanceMetrics/ServerAnalyticsConnector.d.ts +3 -0
  46. package/dist/esnext/foundation/Analytics/connectors/PerformanceMetrics/ServerAnalyticsConnector.js +27 -0
  47. package/dist/esnext/foundation/Analytics/connectors/Shopify/ServerAnalyticsConnector.d.ts +3 -0
  48. package/dist/esnext/foundation/Analytics/connectors/Shopify/ServerAnalyticsConnector.js +21 -0
  49. package/dist/esnext/foundation/Analytics/connectors/Shopify/ShopifyAnalytics.server.js +2 -3
  50. package/dist/esnext/foundation/BuiltInRoutes/BuiltInRoutes.d.ts +2 -0
  51. package/dist/esnext/foundation/BuiltInRoutes/BuiltInRoutes.js +23 -0
  52. package/dist/esnext/foundation/BuiltInRoutes/healthCheck.d.ts +1 -0
  53. package/dist/esnext/foundation/BuiltInRoutes/healthCheck.js +3 -0
  54. package/dist/esnext/foundation/Cache/cache-sub-request.js +2 -2
  55. package/dist/esnext/foundation/Cache/cache.js +2 -2
  56. package/dist/esnext/foundation/Cache/strategies/index.d.ts +3 -7
  57. package/dist/esnext/foundation/Cache/strategies/index.js +6 -48
  58. package/dist/esnext/foundation/Cookie/Cookie.js +5 -0
  59. package/dist/esnext/foundation/DevTools/DevTools.client.d.ts +3 -0
  60. package/dist/esnext/foundation/DevTools/DevTools.client.js +17 -0
  61. package/dist/esnext/foundation/DevTools/DevTools.server.d.ts +1 -0
  62. package/dist/esnext/foundation/DevTools/DevTools.server.js +14 -0
  63. package/dist/esnext/foundation/DevTools/components/GraphQL.client.d.ts +1 -0
  64. package/dist/esnext/foundation/DevTools/components/GraphQL.client.js +25 -0
  65. package/dist/esnext/foundation/DevTools/components/Heading.d.ts +5 -0
  66. package/dist/esnext/foundation/DevTools/components/Heading.js +12 -0
  67. package/dist/esnext/foundation/DevTools/components/Interface.client.d.ts +11 -0
  68. package/dist/esnext/foundation/DevTools/components/Interface.client.js +47 -0
  69. package/dist/esnext/foundation/DevTools/components/Panels.d.ts +8 -0
  70. package/dist/esnext/foundation/DevTools/components/Panels.js +60 -0
  71. package/dist/esnext/foundation/DevTools/components/Performance.client.d.ts +14 -0
  72. package/dist/esnext/foundation/DevTools/components/Performance.client.js +26 -0
  73. package/dist/esnext/foundation/DevTools/components/Settings.client.d.ts +7 -0
  74. package/dist/esnext/foundation/DevTools/components/Settings.client.js +20 -0
  75. package/dist/esnext/foundation/DevTools/components/Table.d.ts +9 -0
  76. package/dist/esnext/foundation/DevTools/components/Table.js +7 -0
  77. package/dist/esnext/foundation/DevTools/components/icons.d.ts +2 -0
  78. package/dist/esnext/foundation/DevTools/components/icons.js +13 -0
  79. package/dist/esnext/foundation/DevTools/components/index.d.ts +2 -0
  80. package/dist/esnext/foundation/DevTools/components/index.js +2 -0
  81. package/dist/esnext/foundation/FileRoutes/FileRoutes.server.js +4 -4
  82. package/dist/esnext/foundation/Html/Html.js +4 -7
  83. package/dist/esnext/foundation/HydrogenRequest/HydrogenRequest.server.d.ts +9 -4
  84. package/dist/esnext/foundation/HydrogenRequest/HydrogenRequest.server.js +67 -10
  85. package/dist/esnext/foundation/HydrogenResponse/HydrogenResponse.server.d.ts +5 -7
  86. package/dist/esnext/foundation/HydrogenResponse/HydrogenResponse.server.js +22 -20
  87. package/dist/esnext/foundation/Router/BrowserRouter.client.js +1 -2
  88. package/dist/esnext/foundation/ServerRequestProvider/ServerRequestProvider.js +5 -7
  89. package/dist/esnext/foundation/ShopifyProvider/ShopifyProvider.server.js +3 -5
  90. package/dist/esnext/foundation/fetchSync/server/fetchSync.js +1 -1
  91. package/dist/esnext/foundation/useNavigate/useNavigate.js +3 -4
  92. package/dist/esnext/foundation/useQuery/hooks.js +15 -21
  93. package/dist/esnext/foundation/useServerProps/use-server-props.js +2 -2
  94. package/dist/esnext/foundation/useSession/useSession.js +1 -2
  95. package/dist/esnext/foundation/useUrl/useUrl.js +1 -2
  96. package/dist/esnext/framework/cache/in-memory.js +3 -3
  97. package/dist/esnext/framework/middleware.d.ts +1 -1
  98. package/dist/esnext/framework/middleware.js +3 -4
  99. package/dist/esnext/framework/plugin.d.ts +7 -3
  100. package/dist/esnext/framework/plugin.js +2 -1
  101. package/dist/esnext/framework/plugins/vite-plugin-client-imports.js +1 -1
  102. package/dist/esnext/framework/plugins/vite-plugin-hydrogen-config.js +70 -67
  103. package/dist/esnext/framework/plugins/vite-plugin-hydrogen-middleware.d.ts +1 -1
  104. package/dist/esnext/framework/plugins/vite-plugin-hydrogen-middleware.js +2 -3
  105. package/dist/esnext/framework/plugins/vite-plugin-hydrogen-rsc.js +1 -1
  106. package/dist/esnext/framework/plugins/vite-plugin-hydrogen-virtual-files.d.ts +1 -1
  107. package/dist/esnext/framework/plugins/vite-plugin-hydrogen-virtual-files.js +6 -4
  108. package/dist/esnext/framework/types.d.ts +5 -0
  109. package/dist/esnext/framework/types.js +1 -0
  110. package/dist/esnext/hooks/index.d.ts +0 -1
  111. package/dist/esnext/hooks/index.js +0 -1
  112. package/dist/esnext/hooks/useCartLine/useCartLine.d.ts +4 -4
  113. package/dist/esnext/hooks/useMoney/hooks.js +53 -39
  114. package/dist/esnext/hooks/useProductOptions/helpers.js +6 -10
  115. package/dist/esnext/hooks/useShopQuery/hooks.js +18 -12
  116. package/dist/esnext/index.d.ts +1 -5
  117. package/dist/esnext/index.js +1 -5
  118. package/dist/{node/entry-server.d.ts → esnext/shared-types.d.ts} +11 -7
  119. package/dist/esnext/shared-types.js +4 -0
  120. package/dist/esnext/storefront-api-types.d.ts +37 -114
  121. package/dist/esnext/streaming.server.d.ts +9 -18
  122. package/dist/esnext/streaming.server.js +2 -7
  123. package/dist/esnext/types.d.ts +9 -18
  124. package/dist/esnext/types.js +1 -1
  125. package/dist/esnext/utilities/apiRoutes.d.ts +7 -3
  126. package/dist/esnext/utilities/apiRoutes.js +6 -4
  127. package/dist/esnext/utilities/devtools.d.ts +1 -1
  128. package/dist/esnext/utilities/devtools.js +3 -3
  129. package/dist/esnext/utilities/flattenConnection/flattenConnection.d.ts +1 -0
  130. package/dist/esnext/utilities/flattenConnection/flattenConnection.js +13 -6
  131. package/dist/esnext/utilities/graphql-tracker.js +6 -8
  132. package/dist/esnext/utilities/hash.d.ts +2 -2
  133. package/dist/esnext/utilities/hash.js +29 -6
  134. package/dist/esnext/utilities/image_size.d.ts +24 -3
  135. package/dist/esnext/utilities/image_size.js +53 -31
  136. package/dist/esnext/utilities/index.d.ts +1 -1
  137. package/dist/esnext/utilities/index.js +1 -1
  138. package/dist/esnext/utilities/load_script.js +1 -1
  139. package/dist/esnext/utilities/log/log-cache-api-status.js +3 -2
  140. package/dist/esnext/utilities/log/log-query-timeline.js +29 -10
  141. package/dist/esnext/utilities/log/log.js +1 -2
  142. package/dist/esnext/utilities/log/utils.js +1 -6
  143. package/dist/esnext/utilities/parseMetafield/index.d.ts +1 -0
  144. package/dist/esnext/utilities/parseMetafield/index.js +1 -0
  145. package/dist/esnext/utilities/parseMetafield/parseMetafield.d.ts +15 -0
  146. package/dist/esnext/utilities/{parseMetafieldValue/parseMetafieldValue.js → parseMetafield/parseMetafield.js} +28 -2
  147. package/dist/esnext/utilities/storefrontApi.js +9 -5
  148. package/dist/esnext/utilities/template.js +1 -2
  149. package/dist/esnext/utilities/web-api-polyfill.js +6 -0
  150. package/dist/esnext/version.d.ts +1 -1
  151. package/dist/esnext/version.js +1 -1
  152. package/dist/node/framework/cache/in-memory.js +3 -3
  153. package/dist/node/framework/middleware.d.ts +1 -1
  154. package/dist/node/framework/middleware.js +3 -4
  155. package/dist/node/framework/plugin.d.ts +4 -3
  156. package/dist/node/framework/plugin.js +3 -2
  157. package/dist/node/framework/plugins/vite-plugin-client-imports.js +1 -1
  158. package/dist/node/framework/plugins/vite-plugin-hydrogen-config.js +70 -67
  159. package/dist/node/framework/plugins/vite-plugin-hydrogen-middleware.d.ts +1 -1
  160. package/dist/node/framework/plugins/vite-plugin-hydrogen-middleware.js +2 -3
  161. package/dist/node/framework/plugins/vite-plugin-hydrogen-rsc.js +2 -2
  162. package/dist/node/framework/plugins/vite-plugin-hydrogen-virtual-files.d.ts +1 -1
  163. package/dist/node/framework/plugins/vite-plugin-hydrogen-virtual-files.js +6 -4
  164. package/dist/node/framework/types.d.ts +5 -0
  165. package/dist/node/{components/CartProvider → framework}/types.js +0 -0
  166. package/dist/node/shared-types.d.ts +26 -0
  167. package/dist/node/shared-types.js +5 -0
  168. package/dist/node/utilities/web-api-polyfill.js +6 -0
  169. package/package.json +32 -26
  170. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-plugin.js +64 -30
  171. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.browser.development.server.js +50 -13
  172. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.browser.production.min.server.js +28 -27
  173. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.node.development.server.js +50 -13
  174. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.node.production.min.server.js +28 -28
  175. package/vendor/react-server-dom-vite/esm/react-server-dom-vite-client-proxy.js +3 -5
  176. package/vendor/react-server-dom-vite/esm/react-server-dom-vite-plugin.js +64 -30
  177. package/vendor/react-server-dom-vite/esm/react-server-dom-vite-writer.browser.server.js +50 -13
  178. package/vendor/react-server-dom-vite/esm/react-server-dom-vite-writer.node.server.js +50 -13
  179. package/client.d.ts +0 -1
  180. package/client.js +0 -1
  181. package/config.d.ts +0 -1
  182. package/config.js +0 -1
  183. package/dist/esnext/components/DevTools.client.d.ts +0 -1
  184. package/dist/esnext/components/DevTools.client.js +0 -129
  185. package/dist/esnext/foundation/Analytics/ServerAnalyticsRoute.server.d.ts +0 -2
  186. package/dist/esnext/foundation/Analytics/connectors/PerformanceMetrics/ServerAnalyticsConnector.server.d.ts +0 -1
  187. package/dist/esnext/foundation/Analytics/connectors/PerformanceMetrics/ServerAnalyticsConnector.server.js +0 -25
  188. package/dist/esnext/foundation/Analytics/connectors/Shopify/ServerAnalyticsConnector.server.d.ts +0 -1
  189. package/dist/esnext/foundation/Analytics/connectors/Shopify/ServerAnalyticsConnector.server.js +0 -19
  190. package/dist/esnext/framework/Hydration/rsc.d.ts +0 -8
  191. package/dist/esnext/framework/Hydration/rsc.js +0 -102
  192. package/dist/esnext/hooks/useParsedMetafields/index.d.ts +0 -1
  193. package/dist/esnext/hooks/useParsedMetafields/index.js +0 -1
  194. package/dist/esnext/hooks/useParsedMetafields/useParsedMetafields.d.ts +0 -21
  195. package/dist/esnext/hooks/useParsedMetafields/useParsedMetafields.js +0 -21
  196. package/dist/esnext/utilities/parseMetafieldValue/index.d.ts +0 -1
  197. package/dist/esnext/utilities/parseMetafieldValue/index.js +0 -1
  198. package/dist/esnext/utilities/parseMetafieldValue/parseMetafieldValue.d.ts +0 -6
  199. package/dist/node/client.d.ts +0 -16
  200. package/dist/node/client.js +0 -43
  201. package/dist/node/components/AddToCartButton/AddToCartButton.client.d.ts +0 -23
  202. package/dist/node/components/AddToCartButton/AddToCartButton.client.js +0 -74
  203. package/dist/node/components/AddToCartButton/index.d.ts +0 -1
  204. package/dist/node/components/AddToCartButton/index.js +0 -5
  205. package/dist/node/components/BuyNowButton/BuyNowButton.client.d.ts +0 -18
  206. package/dist/node/components/BuyNowButton/BuyNowButton.client.js +0 -53
  207. package/dist/node/components/BuyNowButton/index.d.ts +0 -1
  208. package/dist/node/components/BuyNowButton/index.js +0 -5
  209. package/dist/node/components/CartCheckoutButton/CartCheckoutButton.client.d.ts +0 -11
  210. package/dist/node/components/CartCheckoutButton/CartCheckoutButton.client.js +0 -44
  211. package/dist/node/components/CartCheckoutButton/index.d.ts +0 -1
  212. package/dist/node/components/CartCheckoutButton/index.js +0 -5
  213. package/dist/node/components/CartEstimatedCost/CartEstimatedCost.client.d.ts +0 -14
  214. package/dist/node/components/CartEstimatedCost/CartEstimatedCost.client.js +0 -36
  215. package/dist/node/components/CartEstimatedCost/index.d.ts +0 -1
  216. package/dist/node/components/CartEstimatedCost/index.js +0 -5
  217. package/dist/node/components/CartLineImage/CartLineImage.client.d.ts +0 -9
  218. package/dist/node/components/CartLineImage/CartLineImage.client.js +0 -18
  219. package/dist/node/components/CartLineImage/index.d.ts +0 -1
  220. package/dist/node/components/CartLineImage/index.js +0 -5
  221. package/dist/node/components/CartLinePrice/CartLinePrice.client.d.ts +0 -12
  222. package/dist/node/components/CartLinePrice/CartLinePrice.client.js +0 -25
  223. package/dist/node/components/CartLinePrice/index.d.ts +0 -1
  224. package/dist/node/components/CartLinePrice/index.js +0 -5
  225. package/dist/node/components/CartLineProductTitle/CartLineProductTitle.client.d.ts +0 -8
  226. package/dist/node/components/CartLineProductTitle/CartLineProductTitle.client.js +0 -19
  227. package/dist/node/components/CartLineProductTitle/index.d.ts +0 -1
  228. package/dist/node/components/CartLineProductTitle/index.js +0 -5
  229. package/dist/node/components/CartLineProvider/CartLineProvider.client.d.ts +0 -11
  230. package/dist/node/components/CartLineProvider/CartLineProvider.client.js +0 -15
  231. package/dist/node/components/CartLineProvider/context.d.ts +0 -36
  232. package/dist/node/components/CartLineProvider/context.js +0 -5
  233. package/dist/node/components/CartLineProvider/index.d.ts +0 -2
  234. package/dist/node/components/CartLineProvider/index.js +0 -7
  235. package/dist/node/components/CartLineQuantity/CartLineQuantity.client.d.ts +0 -8
  236. package/dist/node/components/CartLineQuantity/CartLineQuantity.client.js +0 -19
  237. package/dist/node/components/CartLineQuantity/index.d.ts +0 -1
  238. package/dist/node/components/CartLineQuantity/index.js +0 -5
  239. package/dist/node/components/CartLineQuantityAdjustButton/CartLineQuantityAdjustButton.d.ts +0 -14
  240. package/dist/node/components/CartLineQuantityAdjustButton/CartLineQuantityAdjustButton.js +0 -31
  241. package/dist/node/components/CartLineQuantityAdjustButton/index.d.ts +0 -1
  242. package/dist/node/components/CartLineQuantityAdjustButton/index.js +0 -5
  243. package/dist/node/components/CartLines/CartLines.client.d.ts +0 -15
  244. package/dist/node/components/CartLines/CartLines.client.js +0 -44
  245. package/dist/node/components/CartLines/index.d.ts +0 -1
  246. package/dist/node/components/CartLines/index.js +0 -5
  247. package/dist/node/components/CartProvider/CartProvider.client.d.ts +0 -41
  248. package/dist/node/components/CartProvider/CartProvider.client.js +0 -547
  249. package/dist/node/components/CartProvider/cart-queries.d.ts +0 -10
  250. package/dist/node/components/CartProvider/cart-queries.js +0 -214
  251. package/dist/node/components/CartProvider/constants.d.ts +0 -2
  252. package/dist/node/components/CartProvider/constants.js +0 -5
  253. package/dist/node/components/CartProvider/context.d.ts +0 -2
  254. package/dist/node/components/CartProvider/context.js +0 -5
  255. package/dist/node/components/CartProvider/graphql/CartAttributesUpdateMutation.d.ts +0 -96
  256. package/dist/node/components/CartProvider/graphql/CartAttributesUpdateMutation.js +0 -2
  257. package/dist/node/components/CartProvider/graphql/CartBuyerIdentityUpdateMutation.d.ts +0 -96
  258. package/dist/node/components/CartProvider/graphql/CartBuyerIdentityUpdateMutation.js +0 -2
  259. package/dist/node/components/CartProvider/graphql/CartCreateMutation.d.ts +0 -95
  260. package/dist/node/components/CartProvider/graphql/CartCreateMutation.js +0 -2
  261. package/dist/node/components/CartProvider/graphql/CartDiscountCodesUpdateMutation.d.ts +0 -96
  262. package/dist/node/components/CartProvider/graphql/CartDiscountCodesUpdateMutation.js +0 -2
  263. package/dist/node/components/CartProvider/graphql/CartFragment.d.ts +0 -82
  264. package/dist/node/components/CartProvider/graphql/CartFragment.js +0 -2
  265. package/dist/node/components/CartProvider/graphql/CartLineAddMutation.d.ts +0 -96
  266. package/dist/node/components/CartProvider/graphql/CartLineAddMutation.js +0 -2
  267. package/dist/node/components/CartProvider/graphql/CartLineRemoveMutation.d.ts +0 -96
  268. package/dist/node/components/CartProvider/graphql/CartLineRemoveMutation.js +0 -2
  269. package/dist/node/components/CartProvider/graphql/CartLineUpdateMutation.d.ts +0 -96
  270. package/dist/node/components/CartProvider/graphql/CartLineUpdateMutation.js +0 -2
  271. package/dist/node/components/CartProvider/graphql/CartNoteUpdateMutation.d.ts +0 -96
  272. package/dist/node/components/CartProvider/graphql/CartNoteUpdateMutation.js +0 -2
  273. package/dist/node/components/CartProvider/graphql/CartQuery.d.ts +0 -91
  274. package/dist/node/components/CartProvider/graphql/CartQuery.js +0 -2
  275. package/dist/node/components/CartProvider/hooks.client.d.ts +0 -15
  276. package/dist/node/components/CartProvider/hooks.client.js +0 -88
  277. package/dist/node/components/CartProvider/index.d.ts +0 -4
  278. package/dist/node/components/CartProvider/index.js +0 -10
  279. package/dist/node/components/CartProvider/types.d.ts +0 -104
  280. package/dist/node/components/CartShopPayButton/CartShopPayButton.client.d.ts +0 -9
  281. package/dist/node/components/CartShopPayButton/CartShopPayButton.client.js +0 -46
  282. package/dist/node/components/CartShopPayButton/index.d.ts +0 -1
  283. package/dist/node/components/CartShopPayButton/index.js +0 -5
  284. package/dist/node/components/ExternalVideo/ExternalVideo.d.ts +0 -21
  285. package/dist/node/components/ExternalVideo/ExternalVideo.js +0 -21
  286. package/dist/node/components/ExternalVideo/index.d.ts +0 -1
  287. package/dist/node/components/ExternalVideo/index.js +0 -5
  288. package/dist/node/components/Image/Image.d.ts +0 -92
  289. package/dist/node/components/Image/Image.js +0 -137
  290. package/dist/node/components/Image/index.d.ts +0 -2
  291. package/dist/node/components/Image/index.js +0 -5
  292. package/dist/node/components/Link/Link.client.d.ts +0 -25
  293. package/dist/node/components/Link/Link.client.js +0 -165
  294. package/dist/node/components/Link/index.d.ts +0 -1
  295. package/dist/node/components/Link/index.js +0 -5
  296. package/dist/node/components/LocalizationProvider/LocalizationClientProvider.client.d.ts +0 -6
  297. package/dist/node/components/LocalizationProvider/LocalizationClientProvider.client.js +0 -11
  298. package/dist/node/components/LocalizationProvider/LocalizationContext.client.d.ts +0 -6
  299. package/dist/node/components/LocalizationProvider/LocalizationContext.client.js +0 -5
  300. package/dist/node/components/LocalizationProvider/LocalizationProvider.server.d.ts +0 -33
  301. package/dist/node/components/LocalizationProvider/LocalizationProvider.server.js +0 -51
  302. package/dist/node/components/MediaFile/MediaFile.d.ts +0 -19
  303. package/dist/node/components/MediaFile/MediaFile.js +0 -39
  304. package/dist/node/components/MediaFile/index.d.ts +0 -1
  305. package/dist/node/components/MediaFile/index.js +0 -5
  306. package/dist/node/components/Metafield/Metafield.client.d.ts +0 -21
  307. package/dist/node/components/Metafield/Metafield.client.js +0 -75
  308. package/dist/node/components/Metafield/index.d.ts +0 -2
  309. package/dist/node/components/Metafield/index.js +0 -5
  310. package/dist/node/components/Metafield/types.d.ts +0 -4
  311. package/dist/node/components/Metafield/types.js +0 -2
  312. package/dist/node/components/ModelViewer/ModelViewer.client.d.ts +0 -128
  313. package/dist/node/components/ModelViewer/ModelViewer.client.js +0 -132
  314. package/dist/node/components/ModelViewer/index.d.ts +0 -1
  315. package/dist/node/components/ModelViewer/index.js +0 -5
  316. package/dist/node/components/Money/Money.client.d.ts +0 -25
  317. package/dist/node/components/Money/Money.client.js +0 -46
  318. package/dist/node/components/Money/index.d.ts +0 -1
  319. package/dist/node/components/Money/index.js +0 -5
  320. package/dist/node/components/ProductOptionsProvider/ProductOptionsProvider.client.d.ts +0 -21
  321. package/dist/node/components/ProductOptionsProvider/ProductOptionsProvider.client.js +0 -168
  322. package/dist/node/components/ProductOptionsProvider/context.d.ts +0 -2
  323. package/dist/node/components/ProductOptionsProvider/context.js +0 -5
  324. package/dist/node/components/ProductOptionsProvider/index.d.ts +0 -2
  325. package/dist/node/components/ProductOptionsProvider/index.js +0 -7
  326. package/dist/node/components/ProductPrice/ProductPrice.client.d.ts +0 -18
  327. package/dist/node/components/ProductPrice/ProductPrice.client.js +0 -61
  328. package/dist/node/components/ProductPrice/index.d.ts +0 -1
  329. package/dist/node/components/ProductPrice/index.js +0 -5
  330. package/dist/node/components/Seo/CollectionSeo.client.d.ts +0 -3
  331. package/dist/node/components/Seo/CollectionSeo.client.js +0 -22
  332. package/dist/node/components/Seo/DefaultPageSeo.client.d.ts +0 -3
  333. package/dist/node/components/Seo/DefaultPageSeo.client.js +0 -25
  334. package/dist/node/components/Seo/DescriptionSeo.client.d.ts +0 -4
  335. package/dist/node/components/Seo/DescriptionSeo.client.js +0 -17
  336. package/dist/node/components/Seo/HomePageSeo.client.d.ts +0 -2
  337. package/dist/node/components/Seo/HomePageSeo.client.js +0 -32
  338. package/dist/node/components/Seo/ImageSeo.client.d.ts +0 -3
  339. package/dist/node/components/Seo/ImageSeo.client.js +0 -17
  340. package/dist/node/components/Seo/NoIndexSeo.client.d.ts +0 -3
  341. package/dist/node/components/Seo/NoIndexSeo.client.js +0 -17
  342. package/dist/node/components/Seo/PageSeo.client.d.ts +0 -3
  343. package/dist/node/components/Seo/PageSeo.client.js +0 -20
  344. package/dist/node/components/Seo/ProductSeo.client.d.ts +0 -5
  345. package/dist/node/components/Seo/ProductSeo.client.js +0 -70
  346. package/dist/node/components/Seo/Seo.client.d.ts +0 -30
  347. package/dist/node/components/Seo/Seo.client.js +0 -38
  348. package/dist/node/components/Seo/TitleSeo.client.d.ts +0 -3
  349. package/dist/node/components/Seo/TitleSeo.client.js +0 -17
  350. package/dist/node/components/Seo/TwitterSeo.client.d.ts +0 -2
  351. package/dist/node/components/Seo/TwitterSeo.client.js +0 -16
  352. package/dist/node/components/Seo/index.d.ts +0 -1
  353. package/dist/node/components/Seo/index.js +0 -5
  354. package/dist/node/components/Seo/seo-types.d.ts +0 -17
  355. package/dist/node/components/Seo/seo-types.js +0 -2
  356. package/dist/node/components/ShopPayButton/ShopPayButton.client.d.ts +0 -38
  357. package/dist/node/components/ShopPayButton/ShopPayButton.client.js +0 -60
  358. package/dist/node/components/ShopPayButton/index.d.ts +0 -1
  359. package/dist/node/components/ShopPayButton/index.js +0 -5
  360. package/dist/node/components/Video/Video.d.ts +0 -14
  361. package/dist/node/components/Video/Video.js +0 -31
  362. package/dist/node/components/Video/index.d.ts +0 -1
  363. package/dist/node/components/Video/index.js +0 -5
  364. package/dist/node/components/index.d.ts +0 -28
  365. package/dist/node/components/index.js +0 -59
  366. package/dist/node/components/types.d.ts +0 -71
  367. package/dist/node/components/types.js +0 -11
  368. package/dist/node/constants.d.ts +0 -7
  369. package/dist/node/constants.js +0 -10
  370. package/dist/node/entry-server.js +0 -495
  371. package/dist/node/foundation/Analytics/Analytics.client.d.ts +0 -3
  372. package/dist/node/foundation/Analytics/Analytics.client.js +0 -34
  373. package/dist/node/foundation/Analytics/Analytics.server.d.ts +0 -1
  374. package/dist/node/foundation/Analytics/Analytics.server.js +0 -77
  375. package/dist/node/foundation/Analytics/ClientAnalytics.d.ts +0 -27
  376. package/dist/node/foundation/Analytics/ClientAnalytics.js +0 -102
  377. package/dist/node/foundation/Analytics/ServerAnalyticsRoute.server.d.ts +0 -2
  378. package/dist/node/foundation/Analytics/ServerAnalyticsRoute.server.js +0 -39
  379. package/dist/node/foundation/Analytics/connectors/PerformanceMetrics/PerformanceMetrics.client.d.ts +0 -7
  380. package/dist/node/foundation/Analytics/connectors/PerformanceMetrics/PerformanceMetrics.client.js +0 -68
  381. package/dist/node/foundation/Analytics/connectors/PerformanceMetrics/PerformanceMetricsDebug.client.d.ts +0 -1
  382. package/dist/node/foundation/Analytics/connectors/PerformanceMetrics/PerformanceMetricsDebug.client.js +0 -27
  383. package/dist/node/foundation/Analytics/const.d.ts +0 -9
  384. package/dist/node/foundation/Analytics/const.js +0 -12
  385. package/dist/node/foundation/Analytics/hook.d.ts +0 -1
  386. package/dist/node/foundation/Analytics/hook.js +0 -13
  387. package/dist/node/foundation/Analytics/index.d.ts +0 -1
  388. package/dist/node/foundation/Analytics/index.js +0 -5
  389. package/dist/node/foundation/Analytics/types.d.ts +0 -5
  390. package/dist/node/foundation/Analytics/types.js +0 -2
  391. package/dist/node/foundation/Analytics/utils.d.ts +0 -3
  392. package/dist/node/foundation/Analytics/utils.js +0 -35
  393. package/dist/node/foundation/AnalyticsErrorBoundary.client.d.ts +0 -4
  394. package/dist/node/foundation/AnalyticsErrorBoundary.client.js +0 -14
  395. package/dist/node/foundation/Cache/cache-sub-request.d.ts +0 -17
  396. package/dist/node/foundation/Cache/cache-sub-request.js +0 -95
  397. package/dist/node/foundation/Cache/cache.d.ts +0 -17
  398. package/dist/node/foundation/Cache/cache.js +0 -135
  399. package/dist/node/foundation/Cache/strategies/index.d.ts +0 -11
  400. package/dist/node/foundation/Cache/strategies/index.js +0 -108
  401. package/dist/node/foundation/Head/Head.client.d.ts +0 -5
  402. package/dist/node/foundation/Head/Head.client.js +0 -17
  403. package/dist/node/foundation/Head/index.d.ts +0 -1
  404. package/dist/node/foundation/Head/index.js +0 -5
  405. package/dist/node/foundation/Html/Html.d.ts +0 -13
  406. package/dist/node/foundation/Html/Html.js +0 -107
  407. package/dist/node/foundation/HydrogenRequest/HydrogenRequest.server.d.ts +0 -63
  408. package/dist/node/foundation/HydrogenRequest/HydrogenRequest.server.js +0 -151
  409. package/dist/node/foundation/HydrogenResponse/HydrogenResponse.server.d.ts +0 -23
  410. package/dist/node/foundation/HydrogenResponse/HydrogenResponse.server.js +0 -53
  411. package/dist/node/foundation/Redirect/Redirect.client.d.ts +0 -5
  412. package/dist/node/foundation/Redirect/Redirect.client.js +0 -18
  413. package/dist/node/foundation/Router/BrowserRouter.client.d.ts +0 -14
  414. package/dist/node/foundation/Router/BrowserRouter.client.js +0 -166
  415. package/dist/node/foundation/ServerPropsProvider/ServerPropsProvider.d.ts +0 -41
  416. package/dist/node/foundation/ServerPropsProvider/ServerPropsProvider.js +0 -90
  417. package/dist/node/foundation/ServerPropsProvider/index.d.ts +0 -2
  418. package/dist/node/foundation/ServerPropsProvider/index.js +0 -6
  419. package/dist/node/foundation/ServerRequestProvider/ServerRequestProvider.d.ts +0 -22
  420. package/dist/node/foundation/ServerRequestProvider/ServerRequestProvider.js +0 -155
  421. package/dist/node/foundation/ServerRequestProvider/index.d.ts +0 -1
  422. package/dist/node/foundation/ServerRequestProvider/index.js +0 -17
  423. package/dist/node/foundation/ShopifyProvider/ShopifyProvider.client.d.ts +0 -7
  424. package/dist/node/foundation/ShopifyProvider/ShopifyProvider.client.js +0 -35
  425. package/dist/node/foundation/ShopifyProvider/index.d.ts +0 -1
  426. package/dist/node/foundation/ShopifyProvider/index.js +0 -5
  427. package/dist/node/foundation/ShopifyProvider/types.d.ts +0 -13
  428. package/dist/node/foundation/ShopifyProvider/types.js +0 -2
  429. package/dist/node/foundation/fetchSync/client/fetchSync.d.ts +0 -10
  430. package/dist/node/foundation/fetchSync/client/fetchSync.js +0 -33
  431. package/dist/node/foundation/fetchSync/server/fetchSync.d.ts +0 -8
  432. package/dist/node/foundation/fetchSync/server/fetchSync.js +0 -33
  433. package/dist/node/foundation/fetchSync/types.d.ts +0 -5
  434. package/dist/node/foundation/fetchSync/types.js +0 -2
  435. package/dist/node/foundation/index.d.ts +0 -3
  436. package/dist/node/foundation/index.js +0 -10
  437. package/dist/node/foundation/runtime.d.ts +0 -2
  438. package/dist/node/foundation/runtime.js +0 -11
  439. package/dist/node/foundation/session/session.d.ts +0 -27
  440. package/dist/node/foundation/session/session.js +0 -43
  441. package/dist/node/foundation/ssr-interop.d.ts +0 -29
  442. package/dist/node/foundation/ssr-interop.js +0 -39
  443. package/dist/node/foundation/useNavigate/useNavigate.d.ts +0 -15
  444. package/dist/node/foundation/useNavigate/useNavigate.js +0 -25
  445. package/dist/node/foundation/useQuery/hooks.d.ts +0 -37
  446. package/dist/node/foundation/useQuery/hooks.js +0 -119
  447. package/dist/node/foundation/useRouteParams/RouteParamsProvider.client.d.ts +0 -10
  448. package/dist/node/foundation/useRouteParams/RouteParamsProvider.client.js +0 -34
  449. package/dist/node/foundation/useRouteParams/useRouteParams.d.ts +0 -4
  450. package/dist/node/foundation/useRouteParams/useRouteParams.js +0 -13
  451. package/dist/node/foundation/useServerProps/index.d.ts +0 -1
  452. package/dist/node/foundation/useServerProps/index.js +0 -5
  453. package/dist/node/foundation/useServerProps/use-server-props.d.ts +0 -21
  454. package/dist/node/foundation/useServerProps/use-server-props.js +0 -40
  455. package/dist/node/foundation/useSession/useSession.d.ts +0 -2
  456. package/dist/node/foundation/useSession/useSession.js +0 -12
  457. package/dist/node/foundation/useShop/index.d.ts +0 -1
  458. package/dist/node/foundation/useShop/index.js +0 -5
  459. package/dist/node/foundation/useShop/use-shop.d.ts +0 -6
  460. package/dist/node/foundation/useShop/use-shop.js +0 -18
  461. package/dist/node/foundation/useUrl/index.d.ts +0 -1
  462. package/dist/node/foundation/useUrl/index.js +0 -5
  463. package/dist/node/foundation/useUrl/useUrl.d.ts +0 -4
  464. package/dist/node/foundation/useUrl/useUrl.js +0 -32
  465. package/dist/node/framework/Hydration/rsc.d.ts +0 -8
  466. package/dist/node/framework/Hydration/rsc.js +0 -105
  467. package/dist/node/hooks/index.d.ts +0 -6
  468. package/dist/node/hooks/index.js +0 -28
  469. package/dist/node/hooks/useCart/index.d.ts +0 -1
  470. package/dist/node/hooks/useCart/index.js +0 -5
  471. package/dist/node/hooks/useCart/useCart.d.ts +0 -4
  472. package/dist/node/hooks/useCart/useCart.js +0 -19
  473. package/dist/node/hooks/useCartLine/index.d.ts +0 -1
  474. package/dist/node/hooks/useCartLine/index.js +0 -5
  475. package/dist/node/hooks/useCartLine/useCartLine.d.ts +0 -39
  476. package/dist/node/hooks/useCartLine/useCartLine.js +0 -16
  477. package/dist/node/hooks/useCountry/index.d.ts +0 -1
  478. package/dist/node/hooks/useCountry/index.js +0 -5
  479. package/dist/node/hooks/useCountry/useCountry.d.ts +0 -7
  480. package/dist/node/hooks/useCountry/useCountry.js +0 -21
  481. package/dist/node/hooks/useLoadScript/index.d.ts +0 -1
  482. package/dist/node/hooks/useLoadScript/index.js +0 -5
  483. package/dist/node/hooks/useLoadScript/useLoadScript.client.d.ts +0 -8
  484. package/dist/node/hooks/useLoadScript/useLoadScript.client.js +0 -27
  485. package/dist/node/hooks/useMeasurement/hooks.d.ts +0 -9
  486. package/dist/node/hooks/useMeasurement/hooks.js +0 -17
  487. package/dist/node/hooks/useMeasurement/index.d.ts +0 -1
  488. package/dist/node/hooks/useMeasurement/index.js +0 -5
  489. package/dist/node/hooks/useMoney/hooks.d.ts +0 -54
  490. package/dist/node/hooks/useMoney/hooks.js +0 -70
  491. package/dist/node/hooks/useMoney/index.d.ts +0 -1
  492. package/dist/node/hooks/useMoney/index.js +0 -5
  493. package/dist/node/hooks/useParsedMetafields/index.d.ts +0 -1
  494. package/dist/node/hooks/useParsedMetafields/index.js +0 -5
  495. package/dist/node/hooks/useParsedMetafields/useParsedMetafields.d.ts +0 -21
  496. package/dist/node/hooks/useParsedMetafields/useParsedMetafields.js +0 -25
  497. package/dist/node/hooks/useProductOptions/helpers.d.ts +0 -6
  498. package/dist/node/hooks/useProductOptions/helpers.js +0 -46
  499. package/dist/node/hooks/useProductOptions/index.d.ts +0 -2
  500. package/dist/node/hooks/useProductOptions/index.js +0 -20
  501. package/dist/node/hooks/useProductOptions/types.d.ts +0 -44
  502. package/dist/node/hooks/useProductOptions/types.js +0 -2
  503. package/dist/node/hooks/useProductOptions/useProductOptions.client.d.ts +0 -1
  504. package/dist/node/hooks/useProductOptions/useProductOptions.client.js +0 -13
  505. package/dist/node/hooks/useShopQuery/hooks.d.ts +0 -28
  506. package/dist/node/hooks/useShopQuery/hooks.js +0 -171
  507. package/dist/node/hooks/useShopQuery/index.d.ts +0 -1
  508. package/dist/node/hooks/useShopQuery/index.js +0 -5
  509. package/dist/node/storefront-api-types.d.ts +0 -6076
  510. package/dist/node/storefront-api-types.js +0 -1766
  511. package/dist/node/streaming.server.d.ts +0 -25
  512. package/dist/node/streaming.server.js +0 -28
  513. package/dist/node/types.d.ts +0 -114
  514. package/dist/node/types.js +0 -2
  515. package/dist/node/utilities/apiRoutes.d.ts +0 -37
  516. package/dist/node/utilities/apiRoutes.js +0 -157
  517. package/dist/node/utilities/bot-ua.d.ts +0 -4
  518. package/dist/node/utilities/bot-ua.js +0 -65
  519. package/dist/node/utilities/devtools.d.ts +0 -11
  520. package/dist/node/utilities/devtools.js +0 -15
  521. package/dist/node/utilities/error.d.ts +0 -1
  522. package/dist/node/utilities/error.js +0 -10
  523. package/dist/node/utilities/fetch.d.ts +0 -9
  524. package/dist/node/utilities/fetch.js +0 -37
  525. package/dist/node/utilities/flattenConnection/flattenConnection.d.ts +0 -6
  526. package/dist/node/utilities/flattenConnection/flattenConnection.js +0 -15
  527. package/dist/node/utilities/flattenConnection/index.d.ts +0 -1
  528. package/dist/node/utilities/flattenConnection/index.js +0 -5
  529. package/dist/node/utilities/graphql-tag.d.ts +0 -1
  530. package/dist/node/utilities/graphql-tag.js +0 -10
  531. package/dist/node/utilities/graphql-tracker.d.ts +0 -17
  532. package/dist/node/utilities/graphql-tracker.js +0 -130
  533. package/dist/node/utilities/hash.d.ts +0 -2
  534. package/dist/node/utilities/hash.js +0 -11
  535. package/dist/node/utilities/html-encoding.d.ts +0 -1
  536. package/dist/node/utilities/html-encoding.js +0 -12
  537. package/dist/node/utilities/image_size.d.ts +0 -12
  538. package/dist/node/utilities/image_size.js +0 -68
  539. package/dist/node/utilities/index.d.ts +0 -12
  540. package/dist/node/utilities/index.js +0 -33
  541. package/dist/node/utilities/isBrowser/index.d.ts +0 -1
  542. package/dist/node/utilities/isBrowser/index.js +0 -5
  543. package/dist/node/utilities/isBrowser/isBrowser.d.ts +0 -4
  544. package/dist/node/utilities/isBrowser/isBrowser.js +0 -10
  545. package/dist/node/utilities/isServer/index.d.ts +0 -1
  546. package/dist/node/utilities/isServer/index.js +0 -5
  547. package/dist/node/utilities/isServer/isServer.d.ts +0 -4
  548. package/dist/node/utilities/isServer/isServer.js +0 -11
  549. package/dist/node/utilities/load_script.d.ts +0 -3
  550. package/dist/node/utilities/load_script.js +0 -27
  551. package/dist/node/utilities/log/index.d.ts +0 -4
  552. package/dist/node/utilities/log/index.js +0 -16
  553. package/dist/node/utilities/log/log-cache-api-status.d.ts +0 -1
  554. package/dist/node/utilities/log/log-cache-api-status.js +0 -17
  555. package/dist/node/utilities/log/log-cache-header.d.ts +0 -10
  556. package/dist/node/utilities/log/log-cache-header.js +0 -35
  557. package/dist/node/utilities/log/log-query-timeline.d.ts +0 -12
  558. package/dist/node/utilities/log/log-query-timeline.js +0 -88
  559. package/dist/node/utilities/log/log.d.ts +0 -28
  560. package/dist/node/utilities/log/log.js +0 -81
  561. package/dist/node/utilities/log/utils.d.ts +0 -3
  562. package/dist/node/utilities/log/utils.js +0 -21
  563. package/dist/node/utilities/matchPath.d.ts +0 -10
  564. package/dist/node/utilities/matchPath.js +0 -58
  565. package/dist/node/utilities/measurement.d.ts +0 -3
  566. package/dist/node/utilities/measurement.js +0 -103
  567. package/dist/node/utilities/parse.d.ts +0 -1
  568. package/dist/node/utilities/parse.js +0 -13
  569. package/dist/node/utilities/parseMetafieldValue/index.d.ts +0 -1
  570. package/dist/node/utilities/parseMetafieldValue/index.js +0 -5
  571. package/dist/node/utilities/parseMetafieldValue/parseMetafieldValue.d.ts +0 -6
  572. package/dist/node/utilities/parseMetafieldValue/parseMetafieldValue.js +0 -40
  573. package/dist/node/utilities/storefrontApi.d.ts +0 -4
  574. package/dist/node/utilities/storefrontApi.js +0 -26
  575. package/dist/node/utilities/suspense.d.ts +0 -12
  576. package/dist/node/utilities/suspense.js +0 -64
  577. package/dist/node/utilities/template.d.ts +0 -9
  578. package/dist/node/utilities/template.js +0 -27
  579. package/dist/node/utilities/timing.d.ts +0 -7
  580. package/dist/node/utilities/timing.js +0 -18
  581. package/dist/node/utilities/video_parameters.d.ts +0 -47
  582. package/dist/node/utilities/video_parameters.js +0 -27
  583. package/dist/node/version.d.ts +0 -1
  584. package/dist/node/version.js +0 -4
  585. package/entry-client.d.ts +0 -1
  586. package/entry-client.js +0 -1
  587. package/entry-server.d.ts +0 -1
  588. package/entry-server.js +0 -1
  589. package/middleware.d.ts +0 -1
  590. package/middleware.js +0 -1
  591. package/plugin.d.ts +0 -1
  592. package/plugin.js +0 -1
  593. package/web-polyfills.js +0 -1
@@ -1,165 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.composeEventHandlers = exports.Link = void 0;
27
- const react_1 = __importStar(require("react"));
28
- const BrowserRouter_client_1 = require("../../foundation/Router/BrowserRouter.client");
29
- const history_1 = require("history");
30
- const useNavigate_1 = require("../../foundation/useNavigate/useNavigate");
31
- const constants_1 = require("../../constants");
32
- const use_server_props_1 = require("../../foundation/useServerProps/use-server-props");
33
- /**
34
- * The `Link` component is used to navigate between routes. Because it renders an underlying `<a>` element, all
35
- * properties available to the `<a>` element are also available to the `Link` component.
36
- * For more information, refer to the [`<a>` element documentation](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attributes).
37
- */
38
- exports.Link = react_1.default.forwardRef(function Link(props, ref) {
39
- const navigate = (0, useNavigate_1.useNavigate)();
40
- const { location } = (0, BrowserRouter_client_1.useRouter)();
41
- const [_, startTransition] = react_1.default.useTransition();
42
- /**
43
- * Inspired by Remix's Link component
44
- */
45
- const [shouldPrefetch, setShouldPrefetch] = (0, react_1.useState)(false);
46
- const [maybePrefetch, setMaybePrefetch] = (0, react_1.useState)(false);
47
- const { reloadDocument, target, replace: _replace, to, onClick, clientState, prefetch = true, scroll = true, } = props;
48
- const internalClick = (0, react_1.useCallback)((e) => {
49
- if (onClick)
50
- onClick(e);
51
- if (!reloadDocument && // do regular browser stuff
52
- e.button === 0 && // Ignore everything but left clicks
53
- (!target || target === '_self') && // Let browser handle "target=_blank"
54
- !isModifiedEvent(e) // Ignore modifier key clicks
55
- ) {
56
- e.preventDefault();
57
- // If the URL hasn't changed, the regular <a> will do a replace
58
- const replace = !!_replace || (0, history_1.createPath)(location) === (0, history_1.createPath)({ pathname: to });
59
- navigate(to, {
60
- replace,
61
- scroll,
62
- clientState,
63
- });
64
- }
65
- }, [
66
- onClick,
67
- reloadDocument,
68
- target,
69
- _replace,
70
- location,
71
- to,
72
- navigate,
73
- clientState,
74
- scroll,
75
- ]);
76
- const signalPrefetchIntent = () => {
77
- /**
78
- * startTransition to yield to more important updates
79
- */
80
- startTransition(() => {
81
- if (prefetch) {
82
- setMaybePrefetch(true);
83
- }
84
- });
85
- };
86
- const cancelPrefetchIntent = () => {
87
- /**
88
- * startTransition to yield to more important updates
89
- */
90
- startTransition(() => {
91
- if (prefetch) {
92
- setMaybePrefetch(false);
93
- }
94
- });
95
- };
96
- /**
97
- * Wrapping `maybePrefetch` inside useEffect allows the user to quickly graze over
98
- * a link without triggering a prefetch.
99
- */
100
- (0, react_1.useEffect)(() => {
101
- if (maybePrefetch) {
102
- const id = setTimeout(() => {
103
- setShouldPrefetch(true);
104
- }, 100);
105
- return () => {
106
- clearTimeout(id);
107
- };
108
- }
109
- }, [maybePrefetch]);
110
- const onMouseEnter = composeEventHandlers(props.onMouseEnter, signalPrefetchIntent);
111
- const onMouseLeave = composeEventHandlers(props.onMouseLeave, cancelPrefetchIntent);
112
- const onFocus = composeEventHandlers(props.onFocus, signalPrefetchIntent);
113
- const onBlur = composeEventHandlers(props.onBlur, cancelPrefetchIntent);
114
- const onTouchStart = composeEventHandlers(props.onTouchStart, signalPrefetchIntent);
115
- return (react_1.default.createElement(react_1.default.Fragment, null,
116
- react_1.default.createElement("a", { ...without(props, [
117
- 'to',
118
- 'replace',
119
- 'clientState',
120
- 'reloadDocument',
121
- 'prefetch',
122
- 'scroll',
123
- ]), ref: ref, onClick: internalClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, onFocus: onFocus, onBlur: onBlur, onTouchStart: onTouchStart, href: props.to }, props.children),
124
- shouldPrefetch && react_1.default.createElement(Prefetch, { pathname: to })));
125
- });
126
- function Prefetch({ pathname }) {
127
- const { getProposedLocationServerProps } = (0, use_server_props_1.useInternalServerProps)();
128
- const { location } = (0, BrowserRouter_client_1.useRouter)();
129
- const newPath = (0, history_1.createPath)({ pathname });
130
- if (pathname.startsWith('http') || newPath === (0, history_1.createPath)(location)) {
131
- return null;
132
- }
133
- const newLocation = new URL(newPath, window.location.href);
134
- const proposedServerState = getProposedLocationServerProps({
135
- pathname: newLocation.pathname,
136
- search: newLocation.search,
137
- });
138
- const href = `${constants_1.RSC_PATHNAME}?state=` +
139
- encodeURIComponent(JSON.stringify(proposedServerState));
140
- return react_1.default.createElement("link", { rel: "prefetch", as: "fetch", href: href });
141
- }
142
- /**
143
- * Credit: Remix's <Link> component.
144
- */
145
- function composeEventHandlers(theirHandler, ourHandler) {
146
- return (event) => {
147
- theirHandler === null || theirHandler === void 0 ? void 0 : theirHandler(event);
148
- if (!event.defaultPrevented) {
149
- ourHandler(event);
150
- }
151
- };
152
- }
153
- exports.composeEventHandlers = composeEventHandlers;
154
- function isModifiedEvent(event) {
155
- return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);
156
- }
157
- function without(obj, props) {
158
- const newObj = {};
159
- for (const key of Object.keys(obj)) {
160
- if (!props.includes(key)) {
161
- newObj[key] = obj[key];
162
- }
163
- }
164
- return newObj;
165
- }
@@ -1 +0,0 @@
1
- export { Link } from './Link.client';
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Link = void 0;
4
- var Link_client_1 = require("./Link.client");
5
- Object.defineProperty(exports, "Link", { enumerable: true, get: function () { return Link_client_1.Link; } });
@@ -1,6 +0,0 @@
1
- import { ReactNode } from 'react';
2
- import { Localization } from './LocalizationContext.client';
3
- export default function LocalizationClientProvider({ localization, children, }: {
4
- children: ReactNode;
5
- localization: Localization;
6
- }): JSX.Element;
@@ -1,11 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const react_1 = __importDefault(require("react"));
7
- const LocalizationContext_client_1 = require("./LocalizationContext.client");
8
- function LocalizationClientProvider({ localization, children, }) {
9
- return (react_1.default.createElement(LocalizationContext_client_1.LocalizationContext.Provider, { value: localization }, children));
10
- }
11
- exports.default = LocalizationClientProvider;
@@ -1,6 +0,0 @@
1
- import type { LocalizationQuery } from './LocalizationProvider.server';
2
- export declare type Localization = LocalizationQuery['localization'];
3
- export interface LocalizationContextValue {
4
- country?: Localization['country'];
5
- }
6
- export declare const LocalizationContext: import("react").Context<LocalizationContextValue | null>;
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LocalizationContext = void 0;
4
- const react_1 = require("react");
5
- exports.LocalizationContext = (0, react_1.createContext)(null);
@@ -1,33 +0,0 @@
1
- import { ReactNode } from 'react';
2
- import { PreloadOptions } from '../../types';
3
- import { Country } from '../../storefront-api-types';
4
- export interface LocalizationProviderProps {
5
- /** A `ReactNode` element. */
6
- children: ReactNode;
7
- /** Whether to preload the query. Defaults to `false`. Specify `true` to
8
- * [preload the query](https://shopify.dev/custom-storefronts/hydrogen/framework/preloaded-queries) for the URL
9
- * or `'*'` to preload the query for all requests.
10
- */
11
- preload: PreloadOptions;
12
- }
13
- /**
14
- * The `LocalizationProvider` component automatically queries the Storefront API's
15
- * [`localization`](https://shopify.dev/api/storefront/reference/common-objects/queryroot) field
16
- * for the `isoCode` and `name` of the `country` and keeps this information in a context.
17
- *
18
- * Any descendents of this provider can use the `useCountry` hook.
19
- * The `isoCode` of the `country` can be used in the Storefront API's
20
- * `@inContext` directive as the `country` value.
21
- */
22
- export declare function LocalizationProvider(props: LocalizationProviderProps): JSX.Element;
23
- export declare type LocalizationQuery = {
24
- __typename?: 'QueryRoot';
25
- } & {
26
- localization: {
27
- __typename?: 'Localization';
28
- } & {
29
- country: {
30
- __typename?: 'Country';
31
- } & Pick<Country, 'isoCode' | 'name'>;
32
- };
33
- };
@@ -1,51 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.LocalizationProvider = void 0;
7
- const react_1 = __importDefault(require("react"));
8
- const LocalizationClientProvider_client_1 = __importDefault(require("./LocalizationClientProvider.client"));
9
- const useShop_1 = require("../../foundation/useShop");
10
- const useShopQuery_1 = require("../../hooks/useShopQuery");
11
- const strategies_1 = require("../../foundation/Cache/strategies");
12
- const useSession_1 = require("../../foundation/useSession/useSession");
13
- /**
14
- * The `LocalizationProvider` component automatically queries the Storefront API's
15
- * [`localization`](https://shopify.dev/api/storefront/reference/common-objects/queryroot) field
16
- * for the `isoCode` and `name` of the `country` and keeps this information in a context.
17
- *
18
- * Any descendents of this provider can use the `useCountry` hook.
19
- * The `isoCode` of the `country` can be used in the Storefront API's
20
- * `@inContext` directive as the `country` value.
21
- */
22
- function LocalizationProvider(props) {
23
- const { languageCode } = (0, useShop_1.useShop)();
24
- const { countryCode, countryName } = (0, useSession_1.useSession)();
25
- const { data: { localization }, } = (0, useShopQuery_1.useShopQuery)({
26
- query,
27
- variables: { language: languageCode },
28
- cache: (0, strategies_1.CacheDays)(),
29
- preload: props.preload,
30
- });
31
- return (react_1.default.createElement(LocalizationClientProvider_client_1.default, { localization: countryCode
32
- ? {
33
- country: {
34
- name: countryName,
35
- isoCode: countryCode,
36
- },
37
- }
38
- : localization }, props.children));
39
- }
40
- exports.LocalizationProvider = LocalizationProvider;
41
- const query = `
42
- query Localization($language: LanguageCode)
43
- @inContext(language: $language) {
44
- localization {
45
- country {
46
- isoCode
47
- name
48
- }
49
- }
50
- }
51
- `;
@@ -1,19 +0,0 @@
1
- import React from 'react';
2
- import { type ShopifyImageProps } from '../Image';
3
- import { Video } from '../Video';
4
- import { ExternalVideo } from '../ExternalVideo';
5
- import type { MediaEdge as MediaEdgeType } from '../../storefront-api-types';
6
- import type { PartialDeep } from 'type-fest';
7
- export interface MediaFileProps {
8
- /** An object with fields that correspond to the Storefront API's [Media object](https://shopify.dev/api/storefront/reference/products/media). */
9
- data: PartialDeep<MediaEdgeType['node']>;
10
- /** The options for the `Image`, `Video`, or `ExternalVideo` components. */
11
- options?: ShopifyImageProps | React.ComponentProps<typeof Video>['previewImageOptions'] | React.ComponentProps<typeof ExternalVideo>['options'];
12
- }
13
- /**
14
- * The `MediaFile` component renders the media for the Storefront API's
15
- * [Media object](https://shopify.dev/api/storefront/reference/products/media). It renders an `Image`, a
16
- * `Video`, an `ExternalVideo`, or a `ModelViewer` depending on the `mediaContentType` of the
17
- * `media` provided as a prop.
18
- */
19
- export declare function MediaFile({ data, options, ...passthroughProps }: MediaFileProps): JSX.Element | null;
@@ -1,39 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.MediaFile = void 0;
7
- const react_1 = __importDefault(require("react"));
8
- const Image_1 = require("../Image");
9
- const Video_1 = require("../Video");
10
- const ExternalVideo_1 = require("../ExternalVideo");
11
- const ModelViewer_1 = require("../ModelViewer");
12
- /**
13
- * The `MediaFile` component renders the media for the Storefront API's
14
- * [Media object](https://shopify.dev/api/storefront/reference/products/media). It renders an `Image`, a
15
- * `Video`, an `ExternalVideo`, or a `ModelViewer` depending on the `mediaContentType` of the
16
- * `media` provided as a prop.
17
- */
18
- function MediaFile({ data, options, ...passthroughProps }) {
19
- switch (data.mediaContentType) {
20
- case 'IMAGE': {
21
- const dataImage = data
22
- .image;
23
- if (!dataImage || !dataImage.url) {
24
- console.warn(`No "image" property was found on the "data" prop for <MediaFile/>, for the "type='image'"`);
25
- return null;
26
- }
27
- return (react_1.default.createElement(Image_1.Image, { ...passthroughProps, data: dataImage, loaderOptions: options }));
28
- }
29
- case 'VIDEO':
30
- return (react_1.default.createElement(Video_1.Video, { ...passthroughProps, data: data, previewImageOptions: options }));
31
- case 'EXTERNAL_VIDEO':
32
- return (react_1.default.createElement(ExternalVideo_1.ExternalVideo, { ...passthroughProps, data: data, options: options }));
33
- case 'MODEL_3D':
34
- return (react_1.default.createElement(ModelViewer_1.ModelViewer, { ...passthroughProps, data: data }));
35
- default:
36
- return null;
37
- }
38
- }
39
- exports.MediaFile = MediaFile;
@@ -1 +0,0 @@
1
- export { MediaFile, MediaFileProps } from './MediaFile';
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MediaFile = void 0;
4
- var MediaFile_1 = require("./MediaFile");
5
- Object.defineProperty(exports, "MediaFile", { enumerable: true, get: function () { return MediaFile_1.MediaFile; } });
@@ -1,21 +0,0 @@
1
- import { ElementType } from 'react';
2
- import { Props } from '../types';
3
- import { ParsedMetafield } from '../../types';
4
- export interface MetafieldProps<TTag> {
5
- /** An object with fields that correspond to the Storefront API's [Metafield object](https://shopify.dev/api/storefront/reference/common-objects/metafield). */
6
- data: ParsedMetafield;
7
- /** An HTML tag to be rendered as the base element wrapper. The default value varies depending on [metafield.type](https://shopify.dev/apps/metafields/types). */
8
- as?: TTag;
9
- }
10
- /**
11
- * The `Metafield` component renders the value of a Storefront
12
- * API's [Metafield object](https://shopify.dev/api/storefront/reference/common-objects/metafield).
13
- *
14
- * When a render function is provided, it passes the Metafield object with a value
15
- * that was parsed according to the Metafield's `type` field. For more information,
16
- * refer to the [Render props](#render-props) section.
17
- *
18
- * When no render function is provided, it renders a smart default of the
19
- * Metafield's `value`. For more information, refer to the [Default output](#default-output) section.
20
- */
21
- export declare function Metafield<TTag extends ElementType>(props: Props<TTag> & MetafieldProps<TTag>): JSX.Element | null;
@@ -1,75 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Metafield = void 0;
7
- const react_1 = __importDefault(require("react"));
8
- const foundation_1 = require("../../foundation");
9
- const utilities_1 = require("../../utilities");
10
- const Image_1 = require("../Image");
11
- /**
12
- * The `Metafield` component renders the value of a Storefront
13
- * API's [Metafield object](https://shopify.dev/api/storefront/reference/common-objects/metafield).
14
- *
15
- * When a render function is provided, it passes the Metafield object with a value
16
- * that was parsed according to the Metafield's `type` field. For more information,
17
- * refer to the [Render props](#render-props) section.
18
- *
19
- * When no render function is provided, it renders a smart default of the
20
- * Metafield's `value`. For more information, refer to the [Default output](#default-output) section.
21
- */
22
- function Metafield(props) {
23
- var _a;
24
- const { data, children, as, ...passthroughProps } = props;
25
- const { locale } = (0, foundation_1.useShop)();
26
- if (data.value == null) {
27
- console.warn(`No metafield value for ${data}`);
28
- return null;
29
- }
30
- switch (data.type) {
31
- case 'date': {
32
- const Wrapper = as !== null && as !== void 0 ? as : 'time';
33
- return (react_1.default.createElement(Wrapper, { ...passthroughProps }, data.value.toLocaleDateString(locale)));
34
- }
35
- case 'date_time': {
36
- const Wrapper = as !== null && as !== void 0 ? as : 'time';
37
- return (react_1.default.createElement(Wrapper, { ...passthroughProps }, data.value.toLocaleString(locale)));
38
- }
39
- case 'weight':
40
- case 'dimension':
41
- case 'volume': {
42
- const Wrapper = as !== null && as !== void 0 ? as : 'span';
43
- return (react_1.default.createElement(Wrapper, { ...passthroughProps }, (0, utilities_1.getMeasurementAsString)(data.value, locale)));
44
- }
45
- case 'rating': {
46
- const Wrapper = as !== null && as !== void 0 ? as : 'span';
47
- return (react_1.default.createElement(Wrapper, { ...passthroughProps }, data.value.value));
48
- }
49
- case 'single_line_text_field': {
50
- const Wrapper = as !== null && as !== void 0 ? as : 'span';
51
- return (react_1.default.createElement(Wrapper, { ...passthroughProps, dangerouslySetInnerHTML: { __html: data.value } }));
52
- }
53
- case 'multi_line_text_field': {
54
- const Wrapper = as !== null && as !== void 0 ? as : 'div';
55
- return (react_1.default.createElement(Wrapper, { ...passthroughProps, dangerouslySetInnerHTML: {
56
- __html: data.value.split('\n').join('<br/>'),
57
- } }));
58
- }
59
- case 'url':
60
- return (react_1.default.createElement("a", { href: data.value, ...passthroughProps }, data.value));
61
- case 'json': {
62
- const Wrapper = as !== null && as !== void 0 ? as : 'span';
63
- return (react_1.default.createElement(Wrapper, { ...passthroughProps }, JSON.stringify(data.value)));
64
- }
65
- case 'file_reference': {
66
- if (((_a = data.reference) === null || _a === void 0 ? void 0 : _a.__typename) === 'MediaImage') {
67
- const ref = data.reference;
68
- return ref.image ? (react_1.default.createElement(Image_1.Image, { data: ref.image, ...passthroughProps })) : null;
69
- }
70
- }
71
- }
72
- const Wrapper = as !== null && as !== void 0 ? as : 'span';
73
- return react_1.default.createElement(Wrapper, { ...passthroughProps }, data.value.toString());
74
- }
75
- exports.Metafield = Metafield;
@@ -1,2 +0,0 @@
1
- export { Metafield } from './Metafield.client';
2
- export type { MetafieldType } from './types';
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Metafield = void 0;
4
- var Metafield_client_1 = require("./Metafield.client");
5
- Object.defineProperty(exports, "Metafield", { enumerable: true, get: function () { return Metafield_client_1.Metafield; } });
@@ -1,4 +0,0 @@
1
- import { Metafield } from '../../storefront-api-types';
2
- export declare type MetafieldType = Omit<Partial<Metafield>, 'value'> & {
3
- value?: string | number | boolean | Date | Record<string, any>;
4
- };
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,128 +0,0 @@
1
- import { ReactNode, ElementType } from 'react';
2
- import { Props } from '../types';
3
- import type { Model3d } from '../../storefront-api-types';
4
- import type { PartialDeep } from 'type-fest';
5
- interface ModelViewerProps {
6
- /** Any ReactNode elements. */
7
- children?: ReactNode;
8
- /** An object with fields that correspond to the Storefront API's [Model3D object](https://shopify.dev/api/storefront/latest/objects/model3d). */
9
- data: PartialDeep<Model3d>;
10
- /** A string of either `auto`, `lazy`, or `eager` to indicate the conditions for preloading. Refer to [loading in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-loading-attributes-loading). */
11
- loading?: 'auto' | 'lazy' | 'eager';
12
- /** A URL to display an image instead of the model. This is useful for showing the user something before a model is loaded and ready to render. If no URL is provided, then [Model3d.previewImage](https://shopify.dev/api/storefront/latest/objects/model3d) is used. Refer to [poster in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-loading-attributes-poster). */
13
- poster?: string;
14
- /** A string of either `auto`, `interaction`, or `manual` to indicate when the model should be revealed. Refer to [reveal in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-loading-attributes-reveal). */
15
- reveal?: 'auto' | 'interaction' | 'manual';
16
- /** A boolean to enable an AR experience. Refer to [ar in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-augmentedreality-attributes-ar). */
17
- ar?: boolean;
18
- /** A prioritized list of `webxr`, `scene-viewer`, and/or `quick-look` to indicate the types of AR experiences to enable. Refer to [ar-modes in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-augmentedreality-attributes-arModes). */
19
- arModes?: 'webxr' | 'scene-viewer' | 'quick-look';
20
- /** A string of `auto` or `fixed` to control the scaling behaviour. Refer to [ar-scale in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-augmentedreality-attributes-arScale). */
21
- arScale?: 'auto' | 'fixed';
22
- /** A styring of either `floor` or `wall` to indicate where to place the object in AR. Refer to [ar-placement in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-augmentedreality-attributes-arPlacement). */
23
- arPlacement?: 'floor' | 'wall';
24
- /** The url to a USDZ model which will be used on supported iOS 12+ devices via AR Quick Look on Safari. Refer to [ios-source in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-augmentedreality-attributes-iosSrc). */
25
- iosSrc?: string;
26
- /** A boolean to enable camera controls. Refer to [attributes in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#stagingandcameras-attributes). */
27
- cameraControls?: boolean;
28
- /** A string of `pan-x`, `pan-y`, or `none`. Refer to [touch-action in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-touch-action). */
29
- touchAction?: 'pan-x' | 'pan-y' | 'none';
30
- /** A boolean to disable zoom. Refer to [disable-zoom in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-disable-zoom). */
31
- disableZoom?: boolean;
32
- /** A number to adjust the speed of theta and phi orbit interactions. Refer to [orbit-sensitivity in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-orbitSensitivity). */
33
- orbitSensitivity?: number;
34
- /** A boolean to enable auto rotate. Refer to [auto-rotate in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-autoRotate). */
35
- autoRotate?: boolean;
36
- /** A number in milliseconds to specify the delay before auto rotation begins. Refer to [auto-rotate-delay in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-autoRotateDelay). */
37
- autoRotateDelay?: number;
38
- /** The speed of auto rotation. Refer to [rotation-per-second in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-rotationPerSecond). */
39
- rotationPerSecond?: string;
40
- /** A string of either `allow-when-focused` or `always-allow` to indicate whether the viewer requires focus before interacting with it. Refer to [interaction-policy in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-interactionPolicy). */
41
- interactionPolicy?: 'allow-when-focused' | 'always-allow';
42
- /** A string of either 'auto', 'when-focused', or 'none' indicating the conditions under which the visual and audible interaction prompt will display. Refer to [interaction-prompts in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-interactionPrompt). */
43
- interactionPrompt?: 'auto' | 'when-focused' | 'none';
44
- /** A string of either `wiggle` or `basic` indicating the presentation style of the interaction-prompt when it is raised. Refer to [interaction-prompt-style in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-interactionPromptStyle). */
45
- interactionPromptStyle?: 'wiggle' | 'basic';
46
- /** A number to indicate how long the model viewer should wait before prompting the user visually for interaction. Refer to [interaction-prompt-threshold in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-interactionPromptThreshold). */
47
- interactionPromptThreshold?: number;
48
- /** A string of the starting orbital position of the camera. Refer to [camera-orbit in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-cameraOrbit). */
49
- cameraOrbit?: string;
50
- /** A string of the point the camera orbits around. Refer to [camera-target in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-cameraTarget). */
51
- cameraTarget?: string;
52
- /** A string of the vertical field of view of the camera. Refer to [field-of-view in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-fieldOfView). */
53
- fieldOfView?: string;
54
- /** A string of the maxiumum orbital values of the camera. Refer to [max-camera-orbit in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-maxCameraOrbit). */
55
- maxCameraOrbit?: string;
56
- /** A string of the minimum orbital values of the camera. Refer to [min-camera-orbit in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-minCameraOrbit). */
57
- minCameraOrbit?: string;
58
- /** A number indicating the max field of view of the camera. Refer to [max-field-of-view in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-maxFieldOfView). */
59
- maxFieldOfView?: number;
60
- /** A number indicating the min field of view of the camera. Refer to [min-field-of-view in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-minFieldOfView). */
61
- minFieldOfView?: number;
62
- /** A string of `tight` or `legacy` for calculating the model's bounding box. Refer to [bounds in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-bounds). */
63
- bounds?: 'tight' | 'legacy';
64
- /** A number indicating the rate of interpolation when the camera or model moves. Refer to [interpolation-decay in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-attributes-interpolationDecay). */
65
- interpolationDecay?: number;
66
- /** A string for the background image of the scene. Refer to [skybox-image in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-lightingandenv-attributes-skyboxImage). */
67
- skyboxImage?: string;
68
- /** A string to control the environmental reflection of the model. Refer to [environment-image in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-lightingandenv-attributes-environmentImage). */
69
- environmentImage?: string;
70
- /** A number indicating the exposure of the model and the skybox. Refer to [exposure in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-lightingandenv-attributes-exposure). */
71
- exposure?: number;
72
- /** A number for the opacity of the shadow. Refer to [shadow-intensity in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-lightingandenv-attributes-shadowIntensity). */
73
- shadowIntensity?: number;
74
- /** A number for the bluriness of the shadow. Refer to [shadow-softness in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-lightingandenv-attributes-shadowSoftness). */
75
- shadowSoftness?: number;
76
- /** A string of the animation to play by name. Refer to [animation-name in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-animation-attributes-animationName). */
77
- animationName?: string;
78
- /** A string of the animation crossfade duration between the previous and next animations. Refer to [animation-cross-fade-duration in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-animation-attributes-animationCrossfadeDuration). */
79
- animationCrossfadeDuration?: string;
80
- /** A boolean to enable the model animations. Refer to [autoplay in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-animation-attributes-autoplay). */
81
- autoplay?: boolean;
82
- /** A string to select a model variant by name. Refer to [variant-name in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-scenegraph-attributes-variantName). */
83
- variantName?: string;
84
- /** A string to rotate the model. Refer to [orientation in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-scenegraph-attributes-orientation). */
85
- orientation?: string;
86
- /** A string to scale the model. Refer to [scale in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-scenegraph-attributes-scale). */
87
- scale?: string;
88
- /** The callback to invoke when the 'error' event is triggered. Refer to [error in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-loading-events-error). */
89
- onError?: (event: Event) => void;
90
- /** The callback to invoke when the `load` event is triggered. Refer to [load in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-loading-events-load). */
91
- onLoad?: (event: Event) => void;
92
- /** The callback to invoke when the 'preload' event is triggered. Refer to [preload in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-loading-events-preload). */
93
- onPreload?: (event: Event) => void;
94
- /** The callback to invoke when the 'model-visibility' event is triggered. Refer to [model-visibility in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-loading-events-modelVisibility). */
95
- onModelVisibility?: (event: Event) => void;
96
- /** The callback to invoke when the 'progress' event is triggered. Refer to [progress in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-loading-events-progress). */
97
- onProgress?: (event: Event) => void;
98
- /** The callback to invoke when the 'ar-status' event is triggered. Refer to [ar-status in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-augmentedreality-events-arStatus). */
99
- onArStatus?: (event: Event) => void;
100
- /** The callback to invoke when the 'ar-tracking' event is triggered. Refer to [ar-tracking in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-augmentedreality-events-arTracking). */
101
- onArTracking?: (event: Event) => void;
102
- /** The callback to invoke when the 'quick-look-button-tapped' event is triggered. Refer to [quick-look-button-tapped in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-augmentedreality-events-quickLookButtonTapped). */
103
- onQuickLookButtonTapped?: (event: Event) => void;
104
- /** The callback to invoke when the 'camera-change' event is triggered. Refer to [camera-change in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-stagingandcameras-events-cameraChange). */
105
- onCameraChange?: (event: Event) => void;
106
- /** The callback to invoke when the 'environment-change' event is triggered. Refer to [environment-change in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-lightingandenv-events-environmentChange). */
107
- onEnvironmentChange?: (event: Event) => void;
108
- /** The callback to invoke when the 'play' event is triggered. Refer to [play in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-animation-events-play). */
109
- onPlay?: (event: Event) => void;
110
- /** The callback to invoke when the 'pause' event is triggered. Refer to [pause in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-animation-events-pause). */
111
- onPause?: (event: Event) => void;
112
- /** The callback to invoke when the 'scene-graph-ready' event is triggered. Refer to [scene-graph-ready in the <model-viewer> documentation](https://modelviewer.dev/docs/index.html#entrydocs-scenegraph-events-sceneGraphReady). */
113
- onSceneGraphReady?: (event: Event) => void;
114
- }
115
- declare type PropsWeControl = 'src' | 'poster';
116
- declare global {
117
- namespace JSX {
118
- interface IntrinsicElements {
119
- 'model-viewer': any;
120
- }
121
- }
122
- }
123
- /**
124
- * The `ModelViewer` component renders a 3D model (with the `model-viewer` tag) for
125
- * the Storefront API's [Model3d object](https://shopify.dev/api/storefront/reference/products/model3d).
126
- */
127
- export declare function ModelViewer<TTag extends ElementType>(props: Props<TTag, PropsWeControl> & ModelViewerProps): JSX.Element | null;
128
- export {};