@shopify/hydrogen 2026.10.0-preview.2 → 2026.10.0-preview.4

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 (404) hide show
  1. package/README.md +34 -3
  2. package/dist/cli/index.mjs +578 -85
  3. package/dist/client/client.mjs +2 -2
  4. package/dist/client/errors.d.mts +19 -19
  5. package/dist/client/errors.mjs +19 -16
  6. package/dist/client/errors.mjs.map +1 -1
  7. package/dist/client/types.d.mts +91 -10
  8. package/dist/core/analytics/cart-tracker.d.mts +14 -0
  9. package/dist/core/analytics/cart-tracker.mjs +15 -1
  10. package/dist/core/analytics/cart-tracker.mjs.map +1 -1
  11. package/dist/core/analytics/custom-consent.mjs +12 -0
  12. package/dist/core/analytics/custom-consent.mjs.map +1 -0
  13. package/dist/core/analytics/events.d.mts +7 -0
  14. package/dist/core/analytics/events.mjs +7 -0
  15. package/dist/core/analytics/events.mjs.map +1 -1
  16. package/dist/core/analytics/index.d.mts +1 -1
  17. package/dist/core/analytics/types.d.mts +152 -16
  18. package/dist/core/cart/actions.d.mts +47 -3
  19. package/dist/core/cart/actions.mjs +29 -0
  20. package/dist/core/cart/actions.mjs.map +1 -1
  21. package/dist/core/cart/attach-quantity-input.d.mts +26 -0
  22. package/dist/core/cart/attach-quantity-input.mjs +26 -0
  23. package/dist/core/cart/attach-quantity-input.mjs.map +1 -1
  24. package/dist/core/cart/cart.d.mts +106 -6
  25. package/dist/core/cart/cart.mjs +57 -6
  26. package/dist/core/cart/cart.mjs.map +1 -1
  27. package/dist/core/cart/cookie.d.mts +15 -0
  28. package/dist/core/cart/cookie.mjs +15 -0
  29. package/dist/core/cart/cookie.mjs.map +1 -1
  30. package/dist/core/cart/form.d.mts +61 -0
  31. package/dist/core/cart/form.mjs +18 -0
  32. package/dist/core/cart/form.mjs.map +1 -1
  33. package/dist/core/cart/get-cart.d.mts +43 -2
  34. package/dist/core/cart/get-cart.mjs +33 -0
  35. package/dist/core/cart/get-cart.mjs.map +1 -1
  36. package/dist/core/cart/index.d.mts +1 -1
  37. package/dist/core/cart/quantity.d.mts +17 -0
  38. package/dist/core/cart/quantity.mjs +17 -0
  39. package/dist/core/cart/quantity.mjs.map +1 -1
  40. package/dist/core/cart/queries.d.mts +402 -369
  41. package/dist/core/cart/queries.mjs +2 -1
  42. package/dist/core/cart/queries.mjs.map +1 -1
  43. package/dist/core/cart/server-handlers.d.mts +69 -0
  44. package/dist/core/cart/server-handlers.mjs +2 -10
  45. package/dist/core/cart/server-handlers.mjs.map +1 -1
  46. package/dist/core/cart/state.d.mts +133 -0
  47. package/dist/core/cart/state.mjs +8 -0
  48. package/dist/core/cart/state.mjs.map +1 -1
  49. package/dist/core/collection/collection.d.mts +18 -2
  50. package/dist/core/collection/collection.mjs +11 -0
  51. package/dist/core/collection/collection.mjs.map +1 -1
  52. package/dist/core/collection/index.d.mts +1 -1
  53. package/dist/core/collection/reconciler.d.mts +13 -4
  54. package/dist/core/collection/reconciler.mjs.map +1 -1
  55. package/dist/core/collection/state.d.mts +7 -2
  56. package/dist/core/collection/state.mjs.map +1 -1
  57. package/dist/core/collection/url.d.mts +3 -0
  58. package/dist/core/collection/url.mjs.map +1 -1
  59. package/dist/core/constants.d.mts +1 -1
  60. package/dist/core/constants.mjs +2 -2
  61. package/dist/core/constants.mjs.map +1 -1
  62. package/dist/core/headers.mjs +2 -2
  63. package/dist/core/headers.mjs.map +1 -1
  64. package/dist/core/index.d.mts +5 -5
  65. package/dist/core/logging/logging.mjs.map +1 -1
  66. package/dist/core/money/format.mjs +6 -3
  67. package/dist/core/money/format.mjs.map +1 -1
  68. package/dist/core/observable.mjs +0 -3
  69. package/dist/core/observable.mjs.map +1 -1
  70. package/dist/core/predictive-search/form.d.mts +1 -0
  71. package/dist/core/predictive-search/form.mjs +1 -0
  72. package/dist/core/predictive-search/form.mjs.map +1 -1
  73. package/dist/core/predictive-search/index.d.mts +1 -1
  74. package/dist/core/predictive-search/queries.d.mts +40 -4
  75. package/dist/core/predictive-search/queries.mjs +7 -1
  76. package/dist/core/predictive-search/queries.mjs.map +1 -1
  77. package/dist/core/predictive-search/search.d.mts +43 -10
  78. package/dist/core/predictive-search/search.mjs +34 -0
  79. package/dist/core/predictive-search/search.mjs.map +1 -1
  80. package/dist/core/predictive-search/server-handlers.d.mts +31 -5
  81. package/dist/core/predictive-search/server-handlers.mjs +5 -3
  82. package/dist/core/predictive-search/server-handlers.mjs.map +1 -1
  83. package/dist/core/predictive-search/store.d.mts +3 -1
  84. package/dist/core/predictive-search/store.mjs.map +1 -1
  85. package/dist/core/predictive-search/url.d.mts +50 -8
  86. package/dist/core/predictive-search/url.mjs +9 -0
  87. package/dist/core/predictive-search/url.mjs.map +1 -1
  88. package/dist/core/product/form.d.mts +21 -2
  89. package/dist/core/product/form.mjs +13 -0
  90. package/dist/core/product/form.mjs.map +1 -1
  91. package/dist/core/product/index.d.mts +1 -1
  92. package/dist/core/product/options.d.mts +2 -2
  93. package/dist/core/product/options.mjs +2 -2
  94. package/dist/core/product/options.mjs.map +1 -1
  95. package/dist/core/product/product-form.d.mts +33 -1
  96. package/dist/core/product/product-form.mjs +30 -0
  97. package/dist/core/product/product-form.mjs.map +1 -1
  98. package/dist/core/product/state.d.mts +41 -0
  99. package/dist/core/product/url.d.mts +6 -0
  100. package/dist/core/product/url.mjs.map +1 -1
  101. package/dist/core/request-context.d.mts +8 -5
  102. package/dist/core/request-context.mjs +17 -39
  103. package/dist/core/request-context.mjs.map +1 -1
  104. package/dist/core/request-routing/handle-shopify-routes.mjs +4 -1
  105. package/dist/core/request-routing/handle-shopify-routes.mjs.map +1 -1
  106. package/dist/core/request-routing/interceptors/ajax-api.mjs +1 -1
  107. package/dist/core/request-routing/interceptors/api-proxy.mjs +1 -1
  108. package/dist/core/request-routing/interceptors/checkout.mjs +22 -6
  109. package/dist/core/request-routing/interceptors/checkout.mjs.map +1 -1
  110. package/dist/core/request-routing/interceptors/mcp-proxy.mjs +1 -1
  111. package/dist/core/request-routing/interceptors/proxy.mjs +36 -10
  112. package/dist/core/request-routing/interceptors/proxy.mjs.map +1 -1
  113. package/dist/core/request-routing/interceptors/query-param-redirect.mjs +5 -11
  114. package/dist/core/request-routing/interceptors/query-param-redirect.mjs.map +1 -1
  115. package/dist/core/request-routing/interceptors/sfapi-proxy.mjs +19 -1
  116. package/dist/core/request-routing/interceptors/sfapi-proxy.mjs.map +1 -1
  117. package/dist/core/request-routing/interceptors/ucp-mcp-proxy.mjs +35 -0
  118. package/dist/core/request-routing/interceptors/ucp-mcp-proxy.mjs.map +1 -0
  119. package/dist/core/request-routing/interceptors/well-known.mjs +1 -1
  120. package/dist/core/shopify-scripts/analytics.mjs +2 -2
  121. package/dist/core/shopify-scripts/analytics.mjs.map +1 -1
  122. package/dist/core/shopify-scripts/constants.mjs +4 -2
  123. package/dist/core/shopify-scripts/constants.mjs.map +1 -1
  124. package/dist/core/shopify-scripts/global.mjs +9 -4
  125. package/dist/core/shopify-scripts/global.mjs.map +1 -1
  126. package/dist/core/shopify-scripts/index.d.mts +1 -0
  127. package/dist/core/shopify-scripts/index.mjs +14 -12
  128. package/dist/core/shopify-scripts/index.mjs.map +1 -1
  129. package/dist/core/shopify-scripts/initialize.d.mts +1 -0
  130. package/dist/core/shopify-scripts/initialize.mjs +10 -3
  131. package/dist/core/shopify-scripts/initialize.mjs.map +1 -1
  132. package/dist/core/shopify-scripts/types.d.mts +6 -0
  133. package/dist/core/url.mjs +21 -2
  134. package/dist/core/url.mjs.map +1 -1
  135. package/dist/customer-account/client.d.mts +128 -4
  136. package/dist/customer-account/client.mjs +27 -1
  137. package/dist/customer-account/client.mjs.map +1 -1
  138. package/dist/customer-account/errors.d.mts +46 -0
  139. package/dist/customer-account/errors.mjs +46 -0
  140. package/dist/customer-account/errors.mjs.map +1 -1
  141. package/dist/customer-account/graphql.d.mts +68 -0
  142. package/dist/customer-account/graphql.mjs +47 -0
  143. package/dist/customer-account/graphql.mjs.map +1 -1
  144. package/dist/customer-account/session.d.mts +114 -23
  145. package/dist/customer-account/session.mjs +27 -12
  146. package/dist/customer-account/session.mjs.map +1 -1
  147. package/dist/customer-account/type-resolver.d.mts +23 -0
  148. package/dist/customer-account-api-types.d.ts +570 -374
  149. package/dist/customer-account.schema.json +2981 -1527
  150. package/dist/development/client/client.mjs +2 -2
  151. package/dist/development/client/errors.d.mts +19 -19
  152. package/dist/development/client/errors.mjs +20 -20
  153. package/dist/development/client/errors.mjs.map +1 -1
  154. package/dist/development/client/types.d.mts +91 -10
  155. package/dist/development/core/analytics/cart-tracker.d.mts +14 -0
  156. package/dist/development/core/analytics/cart-tracker.mjs +15 -1
  157. package/dist/development/core/analytics/cart-tracker.mjs.map +1 -1
  158. package/dist/development/core/analytics/custom-consent.mjs +12 -0
  159. package/dist/development/core/analytics/custom-consent.mjs.map +1 -0
  160. package/dist/development/core/analytics/events.d.mts +7 -0
  161. package/dist/development/core/analytics/events.mjs +7 -0
  162. package/dist/development/core/analytics/events.mjs.map +1 -1
  163. package/dist/development/core/analytics/index.d.mts +1 -1
  164. package/dist/development/core/analytics/types.d.mts +152 -16
  165. package/dist/development/core/cart/actions.d.mts +47 -3
  166. package/dist/development/core/cart/actions.mjs +29 -0
  167. package/dist/development/core/cart/actions.mjs.map +1 -1
  168. package/dist/development/core/cart/attach-quantity-input.d.mts +26 -0
  169. package/dist/development/core/cart/attach-quantity-input.mjs +26 -0
  170. package/dist/development/core/cart/attach-quantity-input.mjs.map +1 -1
  171. package/dist/development/core/cart/cart.d.mts +106 -6
  172. package/dist/development/core/cart/cart.mjs +57 -6
  173. package/dist/development/core/cart/cart.mjs.map +1 -1
  174. package/dist/development/core/cart/cookie.d.mts +15 -0
  175. package/dist/development/core/cart/cookie.mjs +15 -0
  176. package/dist/development/core/cart/cookie.mjs.map +1 -1
  177. package/dist/development/core/cart/form.d.mts +61 -0
  178. package/dist/development/core/cart/form.mjs +18 -0
  179. package/dist/development/core/cart/form.mjs.map +1 -1
  180. package/dist/development/core/cart/get-cart.d.mts +43 -2
  181. package/dist/development/core/cart/get-cart.mjs +33 -0
  182. package/dist/development/core/cart/get-cart.mjs.map +1 -1
  183. package/dist/development/core/cart/index.d.mts +1 -1
  184. package/dist/development/core/cart/quantity.d.mts +17 -0
  185. package/dist/development/core/cart/quantity.mjs +17 -0
  186. package/dist/development/core/cart/quantity.mjs.map +1 -1
  187. package/dist/development/core/cart/queries.d.mts +345 -312
  188. package/dist/development/core/cart/queries.mjs +2 -1
  189. package/dist/development/core/cart/queries.mjs.map +1 -1
  190. package/dist/development/core/cart/server-handlers.d.mts +69 -0
  191. package/dist/development/core/cart/server-handlers.mjs +2 -10
  192. package/dist/development/core/cart/server-handlers.mjs.map +1 -1
  193. package/dist/development/core/cart/state.d.mts +133 -0
  194. package/dist/development/core/cart/state.mjs +8 -0
  195. package/dist/development/core/cart/state.mjs.map +1 -1
  196. package/dist/development/core/collection/collection.d.mts +18 -2
  197. package/dist/development/core/collection/collection.mjs +11 -0
  198. package/dist/development/core/collection/collection.mjs.map +1 -1
  199. package/dist/development/core/collection/index.d.mts +1 -1
  200. package/dist/development/core/collection/reconciler.d.mts +13 -4
  201. package/dist/development/core/collection/reconciler.mjs.map +1 -1
  202. package/dist/development/core/collection/state.d.mts +7 -2
  203. package/dist/development/core/collection/state.mjs.map +1 -1
  204. package/dist/development/core/collection/url.d.mts +3 -0
  205. package/dist/development/core/collection/url.mjs.map +1 -1
  206. package/dist/development/core/constants.mjs +1 -1
  207. package/dist/development/core/constants.mjs.map +1 -1
  208. package/dist/development/core/development.d.mts +5 -5
  209. package/dist/development/core/headers.mjs +2 -2
  210. package/dist/development/core/headers.mjs.map +1 -1
  211. package/dist/development/core/index.d.mts +4 -4
  212. package/dist/development/core/logging/logging.mjs.map +1 -1
  213. package/dist/development/core/money/format.mjs +6 -3
  214. package/dist/development/core/money/format.mjs.map +1 -1
  215. package/dist/development/core/observable.mjs +0 -3
  216. package/dist/development/core/observable.mjs.map +1 -1
  217. package/dist/development/core/predictive-search/form.d.mts +1 -0
  218. package/dist/development/core/predictive-search/form.mjs +1 -0
  219. package/dist/development/core/predictive-search/form.mjs.map +1 -1
  220. package/dist/development/core/predictive-search/index.d.mts +1 -1
  221. package/dist/development/core/predictive-search/queries.d.mts +38 -2
  222. package/dist/development/core/predictive-search/queries.mjs +7 -1
  223. package/dist/development/core/predictive-search/queries.mjs.map +1 -1
  224. package/dist/development/core/predictive-search/search.d.mts +43 -10
  225. package/dist/development/core/predictive-search/search.mjs +34 -0
  226. package/dist/development/core/predictive-search/search.mjs.map +1 -1
  227. package/dist/development/core/predictive-search/server-handlers.d.mts +31 -5
  228. package/dist/development/core/predictive-search/server-handlers.mjs +5 -3
  229. package/dist/development/core/predictive-search/server-handlers.mjs.map +1 -1
  230. package/dist/development/core/predictive-search/store.d.mts +3 -1
  231. package/dist/development/core/predictive-search/store.mjs.map +1 -1
  232. package/dist/development/core/predictive-search/url.d.mts +50 -8
  233. package/dist/development/core/predictive-search/url.mjs +9 -0
  234. package/dist/development/core/predictive-search/url.mjs.map +1 -1
  235. package/dist/development/core/product/form.d.mts +21 -2
  236. package/dist/development/core/product/form.mjs +13 -0
  237. package/dist/development/core/product/form.mjs.map +1 -1
  238. package/dist/development/core/product/index.d.mts +1 -1
  239. package/dist/development/core/product/options.d.mts +2 -2
  240. package/dist/development/core/product/options.mjs +2 -2
  241. package/dist/development/core/product/options.mjs.map +1 -1
  242. package/dist/development/core/product/product-form.d.mts +33 -1
  243. package/dist/development/core/product/product-form.mjs +30 -0
  244. package/dist/development/core/product/product-form.mjs.map +1 -1
  245. package/dist/development/core/product/state.d.mts +41 -0
  246. package/dist/development/core/product/url.d.mts +6 -0
  247. package/dist/development/core/product/url.mjs.map +1 -1
  248. package/dist/development/core/request-context.d.mts +8 -5
  249. package/dist/development/core/request-context.mjs +17 -39
  250. package/dist/development/core/request-context.mjs.map +1 -1
  251. package/dist/development/core/request-routing/handle-shopify-routes.mjs +4 -1
  252. package/dist/development/core/request-routing/handle-shopify-routes.mjs.map +1 -1
  253. package/dist/development/core/request-routing/interceptors/ajax-api.mjs +1 -1
  254. package/dist/development/core/request-routing/interceptors/api-proxy.mjs +1 -1
  255. package/dist/development/core/request-routing/interceptors/checkout.mjs +22 -6
  256. package/dist/development/core/request-routing/interceptors/checkout.mjs.map +1 -1
  257. package/dist/development/core/request-routing/interceptors/mcp-proxy.mjs +1 -1
  258. package/dist/development/core/request-routing/interceptors/proxy.mjs +36 -10
  259. package/dist/development/core/request-routing/interceptors/proxy.mjs.map +1 -1
  260. package/dist/development/core/request-routing/interceptors/query-param-redirect.mjs +5 -11
  261. package/dist/development/core/request-routing/interceptors/query-param-redirect.mjs.map +1 -1
  262. package/dist/development/core/request-routing/interceptors/sfapi-proxy.mjs +19 -1
  263. package/dist/development/core/request-routing/interceptors/sfapi-proxy.mjs.map +1 -1
  264. package/dist/development/core/request-routing/interceptors/ucp-mcp-proxy.mjs +35 -0
  265. package/dist/development/core/request-routing/interceptors/ucp-mcp-proxy.mjs.map +1 -0
  266. package/dist/development/core/request-routing/interceptors/well-known.mjs +1 -1
  267. package/dist/development/core/shopify-scripts/analytics.mjs +2 -2
  268. package/dist/development/core/shopify-scripts/analytics.mjs.map +1 -1
  269. package/dist/development/core/shopify-scripts/constants.mjs +4 -2
  270. package/dist/development/core/shopify-scripts/constants.mjs.map +1 -1
  271. package/dist/development/core/shopify-scripts/global.mjs +9 -4
  272. package/dist/development/core/shopify-scripts/global.mjs.map +1 -1
  273. package/dist/development/core/shopify-scripts/index.d.mts +1 -0
  274. package/dist/development/core/shopify-scripts/index.mjs +14 -12
  275. package/dist/development/core/shopify-scripts/index.mjs.map +1 -1
  276. package/dist/development/core/shopify-scripts/initialize.d.mts +1 -0
  277. package/dist/development/core/shopify-scripts/initialize.mjs +10 -3
  278. package/dist/development/core/shopify-scripts/initialize.mjs.map +1 -1
  279. package/dist/development/core/shopify-scripts/types.d.mts +6 -0
  280. package/dist/development/core/url.mjs +21 -2
  281. package/dist/development/core/url.mjs.map +1 -1
  282. package/dist/development/customer-account/session.d.mts +69 -13
  283. package/dist/development/customer-account/session.mjs +4 -0
  284. package/dist/development/customer-account/session.mjs.map +1 -1
  285. package/dist/development/globals.d.mts +6 -5
  286. package/dist/development/graphql/generated/graphql-env.d.mts +459 -16
  287. package/dist/development/graphql/generated/storefront-api-types.d.mts +1 -1
  288. package/dist/development/graphql/graphql.d.mts +33 -0
  289. package/dist/development/graphql/graphql.mjs +30 -0
  290. package/dist/development/graphql/graphql.mjs.map +1 -1
  291. package/dist/development/graphql/type-resolver.d.mts +14 -0
  292. package/dist/development/react/cart.d.mts +85 -14
  293. package/dist/development/react/cart.mjs +123 -3
  294. package/dist/development/react/cart.mjs.map +1 -1
  295. package/dist/development/react/collection.d.mts +2 -4
  296. package/dist/development/react/collection.mjs.map +1 -1
  297. package/dist/development/react/index.d.mts +8 -6
  298. package/dist/development/react/index.mjs +2 -2
  299. package/dist/development/react/predictive-search.d.mts +68 -7
  300. package/dist/development/react/predictive-search.mjs +54 -12
  301. package/dist/development/react/predictive-search.mjs.map +1 -1
  302. package/dist/development/react/product.d.mts +1 -0
  303. package/dist/development/react/product.mjs +5 -2
  304. package/dist/development/react/product.mjs.map +1 -1
  305. package/dist/development/react/shopify-scripts.mjs +1 -0
  306. package/dist/development/react/shopify-scripts.mjs.map +1 -1
  307. package/dist/development/vue/cart.d.mts +85 -6
  308. package/dist/development/vue/cart.mjs +95 -0
  309. package/dist/development/vue/cart.mjs.map +1 -1
  310. package/dist/development/vue/collection.d.mts +83 -5
  311. package/dist/development/vue/collection.mjs +52 -0
  312. package/dist/development/vue/collection.mjs.map +1 -1
  313. package/dist/development/vue/index.d.mts +6 -4
  314. package/dist/development/vue/predictive-search.d.mts +53 -6
  315. package/dist/development/vue/predictive-search.mjs +33 -0
  316. package/dist/development/vue/predictive-search.mjs.map +1 -1
  317. package/dist/development/vue/product.d.mts +6 -2
  318. package/dist/development/vue/product.mjs.map +1 -1
  319. package/dist/development/vue/shopify-scripts.d.mts +30 -3
  320. package/dist/development/vue/shopify-scripts.mjs +6 -0
  321. package/dist/development/vue/shopify-scripts.mjs.map +1 -1
  322. package/dist/globals.d.mts +6 -5
  323. package/dist/graphql/generated/customer-account-graphql-env.d.mts +1717 -1090
  324. package/dist/graphql/generated/graphql-env.d.mts +459 -16
  325. package/dist/graphql/generated/storefront-api-types.d.mts +1 -1
  326. package/dist/graphql/graphql.d.mts +33 -0
  327. package/dist/graphql/graphql.mjs +30 -0
  328. package/dist/graphql/graphql.mjs.map +1 -1
  329. package/dist/graphql/type-resolver.d.mts +14 -0
  330. package/dist/react/cart.d.mts +85 -14
  331. package/dist/react/cart.mjs +123 -3
  332. package/dist/react/cart.mjs.map +1 -1
  333. package/dist/react/collection.d.mts +2 -4
  334. package/dist/react/collection.mjs.map +1 -1
  335. package/dist/react/index.d.mts +8 -6
  336. package/dist/react/index.mjs +2 -2
  337. package/dist/react/predictive-search.d.mts +68 -7
  338. package/dist/react/predictive-search.mjs +54 -12
  339. package/dist/react/predictive-search.mjs.map +1 -1
  340. package/dist/react/product.d.mts +1 -0
  341. package/dist/react/product.mjs +5 -2
  342. package/dist/react/product.mjs.map +1 -1
  343. package/dist/react/shopify-scripts.mjs +1 -0
  344. package/dist/react/shopify-scripts.mjs.map +1 -1
  345. package/dist/storefront-api-types.d.ts +165 -20
  346. package/dist/storefront.schema.json +782 -57
  347. package/dist/vite/customer-account.mjs +191 -0
  348. package/dist/vite/customer-account.mjs.map +1 -0
  349. package/dist/vite/local-https.mjs +13 -29
  350. package/dist/vite/local-https.mjs.map +1 -1
  351. package/dist/vite/mkcert.mjs +1 -1
  352. package/dist/vue/cart.d.mts +85 -6
  353. package/dist/vue/cart.mjs +95 -0
  354. package/dist/vue/cart.mjs.map +1 -1
  355. package/dist/vue/collection.d.mts +83 -5
  356. package/dist/vue/collection.mjs +52 -0
  357. package/dist/vue/collection.mjs.map +1 -1
  358. package/dist/vue/index.d.mts +6 -4
  359. package/dist/vue/predictive-search.d.mts +53 -6
  360. package/dist/vue/predictive-search.mjs +33 -0
  361. package/dist/vue/predictive-search.mjs.map +1 -1
  362. package/dist/vue/product.d.mts +6 -2
  363. package/dist/vue/product.mjs.map +1 -1
  364. package/dist/vue/shopify-scripts.d.mts +31 -4
  365. package/dist/vue/shopify-scripts.mjs +6 -0
  366. package/dist/vue/shopify-scripts.mjs.map +1 -1
  367. package/package.json +5 -2
  368. package/skills/hydrogen-analytics/SKILL.md +6 -5
  369. package/skills/hydrogen-analytics/references/custom-consent.md +52 -0
  370. package/skills/hydrogen-analytics/references/react.md +1 -1
  371. package/skills/hydrogen-cart-metafields/SKILL.md +133 -0
  372. package/skills/hydrogen-cart-ui/SKILL.md +2 -1
  373. package/skills/hydrogen-customer-account/SKILL.md +3 -3
  374. package/skills/hydrogen-local-https/SKILL.md +22 -7
  375. package/skills/hydrogen-request-handlers/SKILL.md +5 -5
  376. package/skills/hydrogen-request-handlers/references/nuxt.md +0 -6
  377. package/skills/hydrogen-setup/references/analytics.md +24 -23
  378. package/skills/hydrogen-setup/steps/1-inspect-app.md +1 -1
  379. package/skills/hydrogen-setup/steps/11-verify.md +1 -0
  380. package/skills/hydrogen-setup/steps/2-scaffold.md +22 -1
  381. package/skills/hydrogen-smoke-test/SKILL.md +2 -2
  382. package/skills/hydrogen-storefront-client/SKILL.md +4 -2
  383. package/skills/hydrogen-variant-form/SKILL.md +10 -4
  384. package/ts-plugin/package.json +5 -0
  385. package/dist/core/shopify-scripts/consent.mjs +0 -17
  386. package/dist/core/shopify-scripts/consent.mjs.map +0 -1
  387. package/dist/core/shopify-scripts/deprecated-cookies.mjs +0 -97
  388. package/dist/core/shopify-scripts/deprecated-cookies.mjs.map +0 -1
  389. package/dist/core/shopify-scripts/utils/cookie-domain.mjs +0 -43
  390. package/dist/core/shopify-scripts/utils/cookie-domain.mjs.map +0 -1
  391. package/dist/core/shopify-scripts/utils/tracking-values.mjs +0 -65
  392. package/dist/core/shopify-scripts/utils/tracking-values.mjs.map +0 -1
  393. package/dist/core/shopify-scripts/utils/uuid.mjs +0 -17
  394. package/dist/core/shopify-scripts/utils/uuid.mjs.map +0 -1
  395. package/dist/development/core/shopify-scripts/consent.mjs +0 -17
  396. package/dist/development/core/shopify-scripts/consent.mjs.map +0 -1
  397. package/dist/development/core/shopify-scripts/deprecated-cookies.mjs +0 -97
  398. package/dist/development/core/shopify-scripts/deprecated-cookies.mjs.map +0 -1
  399. package/dist/development/core/shopify-scripts/utils/cookie-domain.mjs +0 -43
  400. package/dist/development/core/shopify-scripts/utils/cookie-domain.mjs.map +0 -1
  401. package/dist/development/core/shopify-scripts/utils/tracking-values.mjs +0 -65
  402. package/dist/development/core/shopify-scripts/utils/tracking-values.mjs.map +0 -1
  403. package/dist/development/core/shopify-scripts/utils/uuid.mjs +0 -17
  404. package/dist/development/core/shopify-scripts/utils/uuid.mjs.map +0 -1
