@shopify/hydrogen 0.12.0 → 0.13.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 (256) hide show
  1. package/CHANGELOG.md +310 -26
  2. package/dist/esnext/client.d.ts +2 -0
  3. package/dist/esnext/client.js +2 -0
  4. package/dist/esnext/components/CartLineProvider/context.d.ts +10 -10
  5. package/dist/esnext/components/CartProvider/CartProvider.client.d.ts +1 -1
  6. package/dist/esnext/components/CartProvider/CartProvider.client.js +2 -1
  7. package/dist/esnext/components/CartProvider/cart-queries.d.ts +9 -0
  8. package/dist/esnext/components/CartProvider/cart-queries.js +876 -0
  9. package/dist/esnext/components/CartProvider/graphql/CartAttributesUpdateMutation.d.ts +1 -1
  10. package/dist/esnext/components/CartProvider/graphql/CartBuyerIdentityUpdateMutation.d.ts +1 -1
  11. package/dist/esnext/components/CartProvider/graphql/CartCreateMutation.d.ts +1 -1
  12. package/dist/esnext/components/CartProvider/graphql/CartDiscountCodesUpdateMutation.d.ts +1 -1
  13. package/dist/esnext/components/CartProvider/graphql/CartFragment.d.ts +1 -1
  14. package/dist/esnext/components/CartProvider/graphql/CartLineAddMutation.d.ts +1 -1
  15. package/dist/esnext/components/CartProvider/graphql/CartLineRemoveMutation.d.ts +1 -1
  16. package/dist/esnext/components/CartProvider/graphql/CartLineUpdateMutation.d.ts +1 -1
  17. package/dist/esnext/components/CartProvider/graphql/CartNoteUpdateMutation.d.ts +1 -1
  18. package/dist/esnext/components/CartProvider/graphql/CartQuery.d.ts +1 -1
  19. package/dist/esnext/components/CartProvider/hooks.d.ts +1 -1
  20. package/dist/esnext/components/CartProvider/hooks.js +4 -1
  21. package/dist/esnext/components/CartProvider/types.d.ts +1 -1
  22. package/dist/esnext/components/ExternalVideo/ExternalVideo.d.ts +6 -5
  23. package/dist/esnext/components/ExternalVideo/ExternalVideo.js +5 -2
  24. package/dist/esnext/components/Image/Image.d.ts +14 -12
  25. package/dist/esnext/components/Image/Image.js +17 -14
  26. package/dist/esnext/components/Link/Link.client.d.ts +4 -5
  27. package/dist/esnext/components/Link/Link.client.js +5 -4
  28. package/dist/esnext/components/LocalizationProvider/LocalizationClientProvider.client.js +1 -3
  29. package/dist/esnext/components/LocalizationProvider/LocalizationContext.client.d.ts +0 -1
  30. package/dist/esnext/components/LocalizationProvider/LocalizationProvider.server.d.ts +2 -2
  31. package/dist/esnext/components/LocalizationProvider/LocalizationProvider.server.js +15 -4
  32. package/dist/esnext/components/LocalizationProvider/LocalizationQuery.d.ts +1 -8
  33. package/dist/esnext/components/LocalizationProvider/index.d.ts +0 -1
  34. package/dist/esnext/components/LocalizationProvider/index.js +0 -1
  35. package/dist/esnext/components/MediaFile/MediaFile.d.ts +4 -3
  36. package/dist/esnext/components/Metafield/Metafield.client.d.ts +2 -2
  37. package/dist/esnext/components/Metafield/Metafield.client.js +8 -5
  38. package/dist/esnext/components/Metafield/types.d.ts +1 -1
  39. package/dist/esnext/components/ModelViewer/ModelViewer.client.d.ts +57 -56
  40. package/dist/esnext/components/ModelViewer/ModelViewer.client.js +10 -4
  41. package/dist/esnext/components/Money/Money.client.d.ts +5 -4
  42. package/dist/esnext/components/Money/Money.client.js +1 -1
  43. package/dist/esnext/components/ProductDescription/ProductDescription.client.d.ts +9 -4
  44. package/dist/esnext/components/ProductDescription/ProductDescription.client.js +4 -3
  45. package/dist/esnext/components/ProductMetafield/ProductMetafield.client.js +3 -3
  46. package/dist/esnext/components/ProductPrice/ProductPrice.client.js +2 -2
  47. package/dist/esnext/components/ProductProvider/ProductProvider.client.d.ts +3 -2
  48. package/dist/esnext/components/ProductProvider/ProductProvider.client.js +1 -0
  49. package/dist/esnext/components/ProductProvider/context.d.ts +23 -14
  50. package/dist/esnext/components/Seo/CollectionSeo.client.d.ts +3 -2
  51. package/dist/esnext/components/Seo/CollectionSeo.client.js +2 -2
  52. package/dist/esnext/components/Seo/DefaultPageSeo.client.d.ts +3 -2
  53. package/dist/esnext/components/Seo/DescriptionSeo.client.d.ts +2 -2
  54. package/dist/esnext/components/Seo/HomePageSeo.client.d.ts +1 -1
  55. package/dist/esnext/components/Seo/ImageSeo.client.d.ts +3 -2
  56. package/dist/esnext/components/Seo/ImageSeo.client.js +1 -1
  57. package/dist/esnext/components/Seo/PageSeo.client.d.ts +3 -2
  58. package/dist/esnext/components/Seo/ProductSeo.client.d.ts +3 -3
  59. package/dist/esnext/components/Seo/ProductSeo.client.js +10 -5
  60. package/dist/esnext/components/Seo/Seo.client.d.ts +10 -7
  61. package/dist/esnext/components/Seo/TitleSeo.client.d.ts +3 -4
  62. package/dist/esnext/components/Seo/TwitterSeo.client.d.ts +1 -1
  63. package/dist/esnext/components/Seo/seo-types.d.ts +17 -0
  64. package/dist/esnext/components/{ExternalVideo/ExternalVideoFragment.js → Seo/seo-types.js} +0 -0
  65. package/dist/esnext/components/UnitPrice/UnitPrice.client.d.ts +7 -6
  66. package/dist/esnext/components/UnitPrice/UnitPrice.client.js +1 -1
  67. package/dist/esnext/components/Video/Video.d.ts +5 -4
  68. package/dist/esnext/components/Video/Video.js +10 -2
  69. package/dist/esnext/components/index.d.ts +0 -3
  70. package/dist/esnext/components/index.js +0 -3
  71. package/dist/esnext/entry-client.js +9 -4
  72. package/dist/esnext/entry-server.js +99 -87
  73. package/dist/esnext/foundation/FileRoutes/FileRoutes.server.d.ts +22 -0
  74. package/dist/esnext/foundation/{Router/FileRoutes.js → FileRoutes/FileRoutes.server.js} +20 -10
  75. package/dist/esnext/foundation/Redirect/Redirect.client.d.ts +5 -0
  76. package/dist/esnext/foundation/Redirect/Redirect.client.js +14 -0
  77. package/dist/esnext/foundation/Route/Route.server.d.ts +12 -0
  78. package/dist/esnext/foundation/Route/Route.server.js +33 -0
  79. package/dist/esnext/foundation/Router/{Router.d.ts → BrowserRouter.client.d.ts} +3 -2
  80. package/dist/esnext/foundation/Router/{Router.js → BrowserRouter.client.js} +7 -5
  81. package/dist/esnext/foundation/Router/Router.server.d.ts +5 -3
  82. package/dist/esnext/foundation/Router/Router.server.js +7 -22
  83. package/dist/esnext/foundation/ServerRequestProvider/ServerRequestProvider.js +19 -24
  84. package/dist/esnext/foundation/ShopifyProvider/index.d.ts +0 -1
  85. package/dist/esnext/foundation/ShopifyProvider/index.js +0 -1
  86. package/dist/esnext/foundation/index.d.ts +0 -1
  87. package/dist/esnext/foundation/index.js +0 -1
  88. package/dist/esnext/{hooks → foundation}/useNavigate/useNavigate.d.ts +6 -3
  89. package/dist/esnext/{hooks → foundation}/useNavigate/useNavigate.js +4 -1
  90. package/dist/esnext/foundation/useQuery/hooks.d.ts +2 -4
  91. package/dist/esnext/foundation/useQuery/hooks.js +5 -2
  92. package/dist/esnext/foundation/useRouteParams/RouteParamsProvider.client.d.ts +9 -0
  93. package/dist/esnext/foundation/useRouteParams/RouteParamsProvider.client.js +7 -0
  94. package/dist/esnext/foundation/useRouteParams/useRouteParams.d.ts +4 -0
  95. package/dist/esnext/foundation/useRouteParams/useRouteParams.js +9 -0
  96. package/dist/esnext/foundation/useUrl/useUrl.js +1 -1
  97. package/dist/esnext/framework/Hydration/ServerComponentRequest.server.d.ts +6 -0
  98. package/dist/esnext/framework/Hydration/ServerComponentRequest.server.js +5 -0
  99. package/dist/esnext/framework/Hydration/ServerComponentResponse.server.d.ts +4 -1
  100. package/dist/esnext/framework/Hydration/ServerComponentResponse.server.js +5 -0
  101. package/dist/esnext/framework/middleware.js +25 -3
  102. package/dist/esnext/framework/plugin.js +6 -1
  103. package/dist/esnext/framework/plugins/vite-plugin-css-modules-rsc.d.ts +2 -0
  104. package/dist/esnext/framework/plugins/vite-plugin-css-modules-rsc.js +28 -0
  105. package/dist/esnext/framework/plugins/vite-plugin-hydrogen-config.js +61 -75
  106. package/dist/esnext/framework/plugins/vite-plugin-platform-entry.js +1 -1
  107. package/dist/esnext/hooks/index.d.ts +0 -1
  108. package/dist/esnext/hooks/index.js +0 -1
  109. package/dist/esnext/hooks/useCartLine/useCartLine.d.ts +10 -10
  110. package/dist/esnext/hooks/useCountry/useCountry.d.ts +4 -4
  111. package/dist/esnext/hooks/useMoney/hooks.d.ts +3 -3
  112. package/dist/esnext/hooks/useMoney/hooks.js +2 -2
  113. package/dist/esnext/hooks/useParsedMetafields/useParsedMetafields.d.ts +17 -2
  114. package/dist/esnext/hooks/useParsedMetafields/useParsedMetafields.js +7 -3
  115. package/dist/esnext/hooks/useProduct/useProduct.d.ts +34 -96
  116. package/dist/esnext/hooks/useProductOptions/helpers.d.ts +6 -4
  117. package/dist/esnext/hooks/useProductOptions/helpers.js +13 -6
  118. package/dist/esnext/hooks/useProductOptions/types.d.ts +15 -35
  119. package/dist/esnext/hooks/useProductOptions/useProductOptions.d.ts +6 -5
  120. package/dist/esnext/hooks/useProductOptions/useProductOptions.js +13 -3
  121. package/dist/esnext/hooks/useShopQuery/hooks.js +47 -7
  122. package/dist/esnext/index.d.ts +7 -5
  123. package/dist/esnext/index.js +7 -5
  124. package/dist/esnext/platforms/worker-event.d.ts +0 -8
  125. package/dist/esnext/platforms/worker-event.js +2 -23
  126. package/dist/esnext/platforms/worker.d.ts +14 -0
  127. package/dist/esnext/platforms/worker.js +24 -0
  128. package/dist/esnext/{graphql/types/types.d.ts → storefront-api-types.d.ts} +389 -32
  129. package/dist/esnext/{graphql/types/types.js → storefront-api-types.js} +326 -30
  130. package/dist/esnext/streaming.server.d.ts +9 -5
  131. package/dist/esnext/streaming.server.js +2 -18
  132. package/dist/esnext/types.d.ts +1 -16
  133. package/dist/esnext/utilities/apiRoutes.d.ts +5 -1
  134. package/dist/esnext/utilities/apiRoutes.js +2 -3
  135. package/dist/esnext/utilities/devtools.d.ts +11 -0
  136. package/dist/esnext/utilities/devtools.js +11 -0
  137. package/dist/esnext/utilities/fetch.d.ts +7 -1
  138. package/dist/esnext/utilities/fetch.js +9 -10
  139. package/dist/esnext/utilities/flattenConnection/flattenConnection.d.ts +3 -2
  140. package/dist/esnext/utilities/flattenConnection/flattenConnection.js +9 -2
  141. package/dist/esnext/utilities/graphql-tracker.d.ts +17 -0
  142. package/dist/esnext/utilities/graphql-tracker.js +119 -0
  143. package/dist/esnext/utilities/image_size.d.ts +5 -4
  144. package/dist/esnext/utilities/log/log-query-timeline.d.ts +1 -1
  145. package/dist/esnext/utilities/log/log-query-timeline.js +1 -2
  146. package/dist/esnext/utilities/log/log.d.ts +1 -0
  147. package/dist/esnext/utilities/log/utils.js +3 -0
  148. package/dist/esnext/utilities/parseMetafieldValue/parseMetafieldValue.d.ts +3 -2
  149. package/dist/esnext/version.d.ts +1 -1
  150. package/dist/esnext/version.js +1 -1
  151. package/dist/node/entry-server.js +104 -88
  152. package/dist/node/foundation/Redirect/Redirect.client.d.ts +5 -0
  153. package/dist/node/foundation/Redirect/Redirect.client.js +17 -0
  154. package/dist/node/foundation/Router/BrowserRouter.client.d.ts +13 -0
  155. package/dist/node/foundation/Router/BrowserRouter.client.js +77 -0
  156. package/dist/node/foundation/ServerRequestProvider/ServerRequestProvider.js +24 -25
  157. package/dist/node/foundation/ServerRequestProvider/index.js +5 -1
  158. package/dist/node/foundation/ServerStateProvider/ServerStateProvider.js +5 -1
  159. package/dist/node/foundation/ssr-interop.d.ts +29 -0
  160. package/dist/node/foundation/ssr-interop.js +39 -0
  161. package/dist/node/foundation/useNavigate/useNavigate.d.ts +13 -0
  162. package/dist/node/foundation/useNavigate/useNavigate.js +18 -0
  163. package/dist/node/foundation/useServerState/index.d.ts +1 -0
  164. package/dist/node/foundation/useServerState/index.js +5 -0
  165. package/dist/node/foundation/useServerState/use-server-state.d.ts +16 -0
  166. package/dist/node/foundation/useServerState/use-server-state.js +24 -0
  167. package/dist/node/framework/Hydration/ServerComponentRequest.server.d.ts +6 -0
  168. package/dist/node/framework/Hydration/ServerComponentRequest.server.js +5 -0
  169. package/dist/node/framework/Hydration/ServerComponentResponse.server.d.ts +4 -1
  170. package/dist/node/framework/Hydration/ServerComponentResponse.server.js +8 -0
  171. package/dist/node/framework/middleware.js +30 -4
  172. package/dist/node/framework/plugin.js +11 -2
  173. package/dist/node/framework/plugins/vite-plugin-css-modules-rsc.d.ts +2 -0
  174. package/dist/node/framework/plugins/vite-plugin-css-modules-rsc.js +31 -0
  175. package/dist/node/framework/plugins/vite-plugin-hydrogen-config.js +61 -75
  176. package/dist/node/framework/plugins/vite-plugin-platform-entry.js +1 -1
  177. package/dist/node/{graphql/types/types.d.ts → storefront-api-types.d.ts} +389 -32
  178. package/dist/node/{graphql/types/types.js → storefront-api-types.js} +327 -31
  179. package/dist/node/streaming.server.d.ts +9 -5
  180. package/dist/node/streaming.server.js +2 -18
  181. package/dist/node/types.d.ts +1 -16
  182. package/dist/node/utilities/apiRoutes.d.ts +5 -1
  183. package/dist/node/utilities/apiRoutes.js +2 -3
  184. package/dist/node/utilities/fetch.d.ts +7 -1
  185. package/dist/node/utilities/fetch.js +9 -10
  186. package/dist/node/utilities/log/log-query-timeline.d.ts +1 -1
  187. package/dist/node/utilities/log/log-query-timeline.js +1 -2
  188. package/dist/node/utilities/log/log.d.ts +1 -0
  189. package/dist/node/utilities/log/utils.js +3 -0
  190. package/dist/node/utilities/web-api-polyfill.js +5 -1
  191. package/dist/node/version.d.ts +1 -1
  192. package/dist/node/version.js +1 -1
  193. package/package.json +9 -12
  194. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-plugin.js +43 -104
  195. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.browser.development.server.js +1566 -848
  196. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.browser.production.min.server.js +36 -421
  197. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.node.development.server.js +1523 -864
  198. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite-writer.node.production.min.server.js +35 -437
  199. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite.development.js +507 -517
  200. package/vendor/react-server-dom-vite/cjs/react-server-dom-vite.production.min.js +10 -246
  201. package/vendor/react-server-dom-vite/esm/react-server-dom-vite-client-proxy.js +16 -23
  202. package/vendor/react-server-dom-vite/esm/react-server-dom-vite-plugin.js +47 -108
  203. package/vendor/react-server-dom-vite/esm/react-server-dom-vite-writer.browser.server.js +1033 -306
  204. package/vendor/react-server-dom-vite/esm/react-server-dom-vite-writer.node.server.js +965 -293
  205. package/vendor/react-server-dom-vite/esm/react-server-dom-vite.js +98 -108
  206. package/vendor/react-server-dom-vite/package.json +0 -2
  207. package/dist/esnext/components/ExternalVideo/ExternalVideoFragment.d.ts +0 -8
  208. package/dist/esnext/components/Image/ImageFragment.d.ts +0 -8
  209. package/dist/esnext/components/Image/ImageFragment.js +0 -1
  210. package/dist/esnext/components/MediaFile/MediaFileFragment.d.ts +0 -36
  211. package/dist/esnext/components/MediaFile/MediaFileFragment.js +0 -1
  212. package/dist/esnext/components/Metafield/MetafieldFragment.d.ts +0 -22
  213. package/dist/esnext/components/Metafield/MetafieldFragment.js +0 -1
  214. package/dist/esnext/components/ModelViewer/Model3DFragment.d.ts +0 -15
  215. package/dist/esnext/components/ModelViewer/Model3DFragment.js +0 -1
  216. package/dist/esnext/components/Money/MoneyFragment.d.ts +0 -8
  217. package/dist/esnext/components/Money/MoneyFragment.js +0 -1
  218. package/dist/esnext/components/ProductProvider/ProductProviderFragment.d.ts +0 -247
  219. package/dist/esnext/components/ProductProvider/ProductProviderFragment.js +0 -1
  220. package/dist/esnext/components/ProductProvider/types.d.ts +0 -19
  221. package/dist/esnext/components/ProductProvider/types.js +0 -1
  222. package/dist/esnext/components/RawHtml/RawHtml.d.ts +0 -17
  223. package/dist/esnext/components/RawHtml/RawHtml.js +0 -21
  224. package/dist/esnext/components/RawHtml/index.d.ts +0 -1
  225. package/dist/esnext/components/RawHtml/index.js +0 -1
  226. package/dist/esnext/components/Seo/SeoFragment.d.ts +0 -66
  227. package/dist/esnext/components/Seo/SeoFragment.js +0 -1
  228. package/dist/esnext/components/Seo/types.d.ts +0 -15
  229. package/dist/esnext/components/Seo/types.js +0 -1
  230. package/dist/esnext/components/UnitPrice/UnitPriceFragment.d.ts +0 -15
  231. package/dist/esnext/components/UnitPrice/UnitPriceFragment.js +0 -1
  232. package/dist/esnext/components/Video/VideoFragment.d.ts +0 -15
  233. package/dist/esnext/components/Video/VideoFragment.js +0 -1
  234. package/dist/esnext/foundation/Router/FileRoutes.d.ts +0 -18
  235. package/dist/esnext/foundation/Router/Route.server.d.ts +0 -9
  236. package/dist/esnext/foundation/Router/Route.server.js +0 -6
  237. package/dist/esnext/foundation/Router/useParams.d.ts +0 -1
  238. package/dist/esnext/foundation/Router/useParams.js +0 -5
  239. package/dist/esnext/fragments.d.ts +0 -20
  240. package/dist/esnext/fragments.js +0 -10
  241. package/dist/esnext/graphql/graphql-constants.d.ts +0 -1756
  242. package/dist/esnext/graphql/graphql-constants.js +0 -3447
  243. package/dist/esnext/hooks/useAvailableCountries/index.d.ts +0 -1
  244. package/dist/esnext/hooks/useAvailableCountries/index.js +0 -1
  245. package/dist/esnext/hooks/useAvailableCountries/useAvailableCountries.d.ts +0 -11
  246. package/dist/esnext/hooks/useAvailableCountries/useAvailableCountries.js +0 -17
  247. package/dist/esnext/hooks/useNavigate/index.d.ts +0 -1
  248. package/dist/esnext/hooks/useNavigate/index.js +0 -1
  249. package/dist/esnext/hooks/useProductOptions/SellingPlanFragment.d.ts +0 -31
  250. package/dist/esnext/hooks/useProductOptions/SellingPlanFragment.js +0 -1
  251. package/dist/esnext/hooks/useProductOptions/SellingPlanGroupsFragment.d.ts +0 -46
  252. package/dist/esnext/hooks/useProductOptions/SellingPlanGroupsFragment.js +0 -1
  253. package/dist/esnext/hooks/useProductOptions/VariantFragment.d.ts +0 -106
  254. package/dist/esnext/hooks/useProductOptions/VariantFragment.js +0 -1
  255. package/fragments.d.ts +0 -1
  256. package/fragments.js +0 -1
