@salesforce/b2c-tooling-sdk 1.10.0 → 1.11.1

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 (640) hide show
  1. package/data/content-schemas/componenttype.json +37 -0
  2. package/dist/esm/operations/content/validate.js +46 -4
  3. package/dist/esm/operations/content/validate.js.map +1 -1
  4. package/dist/esm/operations/jobs/site-archive.d.ts +12 -0
  5. package/dist/esm/operations/jobs/site-archive.js +107 -3
  6. package/dist/esm/operations/jobs/site-archive.js.map +1 -1
  7. package/dist/esm/skills/agents.js +1 -1
  8. package/dist/esm/skills/agents.js.map +1 -1
  9. package/package.json +73 -285
  10. package/dist/cjs/auth/api-key.d.ts +0 -28
  11. package/dist/cjs/auth/api-key.js +0 -45
  12. package/dist/cjs/auth/api-key.js.map +0 -1
  13. package/dist/cjs/auth/basic.d.ts +0 -7
  14. package/dist/cjs/auth/basic.js +0 -20
  15. package/dist/cjs/auth/basic.js.map +0 -1
  16. package/dist/cjs/auth/index.d.ts +0 -74
  17. package/dist/cjs/auth/index.js +0 -76
  18. package/dist/cjs/auth/index.js.map +0 -1
  19. package/dist/cjs/auth/jwt-utils.d.ts +0 -25
  20. package/dist/cjs/auth/jwt-utils.js +0 -66
  21. package/dist/cjs/auth/jwt-utils.js.map +0 -1
  22. package/dist/cjs/auth/middleware.d.ts +0 -196
  23. package/dist/cjs/auth/middleware.js +0 -190
  24. package/dist/cjs/auth/middleware.js.map +0 -1
  25. package/dist/cjs/auth/oauth-implicit.d.ts +0 -89
  26. package/dist/cjs/auth/oauth-implicit.js +0 -350
  27. package/dist/cjs/auth/oauth-implicit.js.map +0 -1
  28. package/dist/cjs/auth/oauth-jwt.d.ts +0 -99
  29. package/dist/cjs/auth/oauth-jwt.js +0 -343
  30. package/dist/cjs/auth/oauth-jwt.js.map +0 -1
  31. package/dist/cjs/auth/oauth.d.ts +0 -88
  32. package/dist/cjs/auth/oauth.js +0 -252
  33. package/dist/cjs/auth/oauth.js.map +0 -1
  34. package/dist/cjs/auth/resolve.d.ts +0 -100
  35. package/dist/cjs/auth/resolve.js +0 -175
  36. package/dist/cjs/auth/resolve.js.map +0 -1
  37. package/dist/cjs/auth/stateful-oauth-strategy.d.ts +0 -39
  38. package/dist/cjs/auth/stateful-oauth-strategy.js +0 -130
  39. package/dist/cjs/auth/stateful-oauth-strategy.js.map +0 -1
  40. package/dist/cjs/auth/stateful-store.d.ts +0 -49
  41. package/dist/cjs/auth/stateful-store.js +0 -166
  42. package/dist/cjs/auth/stateful-store.js.map +0 -1
  43. package/dist/cjs/auth/types.d.ts +0 -124
  44. package/dist/cjs/auth/types.js +0 -8
  45. package/dist/cjs/auth/types.js.map +0 -1
  46. package/dist/cjs/cli/am-command.d.ts +0 -74
  47. package/dist/cjs/cli/am-command.js +0 -199
  48. package/dist/cjs/cli/am-command.js.map +0 -1
  49. package/dist/cjs/cli/base-command.d.ts +0 -232
  50. package/dist/cjs/cli/base-command.js +0 -695
  51. package/dist/cjs/cli/base-command.js.map +0 -1
  52. package/dist/cjs/cli/cartridge-command.d.ts +0 -67
  53. package/dist/cjs/cli/cartridge-command.js +0 -146
  54. package/dist/cjs/cli/cartridge-command.js.map +0 -1
  55. package/dist/cjs/cli/cartridge-providers.d.ts +0 -149
  56. package/dist/cjs/cli/cartridge-providers.js +0 -103
  57. package/dist/cjs/cli/cartridge-providers.js.map +0 -1
  58. package/dist/cjs/cli/columns.d.ts +0 -128
  59. package/dist/cjs/cli/columns.js +0 -128
  60. package/dist/cjs/cli/columns.js.map +0 -1
  61. package/dist/cjs/cli/config.d.ts +0 -159
  62. package/dist/cjs/cli/config.js +0 -185
  63. package/dist/cjs/cli/config.js.map +0 -1
  64. package/dist/cjs/cli/details.d.ts +0 -69
  65. package/dist/cjs/cli/details.js +0 -72
  66. package/dist/cjs/cli/details.js.map +0 -1
  67. package/dist/cjs/cli/hooks.d.ts +0 -324
  68. package/dist/cjs/cli/hooks.js +0 -3
  69. package/dist/cjs/cli/hooks.js.map +0 -1
  70. package/dist/cjs/cli/index.d.ts +0 -108
  71. package/dist/cjs/cli/index.js +0 -111
  72. package/dist/cjs/cli/index.js.map +0 -1
  73. package/dist/cjs/cli/instance-command.d.ts +0 -131
  74. package/dist/cjs/cli/instance-command.js +0 -214
  75. package/dist/cjs/cli/instance-command.js.map +0 -1
  76. package/dist/cjs/cli/job-command.d.ts +0 -32
  77. package/dist/cjs/cli/job-command.js +0 -60
  78. package/dist/cjs/cli/job-command.js.map +0 -1
  79. package/dist/cjs/cli/lifecycle.d.ts +0 -189
  80. package/dist/cjs/cli/lifecycle.js +0 -130
  81. package/dist/cjs/cli/lifecycle.js.map +0 -1
  82. package/dist/cjs/cli/mrt-command.d.ts +0 -57
  83. package/dist/cjs/cli/mrt-command.js +0 -95
  84. package/dist/cjs/cli/mrt-command.js.map +0 -1
  85. package/dist/cjs/cli/oauth-command.d.ts +0 -122
  86. package/dist/cjs/cli/oauth-command.js +0 -311
  87. package/dist/cjs/cli/oauth-command.js.map +0 -1
  88. package/dist/cjs/cli/ods-command.d.ts +0 -97
  89. package/dist/cjs/cli/ods-command.js +0 -136
  90. package/dist/cjs/cli/ods-command.js.map +0 -1
  91. package/dist/cjs/cli/table.d.ts +0 -113
  92. package/dist/cjs/cli/table.js +0 -175
  93. package/dist/cjs/cli/table.js.map +0 -1
  94. package/dist/cjs/cli/webdav-command.d.ts +0 -110
  95. package/dist/cjs/cli/webdav-command.js +0 -106
  96. package/dist/cjs/cli/webdav-command.js.map +0 -1
  97. package/dist/cjs/clients/am-api.d.ts +0 -521
  98. package/dist/cjs/clients/am-api.js +0 -992
  99. package/dist/cjs/clients/am-api.js.map +0 -1
  100. package/dist/cjs/clients/am-apiclients-api.generated.d.ts +0 -803
  101. package/dist/cjs/clients/am-apiclients-api.generated.js +0 -6
  102. package/dist/cjs/clients/am-apiclients-api.generated.js.map +0 -1
  103. package/dist/cjs/clients/am-roles-api.generated.d.ts +0 -298
  104. package/dist/cjs/clients/am-roles-api.generated.js +0 -6
  105. package/dist/cjs/clients/am-roles-api.generated.js.map +0 -1
  106. package/dist/cjs/clients/am-users-api.generated.d.ts +0 -954
  107. package/dist/cjs/clients/am-users-api.generated.js +0 -6
  108. package/dist/cjs/clients/am-users-api.generated.js.map +0 -1
  109. package/dist/cjs/clients/cdn-zones.d.ts +0 -186
  110. package/dist/cjs/clients/cdn-zones.generated.d.ts +0 -8330
  111. package/dist/cjs/clients/cdn-zones.generated.js +0 -6
  112. package/dist/cjs/clients/cdn-zones.generated.js.map +0 -1
  113. package/dist/cjs/clients/cdn-zones.js +0 -103
  114. package/dist/cjs/clients/cdn-zones.js.map +0 -1
  115. package/dist/cjs/clients/cip.d.ts +0 -162
  116. package/dist/cjs/clients/cip.js +0 -572
  117. package/dist/cjs/clients/cip.js.map +0 -1
  118. package/dist/cjs/clients/custom-apis.d.ts +0 -174
  119. package/dist/cjs/clients/custom-apis.generated.d.ts +0 -202
  120. package/dist/cjs/clients/custom-apis.generated.js +0 -6
  121. package/dist/cjs/clients/custom-apis.generated.js.map +0 -1
  122. package/dist/cjs/clients/custom-apis.js +0 -140
  123. package/dist/cjs/clients/custom-apis.js.map +0 -1
  124. package/dist/cjs/clients/error-utils.d.ts +0 -35
  125. package/dist/cjs/clients/error-utils.js +0 -69
  126. package/dist/cjs/clients/error-utils.js.map +0 -1
  127. package/dist/cjs/clients/granular-replications.d.ts +0 -70
  128. package/dist/cjs/clients/granular-replications.generated.d.ts +0 -416
  129. package/dist/cjs/clients/granular-replications.generated.js +0 -6
  130. package/dist/cjs/clients/granular-replications.generated.js.map +0 -1
  131. package/dist/cjs/clients/granular-replications.js +0 -73
  132. package/dist/cjs/clients/granular-replications.js.map +0 -1
  133. package/dist/cjs/clients/index.d.ts +0 -145
  134. package/dist/cjs/clients/index.js +0 -137
  135. package/dist/cjs/clients/index.js.map +0 -1
  136. package/dist/cjs/clients/middleware-registry.d.ts +0 -184
  137. package/dist/cjs/clients/middleware-registry.js +0 -104
  138. package/dist/cjs/clients/middleware-registry.js.map +0 -1
  139. package/dist/cjs/clients/middleware.d.ts +0 -183
  140. package/dist/cjs/clients/middleware.js +0 -465
  141. package/dist/cjs/clients/middleware.js.map +0 -1
  142. package/dist/cjs/clients/mrt-b2c.d.ts +0 -138
  143. package/dist/cjs/clients/mrt-b2c.generated.d.ts +0 -176
  144. package/dist/cjs/clients/mrt-b2c.generated.js +0 -6
  145. package/dist/cjs/clients/mrt-b2c.generated.js.map +0 -1
  146. package/dist/cjs/clients/mrt-b2c.js +0 -86
  147. package/dist/cjs/clients/mrt-b2c.js.map +0 -1
  148. package/dist/cjs/clients/mrt.d.ts +0 -143
  149. package/dist/cjs/clients/mrt.generated.d.ts +0 -3806
  150. package/dist/cjs/clients/mrt.generated.js +0 -6
  151. package/dist/cjs/clients/mrt.generated.js.map +0 -1
  152. package/dist/cjs/clients/mrt.js +0 -93
  153. package/dist/cjs/clients/mrt.js.map +0 -1
  154. package/dist/cjs/clients/ocapi.d.ts +0 -128
  155. package/dist/cjs/clients/ocapi.generated.d.ts +0 -26052
  156. package/dist/cjs/clients/ocapi.generated.js +0 -6
  157. package/dist/cjs/clients/ocapi.generated.js.map +0 -1
  158. package/dist/cjs/clients/ocapi.js +0 -78
  159. package/dist/cjs/clients/ocapi.js.map +0 -1
  160. package/dist/cjs/clients/ods.d.ts +0 -160
  161. package/dist/cjs/clients/ods.generated.d.ts +0 -2860
  162. package/dist/cjs/clients/ods.generated.js +0 -6
  163. package/dist/cjs/clients/ods.generated.js.map +0 -1
  164. package/dist/cjs/clients/ods.js +0 -103
  165. package/dist/cjs/clients/ods.js.map +0 -1
  166. package/dist/cjs/clients/scapi-schemas.d.ts +0 -161
  167. package/dist/cjs/clients/scapi-schemas.generated.d.ts +0 -328
  168. package/dist/cjs/clients/scapi-schemas.generated.js +0 -6
  169. package/dist/cjs/clients/scapi-schemas.generated.js.map +0 -1
  170. package/dist/cjs/clients/scapi-schemas.js +0 -98
  171. package/dist/cjs/clients/scapi-schemas.js.map +0 -1
  172. package/dist/cjs/clients/slas-admin.d.ts +0 -132
  173. package/dist/cjs/clients/slas-admin.generated.d.ts +0 -1434
  174. package/dist/cjs/clients/slas-admin.generated.js +0 -6
  175. package/dist/cjs/clients/slas-admin.generated.js.map +0 -1
  176. package/dist/cjs/clients/slas-admin.js +0 -79
  177. package/dist/cjs/clients/slas-admin.js.map +0 -1
  178. package/dist/cjs/clients/tls-dispatcher.d.ts +0 -42
  179. package/dist/cjs/clients/tls-dispatcher.js +0 -107
  180. package/dist/cjs/clients/tls-dispatcher.js.map +0 -1
  181. package/dist/cjs/clients/user-agent.d.ts +0 -43
  182. package/dist/cjs/clients/user-agent.js +0 -87
  183. package/dist/cjs/clients/user-agent.js.map +0 -1
  184. package/dist/cjs/clients/webdav.d.ts +0 -186
  185. package/dist/cjs/clients/webdav.js +0 -395
  186. package/dist/cjs/clients/webdav.js.map +0 -1
  187. package/dist/cjs/config/config-source-registry.d.ts +0 -115
  188. package/dist/cjs/config/config-source-registry.js +0 -103
  189. package/dist/cjs/config/config-source-registry.js.map +0 -1
  190. package/dist/cjs/config/dw-json.d.ts +0 -274
  191. package/dist/cjs/config/dw-json.js +0 -333
  192. package/dist/cjs/config/dw-json.js.map +0 -1
  193. package/dist/cjs/config/index.d.ts +0 -100
  194. package/dist/cjs/config/index.js +0 -110
  195. package/dist/cjs/config/index.js.map +0 -1
  196. package/dist/cjs/config/instance-manager.d.ts +0 -97
  197. package/dist/cjs/config/instance-manager.js +0 -166
  198. package/dist/cjs/config/instance-manager.js.map +0 -1
  199. package/dist/cjs/config/mapping.d.ts +0 -199
  200. package/dist/cjs/config/mapping.js +0 -540
  201. package/dist/cjs/config/mapping.js.map +0 -1
  202. package/dist/cjs/config/resolved-config.d.ts +0 -29
  203. package/dist/cjs/config/resolved-config.js +0 -81
  204. package/dist/cjs/config/resolved-config.js.map +0 -1
  205. package/dist/cjs/config/resolver.d.ts +0 -191
  206. package/dist/cjs/config/resolver.js +0 -406
  207. package/dist/cjs/config/resolver.js.map +0 -1
  208. package/dist/cjs/config/sources/dw-json-source.d.ts +0 -27
  209. package/dist/cjs/config/sources/dw-json-source.js +0 -106
  210. package/dist/cjs/config/sources/dw-json-source.js.map +0 -1
  211. package/dist/cjs/config/sources/env-source.d.ts +0 -32
  212. package/dist/cjs/config/sources/env-source.js +0 -116
  213. package/dist/cjs/config/sources/env-source.js.map +0 -1
  214. package/dist/cjs/config/sources/index.d.ts +0 -9
  215. package/dist/cjs/config/sources/index.js +0 -15
  216. package/dist/cjs/config/sources/index.js.map +0 -1
  217. package/dist/cjs/config/sources/mobify-source.d.ts +0 -25
  218. package/dist/cjs/config/sources/mobify-source.js +0 -84
  219. package/dist/cjs/config/sources/mobify-source.js.map +0 -1
  220. package/dist/cjs/config/sources/package-json-source.d.ts +0 -14
  221. package/dist/cjs/config/sources/package-json-source.js +0 -97
  222. package/dist/cjs/config/sources/package-json-source.js.map +0 -1
  223. package/dist/cjs/config/types.d.ts +0 -428
  224. package/dist/cjs/config/types.js +0 -2
  225. package/dist/cjs/config/types.js.map +0 -1
  226. package/dist/cjs/defaults.d.ts +0 -36
  227. package/dist/cjs/defaults.js +0 -54
  228. package/dist/cjs/defaults.js.map +0 -1
  229. package/dist/cjs/discovery/detector.d.ts +0 -75
  230. package/dist/cjs/discovery/detector.js +0 -108
  231. package/dist/cjs/discovery/detector.js.map +0 -1
  232. package/dist/cjs/discovery/index.d.ts +0 -63
  233. package/dist/cjs/discovery/index.js +0 -70
  234. package/dist/cjs/discovery/index.js.map +0 -1
  235. package/dist/cjs/discovery/patterns/cartridges.d.ts +0 -16
  236. package/dist/cjs/discovery/patterns/cartridges.js +0 -16
  237. package/dist/cjs/discovery/patterns/cartridges.js.map +0 -1
  238. package/dist/cjs/discovery/patterns/index.d.ts +0 -21
  239. package/dist/cjs/discovery/patterns/index.js +0 -16
  240. package/dist/cjs/discovery/patterns/index.js.map +0 -1
  241. package/dist/cjs/discovery/patterns/pwa-kit.d.ts +0 -15
  242. package/dist/cjs/discovery/patterns/pwa-kit.js +0 -26
  243. package/dist/cjs/discovery/patterns/pwa-kit.js.map +0 -1
  244. package/dist/cjs/discovery/patterns/sfra.d.ts +0 -34
  245. package/dist/cjs/discovery/patterns/sfra.js +0 -50
  246. package/dist/cjs/discovery/patterns/sfra.js.map +0 -1
  247. package/dist/cjs/discovery/patterns/storefront-next.d.ts +0 -10
  248. package/dist/cjs/discovery/patterns/storefront-next.js +0 -65
  249. package/dist/cjs/discovery/patterns/storefront-next.js.map +0 -1
  250. package/dist/cjs/discovery/types.d.ts +0 -47
  251. package/dist/cjs/discovery/types.js +0 -12
  252. package/dist/cjs/discovery/types.js.map +0 -1
  253. package/dist/cjs/discovery/utils.d.ts +0 -44
  254. package/dist/cjs/discovery/utils.js +0 -82
  255. package/dist/cjs/discovery/utils.js.map +0 -1
  256. package/dist/cjs/docs/download.d.ts +0 -45
  257. package/dist/cjs/docs/download.js +0 -96
  258. package/dist/cjs/docs/download.js.map +0 -1
  259. package/dist/cjs/docs/index.d.ts +0 -44
  260. package/dist/cjs/docs/index.js +0 -12
  261. package/dist/cjs/docs/index.js.map +0 -1
  262. package/dist/cjs/docs/schema.d.ts +0 -26
  263. package/dist/cjs/docs/schema.js +0 -92
  264. package/dist/cjs/docs/schema.js.map +0 -1
  265. package/dist/cjs/docs/search.d.ts +0 -67
  266. package/dist/cjs/docs/search.js +0 -128
  267. package/dist/cjs/docs/search.js.map +0 -1
  268. package/dist/cjs/docs/types.d.ts +0 -64
  269. package/dist/cjs/docs/types.js +0 -15
  270. package/dist/cjs/docs/types.js.map +0 -1
  271. package/dist/cjs/errors/http-error.d.ts +0 -34
  272. package/dist/cjs/errors/http-error.js +0 -45
  273. package/dist/cjs/errors/http-error.js.map +0 -1
  274. package/dist/cjs/errors/index.d.ts +0 -12
  275. package/dist/cjs/errors/index.js +0 -18
  276. package/dist/cjs/errors/index.js.map +0 -1
  277. package/dist/cjs/i18n/index.d.ts +0 -144
  278. package/dist/cjs/i18n/index.js +0 -245
  279. package/dist/cjs/i18n/index.js.map +0 -1
  280. package/dist/cjs/i18n/locales/de.d.ts +0 -13
  281. package/dist/cjs/i18n/locales/de.js +0 -19
  282. package/dist/cjs/i18n/locales/de.js.map +0 -1
  283. package/dist/cjs/i18n/locales/index.d.ts +0 -28
  284. package/dist/cjs/i18n/locales/index.js +0 -25
  285. package/dist/cjs/i18n/locales/index.js.map +0 -1
  286. package/dist/cjs/index.d.ts +0 -33
  287. package/dist/cjs/index.js +0 -41
  288. package/dist/cjs/index.js.map +0 -1
  289. package/dist/cjs/instance/index.d.ts +0 -136
  290. package/dist/cjs/instance/index.js +0 -131
  291. package/dist/cjs/instance/index.js.map +0 -1
  292. package/dist/cjs/logging/index.d.ts +0 -116
  293. package/dist/cjs/logging/index.js +0 -121
  294. package/dist/cjs/logging/index.js.map +0 -1
  295. package/dist/cjs/logging/logger.d.ts +0 -9
  296. package/dist/cjs/logging/logger.js +0 -138
  297. package/dist/cjs/logging/logger.js.map +0 -1
  298. package/dist/cjs/logging/types.d.ts +0 -45
  299. package/dist/cjs/logging/types.js +0 -10
  300. package/dist/cjs/logging/types.js.map +0 -1
  301. package/dist/cjs/operations/bm-roles/index.d.ts +0 -52
  302. package/dist/cjs/operations/bm-roles/index.js +0 -57
  303. package/dist/cjs/operations/bm-roles/index.js.map +0 -1
  304. package/dist/cjs/operations/bm-roles/roles.d.ts +0 -155
  305. package/dist/cjs/operations/bm-roles/roles.js +0 -194
  306. package/dist/cjs/operations/bm-roles/roles.js.map +0 -1
  307. package/dist/cjs/operations/bm-users/index.d.ts +0 -50
  308. package/dist/cjs/operations/bm-users/index.js +0 -55
  309. package/dist/cjs/operations/bm-users/index.js.map +0 -1
  310. package/dist/cjs/operations/bm-users/users.d.ts +0 -189
  311. package/dist/cjs/operations/bm-users/users.js +0 -229
  312. package/dist/cjs/operations/bm-users/users.js.map +0 -1
  313. package/dist/cjs/operations/cap/index.d.ts +0 -56
  314. package/dist/cjs/operations/cap/index.js +0 -57
  315. package/dist/cjs/operations/cap/index.js.map +0 -1
  316. package/dist/cjs/operations/cap/install.d.ts +0 -53
  317. package/dist/cjs/operations/cap/install.js +0 -181
  318. package/dist/cjs/operations/cap/install.js.map +0 -1
  319. package/dist/cjs/operations/cap/list.d.ts +0 -92
  320. package/dist/cjs/operations/cap/list.js +0 -230
  321. package/dist/cjs/operations/cap/list.js.map +0 -1
  322. package/dist/cjs/operations/cap/package.d.ts +0 -39
  323. package/dist/cjs/operations/cap/package.js +0 -77
  324. package/dist/cjs/operations/cap/package.js.map +0 -1
  325. package/dist/cjs/operations/cap/pull.d.ts +0 -21
  326. package/dist/cjs/operations/cap/pull.js +0 -77
  327. package/dist/cjs/operations/cap/pull.js.map +0 -1
  328. package/dist/cjs/operations/cap/uninstall.d.ts +0 -46
  329. package/dist/cjs/operations/cap/uninstall.js +0 -87
  330. package/dist/cjs/operations/cap/uninstall.js.map +0 -1
  331. package/dist/cjs/operations/cap/validate.d.ts +0 -47
  332. package/dist/cjs/operations/cap/validate.js +0 -235
  333. package/dist/cjs/operations/cap/validate.js.map +0 -1
  334. package/dist/cjs/operations/cip/index.d.ts +0 -35
  335. package/dist/cjs/operations/cip/index.js +0 -128
  336. package/dist/cjs/operations/cip/index.js.map +0 -1
  337. package/dist/cjs/operations/cip/reports.d.ts +0 -2
  338. package/dist/cjs/operations/cip/reports.js +0 -210
  339. package/dist/cjs/operations/cip/reports.js.map +0 -1
  340. package/dist/cjs/operations/cip/types.d.ts +0 -97
  341. package/dist/cjs/operations/cip/types.js +0 -7
  342. package/dist/cjs/operations/cip/types.js.map +0 -1
  343. package/dist/cjs/operations/code/cartridges.d.ts +0 -46
  344. package/dist/cjs/operations/code/cartridges.js +0 -69
  345. package/dist/cjs/operations/code/cartridges.js.map +0 -1
  346. package/dist/cjs/operations/code/deploy.d.ts +0 -121
  347. package/dist/cjs/operations/code/deploy.js +0 -255
  348. package/dist/cjs/operations/code/deploy.js.map +0 -1
  349. package/dist/cjs/operations/code/download.d.ts +0 -77
  350. package/dist/cjs/operations/code/download.js +0 -300
  351. package/dist/cjs/operations/code/download.js.map +0 -1
  352. package/dist/cjs/operations/code/index.d.ts +0 -74
  353. package/dist/cjs/operations/code/index.js +0 -80
  354. package/dist/cjs/operations/code/index.js.map +0 -1
  355. package/dist/cjs/operations/code/upload-files.d.ts +0 -47
  356. package/dist/cjs/operations/code/upload-files.js +0 -116
  357. package/dist/cjs/operations/code/upload-files.js.map +0 -1
  358. package/dist/cjs/operations/code/versions.d.ts +0 -99
  359. package/dist/cjs/operations/code/versions.js +0 -156
  360. package/dist/cjs/operations/code/versions.js.map +0 -1
  361. package/dist/cjs/operations/code/watch.d.ts +0 -58
  362. package/dist/cjs/operations/code/watch.js +0 -175
  363. package/dist/cjs/operations/code/watch.js.map +0 -1
  364. package/dist/cjs/operations/content/asset-query.d.ts +0 -22
  365. package/dist/cjs/operations/content/asset-query.js +0 -77
  366. package/dist/cjs/operations/content/asset-query.js.map +0 -1
  367. package/dist/cjs/operations/content/export.d.ts +0 -57
  368. package/dist/cjs/operations/content/export.js +0 -221
  369. package/dist/cjs/operations/content/export.js.map +0 -1
  370. package/dist/cjs/operations/content/index.d.ts +0 -56
  371. package/dist/cjs/operations/content/index.js +0 -60
  372. package/dist/cjs/operations/content/index.js.map +0 -1
  373. package/dist/cjs/operations/content/library.d.ts +0 -137
  374. package/dist/cjs/operations/content/library.js +0 -396
  375. package/dist/cjs/operations/content/library.js.map +0 -1
  376. package/dist/cjs/operations/content/types.d.ts +0 -144
  377. package/dist/cjs/operations/content/types.js +0 -7
  378. package/dist/cjs/operations/content/types.js.map +0 -1
  379. package/dist/cjs/operations/content/validate.d.ts +0 -64
  380. package/dist/cjs/operations/content/validate.js +0 -170
  381. package/dist/cjs/operations/content/validate.js.map +0 -1
  382. package/dist/cjs/operations/debug/dap-adapter.d.ts +0 -72
  383. package/dist/cjs/operations/debug/dap-adapter.js +0 -505
  384. package/dist/cjs/operations/debug/dap-adapter.js.map +0 -1
  385. package/dist/cjs/operations/debug/debug-session.d.ts +0 -51
  386. package/dist/cjs/operations/debug/debug-session.js +0 -234
  387. package/dist/cjs/operations/debug/debug-session.js.map +0 -1
  388. package/dist/cjs/operations/debug/index.d.ts +0 -20
  389. package/dist/cjs/operations/debug/index.js +0 -21
  390. package/dist/cjs/operations/debug/index.js.map +0 -1
  391. package/dist/cjs/operations/debug/projections.d.ts +0 -72
  392. package/dist/cjs/operations/debug/projections.js +0 -84
  393. package/dist/cjs/operations/debug/projections.js.map +0 -1
  394. package/dist/cjs/operations/debug/resolve-path.d.ts +0 -15
  395. package/dist/cjs/operations/debug/resolve-path.js +0 -52
  396. package/dist/cjs/operations/debug/resolve-path.js.map +0 -1
  397. package/dist/cjs/operations/debug/sdapi-client.d.ts +0 -44
  398. package/dist/cjs/operations/debug/sdapi-client.js +0 -169
  399. package/dist/cjs/operations/debug/sdapi-client.js.map +0 -1
  400. package/dist/cjs/operations/debug/source-mapping.d.ts +0 -13
  401. package/dist/cjs/operations/debug/source-mapping.js +0 -57
  402. package/dist/cjs/operations/debug/source-mapping.js.map +0 -1
  403. package/dist/cjs/operations/debug/types.d.ts +0 -95
  404. package/dist/cjs/operations/debug/types.js +0 -2
  405. package/dist/cjs/operations/debug/types.js.map +0 -1
  406. package/dist/cjs/operations/debug/variable-store.d.ts +0 -35
  407. package/dist/cjs/operations/debug/variable-store.js +0 -52
  408. package/dist/cjs/operations/debug/variable-store.js.map +0 -1
  409. package/dist/cjs/operations/jobs/index.d.ts +0 -66
  410. package/dist/cjs/operations/jobs/index.js +0 -72
  411. package/dist/cjs/operations/jobs/index.js.map +0 -1
  412. package/dist/cjs/operations/jobs/run.d.ts +0 -239
  413. package/dist/cjs/operations/jobs/run.js +0 -324
  414. package/dist/cjs/operations/jobs/run.js.map +0 -1
  415. package/dist/cjs/operations/jobs/site-archive.d.ts +0 -267
  416. package/dist/cjs/operations/jobs/site-archive.js +0 -423
  417. package/dist/cjs/operations/jobs/site-archive.js.map +0 -1
  418. package/dist/cjs/operations/logs/index.d.ts +0 -65
  419. package/dist/cjs/operations/logs/index.js +0 -73
  420. package/dist/cjs/operations/logs/index.js.map +0 -1
  421. package/dist/cjs/operations/logs/list.d.ts +0 -35
  422. package/dist/cjs/operations/logs/list.js +0 -144
  423. package/dist/cjs/operations/logs/list.js.map +0 -1
  424. package/dist/cjs/operations/logs/path-normalizer.d.ts +0 -82
  425. package/dist/cjs/operations/logs/path-normalizer.js +0 -190
  426. package/dist/cjs/operations/logs/path-normalizer.js.map +0 -1
  427. package/dist/cjs/operations/logs/tail.d.ts +0 -92
  428. package/dist/cjs/operations/logs/tail.js +0 -525
  429. package/dist/cjs/operations/logs/tail.js.map +0 -1
  430. package/dist/cjs/operations/logs/types.d.ts +0 -132
  431. package/dist/cjs/operations/logs/types.js +0 -7
  432. package/dist/cjs/operations/logs/types.js.map +0 -1
  433. package/dist/cjs/operations/mrt/access-control.d.ts +0 -192
  434. package/dist/cjs/operations/mrt/access-control.js +0 -152
  435. package/dist/cjs/operations/mrt/access-control.js.map +0 -1
  436. package/dist/cjs/operations/mrt/b2c-config.d.ts +0 -201
  437. package/dist/cjs/operations/mrt/b2c-config.js +0 -210
  438. package/dist/cjs/operations/mrt/b2c-config.js.map +0 -1
  439. package/dist/cjs/operations/mrt/bundle.d.ts +0 -114
  440. package/dist/cjs/operations/mrt/bundle.js +0 -166
  441. package/dist/cjs/operations/mrt/bundle.js.map +0 -1
  442. package/dist/cjs/operations/mrt/cache.d.ts +0 -80
  443. package/dist/cjs/operations/mrt/cache.js +0 -65
  444. package/dist/cjs/operations/mrt/cache.js.map +0 -1
  445. package/dist/cjs/operations/mrt/certificate.d.ts +0 -60
  446. package/dist/cjs/operations/mrt/certificate.js +0 -76
  447. package/dist/cjs/operations/mrt/certificate.js.map +0 -1
  448. package/dist/cjs/operations/mrt/deployment.d.ts +0 -157
  449. package/dist/cjs/operations/mrt/deployment.js +0 -109
  450. package/dist/cjs/operations/mrt/deployment.js.map +0 -1
  451. package/dist/cjs/operations/mrt/env-var.d.ts +0 -176
  452. package/dist/cjs/operations/mrt/env-var.js +0 -231
  453. package/dist/cjs/operations/mrt/env-var.js.map +0 -1
  454. package/dist/cjs/operations/mrt/env.d.ts +0 -491
  455. package/dist/cjs/operations/mrt/env.js +0 -425
  456. package/dist/cjs/operations/mrt/env.js.map +0 -1
  457. package/dist/cjs/operations/mrt/index.d.ts +0 -75
  458. package/dist/cjs/operations/mrt/index.js +0 -81
  459. package/dist/cjs/operations/mrt/index.js.map +0 -1
  460. package/dist/cjs/operations/mrt/member.d.ts +0 -281
  461. package/dist/cjs/operations/mrt/member.js +0 -244
  462. package/dist/cjs/operations/mrt/member.js.map +0 -1
  463. package/dist/cjs/operations/mrt/notification.d.ts +0 -252
  464. package/dist/cjs/operations/mrt/notification.js +0 -206
  465. package/dist/cjs/operations/mrt/notification.js.map +0 -1
  466. package/dist/cjs/operations/mrt/organization-member.d.ts +0 -68
  467. package/dist/cjs/operations/mrt/organization-member.js +0 -88
  468. package/dist/cjs/operations/mrt/organization-member.js.map +0 -1
  469. package/dist/cjs/operations/mrt/organization.d.ts +0 -80
  470. package/dist/cjs/operations/mrt/organization.js +0 -53
  471. package/dist/cjs/operations/mrt/organization.js.map +0 -1
  472. package/dist/cjs/operations/mrt/project.d.ts +0 -261
  473. package/dist/cjs/operations/mrt/project.js +0 -232
  474. package/dist/cjs/operations/mrt/project.js.map +0 -1
  475. package/dist/cjs/operations/mrt/push.d.ts +0 -290
  476. package/dist/cjs/operations/mrt/push.js +0 -288
  477. package/dist/cjs/operations/mrt/push.js.map +0 -1
  478. package/dist/cjs/operations/mrt/redirect.d.ts +0 -337
  479. package/dist/cjs/operations/mrt/redirect.js +0 -256
  480. package/dist/cjs/operations/mrt/redirect.js.map +0 -1
  481. package/dist/cjs/operations/mrt/tail-logs.d.ts +0 -130
  482. package/dist/cjs/operations/mrt/tail-logs.js +0 -224
  483. package/dist/cjs/operations/mrt/tail-logs.js.map +0 -1
  484. package/dist/cjs/operations/mrt/user.d.ts +0 -135
  485. package/dist/cjs/operations/mrt/user.js +0 -153
  486. package/dist/cjs/operations/mrt/user.js.map +0 -1
  487. package/dist/cjs/operations/ods/index.d.ts +0 -10
  488. package/dist/cjs/operations/ods/index.js +0 -14
  489. package/dist/cjs/operations/ods/index.js.map +0 -1
  490. package/dist/cjs/operations/ods/sandbox-lookup.d.ts +0 -63
  491. package/dist/cjs/operations/ods/sandbox-lookup.js +0 -130
  492. package/dist/cjs/operations/ods/sandbox-lookup.js.map +0 -1
  493. package/dist/cjs/operations/ods/wait-for-clone.d.ts +0 -46
  494. package/dist/cjs/operations/ods/wait-for-clone.js +0 -100
  495. package/dist/cjs/operations/ods/wait-for-clone.js.map +0 -1
  496. package/dist/cjs/operations/ods/wait-for-sandbox.d.ts +0 -64
  497. package/dist/cjs/operations/ods/wait-for-sandbox.js +0 -114
  498. package/dist/cjs/operations/ods/wait-for-sandbox.js.map +0 -1
  499. package/dist/cjs/operations/orgs/index.d.ts +0 -74
  500. package/dist/cjs/operations/orgs/index.js +0 -33
  501. package/dist/cjs/operations/orgs/index.js.map +0 -1
  502. package/dist/cjs/operations/roles/index.d.ts +0 -43
  503. package/dist/cjs/operations/roles/index.js +0 -48
  504. package/dist/cjs/operations/roles/index.js.map +0 -1
  505. package/dist/cjs/operations/sites/cartridges.d.ts +0 -114
  506. package/dist/cjs/operations/sites/cartridges.js +0 -378
  507. package/dist/cjs/operations/sites/cartridges.js.map +0 -1
  508. package/dist/cjs/operations/sites/index.d.ts +0 -46
  509. package/dist/cjs/operations/sites/index.js +0 -51
  510. package/dist/cjs/operations/sites/index.js.map +0 -1
  511. package/dist/cjs/operations/users/index.d.ts +0 -153
  512. package/dist/cjs/operations/users/index.js +0 -139
  513. package/dist/cjs/operations/users/index.js.map +0 -1
  514. package/dist/cjs/operations/util/zip.d.ts +0 -5
  515. package/dist/cjs/operations/util/zip.js +0 -25
  516. package/dist/cjs/operations/util/zip.js.map +0 -1
  517. package/dist/cjs/package.json +0 -1
  518. package/dist/cjs/plugins/discovery.d.ts +0 -46
  519. package/dist/cjs/plugins/discovery.js +0 -122
  520. package/dist/cjs/plugins/discovery.js.map +0 -1
  521. package/dist/cjs/plugins/index.d.ts +0 -26
  522. package/dist/cjs/plugins/index.js +0 -32
  523. package/dist/cjs/plugins/index.js.map +0 -1
  524. package/dist/cjs/plugins/loader.d.ts +0 -34
  525. package/dist/cjs/plugins/loader.js +0 -59
  526. package/dist/cjs/plugins/loader.js.map +0 -1
  527. package/dist/cjs/plugins/manager.d.ts +0 -70
  528. package/dist/cjs/plugins/manager.js +0 -173
  529. package/dist/cjs/plugins/manager.js.map +0 -1
  530. package/dist/cjs/safety/index.d.ts +0 -12
  531. package/dist/cjs/safety/index.js +0 -11
  532. package/dist/cjs/safety/index.js.map +0 -1
  533. package/dist/cjs/safety/safety-guard.d.ts +0 -92
  534. package/dist/cjs/safety/safety-guard.js +0 -270
  535. package/dist/cjs/safety/safety-guard.js.map +0 -1
  536. package/dist/cjs/safety/safety-middleware.d.ts +0 -130
  537. package/dist/cjs/safety/safety-middleware.js +0 -248
  538. package/dist/cjs/safety/safety-middleware.js.map +0 -1
  539. package/dist/cjs/safety/types.d.ts +0 -81
  540. package/dist/cjs/safety/types.js +0 -16
  541. package/dist/cjs/safety/types.js.map +0 -1
  542. package/dist/cjs/safety/with-confirmation.d.ts +0 -58
  543. package/dist/cjs/safety/with-confirmation.js +0 -67
  544. package/dist/cjs/safety/with-confirmation.js.map +0 -1
  545. package/dist/cjs/scaffold/engine.d.ts +0 -68
  546. package/dist/cjs/scaffold/engine.js +0 -149
  547. package/dist/cjs/scaffold/engine.js.map +0 -1
  548. package/dist/cjs/scaffold/executor.d.ts +0 -36
  549. package/dist/cjs/scaffold/executor.js +0 -293
  550. package/dist/cjs/scaffold/executor.js.map +0 -1
  551. package/dist/cjs/scaffold/index.d.ts +0 -76
  552. package/dist/cjs/scaffold/index.js +0 -23
  553. package/dist/cjs/scaffold/index.js.map +0 -1
  554. package/dist/cjs/scaffold/merge.d.ts +0 -63
  555. package/dist/cjs/scaffold/merge.js +0 -192
  556. package/dist/cjs/scaffold/merge.js.map +0 -1
  557. package/dist/cjs/scaffold/parameter-resolver.d.ts +0 -86
  558. package/dist/cjs/scaffold/parameter-resolver.js +0 -191
  559. package/dist/cjs/scaffold/parameter-resolver.js.map +0 -1
  560. package/dist/cjs/scaffold/registry.d.ts +0 -60
  561. package/dist/cjs/scaffold/registry.js +0 -225
  562. package/dist/cjs/scaffold/registry.js.map +0 -1
  563. package/dist/cjs/scaffold/sources.d.ts +0 -83
  564. package/dist/cjs/scaffold/sources.js +0 -236
  565. package/dist/cjs/scaffold/sources.js.map +0 -1
  566. package/dist/cjs/scaffold/types.d.ts +0 -282
  567. package/dist/cjs/scaffold/types.js +0 -14
  568. package/dist/cjs/scaffold/types.js.map +0 -1
  569. package/dist/cjs/scaffold/validation.d.ts +0 -81
  570. package/dist/cjs/scaffold/validation.js +0 -250
  571. package/dist/cjs/scaffold/validation.js.map +0 -1
  572. package/dist/cjs/scaffold/validators.d.ts +0 -33
  573. package/dist/cjs/scaffold/validators.js +0 -340
  574. package/dist/cjs/scaffold/validators.js.map +0 -1
  575. package/dist/cjs/schemas/collapse.d.ts +0 -150
  576. package/dist/cjs/schemas/collapse.js +0 -180
  577. package/dist/cjs/schemas/collapse.js.map +0 -1
  578. package/dist/cjs/schemas/index.d.ts +0 -58
  579. package/dist/cjs/schemas/index.js +0 -65
  580. package/dist/cjs/schemas/index.js.map +0 -1
  581. package/dist/cjs/schemas/security-schemes.d.ts +0 -26
  582. package/dist/cjs/schemas/security-schemes.js +0 -44
  583. package/dist/cjs/schemas/security-schemes.js.map +0 -1
  584. package/dist/cjs/skills/agents.d.ts +0 -42
  585. package/dist/cjs/skills/agents.js +0 -200
  586. package/dist/cjs/skills/agents.js.map +0 -1
  587. package/dist/cjs/skills/github.d.ts +0 -31
  588. package/dist/cjs/skills/github.js +0 -450
  589. package/dist/cjs/skills/github.js.map +0 -1
  590. package/dist/cjs/skills/index.d.ts +0 -43
  591. package/dist/cjs/skills/index.js +0 -16
  592. package/dist/cjs/skills/index.js.map +0 -1
  593. package/dist/cjs/skills/installer.d.ts +0 -35
  594. package/dist/cjs/skills/installer.js +0 -182
  595. package/dist/cjs/skills/installer.js.map +0 -1
  596. package/dist/cjs/skills/parser.d.ts +0 -39
  597. package/dist/cjs/skills/parser.js +0 -126
  598. package/dist/cjs/skills/parser.js.map +0 -1
  599. package/dist/cjs/skills/sources.d.ts +0 -4
  600. package/dist/cjs/skills/sources.js +0 -52
  601. package/dist/cjs/skills/sources.js.map +0 -1
  602. package/dist/cjs/skills/types.d.ts +0 -153
  603. package/dist/cjs/skills/types.js +0 -7
  604. package/dist/cjs/skills/types.js.map +0 -1
  605. package/dist/cjs/slas/index.d.ts +0 -12
  606. package/dist/cjs/slas/index.js +0 -8
  607. package/dist/cjs/slas/index.js.map +0 -1
  608. package/dist/cjs/slas/pkce.d.ts +0 -13
  609. package/dist/cjs/slas/pkce.js +0 -35
  610. package/dist/cjs/slas/pkce.js.map +0 -1
  611. package/dist/cjs/slas/token.d.ts +0 -24
  612. package/dist/cjs/slas/token.js +0 -261
  613. package/dist/cjs/slas/token.js.map +0 -1
  614. package/dist/cjs/slas/types.d.ts +0 -43
  615. package/dist/cjs/slas/types.js +0 -7
  616. package/dist/cjs/slas/types.js.map +0 -1
  617. package/dist/cjs/telemetry/index.d.ts +0 -34
  618. package/dist/cjs/telemetry/index.js +0 -32
  619. package/dist/cjs/telemetry/index.js.map +0 -1
  620. package/dist/cjs/telemetry/telemetry.d.ts +0 -88
  621. package/dist/cjs/telemetry/telemetry.js +0 -298
  622. package/dist/cjs/telemetry/telemetry.js.map +0 -1
  623. package/dist/cjs/telemetry/types.d.ts +0 -62
  624. package/dist/cjs/telemetry/types.js +0 -7
  625. package/dist/cjs/telemetry/types.js.map +0 -1
  626. package/dist/cjs/test-utils/config-isolation.d.ts +0 -2
  627. package/dist/cjs/test-utils/config-isolation.js +0 -48
  628. package/dist/cjs/test-utils/config-isolation.js.map +0 -1
  629. package/dist/cjs/test-utils/index.d.ts +0 -1
  630. package/dist/cjs/test-utils/index.js +0 -7
  631. package/dist/cjs/test-utils/index.js.map +0 -1
  632. package/dist/cjs/ux/confirm.d.ts +0 -14
  633. package/dist/cjs/ux/confirm.js +0 -36
  634. package/dist/cjs/ux/confirm.js.map +0 -1
  635. package/dist/cjs/ux/index.d.ts +0 -1
  636. package/dist/cjs/ux/index.js +0 -7
  637. package/dist/cjs/ux/index.js.map +0 -1
  638. package/dist/cjs/version.d.ts +0 -14
  639. package/dist/cjs/version.js +0 -29
  640. package/dist/cjs/version.js.map +0 -1
@@ -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
- }