@@ -373,6 +373,28 @@ export type AutomaticDiscountApplication = DiscountApplication & {
373
373
  value: PricingValue;
374
374
  };
375
375
 
376
+ /**
377
+ * Captures the intent of a discount source at the time it was applied to a cart.
378
+ * This includes the discount value, how it's allocated across entitled items, and
379
+ * which line types it targets.
380
+ *
381
+ * The actual discounted amounts on specific cart lines are represented by [`CartDiscountAllocation`](https://shopify.dev/docs/api/storefront/current/interfaces/CartDiscountAllocation)
382
+ * objects, which reference this application.
383
+ *
384
+ */
385
+ export type BaseCartDiscountApplication = {
386
+ /** The method by which the discount's value is allocated to its entitled items. */
387
+ allocationMethod: DiscountApplicationAllocationMethod;
388
+ /** Which lines of targetType that the discount is allocated over. */
389
+ targetSelection: DiscountApplicationTargetSelection;
390
+ /** The type of line that the discount is applicable towards. */
391
+ targetType: DiscountApplicationTargetType;
392
+ /** The total amount allocated by this discount application across all entitled items. */
393
+ totalAllocatedAmount: MoneyV2;
394
+ /** The value of the discount application. */
395
+ value: PricingValue;
396
+ };
397
+
376
398
  /**
377
399
  * Defines the shared fields for items in a shopping cart. Implemented by [`CartLine`](https://shopify.dev/docs/api/storefront/current/objects/CartLine) for individual merchandise and [`ComponentizableCartLine`](https://shopify.dev/docs/api/storefront/current/objects/ComponentizableCartLine) for grouped merchandise like bundles.
378
400
  *
@@ -401,6 +423,8 @@ export type BaseCartLine = {
401
423
  quantity: Scalars["Int"]["output"];
402
424
  /** The selling plan associated with the cart line and the effect that each selling plan has on variants when they're purchased. */
