@salesforce/b2c-tooling-sdk 1.9.0 → 1.11.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 (649) hide show
  1. package/data/content-schemas/componenttype.json +37 -0
  2. package/dist/esm/config/dw-json.d.ts +9 -2
  3. package/dist/esm/config/dw-json.js.map +1 -1
  4. package/dist/esm/config/index.d.ts +2 -2
  5. package/dist/esm/config/index.js +1 -1
  6. package/dist/esm/config/index.js.map +1 -1
  7. package/dist/esm/config/mapping.d.ts +7 -1
  8. package/dist/esm/config/mapping.js +10 -0
  9. package/dist/esm/config/mapping.js.map +1 -1
  10. package/dist/esm/config/sources/package-json-source.js +1 -0
  11. package/dist/esm/config/sources/package-json-source.js.map +1 -1
  12. package/dist/esm/config/types.d.ts +23 -2
  13. package/dist/esm/operations/content/validate.js +46 -4
  14. package/dist/esm/operations/content/validate.js.map +1 -1
  15. package/dist/esm/operations/jobs/site-archive.d.ts +12 -0
  16. package/dist/esm/operations/jobs/site-archive.js +107 -3
  17. package/dist/esm/operations/jobs/site-archive.js.map +1 -1
  18. package/package.json +73 -285
  19. package/dist/cjs/auth/api-key.d.ts +0 -28
  20. package/dist/cjs/auth/api-key.js +0 -45
  21. package/dist/cjs/auth/api-key.js.map +0 -1
  22. package/dist/cjs/auth/basic.d.ts +0 -7
  23. package/dist/cjs/auth/basic.js +0 -20
  24. package/dist/cjs/auth/basic.js.map +0 -1
  25. package/dist/cjs/auth/index.d.ts +0 -74
  26. package/dist/cjs/auth/index.js +0 -76
  27. package/dist/cjs/auth/index.js.map +0 -1
  28. package/dist/cjs/auth/jwt-utils.d.ts +0 -25
  29. package/dist/cjs/auth/jwt-utils.js +0 -66
  30. package/dist/cjs/auth/jwt-utils.js.map +0 -1
  31. package/dist/cjs/auth/middleware.d.ts +0 -196
  32. package/dist/cjs/auth/middleware.js +0 -190
  33. package/dist/cjs/auth/middleware.js.map +0 -1
  34. package/dist/cjs/auth/oauth-implicit.d.ts +0 -89
  35. package/dist/cjs/auth/oauth-implicit.js +0 -350
  36. package/dist/cjs/auth/oauth-implicit.js.map +0 -1
  37. package/dist/cjs/auth/oauth-jwt.d.ts +0 -99
  38. package/dist/cjs/auth/oauth-jwt.js +0 -343
  39. package/dist/cjs/auth/oauth-jwt.js.map +0 -1
  40. package/dist/cjs/auth/oauth.d.ts +0 -88
  41. package/dist/cjs/auth/oauth.js +0 -252
  42. package/dist/cjs/auth/oauth.js.map +0 -1
  43. package/dist/cjs/auth/resolve.d.ts +0 -100
  44. package/dist/cjs/auth/resolve.js +0 -175
  45. package/dist/cjs/auth/resolve.js.map +0 -1
  46. package/dist/cjs/auth/stateful-oauth-strategy.d.ts +0 -39
  47. package/dist/cjs/auth/stateful-oauth-strategy.js +0 -130
  48. package/dist/cjs/auth/stateful-oauth-strategy.js.map +0 -1
  49. package/dist/cjs/auth/stateful-store.d.ts +0 -49
  50. package/dist/cjs/auth/stateful-store.js +0 -166
  51. package/dist/cjs/auth/stateful-store.js.map +0 -1
  52. package/dist/cjs/auth/types.d.ts +0 -124
  53. package/dist/cjs/auth/types.js +0 -8
  54. package/dist/cjs/auth/types.js.map +0 -1
  55. package/dist/cjs/cli/am-command.d.ts +0 -74
  56. package/dist/cjs/cli/am-command.js +0 -199
  57. package/dist/cjs/cli/am-command.js.map +0 -1
  58. package/dist/cjs/cli/base-command.d.ts +0 -232
  59. package/dist/cjs/cli/base-command.js +0 -695
  60. package/dist/cjs/cli/base-command.js.map +0 -1
  61. package/dist/cjs/cli/cartridge-command.d.ts +0 -67
  62. package/dist/cjs/cli/cartridge-command.js +0 -146
  63. package/dist/cjs/cli/cartridge-command.js.map +0 -1
  64. package/dist/cjs/cli/cartridge-providers.d.ts +0 -149
  65. package/dist/cjs/cli/cartridge-providers.js +0 -103
  66. package/dist/cjs/cli/cartridge-providers.js.map +0 -1
  67. package/dist/cjs/cli/columns.d.ts +0 -128
  68. package/dist/cjs/cli/columns.js +0 -128
  69. package/dist/cjs/cli/columns.js.map +0 -1
  70. package/dist/cjs/cli/config.d.ts +0 -159
  71. package/dist/cjs/cli/config.js +0 -185
  72. package/dist/cjs/cli/config.js.map +0 -1
  73. package/dist/cjs/cli/details.d.ts +0 -69
  74. package/dist/cjs/cli/details.js +0 -72
  75. package/dist/cjs/cli/details.js.map +0 -1
  76. package/dist/cjs/cli/hooks.d.ts +0 -324
  77. package/dist/cjs/cli/hooks.js +0 -3
  78. package/dist/cjs/cli/hooks.js.map +0 -1
  79. package/dist/cjs/cli/index.d.ts +0 -108
  80. package/dist/cjs/cli/index.js +0 -111
  81. package/dist/cjs/cli/index.js.map +0 -1
  82. package/dist/cjs/cli/instance-command.d.ts +0 -131
  83. package/dist/cjs/cli/instance-command.js +0 -214
  84. package/dist/cjs/cli/instance-command.js.map +0 -1
  85. package/dist/cjs/cli/job-command.d.ts +0 -32
  86. package/dist/cjs/cli/job-command.js +0 -60
  87. package/dist/cjs/cli/job-command.js.map +0 -1
  88. package/dist/cjs/cli/lifecycle.d.ts +0 -189
  89. package/dist/cjs/cli/lifecycle.js +0 -130
  90. package/dist/cjs/cli/lifecycle.js.map +0 -1
  91. package/dist/cjs/cli/mrt-command.d.ts +0 -57
  92. package/dist/cjs/cli/mrt-command.js +0 -95
  93. package/dist/cjs/cli/mrt-command.js.map +0 -1
  94. package/dist/cjs/cli/oauth-command.d.ts +0 -122
  95. package/dist/cjs/cli/oauth-command.js +0 -311
  96. package/dist/cjs/cli/oauth-command.js.map +0 -1
  97. package/dist/cjs/cli/ods-command.d.ts +0 -97
  98. package/dist/cjs/cli/ods-command.js +0 -136
  99. package/dist/cjs/cli/ods-command.js.map +0 -1
  100. package/dist/cjs/cli/table.d.ts +0 -113
  101. package/dist/cjs/cli/table.js +0 -175
  102. package/dist/cjs/cli/table.js.map +0 -1
  103. package/dist/cjs/cli/webdav-command.d.ts +0 -110
  104. package/dist/cjs/cli/webdav-command.js +0 -106
  105. package/dist/cjs/cli/webdav-command.js.map +0 -1
  106. package/dist/cjs/clients/am-api.d.ts +0 -521
  107. package/dist/cjs/clients/am-api.js +0 -992
  108. package/dist/cjs/clients/am-api.js.map +0 -1
  109. package/dist/cjs/clients/am-apiclients-api.generated.d.ts +0 -803
  110. package/dist/cjs/clients/am-apiclients-api.generated.js +0 -6
  111. package/dist/cjs/clients/am-apiclients-api.generated.js.map +0 -1
  112. package/dist/cjs/clients/am-roles-api.generated.d.ts +0 -298
  113. package/dist/cjs/clients/am-roles-api.generated.js +0 -6
  114. package/dist/cjs/clients/am-roles-api.generated.js.map +0 -1
  115. package/dist/cjs/clients/am-users-api.generated.d.ts +0 -954
  116. package/dist/cjs/clients/am-users-api.generated.js +0 -6
  117. package/dist/cjs/clients/am-users-api.generated.js.map +0 -1
  118. package/dist/cjs/clients/cdn-zones.d.ts +0 -186
  119. package/dist/cjs/clients/cdn-zones.generated.d.ts +0 -8330
  120. package/dist/cjs/clients/cdn-zones.generated.js +0 -6
  121. package/dist/cjs/clients/cdn-zones.generated.js.map +0 -1
  122. package/dist/cjs/clients/cdn-zones.js +0 -103
  123. package/dist/cjs/clients/cdn-zones.js.map +0 -1
  124. package/dist/cjs/clients/cip.d.ts +0 -162
  125. package/dist/cjs/clients/cip.js +0 -572
  126. package/dist/cjs/clients/cip.js.map +0 -1
  127. package/dist/cjs/clients/custom-apis.d.ts +0 -174
  128. package/dist/cjs/clients/custom-apis.generated.d.ts +0 -202
  129. package/dist/cjs/clients/custom-apis.generated.js +0 -6
  130. package/dist/cjs/clients/custom-apis.generated.js.map +0 -1
  131. package/dist/cjs/clients/custom-apis.js +0 -140
  132. package/dist/cjs/clients/custom-apis.js.map +0 -1
  133. package/dist/cjs/clients/error-utils.d.ts +0 -35
  134. package/dist/cjs/clients/error-utils.js +0 -69
  135. package/dist/cjs/clients/error-utils.js.map +0 -1
  136. package/dist/cjs/clients/granular-replications.d.ts +0 -70
  137. package/dist/cjs/clients/granular-replications.generated.d.ts +0 -416
  138. package/dist/cjs/clients/granular-replications.generated.js +0 -6
  139. package/dist/cjs/clients/granular-replications.generated.js.map +0 -1
  140. package/dist/cjs/clients/granular-replications.js +0 -73
  141. package/dist/cjs/clients/granular-replications.js.map +0 -1
  142. package/dist/cjs/clients/index.d.ts +0 -145
  143. package/dist/cjs/clients/index.js +0 -137
  144. package/dist/cjs/clients/index.js.map +0 -1
  145. package/dist/cjs/clients/middleware-registry.d.ts +0 -184
  146. package/dist/cjs/clients/middleware-registry.js +0 -104
  147. package/dist/cjs/clients/middleware-registry.js.map +0 -1
  148. package/dist/cjs/clients/middleware.d.ts +0 -183
  149. package/dist/cjs/clients/middleware.js +0 -465
  150. package/dist/cjs/clients/middleware.js.map +0 -1
  151. package/dist/cjs/clients/mrt-b2c.d.ts +0 -138
  152. package/dist/cjs/clients/mrt-b2c.generated.d.ts +0 -176
  153. package/dist/cjs/clients/mrt-b2c.generated.js +0 -6
  154. package/dist/cjs/clients/mrt-b2c.generated.js.map +0 -1
  155. package/dist/cjs/clients/mrt-b2c.js +0 -86
  156. package/dist/cjs/clients/mrt-b2c.js.map +0 -1
  157. package/dist/cjs/clients/mrt.d.ts +0 -143
  158. package/dist/cjs/clients/mrt.generated.d.ts +0 -3806
  159. package/dist/cjs/clients/mrt.generated.js +0 -6
  160. package/dist/cjs/clients/mrt.generated.js.map +0 -1
  161. package/dist/cjs/clients/mrt.js +0 -93
  162. package/dist/cjs/clients/mrt.js.map +0 -1
  163. package/dist/cjs/clients/ocapi.d.ts +0 -128
  164. package/dist/cjs/clients/ocapi.generated.d.ts +0 -26052
  165. package/dist/cjs/clients/ocapi.generated.js +0 -6
  166. package/dist/cjs/clients/ocapi.generated.js.map +0 -1
  167. package/dist/cjs/clients/ocapi.js +0 -78
  168. package/dist/cjs/clients/ocapi.js.map +0 -1
  169. package/dist/cjs/clients/ods.d.ts +0 -160
  170. package/dist/cjs/clients/ods.generated.d.ts +0 -2860
  171. package/dist/cjs/clients/ods.generated.js +0 -6
  172. package/dist/cjs/clients/ods.generated.js.map +0 -1
  173. package/dist/cjs/clients/ods.js +0 -103
  174. package/dist/cjs/clients/ods.js.map +0 -1
  175. package/dist/cjs/clients/scapi-schemas.d.ts +0 -161
  176. package/dist/cjs/clients/scapi-schemas.generated.d.ts +0 -328
  177. package/dist/cjs/clients/scapi-schemas.generated.js +0 -6
  178. package/dist/cjs/clients/scapi-schemas.generated.js.map +0 -1
  179. package/dist/cjs/clients/scapi-schemas.js +0 -98
  180. package/dist/cjs/clients/scapi-schemas.js.map +0 -1
  181. package/dist/cjs/clients/slas-admin.d.ts +0 -132
  182. package/dist/cjs/clients/slas-admin.generated.d.ts +0 -1434
  183. package/dist/cjs/clients/slas-admin.generated.js +0 -6
  184. package/dist/cjs/clients/slas-admin.generated.js.map +0 -1
  185. package/dist/cjs/clients/slas-admin.js +0 -79
  186. package/dist/cjs/clients/slas-admin.js.map +0 -1
  187. package/dist/cjs/clients/tls-dispatcher.d.ts +0 -42
  188. package/dist/cjs/clients/tls-dispatcher.js +0 -107
  189. package/dist/cjs/clients/tls-dispatcher.js.map +0 -1
  190. package/dist/cjs/clients/user-agent.d.ts +0 -43
  191. package/dist/cjs/clients/user-agent.js +0 -87
  192. package/dist/cjs/clients/user-agent.js.map +0 -1
  193. package/dist/cjs/clients/webdav.d.ts +0 -186
  194. package/dist/cjs/clients/webdav.js +0 -395
  195. package/dist/cjs/clients/webdav.js.map +0 -1
  196. package/dist/cjs/config/config-source-registry.d.ts +0 -115
  197. package/dist/cjs/config/config-source-registry.js +0 -103
  198. package/dist/cjs/config/config-source-registry.js.map +0 -1
  199. package/dist/cjs/config/dw-json.d.ts +0 -267
  200. package/dist/cjs/config/dw-json.js +0 -333
  201. package/dist/cjs/config/dw-json.js.map +0 -1
  202. package/dist/cjs/config/index.d.ts +0 -100
  203. package/dist/cjs/config/index.js +0 -110
  204. package/dist/cjs/config/index.js.map +0 -1
  205. package/dist/cjs/config/instance-manager.d.ts +0 -97
  206. package/dist/cjs/config/instance-manager.js +0 -166
  207. package/dist/cjs/config/instance-manager.js.map +0 -1
  208. package/dist/cjs/config/mapping.d.ts +0 -193
  209. package/dist/cjs/config/mapping.js +0 -530
  210. package/dist/cjs/config/mapping.js.map +0 -1
  211. package/dist/cjs/config/resolved-config.d.ts +0 -29
  212. package/dist/cjs/config/resolved-config.js +0 -81
  213. package/dist/cjs/config/resolved-config.js.map +0 -1
  214. package/dist/cjs/config/resolver.d.ts +0 -191
  215. package/dist/cjs/config/resolver.js +0 -406
  216. package/dist/cjs/config/resolver.js.map +0 -1
  217. package/dist/cjs/config/sources/dw-json-source.d.ts +0 -27
  218. package/dist/cjs/config/sources/dw-json-source.js +0 -106
  219. package/dist/cjs/config/sources/dw-json-source.js.map +0 -1
  220. package/dist/cjs/config/sources/env-source.d.ts +0 -32
  221. package/dist/cjs/config/sources/env-source.js +0 -116
  222. package/dist/cjs/config/sources/env-source.js.map +0 -1
  223. package/dist/cjs/config/sources/index.d.ts +0 -9
  224. package/dist/cjs/config/sources/index.js +0 -15
  225. package/dist/cjs/config/sources/index.js.map +0 -1
  226. package/dist/cjs/config/sources/mobify-source.d.ts +0 -25
  227. package/dist/cjs/config/sources/mobify-source.js +0 -84
  228. package/dist/cjs/config/sources/mobify-source.js.map +0 -1
  229. package/dist/cjs/config/sources/package-json-source.d.ts +0 -14
  230. package/dist/cjs/config/sources/package-json-source.js +0 -96
  231. package/dist/cjs/config/sources/package-json-source.js.map +0 -1
  232. package/dist/cjs/config/types.d.ts +0 -407
  233. package/dist/cjs/config/types.js +0 -2
  234. package/dist/cjs/config/types.js.map +0 -1
  235. package/dist/cjs/defaults.d.ts +0 -36
  236. package/dist/cjs/defaults.js +0 -54
  237. package/dist/cjs/defaults.js.map +0 -1
  238. package/dist/cjs/discovery/detector.d.ts +0 -75
  239. package/dist/cjs/discovery/detector.js +0 -108
  240. package/dist/cjs/discovery/detector.js.map +0 -1
  241. package/dist/cjs/discovery/index.d.ts +0 -63
  242. package/dist/cjs/discovery/index.js +0 -70
  243. package/dist/cjs/discovery/index.js.map +0 -1
  244. package/dist/cjs/discovery/patterns/cartridges.d.ts +0 -16
  245. package/dist/cjs/discovery/patterns/cartridges.js +0 -16
  246. package/dist/cjs/discovery/patterns/cartridges.js.map +0 -1
  247. package/dist/cjs/discovery/patterns/index.d.ts +0 -21
  248. package/dist/cjs/discovery/patterns/index.js +0 -16
  249. package/dist/cjs/discovery/patterns/index.js.map +0 -1
  250. package/dist/cjs/discovery/patterns/pwa-kit.d.ts +0 -15
  251. package/dist/cjs/discovery/patterns/pwa-kit.js +0 -26
  252. package/dist/cjs/discovery/patterns/pwa-kit.js.map +0 -1
  253. package/dist/cjs/discovery/patterns/sfra.d.ts +0 -34
  254. package/dist/cjs/discovery/patterns/sfra.js +0 -50
  255. package/dist/cjs/discovery/patterns/sfra.js.map +0 -1
  256. package/dist/cjs/discovery/patterns/storefront-next.d.ts +0 -10
  257. package/dist/cjs/discovery/patterns/storefront-next.js +0 -65
  258. package/dist/cjs/discovery/patterns/storefront-next.js.map +0 -1
  259. package/dist/cjs/discovery/types.d.ts +0 -47
  260. package/dist/cjs/discovery/types.js +0 -12
  261. package/dist/cjs/discovery/types.js.map +0 -1
  262. package/dist/cjs/discovery/utils.d.ts +0 -44
  263. package/dist/cjs/discovery/utils.js +0 -82
  264. package/dist/cjs/discovery/utils.js.map +0 -1
  265. package/dist/cjs/docs/download.d.ts +0 -45
  266. package/dist/cjs/docs/download.js +0 -96
  267. package/dist/cjs/docs/download.js.map +0 -1
  268. package/dist/cjs/docs/index.d.ts +0 -44
  269. package/dist/cjs/docs/index.js +0 -12
  270. package/dist/cjs/docs/index.js.map +0 -1
  271. package/dist/cjs/docs/schema.d.ts +0 -26
  272. package/dist/cjs/docs/schema.js +0 -92
  273. package/dist/cjs/docs/schema.js.map +0 -1
  274. package/dist/cjs/docs/search.d.ts +0 -67
  275. package/dist/cjs/docs/search.js +0 -128
  276. package/dist/cjs/docs/search.js.map +0 -1
  277. package/dist/cjs/docs/types.d.ts +0 -64
  278. package/dist/cjs/docs/types.js +0 -15
  279. package/dist/cjs/docs/types.js.map +0 -1
  280. package/dist/cjs/errors/http-error.d.ts +0 -34
  281. package/dist/cjs/errors/http-error.js +0 -45
  282. package/dist/cjs/errors/http-error.js.map +0 -1
  283. package/dist/cjs/errors/index.d.ts +0 -12
  284. package/dist/cjs/errors/index.js +0 -18
  285. package/dist/cjs/errors/index.js.map +0 -1
  286. package/dist/cjs/i18n/index.d.ts +0 -144
  287. package/dist/cjs/i18n/index.js +0 -245
  288. package/dist/cjs/i18n/index.js.map +0 -1
  289. package/dist/cjs/i18n/locales/de.d.ts +0 -13
  290. package/dist/cjs/i18n/locales/de.js +0 -19
  291. package/dist/cjs/i18n/locales/de.js.map +0 -1
  292. package/dist/cjs/i18n/locales/index.d.ts +0 -28
  293. package/dist/cjs/i18n/locales/index.js +0 -25
  294. package/dist/cjs/i18n/locales/index.js.map +0 -1
  295. package/dist/cjs/index.d.ts +0 -33
  296. package/dist/cjs/index.js +0 -41
  297. package/dist/cjs/index.js.map +0 -1
  298. package/dist/cjs/instance/index.d.ts +0 -136
  299. package/dist/cjs/instance/index.js +0 -131
  300. package/dist/cjs/instance/index.js.map +0 -1
  301. package/dist/cjs/logging/index.d.ts +0 -116
  302. package/dist/cjs/logging/index.js +0 -121
  303. package/dist/cjs/logging/index.js.map +0 -1
  304. package/dist/cjs/logging/logger.d.ts +0 -9
  305. package/dist/cjs/logging/logger.js +0 -138
  306. package/dist/cjs/logging/logger.js.map +0 -1
  307. package/dist/cjs/logging/types.d.ts +0 -45
  308. package/dist/cjs/logging/types.js +0 -10
  309. package/dist/cjs/logging/types.js.map +0 -1
  310. package/dist/cjs/operations/bm-roles/index.d.ts +0 -52
  311. package/dist/cjs/operations/bm-roles/index.js +0 -57
  312. package/dist/cjs/operations/bm-roles/index.js.map +0 -1
  313. package/dist/cjs/operations/bm-roles/roles.d.ts +0 -155
  314. package/dist/cjs/operations/bm-roles/roles.js +0 -194
  315. package/dist/cjs/operations/bm-roles/roles.js.map +0 -1
  316. package/dist/cjs/operations/bm-users/index.d.ts +0 -50
  317. package/dist/cjs/operations/bm-users/index.js +0 -55
  318. package/dist/cjs/operations/bm-users/index.js.map +0 -1
  319. package/dist/cjs/operations/bm-users/users.d.ts +0 -189
  320. package/dist/cjs/operations/bm-users/users.js +0 -229
  321. package/dist/cjs/operations/bm-users/users.js.map +0 -1
  322. package/dist/cjs/operations/cap/index.d.ts +0 -56
  323. package/dist/cjs/operations/cap/index.js +0 -57
  324. package/dist/cjs/operations/cap/index.js.map +0 -1
  325. package/dist/cjs/operations/cap/install.d.ts +0 -53
  326. package/dist/cjs/operations/cap/install.js +0 -181
  327. package/dist/cjs/operations/cap/install.js.map +0 -1
  328. package/dist/cjs/operations/cap/list.d.ts +0 -92
  329. package/dist/cjs/operations/cap/list.js +0 -230
  330. package/dist/cjs/operations/cap/list.js.map +0 -1
  331. package/dist/cjs/operations/cap/package.d.ts +0 -39
  332. package/dist/cjs/operations/cap/package.js +0 -77
  333. package/dist/cjs/operations/cap/package.js.map +0 -1
  334. package/dist/cjs/operations/cap/pull.d.ts +0 -21
  335. package/dist/cjs/operations/cap/pull.js +0 -77
  336. package/dist/cjs/operations/cap/pull.js.map +0 -1
  337. package/dist/cjs/operations/cap/uninstall.d.ts +0 -46
  338. package/dist/cjs/operations/cap/uninstall.js +0 -87
  339. package/dist/cjs/operations/cap/uninstall.js.map +0 -1
  340. package/dist/cjs/operations/cap/validate.d.ts +0 -47
  341. package/dist/cjs/operations/cap/validate.js +0 -235
  342. package/dist/cjs/operations/cap/validate.js.map +0 -1
  343. package/dist/cjs/operations/cip/index.d.ts +0 -35
  344. package/dist/cjs/operations/cip/index.js +0 -128
  345. package/dist/cjs/operations/cip/index.js.map +0 -1
  346. package/dist/cjs/operations/cip/reports.d.ts +0 -2
  347. package/dist/cjs/operations/cip/reports.js +0 -210
  348. package/dist/cjs/operations/cip/reports.js.map +0 -1
  349. package/dist/cjs/operations/cip/types.d.ts +0 -97
  350. package/dist/cjs/operations/cip/types.js +0 -7
  351. package/dist/cjs/operations/cip/types.js.map +0 -1
  352. package/dist/cjs/operations/code/cartridges.d.ts +0 -46
  353. package/dist/cjs/operations/code/cartridges.js +0 -69
  354. package/dist/cjs/operations/code/cartridges.js.map +0 -1
  355. package/dist/cjs/operations/code/deploy.d.ts +0 -121
  356. package/dist/cjs/operations/code/deploy.js +0 -255
  357. package/dist/cjs/operations/code/deploy.js.map +0 -1
  358. package/dist/cjs/operations/code/download.d.ts +0 -77
  359. package/dist/cjs/operations/code/download.js +0 -300
  360. package/dist/cjs/operations/code/download.js.map +0 -1
  361. package/dist/cjs/operations/code/index.d.ts +0 -74
  362. package/dist/cjs/operations/code/index.js +0 -80
  363. package/dist/cjs/operations/code/index.js.map +0 -1
  364. package/dist/cjs/operations/code/upload-files.d.ts +0 -47
  365. package/dist/cjs/operations/code/upload-files.js +0 -116
  366. package/dist/cjs/operations/code/upload-files.js.map +0 -1
  367. package/dist/cjs/operations/code/versions.d.ts +0 -99
  368. package/dist/cjs/operations/code/versions.js +0 -156
  369. package/dist/cjs/operations/code/versions.js.map +0 -1
  370. package/dist/cjs/operations/code/watch.d.ts +0 -58
  371. package/dist/cjs/operations/code/watch.js +0 -175
  372. package/dist/cjs/operations/code/watch.js.map +0 -1
  373. package/dist/cjs/operations/content/asset-query.d.ts +0 -22
  374. package/dist/cjs/operations/content/asset-query.js +0 -77
  375. package/dist/cjs/operations/content/asset-query.js.map +0 -1
  376. package/dist/cjs/operations/content/export.d.ts +0 -57
  377. package/dist/cjs/operations/content/export.js +0 -221
  378. package/dist/cjs/operations/content/export.js.map +0 -1
  379. package/dist/cjs/operations/content/index.d.ts +0 -56
  380. package/dist/cjs/operations/content/index.js +0 -60
  381. package/dist/cjs/operations/content/index.js.map +0 -1
  382. package/dist/cjs/operations/content/library.d.ts +0 -137
  383. package/dist/cjs/operations/content/library.js +0 -396
  384. package/dist/cjs/operations/content/library.js.map +0 -1
  385. package/dist/cjs/operations/content/types.d.ts +0 -144
  386. package/dist/cjs/operations/content/types.js +0 -7
  387. package/dist/cjs/operations/content/types.js.map +0 -1
  388. package/dist/cjs/operations/content/validate.d.ts +0 -64
  389. package/dist/cjs/operations/content/validate.js +0 -170
  390. package/dist/cjs/operations/content/validate.js.map +0 -1
  391. package/dist/cjs/operations/debug/dap-adapter.d.ts +0 -72
  392. package/dist/cjs/operations/debug/dap-adapter.js +0 -505
  393. package/dist/cjs/operations/debug/dap-adapter.js.map +0 -1
  394. package/dist/cjs/operations/debug/debug-session.d.ts +0 -51
  395. package/dist/cjs/operations/debug/debug-session.js +0 -234
  396. package/dist/cjs/operations/debug/debug-session.js.map +0 -1
  397. package/dist/cjs/operations/debug/index.d.ts +0 -20
  398. package/dist/cjs/operations/debug/index.js +0 -21
  399. package/dist/cjs/operations/debug/index.js.map +0 -1
  400. package/dist/cjs/operations/debug/projections.d.ts +0 -72
  401. package/dist/cjs/operations/debug/projections.js +0 -84
  402. package/dist/cjs/operations/debug/projections.js.map +0 -1
  403. package/dist/cjs/operations/debug/resolve-path.d.ts +0 -15
  404. package/dist/cjs/operations/debug/resolve-path.js +0 -52
  405. package/dist/cjs/operations/debug/resolve-path.js.map +0 -1
  406. package/dist/cjs/operations/debug/sdapi-client.d.ts +0 -44
  407. package/dist/cjs/operations/debug/sdapi-client.js +0 -169
  408. package/dist/cjs/operations/debug/sdapi-client.js.map +0 -1
  409. package/dist/cjs/operations/debug/source-mapping.d.ts +0 -13
  410. package/dist/cjs/operations/debug/source-mapping.js +0 -57
  411. package/dist/cjs/operations/debug/source-mapping.js.map +0 -1
  412. package/dist/cjs/operations/debug/types.d.ts +0 -95
  413. package/dist/cjs/operations/debug/types.js +0 -2
  414. package/dist/cjs/operations/debug/types.js.map +0 -1
  415. package/dist/cjs/operations/debug/variable-store.d.ts +0 -35
  416. package/dist/cjs/operations/debug/variable-store.js +0 -52
  417. package/dist/cjs/operations/debug/variable-store.js.map +0 -1
  418. package/dist/cjs/operations/jobs/index.d.ts +0 -66
  419. package/dist/cjs/operations/jobs/index.js +0 -72
  420. package/dist/cjs/operations/jobs/index.js.map +0 -1
  421. package/dist/cjs/operations/jobs/run.d.ts +0 -239
  422. package/dist/cjs/operations/jobs/run.js +0 -324
  423. package/dist/cjs/operations/jobs/run.js.map +0 -1
  424. package/dist/cjs/operations/jobs/site-archive.d.ts +0 -267
  425. package/dist/cjs/operations/jobs/site-archive.js +0 -423
  426. package/dist/cjs/operations/jobs/site-archive.js.map +0 -1
  427. package/dist/cjs/operations/logs/index.d.ts +0 -65
  428. package/dist/cjs/operations/logs/index.js +0 -73
  429. package/dist/cjs/operations/logs/index.js.map +0 -1
  430. package/dist/cjs/operations/logs/list.d.ts +0 -35
  431. package/dist/cjs/operations/logs/list.js +0 -144
  432. package/dist/cjs/operations/logs/list.js.map +0 -1
  433. package/dist/cjs/operations/logs/path-normalizer.d.ts +0 -82
  434. package/dist/cjs/operations/logs/path-normalizer.js +0 -190
  435. package/dist/cjs/operations/logs/path-normalizer.js.map +0 -1
  436. package/dist/cjs/operations/logs/tail.d.ts +0 -92
  437. package/dist/cjs/operations/logs/tail.js +0 -525
  438. package/dist/cjs/operations/logs/tail.js.map +0 -1
  439. package/dist/cjs/operations/logs/types.d.ts +0 -132
  440. package/dist/cjs/operations/logs/types.js +0 -7
  441. package/dist/cjs/operations/logs/types.js.map +0 -1
  442. package/dist/cjs/operations/mrt/access-control.d.ts +0 -192
  443. package/dist/cjs/operations/mrt/access-control.js +0 -152
  444. package/dist/cjs/operations/mrt/access-control.js.map +0 -1
  445. package/dist/cjs/operations/mrt/b2c-config.d.ts +0 -201
  446. package/dist/cjs/operations/mrt/b2c-config.js +0 -210
  447. package/dist/cjs/operations/mrt/b2c-config.js.map +0 -1
  448. package/dist/cjs/operations/mrt/bundle.d.ts +0 -114
  449. package/dist/cjs/operations/mrt/bundle.js +0 -166
  450. package/dist/cjs/operations/mrt/bundle.js.map +0 -1
  451. package/dist/cjs/operations/mrt/cache.d.ts +0 -80
  452. package/dist/cjs/operations/mrt/cache.js +0 -65
  453. package/dist/cjs/operations/mrt/cache.js.map +0 -1
  454. package/dist/cjs/operations/mrt/certificate.d.ts +0 -60
  455. package/dist/cjs/operations/mrt/certificate.js +0 -76
  456. package/dist/cjs/operations/mrt/certificate.js.map +0 -1
  457. package/dist/cjs/operations/mrt/deployment.d.ts +0 -157
  458. package/dist/cjs/operations/mrt/deployment.js +0 -109
  459. package/dist/cjs/operations/mrt/deployment.js.map +0 -1
  460. package/dist/cjs/operations/mrt/env-var.d.ts +0 -176
  461. package/dist/cjs/operations/mrt/env-var.js +0 -231
  462. package/dist/cjs/operations/mrt/env-var.js.map +0 -1
  463. package/dist/cjs/operations/mrt/env.d.ts +0 -491
  464. package/dist/cjs/operations/mrt/env.js +0 -425
  465. package/dist/cjs/operations/mrt/env.js.map +0 -1
  466. package/dist/cjs/operations/mrt/index.d.ts +0 -75
  467. package/dist/cjs/operations/mrt/index.js +0 -81
  468. package/dist/cjs/operations/mrt/index.js.map +0 -1
  469. package/dist/cjs/operations/mrt/member.d.ts +0 -281
  470. package/dist/cjs/operations/mrt/member.js +0 -244
  471. package/dist/cjs/operations/mrt/member.js.map +0 -1
  472. package/dist/cjs/operations/mrt/notification.d.ts +0 -252
  473. package/dist/cjs/operations/mrt/notification.js +0 -206
  474. package/dist/cjs/operations/mrt/notification.js.map +0 -1
  475. package/dist/cjs/operations/mrt/organization-member.d.ts +0 -68
  476. package/dist/cjs/operations/mrt/organization-member.js +0 -88
  477. package/dist/cjs/operations/mrt/organization-member.js.map +0 -1
  478. package/dist/cjs/operations/mrt/organization.d.ts +0 -80
  479. package/dist/cjs/operations/mrt/organization.js +0 -53
  480. package/dist/cjs/operations/mrt/organization.js.map +0 -1
  481. package/dist/cjs/operations/mrt/project.d.ts +0 -261
  482. package/dist/cjs/operations/mrt/project.js +0 -232
  483. package/dist/cjs/operations/mrt/project.js.map +0 -1
  484. package/dist/cjs/operations/mrt/push.d.ts +0 -290
  485. package/dist/cjs/operations/mrt/push.js +0 -288
  486. package/dist/cjs/operations/mrt/push.js.map +0 -1
  487. package/dist/cjs/operations/mrt/redirect.d.ts +0 -337
  488. package/dist/cjs/operations/mrt/redirect.js +0 -256
  489. package/dist/cjs/operations/mrt/redirect.js.map +0 -1
  490. package/dist/cjs/operations/mrt/tail-logs.d.ts +0 -130
  491. package/dist/cjs/operations/mrt/tail-logs.js +0 -224
  492. package/dist/cjs/operations/mrt/tail-logs.js.map +0 -1
  493. package/dist/cjs/operations/mrt/user.d.ts +0 -135
  494. package/dist/cjs/operations/mrt/user.js +0 -153
  495. package/dist/cjs/operations/mrt/user.js.map +0 -1
  496. package/dist/cjs/operations/ods/index.d.ts +0 -10
  497. package/dist/cjs/operations/ods/index.js +0 -14
  498. package/dist/cjs/operations/ods/index.js.map +0 -1
  499. package/dist/cjs/operations/ods/sandbox-lookup.d.ts +0 -63
  500. package/dist/cjs/operations/ods/sandbox-lookup.js +0 -130
  501. package/dist/cjs/operations/ods/sandbox-lookup.js.map +0 -1
  502. package/dist/cjs/operations/ods/wait-for-clone.d.ts +0 -46
  503. package/dist/cjs/operations/ods/wait-for-clone.js +0 -100
  504. package/dist/cjs/operations/ods/wait-for-clone.js.map +0 -1
  505. package/dist/cjs/operations/ods/wait-for-sandbox.d.ts +0 -64
  506. package/dist/cjs/operations/ods/wait-for-sandbox.js +0 -114
  507. package/dist/cjs/operations/ods/wait-for-sandbox.js.map +0 -1
  508. package/dist/cjs/operations/orgs/index.d.ts +0 -74
  509. package/dist/cjs/operations/orgs/index.js +0 -33
  510. package/dist/cjs/operations/orgs/index.js.map +0 -1
  511. package/dist/cjs/operations/roles/index.d.ts +0 -43
  512. package/dist/cjs/operations/roles/index.js +0 -48
  513. package/dist/cjs/operations/roles/index.js.map +0 -1
  514. package/dist/cjs/operations/sites/cartridges.d.ts +0 -114
  515. package/dist/cjs/operations/sites/cartridges.js +0 -378
  516. package/dist/cjs/operations/sites/cartridges.js.map +0 -1
  517. package/dist/cjs/operations/sites/index.d.ts +0 -46
  518. package/dist/cjs/operations/sites/index.js +0 -51
  519. package/dist/cjs/operations/sites/index.js.map +0 -1
  520. package/dist/cjs/operations/users/index.d.ts +0 -153
  521. package/dist/cjs/operations/users/index.js +0 -139
  522. package/dist/cjs/operations/users/index.js.map +0 -1
  523. package/dist/cjs/operations/util/zip.d.ts +0 -5
  524. package/dist/cjs/operations/util/zip.js +0 -25
  525. package/dist/cjs/operations/util/zip.js.map +0 -1
  526. package/dist/cjs/package.json +0 -1
  527. package/dist/cjs/plugins/discovery.d.ts +0 -46
  528. package/dist/cjs/plugins/discovery.js +0 -122
  529. package/dist/cjs/plugins/discovery.js.map +0 -1
  530. package/dist/cjs/plugins/index.d.ts +0 -26
  531. package/dist/cjs/plugins/index.js +0 -32
  532. package/dist/cjs/plugins/index.js.map +0 -1
  533. package/dist/cjs/plugins/loader.d.ts +0 -34
  534. package/dist/cjs/plugins/loader.js +0 -59
  535. package/dist/cjs/plugins/loader.js.map +0 -1
  536. package/dist/cjs/plugins/manager.d.ts +0 -70
  537. package/dist/cjs/plugins/manager.js +0 -173
  538. package/dist/cjs/plugins/manager.js.map +0 -1
  539. package/dist/cjs/safety/index.d.ts +0 -12
  540. package/dist/cjs/safety/index.js +0 -11
  541. package/dist/cjs/safety/index.js.map +0 -1
  542. package/dist/cjs/safety/safety-guard.d.ts +0 -92
  543. package/dist/cjs/safety/safety-guard.js +0 -270
  544. package/dist/cjs/safety/safety-guard.js.map +0 -1
  545. package/dist/cjs/safety/safety-middleware.d.ts +0 -130
  546. package/dist/cjs/safety/safety-middleware.js +0 -248
  547. package/dist/cjs/safety/safety-middleware.js.map +0 -1
  548. package/dist/cjs/safety/types.d.ts +0 -81
  549. package/dist/cjs/safety/types.js +0 -16
  550. package/dist/cjs/safety/types.js.map +0 -1
  551. package/dist/cjs/safety/with-confirmation.d.ts +0 -58
  552. package/dist/cjs/safety/with-confirmation.js +0 -67
  553. package/dist/cjs/safety/with-confirmation.js.map +0 -1
  554. package/dist/cjs/scaffold/engine.d.ts +0 -68
  555. package/dist/cjs/scaffold/engine.js +0 -149
  556. package/dist/cjs/scaffold/engine.js.map +0 -1
  557. package/dist/cjs/scaffold/executor.d.ts +0 -36
  558. package/dist/cjs/scaffold/executor.js +0 -293
  559. package/dist/cjs/scaffold/executor.js.map +0 -1
  560. package/dist/cjs/scaffold/index.d.ts +0 -76
  561. package/dist/cjs/scaffold/index.js +0 -23
  562. package/dist/cjs/scaffold/index.js.map +0 -1
  563. package/dist/cjs/scaffold/merge.d.ts +0 -63
  564. package/dist/cjs/scaffold/merge.js +0 -192
  565. package/dist/cjs/scaffold/merge.js.map +0 -1
  566. package/dist/cjs/scaffold/parameter-resolver.d.ts +0 -86
  567. package/dist/cjs/scaffold/parameter-resolver.js +0 -191
  568. package/dist/cjs/scaffold/parameter-resolver.js.map +0 -1
  569. package/dist/cjs/scaffold/registry.d.ts +0 -60
  570. package/dist/cjs/scaffold/registry.js +0 -225
  571. package/dist/cjs/scaffold/registry.js.map +0 -1
  572. package/dist/cjs/scaffold/sources.d.ts +0 -83
  573. package/dist/cjs/scaffold/sources.js +0 -236
  574. package/dist/cjs/scaffold/sources.js.map +0 -1
  575. package/dist/cjs/scaffold/types.d.ts +0 -282
  576. package/dist/cjs/scaffold/types.js +0 -14
  577. package/dist/cjs/scaffold/types.js.map +0 -1
  578. package/dist/cjs/scaffold/validation.d.ts +0 -81
  579. package/dist/cjs/scaffold/validation.js +0 -250
  580. package/dist/cjs/scaffold/validation.js.map +0 -1
  581. package/dist/cjs/scaffold/validators.d.ts +0 -33
  582. package/dist/cjs/scaffold/validators.js +0 -340
  583. package/dist/cjs/scaffold/validators.js.map +0 -1
  584. package/dist/cjs/schemas/collapse.d.ts +0 -150
  585. package/dist/cjs/schemas/collapse.js +0 -180
  586. package/dist/cjs/schemas/collapse.js.map +0 -1
  587. package/dist/cjs/schemas/index.d.ts +0 -58
  588. package/dist/cjs/schemas/index.js +0 -65
  589. package/dist/cjs/schemas/index.js.map +0 -1
  590. package/dist/cjs/schemas/security-schemes.d.ts +0 -26
  591. package/dist/cjs/schemas/security-schemes.js +0 -44
  592. package/dist/cjs/schemas/security-schemes.js.map +0 -1
  593. package/dist/cjs/skills/agents.d.ts +0 -42
  594. package/dist/cjs/skills/agents.js +0 -200
  595. package/dist/cjs/skills/agents.js.map +0 -1
  596. package/dist/cjs/skills/github.d.ts +0 -31
  597. package/dist/cjs/skills/github.js +0 -450
  598. package/dist/cjs/skills/github.js.map +0 -1
  599. package/dist/cjs/skills/index.d.ts +0 -43
  600. package/dist/cjs/skills/index.js +0 -16
  601. package/dist/cjs/skills/index.js.map +0 -1
  602. package/dist/cjs/skills/installer.d.ts +0 -35
  603. package/dist/cjs/skills/installer.js +0 -182
  604. package/dist/cjs/skills/installer.js.map +0 -1
  605. package/dist/cjs/skills/parser.d.ts +0 -39
  606. package/dist/cjs/skills/parser.js +0 -126
  607. package/dist/cjs/skills/parser.js.map +0 -1
  608. package/dist/cjs/skills/sources.d.ts +0 -4
  609. package/dist/cjs/skills/sources.js +0 -52
  610. package/dist/cjs/skills/sources.js.map +0 -1
  611. package/dist/cjs/skills/types.d.ts +0 -153
  612. package/dist/cjs/skills/types.js +0 -7
  613. package/dist/cjs/skills/types.js.map +0 -1
  614. package/dist/cjs/slas/index.d.ts +0 -12
  615. package/dist/cjs/slas/index.js +0 -8
  616. package/dist/cjs/slas/index.js.map +0 -1
  617. package/dist/cjs/slas/pkce.d.ts +0 -13
  618. package/dist/cjs/slas/pkce.js +0 -35
  619. package/dist/cjs/slas/pkce.js.map +0 -1
  620. package/dist/cjs/slas/token.d.ts +0 -24
  621. package/dist/cjs/slas/token.js +0 -261
  622. package/dist/cjs/slas/token.js.map +0 -1
  623. package/dist/cjs/slas/types.d.ts +0 -43
  624. package/dist/cjs/slas/types.js +0 -7
  625. package/dist/cjs/slas/types.js.map +0 -1
  626. package/dist/cjs/telemetry/index.d.ts +0 -34
  627. package/dist/cjs/telemetry/index.js +0 -32
  628. package/dist/cjs/telemetry/index.js.map +0 -1
  629. package/dist/cjs/telemetry/telemetry.d.ts +0 -88
  630. package/dist/cjs/telemetry/telemetry.js +0 -298
  631. package/dist/cjs/telemetry/telemetry.js.map +0 -1
  632. package/dist/cjs/telemetry/types.d.ts +0 -62
  633. package/dist/cjs/telemetry/types.js +0 -7
  634. package/dist/cjs/telemetry/types.js.map +0 -1
  635. package/dist/cjs/test-utils/config-isolation.d.ts +0 -2
  636. package/dist/cjs/test-utils/config-isolation.js +0 -48
  637. package/dist/cjs/test-utils/config-isolation.js.map +0 -1
  638. package/dist/cjs/test-utils/index.d.ts +0 -1
  639. package/dist/cjs/test-utils/index.js +0 -7
  640. package/dist/cjs/test-utils/index.js.map +0 -1
  641. package/dist/cjs/ux/confirm.d.ts +0 -14
  642. package/dist/cjs/ux/confirm.js +0 -36
  643. package/dist/cjs/ux/confirm.js.map +0 -1
  644. package/dist/cjs/ux/index.d.ts +0 -1
  645. package/dist/cjs/ux/index.js +0 -7
  646. package/dist/cjs/ux/index.js.map +0 -1
  647. package/dist/cjs/version.d.ts +0 -14
  648. package/dist/cjs/version.js +0 -29
  649. package/dist/cjs/version.js.map +0 -1
