@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
package/README.md CHANGED
@@ -134,6 +134,27 @@ client.setAuthToken(token);
134
134
  const data = await client.graphql(`query { activeChannel { id } }`);
135
135
  ```
136
136
 
137
+ ## Deprecated: the `/admin` surface
138
+
139
+ `@sixtyninecommerce/client/admin` (`createCommerceAdminClient`) is **deprecated**. Use
140
+ [`@sixtyninecommerce/admin`](https://www.npmjs.com/package/@sixtyninecommerce/admin) instead: it
141
+ carries the platform's error hierarchy, cursor pagination and tenant context, and it is where every
142
+ other back-office capability lands. It covers forms (list, read by id or slug, slug upsert, delete)
143
+ and redirects (list, create, update, delete).
144
+
145
+ Five things have no successor yet, and are the reason to stay on this surface:
146
+
147
+ | Here | Why the successor cannot do it |
148
+ |---|---|
149
+ | `forms.update` | the only way to RENAME a slug — `upsertBySlug` keys on it |
150
+ | `forms.addField` / `updateField` / `removeField` | the slug upsert is non-destructive, so a field can be added but never removed |
151
+ | `forms.listSubmissions` | no successor |
152
+ | `redirects.import` | bulk upsert by source path with per-row rejections — the migration case |
153
+ | `redirects.upsert` | create-or-update one redirect by source path |
154
+
155
+ This surface still works and is unchanged; it will be removed in a future major, not before those
156
+ land.
157
+
137
158
  ## Modules
138
159
 
139
160
  | Module | Description |
@@ -1,4 +1,9 @@
1
1
  import { StorefrontError } from '../errors.js';
2
+ /**
3
+ * The admin surface speaks the CMS's snake_case DTOs; these mappers translate
4
+ * the camelCase SDK inputs. Only defined keys are forwarded so PATCH stays a
5
+ * true partial update.
6
+ */
2
7
  function fieldTranslationBody(t) {
3
8
  const body = { language_code: t.languageCode, label: t.label };
4
9
  if (t.placeholder !== undefined)
@@ -61,6 +66,17 @@ function formBody(input) {
61
66
  body.fields = input.fields.map((f) => fieldBody(f));
62
67
  return body;
63
68
  }
69
+ /**
70
+ * `GET /forms/by-slug/:slug` is a PUBLIC CMS route with OPTIONAL auth: an
71
+ * invalid or expired admin token — and equally a valid one whose user has no
72
+ * access to the requested channel — is not rejected. The CMS answers 200 with
73
+ * the storefront projection, which carries neither `channelId` nor field ids.
74
+ * Returning that as an `AdminFormRecord` would hand the caller `undefined`
75
+ * under a `string` type, and the next `removeField`/`updateField` call would
76
+ * fail as an opaque "uuid is expected" 400 that names neither the token nor
77
+ * the channel. `channelId` is the discriminator — the entity always has it,
78
+ * the projection never does.
79
+ */
64
80
  function assertAdminForm(form, slug) {
65
81
  if (form && typeof form.channelId === 'string' && form.channelId.length > 0)
66
82
  return;
@@ -69,6 +85,9 @@ function assertAdminForm(form, slug) {
69
85
  export function createFormsAdminMethods(http) {
70
86
  return {
71
87
  async getBySlug(slug, options) {
88
+ // Same route the public client reads, but the admin token makes the CMS
89
+ // return the raw entity (field ids, settings, notification emails)
90
+ // instead of the storefront projection.
72
91
  const res = await http.request('GET', `/forms/by-slug/${encodeURIComponent(slug)}`, undefined, options);
73
92
  assertAdminForm(res.data, slug);
74
93
  return res.data;
@@ -1 +1 @@
1
- {"version":3,"file":"forms.js","sourceRoot":"","sources":["../../src/admin/forms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"forms.js","sourceRoot":"","sources":["../../src/admin/forms.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,16 @@
1
1
  import { type ServiceName } from '../errors.js';
2
2
  import type { RequestOptions } from '../types.js';
3
+ /**
4
+ * Minimal authenticated HTTP client for the admin (authoring) surfaces, which
5
+ * live on the CMS (forms) and the plugins service (redirects). Every request
6
+ * carries the admin Bearer token and the target channel. Kept separate from the
7
+ * public `core/http` client (which never sends admin auth) so the credential
8
+ * path is unmistakable.
9
+ */
3
10
  export interface AdminHttpConfig {
11
+ /** Origin of the service this client talks to. */
4
12
  baseUrl: string;
13
+ /** Which service — used to label thrown `StorefrontError`s. */
5
14
  service: ServiceName;
6
15
  channelId: string;
7
16
  adminToken: string;
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/admin/http.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,WAAW,EAAmB,MAAM,cAAc,CAAC;AAClF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAUlD,MAAM,WAAW,eAAe;IAE9B,OAAO,EAAE,MAAM,CAAC;IAEhB,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CAChC;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAChG;AAkCD,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAgElE"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/admin/http.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,WAAW,EAAmB,MAAM,cAAc,CAAC;AAClF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD;;;;;;GAMG;AAEH,MAAM,WAAW,eAAe;IAC9B,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CAChC;AAED,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAChG;AAkCD,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAgElE"}
@@ -1,5 +1,6 @@
1
1
  import { REQUEST_TIMEOUT_MS } from '../constants.js';
2
2
  import { StorefrontError } from '../errors.js';
3
+ /** Parse a non-2xx response into a structured StorefrontError. */
3
4
  async function toAdminError(response, service) {
4
5
  let body = {};
5
6
  try {
@@ -9,6 +10,7 @@ async function toAdminError(response, service) {
9
10
  }
10
11
  }
11
12
  catch {
13
+ // Non-JSON error body — fall back to the status line.
12
14
  }
13
15
  const rawMessage = body.message;
14
16
  const message = Array.isArray(rawMessage)
@@ -50,6 +52,7 @@ export function createAdminHttp(config) {
50
52
  if (!response.ok) {
51
53
  throw await toAdminError(response, config.service);
52
54
  }
55
+ // 204 No Content (DELETE) — nothing to parse.
53
56
  if (response.status === 204) {
54
57
  return undefined;
55
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/admin/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAqC,eAAe,EAAE,MAAM,cAAc,CAAC;AA0BlF,KAAK,UAAU,YAAY,CAAC,QAAkB,EAAE,OAAoB;IAClE,IAAI,IAAI,GAA4B,EAAE,CAAC;IACvC,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzC,IAAI,GAAG,MAAiC,CAAC;QAC3C,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;IAET,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC;IAChC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;QACvC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;QACvB,CAAC,CAAC,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;YACvD,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,GAAG,OAAO,aAAa,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;IAC/E,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,OAAwB,CAAC,CAAC,CAAC,SAAS,CAAC;IACzF,MAAM,iBAAiB,GACrB,OAAO,IAAI,CAAC,mBAAmB,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC;IAEtF,OAAO,IAAI,eAAe,CACxB,OAAO,EACP,OAAO,EACP,QAAQ,CAAC,MAAM,EACf,SAAS,EACT,OAAO,EACP,iBAAiB,CAClB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAuB;IACrD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAEhD,KAAK,UAAU,OAAO,CACpB,MAAc,EACd,IAAY,EACZ,IAAc,EACd,OAAwB;QAExB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,kBAAkB,CAAC,CAAC;QACzE,MAAM,QAAQ,GAAG,OAAO,EAAE,MAAM,CAAC;QACjC,IAAI,gBAAgB,GAAwB,IAAI,CAAC;QACjD,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,gBAAgB,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBAC5C,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,MAAM,CAAC,SAAS;YAChC,aAAa,EAAE,UAAU,MAAM,CAAC,UAAU,EAAE;SAC7C,CAAC;QACF,MAAM,IAAI,GAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;QACzE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;YAC7C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;YAC5D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,MAAM,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YACrD,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC5B,OAAO,SAAc,CAAC;YACxB,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAM,CAAC;QACpD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,eAAe;gBAAE,MAAM,KAAK,CAAC;YAClD,IAAK,KAAe,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC3C,IAAI,QAAQ,EAAE,OAAO,EAAE,CAAC;oBACtB,MAAM,IAAI,eAAe,CAAC,2BAA2B,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACzE,CAAC;gBACD,MAAM,IAAI,eAAe,CAAC,yBAAyB,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YACvE,CAAC;YACD,MAAM,IAAI,eAAe,CACvB,GAAG,MAAM,CAAC,OAAO,0BAA2B,KAAe,CAAC,OAAO,EAAE,EACrE,MAAM,CAAC,OAAO,CACf,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,IAAI,gBAAgB,IAAI,QAAQ,EAAE,CAAC;gBACjC,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/admin/http.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,67 @@
1
+ /**
2
+ * `@sixtyninecommerce/client/admin` — the ADMIN (authoring) surface.
3
+ *
4
+ * DEPRECATED in favour of
5
+ * [`@sixtyninecommerce/admin`](https://www.npmjs.com/package/@sixtyninecommerce/admin). The
6
+ * machine-readable `@deprecated` tag is on {@link createCommerceAdminClient} itself, NOT here: a
7
+ * module-level tag above an `import` attaches to that import declaration and marks no exported
8
+ * symbol, so no consumer's editor would ever strike the call through.
9
+ *
10
+ * Unlike the public storefront client, every call here is permission-gated and
11
+ * requires a Vendure admin session token (or an `s69t_` API token) holding the
12
+ * relevant permissions — CreateCmsForm/UpdateCmsForm/ReadCmsForm for `forms`,
13
+ * UpdateChannel for `redirects`. It is a deliberately separate factory so the
14
+ * credential requirement is impossible to miss. Use it for server-side
15
+ * authoring (e.g. scaffolding a contact form or registering redirects during a
16
+ * migration); never ship an admin token to a browser.
17
+ *
18
+ * `forms` talks to the CMS; `redirects` talks to the plugins service, so set
19
+ * `pluginsUrl` when you use it against a non-default host.
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * import { createCommerceAdminClient } from '@sixtyninecommerce/client/admin';
24
+ *
25
+ * const admin = createCommerceAdminClient({
26
+ * cmsUrl: 'https://cms.example.com',
27
+ * channelId: '<tenant-channel-id>',
28
+ * adminToken: process.env.SIXTYNINE_COMMERCE_API_TOKEN!,
29
+ * });
30
+ *
31
+ * await admin.forms.upsertBySlug('contact', {
32
+ * name: 'Contact',
33
+ * notificationEmails: 'team@example.com',
34
+ * fields: [{ name: 'Email', slug: 'email', fieldType: 'email', isRequired: true }],
35
+ * });
36
+ *
37
+ * await admin.redirects.create({ oldPath: '/old-page', newPath: '/new-page' });
38
+ * ```
39
+ */
1
40
  import type { CommerceAdminClient, CommerceAdminClientConfig } from './types.js';