403
425
  sellingPlanAllocation?: Maybe<SellingPlanAllocation>;
426
+ /** A stable identifier for the line matching the value exposed in Liquid via the `view_key` filter and accepted as input on `cartLinesUpdate` and `cartLinesRemove`. */
427
+ viewKey?: Maybe<Scalars["String"]["output"]>;
404
428
  };
405
429
 
406
430
  /**
@@ -413,6 +437,16 @@ export type BaseCartLineAttributeArgs = {
413
437
  key: Scalars["String"]["input"];
414
438
  };
415
439
 
440
+ /**
441
+ * Defines the shared fields for items in a shopping cart. Implemented by [`CartLine`](https://shopify.dev/docs/api/storefront/current/objects/CartLine) for individual merchandise and [`ComponentizableCartLine`](https://shopify.dev/docs/api/storefront/current/objects/ComponentizableCartLine) for grouped merchandise like bundles.
442
+ *
443
+ * Each implementation includes the merchandise being purchased, quantity, cost breakdown, applied discounts, custom attributes, and any associated [`SellingPlan`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlan).
444
+ *
445
+ */
446
+ export type BaseCartLineDiscountAllocationsArgs = {
447
+ lineLevelOnly?: InputMaybe<Scalars["Boolean"]["input"]>;
448
+ };
449
+
416
450
  /**
417
451
  * An auto-generated type for paginating through multiple BaseCartLines.
418
452
  *
@@ -672,6 +706,8 @@ export type Cart = HasMetafields &
672
706
  * @deprecated Use `cart.lines[].discountAllocations(lineLevelOnly: false)` and `cart.deliveryGroups[].discountAllocations` instead.
673
707
  */
