@salesforce/b2c-tooling-sdk 0.2.1 → 0.4.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 (578) hide show
  1. package/README.md +180 -13
  2. package/data/scaffolds/cartridge/files/.project.ejs +17 -0
  3. package/data/scaffolds/cartridge/files/cartridge/cartridge.properties.ejs +4 -0
  4. package/data/scaffolds/cartridge/files/cartridge/controllers/Example.js.ejs +19 -0
  5. package/data/scaffolds/cartridge/files/cartridge/models/example.js.ejs +14 -0
  6. package/data/scaffolds/cartridge/files/cartridge/scripts/helpers/exampleHelpers.js.ejs +18 -0
  7. package/data/scaffolds/cartridge/files/cartridge/static/default/css/example.css +6 -0
  8. package/data/scaffolds/cartridge/files/cartridge/templates/default/example/show.isml.ejs +11 -0
  9. package/data/scaffolds/cartridge/scaffold.json +88 -0
  10. package/data/scaffolds/controller/files/controller.js.ejs +134 -0
  11. package/data/scaffolds/controller/files/template.isml.ejs +22 -0
  12. package/data/scaffolds/controller/scaffold.json +64 -0
  13. package/data/scaffolds/custom-api/files/api.json.ejs +11 -0
  14. package/data/scaffolds/custom-api/files/schema.yaml.ejs +188 -0
  15. package/data/scaffolds/custom-api/files/script.js.ejs +95 -0
  16. package/data/scaffolds/custom-api/scaffold.json +65 -0
  17. package/data/scaffolds/hook/files/hook.js.ejs +99 -0
  18. package/data/scaffolds/hook/files/hooks-entry.json.ejs +6 -0
  19. package/data/scaffolds/hook/scaffold.json +60 -0
  20. package/data/scaffolds/job-step/files/step-chunk.js.ejs +136 -0
  21. package/data/scaffolds/job-step/files/step-task.js.ejs +47 -0
  22. package/data/scaffolds/job-step/files/steptypes-entry.json.ejs +41 -0
  23. package/data/scaffolds/job-step/scaffold.json +64 -0
  24. package/data/scaffolds/page-designer-component/files/component.isml.ejs +23 -0
  25. package/data/scaffolds/page-designer-component/files/component.js.ejs +35 -0
  26. package/data/scaffolds/page-designer-component/files/component.json.ejs +50 -0
  27. package/data/scaffolds/page-designer-component/scaffold.json +66 -0
  28. package/data/scaffolds/service/files/service-http.js.ejs +245 -0
  29. package/data/scaffolds/service/files/service-sftp.js.ejs +371 -0
  30. package/data/scaffolds/service/files/service-soap.js.ejs +230 -0
  31. package/data/scaffolds/service/scaffold.json +83 -0
  32. package/data/script-api/dw.extensions.payments.SalesforcePaymentsMgr.md +48 -0
  33. package/data/script-api/dw.system.Request.md +5 -0
  34. package/data/script-api/dw.web.Cookie.md +108 -31
  35. package/data/script-api/index.json +2 -2
  36. package/data/script-api/index.md +1 -1
  37. package/dist/cjs/auth/api-key.d.ts +2 -2
  38. package/dist/cjs/auth/api-key.js +1 -0
  39. package/dist/cjs/auth/api-key.js.map +1 -1
  40. package/dist/cjs/auth/basic.d.ts +2 -2
  41. package/dist/cjs/auth/basic.js +2 -0
  42. package/dist/cjs/auth/basic.js.map +1 -1
  43. package/dist/cjs/auth/index.d.ts +1 -1
  44. package/dist/cjs/auth/index.js.map +1 -1
  45. package/dist/cjs/auth/oauth-implicit.d.ts +3 -2
  46. package/dist/cjs/auth/oauth-implicit.js +9 -3
  47. package/dist/cjs/auth/oauth-implicit.js.map +1 -1
  48. package/dist/cjs/auth/oauth.d.ts +3 -2
  49. package/dist/cjs/auth/oauth.js +10 -3
  50. package/dist/cjs/auth/oauth.js.map +1 -1
  51. package/dist/cjs/auth/types.d.ts +15 -1
  52. package/dist/cjs/auth/types.js +5 -0
  53. package/dist/cjs/auth/types.js.map +1 -1
  54. package/dist/cjs/cli/am-command.d.ts +74 -0
  55. package/dist/cjs/cli/am-command.js +189 -0
  56. package/dist/cjs/cli/am-command.js.map +1 -0
  57. package/dist/cjs/cli/base-command.d.ts +61 -0
  58. package/dist/cjs/cli/base-command.js +171 -4
  59. package/dist/cjs/cli/base-command.js.map +1 -1
  60. package/dist/cjs/cli/config.d.ts +80 -0
  61. package/dist/cjs/cli/config.js +122 -2
  62. package/dist/cjs/cli/config.js.map +1 -1
  63. package/dist/cjs/cli/index.d.ts +3 -2
  64. package/dist/cjs/cli/index.js +4 -1
  65. package/dist/cjs/cli/index.js.map +1 -1
  66. package/dist/cjs/cli/instance-command.d.ts +5 -0
  67. package/dist/cjs/cli/instance-command.js +24 -23
  68. package/dist/cjs/cli/instance-command.js.map +1 -1
  69. package/dist/cjs/cli/mrt-command.d.ts +0 -6
  70. package/dist/cjs/cli/mrt-command.js +5 -29
  71. package/dist/cjs/cli/mrt-command.js.map +1 -1
  72. package/dist/cjs/cli/oauth-command.d.ts +25 -6
  73. package/dist/cjs/cli/oauth-command.js +65 -42
  74. package/dist/cjs/cli/oauth-command.js.map +1 -1
  75. package/dist/cjs/cli/ods-command.d.ts +23 -1
  76. package/dist/cjs/cli/ods-command.js +61 -4
  77. package/dist/cjs/cli/ods-command.js.map +1 -1
  78. package/dist/cjs/cli/webdav-command.d.ts +5 -0
  79. package/dist/cjs/clients/am-api.d.ts +491 -0
  80. package/dist/cjs/clients/am-api.js +944 -0
  81. package/dist/cjs/clients/am-api.js.map +1 -0
  82. package/dist/cjs/clients/am-apiclients-api.generated.d.ts +803 -0
  83. package/dist/cjs/clients/am-apiclients-api.generated.js +6 -0
  84. package/dist/cjs/clients/am-apiclients-api.generated.js.map +1 -0
  85. package/dist/cjs/clients/am-roles-api.generated.d.ts +298 -0
  86. package/dist/cjs/clients/am-roles-api.generated.js +6 -0
  87. package/dist/cjs/clients/am-roles-api.generated.js.map +1 -0
  88. package/dist/cjs/clients/am-users-api.generated.d.ts +891 -0
  89. package/dist/cjs/clients/am-users-api.generated.js +6 -0
  90. package/dist/cjs/clients/am-users-api.generated.js.map +1 -0
  91. package/dist/cjs/clients/cdn-zones.d.ts +33 -1
  92. package/dist/cjs/clients/cdn-zones.js.map +1 -1
  93. package/dist/cjs/clients/custom-apis.d.ts +30 -1
  94. package/dist/cjs/clients/custom-apis.js.map +1 -1
  95. package/dist/cjs/clients/index.d.ts +6 -2
  96. package/dist/cjs/clients/index.js +3 -1
  97. package/dist/cjs/clients/index.js.map +1 -1
  98. package/dist/cjs/clients/middleware-registry.d.ts +1 -1
  99. package/dist/cjs/clients/middleware-registry.js.map +1 -1
  100. package/dist/cjs/clients/middleware.d.ts +49 -2
  101. package/dist/cjs/clients/middleware.js +214 -2
  102. package/dist/cjs/clients/middleware.js.map +1 -1
  103. package/dist/cjs/clients/mrt-b2c.d.ts +25 -1
  104. package/dist/cjs/clients/mrt-b2c.js.map +1 -1
  105. package/dist/cjs/clients/mrt.d.ts +24 -1
  106. package/dist/cjs/clients/mrt.js +5 -1
  107. package/dist/cjs/clients/mrt.js.map +1 -1
  108. package/dist/cjs/clients/ocapi.d.ts +22 -2
  109. package/dist/cjs/clients/ocapi.js +0 -2
  110. package/dist/cjs/clients/ocapi.js.map +1 -1
  111. package/dist/cjs/clients/ods.d.ts +28 -1
  112. package/dist/cjs/clients/ods.js.map +1 -1
  113. package/dist/cjs/clients/scapi-schemas.d.ts +30 -1
  114. package/dist/cjs/clients/scapi-schemas.js.map +1 -1
  115. package/dist/cjs/clients/slas-admin.d.ts +28 -0
  116. package/dist/cjs/clients/slas-admin.js.map +1 -1
  117. package/dist/cjs/clients/tls-dispatcher.d.ts +42 -0
  118. package/dist/cjs/clients/tls-dispatcher.js +107 -0
  119. package/dist/cjs/clients/tls-dispatcher.js.map +1 -0
  120. package/dist/cjs/clients/webdav.d.ts +8 -1
  121. package/dist/cjs/clients/webdav.js +5 -1
  122. package/dist/cjs/clients/webdav.js.map +1 -1
  123. package/dist/cjs/config/dw-json.d.ts +106 -21
  124. package/dist/cjs/config/dw-json.js +170 -4
  125. package/dist/cjs/config/dw-json.js.map +1 -1
  126. package/dist/cjs/config/index.d.ts +7 -5
  127. package/dist/cjs/config/index.js +7 -3
  128. package/dist/cjs/config/index.js.map +1 -1
  129. package/dist/cjs/config/instance-manager.d.ts +97 -0
  130. package/dist/cjs/config/instance-manager.js +166 -0
  131. package/dist/cjs/config/instance-manager.js.map +1 -0
  132. package/dist/cjs/config/mapping.d.ts +63 -5
  133. package/dist/cjs/config/mapping.js +179 -18
  134. package/dist/cjs/config/mapping.js.map +1 -1
  135. package/dist/cjs/config/resolved-config.d.ts +1 -3
  136. package/dist/cjs/config/resolved-config.js +0 -8
  137. package/dist/cjs/config/resolved-config.js.map +1 -1
  138. package/dist/cjs/config/resolver.d.ts +1 -1
  139. package/dist/cjs/config/resolver.js +19 -3
  140. package/dist/cjs/config/resolver.js.map +1 -1
  141. package/dist/cjs/config/sources/dw-json-source.d.ts +17 -1
  142. package/dist/cjs/config/sources/dw-json-source.js +70 -3
  143. package/dist/cjs/config/sources/dw-json-source.js.map +1 -1
  144. package/dist/cjs/config/sources/mobify-source.js +3 -2
  145. package/dist/cjs/config/sources/mobify-source.js.map +1 -1
  146. package/dist/cjs/config/sources/package-json-source.js +9 -4
  147. package/dist/cjs/config/sources/package-json-source.js.map +1 -1
  148. package/dist/cjs/config/types.d.ts +78 -18
  149. package/dist/cjs/defaults.d.ts +6 -0
  150. package/dist/cjs/defaults.js +6 -0
  151. package/dist/cjs/defaults.js.map +1 -1
  152. package/dist/{esm/operations → cjs}/docs/download.d.ts +1 -1
  153. package/dist/cjs/{operations/docs → docs}/download.js +2 -2
  154. package/dist/cjs/docs/download.js.map +1 -0
  155. package/dist/{esm/operations → cjs}/docs/index.d.ts +4 -4
  156. package/dist/cjs/docs/index.js.map +1 -0
  157. package/dist/cjs/docs/schema.js.map +1 -0
  158. package/dist/cjs/docs/search.js.map +1 -0
  159. package/dist/cjs/docs/types.js.map +1 -0
  160. package/dist/cjs/i18n/index.js +3 -0
  161. package/dist/cjs/i18n/index.js.map +1 -1
  162. package/dist/cjs/index.d.ts +11 -12
  163. package/dist/cjs/index.js +12 -10
  164. package/dist/cjs/index.js.map +1 -1
  165. package/dist/cjs/instance/index.d.ts +4 -0
  166. package/dist/cjs/instance/index.js +6 -1
  167. package/dist/cjs/instance/index.js.map +1 -1
  168. package/dist/cjs/logging/index.d.ts +1 -1
  169. package/dist/cjs/logging/logger.js +27 -0
  170. package/dist/cjs/logging/logger.js.map +1 -1
  171. package/dist/cjs/logging/types.d.ts +9 -0
  172. package/dist/cjs/operations/content/asset-query.d.ts +22 -0
  173. package/dist/cjs/operations/content/asset-query.js +77 -0
  174. package/dist/cjs/operations/content/asset-query.js.map +1 -0
  175. package/dist/cjs/operations/content/export.d.ts +57 -0
  176. package/dist/cjs/operations/content/export.js +224 -0
  177. package/dist/cjs/operations/content/export.js.map +1 -0
  178. package/dist/cjs/operations/content/index.d.ts +43 -0
  179. package/dist/cjs/operations/content/index.js +48 -0
  180. package/dist/cjs/operations/content/index.js.map +1 -0
  181. package/dist/cjs/operations/content/library.d.ts +137 -0
  182. package/dist/cjs/operations/content/library.js +392 -0
  183. package/dist/cjs/operations/content/library.js.map +1 -0
  184. package/dist/cjs/operations/content/types.d.ts +144 -0
  185. package/dist/cjs/operations/content/types.js +7 -0
  186. package/dist/cjs/operations/content/types.js.map +1 -0
  187. package/dist/cjs/operations/logs/index.d.ts +65 -0
  188. package/dist/cjs/operations/logs/index.js +73 -0
  189. package/dist/cjs/operations/logs/index.js.map +1 -0
  190. package/dist/cjs/operations/logs/list.d.ts +35 -0
  191. package/dist/cjs/operations/logs/list.js +144 -0
  192. package/dist/cjs/operations/logs/list.js.map +1 -0
  193. package/dist/cjs/operations/logs/path-normalizer.d.ts +82 -0
  194. package/dist/cjs/operations/logs/path-normalizer.js +190 -0
  195. package/dist/cjs/operations/logs/path-normalizer.js.map +1 -0
  196. package/dist/cjs/operations/logs/tail.d.ts +92 -0
  197. package/dist/cjs/operations/logs/tail.js +525 -0
  198. package/dist/cjs/operations/logs/tail.js.map +1 -0
  199. package/dist/cjs/operations/logs/types.d.ts +132 -0
  200. package/dist/cjs/operations/logs/types.js +7 -0
  201. package/dist/cjs/operations/logs/types.js.map +1 -0
  202. package/dist/cjs/operations/mrt/b2c-config.js +19 -4
  203. package/dist/cjs/operations/mrt/b2c-config.js.map +1 -1
  204. package/dist/cjs/operations/mrt/index.d.ts +2 -0
  205. package/dist/cjs/operations/mrt/index.js +2 -0
  206. package/dist/cjs/operations/mrt/index.js.map +1 -1
  207. package/dist/cjs/operations/mrt/push.js +3 -0
  208. package/dist/cjs/operations/mrt/push.js.map +1 -1
  209. package/dist/cjs/operations/mrt/tail-logs.d.ts +130 -0
  210. package/dist/cjs/operations/mrt/tail-logs.js +223 -0
  211. package/dist/cjs/operations/mrt/tail-logs.js.map +1 -0
  212. package/dist/cjs/operations/ods/index.d.ts +8 -0
  213. package/dist/cjs/operations/ods/index.js +13 -0
  214. package/dist/cjs/operations/ods/index.js.map +1 -0
  215. package/dist/cjs/operations/ods/sandbox-lookup.d.ts +63 -0
  216. package/dist/cjs/operations/ods/sandbox-lookup.js +130 -0
  217. package/dist/cjs/operations/ods/sandbox-lookup.js.map +1 -0
  218. package/dist/cjs/operations/ods/wait-for-sandbox.d.ts +64 -0
  219. package/dist/cjs/operations/ods/wait-for-sandbox.js +114 -0
  220. package/dist/cjs/operations/ods/wait-for-sandbox.js.map +1 -0
  221. package/dist/cjs/operations/orgs/index.d.ts +74 -0
  222. package/dist/cjs/operations/orgs/index.js +33 -0
  223. package/dist/cjs/operations/orgs/index.js.map +1 -0
  224. package/dist/cjs/operations/roles/index.d.ts +43 -0
  225. package/dist/cjs/operations/roles/index.js +48 -0
  226. package/dist/cjs/operations/roles/index.js.map +1 -0
  227. package/dist/cjs/operations/users/index.d.ts +143 -0
  228. package/dist/cjs/operations/users/index.js +141 -0
  229. package/dist/cjs/operations/users/index.js.map +1 -0
  230. package/dist/cjs/scaffold/engine.d.ts +68 -0
  231. package/dist/cjs/scaffold/engine.js +149 -0
  232. package/dist/cjs/scaffold/engine.js.map +1 -0
  233. package/dist/cjs/scaffold/executor.d.ts +36 -0
  234. package/dist/cjs/scaffold/executor.js +285 -0
  235. package/dist/cjs/scaffold/executor.js.map +1 -0
  236. package/dist/cjs/scaffold/index.d.ts +74 -0
  237. package/dist/cjs/scaffold/index.js +23 -0
  238. package/dist/cjs/scaffold/index.js.map +1 -0
  239. package/dist/cjs/scaffold/merge.d.ts +56 -0
  240. package/dist/cjs/scaffold/merge.js +183 -0
  241. package/dist/cjs/scaffold/merge.js.map +1 -0
  242. package/dist/cjs/scaffold/parameter-resolver.d.ts +86 -0
  243. package/dist/cjs/scaffold/parameter-resolver.js +179 -0
  244. package/dist/cjs/scaffold/parameter-resolver.js.map +1 -0
  245. package/dist/cjs/scaffold/registry.d.ts +45 -0
  246. package/dist/cjs/scaffold/registry.js +219 -0
  247. package/dist/cjs/scaffold/registry.js.map +1 -0
  248. package/dist/cjs/scaffold/sources.d.ts +45 -0
  249. package/dist/cjs/scaffold/sources.js +113 -0
  250. package/dist/cjs/scaffold/sources.js.map +1 -0
  251. package/dist/cjs/scaffold/types.d.ts +280 -0
  252. package/dist/cjs/scaffold/types.js +14 -0
  253. package/dist/cjs/scaffold/types.js.map +1 -0
  254. package/dist/cjs/scaffold/validation.d.ts +81 -0
  255. package/dist/cjs/scaffold/validation.js +250 -0
  256. package/dist/cjs/scaffold/validation.js.map +1 -0
  257. package/dist/cjs/scaffold/validators.d.ts +33 -0
  258. package/dist/cjs/scaffold/validators.js +334 -0
  259. package/dist/cjs/scaffold/validators.js.map +1 -0
  260. package/dist/{esm/operations/scapi-schemas → cjs/schemas}/collapse.d.ts +1 -1
  261. package/dist/cjs/schemas/collapse.js.map +1 -0
  262. package/dist/cjs/{operations/scapi-schemas → schemas}/index.d.ts +5 -5
  263. package/dist/cjs/{operations/scapi-schemas → schemas}/index.js +5 -5
  264. package/dist/cjs/schemas/index.js.map +1 -0
  265. package/dist/cjs/telemetry/index.d.ts +26 -0
  266. package/dist/cjs/telemetry/index.js +32 -0
  267. package/dist/cjs/telemetry/index.js.map +1 -0
  268. package/dist/cjs/telemetry/telemetry.d.ts +90 -0
  269. package/dist/cjs/telemetry/telemetry.js +283 -0
  270. package/dist/cjs/telemetry/telemetry.js.map +1 -0
  271. package/dist/cjs/telemetry/types.d.ts +62 -0
  272. package/dist/cjs/telemetry/types.js +7 -0
  273. package/dist/cjs/telemetry/types.js.map +1 -0
  274. package/dist/cjs/test-utils/config-isolation.js +7 -0
  275. package/dist/cjs/test-utils/config-isolation.js.map +1 -1
  276. package/dist/esm/auth/api-key.d.ts +2 -2
  277. package/dist/esm/auth/api-key.js +1 -0
  278. package/dist/esm/auth/api-key.js.map +1 -1
  279. package/dist/esm/auth/basic.d.ts +2 -2
  280. package/dist/esm/auth/basic.js +2 -0
  281. package/dist/esm/auth/basic.js.map +1 -1
  282. package/dist/esm/auth/index.d.ts +1 -1
  283. package/dist/esm/auth/index.js.map +1 -1
  284. package/dist/esm/auth/oauth-implicit.d.ts +3 -2
  285. package/dist/esm/auth/oauth-implicit.js +9 -3
  286. package/dist/esm/auth/oauth-implicit.js.map +1 -1
  287. package/dist/esm/auth/oauth.d.ts +3 -2
  288. package/dist/esm/auth/oauth.js +10 -3
  289. package/dist/esm/auth/oauth.js.map +1 -1
  290. package/dist/esm/auth/types.d.ts +15 -1
  291. package/dist/esm/auth/types.js +5 -0
  292. package/dist/esm/auth/types.js.map +1 -1
  293. package/dist/esm/cli/am-command.d.ts +74 -0
  294. package/dist/esm/cli/am-command.js +196 -0
  295. package/dist/esm/cli/am-command.js.map +1 -0
  296. package/dist/esm/cli/base-command.d.ts +61 -0
  297. package/dist/esm/cli/base-command.js +171 -4
  298. package/dist/esm/cli/base-command.js.map +1 -1
  299. package/dist/esm/cli/config.d.ts +80 -0
  300. package/dist/esm/cli/config.js +122 -2
  301. package/dist/esm/cli/config.js.map +1 -1
  302. package/dist/esm/cli/index.d.ts +3 -2
  303. package/dist/esm/cli/index.js +4 -1
  304. package/dist/esm/cli/index.js.map +1 -1
  305. package/dist/esm/cli/instance-command.d.ts +5 -0
  306. package/dist/esm/cli/instance-command.js +24 -23
  307. package/dist/esm/cli/instance-command.js.map +1 -1
  308. package/dist/esm/cli/mrt-command.d.ts +0 -6
  309. package/dist/esm/cli/mrt-command.js +5 -29
  310. package/dist/esm/cli/mrt-command.js.map +1 -1
  311. package/dist/esm/cli/oauth-command.d.ts +25 -6
  312. package/dist/esm/cli/oauth-command.js +65 -42
  313. package/dist/esm/cli/oauth-command.js.map +1 -1
  314. package/dist/esm/cli/ods-command.d.ts +23 -1
  315. package/dist/esm/cli/ods-command.js +61 -4
  316. package/dist/esm/cli/ods-command.js.map +1 -1
  317. package/dist/esm/cli/webdav-command.d.ts +5 -0
  318. package/dist/esm/clients/am-api.d.ts +491 -0
  319. package/dist/esm/clients/am-api.js +944 -0
  320. package/dist/esm/clients/am-api.js.map +1 -0
  321. package/dist/esm/clients/am-apiclients-api.generated.d.ts +803 -0
  322. package/dist/esm/clients/am-apiclients-api.generated.js +6 -0
  323. package/dist/esm/clients/am-apiclients-api.generated.js.map +1 -0
  324. package/dist/esm/clients/am-roles-api.generated.d.ts +298 -0
  325. package/dist/esm/clients/am-roles-api.generated.js +6 -0
  326. package/dist/esm/clients/am-roles-api.generated.js.map +1 -0
  327. package/dist/esm/clients/am-users-api.generated.d.ts +891 -0
  328. package/dist/esm/clients/am-users-api.generated.js +6 -0
  329. package/dist/esm/clients/am-users-api.generated.js.map +1 -0
  330. package/dist/esm/clients/cdn-zones.d.ts +33 -1
  331. package/dist/esm/clients/cdn-zones.js.map +1 -1
  332. package/dist/esm/clients/custom-apis.d.ts +30 -1
  333. package/dist/esm/clients/custom-apis.js.map +1 -1
  334. package/dist/esm/clients/index.d.ts +6 -2
  335. package/dist/esm/clients/index.js +3 -1
  336. package/dist/esm/clients/index.js.map +1 -1
  337. package/dist/esm/clients/middleware-registry.d.ts +1 -1
  338. package/dist/esm/clients/middleware-registry.js.map +1 -1
  339. package/dist/esm/clients/middleware.d.ts +49 -2
  340. package/dist/esm/clients/middleware.js +214 -2
  341. package/dist/esm/clients/middleware.js.map +1 -1
  342. package/dist/esm/clients/mrt-b2c.d.ts +25 -1
  343. package/dist/esm/clients/mrt-b2c.js.map +1 -1
  344. package/dist/esm/clients/mrt.d.ts +24 -1
  345. package/dist/esm/clients/mrt.js +5 -1
  346. package/dist/esm/clients/mrt.js.map +1 -1
  347. package/dist/esm/clients/ocapi.d.ts +22 -2
  348. package/dist/esm/clients/ocapi.js +0 -2
  349. package/dist/esm/clients/ocapi.js.map +1 -1
  350. package/dist/esm/clients/ods.d.ts +28 -1
  351. package/dist/esm/clients/ods.js.map +1 -1
  352. package/dist/esm/clients/scapi-schemas.d.ts +30 -1
  353. package/dist/esm/clients/scapi-schemas.js.map +1 -1
  354. package/dist/esm/clients/slas-admin.d.ts +28 -0
  355. package/dist/esm/clients/slas-admin.js.map +1 -1
  356. package/dist/esm/clients/tls-dispatcher.d.ts +42 -0
  357. package/dist/esm/clients/tls-dispatcher.js +107 -0
  358. package/dist/esm/clients/tls-dispatcher.js.map +1 -0
  359. package/dist/esm/clients/webdav.d.ts +8 -1
  360. package/dist/esm/clients/webdav.js +5 -1
  361. package/dist/esm/clients/webdav.js.map +1 -1
  362. package/dist/esm/config/dw-json.d.ts +106 -21
  363. package/dist/esm/config/dw-json.js +170 -4
  364. package/dist/esm/config/dw-json.js.map +1 -1
  365. package/dist/esm/config/index.d.ts +7 -5
  366. package/dist/esm/config/index.js +7 -3
  367. package/dist/esm/config/index.js.map +1 -1
  368. package/dist/esm/config/instance-manager.d.ts +97 -0
  369. package/dist/esm/config/instance-manager.js +166 -0
  370. package/dist/esm/config/instance-manager.js.map +1 -0
  371. package/dist/esm/config/mapping.d.ts +63 -5
  372. package/dist/esm/config/mapping.js +179 -18
  373. package/dist/esm/config/mapping.js.map +1 -1
  374. package/dist/esm/config/resolved-config.d.ts +1 -3
  375. package/dist/esm/config/resolved-config.js +0 -8
  376. package/dist/esm/config/resolved-config.js.map +1 -1
  377. package/dist/esm/config/resolver.d.ts +1 -1
  378. package/dist/esm/config/resolver.js +19 -3
  379. package/dist/esm/config/resolver.js.map +1 -1
  380. package/dist/esm/config/sources/dw-json-source.d.ts +17 -1
  381. package/dist/esm/config/sources/dw-json-source.js +70 -3
  382. package/dist/esm/config/sources/dw-json-source.js.map +1 -1
  383. package/dist/esm/config/sources/mobify-source.js +3 -2
  384. package/dist/esm/config/sources/mobify-source.js.map +1 -1
  385. package/dist/esm/config/sources/package-json-source.js +9 -4
  386. package/dist/esm/config/sources/package-json-source.js.map +1 -1
  387. package/dist/esm/config/types.d.ts +78 -18
  388. package/dist/esm/defaults.d.ts +6 -0
  389. package/dist/esm/defaults.js +6 -0
  390. package/dist/esm/defaults.js.map +1 -1
  391. package/dist/{cjs/operations → esm}/docs/download.d.ts +1 -1
  392. package/dist/esm/{operations/docs → docs}/download.js +2 -2
  393. package/dist/esm/docs/download.js.map +1 -0
  394. package/dist/{cjs/operations → esm}/docs/index.d.ts +4 -4
  395. package/dist/esm/docs/index.js.map +1 -0
  396. package/dist/esm/docs/schema.js.map +1 -0
  397. package/dist/esm/docs/search.js.map +1 -0
  398. package/dist/esm/docs/types.js.map +1 -0
  399. package/dist/esm/i18n/index.js +3 -0
  400. package/dist/esm/i18n/index.js.map +1 -1
  401. package/dist/esm/index.d.ts +11 -12
  402. package/dist/esm/index.js +12 -10
  403. package/dist/esm/index.js.map +1 -1
  404. package/dist/esm/instance/index.d.ts +4 -0
  405. package/dist/esm/instance/index.js +6 -1
  406. package/dist/esm/instance/index.js.map +1 -1
  407. package/dist/esm/logging/index.d.ts +1 -1
  408. package/dist/esm/logging/logger.js +27 -0
  409. package/dist/esm/logging/logger.js.map +1 -1
  410. package/dist/esm/logging/types.d.ts +9 -0
  411. package/dist/esm/operations/content/asset-query.d.ts +22 -0
  412. package/dist/esm/operations/content/asset-query.js +77 -0
  413. package/dist/esm/operations/content/asset-query.js.map +1 -0
  414. package/dist/esm/operations/content/export.d.ts +57 -0
  415. package/dist/esm/operations/content/export.js +224 -0
  416. package/dist/esm/operations/content/export.js.map +1 -0
  417. package/dist/esm/operations/content/index.d.ts +43 -0
  418. package/dist/esm/operations/content/index.js +48 -0
  419. package/dist/esm/operations/content/index.js.map +1 -0
  420. package/dist/esm/operations/content/library.d.ts +137 -0
  421. package/dist/esm/operations/content/library.js +392 -0
  422. package/dist/esm/operations/content/library.js.map +1 -0
  423. package/dist/esm/operations/content/types.d.ts +144 -0
  424. package/dist/esm/operations/content/types.js +7 -0
  425. package/dist/esm/operations/content/types.js.map +1 -0
  426. package/dist/esm/operations/logs/index.d.ts +65 -0
  427. package/dist/esm/operations/logs/index.js +73 -0
  428. package/dist/esm/operations/logs/index.js.map +1 -0
  429. package/dist/esm/operations/logs/list.d.ts +35 -0
  430. package/dist/esm/operations/logs/list.js +144 -0
  431. package/dist/esm/operations/logs/list.js.map +1 -0
  432. package/dist/esm/operations/logs/path-normalizer.d.ts +82 -0
  433. package/dist/esm/operations/logs/path-normalizer.js +190 -0
  434. package/dist/esm/operations/logs/path-normalizer.js.map +1 -0
  435. package/dist/esm/operations/logs/tail.d.ts +92 -0
  436. package/dist/esm/operations/logs/tail.js +525 -0
  437. package/dist/esm/operations/logs/tail.js.map +1 -0
  438. package/dist/esm/operations/logs/types.d.ts +132 -0
  439. package/dist/esm/operations/logs/types.js +7 -0
  440. package/dist/esm/operations/logs/types.js.map +1 -0
  441. package/dist/esm/operations/mrt/b2c-config.js +19 -4
  442. package/dist/esm/operations/mrt/b2c-config.js.map +1 -1
  443. package/dist/esm/operations/mrt/index.d.ts +2 -0
  444. package/dist/esm/operations/mrt/index.js +2 -0
  445. package/dist/esm/operations/mrt/index.js.map +1 -1
  446. package/dist/esm/operations/mrt/push.js +3 -0
  447. package/dist/esm/operations/mrt/push.js.map +1 -1
  448. package/dist/esm/operations/mrt/tail-logs.d.ts +130 -0
  449. package/dist/esm/operations/mrt/tail-logs.js +223 -0
  450. package/dist/esm/operations/mrt/tail-logs.js.map +1 -0
  451. package/dist/esm/operations/ods/index.d.ts +8 -0
  452. package/dist/esm/operations/ods/index.js +13 -0
  453. package/dist/esm/operations/ods/index.js.map +1 -0
  454. package/dist/esm/operations/ods/sandbox-lookup.d.ts +63 -0
  455. package/dist/esm/operations/ods/sandbox-lookup.js +130 -0
  456. package/dist/esm/operations/ods/sandbox-lookup.js.map +1 -0
  457. package/dist/esm/operations/ods/wait-for-sandbox.d.ts +64 -0
  458. package/dist/esm/operations/ods/wait-for-sandbox.js +114 -0
  459. package/dist/esm/operations/ods/wait-for-sandbox.js.map +1 -0
  460. package/dist/esm/operations/orgs/index.d.ts +74 -0
  461. package/dist/esm/operations/orgs/index.js +33 -0
  462. package/dist/esm/operations/orgs/index.js.map +1 -0
  463. package/dist/esm/operations/roles/index.d.ts +43 -0
  464. package/dist/esm/operations/roles/index.js +48 -0
  465. package/dist/esm/operations/roles/index.js.map +1 -0
  466. package/dist/esm/operations/users/index.d.ts +143 -0
  467. package/dist/esm/operations/users/index.js +141 -0
  468. package/dist/esm/operations/users/index.js.map +1 -0
  469. package/dist/esm/scaffold/engine.d.ts +68 -0
  470. package/dist/esm/scaffold/engine.js +149 -0
  471. package/dist/esm/scaffold/engine.js.map +1 -0
  472. package/dist/esm/scaffold/executor.d.ts +36 -0
  473. package/dist/esm/scaffold/executor.js +285 -0
  474. package/dist/esm/scaffold/executor.js.map +1 -0
  475. package/dist/esm/scaffold/index.d.ts +74 -0
  476. package/dist/esm/scaffold/index.js +23 -0
  477. package/dist/esm/scaffold/index.js.map +1 -0
  478. package/dist/esm/scaffold/merge.d.ts +56 -0
  479. package/dist/esm/scaffold/merge.js +183 -0
  480. package/dist/esm/scaffold/merge.js.map +1 -0
  481. package/dist/esm/scaffold/parameter-resolver.d.ts +86 -0
  482. package/dist/esm/scaffold/parameter-resolver.js +179 -0
  483. package/dist/esm/scaffold/parameter-resolver.js.map +1 -0
  484. package/dist/esm/scaffold/registry.d.ts +45 -0
  485. package/dist/esm/scaffold/registry.js +219 -0
  486. package/dist/esm/scaffold/registry.js.map +1 -0
  487. package/dist/esm/scaffold/sources.d.ts +45 -0
  488. package/dist/esm/scaffold/sources.js +113 -0
  489. package/dist/esm/scaffold/sources.js.map +1 -0
  490. package/dist/esm/scaffold/types.d.ts +280 -0
  491. package/dist/esm/scaffold/types.js +14 -0
  492. package/dist/esm/scaffold/types.js.map +1 -0
  493. package/dist/esm/scaffold/validation.d.ts +81 -0
  494. package/dist/esm/scaffold/validation.js +250 -0
  495. package/dist/esm/scaffold/validation.js.map +1 -0
  496. package/dist/esm/scaffold/validators.d.ts +33 -0
  497. package/dist/esm/scaffold/validators.js +334 -0
  498. package/dist/esm/scaffold/validators.js.map +1 -0
  499. package/dist/{cjs/operations/scapi-schemas → esm/schemas}/collapse.d.ts +1 -1
  500. package/dist/esm/schemas/collapse.js.map +1 -0
  501. package/dist/esm/{operations/scapi-schemas → schemas}/index.d.ts +5 -5
  502. package/dist/esm/{operations/scapi-schemas → schemas}/index.js +5 -5
  503. package/dist/esm/schemas/index.js.map +1 -0
  504. package/dist/esm/telemetry/index.d.ts +26 -0
  505. package/dist/esm/telemetry/index.js +32 -0
  506. package/dist/esm/telemetry/index.js.map +1 -0
  507. package/dist/esm/telemetry/telemetry.d.ts +90 -0
  508. package/dist/esm/telemetry/telemetry.js +283 -0
  509. package/dist/esm/telemetry/telemetry.js.map +1 -0
  510. package/dist/esm/telemetry/types.d.ts +62 -0
  511. package/dist/esm/telemetry/types.js +7 -0
  512. package/dist/esm/telemetry/types.js.map +1 -0
  513. package/dist/esm/test-utils/config-isolation.js +7 -0
  514. package/dist/esm/test-utils/config-isolation.js.map +1 -1
  515. package/package.json +112 -50
  516. package/specs/am-apiclients-api-v1.yaml +965 -0
  517. package/specs/am-roles-api-v1.yaml +316 -0
  518. package/specs/am-users-api-v1.yaml +1102 -0
  519. package/dist/cjs/logger.d.ts +0 -66
  520. package/dist/cjs/logger.js +0 -80
  521. package/dist/cjs/logger.js.map +0 -1
  522. package/dist/cjs/operations/docs/download.js.map +0 -1
  523. package/dist/cjs/operations/docs/index.js.map +0 -1
  524. package/dist/cjs/operations/docs/schema.js.map +0 -1
  525. package/dist/cjs/operations/docs/search.js.map +0 -1
  526. package/dist/cjs/operations/docs/types.js.map +0 -1
  527. package/dist/cjs/operations/scapi-schemas/collapse.js.map +0 -1
  528. package/dist/cjs/operations/scapi-schemas/index.js.map +0 -1
  529. package/dist/cjs/operations/sites/index.d.ts +0 -56
  530. package/dist/cjs/operations/sites/index.js +0 -19
  531. package/dist/cjs/operations/sites/index.js.map +0 -1
  532. package/dist/cjs/platform/index.d.ts +0 -38
  533. package/dist/cjs/platform/index.js +0 -42
  534. package/dist/cjs/platform/index.js.map +0 -1
  535. package/dist/cjs/platform/mrt.d.ts +0 -19
  536. package/dist/cjs/platform/mrt.js +0 -22
  537. package/dist/cjs/platform/mrt.js.map +0 -1
  538. package/dist/cjs/platform/ods.d.ts +0 -17
  539. package/dist/cjs/platform/ods.js +0 -22
  540. package/dist/cjs/platform/ods.js.map +0 -1
  541. package/dist/esm/logger.d.ts +0 -66
  542. package/dist/esm/logger.js +0 -80
  543. package/dist/esm/logger.js.map +0 -1
  544. package/dist/esm/operations/docs/download.js.map +0 -1
  545. package/dist/esm/operations/docs/index.js.map +0 -1
  546. package/dist/esm/operations/docs/schema.js.map +0 -1
  547. package/dist/esm/operations/docs/search.js.map +0 -1
  548. package/dist/esm/operations/docs/types.js.map +0 -1
  549. package/dist/esm/operations/scapi-schemas/collapse.js.map +0 -1
  550. package/dist/esm/operations/scapi-schemas/index.js.map +0 -1
  551. package/dist/esm/operations/sites/index.d.ts +0 -56
  552. package/dist/esm/operations/sites/index.js +0 -67
  553. package/dist/esm/operations/sites/index.js.map +0 -1
  554. package/dist/esm/platform/index.d.ts +0 -38
  555. package/dist/esm/platform/index.js +0 -42
  556. package/dist/esm/platform/index.js.map +0 -1
  557. package/dist/esm/platform/mrt.d.ts +0 -19
  558. package/dist/esm/platform/mrt.js +0 -22
  559. package/dist/esm/platform/mrt.js.map +0 -1
  560. package/dist/esm/platform/ods.d.ts +0 -17
  561. package/dist/esm/platform/ods.js +0 -22
  562. package/dist/esm/platform/ods.js.map +0 -1
  563. /package/dist/cjs/{operations/docs → docs}/index.js +0 -0
  564. /package/dist/cjs/{operations/docs → docs}/schema.d.ts +0 -0
  565. /package/dist/cjs/{operations/docs → docs}/schema.js +0 -0
  566. /package/dist/cjs/{operations/docs → docs}/search.d.ts +0 -0
  567. /package/dist/cjs/{operations/docs → docs}/search.js +0 -0
  568. /package/dist/cjs/{operations/docs → docs}/types.d.ts +0 -0
  569. /package/dist/cjs/{operations/docs → docs}/types.js +0 -0
  570. /package/dist/cjs/{operations/scapi-schemas → schemas}/collapse.js +0 -0
  571. /package/dist/esm/{operations/docs → docs}/index.js +0 -0
  572. /package/dist/esm/{operations/docs → docs}/schema.d.ts +0 -0
  573. /package/dist/esm/{operations/docs → docs}/schema.js +0 -0
  574. /package/dist/esm/{operations/docs → docs}/search.d.ts +0 -0
  575. /package/dist/esm/{operations/docs → docs}/search.js +0 -0
  576. /package/dist/esm/{operations/docs → docs}/types.d.ts +0 -0
  577. /package/dist/esm/{operations/docs → docs}/types.js +0 -0
  578. /package/dist/esm/{operations/scapi-schemas → schemas}/collapse.js +0 -0
