@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,89 +0,0 @@
1
- import type { AuthStrategy, AccessTokenResponse, DecodedJWT, FetchInit } from './types.js';
2
- /**
3
- * Configuration for the implicit OAuth flow.
4
- */
5
- export interface ImplicitOAuthConfig {
6
- /** OAuth client ID registered with Account Manager */
7
- clientId: string;
8
- /** OAuth scopes to request (e.g., 'sfcc.products', 'sfcc.orders') */
9
- scopes?: string[];
10
- /** Account Manager host (defaults to 'account.demandware.com') */
11
- accountManagerHost?: string;
12
- /**
13
- * Local port for the OAuth redirect server.
14
- * Defaults to 8080 or SFCC_OAUTH_LOCAL_PORT environment variable.
15
- */
16
- localPort?: number;
17
- /**
18
- * Full redirect URI for OAuth. Use when running behind a proxy where
19
- * localhost cannot be reached directly by the browser.
20
- * Defaults to `http://localhost:${localPort}` or SFCC_REDIRECT_URI environment variable.
21
- * The local server still listens on localPort regardless of this setting.
22
- */
23
- redirectUri?: string;
24
- /**
25
- * Custom browser opener. Receives the authorization URL and should open it
26
- * in the user's browser. Useful in environments where the default `open` package
27
- * doesn't work (e.g., VS Code remote/Codespaces where `vscode.env.openExternal` is needed).
28
- */
29
- openBrowser?: (url: string) => Promise<void>;
30
- }
31
- /**
32
- * OAuth 2.0 Implicit Grant Flow authentication strategy.
33
- *
34
- * This strategy is used when only a client ID is available (no client secret).
35
- * It opens a browser for the user to authenticate with Account Manager,
36
- * then captures the access token from the OAuth redirect.
37
- *
38
- * Note: The access token from implicit flow is valid for 30 minutes and cannot be renewed.
39
- * This flow requires user interaction and a TTY.
40
- *
41
- * @example
42
- * ```typescript
43
- * import { ImplicitOAuthStrategy } from '@salesforce/b2c-tooling-sdk';
44
- *
45
- * const auth = new ImplicitOAuthStrategy({
46
- * clientId: 'your-client-id',
47
- * scopes: ['sfcc.products', 'sfcc.orders'],
48
- * });
49
- *
50
- * // Will open browser for authentication
51
- * const response = await auth.fetch('https://example.com/api/resource');
52
- * ```
53
- */
54
- export declare class ImplicitOAuthStrategy implements AuthStrategy {
55
- private config;
56
- private accountManagerHost;
57
- private localPort;
58
- private redirectUri;
59
- private _hasHadSuccess;
60
- constructor(config: ImplicitOAuthConfig);
61
- fetch(url: string, init?: FetchInit): Promise<Response>;
62
- getAuthorizationHeader(): Promise<string>;
63
- /**
64
- * Gets the decoded JWT payload
65
- */
66
- getJWT(): Promise<DecodedJWT>;
67
- /**
68
- * Gets the full token response including expiration and scopes.
69
- * Useful for commands that need to display or return token metadata.
70
- */
71
- getTokenResponse(): Promise<AccessTokenResponse>;
72
- /**
73
- * Invalidates the cached token, forcing re-authentication on next request
74
- */
75
- invalidateToken(): void;
76
- /**
77
- * Gets an access token, using cache if valid.
78
- * Uses a mutex to prevent concurrent auth flows for the same clientId.
79
- */
80
- private getAccessToken;
81
- /**
82
- * Performs an implicit OAuth2 login flow.
83
- * Opens the user's browser for authentication with Account Manager.
84
- *
85
- * NOTE: This method requires a TTY and user intervention; it is interactive.
86
- * NOTE: Access token is valid for 30 minutes and cannot be renewed.
87
- */
88
- private implicitFlowLogin;
89
- }
@@ -1,350 +0,0 @@
1
- /*
2
- * Copyright (c) 2025, Salesforce, Inc.
3
- * SPDX-License-Identifier: Apache-2
4
- * For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
5
- */
6
- import { createServer } from 'node:http';
7
- import { URL } from 'node:url';
8
- import { getLogger } from '../logging/logger.js';
9
- import { decodeJWT } from './oauth.js';
10
- import { DEFAULT_ACCOUNT_MANAGER_HOST } from '../defaults.js';
11
- const DEFAULT_LOCAL_PORT = 8080;
12
- // Module-level token cache to support multiple instances with same clientId
13
- const ACCESS_TOKEN_CACHE = new Map();
14
- // Module-level pending auth promises to prevent concurrent auth flows for the same clientId
15
- const PENDING_AUTH = new Map();
16
- /**
17
- * Returns the HTML page served to the browser to extract the access token
18
- * from the URL fragment and redirect it as query parameters.
19
- */
20
- function getOauth2RedirectHTML(redirectUri) {
21
- return `
22
- <!DOCTYPE html>
23
- <html lang="en">
24
- <head>
25
- <meta charset="UTF-8">
26
- <title>OAuth Return Flow</title>
27
- </head>
28
- <body onload="doReturnFlow()">
29
- <script>
30
- function doReturnFlow() {
31
- document.location = "${redirectUri}/?" + window.location.hash.substring(1);
32
- }
33
- </script>
34
- </body>
35
- </html>
36
- `;
37
- }
38
- /**
39
- * Opens the system default browser to the specified URL.
40
- * Dynamically imports 'open' package to handle the browser opening.
41
- */
42
- async function openBrowserDefault(url) {
43
- try {
44
- // Dynamic import of 'open' package
45
- const open = await import('open');
46
- await open.default(url);
47
- }
48
- catch {
49
- // If open fails, the URL will still be printed to console
50
- getLogger().debug('Could not automatically open browser');
51
- }
52
- }
53
- /**
54
- * OAuth 2.0 Implicit Grant Flow authentication strategy.
55
- *
56
- * This strategy is used when only a client ID is available (no client secret).
57
- * It opens a browser for the user to authenticate with Account Manager,
58
- * then captures the access token from the OAuth redirect.
59
- *
60
- * Note: The access token from implicit flow is valid for 30 minutes and cannot be renewed.
61
- * This flow requires user interaction and a TTY.
62
- *
63
- * @example
64
- * ```typescript
65
- * import { ImplicitOAuthStrategy } from '@salesforce/b2c-tooling-sdk';
66
- *
67
- * const auth = new ImplicitOAuthStrategy({
68
- * clientId: 'your-client-id',
69
- * scopes: ['sfcc.products', 'sfcc.orders'],
70
- * });
71
- *
72
- * // Will open browser for authentication
73
- * const response = await auth.fetch('https://example.com/api/resource');
74
- * ```
75
- */
76
- export class ImplicitOAuthStrategy {
77
- config;
78
- accountManagerHost;
79
- localPort;
80
- redirectUri;
81
- _hasHadSuccess = false;
82
- constructor(config) {
83
- this.config = config;
84
- this.accountManagerHost = config.accountManagerHost || DEFAULT_ACCOUNT_MANAGER_HOST;
85
- this.localPort = config.localPort || parseInt(process.env.SFCC_OAUTH_LOCAL_PORT || '', 10) || DEFAULT_LOCAL_PORT;
86
- this.redirectUri = config.redirectUri || process.env.SFCC_REDIRECT_URI || `http://localhost:${this.localPort}`;
87
- const logger = getLogger();
88
- logger.debug({
89
- clientId: this.config.clientId,
90
- accountManagerHost: this.accountManagerHost,
91
- port: this.localPort,
92
- redirectUri: this.redirectUri,
93
- }, '[Auth] ImplicitOAuthStrategy initialized');
94
- logger.trace({ scopes: this.config.scopes }, '[Auth] Configured scopes');
95
- }
96
- async fetch(url, init = {}) {
97
- const logger = getLogger();
98
- const method = init.method || 'GET';
99
- logger.trace({ method, url }, '[Auth] Fetching with implicit OAuth');
100
- const token = await this.getAccessToken();
101
- const headers = new Headers(init.headers);
102
- headers.set('Authorization', `Bearer ${token}`);
103
- headers.set('x-dw-client-id', this.config.clientId);
104
- const startTime = Date.now();
105
- // Pass through dispatcher for TLS/mTLS support
106
- let res = await fetch(url, { ...init, headers });
107
- const duration = Date.now() - startTime;
108
- logger.debug({ method, url, status: res.status, duration }, '[Auth] Response');
109
- if (res.status !== 401) {
110
- this._hasHadSuccess = true;
111
- }
112
- // RESILIENCE: If we previously had a successful response and now get a 401,
113
- // the token likely expired. Retry once after invalidating the cached token.
114
- // Skip retry on initial 401 to avoid retrying with bad credentials.
115
- if (res.status === 401 && this._hasHadSuccess) {
116
- logger.debug('[Auth] Received 401, invalidating token and retrying');
117
- this.invalidateToken();
118
- const newToken = await this.getAccessToken();
119
- headers.set('Authorization', `Bearer ${newToken}`);
120
- const retryStart = Date.now();
121
- res = await fetch(url, { ...init, headers });
122
- const retryDuration = Date.now() - retryStart;
123
- logger.debug({ method, url, status: res.status, duration: retryDuration }, '[Auth] Retry response');
124
- }
125
- return res;
126
- }
127
- async getAuthorizationHeader() {
128
- const token = await this.getAccessToken();
129
- return `Bearer ${token}`;
130
- }
131
- /**
132
- * Gets the decoded JWT payload
133
- */
134
- async getJWT() {
135
- const token = await this.getAccessToken();
136
- return decodeJWT(token);
137
- }
138
- /**
139
- * Gets the full token response including expiration and scopes.
140
- * Useful for commands that need to display or return token metadata.
141
- */
142
- async getTokenResponse() {
143
- const logger = getLogger();
144
- const cached = ACCESS_TOKEN_CACHE.get(this.config.clientId);
145
- if (cached) {
146
- const now = new Date();
147
- const requiredScopes = this.config.scopes || [];
148
- const hasAllScopes = requiredScopes.every((scope) => cached.scopes.includes(scope));
149
- if (hasAllScopes && now.getTime() <= cached.expires.getTime()) {
150
- logger.debug('Reusing cached access token');
151
- return cached;
152
- }
153
- }
154
- // Get new token via implicit flow
155
- const tokenResponse = await this.implicitFlowLogin();
156
- ACCESS_TOKEN_CACHE.set(this.config.clientId, tokenResponse);
157
- return tokenResponse;
158
- }
159
- /**
160
- * Invalidates the cached token, forcing re-authentication on next request
161
- */
162
- invalidateToken() {
163
- ACCESS_TOKEN_CACHE.delete(this.config.clientId);
164
- }
165
- /**
166
- * Gets an access token, using cache if valid.
167
- * Uses a mutex to prevent concurrent auth flows for the same clientId.
168
- */
169
- async getAccessToken() {
170
- const logger = getLogger();
171
- const clientId = this.config.clientId;
172
- const cached = ACCESS_TOKEN_CACHE.get(clientId);
173
- logger.trace({ clientId, hasCached: !!cached }, '[Auth] Getting access token');
174
- if (cached) {
175
- const now = new Date();
176
- const requiredScopes = this.config.scopes || [];
177
- const hasAllScopes = requiredScopes.every((scope) => cached.scopes.includes(scope));
178
- const timeUntilExpiry = cached.expires.getTime() - now.getTime();
179
- logger.trace({
180
- cachedScopes: cached.scopes,
181
- requiredScopes,
182
- hasAllScopes,
183
- expiresAt: cached.expires.toISOString(),
184
- timeUntilExpiryMs: timeUntilExpiry,
185
- }, '[Auth] Checking cached token validity');
186
- if (!hasAllScopes) {
187
- logger.warn({ cachedScopes: cached.scopes, requiredScopes }, '[Auth] Access token missing scopes; invalidating and re-authenticating');
188
- ACCESS_TOKEN_CACHE.delete(clientId);
189
- }
190
- else if (now.getTime() > cached.expires.getTime()) {
191
- logger.warn({ expiresAt: cached.expires.toISOString() }, '[Auth] Access token expired; invalidating and re-authenticating');
192
- ACCESS_TOKEN_CACHE.delete(clientId);
193
- }
194
- else {
195
- logger.debug({ timeUntilExpiryMs: timeUntilExpiry }, '[Auth] Reusing cached access token');
196
- return cached.accessToken;
197
- }
198
- }
199
- // Check if there's already an auth flow in progress for this clientId
200
- const pendingAuth = PENDING_AUTH.get(clientId);
201
- if (pendingAuth) {
202
- logger.debug('[Auth] Auth flow already in progress, waiting for it to complete');
203
- const tokenResponse = await pendingAuth;
204
- return tokenResponse.accessToken;
205
- }
206
- // Start new auth flow and store the promise so concurrent calls can wait
207
- logger.debug('[Auth] No valid cached token, starting implicit flow login');
208
- const authPromise = this.implicitFlowLogin();
209
- PENDING_AUTH.set(clientId, authPromise);
210
- try {
211
- const tokenResponse = await authPromise;
212
- ACCESS_TOKEN_CACHE.set(clientId, tokenResponse);
213
- logger.debug({ expiresAt: tokenResponse.expires.toISOString(), scopes: tokenResponse.scopes }, '[Auth] New token cached');
214
- return tokenResponse.accessToken;
215
- }
216
- finally {
217
- // Clean up pending auth promise
218
- PENDING_AUTH.delete(clientId);
219
- }
220
- }
221
- /**
222
- * Performs an implicit OAuth2 login flow.
223
- * Opens the user's browser for authentication with Account Manager.
224
- *
225
- * NOTE: This method requires a TTY and user intervention; it is interactive.
226
- * NOTE: Access token is valid for 30 minutes and cannot be renewed.
227
- */
228
- async implicitFlowLogin() {
229
- const logger = getLogger();
230
- const params = new URLSearchParams({
231
- client_id: this.config.clientId,
232
- redirect_uri: this.redirectUri,
233
- response_type: 'token',
234
- });
235
- if (this.config.scopes && this.config.scopes.length > 0) {
236
- params.append('scope', this.config.scopes.join(' '));
237
- }
238
- const authorizeUrl = `https://${this.accountManagerHost}/dwsso/oauth2/authorize?${params.toString()}`;
239
- logger.debug({
240
- clientId: this.config.clientId,
241
- redirectUri: this.redirectUri,
242
- scopes: this.config.scopes,
243
- accountManagerHost: this.accountManagerHost,
244
- }, '[Auth] Starting implicit OAuth flow');
245
- logger.trace({ authorizeUrl }, '[Auth] Authorization URL');
246
- // Print URL to console (in case machine has no default browser)
247
- logger.info({ url: authorizeUrl }, `Login URL: ${authorizeUrl}`);
248
- logger.info('If the URL does not open automatically, copy/paste it into a browser on this machine.');
249
- // Attempt to open the browser (prefer injected opener, fall back to `open` package)
250
- logger.debug('[Auth] Attempting to open browser');
251
- if (this.config.openBrowser) {
252
- await this.config.openBrowser(authorizeUrl);
253
- }
254
- else {
255
- await openBrowserDefault(authorizeUrl);
256
- }
257
- return new Promise((resolve, reject) => {
258
- const sockets = new Set();
259
- const startTime = Date.now();
260
- const server = createServer((request, response) => {
261
- const requestUrl = new URL(request.url || '/', `http://localhost:${this.localPort}`);
262
- const accessToken = requestUrl.searchParams.get('access_token');
263
- const error = requestUrl.searchParams.get('error');
264
- const errorDescription = requestUrl.searchParams.get('error_description');
265
- logger.trace({
266
- path: requestUrl.pathname,
267
- hasAccessToken: !!accessToken,
268
- hasError: !!error,
269
- }, '[Auth] Received redirect request');
270
- if (!accessToken && !error) {
271
- // Serve HTML page to extract token from URL fragment
272
- logger.debug('[Auth] Serving token extraction HTML page');
273
- response.writeHead(200, { 'Content-Type': 'text/html' });
274
- response.write(getOauth2RedirectHTML(this.redirectUri));
275
- response.end();
276
- }
277
- else if (accessToken) {
278
- const authDuration = Date.now() - startTime;
279
- // Successfully received access token
280
- logger.debug({ duration: authDuration }, `[Auth] Got access token response (${authDuration}ms)`);
281
- logger.info('Successfully authenticated');
282
- try {
283
- const jwt = decodeJWT(accessToken);
284
- logger.trace({ jwt: jwt.payload }, '[Auth] Decoded JWT payload');
285
- }
286
- catch {
287
- logger.debug('[Auth] Error decoding JWT (token may not be a JWT)');
288
- }
289
- const expiresIn = parseInt(requestUrl.searchParams.get('expires_in') || '0', 10);
290
- const now = new Date();
291
- const expiration = new Date(now.getTime() + expiresIn * 1000);
292
- const scopes = requestUrl.searchParams.get('scope')?.split(' ') ?? [];
293
- logger.debug({ expiresIn, expiresAt: expiration.toISOString(), scopes }, `[Auth] Token expires in ${expiresIn}s, scopes: ${scopes.join(' ')}`);
294
- resolve({
295
- accessToken,
296
- expires: expiration,
297
- scopes,
298
- });
299
- response.writeHead(200, { 'Content-Type': 'text/plain' });
300
- response.write('Authentication successful! You may close this browser window and return to your terminal.');
301
- response.end();
302
- // Shutdown server after a short delay
303
- setTimeout(() => {
304
- logger.debug('[Auth] Shutting down OAuth redirect server');
305
- server.close(() => logger.trace('[Auth] OAuth redirect server closed'));
306
- for (const socket of sockets) {
307
- socket.destroy();
308
- }
309
- logger.trace({ socketCount: sockets.size }, '[Auth] Cleaned up sockets');
310
- }, 100);
311
- }
312
- else if (error) {
313
- // OAuth error response
314
- const errorMessage = errorDescription || error;
315
- logger.error({ error, errorDescription }, `[Auth] OAuth error: ${error}`);
316
- response.writeHead(500, { 'Content-Type': 'text/plain' });
317
- response.write(`Authentication failed: ${errorMessage}`);
318
- response.end();
319
- reject(new Error(`OAuth error: ${errorMessage}`));
320
- setTimeout(() => {
321
- server.close();
322
- for (const socket of sockets) {
323
- socket.destroy();
324
- }
325
- }, 100);
326
- }
327
- });
328
- server.on('connection', (socket) => {
329
- sockets.add(socket);
330
- logger.trace({ socketCount: sockets.size }, '[Auth] New socket connection');
331
- socket.on('close', () => {
332
- sockets.delete(socket);
333
- logger.trace({ socketCount: sockets.size }, '[Auth] Socket closed');
334
- });
335
- });
336
- server.listen(this.localPort, () => {
337
- logger.debug({ port: this.localPort }, `[Auth] OAuth redirect server listening on port ${this.localPort}`);
338
- logger.info('Waiting for user to authenticate...');
339
- });
340
- server.on('error', (err) => {
341
- logger.error({ error: err.message, port: this.localPort }, '[Auth] Failed to start OAuth redirect server');
342
- const hint = 'code' in err && err.code === 'EADDRINUSE'
343
- ? ` Port ${this.localPort} is in use; set SFCC_OAUTH_LOCAL_PORT or pass localPort to use a different port.`
344
- : '';
345
- reject(new Error(`Failed to start OAuth redirect server: ${err.message}.${hint}`));
346
- });
347
- });
348
- }
349
- }
350
- //# sourceMappingURL=oauth-implicit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"oauth-implicit.js","sourceRoot":"","sources":["../../../src/auth/oauth-implicit.ts"],"names":[],"mappings":"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"}
@@ -1,99 +0,0 @@
1
- import type { AuthStrategy, FetchInit, AccessTokenResponse } from './types.js';
2
- import { decodeJWT } from './oauth.js';
3
- /**
4
- * Configuration for JWT Bearer authentication.
5
- */
6
- export interface JwtOAuthConfig {
7
- /** OAuth client ID */
8
- clientId: string;
9
- /** Path to JWT certificate file (cert.pem) */
10
- certPath: string;
11
- /** Path to JWT private key file (key.pem) */
12
- keyPath: string;
13
- /** Optional passphrase for encrypted private key */
14
- passphrase?: string;
15
- /** Account Manager hostname */
16
- accountManagerHost: string;
17
- /** OAuth scopes to request */
18
- scopes?: string[];
19
- }
20
- /**
21
- * OAuth 2.0 JWT Bearer authentication strategy.
22
- *
23
- * Implements RFC 7523 (JSON Web Token (JWT) Profile for OAuth 2.0 Client
24
- * Authentication and Authorization Grants).
25
- *
26
- * Key differences from client credentials flow:
27
- * - Uses public/private key pair instead of client secret
28
- * - Sends JWT as `client_assertion` in POST body (not Authorization header)
29
- * - JWT is self-signed and short-lived (60 seconds)
30
- *
31
- * @example
32
- * ```typescript
33
- * const strategy = new JwtOAuthStrategy({
34
- * clientId: 'my-client-id',
35
- * certPath: './cert.pem',
36
- * keyPath: './key.pem',
37
- * accountManagerHost: 'account.demandware.com',
38
- * });
39
- *
40
- * const response = await strategy.fetch('https://api.example.com/data');
41
- * ```
42
- */
43
- export declare class JwtOAuthStrategy implements AuthStrategy {
44
- private readonly config;
45
- private readonly logger;
46
- private readonly cacheKey;
47
- private _hasHadSuccess;
48
- private readonly privateKey;
49
- constructor(config: JwtOAuthConfig);
50
- /**
51
- * Validates JWT configuration and checks that certificate/key files exist and are readable.
52
- */
53
- private validateConfig;
54
- /**
55
- * Performs a fetch request with JWT Bearer authentication.
56
- * Automatically injects the Authorization header with a fresh access token.
57
- * Includes 401 retry logic and x-dw-client-id header.
58
- */
59
- fetch(url: string, init?: FetchInit): Promise<Response>;
60
- /**
61
- * Returns the Authorization header value for legacy clients.
62
- */
63
- getAuthorizationHeader(): Promise<string>;
64
- /**
65
- * Gets the decoded JWT payload.
66
- */
67
- getJWT(): Promise<ReturnType<typeof decodeJWT>>;
68
- /**
69
- * Creates a new JwtOAuthStrategy with additional scopes merged in.
70
- * Used by clients that have specific scope requirements.
71
- *
72
- * @param additionalScopes - Scopes to add to this strategy's existing scopes
73
- * @returns A new JwtOAuthStrategy instance with merged scopes
74
- */
75
- withAdditionalScopes(additionalScopes: string[]): JwtOAuthStrategy;
76
- /**
77
- * Gets the full token response including expiration and scopes.
78
- * Useful for commands that need to display or return token metadata.
79
- */
80
- getTokenResponse(): Promise<AccessTokenResponse>;
81
- /**
82
- * Invalidates the cached access token, forcing re-authentication on next request.
83
- */
84
- invalidateToken(): void;
85
- /**
86
- * Gets an access token string, using cached token if still valid.
87
- */
88
- private getAccessToken;
89
- /**
90
- * Requests a new access token from Account Manager using JWT Bearer flow.
91
- * Returns the full token response and caches it.
92
- */
93
- private requestNewToken;
94
- /**
95
- * Creates and signs a JWT token for OAuth authentication.
96
- * Uses RS256 algorithm and Base64URL encoding per RFC 7519.
97
- */
98
- private createSignedJwt;
99
- }