674
708
  discountAllocations: Array<CartDiscountAllocation>;
709
+ /** The discount applications applied to the cart. */
710
+ discountApplications: Array<BaseCartDiscountApplication>;
675
711
  /** The case-insensitive discount codes that the customer added at checkout. */
676
712
  discountCodes: Array<CartDiscountCode>;
677
713
  /**
@@ -804,12 +840,31 @@ export type CartAutomaticDiscountAllocation = CartDiscountAllocation & {
804
840
  discountApplication: CartDiscountApplication;
805
841
  /** The discounted amount that has been applied to the cart line. */
806
842
  discountedAmount: MoneyV2;
843
+ /** The discount application that created this allocation, with corrected value semantics. */
844
+ sourceDiscountApplication: BaseCartDiscountApplication;
807
845
  /** The type of line that the discount is applicable towards. */
808
846
  targetType: DiscountApplicationTargetType;
809
847
  /** The title of the allocated discount. */
810
848
  title: Scalars["String"]["output"];
811
849
  };
812
850
 
851
+ /** The discount application automatically applied based on prerequisites. */
852
+ export type CartAutomaticDiscountApplication = BaseCartDiscountApplication & {
853
+ __typename?: "CartAutomaticDiscountApplication";
854
+ /** The method by which the discount's value is allocated to its entitled items. */
855
+ allocationMethod: DiscountApplicationAllocationMethod;
856
+ /** Which lines of targetType that the discount is allocated over. */
857
+ targetSelection: DiscountApplicationTargetSelection;
858
+ /** The type of line that the discount is applicable towards. */
859
+ targetType: DiscountApplicationTargetType;
860
+ /** The title of the discount. */
861
+ title: Scalars["String"]["output"];
862
+ /** The total amount allocated by this discount application across all entitled items. */
863
+ totalAllocatedAmount: MoneyV2;
864
+ /** The value of the discount application. */
865
+ value: PricingValue;
866
+ };
867
+
813
868
  /** Return type for `cartBillingAddressUpdate` mutation. */