41
+ /**
42
+ * Create the admin (authoring) client.
43
+ *
44
+ * @deprecated Use [`@sixtyninecommerce/admin`](https://www.npmjs.com/package/@sixtyninecommerce/admin)
45
+ * instead — `createAdminClient` — on the platform's own error hierarchy, cursor
46
+ * pagination and tenant context, and where every other back-office capability
47
+ * lands.
48
+ *
49
+ * What it covers today: forms — list, read by id or slug, slug upsert, delete;
50
+ * redirects — list, create, update, delete.
51
+ *
52
+ * What has NO successor yet, and is the reason to stay here:
53
+ * - `forms.update` — the only way to RENAME a form's slug (`upsertBySlug` keys
54
+ * on the slug and cannot change it);
55
+ * - `forms.addField` / `updateField` / `removeField` — the slug upsert is
56
+ * non-destructive, so a field can be added but never removed through it;
57
+ * - `forms.listSubmissions`;
58
+ * - `redirects.import` — bulk upsert by source path with per-row rejections,
59
+ * which is the migration case this surface exists for;
60
+ * - `redirects.upsert` — create-or-update one redirect by source path.
61
+ *
62
+ * This surface still works and is unchanged; it will be removed in a future
63
+ * major, not before those land.
64
+ */
2
65
  export declare function createCommerceAdminClient(config: CommerceAdminClientConfig): CommerceAdminClient;