@@ -2,12 +2,14 @@ export * from './foundation/';
2
2
  export * from './components/';
3
3
  export * from './hooks/';
4
4
  export { flattenConnection, fetchBuilder, graphqlRequestBody, decodeShopifyId, isClient, getTime, } from './utilities';
5
- export { FileRoutes } from './foundation/Router/FileRoutes';
6
- export { Route } from './foundation/Router/Route.server';
5
+ export { FileRoutes } from './foundation/FileRoutes/FileRoutes.server';
6
+ export { Route } from './foundation/Route/Route.server';
7
7
  export { Router } from './foundation/Router/Router.server';
8
8
  export { log, setLogger, setLoggerOptions, Logger } from './utilities/log';
9
- export { useParams } from './foundation/Router/useParams';
9
+ export { useRouteParams } from './foundation/useRouteParams/useRouteParams';
10
10
  export { LocalizationProvider } from './components/LocalizationProvider/LocalizationProvider.server';
11
- export * from './hooks/useShopQuery';
12
- export { CartQuery } from './graphql/graphql-constants';
11
+ export { ShopifyProvider } from './foundation/ShopifyProvider/ShopifyProvider.server';
12
+ export * from './hooks/useShopQuery/hooks';
13
+ export * from './foundation/useQuery/hooks';
14
+ export { CartQuery } from './components/CartProvider/cart-queries';
13
15
  export { generateCacheControlHeader, NoStore, CacheSeconds, CacheMinutes, CacheHours, CacheDays, CacheWeeks, CacheMonths, CacheCustom, } from './framework/CachingStrategy';