814
869
  export type CartBillingAddressUpdatePayload = {
815
870
  __typename?: "CartBillingAddressUpdatePayload";
@@ -953,10 +1008,29 @@ export type CartCodeDiscountAllocation = CartDiscountAllocation & {
953
1008
  discountApplication: CartDiscountApplication;
954
1009
  /** The discounted amount that has been applied to the cart line. */
955
1010
  discountedAmount: MoneyV2;
1011
+ /** The discount application that created this allocation, with corrected value semantics. */
1012
+ sourceDiscountApplication: BaseCartDiscountApplication;
956
1013
  /** The type of line that the discount is applicable towards. */
957
1014
  targetType: DiscountApplicationTargetType;
958
1015
  };
959
1016
 
1017
+ /** The discount application applied using a discount code. */
1018
+ export type CartCodeDiscountApplication = BaseCartDiscountApplication & {
1019
+ __typename?: "CartCodeDiscountApplication";
1020
+ /** The method by which the discount's value is allocated to its entitled items. */
1021
+ allocationMethod: DiscountApplicationAllocationMethod;
1022
+ /** The code used to apply the discount. */
1023
+ code: Scalars["String"]["output"];
1024
+ /** Which lines of targetType that the discount is allocated over. */
1025
+ targetSelection: DiscountApplicationTargetSelection;
1026
+ /** The type of line that the discount is applicable towards. */
1027
+ targetType: DiscountApplicationTargetType;
1028
+ /** The total amount allocated by this discount application across all entitled items. */
1029
+ totalAllocatedAmount: MoneyV2;
1030
+ /** The value of the discount application. */
1031
+ value: PricingValue;
1032
+ };
1033
+
960
1034
  /** The completion action to checkout a cart. */
961
1035
  export type CartCompletionAction = CompletePaymentChallenge;
962
1036
 
@@ -1080,12 +1154,31 @@ export type CartCustomDiscountAllocation = CartDiscountAllocation & {
1080
1154
  discountApplication: CartDiscountApplication;
1081
1155
  /** The discounted amount that has been applied to the cart line. */
1082
1156
  discountedAmount: MoneyV2;
1157
+ /** The discount application that created this allocation, with corrected value semantics. */
1158
+ sourceDiscountApplication: BaseCartDiscountApplication;
1083
1159
  /** The type of line that the discount is applicable towards. */
1084
1160
  targetType: DiscountApplicationTargetType;
1085
1161
  /** The title of the allocated discount. */
1086
1162
  title: Scalars["String"]["output"];
1087
1163
  };
1088
1164
 
1165
+ /** The discount application applied by a custom script or function. */
1166
+ export type CartCustomDiscountApplication = BaseCartDiscountApplication & {
1167
+ __typename?: "CartCustomDiscountApplication";
1168
+ /** The method by which the discount's value is allocated to its entitled items. */
1169
+ allocationMethod: DiscountApplicationAllocationMethod;
1170
+ /** Which lines of targetType that the discount is allocated over. */
1171
+ targetSelection: DiscountApplicationTargetSelection;
1172
+ /** The type of line that the discount is applicable towards. */
1173
+ targetType: DiscountApplicationTargetType;
1174
+ /** The title of the discount. */
1175
+ title: Scalars["String"]["output"];
1176
+ /** The total amount allocated by this discount application across all entitled items. */
1177
+ totalAllocatedAmount: MoneyV2;
1178
+ /** The value of the discount application. */
1179
+ value: PricingValue;
1180
+ };
1181
+
1089
1182
  /**
1090
1183
  * The delivery properties of the cart.
1091
1184
  *
@@ -1293,6 +1386,8 @@ export type CartDeliveryGroup = {
1293
1386
  deliveryAddress: MailingAddress;
1294
1387
  /** The delivery options available for the delivery group. */
1295
1388
  deliveryOptions: Array<CartDeliveryOption>;
1389
+ /** The discount allocations applied to the delivery group. */
1390
+ discountAllocations: Array<CartDiscountAllocation>;
1296
1391
  /** The type of merchandise in the delivery group. */
1297
1392
  groupType: CartDeliveryGroupType;
1298
1393
  /** The ID for the delivery group. */
@@ -1454,6 +1549,8 @@ export type CartDiscountAllocation = {
1454
1549
  discountApplication: CartDiscountApplication;
1455
1550
  /** The discounted amount that has been applied to the cart line. */
1456
1551
  discountedAmount: MoneyV2;
1552
+ /** The discount application that created this allocation, with corrected value semantics. */
1553
+ sourceDiscountApplication: BaseCartDiscountApplication;
1457
1554
  /** The type of line that the discount is applicable towards. */
1458
1555
  targetType: DiscountApplicationTargetType;
1459
1556
  };
@@ -1736,6 +1833,12 @@ export type CartInput = {
1736
1833
  *
1737
1834
  */
1738
1835
  note?: InputMaybe<Scalars["String"]["input"]>;
1836
+ /**
1837
+ * The source name of the channel to use for order attribution.
1838
+ * The value must match the source name of a channel that the client, identified by the storefront access token, owns.
1839
+ *
1840
+ */
1841
+ sourceName?: InputMaybe<Scalars["String"]["input"]>;
1739
1842
  };
1740
1843
 
1741
1844
  /**
@@ -1794,6 +1897,8 @@ export type CartLine = BaseCartLine &
1794
1897
  quantity: Scalars["Int"]["output"];
1795
1898
  /** The selling plan associated with the cart line and the effect that each selling plan has on variants when they're purchased. */
1796
1899
  sellingPlanAllocation?: Maybe<SellingPlanAllocation>;
1900
+ /** A stable identifier for the line matching the value exposed in Liquid via the `view_key` filter and accepted as input on `cartLinesUpdate` and `cartLinesRemove`. */
1901
+ viewKey?: Maybe<Scalars["String"]["output"]>;
1797
1902
  };
