@salesforce/b2c-tooling-sdk 1.24.2 → 2.0.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 (460) hide show
  1. package/data/content-schemas/componenttype.json +0 -30
  2. package/data/scapi-snippets/campaign-promotions.js +40 -0
  3. package/data/scapi-snippets/code-version-inspect.js +31 -0
  4. package/data/scapi-snippets/create-product.js +108 -0
  5. package/data/scapi-snippets/failed-job-triage.js +37 -0
  6. package/data/scapi-snippets/job-execution-inspect.js +52 -0
  7. package/data/scapi-snippets/job-execution-review.js +46 -0
  8. package/data/scapi-snippets/manifest.json +220 -0
  9. package/data/scapi-snippets/site-cartridge-inspect.js +27 -0
  10. package/data/tooling/index.json +80 -116
  11. package/dist/esm/auth/index.d.ts +2 -2
  12. package/dist/esm/auth/index.js +1 -1
  13. package/dist/esm/auth/index.js.map +1 -1
  14. package/dist/esm/auth/oauth-implicit.d.ts +1 -0
  15. package/dist/esm/auth/oauth-implicit.js +1 -0
  16. package/dist/esm/auth/oauth-implicit.js.map +1 -1
  17. package/dist/esm/auth/oauth-jwt.d.ts +18 -4
  18. package/dist/esm/auth/oauth-jwt.js +67 -17
  19. package/dist/esm/auth/oauth-jwt.js.map +1 -1
  20. package/dist/esm/auth/oauth-pkce-fallback.d.ts +1 -0
  21. package/dist/esm/auth/oauth-pkce-fallback.js +1 -0
  22. package/dist/esm/auth/oauth-pkce-fallback.js.map +1 -1
  23. package/dist/esm/auth/oauth-pkce.d.ts +1 -0
  24. package/dist/esm/auth/oauth-pkce.js +1 -0
  25. package/dist/esm/auth/oauth-pkce.js.map +1 -1
  26. package/dist/esm/auth/oauth.d.ts +55 -6
  27. package/dist/esm/auth/oauth.js +139 -21
  28. package/dist/esm/auth/oauth.js.map +1 -1
  29. package/dist/esm/auth/resolve.d.ts +37 -0
  30. package/dist/esm/auth/resolve.js +48 -0
  31. package/dist/esm/auth/resolve.js.map +1 -1
  32. package/dist/esm/auth/types.d.ts +44 -0
  33. package/dist/esm/auth/types.js.map +1 -1
  34. package/dist/esm/cli/base-command.d.ts +9 -0
  35. package/dist/esm/cli/base-command.js +31 -0
  36. package/dist/esm/cli/base-command.js.map +1 -1
  37. package/dist/esm/cli/bm-command.d.ts +15 -0
  38. package/dist/esm/cli/bm-command.js +25 -0
  39. package/dist/esm/cli/bm-command.js.map +1 -0
  40. package/dist/esm/cli/code-command.d.ts +14 -0
  41. package/dist/esm/cli/code-command.js +22 -0
  42. package/dist/esm/cli/code-command.js.map +1 -0
  43. package/dist/esm/cli/config.js +3 -0
  44. package/dist/esm/cli/config.js.map +1 -1
  45. package/dist/esm/cli/index.d.ts +5 -1
  46. package/dist/esm/cli/index.js +7 -1
  47. package/dist/esm/cli/index.js.map +1 -1
  48. package/dist/esm/cli/instance-command.d.ts +45 -0
  49. package/dist/esm/cli/instance-command.js +66 -1
  50. package/dist/esm/cli/instance-command.js.map +1 -1
  51. package/dist/esm/cli/job-command.d.ts +37 -16
  52. package/dist/esm/cli/job-command.js +73 -23
  53. package/dist/esm/cli/job-command.js.map +1 -1
  54. package/dist/esm/cli/mrt-command.d.ts +138 -9
  55. package/dist/esm/cli/mrt-command.js +277 -16
  56. package/dist/esm/cli/mrt-command.js.map +1 -1
  57. package/dist/esm/cli/oauth-command.d.ts +1 -1
  58. package/dist/esm/cli/oauth-command.js +2 -0
  59. package/dist/esm/cli/oauth-command.js.map +1 -1
  60. package/dist/esm/cli/webdav-command.d.ts +1 -0
  61. package/dist/esm/clients/cdn-zones.js +2 -5
  62. package/dist/esm/clients/cdn-zones.js.map +1 -1
  63. package/dist/esm/clients/cip.d.ts +12 -3
  64. package/dist/esm/clients/cip.js +85 -30
  65. package/dist/esm/clients/cip.js.map +1 -1
  66. package/dist/esm/clients/custom-apis.js +2 -5
  67. package/dist/esm/clients/custom-apis.js.map +1 -1
  68. package/dist/esm/clients/dual-backend-factory.d.ts +70 -0
  69. package/dist/esm/clients/dual-backend-factory.js +48 -0
  70. package/dist/esm/clients/dual-backend-factory.js.map +1 -0
  71. package/dist/esm/clients/error-utils.d.ts +62 -0
  72. package/dist/esm/clients/error-utils.js +98 -0
  73. package/dist/esm/clients/error-utils.js.map +1 -1
  74. package/dist/esm/clients/granular-replications.js +2 -5
  75. package/dist/esm/clients/granular-replications.js.map +1 -1
  76. package/dist/esm/clients/index.d.ts +28 -3
  77. package/dist/esm/clients/index.js +24 -2
  78. package/dist/esm/clients/index.js.map +1 -1
  79. package/dist/esm/clients/metrics.js +2 -5
  80. package/dist/esm/clients/metrics.js.map +1 -1
  81. package/dist/esm/clients/middleware-registry.d.ts +4 -2
  82. package/dist/esm/clients/middleware-registry.js +3 -1
  83. package/dist/esm/clients/middleware-registry.js.map +1 -1
  84. package/dist/esm/clients/middleware.d.ts +39 -0
  85. package/dist/esm/clients/middleware.js +126 -25
  86. package/dist/esm/clients/middleware.js.map +1 -1
  87. package/dist/esm/clients/mrt-b2c.js +3 -0
  88. package/dist/esm/clients/mrt-b2c.js.map +1 -1
  89. package/dist/esm/clients/mrt.d.ts +27 -10
  90. package/dist/esm/clients/mrt.generated.d.ts +77 -0
  91. package/dist/esm/clients/mrt.js +68 -0
  92. package/dist/esm/clients/mrt.js.map +1 -1
  93. package/dist/esm/clients/preferences.js +2 -5
  94. package/dist/esm/clients/preferences.js.map +1 -1
  95. package/dist/esm/clients/scapi-backend-utils.d.ts +163 -0
  96. package/dist/esm/clients/scapi-backend-utils.js +180 -0
  97. package/dist/esm/clients/scapi-backend-utils.js.map +1 -0
  98. package/dist/esm/clients/scapi-catalogs.d.ts +12 -0
  99. package/dist/esm/clients/scapi-catalogs.generated.d.ts +104 -0
  100. package/dist/esm/clients/scapi-catalogs.generated.js +6 -0
  101. package/dist/esm/clients/scapi-catalogs.generated.js.map +1 -0
  102. package/dist/esm/clients/scapi-catalogs.js +14 -0
  103. package/dist/esm/clients/scapi-catalogs.js.map +1 -0
  104. package/dist/esm/clients/scapi-client-factory.d.ts +81 -0
  105. package/dist/esm/clients/scapi-client-factory.js +84 -0
  106. package/dist/esm/clients/scapi-client-factory.js.map +1 -0
  107. package/dist/esm/clients/scapi-fallback-backend.d.ts +34 -0
  108. package/dist/esm/clients/scapi-fallback-backend.js +132 -0
  109. package/dist/esm/clients/scapi-fallback-backend.js.map +1 -0
  110. package/dist/esm/clients/scapi-jobs.d.ts +32 -0
  111. package/dist/esm/clients/scapi-jobs.generated.d.ts +535 -0
  112. package/dist/esm/clients/scapi-jobs.generated.js +6 -0
  113. package/dist/esm/clients/scapi-jobs.generated.js.map +1 -0
  114. package/dist/esm/clients/scapi-jobs.js +24 -0
  115. package/dist/esm/clients/scapi-jobs.js.map +1 -0
  116. package/dist/esm/clients/scapi-merchant-roles.d.ts +19 -0
  117. package/dist/esm/clients/scapi-merchant-roles.generated.d.ts +726 -0
  118. package/dist/esm/clients/scapi-merchant-roles.generated.js +6 -0
  119. package/dist/esm/clients/scapi-merchant-roles.generated.js.map +1 -0
  120. package/dist/esm/clients/scapi-merchant-roles.js +12 -0
  121. package/dist/esm/clients/scapi-merchant-roles.js.map +1 -0
  122. package/dist/esm/clients/scapi-merchant-users.d.ts +19 -0
  123. package/dist/esm/clients/scapi-merchant-users.generated.d.ts +300 -0
  124. package/dist/esm/clients/scapi-merchant-users.generated.js +6 -0
  125. package/dist/esm/clients/scapi-merchant-users.generated.js.map +1 -0
  126. package/dist/esm/clients/scapi-merchant-users.js +12 -0
  127. package/dist/esm/clients/scapi-merchant-users.js.map +1 -0
  128. package/dist/esm/clients/scapi-schemas.js +2 -5
  129. package/dist/esm/clients/scapi-schemas.js.map +1 -1
  130. package/dist/esm/clients/scapi-scope-tier.d.ts +78 -0
  131. package/dist/esm/clients/scapi-scope-tier.js +113 -0
  132. package/dist/esm/clients/scapi-scope-tier.js.map +1 -0
  133. package/dist/esm/clients/scapi-scripts.d.ts +17 -0
  134. package/dist/esm/clients/scapi-scripts.generated.d.ts +392 -0
  135. package/dist/esm/clients/scapi-scripts.generated.js +6 -0
  136. package/dist/esm/clients/scapi-scripts.generated.js.map +1 -0
  137. package/dist/esm/clients/scapi-scripts.js +12 -0
  138. package/dist/esm/clients/scapi-scripts.js.map +1 -0
  139. package/dist/esm/clients/scapi-sites.d.ts +26 -0
  140. package/dist/esm/clients/scapi-sites.generated.d.ts +500 -0
  141. package/dist/esm/clients/scapi-sites.generated.js +6 -0
  142. package/dist/esm/clients/scapi-sites.generated.js.map +1 -0
  143. package/dist/esm/clients/scapi-sites.js +25 -0
  144. package/dist/esm/clients/scapi-sites.js.map +1 -0
  145. package/dist/esm/clients/slas-shopper.d.ts +19 -0
  146. package/dist/esm/clients/slas-shopper.generated.d.ts +165 -0
  147. package/dist/esm/clients/slas-shopper.generated.js +6 -0
  148. package/dist/esm/clients/slas-shopper.generated.js.map +1 -0
  149. package/dist/esm/clients/slas-shopper.js +35 -0
  150. package/dist/esm/clients/slas-shopper.js.map +1 -0
  151. package/dist/esm/clients/storefront-deployments.d.ts +56 -0
  152. package/dist/esm/clients/storefront-deployments.generated.d.ts +558 -0
  153. package/dist/esm/clients/storefront-deployments.generated.js +6 -0
  154. package/dist/esm/clients/storefront-deployments.generated.js.map +1 -0
  155. package/dist/esm/clients/storefront-deployments.js +24 -0
  156. package/dist/esm/clients/storefront-deployments.js.map +1 -0
  157. package/dist/esm/clients/webdav.js +4 -1
  158. package/dist/esm/clients/webdav.js.map +1 -1
  159. package/dist/esm/compat/dispatcher.d.ts +49 -0
  160. package/dist/esm/compat/dispatcher.js +124 -0
  161. package/dist/esm/compat/dispatcher.js.map +1 -0
  162. package/dist/esm/compat/index.d.ts +10 -0
  163. package/dist/esm/compat/index.js +15 -0
  164. package/dist/esm/compat/index.js.map +1 -0
  165. package/dist/esm/compat/jobs-backend.d.ts +31 -0
  166. package/dist/esm/compat/jobs-backend.js +76 -0
  167. package/dist/esm/compat/jobs-backend.js.map +1 -0
  168. package/dist/esm/config/dw-json.d.ts +4 -0
  169. package/dist/esm/config/dw-json.js.map +1 -1
  170. package/dist/esm/config/index.d.ts +1 -1
  171. package/dist/esm/config/index.js.map +1 -1
  172. package/dist/esm/config/mapping.d.ts +2 -5
  173. package/dist/esm/config/mapping.js +25 -1
  174. package/dist/esm/config/mapping.js.map +1 -1
  175. package/dist/esm/config/resolved-config.d.ts +2 -2
  176. package/dist/esm/config/resolved-config.js.map +1 -1
  177. package/dist/esm/config/sources/env-source.js +17 -0
  178. package/dist/esm/config/sources/env-source.js.map +1 -1
  179. package/dist/esm/config/types.d.ts +21 -2
  180. package/dist/esm/docs/search.js +2 -25
  181. package/dist/esm/docs/search.js.map +1 -1
  182. package/dist/esm/guidance/catalog.d.ts +37 -0
  183. package/dist/esm/guidance/catalog.js +282 -0
  184. package/dist/esm/guidance/catalog.js.map +1 -0
  185. package/dist/esm/guidance/index.d.ts +8 -0
  186. package/dist/esm/guidance/index.js +14 -0
  187. package/dist/esm/guidance/index.js.map +1 -0
  188. package/dist/esm/guidance/markdown.d.ts +10 -0
  189. package/dist/esm/guidance/markdown.js +52 -0
  190. package/dist/esm/guidance/markdown.js.map +1 -0
  191. package/dist/esm/guidance/types.d.ts +92 -0
  192. package/dist/esm/guidance/types.js +17 -0
  193. package/dist/esm/guidance/types.js.map +1 -0
  194. package/dist/esm/index.d.ts +14 -5
  195. package/dist/esm/index.js +14 -2
  196. package/dist/esm/index.js.map +1 -1
  197. package/dist/esm/instance/index.d.ts +96 -2
  198. package/dist/esm/instance/index.js +98 -5
  199. package/dist/esm/instance/index.js.map +1 -1
  200. package/dist/esm/operations/bm-roles/backend.d.ts +4 -0
  201. package/dist/esm/operations/bm-roles/backend.js +11 -0
  202. package/dist/esm/operations/bm-roles/backend.js.map +1 -0
  203. package/dist/esm/operations/bm-roles/index.d.ts +6 -0
  204. package/dist/esm/operations/bm-roles/index.js +4 -0
  205. package/dist/esm/operations/bm-roles/index.js.map +1 -1
  206. package/dist/esm/operations/bm-roles/ocapi-backend.d.ts +17 -0
  207. package/dist/esm/operations/bm-roles/ocapi-backend.js +151 -0
  208. package/dist/esm/operations/bm-roles/ocapi-backend.js.map +1 -0
  209. package/dist/esm/operations/bm-roles/roles.js +13 -17
  210. package/dist/esm/operations/bm-roles/roles.js.map +1 -1
  211. package/dist/esm/operations/bm-roles/scapi-backend.d.ts +27 -0
  212. package/dist/esm/operations/bm-roles/scapi-backend.js +138 -0
  213. package/dist/esm/operations/bm-roles/scapi-backend.js.map +1 -0
  214. package/dist/esm/operations/bm-roles/types.d.ts +49 -0
  215. package/dist/esm/operations/bm-roles/types.js +2 -0
  216. package/dist/esm/operations/bm-roles/types.js.map +1 -0
  217. package/dist/esm/operations/bm-users/backend.d.ts +4 -0
  218. package/dist/esm/operations/bm-users/backend.js +11 -0
  219. package/dist/esm/operations/bm-users/backend.js.map +1 -0
  220. package/dist/esm/operations/bm-users/index.d.ts +11 -3
  221. package/dist/esm/operations/bm-users/index.js +9 -3
  222. package/dist/esm/operations/bm-users/index.js.map +1 -1
  223. package/dist/esm/operations/bm-users/ocapi-backend.d.ts +13 -0
  224. package/dist/esm/operations/bm-users/ocapi-backend.js +92 -0
  225. package/dist/esm/operations/bm-users/ocapi-backend.js.map +1 -0
  226. package/dist/esm/operations/bm-users/scapi-backend.d.ts +23 -0
  227. package/dist/esm/operations/bm-users/scapi-backend.js +199 -0
  228. package/dist/esm/operations/bm-users/scapi-backend.js.map +1 -0
  229. package/dist/esm/operations/bm-users/types.d.ts +99 -0
  230. package/dist/esm/operations/bm-users/types.js +2 -0
  231. package/dist/esm/operations/bm-users/types.js.map +1 -0
  232. package/dist/esm/operations/bm-users/users.d.ts +4 -3
  233. package/dist/esm/operations/bm-users/users.js +23 -19
  234. package/dist/esm/operations/bm-users/users.js.map +1 -1
  235. package/dist/esm/operations/cap/install.js +23 -45
  236. package/dist/esm/operations/cap/install.js.map +1 -1
  237. package/dist/esm/operations/cap/list.js +4 -8
  238. package/dist/esm/operations/cap/list.js.map +1 -1
  239. package/dist/esm/operations/cap/uninstall.js +17 -37
  240. package/dist/esm/operations/cap/uninstall.js.map +1 -1
  241. package/dist/esm/operations/catalogs/catalogs-backend.d.ts +4 -0
  242. package/dist/esm/operations/catalogs/catalogs-backend.js +16 -0
  243. package/dist/esm/operations/catalogs/catalogs-backend.js.map +1 -0
  244. package/dist/esm/operations/catalogs/catalogs-types.d.ts +14 -0
  245. package/dist/esm/operations/catalogs/catalogs-types.js +2 -0
  246. package/dist/esm/operations/catalogs/catalogs-types.js.map +1 -0
  247. package/dist/esm/operations/catalogs/index.d.ts +7 -0
  248. package/dist/esm/operations/catalogs/index.js +10 -0
  249. package/dist/esm/operations/catalogs/index.js.map +1 -0
  250. package/dist/esm/operations/catalogs/ocapi-catalogs-backend.d.ts +8 -0
  251. package/dist/esm/operations/catalogs/ocapi-catalogs-backend.js +36 -0
  252. package/dist/esm/operations/catalogs/ocapi-catalogs-backend.js.map +1 -0
  253. package/dist/esm/operations/catalogs/scapi-catalogs-backend.d.ts +15 -0
  254. package/dist/esm/operations/catalogs/scapi-catalogs-backend.js +42 -0
  255. package/dist/esm/operations/catalogs/scapi-catalogs-backend.js.map +1 -0
  256. package/dist/esm/operations/cip/index.js +10 -2
  257. package/dist/esm/operations/cip/index.js.map +1 -1
  258. package/dist/esm/operations/cip/reports.js +19 -3
  259. package/dist/esm/operations/cip/reports.js.map +1 -1
  260. package/dist/esm/operations/cip/types.d.ts +8 -4
  261. package/dist/esm/operations/code/deploy.d.ts +3 -0
  262. package/dist/esm/operations/code/deploy.js +5 -3
  263. package/dist/esm/operations/code/deploy.js.map +1 -1
  264. package/dist/esm/operations/code/download.d.ts +3 -0
  265. package/dist/esm/operations/code/download.js +5 -5
  266. package/dist/esm/operations/code/download.js.map +1 -1
  267. package/dist/esm/operations/code/index.d.ts +7 -1
  268. package/dist/esm/operations/code/index.js +5 -1
  269. package/dist/esm/operations/code/index.js.map +1 -1
  270. package/dist/esm/operations/code/ocapi-scripts-backend.d.ts +12 -0
  271. package/dist/esm/operations/code/ocapi-scripts-backend.js +40 -0
  272. package/dist/esm/operations/code/ocapi-scripts-backend.js.map +1 -0
  273. package/dist/esm/operations/code/scapi-scripts-backend.d.ts +22 -0
  274. package/dist/esm/operations/code/scapi-scripts-backend.js +94 -0
  275. package/dist/esm/operations/code/scapi-scripts-backend.js.map +1 -0
  276. package/dist/esm/operations/code/scripts-backend.d.ts +17 -0
  277. package/dist/esm/operations/code/scripts-backend.js +40 -0
  278. package/dist/esm/operations/code/scripts-backend.js.map +1 -0
  279. package/dist/esm/operations/code/scripts-types.d.ts +43 -0
  280. package/dist/esm/operations/code/scripts-types.js +2 -0
  281. package/dist/esm/operations/code/scripts-types.js.map +1 -0
  282. package/dist/esm/operations/code/upload-files.d.ts +6 -0
  283. package/dist/esm/operations/code/upload-files.js +58 -7
  284. package/dist/esm/operations/code/upload-files.js.map +1 -1
  285. package/dist/esm/operations/code/versions.d.ts +0 -20
  286. package/dist/esm/operations/code/versions.js +16 -51
  287. package/dist/esm/operations/code/versions.js.map +1 -1
  288. package/dist/esm/operations/code/watch.d.ts +3 -0
  289. package/dist/esm/operations/code/watch.js +3 -2
  290. package/dist/esm/operations/code/watch.js.map +1 -1
  291. package/dist/esm/operations/jobs/discover.d.ts +1 -1
  292. package/dist/esm/operations/jobs/discover.js +51 -21
  293. package/dist/esm/operations/jobs/discover.js.map +1 -1
  294. package/dist/esm/operations/jobs/index.d.ts +14 -57
  295. package/dist/esm/operations/jobs/index.js +15 -59
  296. package/dist/esm/operations/jobs/index.js.map +1 -1
  297. package/dist/esm/operations/jobs/ocapi-mapping.d.ts +34 -0
  298. package/dist/esm/operations/jobs/ocapi-mapping.js +100 -0
  299. package/dist/esm/operations/jobs/ocapi-mapping.js.map +1 -0
  300. package/dist/esm/operations/jobs/run-system-job.d.ts +81 -0
  301. package/dist/esm/operations/jobs/run-system-job.js +137 -0
  302. package/dist/esm/operations/jobs/run-system-job.js.map +1 -0
  303. package/dist/esm/operations/jobs/run.js +16 -4
  304. package/dist/esm/operations/jobs/run.js.map +1 -1
  305. package/dist/esm/operations/jobs/scapi-ops.d.ts +61 -0
  306. package/dist/esm/operations/jobs/scapi-ops.js +214 -0
  307. package/dist/esm/operations/jobs/scapi-ops.js.map +1 -0
  308. package/dist/esm/operations/jobs/site-archive.js +28 -66
  309. package/dist/esm/operations/jobs/site-archive.js.map +1 -1
  310. package/dist/esm/operations/jobs/types.d.ts +46 -0
  311. package/dist/esm/operations/jobs/types.js +2 -0
  312. package/dist/esm/operations/jobs/types.js.map +1 -0
  313. package/dist/esm/operations/jobs/wait-canonical.d.ts +28 -0
  314. package/dist/esm/operations/jobs/wait-canonical.js +48 -0
  315. package/dist/esm/operations/jobs/wait-canonical.js.map +1 -0
  316. package/dist/esm/operations/mrt/bundle.d.ts +164 -2
  317. package/dist/esm/operations/mrt/bundle.js +315 -9
  318. package/dist/esm/operations/mrt/bundle.js.map +1 -1
  319. package/dist/esm/operations/mrt/deployment.d.ts +221 -0
  320. package/dist/esm/operations/mrt/deployment.js +239 -0
  321. package/dist/esm/operations/mrt/deployment.js.map +1 -1
  322. package/dist/esm/operations/mrt/index.d.ts +8 -6
  323. package/dist/esm/operations/mrt/index.js +5 -3
  324. package/dist/esm/operations/mrt/index.js.map +1 -1
  325. package/dist/esm/operations/mrt/mrt-backend.d.ts +117 -0
  326. package/dist/esm/operations/mrt/mrt-backend.js +84 -0
  327. package/dist/esm/operations/mrt/mrt-backend.js.map +1 -0
  328. package/dist/esm/operations/mrt/push.d.ts +83 -1
  329. package/dist/esm/operations/mrt/push.js +102 -1
  330. package/dist/esm/operations/mrt/push.js.map +1 -1
  331. package/dist/esm/operations/sites/cartridges.d.ts +10 -8
  332. package/dist/esm/operations/sites/cartridges.js +35 -67
  333. package/dist/esm/operations/sites/cartridges.js.map +1 -1
  334. package/dist/esm/operations/sites/index.d.ts +10 -6
  335. package/dist/esm/operations/sites/index.js +9 -6
  336. package/dist/esm/operations/sites/index.js.map +1 -1
  337. package/dist/esm/operations/sites/ocapi-sites-backend.d.ts +20 -0
  338. package/dist/esm/operations/sites/ocapi-sites-backend.js +98 -0
  339. package/dist/esm/operations/sites/ocapi-sites-backend.js.map +1 -0
  340. package/dist/esm/operations/sites/scapi-sites-backend.d.ts +33 -0
  341. package/dist/esm/operations/sites/scapi-sites-backend.js +166 -0
  342. package/dist/esm/operations/sites/scapi-sites-backend.js.map +1 -0
  343. package/dist/esm/operations/sites/sites-backend.d.ts +9 -0
  344. package/dist/esm/operations/sites/sites-backend.js +16 -0
  345. package/dist/esm/operations/sites/sites-backend.js.map +1 -0
  346. package/dist/esm/operations/sites/sites-scopes.d.ts +2 -0
  347. package/dist/esm/operations/sites/sites-scopes.js +16 -0
  348. package/dist/esm/operations/sites/sites-scopes.js.map +1 -0
  349. package/dist/esm/operations/sites/sites-types.d.ts +50 -0
  350. package/dist/esm/operations/sites/sites-types.js +2 -0
  351. package/dist/esm/operations/sites/sites-types.js.map +1 -0
  352. package/dist/esm/safety/safety-middleware.d.ts +7 -3
  353. package/dist/esm/safety/safety-middleware.js +13 -9
  354. package/dist/esm/safety/safety-middleware.js.map +1 -1
  355. package/dist/esm/scaffold/sources.js +6 -9
  356. package/dist/esm/scaffold/sources.js.map +1 -1
  357. package/dist/esm/scapi/auth-primitives.d.ts +3 -0
  358. package/dist/esm/scapi/auth-primitives.js +104 -0
  359. package/dist/esm/scapi/auth-primitives.js.map +1 -0
  360. package/dist/esm/scapi/authentication.d.ts +30 -0
  361. package/dist/esm/scapi/authentication.js +136 -0
  362. package/dist/esm/scapi/authentication.js.map +1 -0
  363. package/dist/esm/scapi/catalog.d.ts +29 -0
  364. package/dist/esm/scapi/catalog.js +81 -0
  365. package/dist/esm/scapi/catalog.js.map +1 -0
  366. package/dist/esm/scapi/index.d.ts +12 -0
  367. package/dist/esm/scapi/index.js +13 -0
  368. package/dist/esm/scapi/index.js.map +1 -0
  369. package/dist/esm/scapi/request.d.ts +15 -0
  370. package/dist/esm/scapi/request.js +239 -0
  371. package/dist/esm/scapi/request.js.map +1 -0
  372. package/dist/esm/scapi/runtime.d.ts +20 -0
  373. package/dist/esm/scapi/runtime.js +131 -0
  374. package/dist/esm/scapi/runtime.js.map +1 -0
  375. package/dist/esm/scapi/snippets.d.ts +22 -0
  376. package/dist/esm/scapi/snippets.js +140 -0
  377. package/dist/esm/scapi/snippets.js.map +1 -0
  378. package/dist/esm/scapi/worker-source.d.ts +2 -0
  379. package/dist/esm/scapi/worker-source.js +101 -0
  380. package/dist/esm/scapi/worker-source.js.map +1 -0
  381. package/dist/esm/search/ranking.d.ts +12 -0
  382. package/dist/esm/search/ranking.js +28 -0
  383. package/dist/esm/search/ranking.js.map +1 -0
  384. package/dist/esm/skills/sources.d.ts +2 -2
  385. package/dist/esm/skills/sources.js +10 -2
  386. package/dist/esm/skills/sources.js.map +1 -1
  387. package/dist/esm/skills/types.d.ts +1 -1
  388. package/dist/esm/slas/token.js +33 -94
  389. package/dist/esm/slas/token.js.map +1 -1
  390. package/dist/esm/slas/types.d.ts +5 -0
  391. package/node_modules/@salesforce/b2c-api-schemas/README.md +23 -0
  392. package/node_modules/@salesforce/b2c-api-schemas/manifest.json +576 -0
  393. package/node_modules/@salesforce/b2c-api-schemas/package.json +15 -0
  394. package/node_modules/@salesforce/b2c-api-schemas/scapi/cdn/zones/v1.json +11490 -0
  395. package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/orders/v1.json +3589 -0
  396. package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-baskets/v1.json +6544 -0
  397. package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-baskets/v2.json +7148 -0
  398. package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-orders/v1.json +4411 -0
  399. package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-payments/v1.json +643 -0
  400. package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/cors/v1.json +295 -0
  401. package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/preferences/v1.json +2036 -0
  402. package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/shopper-configurations/v1.json +327 -0
  403. package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/timeouts/v1.json +234 -0
  404. package/node_modules/@salesforce/b2c-api-schemas/scapi/custom-object/custom-objects/v1.json +1542 -0
  405. package/node_modules/@salesforce/b2c-api-schemas/scapi/custom-object/shopper-custom-objects/v1.json +405 -0
  406. package/node_modules/@salesforce/b2c-api-schemas/scapi/customer/customers/v1.json +2531 -0
  407. package/node_modules/@salesforce/b2c-api-schemas/scapi/customer/shopper-customers/v1.json +7944 -0
  408. package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/custom-apis/v1.json +292 -0
  409. package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/object-definitions/v1.json +2537 -0
  410. package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/scapi-schemas/v1.json +517 -0
  411. package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/scripts/v1.json +589 -0
  412. package/node_modules/@salesforce/b2c-api-schemas/scapi/experience/experiences/v1.json +3600 -0
  413. package/node_modules/@salesforce/b2c-api-schemas/scapi/experience/shopper-experience/v1.json +2319 -0
  414. package/node_modules/@salesforce/b2c-api-schemas/scapi/intelligence/analytics/v1.json +658 -0
  415. package/node_modules/@salesforce/b2c-api-schemas/scapi/inventory/availability/v1.json +2649 -0
  416. package/node_modules/@salesforce/b2c-api-schemas/scapi/inventory/impex/v1.json +6615 -0
  417. package/node_modules/@salesforce/b2c-api-schemas/scapi/inventory/reservation/v1.json +2103 -0
  418. package/node_modules/@salesforce/b2c-api-schemas/scapi/merchant/roles/v1.json +1760 -0
  419. package/node_modules/@salesforce/b2c-api-schemas/scapi/merchant/users/v1.json +640 -0
  420. package/node_modules/@salesforce/b2c-api-schemas/scapi/observability/metrics/v1.json +1263 -0
  421. package/node_modules/@salesforce/b2c-api-schemas/scapi/operation/jobs/v1.json +1259 -0
  422. package/node_modules/@salesforce/b2c-api-schemas/scapi/operation/replications/v1.json +760 -0
  423. package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/assignments/v1.json +1047 -0
  424. package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/campaigns/v1.json +1929 -0
  425. package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/coupons/v1.json +1542 -0
  426. package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/gift-certificates/v1.json +1093 -0
  427. package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/promotions/v1.json +1324 -0
  428. package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/shopper-gift-certificates/v1.json +325 -0
  429. package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/shopper-promotions/v1.json +631 -0
  430. package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/source-code-groups/v1.json +1036 -0
  431. package/node_modules/@salesforce/b2c-api-schemas/scapi/product/catalogs/v1.json +5175 -0
  432. package/node_modules/@salesforce/b2c-api-schemas/scapi/product/inventory-lists/v1.json +866 -0
  433. package/node_modules/@salesforce/b2c-api-schemas/scapi/product/price-books/v1.json +747 -0
  434. package/node_modules/@salesforce/b2c-api-schemas/scapi/product/products/v1.json +5076 -0
  435. package/node_modules/@salesforce/b2c-api-schemas/scapi/product/shopper-availability/v1.json +509 -0
  436. package/node_modules/@salesforce/b2c-api-schemas/scapi/product/shopper-delivery-estimates/v1.json +517 -0
  437. package/node_modules/@salesforce/b2c-api-schemas/scapi/product/shopper-products/v1.json +2961 -0
  438. package/node_modules/@salesforce/b2c-api-schemas/scapi/search/shopper-search/v1.json +1889 -0
  439. package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/auth/v1.json +7014 -0
  440. package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/auth-admin/v1.json +1898 -0
  441. package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/consents/v1.json +622 -0
  442. package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/shopper-agents/v1.json +192 -0
  443. package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/shopper-consents/v1.json +913 -0
  444. package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/shopper-context/v1.json +630 -0
  445. package/node_modules/@salesforce/b2c-api-schemas/scapi/site/seo/v1.json +223 -0
  446. package/node_modules/@salesforce/b2c-api-schemas/scapi/site/shopper-seo/v1.json +423 -0
  447. package/node_modules/@salesforce/b2c-api-schemas/scapi/site/sites/v1.json +1088 -0
  448. package/node_modules/@salesforce/b2c-api-schemas/scapi/store/shopper-stores/v1.json +798 -0
  449. package/node_modules/@salesforce/b2c-api-schemas/scapi/store/store-redirect-mappings/v1.json +607 -0
  450. package/node_modules/@salesforce/b2c-api-schemas/scapi/store/stores/v1.json +1418 -0
  451. package/package.json +24 -3
  452. package/specs/dx-scripts-v1.yaml +409 -0
  453. package/specs/merchant-roles-v1.yaml +1085 -0
  454. package/specs/merchant-users-v1.yaml +398 -0
  455. package/specs/mrt-api-v1.json +105 -0
  456. package/specs/operations-jobs-v1.yaml +793 -0
  457. package/specs/product-catalogs-v1.yaml +111 -0
  458. package/specs/site-sites-v1.yaml +667 -0
  459. package/specs/slas-shopper-v1.yaml +83 -0
  460. package/specs/storefront-deployments-v1.yaml +630 -0