@@ -2,16 +2,18 @@ export * from './foundation/';
2
2
  export * from './components/';
3
3
  export * from './hooks/';
4
4
  export { flattenConnection, fetchBuilder, graphqlRequestBody, decodeShopifyId, isClient, getTime, } from './utilities';
5
- export { FileRoutes } from './foundation/Router/FileRoutes';
6
- export { Route } from './foundation/Router/Route.server';
5
+ export { FileRoutes } from './foundation/FileRoutes/FileRoutes.server';
6
+ export { Route } from './foundation/Route/Route.server';
7
7
  export { Router } from './foundation/Router/Router.server';
8
8
  export { log, setLogger, setLoggerOptions } from './utilities/log';
9
- export { useParams } from './foundation/Router/useParams';
9
+ export { useRouteParams } from './foundation/useRouteParams/useRouteParams';
10
10
  // This is exported here because it contains a Server Component
11
11
  export { LocalizationProvider } from './components/LocalizationProvider/LocalizationProvider.server';
12
+ export { ShopifyProvider } from './foundation/ShopifyProvider/ShopifyProvider.server';
12
13
  // Exported here because users shouldn't be making `useShopQuery` calls from the client
13
- export * from './hooks/useShopQuery';
14
+ export * from './hooks/useShopQuery/hooks';
15
+ export * from './foundation/useQuery/hooks';
14
16
  // Export server-only CartQuery here instead of `CartProvider.client` to prevent