1798
1903
 
1799
1904
  /**
@@ -1806,6 +1911,16 @@ export type CartLineAttributeArgs = {
1806
1911
  key: Scalars["String"]["input"];
1807
1912
  };
1808
1913
 
1914
+ /**
1915
+ * An item in a customer's [`Cart`](https://shopify.dev/docs/api/storefront/current/objects/Cart) representing a product variant they intend to purchase. Each cart line tracks the merchandise, quantity, cost breakdown, and any applied discounts.
1916
+ *
1917
+ * Cart lines can include custom attributes for additional information like gift wrapping requests, and can be associated with a [`SellingPlanAllocation`](https://shopify.dev/docs/api/storefront/current/objects/SellingPlanAllocation) for purchase options like subscriptions, pre-orders, or try-before-you-buy. The [`instructions`](https://shopify.dev/docs/api/storefront/current/objects/CartLine#field-CartLine.fields.instructions) field indicates whether the line can be removed or have its quantity updated.
1918
+ *
1919
+ */
1920
+ export type CartLineDiscountAllocationsArgs = {
1921
+ lineLevelOnly?: InputMaybe<Scalars["Boolean"]["input"]>;
1922
+ };
1923
+
1809
1924
  /**
1810
1925
  * Cost breakdown for a single line item in a [cart](https://shopify.dev/docs/api/storefront/current/objects/Cart). Includes the per-unit price, the subtotal before line-level discounts, and the final total amount the buyer pays.
1811
1926
  *
@@ -1901,14 +2016,16 @@ export type CartLineUpdateInput = {
1901
2016
  * The input must not contain more than `250` values.
1902
2017
  */
1903
2018
  attributes?: InputMaybe<Array<AttributeInput>>;
1904
- /** The ID of the merchandise line. */
1905
- id: Scalars["ID"]["input"];
2019
+ /** The ID of the merchandise line. Mutually exclusive with `viewKey`. */
2020
+ id?: InputMaybe<Scalars["ID"]["input"]>;
1906
2021
  /** The ID of the merchandise for the line item. */
1907
2022
  merchandiseId?: InputMaybe<Scalars["ID"]["input"]>;
1908
2023
  /** The quantity of the line item. */
1909
2024
  quantity?: InputMaybe<Scalars["Int"]["input"]>;
1910
2025
  /** The ID of the selling plan that the merchandise is being purchased with. */
1911
2026
  sellingPlanId?: InputMaybe<Scalars["ID"]["input"]>;
2027
+ /** The `view_key` of the merchandise line, as exposed in Liquid via the cart line `view_key` filter. Mutually exclusive with `id`. */
2028
+ viewKey?: InputMaybe<Scalars["String"]["input"]>;
1912
2029
  };
1913
2030
 
1914
2031
  /** Return type for `cartLinesAdd` mutation. */
@@ -2299,7 +2416,9 @@ export type CartWarningCode =
2299
2416
  /** Only one-time purchase is available for B2B orders. */
2300
2417
  | "MERCHANDISE_SELLING_PLAN_NOT_APPLICABLE_ON_COMPANY_LOCATION"
2301
2418
  /** Gift cards are not available as a payment method. */