@@ -1,183 +0,0 @@
1
- /**
2
- * Shared middleware for openapi-fetch clients.
3
- *
4
- * Provides reusable authentication and logging middleware that can be
5
- * used across all API clients (OCAPI, SLAS, SCAPI, etc.).
6
- *
7
- * @module clients/middleware
8
- */
9
- import type { Middleware } from 'openapi-fetch';
10
- import type { AuthStrategy } from '../auth/types.js';
11
- /**
12
- * Configuration for extra parameters middleware.
13
- */
14
- export interface ExtraParamsConfig {
15
- /** Extra query parameters to add to the URL */
16
- query?: Record<string, string | number | boolean | undefined>;
17
- /** Extra body fields to merge into JSON request bodies */
18
- body?: Record<string, unknown>;
19
- /** Extra HTTP headers to add to all requests */
20
- headers?: Record<string, string>;
21
- }
22
- /**
23
- * Creates authentication middleware for openapi-fetch.
24
- *
25
- * This middleware intercepts requests and adds OAuth authentication headers
26
- * using the provided AuthStrategy. It also handles 401 responses by invalidating
27
- * the token and retrying the request once with a fresh token.
28
- *
29
- * @param auth - The authentication strategy to use
30
- * @returns Middleware that adds auth headers to requests and retries on 401
31
- */
32
- export declare function createAuthMiddleware(auth: AuthStrategy): Middleware;
33
- /**
34
- * Configuration for rate limiting middleware.
35
- */
36
- export interface RateLimitMiddlewareConfig {
37
- /**
38
- * Maximum number of retry attempts when a rate limit response is received.
39
- * Defaults to 3.
40
- */
41
- maxRetries?: number;
42
- /**
43
- * Base delay in milliseconds used for exponential backoff when no Retry-After
44
- * header is present. Defaults to 1000ms.
45
- */
46
- baseDelayMs?: number;
47
- /**
48
- * Maximum delay in milliseconds between retries. Defaults to 30000ms.
49
- */
50
- maxDelayMs?: number;
51
- /**
52
- * HTTP status codes that should trigger rate limit handling.
53
- * Defaults to [429]. 503 is often used for overload, but is not included
54
- * by default to avoid surprising retries for maintenance windows.
55
- */
56
- statusCodes?: number[];
57
- /**
58
- * Optional log prefix (e.g., 'MRT') used in log messages.
59
- */
60
- prefix?: string;
61
- /**
62
- * Optional fetch implementation used for retries when the middleware context
63
- * does not provide a re-dispatch helper.
64
- */
65
- fetch?: (request: Request) => Promise<Response>;
66
- }
67
- /**
68
- * Creates rate limiting middleware for openapi-fetch clients.
69
- *
70
- * This middleware inspects responses for rate-limit status codes (by default
71
- * 429 Too Many Requests), uses the Retry-After header when present to
72
- * determine a delay, and retries the request up to a configurable limit.
73
- *
74
- * The middleware is generic and can be used by MRT and other clients. It does
75
- * not currently read CLI configuration directly; callers should pass
76
- * configuration via the factory function.
77
- */
78
- export declare function createRateLimitMiddleware(config?: RateLimitMiddlewareConfig): Middleware;
79
- /**
80
- * Configuration for logging middleware.
81
- */
82
- export interface LoggingMiddlewareConfig {
83
- /**
84
- * Prefix for log messages (e.g., 'OCAPI', 'SLAS', 'MRT').
85
- */
86
- prefix?: string;
87
- /**
88
- * Body keys to mask in logs (replaced with '...' placeholder).
89
- * Useful for large payloads like base64-encoded file data.
90
- * @example ['data', 'password', 'secret']
91
- */
92
- maskBodyKeys?: string[];
93
- }
94
- /**
95
- * Creates logging middleware for openapi-fetch clients.
96
- *
97
- * Logs request/response details at debug and trace levels.
98
- *
99
- * @param config - Logging configuration or prefix string for backwards compatibility
100
- * @returns Middleware that logs requests and responses
101
- *
102
- * @example
103
- * // Simple usage with just a prefix
104
- * client.use(createLoggingMiddleware('OCAPI'));
105
- *
106
- * @example
107
- * // With body masking for large payloads
108
- * client.use(createLoggingMiddleware({
109
- * prefix: 'MRT',
110
- * maskBodyKeys: ['data'] // Masks base64-encoded bundle data
111
- * }));
112
- */
113
- export declare function createLoggingMiddleware(config?: string | LoggingMiddlewareConfig): Middleware;
114
- /**
115
- * Creates middleware that adds extra query parameters and/or body fields to requests.
116
- *
117
- * This is useful for internal/power-user scenarios where you need to pass
118
- * parameters that aren't in the typed OpenAPI schema.
119
- *
120
- * @param config - Configuration with extra query and/or body params
121
- * @returns Middleware that adds extra params to requests
122
- *
123
- * @example
124
- * ```typescript
125
- * const client = createOdsClient(config, auth);
126
- * client.use(createExtraParamsMiddleware({
127
- * query: { debug: 'true', internal_flag: '1' },
128
- * body: { _internal: { trace: true } }
129
- * }));
130
- * ```
131
- */
132
- /**
133
- * Safety middleware using SafetyGuard.
134
- */
135
- import type { SafetyGuard } from '../safety/safety-guard.js';
136
- /**
137
- * Creates safety middleware that evaluates HTTP requests against a SafetyGuard.
138
- *
139
- * This middleware intercepts HTTP requests BEFORE they are sent. It evaluates
140
- * each request against the guard's rules and level, throwing:
141
- * - {@link SafetyBlockedError} for blocked operations
142
- * - {@link SafetyConfirmationRequired} for operations needing confirmation
143
- *
144
- * Callers that want confirmation support should wrap their SDK calls with
145
- * {@link withSafetyConfirmation}. Otherwise, both error types propagate as errors.
146
- *
147
- * @param guard - The SafetyGuard instance
148
- * @returns Middleware that evaluates operations against safety rules
149
- *
150
- * @example
151
- * ```typescript
152
- * const guard = new SafetyGuard({ level: 'NO_DELETE' });
153
- * const client = createOdsClient(config, auth);
154
- * client.use(createSafetyMiddleware(guard));
155
- * ```
156
- */
157
- export declare function createSafetyMiddleware(guard: SafetyGuard): Middleware;
158
- /**
159
- * Configuration for User-Agent middleware.
160
- */
161
- export interface UserAgentConfig {
162
- /**
163
- * The User-Agent string to set on requests.
164
- */
165
- userAgent: string;
166
- }
167
- /**
168
- * Creates middleware that sets the User-Agent header on requests.
169
- *
170
- * Sets both the standard `User-Agent` header and a custom `sfdc_user_agent` header
171
- * with the same value.
172
- *
173
- * @param config - Configuration with the User-Agent string
174
- * @returns Middleware that sets the User-Agent headers
175
- *
176
- * @example
177
- * ```typescript
178
- * const client = createOcapiClient(config, auth);
179
- * client.use(createUserAgentMiddleware({ userAgent: 'b2c-cli/0.1.0' }));
180
- * ```
181
- */
182
- export declare function createUserAgentMiddleware(config: UserAgentConfig): Middleware;
183
- export declare function createExtraParamsMiddleware(config: ExtraParamsConfig): Middleware;
@@ -1,465 +0,0 @@
1
- import { getLogger } from '../logging/logger.js';
2
- /**
3
- * Converts Headers to a plain object for logging.
4
- */
5
- function headersToObject(headers) {
6
- const result = {};
7
- headers.forEach((value, key) => {
8
- result[key] = value;
9
- });
10
- return result;
11
- }
12
- // Track which requests have been retried to prevent infinite loops
13
- const retriedRequests = new WeakSet();
14
- // Store cloned request bodies for potential retry (body can only be read once)
15
- const requestBodies = new WeakMap();
16
- /**
17
- * Creates authentication middleware for openapi-fetch.
18
- *
19
- * This middleware intercepts requests and adds OAuth authentication headers
20
- * using the provided AuthStrategy. It also handles 401 responses by invalidating
21
- * the token and retrying the request once with a fresh token.
22
- *
23
- * @param auth - The authentication strategy to use
24
- * @returns Middleware that adds auth headers to requests and retries on 401
25
- */
26
- export function createAuthMiddleware(auth) {
27
- const logger = getLogger();
28
- let hasHadSuccess = false;
29
- return {
30
- async onRequest({ request }) {
31
- if (auth.getAuthorizationHeader) {
32
- const authHeader = await auth.getAuthorizationHeader();
33
- request.headers.set('Authorization', authHeader);
34
- }
35
- // Clone the request body before it gets consumed, so we can retry if needed
36
- if (request.body && auth.invalidateToken && auth.getAuthorizationHeader) {
37
- const clonedRequest = request.clone();
38
- const bodyBuffer = await clonedRequest.arrayBuffer();
39
- requestBodies.set(request, bodyBuffer);
40
- }
41
- return request;
42
- },
43
- async onResponse({ request, response }) {
44
- if (response.status !== 401) {
45
- hasHadSuccess = true;
46
- }
47
- // Only retry on 401 if we have had a prior successful response (indicating
48
- // token expiry rather than bad credentials), haven't already retried this
49
- // request, and the strategy supports token invalidation
50
- if (response.status === 401 &&
51
- hasHadSuccess &&
52
- !retriedRequests.has(request) &&
53
- auth.invalidateToken &&
54
- auth.getAuthorizationHeader) {
55
- logger.debug('[AuthMiddleware] Received 401, invalidating token and retrying');
56
- // Mark this request as retried to prevent infinite loops
57
- retriedRequests.add(request);
58
- // Invalidate the cached token
59
- auth.invalidateToken();
60
- // Get a fresh token
61
- const newAuthHeader = await auth.getAuthorizationHeader();
62
- // Rebuild the request with the new auth header
63
- const newHeaders = new Headers(request.headers);
64
- newHeaders.set('Authorization', newAuthHeader);
65
- // Get the saved body (if any)
66
- const savedBody = requestBodies.get(request);
67
- // Create a new request with the fresh token
68
- const retryRequest = new Request(request.url, {
69
- method: request.method,
70
- headers: newHeaders,
71
- body: savedBody,
72
- // TypeScript doesn't know about duplex, but it's needed for streaming bodies
73
- ...(savedBody ? { duplex: 'half' } : {}),
74
- });
75
- // Retry the request
76
- const retryResponse = await fetch(retryRequest);
77
- logger.debug({ status: retryResponse.status }, `[AuthMiddleware] Retry response: ${retryResponse.status}`);
78
- return retryResponse;
79
- }
80
- return response;
81
- },
82
- };
83
- }
84
- const DEFAULT_RATE_LIMIT_MAX_RETRIES = 3;
85
- const DEFAULT_RATE_LIMIT_BASE_DELAY_MS = 1000;
86
- const DEFAULT_RATE_LIMIT_MAX_DELAY_MS = 30000;
87
- const DEFAULT_RATE_LIMIT_STATUS_CODES = [429];
88
- const DEFAULT_RATE_LIMIT_JITTER_RATIO = 0.2;
89
- async function sleepWithAbort(ms, signal) {
90
- if (ms <= 0) {
91
- return true;
92
- }
93
- if (signal?.aborted) {
94
- return false;
95
- }
96
- await new Promise((resolve) => {
97
- function onAbort() {
98
- clearTimeout(timeout);
99
- signal?.removeEventListener('abort', onAbort);
100
- resolve();
101
- }
102
- const timeout = setTimeout(() => {
103
- signal?.removeEventListener('abort', onAbort);
104
- resolve();
105
- }, ms);
106
- signal?.addEventListener('abort', onAbort);
107
- });
108
- return !signal?.aborted;
109
- }
110
- /**
111
- * Parses the Retry-After header into a delay in milliseconds.
112
- * Supports both seconds and HTTP date formats. Returns undefined if
113
- * the header is missing or invalid.
114
- */
115
- function parseRetryAfter(headerValue) {
116
- if (!headerValue) {
117
- return undefined;
118
- }
119
- const seconds = Number(headerValue);
120
- if (!Number.isNaN(seconds)) {
121
- return Math.max(0, Math.round(seconds * 1000));
122
- }
123
- const dateMs = Date.parse(headerValue);
124
- if (!Number.isNaN(dateMs)) {
125
- const diff = dateMs - Date.now();
126
- return diff > 0 ? diff : 0;
127
- }
128
- return undefined;
129
- }
130
- /**
131
- * Returns the next backoff delay based on attempt count.
132
- */
133
- function computeBackoffDelayMs(attempt, baseDelayMs, maxDelayMs) {
134
- const delay = baseDelayMs * Math.pow(2, Math.max(0, attempt));
135
- if (delay <= 0) {
136
- return 0;
137
- }
138
- const jitter = Math.round(delay * DEFAULT_RATE_LIMIT_JITTER_RATIO * Math.random());
139
- return Math.min(delay + jitter, maxDelayMs);
140
- }
141
- /**
142
- * Creates rate limiting middleware for openapi-fetch clients.
143
- *
144
- * This middleware inspects responses for rate-limit status codes (by default
145
- * 429 Too Many Requests), uses the Retry-After header when present to
146
- * determine a delay, and retries the request up to a configurable limit.
147
- *
148
- * The middleware is generic and can be used by MRT and other clients. It does
149
- * not currently read CLI configuration directly; callers should pass
150
- * configuration via the factory function.
151
- */
152
- export function createRateLimitMiddleware(config = {}) {
153
- const logger = getLogger();
154
- const { maxRetries = DEFAULT_RATE_LIMIT_MAX_RETRIES, baseDelayMs = DEFAULT_RATE_LIMIT_BASE_DELAY_MS, maxDelayMs = DEFAULT_RATE_LIMIT_MAX_DELAY_MS, statusCodes = DEFAULT_RATE_LIMIT_STATUS_CODES, prefix, fetch: configFetch, } = config;
155
- const tag = prefix ? `[${prefix} RATE]` : '[RATE]';
156
- return {
157
- async onResponse(ctx) {
158
- const { request, response } = ctx;
159
- const ctxFetch = ctx.fetch;
160
- // Only handle configured status codes
161
- if (!statusCodes.includes(response.status) || maxRetries <= 0) {
162
- return response;
163
- }
164
- const fetchFn = ctxFetch ?? configFetch ?? (typeof fetch === 'function' ? fetch : undefined);
165
- if (!fetchFn) {
166
- return response;
167
- }
168
- const reqWithAttempt = request;
169
- const startingAttempt = reqWithAttempt._rateLimitAttempt ?? 0;
170
- // If openapi-fetch provides ctx.fetch, it typically re-enters the middleware chain.
171
- // In that case, do a single retry and let subsequent attempts be handled by
172
- // subsequent middleware invocations (guarded by _rateLimitAttempt).
173
- if (ctxFetch) {
174
- if (startingAttempt >= maxRetries) {
175
- logger.debug({ status: response.status, attempt: startingAttempt, maxRetries }, `${tag} Max retries reached, not retrying request`);
176
- return response;
177
- }
178
- const retryAfterHeader = response.headers.get('Retry-After');
179
- let delayMs = parseRetryAfter(retryAfterHeader);
180
- if (delayMs === undefined) {
181
- delayMs = computeBackoffDelayMs(startingAttempt, baseDelayMs, maxDelayMs);
182
- }
183
- logger.warn({
184
- status: response.status,
185
- attempt: startingAttempt + 1,
186
- maxRetries,
187
- delayMs,
188
- retryAfter: retryAfterHeader ?? undefined,
189
- url: request.url,
190
- }, `${tag} Rate limit encountered, retrying request after ${delayMs}ms (attempt ${startingAttempt + 1}/${maxRetries})`);
191
- const canRetry = await sleepWithAbort(delayMs, request.signal);
192
- if (!canRetry) {
193
- return response;
194
- }
195
- reqWithAttempt._rateLimitAttempt = startingAttempt + 1;
196
- let retryRequest = request;
197
- try {
198
- retryRequest = request.clone();
199
- }
200
- catch {
201
- logger.debug({ url: request.url }, `${tag} Could not clone request for retry; retrying with original request`);
202
- }
203
- return fetchFn(retryRequest);
204
- }
205
- // Fallback path: if ctx.fetch is not provided, handle retries in this invocation.
206
- let lastResponse = response;
207
- let attempt = startingAttempt;
208
- while (statusCodes.includes(lastResponse.status) && attempt < maxRetries) {
209
- const retryAfterHeader = lastResponse.headers.get('Retry-After');
210
- let delayMs = parseRetryAfter(retryAfterHeader);
211
- if (delayMs === undefined) {
212
- delayMs = computeBackoffDelayMs(attempt, baseDelayMs, maxDelayMs);
213
- }
214
- logger.warn({
215
- status: lastResponse.status,
216
- attempt: attempt + 1,
217
- maxRetries,
218
- delayMs,
219
- retryAfter: retryAfterHeader ?? undefined,
220
- url: request.url,
221
- }, `${tag} Rate limit encountered, retrying request after ${delayMs}ms (attempt ${attempt + 1}/${maxRetries})`);
222
- const canRetry = await sleepWithAbort(delayMs, request.signal);
223
- if (!canRetry) {
224
- return lastResponse;
225
- }
226
- attempt += 1;
227
- reqWithAttempt._rateLimitAttempt = attempt;
228
- let retryRequest = request;
229
- try {
230
- retryRequest = request.clone();
231
- }
232
- catch {
233
- logger.debug({ url: request.url }, `${tag} Could not clone request for retry; retrying with original request`);
234
- }
235
- lastResponse = await fetchFn(retryRequest);
236
- }
237
- if (statusCodes.includes(lastResponse.status) && attempt >= maxRetries) {
238
- logger.debug({ status: lastResponse.status, attempt, maxRetries }, `${tag} Max retries reached, not retrying request`);
239
- }
240
- return lastResponse;
241
- },
242
- };
243
- }
244
- /**
245
- * Masks specified keys in an object for logging.
246
- * Only masks top-level keys, replaces values with '...' placeholder.
247
- */
248
- function maskBody(body, keysToMask) {
249
- if (!keysToMask || keysToMask.length === 0 || typeof body !== 'object' || body === null) {
250
- return body;
251
- }
252
- const masked = { ...body };
253
- for (const key of keysToMask) {
254
- if (key in masked) {
255
- masked[key] = '...';
256
- }
257
- }
258
- return masked;
259
- }
260
- /**
261
- * Creates logging middleware for openapi-fetch clients.
262
- *
263
- * Logs request/response details at debug and trace levels.
264
- *
265
- * @param config - Logging configuration or prefix string for backwards compatibility
266
- * @returns Middleware that logs requests and responses
267
- *
268
- * @example
269
- * // Simple usage with just a prefix
270
- * client.use(createLoggingMiddleware('OCAPI'));
271
- *
272
- * @example
273
- * // With body masking for large payloads
274
- * client.use(createLoggingMiddleware({
275
- * prefix: 'MRT',
276
- * maskBodyKeys: ['data'] // Masks base64-encoded bundle data
277
- * }));
278
- */
279
- export function createLoggingMiddleware(config) {
280
- // Support both string (prefix) and config object for backwards compatibility
281
- const { prefix, maskBodyKeys } = typeof config === 'string' ? { prefix: config, maskBodyKeys: undefined } : (config ?? {});
282
- const reqTag = prefix ? `[${prefix} REQ]` : '';
283
- const respTag = prefix ? `[${prefix} RESP]` : '';
284
- return {
285
- async onRequest({ request }) {
286
- const logger = getLogger();
287
- const url = request.url;
288
- logger.debug({ method: request.method, url }, `${reqTag} ${request.method} ${url}`);
289
- // Read body from the request (already serialized by openapi-fetch)
290
- let body;
291
- if (request.body) {
292
- const clonedRequest = request.clone();
293
- const text = await clonedRequest.text();
294
- try {
295
- body = JSON.parse(text);
296
- }
297
- catch {
298
- body = text;
299
- }
300
- }
301
- // Mask sensitive/large body keys before logging
302
- const maskedBody = maskBody(body, maskBodyKeys);
303
- logger.trace({ method: request.method, url, headers: headersToObject(request.headers), body: maskedBody }, `${reqTag} ${request.method} ${url} body`);
304
- request._startTime = Date.now();
305
- return request;
306
- },
307
- async onResponse({ request, response }) {
308
- const logger = getLogger();
309
- const startTime = request._startTime ?? Date.now();
310
- const duration = Date.now() - startTime;
311
- const url = request.url;
312
- logger.debug({ method: request.method, url, status: response.status, duration }, `${respTag} ${request.method} ${url} ${response.status} ${duration}ms`);
313
- const clonedResponse = response.clone();
314
- let responseBody;
315
- // Read as text first, then try to parse as JSON.
316
- // This avoids a bug where json() consumes the body stream even when parsing fails,
317
- // making subsequent text() calls fail with "Body has already been read".
318
- const text = await clonedResponse.text();
319
- try {
320
- responseBody = JSON.parse(text);
321
- }
322
- catch {
323
- responseBody = text;
324
- }
325
- // Mask sensitive/large body keys before logging
326
- const maskedResponseBody = maskBody(responseBody, maskBodyKeys);
327
- logger.trace({ method: request.method, url, headers: headersToObject(response.headers), body: maskedResponseBody }, `${respTag} ${request.method} ${url} body`);
328
- return response;
329
- },
330
- };
331
- }
332
- import { extractJobIdFromPath } from '../safety/safety-guard.js';
333
- /**
334
- * Creates safety middleware that evaluates HTTP requests against a SafetyGuard.
335
- *
336
- * This middleware intercepts HTTP requests BEFORE they are sent. It evaluates
337
- * each request against the guard's rules and level, throwing:
338
- * - {@link SafetyBlockedError} for blocked operations
339
- * - {@link SafetyConfirmationRequired} for operations needing confirmation
340
- *
341
- * Callers that want confirmation support should wrap their SDK calls with
342
- * {@link withSafetyConfirmation}. Otherwise, both error types propagate as errors.
343
- *
344
- * @param guard - The SafetyGuard instance
345
- * @returns Middleware that evaluates operations against safety rules
346
- *
347
- * @example
348
- * ```typescript
349
- * const guard = new SafetyGuard({ level: 'NO_DELETE' });
350
- * const client = createOdsClient(config, auth);
351
- * client.use(createSafetyMiddleware(guard));
352
- * ```
353
- */
354
- export function createSafetyMiddleware(guard) {
355
- return {
356
- async onRequest({ request }) {
357
- const path = new URL(request.url, 'http://dummy').pathname;
358
- guard.assert({
359
- type: 'http',
360
- method: request.method,
361
- url: request.url,
362
- path,
363
- jobId: extractJobIdFromPath(path),
364
- });
365
- return request;
366
- },
367
- };
368
- }
369
- /**
370
- * Creates middleware that sets the User-Agent header on requests.
371
- *
372
- * Sets both the standard `User-Agent` header and a custom `sfdc_user_agent` header
373
- * with the same value.
374
- *
375
- * @param config - Configuration with the User-Agent string
376
- * @returns Middleware that sets the User-Agent headers
377
- *
378
- * @example
379
- * ```typescript
380
- * const client = createOcapiClient(config, auth);
381
- * client.use(createUserAgentMiddleware({ userAgent: 'b2c-cli/0.1.0' }));
382
- * ```
383
- */
384
- export function createUserAgentMiddleware(config) {
385
- return {
386
- async onRequest({ request }) {
387
- request.headers.set('User-Agent', config.userAgent);
388
- request.headers.set('sfdc_user_agent', config.userAgent);
389
- return request;
390
- },
391
- };
392
- }
393
- export function createExtraParamsMiddleware(config) {
394
- const logger = getLogger();
395
- return {
396
- async onRequest({ request }) {
397
- let modifiedRequest = request;
398
- // HTTP methods that don't allow a request body
399
- const methodsWithoutBody = ['GET', 'HEAD'];
400
- const canHaveBody = !methodsWithoutBody.includes(modifiedRequest.method.toUpperCase());
401
- // Add extra headers first (before other modifications)
402
- if (config.headers && Object.keys(config.headers).length > 0) {
403
- const newHeaders = new Headers(modifiedRequest.headers);
404
- for (const [key, value] of Object.entries(config.headers)) {
405
- newHeaders.set(key, value);
406
- }
407
- logger.trace({ extraHeaders: config.headers }, '[ExtraParams] Adding extra headers to request');
408
- modifiedRequest = new Request(modifiedRequest.url, {
409
- method: modifiedRequest.method,
410
- headers: newHeaders,
411
- ...(canHaveBody && modifiedRequest.body ? { body: modifiedRequest.body, duplex: 'half' } : {}),
412
- });
413
- }
414
- // Add extra query parameters
415
- if (config.query && Object.keys(config.query).length > 0) {
416
- const url = new URL(modifiedRequest.url);
417
- for (const [key, value] of Object.entries(config.query)) {
418
- if (value !== undefined) {
419
- url.searchParams.set(key, String(value));
420
- }
421
- }
422
- logger.trace({ extraQuery: config.query, originalUrl: modifiedRequest.url, newUrl: url.toString() }, '[ExtraParams] Adding extra query params to URL');
423
- modifiedRequest = new Request(url.toString(), {
424
- method: modifiedRequest.method,
425
- headers: modifiedRequest.headers,
426
- ...(canHaveBody && modifiedRequest.body ? { body: modifiedRequest.body, duplex: 'half' } : {}),
427
- });
428
- }
429
- // Merge extra body fields for JSON requests
430
- if (config.body && Object.keys(config.body).length > 0) {
431
- const contentType = modifiedRequest.headers.get('content-type');
432
- if (contentType?.includes('application/json') && modifiedRequest.body) {
433
- const clonedRequest = modifiedRequest.clone();
434
- const originalBody = await clonedRequest.text();
435
- try {
436
- const parsedBody = JSON.parse(originalBody);
437
- const mergedBody = { ...parsedBody, ...config.body };
438
- logger.trace({ originalBody: parsedBody, extraBody: config.body, mergedBody }, '[ExtraParams] Merging extra body fields into request');
439
- modifiedRequest = new Request(modifiedRequest.url, {
440
- method: modifiedRequest.method,
441
- headers: modifiedRequest.headers,
442
- body: JSON.stringify(mergedBody),
443
- });
444
- }
445
- catch {
446
- logger.warn('[ExtraParams] Could not parse request body as JSON, skipping body merge');
447
- }
448
- }
449
- else if (!modifiedRequest.body && canHaveBody) {
450
- // No existing body, create one with extra fields (only for methods that allow a body)
451
- logger.trace({ body: config.body }, '[ExtraParams] Creating new body with extra fields');
452
- const headers = new Headers(modifiedRequest.headers);
453
- headers.set('content-type', 'application/json');
454
- modifiedRequest = new Request(modifiedRequest.url, {
455
- method: modifiedRequest.method,
456
- headers,
457
- body: JSON.stringify(config.body),
458
- });
459
- }
460
- }
461
- return modifiedRequest;
462
- },
463
- };
464
- }
465
- //# sourceMappingURL=middleware.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/clients/middleware.ts"],"names":[],"mappings":"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"}