15
17
  // it from being bundled with other client components
16
- export { CartQuery } from './graphql/graphql-constants';
18
+ export { CartQuery } from './components/CartProvider/cart-queries';
17
19
  export { generateCacheControlHeader, NoStore, CacheSeconds, CacheMinutes, CacheHours, CacheDays, CacheWeeks, CacheMonths, CacheCustom, } from './framework/CachingStrategy';
@@ -1,9 +1 @@
1
- declare global {
2
- var globalThis: {
3
- Oxygen: {
4
- env: any;
5
- };
6
- [key: string]: any;
7
- };
8
- }
9
1
  export {};
@@ -1,24 +1,3 @@
1
+ import moduleEntry from './worker';
1
2
  // @ts-ignore
2
- // eslint-disable-next-line node/no-missing-import
3
- import entrypoint from '__SERVER_ENTRY__';
4
- // @ts-ignore
5
- // eslint-disable-next-line node/no-missing-import
6
- import indexTemplate from '__INDEX_TEMPLATE__?raw';
7
- const handleRequest = entrypoint;
8
- if (!globalThis.Oxygen) {
9
- globalThis.Oxygen = { env: globalThis };
10
- }
11
- async function handleEvent(event) {
12
- try {
13
- return (await handleRequest(event.request, {
14
- indexTemplate,
15
- cache: caches.default,
16
- context: event,
17
- }));
18
- }
19
- catch (error) {
20
- return new Response(error.message || error.toString(), { status: 500 });
21
- }
22
- }
23
- // @ts-ignore
24
- addEventListener('fetch', (event) => event.respondWith(handleEvent(event)));
3
+ addEventListener('fetch', (event) => event.respondWith(moduleEntry.fetch(event.request, globalThis, event)));
@@ -0,0 +1,14 @@
1
+ declare global {
2
+ var globalThis: {
3
+ Oxygen: {
4
+ env: any;
5
+ };
6
+ [key: string]: any;
7
+ };
8
+ }
9
+ declare const _default: {
10
+ fetch(request: Request, env: unknown, context: {
11
+ waitUntil: (promise: Promise<any>) => void;
12
+ }): Promise<Response>;
13
+ };
14
+ export default _default;
@@ -0,0 +1,24 @@
1
+ // @ts-ignore
2
+ // eslint-disable-next-line node/no-missing-import
3
+ import entrypoint from '__SERVER_ENTRY__';
4
+ // @ts-ignore
5
+ // eslint-disable-next-line node/no-missing-import
6
+ import indexTemplate from '__INDEX_TEMPLATE__?raw';
7
+ const handleRequest = entrypoint;
8
+ export default {
9
+ async fetch(request, env, context) {
10
+ if (!globalThis.Oxygen) {
11
+ globalThis.Oxygen = { env };
12
+ }
13
+ try {
14
+ return (await handleRequest(request, {
15
+ indexTemplate,
16
+ cache: caches.default,
17
+ context,
18
+ }));
19
+ }
20
+ catch (error) {
21
+ return new Response(error.message || error.toString(), { status: 500 });
22
+ }
23
+ },
24
+ };
@@ -1,6 +1,8 @@
1
1
  /**
2
2
  * THIS FILE IS AUTO-GENERATED, DO NOT EDIT
3
+ * Based on Storefront API 2022-04
3
4
  * If changes need to happen to the types defined in this file, then generally the Storefront API needs to update, and then you can run `yarn graphql-types`
5
+ * Except custom Scalars, which are defined in the `codegen.yml` file
4
6
  */