2302
- | "PAYMENTS_GIFT_CARDS_UNAVAILABLE";
2419
+ | "PAYMENTS_GIFT_CARDS_UNAVAILABLE"
2420
+ /** The product is unavailable in the current buyer location. */
2421
+ | "PRODUCT_UNAVAILABLE_IN_BUYER_LOCATION";
2303
2422
 
2304
2423
  /**
2305
2424
  * A filter used to view a subset of products in a collection matching a specific category value.
@@ -2664,6 +2783,8 @@ export type ComponentizableCartLine = BaseCartLine &
2664
2783
  quantity: Scalars["Int"]["output"];
2665
2784
  /** The selling plan associated with the cart line and the effect that each selling plan has on variants when they're purchased. */
2666
2785
  sellingPlanAllocation?: Maybe<SellingPlanAllocation>;
2786
+ /** A stable identifier for the line matching the value exposed in Liquid via the `view_key` filter and accepted as input on `cartLinesUpdate` and `cartLinesRemove`. */
2787
+ viewKey?: Maybe<Scalars["String"]["output"]>;
2667
2788
  };
2668
2789
 
2669
2790
  /** Represents information about the grouped merchandise in the cart. */
@@ -2671,6 +2792,11 @@ export type ComponentizableCartLineAttributeArgs = {
2671
2792
  key: Scalars["String"]["input"];
2672
2793
  };
2673
2794
 
2795
+ /** Represents information about the grouped merchandise in the cart. */
2796
+ export type ComponentizableCartLineDiscountAllocationsArgs = {
2797
+ lineLevelOnly?: InputMaybe<Scalars["Boolean"]["input"]>;
2798
+ };
2799
+
2674
2800
  /** Details for count of elements. */