3
66
  export type { AdminFormFieldRecord, AdminFormRecord, AdminRedirectRecord, CommerceAdminClient, CommerceAdminClientConfig, FormCreateInput, FormFieldInput, FormFieldTranslationInput, FormSubmissionListOptions, FormSubmissionListResult, FormSubmissionRecord, FormsAdminModule, FormTranslationInput, FormUpdateInput, FormUpsertInput, RedirectCreateInput, RedirectImportRejection, RedirectImportResult, RedirectsAdminModule, RedirectUpdateInput, } from './types.js';
4
67
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/admin/index.ts"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEjF,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,yBAAyB,GAAG,mBAAmB,CA+ChG;AAED,YAAY,EACV,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EACf,cAAc,EACd,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/admin/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAKH,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEjF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,yBAAyB,GAAG,mBAAmB,CA+ChG;AAED,YAAY,EACV,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EACf,cAAc,EACd,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC"}
@@ -1,6 +1,69 @@
1
+ /**
2
+ * `@sixtyninecommerce/client/admin` — the ADMIN (authoring) surface.
3
+ *
4
+ * DEPRECATED in favour of
5
+ * [`@sixtyninecommerce/admin`](https://www.npmjs.com/package/@sixtyninecommerce/admin). The
6
+ * machine-readable `@deprecated` tag is on {@link createCommerceAdminClient} itself, NOT here: a
7
+ * module-level tag above an `import` attaches to that import declaration and marks no exported
8
+ * symbol, so no consumer's editor would ever strike the call through.
9
+ *
10
+ * Unlike the public storefront client, every call here is permission-gated and
11
+ * requires a Vendure admin session token (or an `s69t_` API token) holding the
12
+ * relevant permissions — CreateCmsForm/UpdateCmsForm/ReadCmsForm for `forms`,
13
+ * UpdateChannel for `redirects`. It is a deliberately separate factory so the
14
+ * credential requirement is impossible to miss. Use it for server-side
15
+ * authoring (e.g. scaffolding a contact form or registering redirects during a
16
+ * migration); never ship an admin token to a browser.
17
+ *
18
+ * `forms` talks to the CMS; `redirects` talks to the plugins service, so set
19
+ * `pluginsUrl` when you use it against a non-default host.
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * import { createCommerceAdminClient } from '@sixtyninecommerce/client/admin';
24
+ *
25
+ * const admin = createCommerceAdminClient({
26
+ * cmsUrl: 'https://cms.example.com',
27
+ * channelId: '<tenant-channel-id>',
28
+ * adminToken: process.env.SIXTYNINE_COMMERCE_API_TOKEN!,
29
+ * });
30
+ *
31
+ * await admin.forms.upsertBySlug('contact', {
32
+ * name: 'Contact',
33
+ * notificationEmails: 'team@example.com',
34
+ * fields: [{ name: 'Email', slug: 'email', fieldType: 'email', isRequired: true }],
35
+ * });
36
+ *
37
+ * await admin.redirects.create({ oldPath: '/old-page', newPath: '/new-page' });
38
+ * ```
39
+ */
1
40
  import { createFormsAdminMethods } from './forms.js';