5
7
  export declare type Maybe<T> = T | null;
6
8
  export declare type InputMaybe<T> = Maybe<T>;
@@ -238,9 +240,8 @@ export declare enum ArticleSortKeys {
238
240
  /** Sort by the `published_at` value. */
239
241
  PublishedAt = "PUBLISHED_AT",
240
242
  /**
241
- * During a search (i.e. when the `query` parameter has been specified on the connection) this sorts the
242
- * results by relevance to the search term(s). When no search query is specified, this sort key is not
243
- * deterministic and should not be used.
243
+ * Sort by relevance to the search terms when the `query` parameter is specified on the connection.
244
+ * Don't use this sort key when no search query is specified.
244
245
  *
245
246
  */
246
247
  Relevance = "RELEVANCE",
@@ -382,9 +383,8 @@ export declare enum BlogSortKeys {
382
383
  /** Sort by the `id` value. */
383
384
  Id = "ID",
384
385
  /**
385
- * During a search (i.e. when the `query` parameter has been specified on the connection) this sorts the
386
- * results by relevance to the search term(s). When no search query is specified, this sort key is not
387
- * deterministic and should not be used.
386
+ * Sort by relevance to the search terms when the `query` parameter is specified on the connection.
387
+ * Don't use this sort key when no search query is specified.
388
388
  *
389
389
  */
390
390
  Relevance = "RELEVANCE",
@@ -1503,9 +1503,8 @@ export declare enum CollectionSortKeys {
1503
1503
  /** Sort by the `id` value. */
1504
1504
  Id = "ID",
1505
1505
  /**
1506
- * During a search (i.e. when the `query` parameter has been specified on the connection) this sorts the
1507
- * results by relevance to the search term(s). When no search query is specified, this sort key is not
1508
- * deterministic and should not be used.
1506
+ * Sort by relevance to the search terms when the `query` parameter is specified on the connection.
1507
+ * Don't use this sort key when no search query is specified.
1509
1508
  *
1510
1509
  */
1511
1510
  Relevance = "RELEVANCE",
@@ -1563,6 +1562,8 @@ export declare type CommentEdge = {
1563
1562
  /** A country. */
1564
1563
  export declare type Country = {
1565
1564
  __typename?: 'Country';
1565
+ /** The languages available for the country. */
1566
+ availableLanguages: Array<Language>;
1566
1567
  /** The currency of the country. */
1567
1568
  currency: Currency;
1568
1569
  /** The ISO code of the country. */
@@ -3009,6 +3010,8 @@ export declare type Filter = {
3009
3010
  };
3010
3011
  /** Denotes the type of data this filter group represents. */
3011
3012
  export declare enum FilterType {
3013
+ /** A boolean value. */
3014
+ Boolean = "BOOLEAN",
3012
3015
  /** A list of selectable values. */
3013
3016
  List = "LIST",
3014
3017
  /** A range of prices. */
@@ -3246,13 +3249,304 @@ export declare type ImageTransformInput = {
3246
3249
  */
3247
3250
  scale?: InputMaybe<Scalars['Int']>;
3248
3251
  };
3252
+ /** A language. */
3253
+ export declare type Language = {
3254
+ __typename?: 'Language';
3255
+ /** The name of the language in the language itself. If the language uses capitalization, it is capitalized for a mid-sentence position. */
3256
+ endonymName: Scalars['String'];
3257
+ /** The ISO code. */
3258
+ isoCode: LanguageCode;
3259
+ /** The name of the language in the current language. */
3260
+ name: Scalars['String'];
3261
+ };
3262
+ /** ISO 369 language codes supported by Shopify. */
3263
+ export declare enum LanguageCode {
3264
+ /** Afrikaans. */
3265
+ Af = "AF",
3266
+ /** Akan. */
3267
+ Ak = "AK",
3268
+ /** Amharic. */
3269
+ Am = "AM",
3270
+ /** Arabic. */
3271
+ Ar = "AR",
3272
+ /** Assamese. */
3273
+ As = "AS",
3274
+ /** Azerbaijani. */
3275
+ Az = "AZ",
3276
+ /** Belarusian. */
3277
+ Be = "BE",
3278
+ /** Bulgarian. */
3279
+ Bg = "BG",
3280
+ /** Bambara. */
3281
+ Bm = "BM",
3282
+ /** Bangla. */
3283
+ Bn = "BN",
3284
+ /** Tibetan. */
3285
+ Bo = "BO",
3286
+ /** Breton. */
3287
+ Br = "BR",
3288
+ /** Bosnian. */
3289
+ Bs = "BS",
3290
+ /** Catalan. */
3291
+ Ca = "CA",
3292
+ /** Chechen. */
3293
+ Ce = "CE",
3294
+ /** Czech. */
3295
+ Cs = "CS",
3296
+ /** Church Slavic. */
3297
+ Cu = "CU",
3298
+ /** Welsh. */
3299
+ Cy = "CY",
3300
+ /** Danish. */
3301
+ Da = "DA",
3302
+ /** German. */
3303
+ De = "DE",
3304
+ /** Dzongkha. */
3305
+ Dz = "DZ",
3306
+ /** Ewe. */
3307
+ Ee = "EE",
3308
+ /** Greek. */
3309
+ El = "EL",
3310
+ /** English. */
3311
+ En = "EN",
3312
+ /** Esperanto. */
3313
+ Eo = "EO",
3314
+ /** Spanish. */
3315
+ Es = "ES",
3316
+ /** Estonian. */
3317
+ Et = "ET",
3318
+ /** Basque. */
3319
+ Eu = "EU",
3320
+ /** Persian. */
3321
+ Fa = "FA",
3322
+ /** Fulah. */
3323
+ Ff = "FF",
3324
+ /** Finnish. */
3325
+ Fi = "FI",
3326
+ /** Faroese. */
3327
+ Fo = "FO",
3328
+ /** French. */
3329
+ Fr = "FR",
3330
+ /** Western Frisian. */
3331
+ Fy = "FY",
3332
+ /** Irish. */
3333
+ Ga = "GA",
3334
+ /** Scottish Gaelic. */
3335
+ Gd = "GD",
3336
+ /** Galician. */
3337
+ Gl = "GL",
3338
+ /** Gujarati. */
3339
+ Gu = "GU",
3340
+ /** Manx. */
3341
+ Gv = "GV",
3342
+ /** Hausa. */
3343
+ Ha = "HA",
3344
+ /** Hebrew. */
3345
+ He = "HE",
3346
+ /** Hindi. */
3347
+ Hi = "HI",
3348
+ /** Croatian. */
3349
+ Hr = "HR",
3350
+ /** Hungarian. */
3351
+ Hu = "HU",
3352
+ /** Armenian. */
3353
+ Hy = "HY",
3354
+ /** Interlingua. */
3355
+ Ia = "IA",
3356
+ /** Indonesian. */
3357
+ Id = "ID",
3358
+ /** Igbo. */
3359
+ Ig = "IG",
3360
+ /** Sichuan Yi. */
3361
+ Ii = "II",
3362
+ /** Icelandic. */
3363
+ Is = "IS",
3364
+ /** Italian. */
3365
+ It = "IT",
3366
+ /** Japanese. */
3367
+ Ja = "JA",
3368
+ /** Javanese. */
3369
+ Jv = "JV",
3370
+ /** Georgian. */
3371
+ Ka = "KA",
3372
+ /** Kikuyu. */
3373
+ Ki = "KI",
3374
+ /** Kazakh. */
3375
+ Kk = "KK",
3376
+ /** Kalaallisut. */
3377
+ Kl = "KL",
3378
+ /** Khmer. */
3379
+ Km = "KM",
3380
+ /** Kannada. */
3381
+ Kn = "KN",
3382
+ /** Korean. */
3383
+ Ko = "KO",
3384
+ /** Kashmiri. */
3385
+ Ks = "KS",
3386
+ /** Kurdish. */
3387
+ Ku = "KU",
3388
+ /** Cornish. */
3389
+ Kw = "KW",
3390
+ /** Kyrgyz. */
3391
+ Ky = "KY",
3392
+ /** Luxembourgish. */
3393
+ Lb = "LB",
3394
+ /** Ganda. */
3395
+ Lg = "LG",
3396
+ /** Lingala. */
3397
+ Ln = "LN",
3398
+ /** Lao. */
3399
+ Lo = "LO",
3400
+ /** Lithuanian. */
3401
+ Lt = "LT",
3402
+ /** Luba-Katanga. */
3403
+ Lu = "LU",
3404
+ /** Latvian. */
3405
+ Lv = "LV",
3406
+ /** Malagasy. */
3407
+ Mg = "MG",
3408
+ /** Maori. */
3409
+ Mi = "MI",
3410
+ /** Macedonian. */
3411
+ Mk = "MK",
3412
+ /** Malayalam. */
3413
+ Ml = "ML",
3414
+ /** Mongolian. */
3415
+ Mn = "MN",
3416
+ /** Marathi. */
3417
+ Mr = "MR",
3418
+ /** Malay. */
3419
+ Ms = "MS",
3420
+ /** Maltese. */
3421
+ Mt = "MT",
3422
+ /** Burmese. */
3423
+ My = "MY",
3424
+ /** Norwegian (Bokmål). */
3425
+ Nb = "NB",
3426
+ /** North Ndebele. */
3427
+ Nd = "ND",
3428
+ /** Nepali. */
3429
+ Ne = "NE",
3430
+ /** Dutch. */
3431
+ Nl = "NL",
3432
+ /** Norwegian Nynorsk. */
3433
+ Nn = "NN",
3434
+ /** Norwegian. */
3435
+ No = "NO",
3436
+ /** Oromo. */
3437
+ Om = "OM",
3438
+ /** Odia. */
3439
+ Or = "OR",
3440
+ /** Ossetic. */
3441
+ Os = "OS",
3442
+ /** Punjabi. */
3443
+ Pa = "PA",
3444
+ /** Polish. */
3445
+ Pl = "PL",
3446
+ /** Pashto. */
3447
+ Ps = "PS",
3448
+ /** Portuguese. */
3449
+ Pt = "PT",
3450
+ /** Portuguese (Brazil). */
3451
+ PtBr = "PT_BR",
3452
+ /** Portuguese (Portugal). */
3453
+ PtPt = "PT_PT",
3454
+ /** Quechua. */
3455
+ Qu = "QU",
3456
+ /** Romansh. */
3457
+ Rm = "RM",
3458
+ /** Rundi. */
3459
+ Rn = "RN",
3460
+ /** Romanian. */
3461
+ Ro = "RO",
3462
+ /** Russian. */
3463
+ Ru = "RU",
3464
+ /** Kinyarwanda. */
3465
+ Rw = "RW",
3466
+ /** Sindhi. */
3467
+ Sd = "SD",
3468
+ /** Northern Sami. */
3469
+ Se = "SE",
3470
+ /** Sango. */
3471
+ Sg = "SG",
3472
+ /** Sinhala. */
3473
+ Si = "SI",
3474
+ /** Slovak. */
3475
+ Sk = "SK",
3476
+ /** Slovenian. */
3477
+ Sl = "SL",
3478
+ /** Shona. */
3479
+ Sn = "SN",
3480
+ /** Somali. */
3481
+ So = "SO",
3482
+ /** Albanian. */
3483
+ Sq = "SQ",
3484
+ /** Serbian. */
3485
+ Sr = "SR",
3486
+ /** Sundanese. */
3487
+ Su = "SU",
3488
+ /** Swedish. */
3489
+ Sv = "SV",
3490
+ /** Swahili. */
3491
+ Sw = "SW",
3492
+ /** Tamil. */
3493
+ Ta = "TA",
3494
+ /** Telugu. */
3495
+ Te = "TE",
3496
+ /** Tajik. */
3497
+ Tg = "TG",
3498
+ /** Thai. */
3499
+ Th = "TH",
3500
+ /** Tigrinya. */
3501
+ Ti = "TI",
3502
+ /** Turkmen. */
3503
+ Tk = "TK",
3504
+ /** Tongan. */
3505
+ To = "TO",
3506
+ /** Turkish. */
3507
+ Tr = "TR",
3508
+ /** Tatar. */
3509
+ Tt = "TT",
3510
+ /** Uyghur. */
3511
+ Ug = "UG",
3512
+ /** Ukrainian. */
3513
+ Uk = "UK",
3514
+ /** Urdu. */
3515
+ Ur = "UR",
3516
+ /** Uzbek. */
3517
+ Uz = "UZ",
3518
+ /** Vietnamese. */
3519
+ Vi = "VI",
3520
+ /** Volapük. */
3521
+ Vo = "VO",
3522
+ /** Wolof. */
3523
+ Wo = "WO",
3524
+ /** Xhosa. */
3525
+ Xh = "XH",
3526
+ /** Yiddish. */
3527
+ Yi = "YI",
3528
+ /** Yoruba. */
3529
+ Yo = "YO",
3530
+ /** Chinese. */
3531
+ Zh = "ZH",
3532
+ /** Chinese (Simplified). */
3533
+ ZhCn = "ZH_CN",
3534
+ /** Chinese (Traditional). */
3535
+ ZhTw = "ZH_TW",
3536
+ /** Zulu. */
3537
+ Zu = "ZU"
3538
+ }
3249
3539
  /** Information about the localized experiences configured for the shop. */
3250
3540
  export declare type Localization = {
3251
3541
  __typename?: 'Localization';
3252
3542
  /** The list of countries with enabled localized experiences. */
3253
3543
  availableCountries: Array<Country>;
3544
+ /** The list of languages available for the active country. */
3545
+ availableLanguages: Array<Language>;
3254
3546
  /** The country of the active localized experience. Use the `@inContext` directive to change this value. */
3255
3547
  country: Country;
3548
+ /** The language of the active localized experience. Use the `@inContext` directive to change this value. */
3549
+ language: Language;
3256
3550
  };
3257
3551
  /** Represents a location where product inventory is held. */
3258
3552
  export declare type Location = Node & {
@@ -3558,6 +3852,69 @@ export declare type MediaImage = Media & Node & {
3558
3852
  /** The preview image for the media. */
3559
3853
  previewImage?: Maybe<Image>;
3560
3854
  };
3855
+ /**
3856
+ * A menu used for navigation within a storefront.
3857
+ *
3858
+ */
3859
+ export declare type Menu = Node & {
3860
+ __typename?: 'Menu';
3861
+ /** The menu's handle. */
3862
+ handle: Scalars['String'];
3863
+ /** A globally-unique identifier. */
3864
+ id: Scalars['ID'];
3865
+ /** The menu's child items. */
3866
+ items: Array<MenuItem>;
3867
+ /** The count of items on the menu. */
3868
+ itemsCount: Scalars['Int'];
3869
+ /** The menu's title. */
3870
+ title: Scalars['String'];
3871
+ };
3872
+ /**
3873
+ * A menu item within a parent menu.
3874
+ *
3875
+ */
3876
+ export declare type MenuItem = Node & {
3877
+ __typename?: 'MenuItem';
3878
+ /** A globally-unique identifier. */
3879
+ id: Scalars['ID'];
3880
+ /** The menu item's child items. */
3881
+ items: Array<MenuItem>;
3882
+ /** The ID of the linked resource. */
3883
+ resourceId?: Maybe<Scalars['ID']>;
3884
+ /** The menu item's tags to filter a collection. */
3885
+ tags: Array<Scalars['String']>;
3886
+ /** The menu item's title. */
3887
+ title: Scalars['String'];
3888
+ /** The menu item's type. */
3889
+ type: MenuItemType;
3890
+ /** The menu item's URL. */
3891
+ url?: Maybe<Scalars['URL']>;
3892
+ };
3893
+ /** A menu item type. */
3894
+ export declare enum MenuItemType {
3895
+ /** An article link. */
3896
+ Article = "ARTICLE",
3897
+ /** A blog link. */
3898
+ Blog = "BLOG",
3899
+ /** A catalog link. */
3900
+ Catalog = "CATALOG",
3901
+ /** A collection link. */
3902
+ Collection = "COLLECTION",
3903
+ /** A collection link. */
3904
+ Collections = "COLLECTIONS",
3905
+ /** A frontpage link. */
3906
+ Frontpage = "FRONTPAGE",
3907
+ /** An http link. */
3908
+ Http = "HTTP",
3909
+ /** A page link. */
3910
+ Page = "PAGE",
3911
+ /** A product link. */
3912
+ Product = "PRODUCT",
3913
+ /** A search link. */
3914
+ Search = "SEARCH",
3915
+ /** A shop policy link. */
3916
+ ShopPolicy = "SHOP_POLICY"
3917
+ }
3561
3918
  /** The merchandise to be purchased at checkout. */
3562
3919
  export declare type Merchandise = ProductVariant;
3563
3920
  /**
@@ -3621,6 +3978,7 @@ export declare type MetafieldEdge = {
3621
3978
  * - `number_integer`
3622
3979
  * - `number_decimal`
3623
3980
  * - `single_line_text_field`
3981
+ * - `boolean` as of 2022-04.
3624
3982
  *
3625
3983
  */
3626
3984
  export declare type MetafieldFilter = {
@@ -4377,9 +4735,8 @@ export declare enum OrderSortKeys {
4377
4735
  /** Sort by the `processed_at` value. */
4378
4736
  ProcessedAt = "PROCESSED_AT",
4379
4737
  /**
4380
- * During a search (i.e. when the `query` parameter has been specified on the connection) this sorts the
4381
- * results by relevance to the search term(s). When no search query is specified, this sort key is not
4382
- * deterministic and should not be used.
4738
+ * Sort by relevance to the search terms when the `query` parameter is specified on the connection.
4739
+ * Don't use this sort key when no search query is specified.
4383
4740
  *
4384
4741
  */
4385
4742
  Relevance = "RELEVANCE",
@@ -4469,9 +4826,8 @@ export declare enum PageSortKeys {
4469
4826
  /** Sort by the `id` value. */
4470
4827
  Id = "ID",
4471
4828
  /**
4472
- * During a search (i.e. when the `query` parameter has been specified on the connection) this sorts the
4473
- * results by relevance to the search term(s). When no search query is specified, this sort key is not
4474
- * deterministic and should not be used.
4829
+ * Sort by relevance to the search terms when the `query` parameter is specified on the connection.
4830
+ * Don't use this sort key when no search query is specified.
4475
4831
  *
4476
4832
  */
4477
4833
  Relevance = "RELEVANCE",
@@ -4767,9 +5123,8 @@ export declare enum ProductCollectionSortKeys {
4767
5123
  /** Sort by the `price` value. */
4768
5124
  Price = "PRICE",
4769
5125
  /**
4770
- * During a search (i.e. when the `query` parameter has been specified on the connection) this sorts the
4771
- * results by relevance to the search term(s). When no search query is specified, this sort key is not
4772
- * deterministic and should not be used.
5126
+ * Sort by relevance to the search terms when the `query` parameter is specified on the connection.
5127
+ * Don't use this sort key when no search query is specified.
4773
5128
  *
4774
5129
  */
4775
5130
  Relevance = "RELEVANCE",
@@ -4826,9 +5181,8 @@ export declare enum ProductImageSortKeys {
4826
5181
  /** Sort by the `position` value. */
4827
5182
  Position = "POSITION",
4828
5183
  /**
4829
- * During a search (i.e. when the `query` parameter has been specified on the connection) this sorts the
4830
- * results by relevance to the search term(s). When no search query is specified, this sort key is not
4831
- * deterministic and should not be used.
5184
+ * Sort by relevance to the search terms when the `query` parameter is specified on the connection.
5185
+ * Don't use this sort key when no search query is specified.
4832
5186
  *
4833
5187
  */
4834
5188
  Relevance = "RELEVANCE"
@@ -4840,9 +5194,8 @@ export declare enum ProductMediaSortKeys {
4840
5194
  /** Sort by the `position` value. */
4841
5195
  Position = "POSITION",
4842
5196
  /**
4843
- * During a search (i.e. when the `query` parameter has been specified on the connection) this sorts the
4844
- * results by relevance to the search term(s). When no search query is specified, this sort key is not
4845
- * deterministic and should not be used.
5197
+ * Sort by relevance to the search terms when the `query` parameter is specified on the connection.
5198
+ * Don't use this sort key when no search query is specified.
4846
5199
  *
4847
5200
  */
4848
5201
  Relevance = "RELEVANCE"
@@ -4883,9 +5236,8 @@ export declare enum ProductSortKeys {
4883
5236
  /** Sort by the `product_type` value. */
4884
5237
  ProductType = "PRODUCT_TYPE",
4885
5238
  /**
4886
- * During a search (i.e. when the `query` parameter has been specified on the connection) this sorts the
4887
- * results by relevance to the search term(s). When no search query is specified, this sort key is not
4888
- * deterministic and should not be used.
5239
+ * Sort by relevance to the search terms when the `query` parameter is specified on the connection.
5240
+ * Don't use this sort key when no search query is specified.
4889
5241
  *
4890
5242
  */
4891
5243
  Relevance = "RELEVANCE",
@@ -5018,9 +5370,8 @@ export declare enum ProductVariantSortKeys {
5018
5370
  /** Sort by the `position` value. */
5019
5371
  Position = "POSITION",
5020
5372
  /**
5021
- * During a search (i.e. when the `query` parameter has been specified on the connection) this sorts the
5022
- * results by relevance to the search term(s). When no search query is specified, this sort key is not
5023
- * deterministic and should not be used.
5373
+ * Sort by relevance to the search terms when the `query` parameter is specified on the connection.
5374
+ * Don't use this sort key when no search query is specified.
5024
5375
  *
5025
5376
  */
5026
5377
  Relevance = "RELEVANCE",
@@ -5065,10 +5416,12 @@ export declare type QueryRoot = {
5065
5416
  *
5066
5417
  */
5067
5418
  locations: LocationConnection;
5419
+ /** A storefront menu. */
5420
+ menu?: Maybe<Menu>;
5068
5421
  /** Returns a specific node by ID. */
5069
- node?: Maybe<AppliedGiftCard | Article | Blog | Cart | CartLine | Checkout | CheckoutLineItem | Collection | Comment | ExternalVideo | Location | MailingAddress | MediaImage | Metafield | Model3d | Order | Page | Payment | Product | ProductOption | ProductVariant | Shop | ShopPolicy | Video>;
5422
+ node?: Maybe<AppliedGiftCard | Article | Blog | Cart | CartLine | Checkout | CheckoutLineItem | Collection | Comment | ExternalVideo | Location | MailingAddress | MediaImage | Menu | MenuItem | Metafield | Model3d | Order | Page | Payment | Product | ProductOption | ProductVariant | Shop | ShopPolicy | Video>;
5070
5423
  /** Returns the list of nodes with the given IDs. */
5071
- nodes: Array<Maybe<AppliedGiftCard | Article | Blog | Cart | CartLine | Checkout | CheckoutLineItem | Collection | Comment | ExternalVideo | Location | MailingAddress | MediaImage | Metafield | Model3d | Order | Page | Payment | Product | ProductOption | ProductVariant | Shop | ShopPolicy | Video>>;
5424
+ nodes: Array<Maybe<AppliedGiftCard | Article | Blog | Cart | CartLine | Checkout | CheckoutLineItem | Collection | Comment | ExternalVideo | Location | MailingAddress | MediaImage | Menu | MenuItem | Metafield | Model3d | Order | Page | Payment | Product | ProductOption | ProductVariant | Shop | ShopPolicy | Video>>;
5072
5425
  /** Fetch a specific `Page` by one of its unique attributes. */
5073
5426
  page?: Maybe<Page>;
5074
5427
  /**
@@ -5174,6 +5527,10 @@ export declare type QueryRootLocationsArgs = {
5174
5527
  sortKey?: InputMaybe<LocationSortKeys>;
5175
5528
  };
5176
5529
  /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
5530
+ export declare type QueryRootMenuArgs = {
5531
+ handle: Scalars['String'];
5532
+ };
5533
+ /** The schema’s entry-point for queries. This acts as the public, top-level API from which all queries must start. */
5177
5534
  export declare type QueryRootNodeArgs = {
5178
5535
  id: Scalars['ID'];
5179
5536
  };