@@ -134,13 +134,13 @@ export class CipClient {
134
134
  /**
135
135
  * Closes the current Avatica connection (no-op if not open).
136
136
  */
137
- async closeConnection() {
137
+ async closeConnection(signal) {
138
138
  if (!this.connectionId) {
139
139
  return;
140
140
  }
141
141
  const connectionId = this.connectionId;
142
142
  try {
143
- await this.sendRequest('CloseConnectionRequest', { connectionId });
143
+ await this.sendRequest('CloseConnectionRequest', { connectionId }, signal);
144
144
  }
145
145
  finally {
146
146
  this.connectionId = undefined;
@@ -164,13 +164,13 @@ export class CipClient {
164
164
  /**
165
165
  * Closes a statement.
166
166
  */
167
- async closeStatement(statementId) {
167
+ async closeStatement(statementId, signal) {
168
168
  this.requireConnection();
169
169
  try {
170
170
  await this.sendRequest('CloseStatementRequest', {
171
171
  connectionId: this.connectionId,
172
172
  statementId,
173
- });
173
+ }, signal);
174
174
  }
175
175
  finally {
176
176
  this.signatureByStatementId.delete(statementId);
@@ -179,14 +179,14 @@ export class CipClient {
179
179
  /**
180
180
  * Executes SQL and returns the first decoded frame.
181
181
  */
182
- async execute(statementId, sql, firstFrameMaxSize = 1000) {
182
+ async execute(statementId, sql, firstFrameMaxSize = 1000, maxRowCount = firstFrameMaxSize) {
183
183
  this.requireConnection();
184
184
  getLogger().debug({ statementId, sql }, `[CIP SQL] statement=${statementId}`);
185
185
  const response = (await this.sendRequest('PrepareAndExecuteRequest', {
186
186
  connectionId: this.connectionId,
187
187
  statementId,
188
188
  sql,
189
- maxRowCount: firstFrameMaxSize,
189
+ maxRowCount,
190
190
  firstFrameMaxSize,
191
191
  }));
192
192
  const result = response.results?.[0];
@@ -223,44 +223,65 @@ export class CipClient {
223
223
  * This helper opens and closes the connection automatically.
224
224
  */
225
225
  async query(sql, options = {}) {
226
- const fetchSize = options.fetchSize ?? 1000;
226
+ if (options.maxRows !== undefined && (!Number.isSafeInteger(options.maxRows) || options.maxRows < 1)) {
227
+ throw new Error('maxRows must be a positive safe integer.');
228
+ }
229
+ const fetchSize = Math.min(options.fetchSize ?? 1000, options.maxRows === undefined ? Infinity : options.maxRows + 1);
227
230
  const rows = [];
228
231
  let columns = [];
229
- await this.openConnection(options.connectionProperties);
230
- const statementId = await this.createStatement();
232
+ const appendRows = (frame) => {
233
+ for (const row of frame.rows) {
234
+ if (options.maxRows !== undefined && rows.length > options.maxRows)
235
+ break;
236
+ rows.push(row);
237
+ }
238
+ };
239
+ let statementId;
240
+ let opened = false;
231
241
  try {
232
- const executeResponse = await this.execute(statementId, sql, fetchSize);
242
+ await this.openConnection(options.connectionProperties);
243
+ opened = true;
244
+ statementId = await this.createStatement();
245
+ const executeResponse = await this.execute(statementId, sql, fetchSize, options.maxRows === undefined ? fetchSize : options.maxRows + 1);
246
+ statementId = executeResponse.statementId;
233
247
  let frame = executeResponse.frame;
234
248
  if (frame) {
235
- rows.push(...frame.rows);
249
+ appendRows(frame);
236
250
  columns = frame.columns.map((column) => column.label);
237
251
  }
238
- while (frame && !frame.done) {
252
+ while (frame && !frame.done && (options.maxRows === undefined || rows.length <= options.maxRows)) {
253
+ if (frame.rows.length === 0)
254
+ throw new Error('CIP returned an empty nonterminal frame; query cannot advance.');
239
255
  const nextOffset = frame.offset + frame.rows.length;
240
256
  const fetchResponse = await this.fetch(executeResponse.statementId, nextOffset, fetchSize);
241
257
  frame = fetchResponse.frame;
242
- if (frame) {
243
- rows.push(...frame.rows);
244
- if (columns.length === 0) {
245
- columns = frame.columns.map((column) => column.label);
246
- }
258
+ if (!frame || frame.offset !== nextOffset)
259
+ throw new Error('CIP returned a missing or out-of-order frame; query is incomplete.');
260
+ appendRows(frame);
261
+ if (columns.length === 0) {
262
+ columns = frame.columns.map((column) => column.label);
247
263
  }
248
264
  }
249
265
  return {
250
266
  columns,
251
- rows,
252
- rowCount: rows.length,
267
+ rows: options.maxRows === undefined ? rows : rows.slice(0, options.maxRows),
268
+ rowCount: Math.min(rows.length, options.maxRows ?? Infinity),
269
+ ...(options.maxRows === undefined
270
+ ? {}
271
+ : { truncated: rows.length > options.maxRows || Boolean(frame && !frame.done) }),
253
272
  };
254
273
  }
255
274
  finally {
256
- await this.closeStatement(statementId).catch((error) => {
257
- const message = error instanceof Error ? error.message : String(error);
258
- getLogger().debug({ error: message }, 'Failed to close CIP statement during cleanup');
259
- });
260
- await this.closeConnection().catch((error) => {
261
- const message = error instanceof Error ? error.message : String(error);
262
- getLogger().debug({ error: message }, 'Failed to close CIP connection during cleanup');
263
- });
275
+ if (statementId !== undefined)
276
+ await this.closeStatement(statementId, AbortSignal.timeout(2000)).catch((error) => {
277
+ const message = error instanceof Error ? error.message : String(error);
278
+ getLogger().debug({ error: message }, 'Failed to close CIP statement during cleanup');
279
+ });
280
+ if (opened)
281
+ await this.closeConnection(AbortSignal.timeout(2000)).catch((error) => {
282
+ const message = error instanceof Error ? error.message : String(error);
283
+ getLogger().debug({ error: message }, 'Failed to close CIP connection during cleanup');
284
+ });
264
285
  }
265
286
  }
266
287
  requireConnection() {
@@ -277,7 +298,8 @@ export class CipClient {
277
298
  }
278
299
  return this.protoRoot;
279
300
  }
280
- async sendRequest(requestTypeName, payload) {
301
+ async sendRequest(requestTypeName, payload, signal = this.config.signal) {
302
+ signal?.throwIfAborted();
281
303
  const logger = getLogger();
282
304
  const root = await this.getProtoRoot();
283
305
  const requestType = root.lookupType(requestTypeName);
@@ -298,6 +320,8 @@ export class CipClient {
298
320
  ...(this.sessionId ? { 'x-session-id': this.sessionId } : {}),
299
321
  },
300
322
  body: serializedWireRequest,
323
+ signal,
324
+ redirect: 'error',
301
325
  });
302
326
  const middleware = this.getMiddleware();
303
327
  const middlewareParams = {
@@ -336,6 +360,8 @@ export class CipClient {
336
360
  method: request.method,
337
361
  headers: request.headers,
338
362
  body,
363
+ signal: request.signal,
364
+ redirect: request.redirect,
339
365
  });
340
366
  const duration = Date.now() - requestStartTime;
341
367
  const responseParams = {
@@ -357,7 +383,7 @@ export class CipClient {
357
383
  this.sessionId = sessionId;
358
384
  }
359
385
  if (!response.ok) {
360
- const bodyText = await response.text();
386
+ const bodyText = new TextDecoder().decode(await this.readResponse(response));
361
387
  logger.debug({ method: request.method, url: request.url, status: response.status, duration }, `[CIP RESP] ${requestTypeName} ${response.status} ${duration}ms`);
362
388
  logger.trace({
363
389
  method: request.method,
@@ -368,7 +394,7 @@ export class CipClient {
368
394
  }, `[CIP RESP BODY] ${request.method} ${request.url}`);
369
395
  throw new Error(`CIP Avatica request failed (${response.status} ${response.statusText}): ${bodyText}`);
370
396
  }
371
- const responseBytes = new Uint8Array(await response.arrayBuffer());
397
+ const responseBytes = await this.readResponse(response);
372
398
  const wireResponse = wireType.decode(responseBytes);
373
399
  const responseClassName = wireResponse.name ?? '';
374
400
  const responseTypeName = responseClassName.split('$').pop() ?? '';
@@ -398,6 +424,35 @@ export class CipClient {
398
424
  const responseType = root.lookupType(responseTypeName);
399
425
  return responseType.decode(wrappedResponse);
400
426
  }
427
+ async readResponse(response) {
428
+ const limit = this.config.maxResponseBytes;
429
+ if (limit === undefined)
430
+ return new Uint8Array(await response.arrayBuffer());
431
+ if (Number(response.headers.get('content-length')) > limit) {
432
+ await response.body?.cancel();
433
+ throw new Error('CIP response exceeds the byte limit. Select fewer columns or a smaller result.');
434
+ }
435
+ const reader = response.body?.getReader();
436
+ if (!reader)
437
+ return new Uint8Array();
438
+ const chunks = [];
439
+ let size = 0;
440
+ try {
441
+ while (true) {
442
+ const { done, value } = await reader.read();
443
+ if (done)
444
+ break;
445
+ size += value.byteLength;
446
+ if (size > limit)
447
+ throw new Error('CIP response exceeds the byte limit. Select fewer columns or a smaller result.');
448
+ chunks.push(value);
449
+ }
450
+ }
451
+ finally {
452
+ await reader.cancel();
453
+ }
454
+ return Buffer.concat(chunks, size);
455
+ }
401
456
  decodeFrame(signature, frame) {
402
457
  if (!frame) {
403
458
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"cip.js","sourceRoot":"","sources":["../../../src/clients/cip.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cip.js","sourceRoot":"","sources":["../../../src/clients/cip.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;;;;;;;;GAQG;AACH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AACvC,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAC;AAC1C,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC,OAAO,EAAC,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAC,wBAAwB,EAAkD,MAAM,0BAA0B,CAAC;AAEnH,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAC,CAAC;AAE9F,gCAAgC;AAChC,MAAM,CAAC,MAAM,gBAAgB,GAAG,6CAA6C,CAAC;AAC9E,qEAAqE;AACrE,MAAM,CAAC,MAAM,wBAAwB,GAAG,iDAAiD,CAAC;AAE1F,MAAM,kBAAkB,GAAG,QAAQ,CAAC;AACpC,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAElC,MAAM,eAAe,GAAG;IACtB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,6BAA6B,CAAC;IACrD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,+BAA+B,CAAC;IACvD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gCAAgC,CAAC;CACzD,CAAC;AAEF,MAAM,GAAG,GAAG;IACV,iBAAiB,EAAE,CAAC;IACpB,OAAO,EAAE,CAAC;IACV,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,EAAE;IACR,OAAO,EAAE,EAAE;IACX,aAAa,EAAE,CAAC;IAChB,cAAc,EAAE,CAAC;IACjB,MAAM,EAAE,EAAE;IACV,WAAW,EAAE,EAAE;IACf,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,EAAE;IACV,eAAe,EAAE,CAAC;IAClB,gBAAgB,EAAE,CAAC;IACnB,WAAW,EAAE,EAAE;IACf,WAAW,EAAE,EAAE;IACf,aAAa,EAAE,EAAE;IACjB,aAAa,EAAE,EAAE;IACjB,kBAAkB,EAAE,EAAE;IACtB,cAAc,EAAE,EAAE;IAClB,KAAK,EAAE,EAAE;CACD,CAAC;AAEX,SAAS,MAAM,CAAC,KAAc,EAAE,GAAW;IACzC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACzG,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAa;IACrC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAC1D,OAAO,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;QACvE,OAAO,MAAM,CAAE,KAAkC,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;AAC5B,CAAC;AAyFD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,OAAO,SAAS;IASD;IACA;IATF,OAAO,CAAS;IAChB,kBAAkB,CAAqB;IAChD,SAAS,CAAiB;IAC1B,YAAY,CAAU;IACtB,SAAS,CAAU;IACV,sBAAsB,GAAG,IAAI,GAAG,EAAyB,CAAC;IAE3E,YACmB,MAAuB,EACvB,IAAkB;QADlB,WAAM,GAAN,MAAM,CAAiB;QACvB,SAAI,GAAJ,IAAI,CAAc;QAEnC,IAAI,CAAC,OAAO,GAAG,WAAW,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC7E,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,IAAI,wBAAwB,CAAC;IAClF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,OAA+B,EAAE;QACpD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,YAAY,GAAG,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE,EAAC,YAAY,EAAE,IAAI,EAAC,CAAC,CAAC;QACtE,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,MAAoB;QACxC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QAEvC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,EAAC,YAAY,EAAC,EAAE,MAAM,CAAC,CAAC;QAC3E,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;YAC9B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,CAAC;QACtC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE;YACjE,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAA2B,CAAC;QAE9B,IAAI,OAAO,QAAQ,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;QAED,OAAO,QAAQ,CAAC,WAAW,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,WAAmB,EAAE,MAAoB;QAC5D,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,WAAW,CACpB,uBAAuB,EACvB;gBACE,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,WAAW;aACZ,EACD,MAAM,CACP,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,WAAmB,EACnB,GAAW,EACX,oBAA4B,IAAI,EAChC,cAAsB,iBAAiB;QAEvC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,SAAS,EAAE,CAAC,KAAK,CAAC,EAAC,WAAW,EAAE,GAAG,EAAC,EAAE,uBAAuB,WAAW,EAAE,CAAC,CAAC;QAE5E,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,0BAA0B,EAAE;YACnE,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,WAAW;YACX,GAAG;YACH,WAAW;YACX,iBAAiB;SAClB,CAAC,CAMD,CAAC;QAEF,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAC,WAAW,EAAC,CAAC;QACvB,CAAC;QAED,MAAM,mBAAmB,GAAG,MAAM,CAAC,WAAW,IAAI,WAAW,CAAC;QAC9D,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACzE,CAAC;QAED,OAAO;YACL,WAAW,EAAE,mBAAmB;YAChC,KAAK,EAAE,IAAI,CAAC,WAAW,CACrB,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,mBAAmB,CAAC,EACxE,MAAM,CAAC,UAAU,CAClB;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,WAAmB,EAAE,MAAc,EAAE,mBAA2B,IAAI;QAC9E,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE;YACvD,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,WAAW;YACX,MAAM;YACN,gBAAgB;SACjB,CAAC,CAED,CAAC;QAEF,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC;SACtF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,UAA2B,EAAE;QACpD,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC;YACrG,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,OAAO,CAAC,SAAS,IAAI,IAAI,EACzB,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAC/D,CAAC;QACF,MAAM,IAAI,GAAmC,EAAE,CAAC;QAChD,IAAI,OAAO,GAAa,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,CAAC,KAAe,EAAE,EAAE;YACrC,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC7B,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO;oBAAE,MAAM;gBAC1E,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,WAA+B,CAAC;QACpC,IAAI,MAAM,GAAG,KAAK,CAAC;QAEnB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;YACxD,MAAM,GAAG,IAAI,CAAC;YACd,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;YAC3C,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,OAAO,CACxC,WAAW,EACX,GAAG,EACH,SAAS,EACT,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAChE,CAAC;YACF,WAAW,GAAG,eAAe,CAAC,WAAW,CAAC;YAC1C,IAAI,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC;YAElC,IAAI,KAAK,EAAE,CAAC;gBACV,UAAU,CAAC,KAAK,CAAC,CAAC;gBAClB,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxD,CAAC;YAED,OAAO,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;gBAC/G,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;gBACpD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;gBAC3F,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;gBAC5B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU;oBACvC,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;gBAExF,UAAU,CAAC,KAAK,CAAC,CAAC;gBAClB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACzB,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;YAED,OAAO;gBACL,OAAO;gBACP,IAAI,EAAE,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;gBAC3E,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC;gBAC5D,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS;oBAC/B,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,EAAC,SAAS,EAAE,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAC,CAAC;aACjF,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,IAAI,WAAW,KAAK,SAAS;gBAC3B,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBAChF,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACvE,SAAS,EAAE,CAAC,KAAK,CAAC,EAAC,KAAK,EAAE,OAAO,EAAC,EAAE,8CAA8C,CAAC,CAAC;gBACtF,CAAC,CAAC,CAAC;YAEL,IAAI,MAAM;gBACR,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACpE,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACvE,SAAS,EAAE,CAAC,KAAK,CAAC,EAAC,KAAK,EAAE,OAAO,EAAC,EAAE,+CAA+C,CAAC,CAAC;gBACvF,CAAC,CAAC,CAAC;QACP,CAAC;IACH,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAEO,aAAa;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC;IAEO,KAAK,CAAC,YAAY;QACxB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACxD,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,eAAuB,EAAE,OAAe,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;QAC7F,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAEvC,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QACrD,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC;QAEtE,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC;YAClC,IAAI,EAAE,6CAA6C,eAAe,EAAE;YACpE,cAAc,EAAE,iBAAiB;SAClC,CAAC,CAAC;QACH,MAAM,qBAAqB,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,CAAC;QAEpE,IAAI,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE;YACtC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,wBAAwB;gBACxC,kBAAkB,EAAE,kBAAkB;gBACtC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAChC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAC,cAAc,EAAE,IAAI,CAAC,SAAS,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5D;YACD,IAAI,EAAE,qBAAqB;YAC3B,MAAM;YACN,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,gBAAgB,GAAG;YACvB,OAAO;YACP,UAAU,EAAE,MAAM;YAClB,OAAO,EAAE,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAC;YAChC,MAAM,EAAE,EAAE;YACV,EAAE,EAAE,KAAK;SACV,CAAC;QAEF,KAAK,MAAM,cAAc,IAAI,UAAU,EAAE,CAAC;YACxC,IAAI,CAAC,cAAc,CAAC,SAAS;gBAAE,SAAS;YACxC,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,SAAS,CAChD,gBAA+E,CAChF,CAAC;YACF,IAAI,WAAW,YAAY,OAAO,EAAE,CAAC;gBACnC,OAAO,GAAG,WAAW,CAAC;gBACtB,gBAAgB,CAAC,OAAO,GAAG,WAAW,CAAC;YACzC,CAAC;QACH,CAAC;QAED,IAAI,IAAI,GAAyC,qBAAqB,CAAC;QACvE,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,IAAI,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEpC,MAAM,CAAC,KAAK,CAAC,EAAC,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAC,EAAE,aAAa,eAAe,EAAE,CAAC,CAAC;QACxF,MAAM,CAAC,KAAK,CACV;YACE,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC;YAC9C,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE;gBAClC,eAAe;gBACf,eAAe,EAAE,6CAA6C,eAAe,EAAE;gBAC/E,OAAO;aACR,CAAC;SACH,EACD,kBAAkB,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,CAClD,CAAC;QAEF,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;YAChD,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI;YACJ,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;SACd,CAAC,CAAC;QAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,CAAC;QAE/C,MAAM,cAAc,GAAG;YACrB,GAAG,gBAAgB;YACnB,OAAO;YACP,QAAQ;SACT,CAAC;QAEF,KAAK,MAAM,cAAc,IAAI,UAAU,EAAE,CAAC;YACxC,IAAI,CAAC,cAAc,CAAC,UAAU;gBAAE,SAAS;YACzC,MAAM,YAAY,GAAG,MAAM,cAAc,CAAC,UAAU,CAClD,cAA8E,CAC/E,CAAC;YACF,IAAI,YAAY,YAAY,QAAQ,EAAE,CAAC;gBACrC,QAAQ,GAAG,YAAY,CAAC;gBACxB,cAAc,CAAC,QAAQ,GAAG,YAAY,CAAC;YACzC,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACvD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,QAAQ,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC7E,MAAM,CAAC,KAAK,CACV,EAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAC,EAC7E,cAAc,eAAe,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,IAAI,CACjE,CAAC;YACF,MAAM,CAAC,KAAK,CACV;gBACE,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC/C,IAAI,EAAE,QAAQ;aACf,EACD,mBAAmB,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,CACnD,CAAC;YACF,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,MAAM,QAAQ,EAAE,CAAC,CAAC;QACzG,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAgB,CAAC;QAEnE,MAAM,iBAAiB,GAAG,YAAY,CAAC,IAAI,IAAI,EAAE,CAAC;QAClD,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;QAClE,MAAM,eAAe,GAAG,YAAY,CAAC,cAAc,CAAC;QAEpD,MAAM,CAAC,KAAK,CACV,EAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAC,EAC/F,cAAc,eAAe,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,IAAI,CACjE,CAAC;QACF,MAAM,CAAC,KAAK,CACV;YACE,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC;YAC/C,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE;gBAC3C,eAAe,EAAE,YAAY,CAAC,IAAI;gBAClC,gBAAgB;aACjB,CAAC;SACH,EACD,mBAAmB,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,CACnD,CAAC;QAEF,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACrF,CAAC;QAED,IAAI,gBAAgB,KAAK,eAAe,EAAE,CAAC;YACzC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;YACnD,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,eAAe,CAIpD,CAAC;YAEF,MAAM,YAAY,GAAG,YAAY,CAAC,YAAY,IAAI,uBAAuB,CAAC;YAC1E,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnF,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrG,MAAM,IAAI,KAAK,CAAC,sBAAsB,YAAY,GAAG,QAAQ,GAAG,SAAS,EAAE,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACvD,OAAO,YAAY,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAC9C,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,QAAkB;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC;QAC3C,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QAC7E,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC;YAC3D,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;QACpG,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,UAAU,EAAE,CAAC;QACrC,MAAM,MAAM,GAAiB,EAAE,CAAC;QAChC,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,CAAC;YACH,OAAO,IAAI,EAAE,CAAC;gBACZ,MAAM,EAAC,IAAI,EAAE,KAAK,EAAC,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC1C,IAAI,IAAI;oBAAE,MAAM;gBAChB,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC;gBACzB,IAAI,IAAI,GAAG,KAAK;oBACd,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;gBACpG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;QACxB,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAEO,WAAW,CAAC,SAAoC,EAAE,KAA4B;QACpF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;QACxD,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,MAAM,OAAO,GAA4B,EAAE,CAAC;YAE5C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;gBACpD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAwC,CAAC;gBACnE,MAAM,UAAU,GAAG,SAAS,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;gBAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YACpE,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;YAC9B,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;YACzB,OAAO;YACP,IAAI;SACL,CAAC;IACJ,CAAC;IAEO,uBAAuB,CAAC,SAAoC;QAClE,MAAM,OAAO,GAAG,SAAS,EAAE,OAAO,CAAC;QACnC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACnC,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACrG,MAAM,UAAU,GACd,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YAExG,OAAO;gBACL,KAAK,EAAE,KAAK,IAAI,UAAU,IAAI,UAAU,KAAK,GAAG,CAAC,EAAE;gBACnD,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;aACzC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,iBAAiB,CAAC,MAA+B;QACvD,IACE,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;YAC/B,MAAM,CAAC,IAAI,KAAK,IAAI;YACpB,OAAQ,MAAM,CAAC,IAAyB,CAAC,IAAI,KAAK,QAAQ,EAC1D,CAAC;YACD,OAAQ,MAAM,CAAC,IAAuB,CAAC,IAAI,CAAC;QAC9C,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,iBAAiB,CAAC,WAAgD,EAAE,cAAwB;QAClG,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,WAAW,CAAC,aAAa,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAChF,OAAO,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC;QAC7F,CAAC;QAED,IAAI,OAAO,WAAW,CAAC,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YACpF,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrE,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,gBAAgB,CAAC,UAAmB,EAAE,cAAwB;QACpE,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YAC1D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,KAAK,GAAG,UAAqC,CAAC;QACpD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAErE,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;YACzD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,GAAG,KAAK,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;YACzD,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;QAClF,CAAC;QAED,IAAI,GAAG,KAAK,GAAG,CAAC,OAAO,IAAI,GAAG,KAAK,GAAG,CAAC,iBAAiB,EAAE,CAAC;YACzD,OAAO,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;QAED,IAAI,GAAG,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;YACvB,OAAO,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,CAAC;QAED,IACE,GAAG,KAAK,GAAG,CAAC,IAAI;YAChB,GAAG,KAAK,GAAG,CAAC,OAAO;YACnB,GAAG,KAAK,GAAG,CAAC,aAAa;YACzB,GAAG,KAAK,GAAG,CAAC,cAAc;YAC1B,GAAG,KAAK,GAAG,CAAC,MAAM;YAClB,GAAG,KAAK,GAAG,CAAC,WAAW,EACvB,CAAC;YACD,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,GAAG,KAAK,GAAG,CAAC,KAAK,IAAI,GAAG,KAAK,GAAG,CAAC,MAAM,IAAI,GAAG,KAAK,GAAG,CAAC,eAAe,IAAI,GAAG,KAAK,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAC3G,OAAO,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;QACnG,CAAC;QAED,IAAI,GAAG,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;gBAC1E,OAAO,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC9C,CAAC;YAED,OAAO,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,GAAG,KAAK,GAAG,CAAC,WAAW,IAAI,KAAK,CAAC,UAAU,YAAY,UAAU,EAAE,CAAC;YACtE,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,GAAG,KAAK,GAAG,CAAC,aAAa,IAAI,GAAG,KAAK,GAAG,CAAC,cAAc,IAAI,GAAG,KAAK,GAAG,CAAC,kBAAkB,EAAE,CAAC;YAC9F,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,GAAG,KAAK,GAAG,CAAC,aAAa,EAAE,CAAC;YAC9B,OAAO,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC,WAAW,CAAC;QAC3B,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC;YACjC,OAAO,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,CAAC;YACjC,OAAO,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC;YAC/B,OAAO,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,kBAAkB,CAAC,KAAc,EAAE,cAAwB;QACjE,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEhC,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAClE,MAAM,MAAM,GAAG,cAAyD,CAAC;YACzE,MAAM,QAAQ,GAAG,OAAO,MAAM,CAAC,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YACpG,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAEpF,IAAI,QAAQ,KAAK,MAAM,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;gBACzC,OAAO,IAAI,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YACjD,CAAC;YAED,IAAI,QAAQ,KAAK,WAAW,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;gBAC9C,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,kBAAkB,CACxB,IAA0C,EAC1C,QAAkC;QAElC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,YAAY,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,sBAAsB,CAAC,CAAC;QAE1D,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE,KAAK,CAAC,UAAU;YAC3B,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAChD,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACtD,WAAW,EAAE,OAAO,CAAC,UAAU;YAC/B,SAAS,EAAE,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU;YAChD,GAAG,QAAQ;SACZ,CAAC;IACJ,CAAC;IAEO,eAAe,CAAC,OAAgB;QACtC,MAAM,MAAM,GAA2B,EAAE,CAAC;QAC1C,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC7B,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,eAAe,CAAC,MAAuB,EAAE,IAAkB;IACzE,MAAM,QAAQ,GAAG,2BAA2B,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC9D,MAAM,UAAU,GACd,IAAI,YAAY,aAAa,IAAI,IAAI,YAAY,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnH,OAAO,IAAI,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAC3C,CAAC"}
@@ -13,10 +13,9 @@
13
13
  * @module clients/custom-apis
14
14
  */
15
15
  import createClient, {} from 'openapi-fetch';
16
- import { OAuthStrategy } from '../auth/oauth.js';
17
- import { JwtOAuthStrategy } from '../auth/oauth-jwt.js';
18
16
  import { createAuthMiddleware, createLoggingMiddleware } from './middleware.js';
19
17
  import { globalMiddlewareRegistry } from './middleware-registry.js';
18
+ import { withScopes } from './scapi-backend-utils.js';
20
19
  /** Default OAuth scopes required for Custom APIs (read-only) */
21
20
  export const CUSTOM_APIS_DEFAULT_SCOPES = ['sfcc.custom-apis'];
22
21
  /**
@@ -61,9 +60,7 @@ export function createCustomApisClient(config, auth) {
61
60
  // Build required scopes: domain scope + tenant-specific scope
62
61
  const requiredScopes = config.scopes ?? [...CUSTOM_APIS_DEFAULT_SCOPES, buildTenantScope(config.tenantId)];
63
62
  // If auth supports scopes, add required scopes; otherwise use as-is
64
- const scopedAuth = auth instanceof OAuthStrategy || auth instanceof JwtOAuthStrategy
65
- ? auth.withAdditionalScopes(requiredScopes)
66
- : auth;
63
+ const scopedAuth = withScopes(auth, requiredScopes);
67
64
  // Core middleware: auth first
68
65
  client.use(createAuthMiddleware(scopedAuth));
69
66
  // Plugin middleware from registry
@@ -1 +1 @@
1
- {"version":3,"file":"custom-apis.js","sourceRoot":"","sources":["../../../src/clients/custom-apis.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;;;;;;;;GAQG;AACH,OAAO,YAAY,EAAE,EAAa,MAAM,eAAe,CAAC;AAExD,OAAO,EAAC,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAC,oBAAoB,EAAE,uBAAuB,EAAC,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAC,wBAAwB,EAA0B,MAAM,0BAA0B,CAAC;AAqD3F,gEAAgE;AAChE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAiC/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAA8B,EAAE,IAAkB;IACvF,MAAM,QAAQ,GAAG,MAAM,CAAC,kBAAkB,IAAI,wBAAwB,CAAC;IAEvE,MAAM,MAAM,GAAG,YAAY,CAAQ;QACjC,OAAO,EAAE,WAAW,MAAM,CAAC,SAAS,qDAAqD;KAC1F,CAAC,CAAC;IAEH,8DAA8D;IAC9D,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,0BAA0B,EAAE,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE3G,oEAAoE;IACpE,MAAM,UAAU,GACd,IAAI,YAAY,aAAa,IAAI,IAAI,YAAY,gBAAgB;QAC/D,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC;QAC3C,CAAC,CAAC,IAAI,CAAC;IAEX,8BAA8B;IAC9B,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC;IAE7C,kCAAkC;IAClC,KAAK,MAAM,UAAU,IAAI,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/D,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC;IAED,yEAAyE;IACzE,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC,CAAC;IAEnD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,+CAA+C;AAC/C,MAAM,CAAC,MAAM,sBAAsB,GAAG,SAAS,CAAC;AAEhD,oDAAoD;AACpD,MAAM,CAAC,MAAM,yBAAyB,GAAG,0BAA0B,CAAC;AAEpE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,GAAG,sBAAsB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAEtB,mFAAmF;IACnF,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,6CAA6C;IAC7C,IAAI,EAAE,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC1C,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,iCAAiC;IACjC,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAE7B,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,GAAG,yBAAyB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;AACtE,CAAC"}
1
+ {"version":3,"file":"custom-apis.js","sourceRoot":"","sources":["../../../src/clients/custom-apis.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;;;;;;;;GAQG;AACH,OAAO,YAAY,EAAE,EAAa,MAAM,eAAe,CAAC;AAGxD,OAAO,EAAC,oBAAoB,EAAE,uBAAuB,EAAC,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAC,wBAAwB,EAA0B,MAAM,0BAA0B,CAAC;AAC3F,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAqDpD,gEAAgE;AAChE,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAiC/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAA8B,EAAE,IAAkB;IACvF,MAAM,QAAQ,GAAG,MAAM,CAAC,kBAAkB,IAAI,wBAAwB,CAAC;IAEvE,MAAM,MAAM,GAAG,YAAY,CAAQ;QACjC,OAAO,EAAE,WAAW,MAAM,CAAC,SAAS,qDAAqD;KAC1F,CAAC,CAAC;IAEH,8DAA8D;IAC9D,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,0BAA0B,EAAE,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE3G,oEAAoE;IACpE,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAEpD,8BAA8B;IAC9B,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC;IAE7C,kCAAkC;IAClC,KAAK,MAAM,UAAU,IAAI,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/D,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC;IAED,yEAAyE;IACzE,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC,CAAC;IAEnD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,+CAA+C;AAC/C,MAAM,CAAC,MAAM,sBAAsB,GAAG,SAAS,CAAC;AAEhD,oDAAoD;AACpD,MAAM,CAAC,MAAM,yBAAyB,GAAG,0BAA0B,CAAC;AAEpE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,GAAG,sBAAsB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAEtB,mFAAmF;IACnF,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,6CAA6C;IAC7C,IAAI,EAAE,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC1C,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,iCAAiC;IACjC,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAE7B,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,GAAG,yBAAyB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;AACtE,CAAC"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Generic factory for SCAPI/OCAPI dual backends.
3
+ *
4
+ * Replaces the per-domain `create*Backend()` functions (jobs, scripts,
5
+ * users, roles) which were 100% structurally identical. Each domain now
6
+ * supplies its constructors and config and delegates to {@link createDualBackend}.
7
+ *
8
+ * @module clients/dual-backend-factory
9
+ */
10
+ import type { AuthStrategy } from '../auth/types.js';
11
+ import type { B2CInstance } from '../instance/index.js';
12
+ import { type ApiBackendPreference, type BackendBase } from './scapi-backend-utils.js';
13
+ /**
14
+ * Common shape of every dual-backend factory's input.
15
+ *
16
+ * SCAPI coordinates (shortCode/tenantId) and the scope-flexible auth strategy
17
+ * are no longer threaded in separately — they are sourced from the instance
18
+ * via {@link B2CInstance.scapiClientConfig}. A backend is "SCAPI-capable" iff
19
+ * that getter returns a value (shortCode + tenantId present, and a stateless
20
+ * OAuth flow that can request the required scopes).
21
+ *
22
+ * `preference` is optional: when omitted it falls back to the instance's own
23
+ * {@link B2CInstance.apiBackend} (default `'auto'`), so callers that already
24
+ * resolved the instance from config don't have to re-plumb the flag.
25
+ */
26
+ export interface DualBackendConfig {
27
+ preference?: ApiBackendPreference;
28
+ instance: B2CInstance;
29
+ }
30
+ /**
31
+ * Configuration passed to a SCAPI backend constructor. Domains add their
32
+ * own optional fields (e.g., `instance` for log/WebDAV access on jobs) but
33
+ * always include shortCode + tenantId + auth.
34
+ */
35
+ export interface ScapiBackendCtorConfig {
36
+ shortCode: string;
37
+ tenantId: string;
38
+ auth: AuthStrategy;
39
+ instance: B2CInstance;
40
+ }
41
+ /**
42
+ * Constructors needed to build a dual-backend instance. Each domain plugs in
43
+ * its own SCAPI/OCAPI backend classes; the factory wires them together.
44
+ */
45
+ export interface DualBackendCtors<T extends BackendBase> {
46
+ domainName: string;
47
+ Scapi: new (config: ScapiBackendCtorConfig) => T;
48
+ Ocapi: new (instance: B2CInstance) => T;
49
+ }
50
+ /**
51
+ * Resolves the user's preference + config availability into a concrete
52
+ * backend instance.
53
+ *
54
+ * - Explicit `'ocapi'` returns an OCAPI backend.
55
+ * - Explicit `'scapi'` returns a SCAPI backend (throws if config missing).
56
+ * - `'auto'` returns a fallback Proxy that tries SCAPI first and falls back to
57
+ * OCAPI on safe capability/auth/request rejections.
58
+ *
59
+ * @example
60
+ * ```ts
61
+ * export function createJobsBackend(config: JobsBackendConfig): JobsBackend {
62
+ * return createDualBackend(config, {
63
+ * domainName: 'Jobs',
64
+ * Scapi: ScapiJobsBackend,
65
+ * Ocapi: OcapiJobsBackend,
66
+ * });
67
+ * }
68
+ * ```
69
+ */
70
+ export declare function createDualBackend<T extends BackendBase>(config: DualBackendConfig, ctors: DualBackendCtors<T>): T;
@@ -0,0 +1,48 @@
1
+ import { createFallbackBackend } from './scapi-fallback-backend.js';
2
+ import { resolveScapiOrOcapi } from './scapi-backend-utils.js';
3
+ /**
4
+ * Resolves the user's preference + config availability into a concrete
5
+ * backend instance.
6
+ *
7
+ * - Explicit `'ocapi'` returns an OCAPI backend.
8
+ * - Explicit `'scapi'` returns a SCAPI backend (throws if config missing).
9
+ * - `'auto'` returns a fallback Proxy that tries SCAPI first and falls back to
10
+ * OCAPI on safe capability/auth/request rejections.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * export function createJobsBackend(config: JobsBackendConfig): JobsBackend {
15
+ * return createDualBackend(config, {
16
+ * domainName: 'Jobs',
17
+ * Scapi: ScapiJobsBackend,
18
+ * Ocapi: OcapiJobsBackend,
19
+ * });
20
+ * }
21
+ * ```
22
+ */
23
+ export function createDualBackend(config, ctors) {
24
+ const { instance } = config;
25
+ const preference = config.preference ?? instance.apiBackend;
26
+ const scapiClientConfig = instance.scapiClientConfig;
27
+ const resolved = resolveScapiOrOcapi({
28
+ preference,
29
+ hasScapiConfig: scapiClientConfig !== undefined,
30
+ domainName: ctors.domainName,
31
+ });
32
+ if (resolved === 'ocapi') {
33
+ return new ctors.Ocapi(instance);
34
+ }
35
+ const scapiBackend = new ctors.Scapi({
36
+ shortCode: scapiClientConfig.shortCode,
37
+ tenantId: scapiClientConfig.tenantId,
38
+ auth: scapiClientConfig.auth,
39
+ instance,
40
+ });
41
+ if (preference === 'scapi') {
42
+ return scapiBackend;
43
+ }
44
+ // Auto mode: wrap with fallback
45
+ const ocapiBackend = new ctors.Ocapi(instance);
46
+ return createFallbackBackend(scapiBackend, ocapiBackend, ctors.domainName.toLowerCase());
47
+ }
48
+ //# sourceMappingURL=dual-backend-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dual-backend-factory.js","sourceRoot":"","sources":["../../../src/clients/dual-backend-factory.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,qBAAqB,EAAC,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAC,mBAAmB,EAA8C,MAAM,0BAA0B,CAAC;AA0C1G;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,iBAAiB,CAAwB,MAAyB,EAAE,KAA0B;IAC5G,MAAM,EAAC,QAAQ,EAAC,GAAG,MAAM,CAAC;IAC1B,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC;IAC5D,MAAM,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,CAAC;IACrD,MAAM,QAAQ,GAAG,mBAAmB,CAAC;QACnC,UAAU;QACV,cAAc,EAAE,iBAAiB,KAAK,SAAS;QAC/C,UAAU,EAAE,KAAK,CAAC,UAAU;KAC7B,CAAC,CAAC;IAEH,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC;QACnC,SAAS,EAAE,iBAAkB,CAAC,SAAS;QACvC,QAAQ,EAAE,iBAAkB,CAAC,QAAQ;QACrC,IAAI,EAAE,iBAAkB,CAAC,IAAI;QAC7B,QAAQ;KACT,CAAC,CAAC;IAEH,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC3B,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,gCAAgC;IAChC,MAAM,YAAY,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC/C,OAAO,qBAAqB,CAAI,YAAY,EAAE,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;AAC9F,CAAC"}
@@ -3,6 +3,44 @@
3
3
  *
4
4
  * @module clients/error-utils
5
5
  */
6
+ /**
7
+ * Builds the user-facing guidance shown when an instance has OCAPI deprecated.
8
+ *
9
+ * Pass the SCAPI scope(s) the failed operation requires to name them in the
10
+ * message (e.g. an operation needing `sfcc.scripts.rw` tells the user exactly
11
+ * which scope to add). Omit `requiredScopes` for operations that have no SCAPI
12
+ * equivalent — the message then uses the generic `sfcc.*` phrasing.
13
+ */
14
+ export declare function ocapiDeprecatedMessage(requiredScopes?: string[]): string;
15
+ /**
16
+ * Generic OCAPI deprecation message (no specific scope named). Convenience for
17
+ * call sites that surface the guidance directly without an operation scope.
18
+ */
19
+ export declare const OCAPI_DEPRECATED_MESSAGE: string;
20
+ /**
21
+ * Returns true if an API error object is an OCAPI deprecation fault
22
+ * (`fault.type === 'OcapiDeprecatedException'`).
23
+ *
24
+ * Detection keys off the structured `fault.type`, not the message text, so it
25
+ * is robust to message wording changes. Used to convert the opaque OCAPI 403
26
+ * into actionable "configure SCAPI" guidance at every OCAPI-terminal site.
27
+ */
28
+ export declare function isOcapiDeprecatedFault(error: unknown): boolean;
29
+ /**
30
+ * Error thrown when an OCAPI operation fails because OCAPI is deprecated for
31
+ * the instance. Carries actionable SCAPI-setup guidance — including the exact
32
+ * scope the failed operation needs, when supplied — so the CLI surfaces a
33
+ * helpful message instead of an opaque "Failed to ..." line.
34
+ *
35
+ * Thrown by OCAPI-terminal operations (those with no SCAPI fallback, or whose
36
+ * SCAPI path was already exhausted) when {@link isOcapiDeprecatedFault} matches.
37
+ */
38
+ export declare class OcapiDeprecatedError extends Error {
39
+ constructor(options?: {
40
+ cause?: unknown;
41
+ requiredScopes?: string[];
42
+ });
43
+ }
6
44
  /**
7
45
  * Extract a clean error message from an API error response.
8
46
  *
@@ -33,3 +71,27 @@ export declare function getApiErrorMessage(error: unknown, response: Response |
33
71
  status: number;
34
72
  statusText: string;
35
73
  }): string;
74
+ /**
75
+ * Throws a well-formed Error for a failed OCAPI call.
76
+ *
77
+ * Centralizes OCAPI-terminal error handling so every call site behaves
78
+ * consistently:
79
+ * - OCAPI deprecation faults become an {@link OcapiDeprecatedError} with
80
+ * actionable SCAPI-setup guidance, naming `requiredScopes` when the operation
81
+ * has a SCAPI equivalent.
82
+ * - Everything else throws `Error(`${prefix}: ${message}`)` where `message`
83
+ * is the fault text from {@link getApiErrorMessage}.
84
+ *
85
+ * The original `error` is always attached as `cause` for debug logging.
86
+ *
87
+ * @param error - The error object from an openapi-fetch result.
88
+ * @param response - The HTTP response (for status fallback).
89
+ * @param prefix - Operation-specific prefix, e.g. `'Failed to list code versions'`.
90
+ * @param requiredScopes - SCAPI scope(s) the equivalent operation needs, named
91
+ * in the deprecation message. Omit for OCAPI-only operations.
92
+ * @throws Always throws — return type is `never`.
93
+ */
94
+ export declare function throwOcapiError(error: unknown, response: Response | {
95
+ status: number;
96
+ statusText: string;
97
+ }, prefix: string, requiredScopes?: string[]): never;