@@ -0,0 +1,113 @@
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 { findCartridges } from '../operations/code/cartridges.js';
7
+ /**
8
+ * Common B2C Commerce hook extension points.
9
+ */
10
+ export const HOOK_POINTS = [
11
+ { value: 'dw.order.calculate', label: 'Order Calculate' },
12
+ { value: 'dw.order.calculateShipping', label: 'Calculate Shipping' },
13
+ { value: 'dw.order.createOrder', label: 'Create Order' },
14
+ { value: 'dw.order.afterPOST', label: 'OCAPI Order afterPOST' },
15
+ { value: 'dw.order.beforePOST', label: 'OCAPI Order beforePOST' },
16
+ { value: 'dw.ocapi.shop.basket.afterPOST', label: 'OCAPI Basket afterPOST' },
17
+ { value: 'dw.ocapi.shop.basket.modifyGETResponse', label: 'OCAPI Basket modifyGET' },
18
+ { value: 'dw.ocapi.shop.order.afterPOST', label: 'OCAPI Shop Order afterPOST' },
19
+ { value: 'dw.ocapi.shop.order.beforePOST', label: 'OCAPI Shop Order beforePOST' },
20
+ { value: 'dw.ocapi.data.order.afterPATCH', label: 'OCAPI Data Order afterPATCH' },
21
+ { value: 'dw.customer.registration', label: 'Customer Registration' },
22
+ { value: 'dw.customer.afterCreate', label: 'Customer afterCreate' },
23
+ { value: 'app.payment.processor', label: 'Payment Processor' },
24
+ { value: 'app.payment.form.processor', label: 'Payment Form Processor' },
25
+ { value: 'dw.system.request.onSession', label: 'On Session' },
26
+ { value: 'dw.extensions.csv.onFileProcess', label: 'CSV File Process' },
27
+ ];
28
+ /**
29
+ * Resolve a local (non-remote) parameter source.
30
+ * Does not require authentication.
31
+ *
32
+ * @param source - The source type to resolve
33
+ * @param projectRoot - Project root directory for cartridge discovery
34
+ * @returns Resolved choices and optional path mapping
35
+ */
36
+ export function resolveLocalSource(source, projectRoot) {
37
+ switch (source) {
38
+ case 'cartridges': {
39
+ const cartridges = findCartridges(projectRoot);
40
+ const pathMap = new Map(cartridges.map((c) => [c.name, c.src]));
41
+ return {
42
+ choices: cartridges.map((c) => ({ value: c.name, label: c.name })),
43
+ pathMap,
44
+ };
45
+ }
46
+ case 'hook-points': {
47
+ return { choices: HOOK_POINTS };
48
+ }
49
+ default: {
50
+ return { choices: [] };
51
+ }
52
+ }
53
+ }
54
+ /**
55
+ * Resolve a remote parameter source.
56
+ * Requires authenticated B2CInstance (follows SDK operation pattern).
57
+ *
58
+ * @param source - The source type
59
+ * @param instance - Authenticated B2C instance
60
+ * @returns Promise resolving to choices array
61
+ * @throws Error if API call fails
62
+ */
63
+ export async function resolveRemoteSource(source, instance) {
64
+ switch (source) {
65
+ case 'sites': {
66
+ const { data, error } = await instance.ocapi.GET('/sites', {
67
+ params: { query: { select: '(**)' } },
68
+ });
69
+ if (error) {
70
+ throw new Error('Failed to fetch sites from B2C instance');
71
+ }
72
+ const sites = data;
73
+ return (sites.data ?? []).map((s) => ({
74
+ value: s.id ?? '',
75
+ label: s.display_name?.default || s.id || '',
76
+ }));
77
+ }
78
+ default: {
79
+ return [];
80
+ }
81
+ }
82
+ }
83
+ /**
84
+ * Check if a source requires remote API access.
85
+ *
86
+ * @param source - The source type to check
87
+ * @returns True if the source requires remote access
88
+ */
89
+ export function isRemoteSource(source) {
90
+ return source === 'sites';
91
+ }
92
+ /**
93
+ * Validate a value against a dynamic source (local only).
94
+ * Used for non-interactive validation of provided values.
95
+ *
96
+ * @param source - The source type
97
+ * @param value - The value to validate
98
+ * @param projectRoot - Project root for local sources
99
+ * @returns Object with valid status and available choices if invalid
100
+ */
101
+ export function validateAgainstSource(source, value, projectRoot) {
102
+ if (source === 'cartridges') {
103
+ const { choices } = resolveLocalSource(source, projectRoot);
104
+ const valid = choices.some((c) => c.value === value);
105
+ return {
106
+ valid,
107
+ availableChoices: valid ? undefined : choices.map((c) => c.value),
108
+ };
109
+ }
110
+ // For hook-points and other sources, no validation (allow any value)
111
+ return { valid: true };
112
+ }
113
+ //# sourceMappingURL=sources.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sources.js","sourceRoot":"","sources":["../../../src/scaffold/sources.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,280 @@
1
+ /**
2
+ * Path to the built-in scaffolds data directory
3
+ */
4
+ export declare const SCAFFOLDS_DATA_DIR: string;
5
+ /**
6
+ * Scaffold category. Built-in scaffolds use 'cartridge', but custom scaffolds
7
+ * can define their own categories.
8
+ */
9
+ export type ScaffoldCategory = string;
10
+ /**
11
+ * Parameter types supported by scaffold parameters
12
+ */
13
+ export type ScaffoldParameterType = 'string' | 'boolean' | 'choice' | 'multi-choice';
14
+ /**
15
+ * Dynamic sources for populating parameter choices at runtime.
16
+ *
17
+ * - `cartridges`: Discovers cartridges in project via .project files
18
+ * - `hook-points`: Static list of common hook extension points
19
+ * - `sites`: Remote - fetches sites from connected B2C instance
20
+ */
21
+ export type DynamicParameterSource = 'cartridges' | 'hook-points' | 'sites';
22
+ /**
23
+ * Overwrite behavior for generated files
24
+ */
25
+ export type OverwriteBehavior = 'never' | 'always' | 'prompt' | 'merge';
26
+ /**
27
+ * Choice option for choice/multi-choice parameters
28
+ */
29
+ export interface ScaffoldChoice {
30
+ /** The value to use when this choice is selected */
31
+ value: string;
32
+ /** Human-readable label for this choice */
33
+ label: string;
34
+ }
35
+ /**
36
+ * Parameter definition for scaffold prompts and flags
37
+ */
38
+ export interface ScaffoldParameter {
39
+ /** Parameter name (camelCase), used in templates as variable name */
40
+ name: string;
41
+ /** Prompt message shown in interactive mode */
42
+ prompt: string;
43
+ /** Type of the parameter */
44
+ type: ScaffoldParameterType;
45
+ /** Whether this parameter is required */
46
+ required: boolean;
47
+ /** Default value if not provided */
48
+ default?: string | boolean | string[];
49
+ /** Regex pattern for validation (string types only) */
50
+ pattern?: string;
51
+ /** Error message shown when validation fails */
52
+ validationMessage?: string;
53
+ /** Available choices for choice/multi-choice types */
54
+ choices?: ScaffoldChoice[];
55
+ /** CLI flag name override (e.g., "--name"). If not set, uses --{paramName} */
56
+ flag?: string;
57
+ /** Conditional expression: only prompt if condition is met (e.g., "otherParam=value") */
58
+ when?: string;
59
+ /** Dynamic source for populating choices at runtime */
60
+ source?: DynamicParameterSource;
61
+ }
62
+ /**
63
+ * File mapping from template to destination
64
+ */
65
+ export interface FileMapping {
66
+ /** Template file path relative to the scaffold's files/ directory */
67
+ template: string;
68
+ /** Destination path (supports {{variable}} substitution) */
69
+ destination: string;
70
+ /** Conditional expression: only generate if truthy */
71
+ condition?: string;
72
+ /** Overwrite behavior for existing files */
73
+ overwrite?: OverwriteBehavior;
74
+ }
75
+ /**
76
+ * File modification definition for modifying existing files
77
+ */
78
+ export interface FileModification {
79
+ /** Target file path (supports {{variable}} substitution) */
80
+ target: string;
81
+ /** Type of modification */
82
+ type: 'json-merge' | 'insert-after' | 'insert-before' | 'append' | 'prepend';
83
+ /** Content to insert/merge (for text modifications) */
84
+ content?: string;
85
+ /** Template file for the content */
86
+ contentTemplate?: string;
87
+ /** Marker string to find (for insert-after/insert-before) */
88
+ marker?: string;
89
+ /** JSON path for json-merge operations (e.g., "scripts") */
90
+ jsonPath?: string;
91
+ /** Conditional expression */
92
+ condition?: string;
93
+ }
94
+ /**
95
+ * Scaffold manifest (scaffold.json)
96
+ */
97
+ export interface ScaffoldManifest {
98
+ /** Unique identifier (kebab-case) */
99
+ name: string;
100
+ /** Human-readable display name */
101
+ displayName: string;
102
+ /** Description of what this scaffold creates */
103
+ description: string;
104
+ /** Category for filtering and organization */
105
+ category: ScaffoldCategory;
106
+ /** Parameters for user input (prompts/flags) */
107
+ parameters: ScaffoldParameter[];
108
+ /** File mappings (optional - defaults to all files in files/ directory) */
109
+ files?: FileMapping[];
110
+ /** Modifications to existing files (optional) */
111
+ modifications?: FileModification[];
112
+ /** Instructions to show after generation */
113
+ postInstructions?: string;
114
+ /** Default output directory relative to cwd (created if needed) */
115
+ defaultOutputDir?: string;
116
+ }
117
+ /**
118
+ * Resolved scaffold with full paths and source information
119
+ */
120
+ export interface Scaffold {
121
+ /** Unique identifier */
122
+ id: string;
123
+ /** The manifest definition */
124
+ manifest: ScaffoldManifest;
125
+ /** Full path to the scaffold directory */
126
+ path: string;
127
+ /** Full path to the files/ directory within the scaffold */
128
+ filesPath: string;
129
+ /** Source of this scaffold */
130
+ source: ScaffoldSource;
131
+ }
132
+ /**
133
+ * Source/origin of a scaffold
134
+ */
135
+ export type ScaffoldSource = 'built-in' | 'user' | 'project' | 'plugin';
136
+ /**
137
+ * Priority ordering for scaffold providers
138
+ */
139
+ export type ScaffoldProviderPriority = 'before' | 'after';
140
+ /**
141
+ * Options for scaffold discovery
142
+ */
143
+ export interface ScaffoldDiscoveryOptions {
144
+ /** Filter by category */
145
+ category?: ScaffoldCategory;
146
+ /** Search query for name/description */
147
+ query?: string;
148
+ /** Include only scaffolds from specific sources */
149
+ sources?: ScaffoldSource[];
150
+ /** Project root directory (for project-local scaffolds) */
151
+ projectRoot?: string;
152
+ }
153
+ /**
154
+ * Scaffold provider interface for extensibility
155
+ */
156
+ export interface ScaffoldProvider {
157
+ /** Provider name for identification */
158
+ readonly name: string;
159
+ /** Priority: 'before' runs before built-in, 'after' runs after */
160
+ readonly priority: ScaffoldProviderPriority;
161
+ /** Get scaffolds from this provider */
162
+ getScaffolds(options: ScaffoldDiscoveryOptions): Promise<Scaffold[]>;
163
+ }
164
+ /**
165
+ * Scaffold transformer interface for modifying scaffolds
166
+ */
167
+ export interface ScaffoldTransformer {
168
+ /** Transformer name for identification */
169
+ readonly name: string;
170
+ /** Transform a scaffold definition */
171
+ transform(scaffold: Scaffold, context: ScaffoldContext): Promise<Scaffold>;
172
+ }
173
+ /**
174
+ * Context passed during scaffold operations
175
+ */
176
+ export interface ScaffoldContext {
177
+ /** Output directory for generated files */
178
+ outputDir: string;
179
+ /** Resolved parameter values */
180
+ variables: Record<string, string | boolean | string[]>;
181
+ /** Whether running in dry-run mode */
182
+ dryRun: boolean;
183
+ /** Whether to force overwrite existing files */
184
+ force: boolean;
185
+ /** Whether running in interactive mode */
186
+ interactive: boolean;
187
+ }
188
+ /**
189
+ * Options for scaffold generation
190
+ */
191
+ export interface ScaffoldGenerateOptions {
192
+ /** Output directory (defaults to cwd) */
193
+ outputDir?: string;
194
+ /** Pre-supplied variable values (from flags/env) */
195
+ variables?: Record<string, string | boolean | string[]>;
196
+ /** Preview without writing files */
197
+ dryRun?: boolean;
198
+ /** Skip prompts and overwrite existing files */
199
+ force?: boolean;
200
+ /** Enable interactive prompts (defaults to true if TTY) */
201
+ interactive?: boolean;
202
+ }
203
+ /**
204
+ * Result of a file generation operation
205
+ */
206
+ export interface GeneratedFile {
207
+ /** Relative path from output directory */
208
+ path: string;
209
+ /** Absolute path to the file */
210
+ absolutePath: string;
211
+ /** Action taken */
212
+ action: 'created' | 'skipped' | 'overwritten' | 'merged';
213
+ /** Reason for skip (if action is 'skipped') */
214
+ skipReason?: string;
215
+ }
216
+ /**
217
+ * Result of scaffold generation
218
+ */
219
+ export interface ScaffoldGenerateResult {
220
+ /** The scaffold that was used */
221
+ scaffold: Scaffold;
222
+ /** Files that were generated */
223
+ files: GeneratedFile[];
224
+ /** Post-generation instructions */
225
+ postInstructions?: string;
226
+ /** Whether this was a dry run */
227
+ dryRun: boolean;
228
+ /** Output directory */
229
+ outputDir: string;
230
+ }
231
+ /**
232
+ * Validation error for scaffold parameters
233
+ */
234
+ export interface ParameterValidationError {
235
+ /** Parameter name */
236
+ parameter: string;
237
+ /** Error message */
238
+ message: string;
239
+ /** The invalid value */
240
+ value?: unknown;
241
+ }
242
+ /**
243
+ * Result of parameter validation
244
+ */
245
+ export interface ParameterValidationResult {
246
+ /** Whether validation passed */
247
+ valid: boolean;
248
+ /** Validation errors (if any) */
249
+ errors: ParameterValidationError[];
250
+ /** Resolved parameter values */
251
+ values: Record<string, string | boolean | string[]>;
252
+ }
253
+ /**
254
+ * Template rendering helpers available in EJS templates
255
+ */
256
+ export interface TemplateHelpers {
257
+ /** Convert to kebab-case */
258
+ kebabCase: (str: string) => string;
259
+ /** Convert to camelCase */
260
+ camelCase: (str: string) => string;
261
+ /** Convert to PascalCase */
262
+ pascalCase: (str: string) => string;
263
+ /** Convert to snake_case */
264
+ snakeCase: (str: string) => string;
265
+ /** Current year */
266
+ year: number;
267
+ /** Current date (YYYY-MM-DD) */
268
+ date: string;
269
+ /** Generate a UUID v4 */
270
+ uuid: () => string;
271
+ }
272
+ /**
273
+ * Result of resolving a dynamic parameter source.
274
+ */
275
+ export interface SourceResult {
276
+ /** Available choices */
277
+ choices: ScaffoldChoice[];
278
+ /** For cartridges: map of name to absolute path */
279
+ pathMap?: Map<string, string>;
280
+ }
@@ -0,0 +1,14 @@
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 path from 'node:path';
7
+ import { createRequire } from 'node:module';
8
+ const require = createRequire(import.meta.url);
9
+ const packageRoot = path.dirname(require.resolve('@salesforce/b2c-tooling-sdk/package.json'));
10
+ /**
11
+ * Path to the built-in scaffolds data directory
12
+ */
13
+ export const SCAFFOLDS_DATA_DIR = path.join(packageRoot, 'data/scaffolds');
14
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/scaffold/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAC,aAAa,EAAC,MAAM,aAAa,CAAC;AAE1C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAC,CAAC;AAE9F;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,81 @@
1
+ import type { ScaffoldManifest } from './types.js';
2
+ /**
3
+ * Severity of a validation issue.
4
+ */
5
+ export type ValidationIssueSeverity = 'error' | 'warning';
6
+ /**
7
+ * A validation issue found during scaffold validation.
8
+ */
9
+ export interface ValidationIssue {
10
+ /** Severity of the issue */
11
+ severity: ValidationIssueSeverity;
12
+ /** Human-readable message describing the issue */
13
+ message: string;
14
+ /** File path where the issue was found, if applicable */
15
+ file?: string;
16
+ }
17
+ /**
18
+ * Result of validating a scaffold directory.
19
+ */
20
+ export interface ValidationResult {
21
+ /** Whether the scaffold is valid (no errors) */
22
+ valid: boolean;
23
+ /** Number of errors found */
24
+ errors: number;
25
+ /** Number of warnings found */
26
+ warnings: number;
27
+ /** All issues found during validation */
28
+ issues: ValidationIssue[];
29
+ }
30
+ /**
31
+ * Validate EJS syntax in template content.
32
+ *
33
+ * Checks for:
34
+ * - Mismatched opening/closing EJS tags
35
+ * - Invalid EJS tag patterns
36
+ * - Empty output tags
37
+ *
38
+ * @param content - Template content to validate
39
+ * @param filename - Optional filename for error reporting
40
+ * @returns Array of validation issues found
41
+ */
42
+ export declare function validateEjsSyntax(content: string, filename?: string): ValidationIssue[];
43
+ /**
44
+ * Check that all referenced template files exist.
45
+ *
46
+ * @param filesDir - Path to the files/ directory
47
+ * @param manifest - Scaffold manifest
48
+ * @returns Array of validation issues for missing files
49
+ */
50
+ export declare function checkTemplateFiles(filesDir: string, manifest: ScaffoldManifest): Promise<ValidationIssue[]>;
51
+ /**
52
+ * Check for orphaned template files not referenced in manifest.
53
+ *
54
+ * @param allTemplates - All template file paths in files/ directory
55
+ * @param manifest - Scaffold manifest
56
+ * @returns Array of validation issues for orphaned files
57
+ */
58
+ export declare function checkOrphanedFiles(allTemplates: string[], manifest: ScaffoldManifest): ValidationIssue[];
59
+ /**
60
+ * Options for scaffold directory validation.
61
+ */
62
+ export interface ValidateScaffoldOptions {
63
+ /** Treat warnings as errors */
64
+ strict?: boolean;
65
+ }
66
+ /**
67
+ * Validate a complete scaffold directory.
68
+ *
69
+ * Performs comprehensive validation including:
70
+ * - Checking scaffold.json exists and is valid JSON
71
+ * - Validating manifest structure against schema
72
+ * - Verifying files/ directory exists
73
+ * - Checking all referenced template files exist
74
+ * - Finding orphaned template files
75
+ * - Validating EJS syntax in templates
76
+ *
77
+ * @param scaffoldPath - Path to the scaffold directory
78
+ * @param options - Validation options
79
+ * @returns Validation result with issues found
80
+ */
81
+ export declare function validateScaffoldDirectory(scaffoldPath: string, options?: ValidateScaffoldOptions): Promise<ValidationResult>;