@sixtyninecommerce/client 0.24.0 → 0.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (293) hide show
  1. package/README.md +21 -0
  2. package/dist/admin/forms.js +19 -0
  3. package/dist/admin/forms.js.map +1 -1
  4. package/dist/admin/http.d.ts +9 -0
  5. package/dist/admin/http.d.ts.map +1 -1
  6. package/dist/admin/http.js +3 -0
  7. package/dist/admin/http.js.map +1 -1
  8. package/dist/admin/index.d.ts +63 -0
  9. package/dist/admin/index.d.ts.map +1 -1
  10. package/dist/admin/index.js +67 -0
  11. package/dist/admin/index.js.map +1 -1
  12. package/dist/admin/redirects.d.ts +6 -0
  13. package/dist/admin/redirects.d.ts.map +1 -1
  14. package/dist/admin/redirects.js +12 -0
  15. package/dist/admin/redirects.js.map +1 -1
  16. package/dist/admin/types.d.ts +63 -0
  17. package/dist/admin/types.d.ts.map +1 -1
  18. package/dist/cache-tags.d.ts +19 -0
  19. package/dist/cache-tags.d.ts.map +1 -1
  20. package/dist/cache-tags.js +19 -0
  21. package/dist/cache-tags.js.map +1 -1
  22. package/dist/client.d.ts +17 -0
  23. package/dist/client.d.ts.map +1 -1
  24. package/dist/client.js +17 -0
  25. package/dist/client.js.map +1 -1
  26. package/dist/commerce/age-verification.js +3 -3
  27. package/dist/commerce/age-verification.js.map +1 -1
  28. package/dist/commerce/branding.js +7 -0
  29. package/dist/commerce/branding.js.map +1 -1
  30. package/dist/commerce/cart.js +25 -0
  31. package/dist/commerce/cart.js.map +1 -1
  32. package/dist/commerce/checkout.d.ts +68 -0
  33. package/dist/commerce/checkout.d.ts.map +1 -1
  34. package/dist/commerce/checkout.js +83 -0
  35. package/dist/commerce/checkout.js.map +1 -1
  36. package/dist/commerce/customer.d.ts +58 -0
  37. package/dist/commerce/customer.d.ts.map +1 -1
  38. package/dist/commerce/customer.js +65 -0
  39. package/dist/commerce/customer.js.map +1 -1
  40. package/dist/commerce/pickup-location-parser.d.ts +18 -0
  41. package/dist/commerce/pickup-location-parser.d.ts.map +1 -1
  42. package/dist/commerce/pickup-location-parser.js +28 -0
  43. package/dist/commerce/pickup-location-parser.js.map +1 -1
  44. package/dist/commerce/placement-error.d.ts +52 -0
  45. package/dist/commerce/placement-error.d.ts.map +1 -1
  46. package/dist/commerce/placement-error.js +87 -0
  47. package/dist/commerce/placement-error.js.map +1 -1
  48. package/dist/commerce/products.d.ts +48 -0
  49. package/dist/commerce/products.d.ts.map +1 -1
  50. package/dist/commerce/products.js +92 -0
  51. package/dist/commerce/products.js.map +1 -1
  52. package/dist/commerce/queries.d.ts +113 -27
  53. package/dist/commerce/queries.d.ts.map +1 -1
  54. package/dist/commerce/queries.js +188 -2
  55. package/dist/commerce/queries.js.map +1 -1
  56. package/dist/commerce/quotes.js +33 -0
  57. package/dist/commerce/quotes.js.map +1 -1
  58. package/dist/commerce/saved-lists.d.ts +7 -7
  59. package/dist/commerce/saved-lists.d.ts.map +1 -1
  60. package/dist/commerce/saved-lists.js +1 -1
  61. package/dist/commerce/search.js +3 -0
  62. package/dist/commerce/search.js.map +1 -1
  63. package/dist/commerce/shipping.js +3 -3
  64. package/dist/commerce/shipping.js.map +1 -1
  65. package/dist/commerce/stock-notifications.d.ts +11 -0
  66. package/dist/commerce/stock-notifications.d.ts.map +1 -1
  67. package/dist/commerce/stock-notifications.js +11 -0
  68. package/dist/commerce/stock-notifications.js.map +1 -1
  69. package/dist/commerce/vat-validation.js +4 -4
  70. package/dist/commerce/vat-validation.js.map +1 -1
  71. package/dist/constants.d.ts +31 -0
  72. package/dist/constants.d.ts.map +1 -1
  73. package/dist/constants.js +32 -0
  74. package/dist/constants.js.map +1 -1
  75. package/dist/content/asset-urls.d.ts +50 -0
  76. package/dist/content/asset-urls.d.ts.map +1 -1
  77. package/dist/content/asset-urls.js +92 -0
  78. package/dist/content/asset-urls.js.map +1 -1
  79. package/dist/content/assets.d.ts +15 -0
  80. package/dist/content/assets.d.ts.map +1 -1
  81. package/dist/content/assets.js +15 -0
  82. package/dist/content/assets.js.map +1 -1
  83. package/dist/content/collection-pages.d.ts +5 -0
  84. package/dist/content/collection-pages.d.ts.map +1 -1
  85. package/dist/content/collection-pages.js +8 -0
  86. package/dist/content/collection-pages.js.map +1 -1
  87. package/dist/content/collections.d.ts +14 -0
  88. package/dist/content/collections.d.ts.map +1 -1
  89. package/dist/content/collections.js +16 -0
  90. package/dist/content/collections.js.map +1 -1
  91. package/dist/content/filtered-products.d.ts +18 -0
  92. package/dist/content/filtered-products.d.ts.map +1 -1
  93. package/dist/content/filtered-products.js +16 -0
  94. package/dist/content/filtered-products.js.map +1 -1
  95. package/dist/content/form-field-types.d.ts +6 -0
  96. package/dist/content/form-field-types.d.ts.map +1 -1
  97. package/dist/content/form-field-types.js +12 -0
  98. package/dist/content/form-field-types.js.map +1 -1
  99. package/dist/content/forms.d.ts +16 -0
  100. package/dist/content/forms.d.ts.map +1 -1
  101. package/dist/content/forms.js +23 -0
  102. package/dist/content/forms.js.map +1 -1
  103. package/dist/content/items.d.ts +26 -0
  104. package/dist/content/items.d.ts.map +1 -1
  105. package/dist/content/items.js +33 -0
  106. package/dist/content/items.js.map +1 -1
  107. package/dist/content/resolve.js +6 -0
  108. package/dist/content/resolve.js.map +1 -1
  109. package/dist/content/sitemap.d.ts +5 -0
  110. package/dist/content/sitemap.d.ts.map +1 -1
  111. package/dist/content/sitemap.js +5 -0
  112. package/dist/content/sitemap.js.map +1 -1
  113. package/dist/core/context.js +6 -0
  114. package/dist/core/context.js.map +1 -1
  115. package/dist/core/headers.js +2 -0
  116. package/dist/core/headers.js.map +1 -1
  117. package/dist/core/http.d.ts +8 -0
  118. package/dist/core/http.d.ts.map +1 -1
  119. package/dist/core/http.js +89 -1
  120. package/dist/core/http.js.map +1 -1
  121. package/dist/credit/credit-status.js +2 -2
  122. package/dist/credit/credit-status.js.map +1 -1
  123. package/dist/credit/payment-terms.js +2 -2
  124. package/dist/credit/payment-terms.js.map +1 -1
  125. package/dist/currency/exchange.d.ts +11 -0
  126. package/dist/currency/exchange.d.ts.map +1 -1
  127. package/dist/currency/exchange.js +11 -0
  128. package/dist/currency/exchange.js.map +1 -1
  129. package/dist/errors.d.ts +50 -2
  130. package/dist/errors.d.ts.map +1 -1
  131. package/dist/errors.js +48 -2
  132. package/dist/errors.js.map +1 -1
  133. package/dist/events/envelope.d.ts +36 -0
  134. package/dist/events/envelope.d.ts.map +1 -1
  135. package/dist/events/envelope.js +12 -0
  136. package/dist/events/envelope.js.map +1 -1
  137. package/dist/events/index.d.ts +13 -0
  138. package/dist/events/index.d.ts.map +1 -1
  139. package/dist/events/index.js +13 -0
  140. package/dist/events/index.js.map +1 -1
  141. package/dist/events/payloads.d.ts +19 -0
  142. package/dist/events/payloads.d.ts.map +1 -1
  143. package/dist/events/payloads.js +12 -0
  144. package/dist/events/payloads.js.map +1 -1
  145. package/dist/index.d.ts +7 -0
  146. package/dist/index.d.ts.map +1 -1
  147. package/dist/index.js +7 -0
  148. package/dist/index.js.map +1 -1
  149. package/dist/media/index.js +2 -0
  150. package/dist/media/index.js.map +1 -1
  151. package/dist/media/urls.d.ts +52 -0
  152. package/dist/media/urls.d.ts.map +1 -1
  153. package/dist/media/urls.js +38 -0
  154. package/dist/media/urls.js.map +1 -1
  155. package/dist/media/video.d.ts +16 -0
  156. package/dist/media/video.d.ts.map +1 -1
  157. package/dist/media/video.js +16 -0
  158. package/dist/media/video.js.map +1 -1
  159. package/dist/next/artifact-handler.d.ts +22 -0
  160. package/dist/next/artifact-handler.d.ts.map +1 -1
  161. package/dist/next/artifact-handler.js +22 -0
  162. package/dist/next/artifact-handler.js.map +1 -1
  163. package/dist/next/event-revalidate-handler.d.ts +67 -0
  164. package/dist/next/event-revalidate-handler.d.ts.map +1 -1
  165. package/dist/next/event-revalidate-handler.js +48 -0
  166. package/dist/next/event-revalidate-handler.js.map +1 -1
  167. package/dist/next/index.d.ts +6 -0
  168. package/dist/next/index.d.ts.map +1 -1
  169. package/dist/next/index.js +6 -0
  170. package/dist/next/index.js.map +1 -1
  171. package/dist/next/json-ld.d.ts +9 -0
  172. package/dist/next/json-ld.d.ts.map +1 -1
  173. package/dist/next/json-ld.js +9 -0
  174. package/dist/next/json-ld.js.map +1 -1
  175. package/dist/next/metadata.d.ts +18 -0
  176. package/dist/next/metadata.d.ts.map +1 -1
  177. package/dist/next/metadata.js +21 -0
  178. package/dist/next/metadata.js.map +1 -1
  179. package/dist/next/redirect-middleware.d.ts +39 -0
  180. package/dist/next/redirect-middleware.d.ts.map +1 -1
  181. package/dist/next/redirect-middleware.js +32 -0
  182. package/dist/next/redirect-middleware.js.map +1 -1
  183. package/dist/next/revalidate-handler.d.ts +30 -0
  184. package/dist/next/revalidate-handler.d.ts.map +1 -1
  185. package/dist/next/revalidate-handler.js +22 -0
  186. package/dist/next/revalidate-handler.js.map +1 -1
  187. package/dist/order-scope.d.ts +27 -0
  188. package/dist/order-scope.d.ts.map +1 -1
  189. package/dist/order-scope.js +29 -0
  190. package/dist/order-scope.js.map +1 -1
  191. package/dist/pricing/format.d.ts +17 -0
  192. package/dist/pricing/format.d.ts.map +1 -1
  193. package/dist/pricing/format.js +19 -0
  194. package/dist/pricing/format.js.map +1 -1
  195. package/dist/pricing/index.d.ts +8 -1
  196. package/dist/pricing/index.d.ts.map +1 -1
  197. package/dist/pricing/index.js +18 -2
  198. package/dist/pricing/index.js.map +1 -1
  199. package/dist/pricing/tax-display.d.ts +77 -0
  200. package/dist/pricing/tax-display.d.ts.map +1 -1
  201. package/dist/pricing/tax-display.js +85 -0
  202. package/dist/pricing/tax-display.js.map +1 -1
  203. package/dist/pricing/tiers.d.ts +9 -0
  204. package/dist/pricing/tiers.d.ts.map +1 -1
  205. package/dist/pricing/tiers.js +9 -0
  206. package/dist/pricing/tiers.js.map +1 -1
  207. package/dist/pricing/validation.d.ts +56 -1
  208. package/dist/pricing/validation.d.ts.map +1 -1
  209. package/dist/pricing/validation.js +61 -0
  210. package/dist/pricing/validation.js.map +1 -1
  211. package/dist/redirects/index.d.ts +1 -0
  212. package/dist/redirects/index.d.ts.map +1 -1
  213. package/dist/redirects/index.js +1 -0
  214. package/dist/redirects/index.js.map +1 -1
  215. package/dist/redirects/store.d.ts +20 -0
  216. package/dist/redirects/store.d.ts.map +1 -1
  217. package/dist/redirects/store.js +57 -0
  218. package/dist/redirects/store.js.map +1 -1
  219. package/dist/redirects/types.d.ts +24 -0
  220. package/dist/redirects/types.d.ts.map +1 -1
  221. package/dist/redirects/types.js +1 -0
  222. package/dist/redirects/types.js.map +1 -1
  223. package/dist/revalidation/event-plan.d.ts +48 -0
  224. package/dist/revalidation/event-plan.d.ts.map +1 -1
  225. package/dist/revalidation/event-plan.js +61 -0
  226. package/dist/revalidation/event-plan.js.map +1 -1
  227. package/dist/revalidation/event-verify.d.ts +25 -0
  228. package/dist/revalidation/event-verify.d.ts.map +1 -1
  229. package/dist/revalidation/event-verify.js +27 -0
  230. package/dist/revalidation/event-verify.js.map +1 -1
  231. package/dist/revalidation/types.d.ts +20 -0
  232. package/dist/revalidation/types.d.ts.map +1 -1
  233. package/dist/revalidation/types.js +10 -0
  234. package/dist/revalidation/types.js.map +1 -1
  235. package/dist/revalidation/url-context.d.ts +25 -0
  236. package/dist/revalidation/url-context.d.ts.map +1 -1
  237. package/dist/revalidation/url-context.js +17 -0
  238. package/dist/revalidation/url-context.js.map +1 -1
  239. package/dist/revalidation/verify.d.ts +8 -0
  240. package/dist/revalidation/verify.d.ts.map +1 -1
  241. package/dist/revalidation/verify.js +8 -0
  242. package/dist/revalidation/verify.js.map +1 -1
  243. package/dist/seo/ai.d.ts +17 -0
  244. package/dist/seo/ai.d.ts.map +1 -1
  245. package/dist/seo/ai.js +12 -0
  246. package/dist/seo/ai.js.map +1 -1
  247. package/dist/seo/alternates.js +13 -0
  248. package/dist/seo/alternates.js.map +1 -1
  249. package/dist/seo/artifacts.d.ts +13 -0
  250. package/dist/seo/artifacts.d.ts.map +1 -1
  251. package/dist/seo/artifacts.js +19 -0
  252. package/dist/seo/artifacts.js.map +1 -1
  253. package/dist/seo/canonical.d.ts +15 -0
  254. package/dist/seo/canonical.d.ts.map +1 -1
  255. package/dist/seo/canonical.js +24 -0
  256. package/dist/seo/canonical.js.map +1 -1
  257. package/dist/seo/index.js +6 -0
  258. package/dist/seo/index.js.map +1 -1
  259. package/dist/seo/json-ld.d.ts +13 -0
  260. package/dist/seo/json-ld.d.ts.map +1 -1
  261. package/dist/seo/json-ld.js +32 -0
  262. package/dist/seo/json-ld.js.map +1 -1
  263. package/dist/seo/locale-tag.d.ts +31 -0
  264. package/dist/seo/locale-tag.d.ts.map +1 -1
  265. package/dist/seo/locale-tag.js +31 -0
  266. package/dist/seo/locale-tag.js.map +1 -1
  267. package/dist/seo/meta-tags.d.ts +29 -0
  268. package/dist/seo/meta-tags.d.ts.map +1 -1
  269. package/dist/seo/meta-tags.js +28 -0
  270. package/dist/seo/meta-tags.js.map +1 -1
  271. package/dist/seo/metadata-parser.d.ts +24 -0
  272. package/dist/seo/metadata-parser.d.ts.map +1 -1
  273. package/dist/seo/metadata-parser.js +38 -0
  274. package/dist/seo/metadata-parser.js.map +1 -1
  275. package/dist/seo/metadata-types.d.ts +16 -0
  276. package/dist/seo/metadata-types.d.ts.map +1 -1
  277. package/dist/seo/product-path.d.ts +96 -0
  278. package/dist/seo/product-path.d.ts.map +1 -1
  279. package/dist/seo/product-path.js +96 -0
  280. package/dist/seo/product-path.js.map +1 -1
  281. package/dist/seo/robots.d.ts +17 -0
  282. package/dist/seo/robots.d.ts.map +1 -1
  283. package/dist/seo/robots.js +12 -0
  284. package/dist/seo/robots.js.map +1 -1
  285. package/dist/seo/types.d.ts +39 -0
  286. package/dist/seo/types.d.ts.map +1 -1
  287. package/dist/seo/url-builder.d.ts +31 -0
  288. package/dist/seo/url-builder.d.ts.map +1 -1
  289. package/dist/seo/url-builder.js +36 -0
  290. package/dist/seo/url-builder.js.map +1 -1
  291. package/dist/types.d.ts +1163 -0
  292. package/dist/types.d.ts.map +1 -1
  293. package/package.json +1 -1