2
41
  import { createAdminHttp } from './http.js';
3
42
  import { createRedirectsAdminMethods } from './redirects.js';
43
+ /**
44
+ * Create the admin (authoring) client.
45
+ *
46
+ * @deprecated Use [`@sixtyninecommerce/admin`](https://www.npmjs.com/package/@sixtyninecommerce/admin)
47
+ * instead — `createAdminClient` — on the platform's own error hierarchy, cursor
48
+ * pagination and tenant context, and where every other back-office capability
49
+ * lands.
50
+ *
51
+ * What it covers today: forms — list, read by id or slug, slug upsert, delete;
52
+ * redirects — list, create, update, delete.
53
+ *
54
+ * What has NO successor yet, and is the reason to stay here:
55
+ * - `forms.update` — the only way to RENAME a form's slug (`upsertBySlug` keys
56
+ * on the slug and cannot change it);
57
+ * - `forms.addField` / `updateField` / `removeField` — the slug upsert is
58
+ * non-destructive, so a field can be added but never removed through it;
59
+ * - `forms.listSubmissions`;
60
+ * - `redirects.import` — bulk upsert by source path with per-row rejections,
61
+ * which is the migration case this surface exists for;
62
+ * - `redirects.upsert` — create-or-update one redirect by source path.
63
+ *
64
+ * This surface still works and is unchanged; it will be removed in a future
65
+ * major, not before those land.
66
+ */
4
67
  export function createCommerceAdminClient(config) {
5
68
  if (!config.adminToken) {
6
69
  throw new Error('createCommerceAdminClient requires an adminToken (a Vendure admin session token holding the CmsForm permissions).');
@@ -19,6 +82,10 @@ export function createCommerceAdminClient(config) {
19
82
  adminToken: config.adminToken,
20
83
  fetch: fetchFn,
21
84
  });
85
+ // `pluginsUrl` stays optional so the pre-existing forms-only signature keeps
86
+ // working — but it must never silently DEFAULT, or a self-hosted caller who
87
+ // passed only `cmsUrl` would ship their admin token to the hosted SaaS host.
88
+ // Fail on first use of `redirects` instead.
22
89
  const pluginsHttp = config.pluginsUrl
23
90
  ? createAdminHttp({
24
91
  baseUrl: config.pluginsUrl,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/admin/index.ts"],"names":[],"mappings":"AAkCA,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAkB,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAG7D,MAAM,UAAU,yBAAyB,CAAC,MAAiC;IACzE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,mHAAmH,CACpH,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IACjD,MAAM,OAAO,GAAG,eAAe,CAAC;QAC9B,OAAO,EAAE,MAAM,CAAC,MAAM;QACtB,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,KAAK,EAAE,OAAO;KACf,CAAC,CAAC;IAKH,MAAM,WAAW,GAAc,MAAM,CAAC,UAAU;QAC9C,CAAC,CAAC,eAAe,CAAC;YACd,OAAO,EAAE,MAAM,CAAC,UAAU;YAC1B,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,KAAK,EAAE,OAAO;SACf,CAAC;QACJ,CAAC,CAAC;YACE,OAAO;gBACL,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,KAAK,CACP,qHAAqH,CACtH,CACF,CAAC;YACJ,CAAC;SACF,CAAC;IAEN,OAAO;QACL,KAAK,EAAE,uBAAuB,CAAC,OAAO,CAAC;QACvC,SAAS,EAAE,2BAA2B,CAAC,WAAW,CAAC;KACpD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/admin/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAkB,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAG7D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,yBAAyB,CAAC,MAAiC;IACzE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,mHAAmH,CACpH,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IACjD,MAAM,OAAO,GAAG,eAAe,CAAC;QAC9B,OAAO,EAAE,MAAM,CAAC,MAAM;QACtB,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,KAAK,EAAE,OAAO;KACf,CAAC,CAAC;IACH,6EAA6E;IAC7E,4EAA4E;IAC5E,6EAA6E;IAC7E,4CAA4C;IAC5C,MAAM,WAAW,GAAc,MAAM,CAAC,UAAU;QAC9C,CAAC,CAAC,eAAe,CAAC;YACd,OAAO,EAAE,MAAM,CAAC,UAAU;YAC1B,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,KAAK,EAAE,OAAO;SACf,CAAC;QACJ,CAAC,CAAC;YACE,OAAO;gBACL,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,KAAK,CACP,qHAAqH,CACtH,CACF,CAAC;YACJ,CAAC;SACF,CAAC;IAEN,OAAO;QACL,KAAK,EAAE,uBAAuB,CAAC,OAAO,CAAC;QACvC,SAAS,EAAE,2BAA2B,CAAC,WAAW,CAAC;KACpD,CAAC;AACJ,CAAC"}
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Admin (authoring) surface for the tenant's URL redirects, on the plugins
3
+ * service. Reads and writes here are permission-gated (`UpdateChannel`); the
4
+ * unauthenticated map a storefront middleware consumes is the separate
5
+ * `redirects` module on the public client.
6
+ */
1
7
  import type { RedirectStatusCode } from '../redirects/types.js';
2
8
  import type { AdminHttp } from './http.js';
3
9
  import type { RedirectsAdminModule } from './types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"redirects.d.ts","sourceRoot":"","sources":["../../src/admin/redirects.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAIV,oBAAoB,EAErB,MAAM,YAAY,CAAC;AAUpB,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,SAAS,GAAG,oBAAoB,CAqDjF;AAED,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"redirects.d.ts","sourceRoot":"","sources":["../../src/admin/redirects.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAIV,oBAAoB,EAErB,MAAM,YAAY,CAAC;AAUpB,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,SAAS,GAAG,oBAAoB,CAqDjF;AAED,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Admin (authoring) surface for the tenant's URL redirects, on the plugins
3
+ * service. Reads and writes here are permission-gated (`UpdateChannel`); the
4
+ * unauthenticated map a storefront middleware consumes is the separate
5
+ * `redirects` module on the public client.
6
+ */
1
7
  function toWire(input) {
2
8
  const body = {};
3
9
  if (input.oldPath !== undefined)
@@ -9,6 +15,8 @@ function toWire(input) {
9
15
  return body;
10
16
  }
11
17
  export function createRedirectsAdminMethods(http) {
18
+ // Captured in a local so `upsert` does not depend on `this` — every other
19
+ // module surface in this SDK survives `const { upsert } = admin.redirects`.
12
20
  const importRedirects = (redirects, options) => http.request('POST', '/redirects/import', { redirects: redirects.map(toWire) }, options);
13
21
  return {
14
22
  list(options) {
@@ -24,6 +32,10 @@ export function createRedirectsAdminMethods(http) {
24
32
  await http.request('DELETE', `/redirects/${encodeURIComponent(id)}`, undefined, options);
25
33
  },
26
34
  import: importRedirects,
35
+ /**
36
+ * Create-or-update by source path. The platform's bulk endpoint already
37
+ * upserts on `old_path`, so a single-item import is the idempotent write.
38
+ */
27
39
  async upsert(input, options) {
28
40
  const result = await importRedirects([input], options);
29
41
  const rejection = result.rejected[0];
@@ -1 +1 @@
1
- {"version":3,"file":"redirects.js","sourceRoot":"","sources":["../../src/admin/redirects.ts"],"names":[],"mappings":"AAiBA,SAAS,MAAM,CAAC,KAAgD;IAC9D,MAAM,IAAI,GAA4B,EAAE,CAAC;IACzC,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;IAC/D,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;IAC/D,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC;IACxE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,IAAe;IAGzD,MAAM,eAAe,GAAmC,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAC7E,IAAI,CAAC,OAAO,CACV,MAAM,EACN,mBAAmB,EACnB,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EACpC,OAAO,CACR,CAAC;IAEJ,OAAO;QACL,IAAI,CAAC,OAAO;YACV,OAAO,IAAI,CAAC,OAAO,CAAwB,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACtF,CAAC;QAED,MAAM,CAAC,KAAK,EAAE,OAAO;YACnB,OAAO,IAAI,CAAC,OAAO,CAAsB,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;QACzF,CAAC;QAED,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO;YACvB,OAAO,IAAI,CAAC,OAAO,CACjB,OAAO,EACP,cAAc,kBAAkB,CAAC,EAAE,CAAC,EAAE,EACtC,MAAM,CAAC,KAAK,CAAC,EACb,OAAO,CACR,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO;YACtB,MAAM,IAAI,CAAC,OAAO,CAChB,QAAQ,EACR,cAAc,kBAAkB,CAAC,EAAE,CAAC,EAAE,EACtC,SAAS,EACT,OAAO,CACR,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,eAAe;QAMvB,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO;YACzB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;YACvD,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACrC,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"redirects.js","sourceRoot":"","sources":["../../src/admin/redirects.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,SAAS,MAAM,CAAC,KAAgD;IAC9D,MAAM,IAAI,GAA4B,EAAE,CAAC;IACzC,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;IAC/D,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;IAC/D,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC;IACxE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,IAAe;IACzD,0EAA0E;IAC1E,4EAA4E;IAC5E,MAAM,eAAe,GAAmC,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAC7E,IAAI,CAAC,OAAO,CACV,MAAM,EACN,mBAAmB,EACnB,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EACpC,OAAO,CACR,CAAC;IAEJ,OAAO;QACL,IAAI,CAAC,OAAO;YACV,OAAO,IAAI,CAAC,OAAO,CAAwB,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACtF,CAAC;QAED,MAAM,CAAC,KAAK,EAAE,OAAO;YACnB,OAAO,IAAI,CAAC,OAAO,CAAsB,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;QACzF,CAAC;QAED,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO;YACvB,OAAO,IAAI,CAAC,OAAO,CACjB,OAAO,EACP,cAAc,kBAAkB,CAAC,EAAE,CAAC,EAAE,EACtC,MAAM,CAAC,KAAK,CAAC,EACb,OAAO,CACR,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO;YACtB,MAAM,IAAI,CAAC,OAAO,CAChB,QAAQ,EACR,cAAc,kBAAkB,CAAC,EAAE,CAAC,EAAE,EACtC,SAAS,EACT,OAAO,CACR,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,eAAe;QAEvB;;;WAGG;QACH,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO;YACzB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;YACvD,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACrC,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,9 +1,28 @@
1
1
  import type { RequestOptions } from '../types.js';
2
+ /**
3
+ * Admin (authoring) surface types. These endpoints are PERMISSION-GATED and
4
+ * require a Vendure admin session token holding CreateCmsForm/UpdateCmsForm/
5
+ * ReadCmsForm — never a storefront/anonymous token. Kept in a separate module
6
+ * from the public storefront client so the credential requirement is explicit.
7
+ */
2
8
  export interface CommerceAdminClientConfig {
9
+ /** Base CMS URL, e.g. `https://cms.example.com`. Required for `forms`. */
3
10
  cmsUrl: string;
11
+ /**
12
+ * Base plugins-service URL, e.g. `https://plugins.example.com`. REQUIRED to
13
+ * use `redirects` — there is deliberately no default, so a self-hosted caller
14
+ * can never send an admin token to the hosted SaaS host by omission. Omit it
15
+ * only when you use `forms` alone; the first `redirects` call then rejects.
16
+ */
4
17
  pluginsUrl?: string;
18
+ /** Target tenant channel id (sent as `x-channel-id`). */
5
19
  channelId: string;
20
+ /**
21
+ * A Vendure admin session token holding the CmsForm permissions. Sent as
22
+ * `Authorization: Bearer <token>` — treat it as a secret.
23
+ */
6
24
  adminToken: string;
25
+ /** Fetch implementation (defaults to `globalThis.fetch`). */
7
26
  fetch?: typeof globalThis.fetch;
8
27
  }
9
28
  export interface FormTranslationInput {
@@ -23,10 +42,13 @@ export interface FormFieldTranslationInput {
23
42
  export interface FormFieldInput {
24
43
  name: string;
25
44
  slug: string;
45
+ /** One of the registry field types (see FORM_FIELD_TYPES / getFormFieldTypes). */
26
46
  fieldType: string;
27
47
  isRequired?: boolean;
28
48
  position?: number;
49
+ /** Presentational config (e.g. select option labels). */
29
50
  config?: Record<string, unknown>;
51
+ /** Validation constraints (authoritative over `config` for the same keys). */
30
52
  validation?: Record<string, unknown>;
31
53
  translations?: FormFieldTranslationInput[];
32
54
  }
@@ -48,6 +70,7 @@ export interface FormUpdateInput {
48
70
  settings?: Record<string, unknown>;
49
71
  translations?: FormTranslationInput[];
50
72
  }
73
+ /** Body for the idempotent upsert-by-slug. The slug travels in the URL. */
51
74
  export interface FormUpsertInput {
52
75
  name: string;
53
76
  notificationEmails?: string;
@@ -55,8 +78,10 @@ export interface FormUpsertInput {
55
78
  submitAction?: string;
56
79
  settings?: Record<string, unknown>;
57
80
  translations?: FormTranslationInput[];
81
+ /** Fields to upsert by slug. Fields not listed are left untouched. */
58
82
  fields?: FormFieldInput[];
59
83
  }
84
+ /** A form field row as returned by the admin (full-entity) responses. */
60
85
  export interface AdminFormFieldRecord {
61
86
  id: string;
62
87
  formId: string;
@@ -67,8 +92,10 @@ export interface AdminFormFieldRecord {
67
92
  position: number;
68
93
  config: Record<string, unknown> | null;
69
94
  validation: Record<string, unknown> | null;
95
+ /** Forward-compat: additional entity fields (translations, timestamps, …). */
70
96
  [key: string]: unknown;
71
97
  }
98
+ /** A form as returned by the admin (full-entity) responses. */
72
99
  export interface AdminFormRecord {
73
100
  id: string;
74
101
  channelId: string;
@@ -79,6 +106,7 @@ export interface AdminFormRecord {
79
106
  notificationEmails: string | null;
80
107
  settings: Record<string, unknown> | null;
81
108
  fields?: AdminFormFieldRecord[];
109
+ /** Forward-compat: translations, timestamps, and any additional entity fields. */
82
110
  [key: string]: unknown;
83
111
  }
84
112
  export interface FormSubmissionRecord {
@@ -103,34 +131,65 @@ export interface FormSubmissionListResult {
103
131
  };
104
132
  }
105
133
  export interface FormsAdminModule {
134
+ /**
135
+ * Read a form by slug as the FULL admin entity — including each field's `id`,
136
+ * which the public projection omits. Needed to address a field for
137
+ * update/removal.
138
+ *
139
+ * The underlying CMS route is public with optional auth, so an unaccepted
140
+ * admin token yields the storefront projection with a 200 rather than a 401.
141
+ * This method REJECTS that response with a `StorefrontError` instead of
142
+ * returning a record whose `channelId`/field ids are `undefined`.
143
+ */
106
144
  getBySlug(slug: string, options?: RequestOptions): Promise<AdminFormRecord>;
145
+ /** Create a form (create-only; 409 if the slug exists). Needs CreateCmsForm. */
107
146
  create(input: FormCreateInput, options?: RequestOptions): Promise<AdminFormRecord>;
147
+ /** Update a form by id. Needs UpdateCmsForm. */
108
148
  update(id: string, input: FormUpdateInput, options?: RequestOptions): Promise<AdminFormRecord>;
149
+ /** Idempotent create-or-update by slug, upserting listed fields. Needs Create or Update. */
109
150
  upsertBySlug(slug: string, input: FormUpsertInput, options?: RequestOptions): Promise<AdminFormRecord>;
151
+ /** Soft-delete a form by id. Needs DeleteCmsForm. */
110
152
  remove(id: string, options?: RequestOptions): Promise<void>;
153
+ /** Add a field to a form. Needs CreateCmsForm. */
111
154
  addField(formId: string, input: FormFieldInput, options?: RequestOptions): Promise<AdminFormFieldRecord>;
155
+ /** Update a field. Needs UpdateCmsForm. */
112
156
  updateField(formId: string, fieldId: string, input: Partial<FormFieldInput>, options?: RequestOptions): Promise<AdminFormFieldRecord>;
157
+ /** Soft-delete a field. Needs DeleteCmsForm. */
113
158
  removeField(formId: string, fieldId: string, options?: RequestOptions): Promise<void>;
159
+ /** List a form's submissions (offset-paginated). Needs ReadCmsForm. */
114
160
  listSubmissions(formId: string, options?: FormSubmissionListOptions & RequestOptions): Promise<FormSubmissionListResult>;
115
161
  }
116
162
  export interface CommerceAdminClient {
117
163
  forms: FormsAdminModule;
118
164
  redirects: RedirectsAdminModule;
119
165
  }
166
+ /**
167
+ * A stored redirect as the plugins service returns it. Writes take snake_case
168
+ * (`old_path`), reads come back as the entity's camelCase fields — the same
169
+ * asymmetry the forms admin surface has.
170
+ */
120
171
  export interface AdminRedirectRecord {
121
172
  id: string;
122
173
  channelId: string;
123
174
  oldPath: string;
124
175
  newPath: string;
125
176
  statusCode: number;
177
+ /** `manual`, `import`, or `auto` (created by the URL-change engine). */
126
178
  source?: string;
127
179
  createdAt: string;
128
180
  updatedAt: string;
181
+ /** Forward-compat: any additional entity fields. */
129
182
  [key: string]: unknown;
130
183
  }
131
184
  export interface RedirectCreateInput {
185
+ /**
186
+ * Source path — a literal site-relative path, e.g. `/old-page`. Wildcards,
187
+ * `[slug]`/`:param` segments and query strings are rejected.
188
+ */
132
189
  oldPath: string;
190
+ /** Destination — a path (`/new-page`) or an absolute `https://` URL. */
133
191
  newPath: string;
192
+ /** 301 (default), 302, 303, 307 or 308. */
134
193
  statusCode?: import('../redirects/types.js').RedirectStatusCode;
135
194
  }
136
195
  export interface RedirectUpdateInput {
@@ -138,6 +197,7 @@ export interface RedirectUpdateInput {
138
197
  newPath?: string;
139
198
  statusCode?: import('../redirects/types.js').RedirectStatusCode;
140
199
  }
200
+ /** A row the platform refused, identified by its index in the submitted batch. */
141
201
  export interface RedirectImportRejection {
142
202
  index: number;
143
203
  oldPath: string;
@@ -146,6 +206,7 @@ export interface RedirectImportRejection {
146
206
  export interface RedirectImportResult {
147
207
  created: number;
148
208
  updated: number;
209
+ /** Rows that failed validation. The rest of the batch still landed. */
149
210
  rejected: RedirectImportRejection[];
150
211
  }
151
212
  export interface RedirectsAdminModule {
@@ -153,7 +214,9 @@ export interface RedirectsAdminModule {
153
214
  create(input: RedirectCreateInput, options?: RequestOptions): Promise<AdminRedirectRecord>;
154
215
  update(id: string, input: RedirectUpdateInput, options?: RequestOptions): Promise<AdminRedirectRecord>;
155
216
  remove(id: string, options?: RequestOptions): Promise<void>;
217
+ /** Bulk upsert by source path. Bad rows are reported, never fatal. */
156
218
  import(inputs: RedirectCreateInput[], options?: RequestOptions): Promise<RedirectImportResult>;
219
+ /** Create-or-update one redirect by source path. Throws if the row is rejected. */
157
220
  upsert(input: RedirectCreateInput, options?: RequestOptions): Promise<RedirectImportResult>;
158
221
  }
159
222
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/admin/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/admin/types.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,25 @@
1
+ /**
2
+ * The cache-tag convention shared by this SDK's fetches and its revalidation
3
+ * handlers. One module, so the tag a fetch is stamped with and the tag an event
4
+ * purges can never be spelled differently.
5
+ *
6
+ * - `product:<productId>` — Vendure product id. Purged by `product.*` and
7
+ * `product_variant.price_changed`.
8
+ * - `collection:<collectionId>` — Vendure collection id. Purged by
9
+ * `collection.membership_changed`.
10
+ * - `seo-artifact` — the platform-rendered sitemap/robots/llms.txt proxied by
11
+ * `createSeoArtifactHandler`. The event handler purges it with every plan
12
+ * that revalidates anything; the legacy dispatcher lists it in every
13
+ * delivery's `tags`.
14
+ */
1
15
  export declare const SEO_ARTIFACT_TAG = "seo-artifact";
2
16
  export declare function productCacheTag(productId: string): string;
3
17
  export declare function collectionCacheTag(collectionId: string): string;
18
+ /**
19
+ * The tags a page resolved from a routes-manifest entry should read with: the
20
+ * entry's own id tag for a product or collection, none for a CMS page (content
21
+ * events revalidate those by path).
22
+ */
4
23
  export declare function cacheTagsForRoute(route: {
5
24
  readonly type: string;
6
25
  readonly id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"cache-tags.d.ts","sourceRoot":"","sources":["../src/cache-tags.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,gBAAgB,iBAAiB,CAAC;AAE/C,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE/D;AAOD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,EAAE,CAIjG"}
1
+ {"version":3,"file":"cache-tags.d.ts","sourceRoot":"","sources":["../src/cache-tags.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,gBAAgB,iBAAiB,CAAC;AAE/C,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,EAAE,CAIjG"}