2675
2801
  export type Count = {
2676
2802
  __typename?: "Count";
@@ -2704,7 +2830,7 @@ export type Country = {
2704
2830
  /** The ISO code of the country. */
2705
2831
  isoCode: CountryCode;
2706
2832
  /**
2707
- * The market that includes this country.
2833
+ * The market that applies to this country. In cases where multiple markets match, this returns the most-specific country region market.
2708
2834
  * @deprecated This `market` field will be removed in a future version of the API.
2709
2835
  */
2710
2836
  market?: Maybe<Market>;
@@ -3554,6 +3680,8 @@ export type CurrencyCode =
3554
3680
  | "XAF"
3555
3681
  /** East Caribbean Dollar (XCD). */
3556
3682
  | "XCD"
3683
+ /** Caribbean Guilder (XCG). */
3684
+ | "XCG"
3557
3685
  /** West African CFA franc (XOF). */
3558
3686
  | "XOF"
3559
3687
  /** CFP Franc (XPF). */
@@ -4301,7 +4429,7 @@ export type FilterPresentation =
4301
4429
  * The type of data that the filter group represents.
4302
4430
  *
4303
4431
  * For more information, refer to [Filter products in a collection with the Storefront API]
4304
- * (https://shopify.dev/custom-storefronts/products-collections/filter-products).
4432
+ * (https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/filter-products).
4305
4433
  *
4306
4434
  */
4307
4435
  export type FilterType =
@@ -5015,7 +5143,7 @@ export type Localization = {
5015
5143
  /** The language of the active localized experience. Use the `@inContext` directive to change this value. */
5016
5144
  language: Language;
5017
5145
  /**
5018
- * The market including the country of the active localized experience. Use the `@inContext` directive to change this value.
5146
+ * The market that applies to the buyer's country. In cases where multiple markets match, this returns the most-specific country region market. Use the `@inContext` directive to change this value.
5019
5147
  * @deprecated This `market` field will be removed in a future version of the API.
5020
5148
  */
5021
5149
  market: Market;
@@ -6283,7 +6411,8 @@ export type MutationCartLinesAddArgs = {
6283
6411
  /** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */
6284
6412
  export type MutationCartLinesRemoveArgs = {
6285
6413
  cartId: Scalars["ID"]["input"];
6286
- lineIds: Array<Scalars["ID"]["input"]>;
6414
+ lineIds?: InputMaybe<Array<Scalars["ID"]["input"]>>;
6415
+ viewKeys?: InputMaybe<Array<Scalars["String"]["input"]>>;
6287
6416
  };
6288
6417
 
6289
6418
  /** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */
@@ -6423,7 +6552,7 @@ export type MutationCustomerUpdateArgs = {
6423
6552
 
6424
6553
  /** The schema’s entry-point for mutations. This acts as the public, top-level API from which all mutation queries must start. */
6425
6554
  export type MutationShopPayPaymentRequestSessionCreateArgs = {
6426
- paymentRequest: ShopPayPaymentRequestInput;
6555
+ paymentRequest?: InputMaybe<ShopPayPaymentRequestInput>;
6427
6556
  sourceIdentifier: Scalars["String"]["input"];
6428
6557
  };
6429
6558
 
@@ -6917,7 +7046,7 @@ export type PredictiveSearchResult = {
6917
7046
  __typename?: "PredictiveSearchResult";
6918
7047
  /** The articles that match the search query. */
6919
7048
  articles: Array<Article>;
6920
- /** The articles that match the search query. */
7049
+ /** The collections that match the search query. */
6921
7050
  collections: Array<Collection>;
6922
7051
  /** The pages that match the search query. */
6923
7052
  pages: Array<Page>;
@@ -7132,7 +7261,7 @@ export type Product = HasMetafields &
7132
7261
  productType: Scalars["String"]["output"];
7133
7262
  /** The date and time when the product was published to the channel. */
7134
7263
  publishedAt: Scalars["DateTime"]["output"];
7135
- /** Whether the product can only be purchased with a [selling plan](/docs/apps/build/purchase-options/subscriptions/selling-plans). Products that are sold on subscription (`requiresSellingPlan: true`) can be updated only for online stores. If you update a product to be subscription-only (`requiresSellingPlan:false`), then the product is unpublished from all channels, except the online store. */
7264
+ /** Whether the product can only be purchased with a [selling plan](/docs/apps/build/purchase-options/subscriptions/selling-plans). Products that are sold on subscription (`requiresSellingPlan: true`) can be updated only for online stores. If you update a product to be subscription-only (`requiresSellingPlan: true`), then the product is unpublished from all channels, except the online store. */
7136
7265
  requiresSellingPlan: Scalars["Boolean"]["output"];
7137
7266
  /**
7138
7267
  * Find an active product variant based on selected options, availability or the first variant.
@@ -8174,7 +8303,7 @@ export type QueryRoot = {
8174
8303
  /**
8175
8304
  * Returns paginated search results for [`Product`](https://shopify.dev/docs/api/storefront/current/objects/Product), [`Page`](https://shopify.dev/docs/api/storefront/current/objects/Page), and [`Article`](https://shopify.dev/docs/api/storefront/current/objects/Article) resources based on a query string. Results are sorted by relevance by default.
8176
8305
  *
8177
- * The response includes the total result count and available product filters for building [faceted search interfaces](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/filter-products). Use the [`prefix`](https://shopify.dev/docs/api/storefront/current/enums/SearchPrefixQueryType) argument to enable partial word matching on the last search term, allowing queries like "winter snow" to match "snowboard" or "snowshoe".
8306
+ * The response includes the total result count and available product filters for building [faceted search interfaces](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/filter-products). A search returns up to 1,000 results. Use the [`prefix`](https://shopify.dev/docs/api/storefront/current/enums/SearchPrefixQueryType) argument to enable partial word matching on the last search term, allowing queries like "winter snow" to match "snowboard" or "snowshoe".
8178
8307
  *
8179
8308
  */
8180
8309
  search: SearchResultItemConnection;
@@ -8701,7 +8830,7 @@ export type SearchResultItemConnection = {
8701
8830
  pageInfo: PageInfo;
8702
8831
  /** A list of available filters. */
8703
8832
  productFilters: Array<Filter>;
8704
- /** The total number of results. */
8833
+ /** The total number of results, up to a maximum of 1,000. If a search matches more than 1,000 results, then it returns 1,000, and pagination returns up to the first 1,000 results. */
8705
8834
  totalCount: Scalars["Int"]["output"];
8706
8835
  };
8707
8836
 
@@ -9241,7 +9370,10 @@ export type ShopPayInstallmentsProductVariantPricing = Node & {
9241
9370
  /** Represents a Shop Pay payment request. */
9242
9371
  export type ShopPayPaymentRequest = {
9243
9372
  __typename?: "ShopPayPaymentRequest";
9244
- /** The delivery methods for the payment request. */
9373
+ /**
9374
+ * The delivery methods for the payment request.
9375
+ * @deprecated This field is deprecated and will be removed in a future version.
9376
+ */
9245
9377
  deliveryMethods: Array<ShopPayPaymentRequestDeliveryMethod>;
9246
9378
  /** The discount codes for the payment request. */
9247
9379
  discountCodes: Array<Scalars["String"]["output"]>;
@@ -9380,6 +9512,7 @@ export type ShopPayPaymentRequestInput = {
9380
9512
  * The delivery methods for the payment request.
9381
9513
  *
9382
9514
  * The input must not contain more than `250` values.
9515
+ * @deprecated This field is deprecated and will be removed in a future version.
9383
9516
  */
9384
9517
  deliveryMethods?: InputMaybe<Array<ShopPayPaymentRequestDeliveryMethodInput>>;
9385
9518
  /**
@@ -9492,6 +9625,8 @@ export type ShopPayPaymentRequestReceipt = {
9492
9625
  paymentRequest: ShopPayPaymentRequest;
9493
9626
  /** The processing status. */
9494
9627
  processingStatusType: Scalars["String"]["output"];
9628
+ /** The Shop user that authorized the payment request. */
9629
+ shopUser?: Maybe<ShopPayPaymentRequestShopUser>;
9495
9630
  /** The token of the receipt. */
9496
9631
  token: Scalars["String"]["output"];
9497
9632
  };
@@ -9501,8 +9636,11 @@ export type ShopPayPaymentRequestSession = {
9501
9636
  __typename?: "ShopPayPaymentRequestSession";
9502
9637
  /** The checkout URL of the Shop Pay payment request session. */
9503
9638
  checkoutUrl: Scalars["URL"]["output"];
9504
- /** The payment request associated with the Shop Pay payment request session. */
9505
- paymentRequest: ShopPayPaymentRequest;
9639
+ /**
9640
+ * The payment request associated with the Shop Pay payment request session.
9641
+ * @deprecated This field is deprecated and will be removed in a future version.
9642
+ */
9643
+ paymentRequest?: Maybe<ShopPayPaymentRequest>;
9506
9644
  /** The source identifier of the Shop Pay payment request session. */
9507
9645
  sourceIdentifier: Scalars["String"]["output"];
9508
9646
  /** The token of the Shop Pay payment request session. */
@@ -9548,6 +9686,13 @@ export type ShopPayPaymentRequestShippingLineInput = {
9548
9686
  label?: InputMaybe<Scalars["String"]["input"]>;
9549
9687
  };
9550
9688
 
9689
+ /** Represents the Shop user that authorized a Shop Pay payment request. */
9690
+ export type ShopPayPaymentRequestShopUser = {
9691
+ __typename?: "ShopPayPaymentRequestShopUser";
9692
+ /** The public ID of the Shop user. */
9693
+ publicId?: Maybe<Scalars["String"]["output"]>;
9694
+ };
9695
+
9551
9696
  /** Represents a shipping total for a Shop Pay payment request. */
9552
9697
  export type ShopPayPaymentRequestTotalShippingPrice = {
9553
9698
  __typename?: "ShopPayPaymentRequestTotalShippingPrice";
@@ -9718,22 +9863,22 @@ export type SocialLoginProvider = {
9718
9863
  };
9719
9864
 
9720
9865
  /**
9721
- * Inventory information for a product variant at a physical store location that offers local pickup. Includes stock availability, quantity on hand, and estimated pickup readiness time.
9866
+ * Inventory information for a product variant at a physical store location. Includes stock availability, quantity on hand, and estimated pickup readiness time. Availability also includes inventory that can be moved to the location through a store transfer route, so a variant can be available for pickup with no on-hand stock at the location.
9722
9867
  *
9723
- * Local pickup must be [enabled in the store's shipping settings](https://help.shopify.com/manual/shipping/setting-up-and-managing-your-shipping/local-methods/local-pickup) for this data to be returned. Results can be sorted by proximity to a customer's location using the `near` argument on the [`ProductVariant.storeAvailability`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant#field-ProductVariant.fields.storeAvailability) connection.
9868
+ * Local pickup is [enabled in the store's shipping settings](https://help.shopify.com/manual/shipping/setting-up-and-managing-your-shipping/local-methods/local-pickup), and a returned location isn't guaranteed to offer it. Results can be sorted by proximity to a customer's location using the `near` argument on the [`ProductVariant.storeAvailability`](https://shopify.dev/docs/api/storefront/current/objects/ProductVariant#field-ProductVariant.fields.storeAvailability) connection.
9724
9869
  *
9725
9870
  * Learn more about [supporting local pickup on storefronts](https://shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/products-collections/local-pickup).
9726
9871
  *
9727
9872
  */
9728
9873
  export type StoreAvailability = {
9729
9874
  __typename?: "StoreAvailability";
9730
- /** Whether the product variant is in-stock at this location. */
9875
+ /** Whether the product variant can be picked up at this location. This is `true` when the variant is in stock here, can be supplied through a store transfer from another location, or is sold with untracked or oversellable inventory (its inventory isn't tracked, or its inventory policy allows continuing to sell when out of stock). As a result, `available` can be `true` even when `quantityAvailable` is `0`. */
9731
9876
  available: Scalars["Boolean"]["output"];
9732
9877
  /** The location where this product variant is stocked at. */
9733
9878
  location: Location;
9734
- /** Returns the estimated amount of time it takes for pickup to be ready (Example: Usually ready in 24 hours). */
9879
+ /** Returns the estimated amount of time it takes for pickup to be ready (Example: Usually ready in 24 hours). When the variant is out of stock at this location and supplied through a store transfer, this reflects the estimated transfer transit time when available, otherwise it falls back to the location's standard pickup processing time. */
9735
9880
  pickUpTime: Scalars["String"]["output"];
9736
- /** The quantity of the product variant in-stock at this location. */
9881
+ /** The quantity of the product variant physically in stock at this location. This counts on-hand inventory only and excludes inventory available through a store transfer, so it can be `0` while `available` is `true`. */
9737
9882
  quantityAvailable: Scalars["Int"]["output"];
9738
9883
  };
9739
9884