@@ -9,6 +9,8 @@ export function createSearchMethods(http) {
9
9
  vars.collectionSlug = input.collectionSlug;
10
10
  if (input.collectionId)
11
11
  vars.collectionId = input.collectionId;
12
+ // Plural collection filters combine with AND server-side — a product must
13
+ // belong to every listed collection (the storefront's cross-group filter).
12
14
  if (input.collectionSlugs?.length)
13
15
  vars.collectionSlugs = input.collectionSlugs;
14
16
  if (input.collectionIds?.length)
@@ -23,6 +25,7 @@ export function createSearchMethods(http) {
23
25
  vars.skip = input.skip;
24
26
  if (input.sort)
25
27
  vars.sort = input.sort;
28
+ // Only ids are taggable up front; slug filters resolve server-side.
26
29
  const collectionIds = [
27
30
  ...(input.collectionId ? [input.collectionId] : []),
28
31
  ...(input.collectionIds ?? []),
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commerce/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAmB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,UAAU,mBAAmB,CAAC,IAAgB;IAClD,OAAO;QACL,KAAK,CAAC,cAAc,CAAC,KAAkB,EAAE,OAAwB;YAC/D,MAAM,IAAI,GAA4B,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YAC3D,IAAI,KAAK,CAAC,cAAc;gBAAE,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;YACrE,IAAI,KAAK,CAAC,YAAY;gBAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;YAG/D,IAAI,KAAK,CAAC,eAAe,EAAE,MAAM;gBAAE,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;YAChF,IAAI,KAAK,CAAC,aAAa,EAAE,MAAM;gBAAE,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;YAC1E,IAAI,KAAK,CAAC,aAAa,EAAE,MAAM;gBAAE,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;YAC1E,IAAI,KAAK,CAAC,iBAAiB,EAAE,MAAM;gBAAE,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC;YACtF,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YAC/C,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YAC/C,IAAI,KAAK,CAAC,IAAI;gBAAE,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YAGvC,MAAM,aAAa,GAAG;gBACpB,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,CAAC;aAC/B,CAAC;YACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,eAAe,EACf,EAAE,KAAK,EAAE,IAAI,EAAE,EACf,UAAU,CAAC,OAAO,EAAE,gBAAgB,EAAE,aAAa,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAC7E,CAAC;YACF,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commerce/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAmB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,UAAU,mBAAmB,CAAC,IAAgB;IAClD,OAAO;QACL,KAAK,CAAC,cAAc,CAAC,KAAkB,EAAE,OAAwB;YAC/D,MAAM,IAAI,GAA4B,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YAC3D,IAAI,KAAK,CAAC,cAAc;gBAAE,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;YACrE,IAAI,KAAK,CAAC,YAAY;gBAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;YAC/D,0EAA0E;YAC1E,2EAA2E;YAC3E,IAAI,KAAK,CAAC,eAAe,EAAE,MAAM;gBAAE,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;YAChF,IAAI,KAAK,CAAC,aAAa,EAAE,MAAM;gBAAE,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;YAC1E,IAAI,KAAK,CAAC,aAAa,EAAE,MAAM;gBAAE,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;YAC1E,IAAI,KAAK,CAAC,iBAAiB,EAAE,MAAM;gBAAE,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC;YACtF,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YAC/C,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YAC/C,IAAI,KAAK,CAAC,IAAI;gBAAE,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YAEvC,oEAAoE;YACpE,MAAM,aAAa,GAAG;gBACpB,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,CAAC;aAC/B,CAAC;YACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,eAAe,EACf,EAAE,KAAK,EAAE,IAAI,EAAE,EACf,UAAU,CAAC,OAAO,EAAE,gBAAgB,EAAE,aAAa,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAC7E,CAAC;YACF,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- export const DROP_OFF_POINTS = `
1
+ export const DROP_OFF_POINTS = /* GraphQL */ `
2
2
  query MyparcelDropOffPoints($input: MyparcelDropOffPointInput!) {
3
3
  myparcelDropOffPoints(input: $input) {
4
4
  location_code
@@ -20,7 +20,7 @@ export const DROP_OFF_POINTS = `
20
20
  }
21
21
  }
22
22
  `;
23
- export const DELIVERY_OPTIONS = `
23
+ export const DELIVERY_OPTIONS = /* GraphQL */ `
24
24
  query MyparcelDeliveryOptions($input: MyparcelDeliveryOptionsInput!) {
25
25
  myparcelDeliveryOptions(input: $input) {
26
26
  date
@@ -34,7 +34,7 @@ export const DELIVERY_OPTIONS = `
34
34
  }
35
35
  }
36
36
  `;
37
- export const TRACK_SHIPMENT = `
37
+ export const TRACK_SHIPMENT = /* GraphQL */ `
38
38
  query MyparcelTrackShipment($barcode: String!, $postalCode: String!) {
39
39
  myparcelTrackShipment(barcode: $barcode, postalCode: $postalCode) {
40
40
  shipment_id
@@ -1 +1 @@
1
- {"version":3,"file":"shipping.js","sourceRoot":"","sources":["../../src/commerce/shipping.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,eAAe,GAAiB;;;;;;;;;;;;;;;;;;;;;CAqB5C,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAiB;;;;;;;;;;;;;CAa7C,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAiB;;;;;;;;;;;;;;;;CAgB3C,CAAC;AAwCF,SAAS,eAAe,CAAC,GAAoB;IAC3C,OAAO;QACL,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,WAAW,EAAE,GAAG,CAAC,EAAE;QACnB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,aAAa,EAAE,GAAG,CAAC,cAAc;QACjC,UAAU,EAAE,GAAG,CAAC,YAAY;QAC5B,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,QAAQ,EAAE,GAAG,CAAC,QAAQ;KACvB,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAsB;IAC/C,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACzB,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,YAAY,EAAE,CAAC,CAAC,aAAa;YAC7B,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,YAAY,EAAE,CAAC,CAAC,IAAI;SACrB,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,GAA6B;IAChD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO;QACL,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,kBAAkB,EAAE,GAAG,CAAC,oBAAoB;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAgB;IACpD,OAAO;QACL,KAAK,CAAC,gBAAgB,CAAC,KAAwB;YAC7C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,eAAe,EACf,EAAE,KAAK,EAAE,CACV,CAAC;YACF,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACzD,CAAC;QAED,KAAK,CAAC,kBAAkB,CAAC,KAA2B;YAClD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,gBAAgB,EAChB,EAAE,KAAK,EAAE,CACV,CAAC;YACF,OAAO,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC7D,CAAC;QAED,KAAK,CAAC,aAAa,CAAC,OAAe,EAAE,UAAkB;YACrD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,cAAc,EACd,EAAE,OAAO,EAAE,UAAU,EAAE,CACxB,CAAC;YACF,OAAO,WAAW,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACjD,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"shipping.js","sourceRoot":"","sources":["../../src/commerce/shipping.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;CAqB5C,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAC;;;;;;;;;;;;;CAa7C,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAC;;;;;;;;;;;;;;;;CAgB3C,CAAC;AAwCF,SAAS,eAAe,CAAC,GAAoB;IAC3C,OAAO;QACL,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,WAAW,EAAE,GAAG,CAAC,EAAE;QACnB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,aAAa,EAAE,GAAG,CAAC,cAAc;QACjC,UAAU,EAAE,GAAG,CAAC,YAAY;QAC5B,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,QAAQ,EAAE,GAAG,CAAC,QAAQ;KACvB,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAsB;IAC/C,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACzB,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,YAAY,EAAE,CAAC,CAAC,aAAa;YAC7B,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,YAAY,EAAE,CAAC,CAAC,IAAI;SACrB,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,GAA6B;IAChD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO;QACL,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,kBAAkB,EAAE,GAAG,CAAC,oBAAoB;KAC7C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAgB;IACpD,OAAO;QACL,KAAK,CAAC,gBAAgB,CAAC,KAAwB;YAC7C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,eAAe,EACf,EAAE,KAAK,EAAE,CACV,CAAC;YACF,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACzD,CAAC;QAED,KAAK,CAAC,kBAAkB,CAAC,KAA2B;YAClD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,gBAAgB,EAChB,EAAE,KAAK,EAAE,CACV,CAAC;YACF,OAAO,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC7D,CAAC;QAED,KAAK,CAAC,aAAa,CAAC,OAAe,EAAE,UAAkB;YACrD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,cAAc,EACd,EAAE,OAAO,EAAE,UAAU,EAAE,CACxB,CAAC;YACF,OAAO,WAAW,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACjD,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,7 +1,18 @@
1
1
  import type { HttpClient } from '../core/http.js';
2
2
  import type { StockNotificationSubscriptionResult } from '../types.js';
3
3
  export declare function createStockNotificationsMethods(http: HttpClient): {
4
+ /**
5
+ * Subscribe to a "back in stock" email for a variant. Logged-in customers
6
+ * may omit `emailAddress` — their account email is used. Guests must supply it.
7
+ *
8
+ * Throws `MutationError` for guest validation errors so callers can
9
+ * branch on `errorCode`. Returns the new subscription on success.
10
+ */
4
11
  subscribeToStockNotification(productVariantId: string, emailAddress?: string): Promise<StockNotificationSubscriptionResult>;
12
+ /**
13
+ * Unsubscribe from a stock notification using the token embedded in the
14
+ * email link. Always resolves to true (idempotent).
15
+ */
5
16
  unsubscribeFromStockNotification(token: string): Promise<boolean>;
6
17
  };
7
18
  //# sourceMappingURL=stock-notifications.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stock-notifications.d.ts","sourceRoot":"","sources":["../../src/commerce/stock-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,aAAa,CAAC;AA2CvE,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,UAAU;mDAUxC,MAAM,iBACT,MAAM,GACpB,OAAO,CAAC,mCAAmC,CAAC;4CAwBD,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;EAQ1E"}
1
+ {"version":3,"file":"stock-notifications.d.ts","sourceRoot":"","sources":["../../src/commerce/stock-notifications.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,aAAa,CAAC;AA2CvE,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,UAAU;IAE5D;;;;;;OAMG;mDAEiB,MAAM,iBACT,MAAM,GACpB,OAAO,CAAC,mCAAmC,CAAC;IAoB/C;;;OAGG;4CAC2C,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;EAQ1E"}
@@ -26,6 +26,13 @@ const UNSUBSCRIBE_FROM_STOCK_NOTIFICATION = `
26
26
  `;
27
27
  export function createStockNotificationsMethods(http) {
28
28
  return {
29
+ /**
30
+ * Subscribe to a "back in stock" email for a variant. Logged-in customers
31
+ * may omit `emailAddress` — their account email is used. Guests must supply it.
32
+ *
33
+ * Throws `MutationError` for guest validation errors so callers can
34
+ * branch on `errorCode`. Returns the new subscription on success.
35
+ */
29
36
  async subscribeToStockNotification(productVariantId, emailAddress) {
30
37
  const data = await http.graphql(SUBSCRIBE_TO_STOCK_NOTIFICATION, { productVariantId, emailAddress });
31
38
  const result = data.subscribeToStockNotification;
@@ -39,6 +46,10 @@ export function createStockNotificationsMethods(http) {
39
46
  }
40
47
  throw new MutationError(result.errorCode ?? 'STOCK_NOTIFICATION_ERROR', result.message ?? 'Stock notification subscription failed');
41
48
  },
49
+ /**
50
+ * Unsubscribe from a stock notification using the token embedded in the
51
+ * email link. Always resolves to true (idempotent).
52
+ */
42
53
  async unsubscribeFromStockNotification(token) {
43
54
  const data = await http.graphql(UNSUBSCRIBE_FROM_STOCK_NOTIFICATION, { token });
44
55
  return data.unsubscribeFromStockNotification;
@@ -1 +1 @@
1
- {"version":3,"file":"stock-notifications.js","sourceRoot":"","sources":["../../src/commerce/stock-notifications.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,MAAM,+BAA+B,GAAG;;;;;;;;;;;;;;;;;;;CAmBvC,CAAC;AAEF,MAAM,mCAAmC,GAAG;;;;CAI3C,CAAC;AAgBF,MAAM,UAAU,+BAA+B,CAAC,IAAgB;IAC9D,OAAO;QAQL,KAAK,CAAC,4BAA4B,CAChC,gBAAwB,EACxB,YAAqB;YAErB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,+BAA+B,EAC/B,EAAE,gBAAgB,EAAE,YAAY,EAAE,CACnC,CAAC;YACF,MAAM,MAAM,GAAG,IAAI,CAAC,4BAA4B,CAAC;YACjD,IAAI,MAAM,CAAC,UAAU,KAAK,+BAA+B,EAAE,CAAC;gBAC1D,OAAO;oBACL,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE;oBACnB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,EAAE;oBAC/C,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;oBACvC,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,EAAE;iBAClC,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,aAAa,CACrB,MAAM,CAAC,SAAS,IAAI,0BAA0B,EAC9C,MAAM,CAAC,OAAO,IAAI,wCAAwC,CAC3D,CAAC;QACJ,CAAC;QAMD,KAAK,CAAC,gCAAgC,CAAC,KAAa;YAClD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,mCAAmC,EACnC,EAAE,KAAK,EAAE,CACV,CAAC;YACF,OAAO,IAAI,CAAC,gCAAgC,CAAC;QAC/C,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"stock-notifications.js","sourceRoot":"","sources":["../../src/commerce/stock-notifications.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,MAAM,+BAA+B,GAAG;;;;;;;;;;;;;;;;;;;CAmBvC,CAAC;AAEF,MAAM,mCAAmC,GAAG;;;;CAI3C,CAAC;AAgBF,MAAM,UAAU,+BAA+B,CAAC,IAAgB;IAC9D,OAAO;QACL;;;;;;WAMG;QACH,KAAK,CAAC,4BAA4B,CAChC,gBAAwB,EACxB,YAAqB;YAErB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,+BAA+B,EAC/B,EAAE,gBAAgB,EAAE,YAAY,EAAE,CACnC,CAAC;YACF,MAAM,MAAM,GAAG,IAAI,CAAC,4BAA4B,CAAC;YACjD,IAAI,MAAM,CAAC,UAAU,KAAK,+BAA+B,EAAE,CAAC;gBAC1D,OAAO;oBACL,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE;oBACnB,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,EAAE;oBAC/C,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;oBACvC,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,EAAE;iBAClC,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,aAAa,CACrB,MAAM,CAAC,SAAS,IAAI,0BAA0B,EAC9C,MAAM,CAAC,OAAO,IAAI,wCAAwC,CAC3D,CAAC;QACJ,CAAC;QAED;;;WAGG;QACH,KAAK,CAAC,gCAAgC,CAAC,KAAa;YAClD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,mCAAmC,EACnC,EAAE,KAAK,EAAE,CACV,CAAC;YACF,OAAO,IAAI,CAAC,gCAAgC,CAAC;QAC/C,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- const VAT_FIELDS = `
1
+ const VAT_FIELDS = /* GraphQL */ `
2
2
  status
3
3
  vatNumber
4
4
  countryCode
@@ -7,17 +7,17 @@ const VAT_FIELDS = `
7
7
  validatedAt
8
8
  error
9
9
  `;
10
- const MY_VAT_VALIDATION_STATUS = `
10
+ const MY_VAT_VALIDATION_STATUS = /* GraphQL */ `
11
11
  query MyVatValidationStatus {
12
12
  myVatValidationStatus { ${VAT_FIELDS} }
13
13
  }
14
14
  `;
15
- const SET_MY_VAT_NUMBER = `
15
+ const SET_MY_VAT_NUMBER = /* GraphQL */ `
16
16
  mutation SetMyVatNumber($vatNumber: String!) {
17
17
  setMyVatNumber(vatNumber: $vatNumber) { ${VAT_FIELDS} }
18
18
  }
19
19
  `;
20
- const CLEAR_MY_VAT_NUMBER = `
20
+ const CLEAR_MY_VAT_NUMBER = /* GraphQL */ `
21
21
  mutation ClearMyVatNumber {
22
22
  clearMyVatNumber
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vat-validation.js","sourceRoot":"","sources":["../../src/commerce/vat-validation.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,GAAiB;;;;;;;;CAQhC,CAAC;AAEF,MAAM,wBAAwB,GAAiB;;8BAEjB,UAAU;;CAEvC,CAAC;AAEF,MAAM,iBAAiB,GAAiB;;8CAEM,UAAU;;CAEvD,CAAC;AAEF,MAAM,mBAAmB,GAAiB;;;;CAIzC,CAAC;AAEF,MAAM,UAAU,0BAA0B,CAAC,IAAgB;IACzD,OAAO;QACL,KAAK,CAAC,wBAAwB;YAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,wBAAwB,CACzB,CAAC;YACF,OAAO,IAAI,CAAC,qBAAqB,CAAC;QACpC,CAAC;QAED,KAAK,CAAC,cAAc,CAAC,SAAiB;YACpC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAA0C,iBAAiB,EAAE;gBAC1F,SAAS;aACV,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;QAED,KAAK,CAAC,gBAAgB;YACpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAgC,mBAAmB,CAAC,CAAC;YACpF,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC/B,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"vat-validation.js","sourceRoot":"","sources":["../../src/commerce/vat-validation.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,GAAG,aAAa,CAAC;;;;;;;;CAQhC,CAAC;AAEF,MAAM,wBAAwB,GAAG,aAAa,CAAC;;8BAEjB,UAAU;;CAEvC,CAAC;AAEF,MAAM,iBAAiB,GAAG,aAAa,CAAC;;8CAEM,UAAU;;CAEvD,CAAC;AAEF,MAAM,mBAAmB,GAAG,aAAa,CAAC;;;;CAIzC,CAAC;AAEF,MAAM,UAAU,0BAA0B,CAAC,IAAgB;IACzD,OAAO;QACL,KAAK,CAAC,wBAAwB;YAC5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAC7B,wBAAwB,CACzB,CAAC;YACF,OAAO,IAAI,CAAC,qBAAqB,CAAC;QACpC,CAAC;QAED,KAAK,CAAC,cAAc,CAAC,SAAiB;YACpC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAA0C,iBAAiB,EAAE;gBAC1F,SAAS;aACV,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;QAED,KAAK,CAAC,gBAAgB;YACpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAgC,mBAAmB,CAAC,CAAC;YACpF,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC/B,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,10 +1,41 @@
1
+ /** Default Vendure Shop API base URL. Append `/shop-api` for GraphQL endpoint. */
1
2
  export declare const DEFAULT_VENDURE_URL = "https://engine.sixtyninecommerce.com";
3
+ /** Default CMS REST API base URL. */
2
4
  export declare const DEFAULT_CMS_URL = "https://cms.sixtyninecommerce.com";
5
+ /** Default Plugins REST API base URL. Used for routes manifest. */
3
6
  export declare const DEFAULT_PLUGINS_URL = "https://plugins.sixtyninecommerce.com";
7
+ /** Vendure Shop API GraphQL path. */
4
8
  export declare const SHOP_API_PATH = "/shop-api";
9
+ /** Request timeout in milliseconds for all API calls. */
5
10
  export declare const REQUEST_TIMEOUT_MS = 15000;
11
+ /** Request timeout in milliseconds for initialization (channel resolution). */
6
12
  export declare const INIT_TIMEOUT_MS = 10000;
13
+ /**
14
+ * URL path segments that storefronts own and must never collide with
15
+ * CMS-routed root-level content. The platform validates root content slugs
16
+ * against this list and rejects collisions.
17
+ *
18
+ * Add a new entry only when introducing a new platform-reserved storefront
19
+ * route. Sub-paths (e.g. `/blog/cart`) are not reserved — only root.
20
+ *
21
+ * Mirrored in `services/cms/src/collections/reserved-slugs.ts`; both files
22
+ * must be kept in sync.
23
+ */
7
24
  export declare const RESERVED_STOREFRONT_PATHS: readonly ["cart", "checkout", "account", "sign-in", "register", "forgot-password", "reset-password", "verify", "verify-pending", "api", "sitemaps"];
8
25
  export type ReservedStorefrontPath = (typeof RESERVED_STOREFRONT_PATHS)[number];
26
+ /**
27
+ * Request header carrying the order scope — WHICH storefront a cart belongs to.
28
+ *
29
+ * A tenant can run a consumer shop and a trade (B2B/dealer) shop off ONE
30
+ * channel. Vendure's active-order lookup falls back to "the one active order
31
+ * for this customer in this channel", so separate cookies are not enough: a
32
+ * dealer logged into both shops otherwise shares a single cart. The engine's
33
+ * scoped active-order strategy reads this header on every Shop API request
34
+ * (including uploads) and keeps the two carts apart.
35
+ *
36
+ * Omitting the header is NOT the same as sending `CONSUMER` — the engine then
37
+ * behaves exactly as stock Vendure does, so a storefront that has never heard
38
+ * of scopes is unaffected.
39
+ */
9
40
  export declare const ORDER_SCOPE_HEADER = "x-order-scope";
10
41
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,mBAAmB,yCAAyC,CAAC;AAG1E,eAAO,MAAM,eAAe,sCAAsC,CAAC;AAGnE,eAAO,MAAM,mBAAmB,0CAA0C,CAAC;AAG3E,eAAO,MAAM,aAAa,cAAc,CAAC;AAGzC,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAGzC,eAAO,MAAM,eAAe,QAAS,CAAC;AAatC,eAAO,MAAM,yBAAyB,qJAa5B,CAAC;AAEX,MAAM,MAAM,sBAAsB,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AAgBhF,eAAO,MAAM,kBAAkB,kBAAkB,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,eAAO,MAAM,mBAAmB,yCAAyC,CAAC;AAE1E,qCAAqC;AACrC,eAAO,MAAM,eAAe,sCAAsC,CAAC;AAEnE,mEAAmE;AACnE,eAAO,MAAM,mBAAmB,0CAA0C,CAAC;AAE3E,qCAAqC;AACrC,eAAO,MAAM,aAAa,cAAc,CAAC;AAEzC,yDAAyD;AACzD,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAEzC,+EAA+E;AAC/E,eAAO,MAAM,eAAe,QAAS,CAAC;AAEtC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,qJAa5B,CAAC;AAEX,MAAM,MAAM,sBAAsB,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,kBAAkB,kBAAkB,CAAC"}
package/dist/constants.js CHANGED
@@ -1,9 +1,26 @@
1
+ /** Default Vendure Shop API base URL. Append `/shop-api` for GraphQL endpoint. */
1
2
  export const DEFAULT_VENDURE_URL = 'https://engine.sixtyninecommerce.com';
3
+ /** Default CMS REST API base URL. */
2
4
  export const DEFAULT_CMS_URL = 'https://cms.sixtyninecommerce.com';
5
+ /** Default Plugins REST API base URL. Used for routes manifest. */
3
6
  export const DEFAULT_PLUGINS_URL = 'https://plugins.sixtyninecommerce.com';
7
+ /** Vendure Shop API GraphQL path. */
4
8
  export const SHOP_API_PATH = '/shop-api';
9
+ /** Request timeout in milliseconds for all API calls. */
5
10
  export const REQUEST_TIMEOUT_MS = 15_000;
11
+ /** Request timeout in milliseconds for initialization (channel resolution). */
6
12
  export const INIT_TIMEOUT_MS = 10_000;
13
+ /**
14
+ * URL path segments that storefronts own and must never collide with
15
+ * CMS-routed root-level content. The platform validates root content slugs
16
+ * against this list and rejects collisions.
17
+ *
18
+ * Add a new entry only when introducing a new platform-reserved storefront
19
+ * route. Sub-paths (e.g. `/blog/cart`) are not reserved — only root.
20
+ *
21
+ * Mirrored in `services/cms/src/collections/reserved-slugs.ts`; both files
22
+ * must be kept in sync.
23
+ */
7
24
  export const RESERVED_STOREFRONT_PATHS = [
8
25
  'cart',
9
26
  'checkout',
@@ -15,7 +32,22 @@ export const RESERVED_STOREFRONT_PATHS = [
15
32
  'verify',
16
33
  'verify-pending',
17
34
  'api',
35
+ // Child-sitemap proxy path (/sitemaps/:file) — CMS content must not collide.
18
36
  'sitemaps',
19
37
  ];
38
+ /**
39
+ * Request header carrying the order scope — WHICH storefront a cart belongs to.
40
+ *
41
+ * A tenant can run a consumer shop and a trade (B2B/dealer) shop off ONE
42
+ * channel. Vendure's active-order lookup falls back to "the one active order
43
+ * for this customer in this channel", so separate cookies are not enough: a
44
+ * dealer logged into both shops otherwise shares a single cart. The engine's
45
+ * scoped active-order strategy reads this header on every Shop API request
46
+ * (including uploads) and keeps the two carts apart.
47
+ *
48
+ * Omitting the header is NOT the same as sending `CONSUMER` — the engine then
49
+ * behaves exactly as stock Vendure does, so a storefront that has never heard
50
+ * of scopes is unaffected.
51
+ */
20
52
  export const ORDER_SCOPE_HEADER = 'x-order-scope';
21
53
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,mBAAmB,GAAG,sCAAsC,CAAC;AAG1E,MAAM,CAAC,MAAM,eAAe,GAAG,mCAAmC,CAAC;AAGnE,MAAM,CAAC,MAAM,mBAAmB,GAAG,uCAAuC,CAAC;AAG3E,MAAM,CAAC,MAAM,aAAa,GAAG,WAAW,CAAC;AAGzC,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAGzC,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC;AAatC,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,MAAM;IACN,UAAU;IACV,SAAS;IACT,SAAS;IACT,UAAU;IACV,iBAAiB;IACjB,gBAAgB;IAChB,QAAQ;IACR,gBAAgB;IAChB,KAAK;IAEL,UAAU;CACF,CAAC;AAkBX,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,MAAM,CAAC,MAAM,mBAAmB,GAAG,sCAAsC,CAAC;AAE1E,qCAAqC;AACrC,MAAM,CAAC,MAAM,eAAe,GAAG,mCAAmC,CAAC;AAEnE,mEAAmE;AACnE,MAAM,CAAC,MAAM,mBAAmB,GAAG,uCAAuC,CAAC;AAE3E,qCAAqC;AACrC,MAAM,CAAC,MAAM,aAAa,GAAG,WAAW,CAAC;AAEzC,yDAAyD;AACzD,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC,+EAA+E;AAC/E,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC;AAEtC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,MAAM;IACN,UAAU;IACV,SAAS;IACT,SAAS;IACT,UAAU;IACV,iBAAiB;IACjB,gBAAgB;IAChB,QAAQ;IACR,gBAAgB;IAChB,KAAK;IACL,6EAA6E;IAC7E,UAAU;CACF,CAAC;AAIX;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAC"}
@@ -1,7 +1,57 @@
1
+ /**
2
+ * Resolve asset references inside CMS content values.
3
+ *
4
+ * CMS field values used to be written as ABSOLUTE CDN URLs — both bare picker
5
+ * values and `<img src>` inside rich text. That baked the CDN origin and the
6
+ * channel's code into the content itself, so a channel rename or a change of
7
+ * CDN domain silently broke every image (1,915 such references existed in
8
+ * production across two tenants). Values are now stored as storage KEYS and
9
+ * resolved here, at render time.
10
+ *
11
+ * Both forms are handled on purpose: an absolute URL passes through the
12
+ * resolver unchanged, so old and new content coexist and no backfill has to
13
+ * land before this ships.
14
+ */
1
15
  import type { AssetUrlResolver } from '../media/urls.js';
16
+ /** True when a bare string is an asset reference rather than merchant prose. */
2
17
  export declare function isAssetReference(value: string): boolean;
18
+ /**
19
+ * Resolve every asset reference in one stored value.
20
+ *
21
+ * - Rich text: rewrites each `src` attribute.
22
+ * - A bare storage key: resolves the whole value.
23
+ * - Anything else (prose, numbers, JSON): returned untouched.
24
+ */
3
25
  export declare function resolveContentAssetUrls(value: string, resolve: AssetUrlResolver): string;
26
+ /**
27
+ * Apply {@link resolveContentAssetUrls} across a field-value bag.
28
+ *
29
+ * Walks NESTED values, not just top-level strings. A `video` field is stored as
30
+ * `{ source, url }` and a `group` field as an object (or an array of them) with
31
+ * asset, multi-asset and rich-text members — the dashboard writes storage keys
32
+ * inside all of those, so stopping at the first level would hand the storefront
33
+ * a raw key and render a broken video or image.
34
+ *
35
+ * Non-string leaves (numbers, booleans, null) are returned untouched, and the
36
+ * walk is depth-capped: field values are merchant JSON, and a render must not
37
+ * be able to blow the stack.
38
+ */
4
39
  export declare function resolveContentFieldValues(fields: Record<string, unknown> | null | undefined, resolve: AssetUrlResolver): Record<string, unknown>;
40
+ /**
41
+ * Resolve the field values flattened onto one search hit.
42
+ *
43
+ * Search results come from Meilisearch, which stores `value_json` verbatim —
44
+ * so a hit carries exactly the same stored form as a direct read and needs
45
+ * exactly the same resolution. Missing it means a storefront search bar renders
46
+ * raw storage keys while the pages themselves are fine, and only for items
47
+ * re-saved since the migration, which makes it look intermittent.
48
+ */
5
49
  export declare function resolveSearchHitValues<T extends Record<string, unknown>>(hit: T, resolve: AssetUrlResolver): T;
50
+ /**
51
+ * Resolve the hits inside a raw search envelope (`{ data: { hits: [...] } }`).
52
+ *
53
+ * Used by the untyped `getContent` passthrough, which hands the caller whatever
54
+ * the endpoint returned — including, before this, unresolved storage keys.
55
+ */
6
56
  export declare function resolveSearchEnvelope(envelope: Record<string, unknown>, resolve: AssetUrlResolver): Record<string, unknown>;
7
57
  //# sourceMappingURL=asset-urls.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"asset-urls.d.ts","sourceRoot":"","sources":["../../src/content/asset-urls.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAmDzD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAIvD;AASD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAiBxF;AAmCD,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EAClD,OAAO,EAAE,gBAAgB,GACxB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUzB;AAiCD,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACtE,GAAG,EAAE,CAAC,EACN,OAAO,EAAE,gBAAgB,GACxB,CAAC,CAQH;AAQD,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,EAAE,gBAAgB,GACxB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAgBzB"}
1
+ {"version":3,"file":"asset-urls.d.ts","sourceRoot":"","sources":["../../src/content/asset-urls.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAkDzD,gFAAgF;AAChF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAIvD;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAiBxF;AAsBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EAClD,OAAO,EAAE,gBAAgB,GACxB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUzB;AAwBD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACtE,GAAG,EAAE,CAAC,EACN,OAAO,EAAE,gBAAgB,GACxB,CAAC,CAQH;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,EAAE,gBAAgB,GACxB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAgBzB"}
@@ -1,6 +1,45 @@
1
+ /**
2
+ * Resolve asset references inside CMS content values.
3
+ *
4
+ * CMS field values used to be written as ABSOLUTE CDN URLs — both bare picker
5
+ * values and `<img src>` inside rich text. That baked the CDN origin and the
6
+ * channel's code into the content itself, so a channel rename or a change of
7
+ * CDN domain silently broke every image (1,915 such references existed in
8
+ * production across two tenants). Values are now stored as storage KEYS and
9
+ * resolved here, at render time.
10
+ *
11
+ * Both forms are handled on purpose: an absolute URL passes through the
12
+ * resolver unchanged, so old and new content coexist and no backfill has to
13
+ * land before this ships.
14
+ */
15
+ /**
16
+ * A storage key: `{channelCode}/{source|preview|content}/…`. Deliberately
17
+ * narrow — content values are arbitrary merchant text, and anything looser
18
+ * would rewrite prose that merely contains a slash.
19
+ *
20
+ * `_global` is explicit: both asset writers map the DEFAULT channel to that
21
+ * prefix (`storage.service.ts`, `channel-aware-asset-naming-strategy.ts`), and
22
+ * a leading-underscore segment fails a plain `[a-z0-9]` opener — so
23
+ * platform-wide assets would silently never resolve.
24
+ */
1
25
  const STORAGE_KEY_PATTERN = /^(_global|[a-z0-9][a-z0-9-]*)\/(source|preview|content)\//;
26
+ /**
27
+ * Single-URL asset attributes inside stored rich-text HTML.
28
+ *
29
+ * BOTH quote styles: the WordPress importer preserves whatever the source
30
+ * markup used, so a single-quoted `src` holding a storage key would otherwise
31
+ * never be resolved and render as a broken image.
32
+ */
2
33
  const HTML_ATTR_PATTERN = /(\s(?:src|poster|href)=["'])([^"']+)(["'])/g;
34
+ /**
35
+ * `srcset` holds a COMMA-SEPARATED candidate list (`url 300w, url 500w`), so it
36
+ * needs its own parse — a whole-attribute replace would mangle the descriptors.
37
+ * It cannot be skipped either: browsers PREFER a matching srcset candidate over
38
+ * `src`, so leaving these unresolved would keep serving the old path even after
39
+ * everything else moved. Production rich text carries ~200 of these.
40
+ */
3
41
  const HTML_SRCSET_PATTERN = /(\ssrcset=["'])([^"']+)(["'])/g;
42
+ /** Rewrite each candidate's URL, preserving its width/density descriptor. */
4
43
  function resolveSrcset(value, resolve) {
5
44
  return value
6
45
  .split(',')
@@ -18,9 +57,17 @@ function resolveSrcset(value, resolve) {
18
57
  function looksLikeHtml(value) {
19
58
  return value.includes('<');
20
59
  }
60
+ /** True when a bare string is an asset reference rather than merchant prose. */
21
61
  export function isAssetReference(value) {
22
62
  return (STORAGE_KEY_PATTERN.test(value) || value.startsWith('http://') || value.startsWith('https://'));
23
63
  }
64
+ /**
65
+ * Resolve every asset reference in one stored value.
66
+ *
67
+ * - Rich text: rewrites each `src` attribute.
68
+ * - A bare storage key: resolves the whole value.
69
+ * - Anything else (prose, numbers, JSON): returned untouched.
70
+ */
24
71
  export function resolveContentAssetUrls(value, resolve) {
25
72
  if (!value)
26
73
  return value;
@@ -30,7 +77,14 @@ export function resolveContentAssetUrls(value, resolve) {
30
77
  }
31
78
  return isAssetReference(value) ? resolve(value) : value;
32
79
  }
80
+ /**
81
+ * How deep to walk a stored value. Field values are merchant JSON, so a
82
+ * pathological or cyclic-looking shape must not turn a page render into a stack
83
+ * overflow. Real content nests two or three levels (`group` → repeater entry →
84
+ * asset).
85
+ */
33
86
  const MAX_VALUE_DEPTH = 8;
87
+ /** Resolve every asset reference inside one stored value, at any depth. */
34
88
  function resolveValue(value, resolve, depth) {
35
89
  if (typeof value === 'string')
36
90
  return resolveContentAssetUrls(value, resolve);
@@ -44,7 +98,23 @@ function resolveValue(value, resolve, depth) {
44
98
  }
45
99
  return out;
46
100
  }
101
+ /**
102
+ * Apply {@link resolveContentAssetUrls} across a field-value bag.
103
+ *
104
+ * Walks NESTED values, not just top-level strings. A `video` field is stored as
105
+ * `{ source, url }` and a `group` field as an object (or an array of them) with
106
+ * asset, multi-asset and rich-text members — the dashboard writes storage keys
107
+ * inside all of those, so stopping at the first level would hand the storefront
108
+ * a raw key and render a broken video or image.
109
+ *
110
+ * Non-string leaves (numbers, booleans, null) are returned untouched, and the
111
+ * walk is depth-capped: field values are merchant JSON, and a render must not
112
+ * be able to blow the stack.
113
+ */
47
114
  export function resolveContentFieldValues(fields, resolve) {
115
+ // This runs on whatever the CMS returned. A field bag that is absent or not
116
+ // an object is a response shape, not a crash — the SDK must hand the caller
117
+ // something renderable either way.
48
118
  if (!fields || typeof fields !== 'object')
49
119
  return {};
50
120
  const out = {};
@@ -53,6 +123,13 @@ export function resolveContentFieldValues(fields, resolve) {
53
123
  }
54
124
  return out;
55
125
  }
126
+ /**
127
+ * Keys a search hit carries as ITEM METADATA rather than as a field value.
128
+ *
129
+ * They must be passed through untouched: `path` in particular is merchant
130
+ * routing like `products/content/winter`, which matches the storage-key shape
131
+ * exactly and would be rewritten into a CDN URL.
132
+ */
56
133
  const SEARCH_HIT_METADATA_KEYS = new Set([
57
134
  'id',
58
135
  'channel_id',
@@ -67,6 +144,15 @@ const SEARCH_HIT_METADATA_KEYS = new Set([
67
144
  'updated_at',
68
145
  'published_at',
69
146
  ]);
147
+ /**
148
+ * Resolve the field values flattened onto one search hit.
149
+ *
150
+ * Search results come from Meilisearch, which stores `value_json` verbatim —
151
+ * so a hit carries exactly the same stored form as a direct read and needs
152
+ * exactly the same resolution. Missing it means a storefront search bar renders
153
+ * raw storage keys while the pages themselves are fine, and only for items
154
+ * re-saved since the migration, which makes it look intermittent.
155
+ */
70
156
  export function resolveSearchHitValues(hit, resolve) {
71
157
  const out = {};
72
158
  for (const [key, value] of Object.entries(hit)) {
@@ -76,6 +162,12 @@ export function resolveSearchHitValues(hit, resolve) {
76
162
  }
77
163
  return out;
78
164
  }
165
+ /**
166
+ * Resolve the hits inside a raw search envelope (`{ data: { hits: [...] } }`).
167
+ *
168
+ * Used by the untyped `getContent` passthrough, which hands the caller whatever
169
+ * the endpoint returned — including, before this, unresolved storage keys.
170
+ */
79
171
  export function resolveSearchEnvelope(envelope, resolve) {
80
172
  const data = envelope.data;
81
173
  if (!data || typeof data !== 'object')
@@ -1 +1 @@
1
- {"version":3,"file":"asset-urls.js","sourceRoot":"","sources":["../../src/content/asset-urls.ts"],"names":[],"mappings":"AA2BA,MAAM,mBAAmB,GAAG,2DAA2D,CAAC;AASxF,MAAM,iBAAiB,GAAG,6CAA6C,CAAC;AASxE,MAAM,mBAAmB,GAAG,gCAAgC,CAAC;AAG7D,SAAS,aAAa,CAAC,KAAa,EAAE,OAAyB;IAC7D,OAAO,KAAK;SACT,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QACjB,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QACjC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,MAAM,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC;YAAE,OAAO,SAAS,CAAC;QACrD,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC;AAGD,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,OAAO,CACL,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAC/F,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,uBAAuB,CAAC,KAAa,EAAE,OAAyB;IAC9E,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IAEzB,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAC7B,iBAAiB,EACjB,CAAC,KAAK,EAAE,MAAc,EAAE,GAAW,EAAE,MAAc,EAAE,EAAE,CACrD,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,CACtE,CAAC;QACF,OAAO,SAAS,CAAC,OAAO,CACtB,mBAAmB,EACnB,CAAC,MAAM,EAAE,MAAc,EAAE,GAAW,EAAE,MAAc,EAAE,EAAE,CACtD,GAAG,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CACrD,CAAC;IACJ,CAAC;IAED,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC1D,CAAC;AAQD,MAAM,eAAe,GAAG,CAAC,CAAC;AAG1B,SAAS,YAAY,CAAC,KAAc,EAAE,OAAyB,EAAE,KAAa;IAC5E,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,uBAAuB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9E,IAAI,KAAK,IAAI,eAAe,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC1F,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;IAC/F,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;QAC5E,GAAG,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAeD,MAAM,UAAU,yBAAyB,CACvC,MAAkD,EAClD,OAAyB;IAKzB,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACrD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,GAAG,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AASD,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC;IACvC,IAAI;IACJ,YAAY;IACZ,eAAe;IACf,iBAAiB;IACjB,MAAM;IACN,MAAM;IACN,WAAW;IACX,UAAU;IACV,QAAQ;IACR,YAAY;IACZ,YAAY;IACZ,cAAc;CACf,CAAC,CAAC;AAWH,MAAM,UAAU,sBAAsB,CACpC,GAAM,EACN,OAAyB;IAEzB,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,GAAG,CAAC,GAAG,wBAAwB,CAAC,GAAG,CAAC,GAAG,CAAC;YAC1C,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,yBAAyB,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,GAAQ,CAAC;AAClB,CAAC;AAQD,MAAM,UAAU,qBAAqB,CACnC,QAAiC,EACjC,OAAyB;IAEzB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IACvD,MAAM,IAAI,GAAI,IAA2B,CAAC,IAAI,CAAC;IAC/C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC1C,OAAO;QACL,GAAG,QAAQ;QACX,IAAI,EAAE;YACJ,GAAI,IAAgC;YACpC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACrB,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;gBAC5B,CAAC,CAAC,sBAAsB,CAAC,GAA8B,EAAE,OAAO,CAAC;gBACjE,CAAC,CAAC,GAAG,CACR;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"asset-urls.js","sourceRoot":"","sources":["../../src/content/asset-urls.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,23 @@
1
1
  import type { HttpClient } from '../core/http.js';
2
2
  import type { CmsAsset, RequestOptions, VendureAssetDescriptionTranslation } from '../types.js';
3
3
  export declare function createAssetMethods(http: HttpClient): {
4
+ /**
5
+ * Fetch a single CMS asset by ID. Public endpoint, scoped by channel header.
6
+ * Returns the public-safe asset shape with image presets and alt-text translations.
7
+ */
4
8
  getAsset(id: string, options?: RequestOptions): Promise<CmsAsset>;
9
+ /**
10
+ * Bulk-fetch CMS assets by ID. Used to resolve image references stored in
11
+ * CMS field values (the `image`/`images` field types store asset ID arrays).
12
+ * Public endpoint; max 50 IDs per call. Foreign or missing IDs are silently
13
+ * dropped — the result may have fewer entries than requested.
14
+ */
5
15
  lookupAssets(ids: string[], options?: RequestOptions): Promise<CmsAsset[]>;
16
+ /**
17
+ * Bulk-fetch alt-text translations for Vendure product image assets, keyed
18
+ * by Vendure asset ID. Vendure stores assets globally; per-channel alt-text
19
+ * translations live in the CMS service. Public endpoint; max 50 IDs per call.
20
+ */
6
21
  lookupVendureAssetDescriptions(vendureAssetIds: string[], options?: RequestOptions): Promise<Record<string, VendureAssetDescriptionTranslation[]>>;
7
22
  };
8
23
  //# sourceMappingURL=assets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../src/content/assets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,kCAAkC,EAAE,MAAM,aAAa,CAAC;AAchG,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU;iBAM5B,MAAM,YAAY,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;sBAe/C,MAAM,EAAE,YAAY,cAAc,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;oDAgB7D,MAAM,EAAE,YACf,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,kCAAkC,EAAE,CAAC,CAAC;EAUnE"}
1
+ {"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../src/content/assets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,kCAAkC,EAAE,MAAM,aAAa,CAAC;AAchG,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU;IAE/C;;;OAGG;iBACgB,MAAM,YAAY,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;IASvE;;;;;OAKG;sBACqB,MAAM,EAAE,YAAY,cAAc,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAUhF;;;;OAIG;oDAEgB,MAAM,EAAE,YACf,cAAc,GACvB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,kCAAkC,EAAE,CAAC,CAAC;EAUnE"}
@@ -1,15 +1,30 @@
1
1
  export function createAssetMethods(http) {
2
2
  return {
3
+ /**
4
+ * Fetch a single CMS asset by ID. Public endpoint, scoped by channel header.
5
+ * Returns the public-safe asset shape with image presets and alt-text translations.
6
+ */
3
7
  async getAsset(id, options) {
4
8
  const response = await http.cmsGet(`/public-assets/${id}`, undefined, options);
5
9
  return response.data;
6
10
  },
11
+ /**
12
+ * Bulk-fetch CMS assets by ID. Used to resolve image references stored in
13
+ * CMS field values (the `image`/`images` field types store asset ID arrays).
14
+ * Public endpoint; max 50 IDs per call. Foreign or missing IDs are silently
15
+ * dropped — the result may have fewer entries than requested.
16
+ */
7
17
  async lookupAssets(ids, options) {
8
18
  if (ids.length === 0)
9
19
  return [];
10
20
  const response = await http.cmsGet('/assets/lookup', { ids: ids.join(',') }, options);
11
21
  return response.data;
12
22
  },
23
+ /**
24
+ * Bulk-fetch alt-text translations for Vendure product image assets, keyed
25
+ * by Vendure asset ID. Vendure stores assets globally; per-channel alt-text
26
+ * translations live in the CMS service. Public endpoint; max 50 IDs per call.
27
+ */
13
28
  async lookupVendureAssetDescriptions(vendureAssetIds, options) {
14
29
  if (vendureAssetIds.length === 0)
15
30
  return {};
@@ -1 +1 @@
1
- {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/content/assets.ts"],"names":[],"mappings":"AAeA,MAAM,UAAU,kBAAkB,CAAC,IAAgB;IACjD,OAAO;QAKL,KAAK,CAAC,QAAQ,CAAC,EAAU,EAAE,OAAwB;YACjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAChC,kBAAkB,EAAE,EAAE,EACtB,SAAS,EACT,OAAO,CACR,CAAC;YACF,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QAQD,KAAK,CAAC,YAAY,CAAC,GAAa,EAAE,OAAwB;YACxD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAChC,gBAAgB,EAChB,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EACtB,OAAO,CACR,CAAC;YACF,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QAOD,KAAK,CAAC,8BAA8B,CAClC,eAAyB,EACzB,OAAwB;YAExB,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAChC,wBAAwB,EACxB,EAAE,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAClC,OAAO,CACR,CAAC;YACF,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/content/assets.ts"],"names":[],"mappings":"AAeA,MAAM,UAAU,kBAAkB,CAAC,IAAgB;IACjD,OAAO;QACL;;;WAGG;QACH,KAAK,CAAC,QAAQ,CAAC,EAAU,EAAE,OAAwB;YACjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAChC,kBAAkB,EAAE,EAAE,EACtB,SAAS,EACT,OAAO,CACR,CAAC;YACF,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QAED;;;;;WAKG;QACH,KAAK,CAAC,YAAY,CAAC,GAAa,EAAE,OAAwB;YACxD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAChC,gBAAgB,EAChB,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EACtB,OAAO,CACR,CAAC;YACF,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QAED;;;;WAIG;QACH,KAAK,CAAC,8BAA8B,CAClC,eAAyB,EACzB,OAAwB;YAExB,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAChC,wBAAwB,EACxB,EAAE,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAClC,OAAO,CACR,CAAC;YACF,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,6 +1,11 @@
1
1
  import type { HttpClient } from '../core/http.js';
2
2
  import type { CollectionPageValues, RequestOptions, StoreContext } from '../types.js';
3
3
  export declare function createCollectionPageMethods(http: HttpClient, ctx: StoreContext): {
4
+ /**
5
+ * Fetch the page-scoped field values for a collection's landing page.
6
+ * Use this to render collection index pages (e.g. `/blog`, `/shop/sale`)
7
+ * with their associated CMS-managed hero image, intro copy, etc.
8
+ */
4
9
  getCollectionPageValues(collectionId: string, languageCode?: string, options?: RequestOptions): Promise<CollectionPageValues>;
5
10
  };
6
11
  //# sourceMappingURL=collection-pages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"collection-pages.d.ts","sourceRoot":"","sources":["../../src/content/collection-pages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAOtF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,YAAY;0CAQ3D,MAAM,iBACL,MAAM,YACX,cAAc,GACvB,OAAO,CAAC,oBAAoB,CAAC;EAkBnC"}
1
+ {"version":3,"file":"collection-pages.d.ts","sourceRoot":"","sources":["../../src/content/collection-pages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAOtF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,YAAY;IAE3E;;;;OAIG;0CAEa,MAAM,iBACL,MAAM,YACX,cAAc,GACvB,OAAO,CAAC,oBAAoB,CAAC;EAkBnC"}
@@ -2,11 +2,19 @@ import { createContextAssetUrlResolver } from '../media/urls.js';
2
2
  import { resolveContentFieldValues } from './asset-urls.js';
3
3
  export function createCollectionPageMethods(http, ctx) {
4
4
  return {
5
+ /**
6
+ * Fetch the page-scoped field values for a collection's landing page.
7
+ * Use this to render collection index pages (e.g. `/blog`, `/shop/sale`)
8
+ * with their associated CMS-managed hero image, intro copy, etc.
9
+ */
5
10
  async getCollectionPageValues(collectionId, languageCode, options) {
6
11
  const params = {};
7
12
  if (languageCode)
8
13
  params.language_code = languageCode;
9
14
  const response = await http.cmsGet(`/collections/${collectionId}/page-values`, params, options);
15
+ // Values reference assets by storage key; the CDN origin (and the
16
+ // channel prefix, on a custom domain) belongs to render time, not to
17
+ // stored content. Legacy absolute URLs pass through untouched.
10
18
  const resolve = createContextAssetUrlResolver(ctx);
11
19
  return {
12
20
  ...response.data,
@@ -1 +1 @@
1
- {"version":3,"file":"collection-pages.js","sourceRoot":"","sources":["../../src/content/collection-pages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAM5D,MAAM,UAAU,2BAA2B,CAAC,IAAgB,EAAE,GAAiB;IAC7E,OAAO;QAML,KAAK,CAAC,uBAAuB,CAC3B,YAAoB,EACpB,YAAqB,EACrB,OAAwB;YAExB,MAAM,MAAM,GAA2B,EAAE,CAAC;YAC1C,IAAI,YAAY;gBAAE,MAAM,CAAC,aAAa,GAAG,YAAY,CAAC;YACtD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAChC,gBAAgB,YAAY,cAAc,EAC1C,MAAM,EACN,OAAO,CACR,CAAC;YAIF,MAAM,OAAO,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;YACnD,OAAO;gBACL,GAAG,QAAQ,CAAC,IAAI;gBAChB,MAAM,EAAE,yBAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;aACjE,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"collection-pages.js","sourceRoot":"","sources":["../../src/content/collection-pages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAM5D,MAAM,UAAU,2BAA2B,CAAC,IAAgB,EAAE,GAAiB;IAC7E,OAAO;QACL;;;;WAIG;QACH,KAAK,CAAC,uBAAuB,CAC3B,YAAoB,EACpB,YAAqB,EACrB,OAAwB;YAExB,MAAM,MAAM,GAA2B,EAAE,CAAC;YAC1C,IAAI,YAAY;gBAAE,MAAM,CAAC,aAAa,GAAG,YAAY,CAAC;YACtD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAChC,gBAAgB,YAAY,cAAc,EAC1C,MAAM,EACN,OAAO,CACR,CAAC;YACF,kEAAkE;YAClE,qEAAqE;YACrE,+DAA+D;YAC/D,MAAM,OAAO,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;YACnD,OAAO;gBACL,GAAG,QAAQ,CAAC,IAAI;gBAChB,MAAM,EAAE,yBAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;aACjE,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}