@salesforce/b2c-cli 0.3.0 → 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 (252) hide show
  1. package/README.md +70 -1
  2. package/bin/dev.cmd +3 -0
  3. package/bin/dev.js +14 -1
  4. package/dist/commands/am/clients/create.d.ts +28 -0
  5. package/dist/commands/am/clients/create.js +156 -0
  6. package/dist/commands/am/clients/create.js.map +1 -0
  7. package/dist/commands/am/clients/delete.d.ts +13 -0
  8. package/dist/commands/am/clients/delete.js +29 -0
  9. package/dist/commands/am/clients/delete.js.map +1 -0
  10. package/dist/commands/am/clients/get.d.ts +26 -0
  11. package/dist/commands/am/clients/get.js +186 -0
  12. package/dist/commands/am/clients/get.js.map +1 -0
  13. package/dist/commands/am/clients/list.d.ts +18 -0
  14. package/dist/commands/am/clients/list.js +139 -0
  15. package/dist/commands/am/clients/list.js.map +1 -0
  16. package/dist/commands/am/clients/password.d.ts +16 -0
  17. package/dist/commands/am/clients/password.js +51 -0
  18. package/dist/commands/am/clients/password.js.map +1 -0
  19. package/dist/commands/am/clients/update.d.ts +34 -0
  20. package/dist/commands/am/clients/update.js +146 -0
  21. package/dist/commands/am/clients/update.js.map +1 -0
  22. package/dist/commands/am/orgs/get.d.ts +23 -0
  23. package/dist/commands/am/orgs/get.js +175 -0
  24. package/dist/commands/am/orgs/get.js.map +1 -0
  25. package/dist/commands/am/orgs/list.d.ts +18 -0
  26. package/dist/commands/am/orgs/list.js +149 -0
  27. package/dist/commands/am/orgs/list.js.map +1 -0
  28. package/dist/commands/am/roles/get.d.ts +15 -0
  29. package/dist/commands/am/roles/get.js +63 -0
  30. package/dist/commands/am/roles/get.js.map +1 -0
  31. package/dist/commands/am/roles/grant.d.ts +18 -0
  32. package/dist/commands/am/roles/grant.js +66 -0
  33. package/dist/commands/am/roles/grant.js.map +1 -0
  34. package/dist/commands/am/roles/list.d.ts +22 -0
  35. package/dist/commands/am/roles/list.js +142 -0
  36. package/dist/commands/am/roles/list.js.map +1 -0
  37. package/dist/commands/am/roles/revoke.d.ts +18 -0
  38. package/dist/commands/am/roles/revoke.js +66 -0
  39. package/dist/commands/am/roles/revoke.js.map +1 -0
  40. package/dist/commands/am/users/create.d.ts +17 -0
  41. package/dist/commands/am/users/create.js +56 -0
  42. package/dist/commands/am/users/create.js.map +1 -0
  43. package/dist/commands/am/users/delete.d.ts +16 -0
  44. package/dist/commands/am/users/delete.js +63 -0
  45. package/dist/commands/am/users/delete.js.map +1 -0
  46. package/dist/commands/am/users/get.d.ts +23 -0
  47. package/dist/commands/am/users/get.js +161 -0
  48. package/dist/commands/am/users/get.js.map +1 -0
  49. package/dist/commands/am/users/list.d.ts +21 -0
  50. package/dist/commands/am/users/list.js +162 -0
  51. package/dist/commands/am/users/list.js.map +1 -0
  52. package/dist/commands/am/users/reset.d.ts +13 -0
  53. package/dist/commands/am/users/reset.js +43 -0
  54. package/dist/commands/am/users/reset.js.map +1 -0
  55. package/dist/commands/am/users/update.d.ts +18 -0
  56. package/dist/commands/am/users/update.js +63 -0
  57. package/dist/commands/am/users/update.js.map +1 -0
  58. package/dist/commands/code/activate.d.ts +1 -0
  59. package/dist/commands/code/delete.d.ts +1 -0
  60. package/dist/commands/code/deploy.d.ts +1 -0
  61. package/dist/commands/code/watch.d.ts +1 -0
  62. package/dist/commands/content/export.d.ts +57 -0
  63. package/dist/commands/content/export.js +217 -0
  64. package/dist/commands/content/export.js.map +1 -0
  65. package/dist/commands/content/list.d.ts +56 -0
  66. package/dist/commands/content/list.js +133 -0
  67. package/dist/commands/content/list.js.map +1 -0
  68. package/dist/commands/docs/download.d.ts +1 -0
  69. package/dist/commands/ecdn/cache/purge.d.ts +1 -0
  70. package/dist/commands/ecdn/certificates/add.d.ts +1 -0
  71. package/dist/commands/ecdn/certificates/delete.d.ts +1 -0
  72. package/dist/commands/ecdn/certificates/list.d.ts +1 -0
  73. package/dist/commands/ecdn/certificates/update.d.ts +1 -0
  74. package/dist/commands/ecdn/certificates/validate.d.ts +1 -0
  75. package/dist/commands/ecdn/cipher-suites/get.d.ts +1 -0
  76. package/dist/commands/ecdn/cipher-suites/update.d.ts +1 -0
  77. package/dist/commands/ecdn/logpush/jobs/create.d.ts +1 -0
  78. package/dist/commands/ecdn/logpush/jobs/delete.d.ts +1 -0
  79. package/dist/commands/ecdn/logpush/jobs/get.d.ts +1 -0
  80. package/dist/commands/ecdn/logpush/jobs/list.d.ts +1 -0
  81. package/dist/commands/ecdn/logpush/jobs/update.d.ts +1 -0
  82. package/dist/commands/ecdn/logpush/ownership.d.ts +1 -0
  83. package/dist/commands/ecdn/mrt-rules/create.d.ts +1 -0
  84. package/dist/commands/ecdn/mrt-rules/delete.d.ts +1 -0
  85. package/dist/commands/ecdn/mrt-rules/get.d.ts +1 -0
  86. package/dist/commands/ecdn/mrt-rules/rules/delete.d.ts +1 -0
  87. package/dist/commands/ecdn/mrt-rules/rules/update.d.ts +1 -0
  88. package/dist/commands/ecdn/mrt-rules/update.d.ts +1 -0
  89. package/dist/commands/ecdn/mtls/create.d.ts +1 -0
  90. package/dist/commands/ecdn/mtls/delete.d.ts +1 -0
  91. package/dist/commands/ecdn/mtls/get.d.ts +1 -0
  92. package/dist/commands/ecdn/mtls/list.d.ts +1 -0
  93. package/dist/commands/ecdn/origin-headers/delete.d.ts +1 -0
  94. package/dist/commands/ecdn/origin-headers/get.d.ts +1 -0
  95. package/dist/commands/ecdn/origin-headers/set.d.ts +1 -0
  96. package/dist/commands/ecdn/page-shield/notifications/create.d.ts +1 -0
  97. package/dist/commands/ecdn/page-shield/notifications/delete.d.ts +1 -0
  98. package/dist/commands/ecdn/page-shield/notifications/list.d.ts +1 -0
  99. package/dist/commands/ecdn/page-shield/policies/create.d.ts +1 -0
  100. package/dist/commands/ecdn/page-shield/policies/delete.d.ts +1 -0
  101. package/dist/commands/ecdn/page-shield/policies/get.d.ts +1 -0
  102. package/dist/commands/ecdn/page-shield/policies/list.d.ts +1 -0
  103. package/dist/commands/ecdn/page-shield/policies/update.d.ts +1 -0
  104. package/dist/commands/ecdn/page-shield/scripts/get.d.ts +1 -0
  105. package/dist/commands/ecdn/page-shield/scripts/list.d.ts +1 -0
  106. package/dist/commands/ecdn/security/get.d.ts +1 -0
  107. package/dist/commands/ecdn/security/update.d.ts +1 -0
  108. package/dist/commands/ecdn/speed/get.d.ts +1 -0
  109. package/dist/commands/ecdn/speed/update.d.ts +1 -0
  110. package/dist/commands/ecdn/waf/groups/list.d.ts +1 -0
  111. package/dist/commands/ecdn/waf/groups/update.d.ts +1 -0
  112. package/dist/commands/ecdn/waf/managed-rules/list.d.ts +1 -0
  113. package/dist/commands/ecdn/waf/managed-rules/update.d.ts +1 -0
  114. package/dist/commands/ecdn/waf/migrate.d.ts +1 -0
  115. package/dist/commands/ecdn/waf/owasp/get.d.ts +1 -0
  116. package/dist/commands/ecdn/waf/owasp/update.d.ts +1 -0
  117. package/dist/commands/ecdn/waf/rules/get.d.ts +1 -0
  118. package/dist/commands/ecdn/waf/rules/list.d.ts +1 -0
  119. package/dist/commands/ecdn/waf/rules/update.d.ts +1 -0
  120. package/dist/commands/ecdn/waf/rulesets/list.d.ts +1 -0
  121. package/dist/commands/ecdn/waf/rulesets/update.d.ts +1 -0
  122. package/dist/commands/ecdn/zones/create.d.ts +1 -0
  123. package/dist/commands/ecdn/zones/list.d.ts +1 -0
  124. package/dist/commands/job/export.d.ts +1 -0
  125. package/dist/commands/job/import.d.ts +1 -0
  126. package/dist/commands/job/run.d.ts +1 -0
  127. package/dist/commands/job/search.d.ts +1 -0
  128. package/dist/commands/job/wait.d.ts +1 -0
  129. package/dist/commands/logs/get.d.ts +1 -0
  130. package/dist/commands/logs/list.d.ts +1 -0
  131. package/dist/commands/logs/tail.d.ts +1 -0
  132. package/dist/commands/mrt/bundle/deploy.js +24 -4
  133. package/dist/commands/mrt/bundle/deploy.js.map +1 -1
  134. package/dist/commands/mrt/tail-logs.d.ts +27 -0
  135. package/dist/commands/mrt/tail-logs.js +137 -0
  136. package/dist/commands/mrt/tail-logs.js.map +1 -0
  137. package/dist/commands/{ods → sandbox}/create.d.ts +8 -14
  138. package/dist/commands/{ods → sandbox}/create.js +112 -102
  139. package/dist/commands/sandbox/create.js.map +1 -0
  140. package/dist/commands/sandbox/delete.d.ts +19 -0
  141. package/dist/commands/sandbox/delete.js +141 -0
  142. package/dist/commands/sandbox/delete.js.map +1 -0
  143. package/dist/commands/{ods → sandbox}/get.d.ts +2 -1
  144. package/dist/commands/{ods → sandbox}/get.js +5 -4
  145. package/dist/commands/sandbox/get.js.map +1 -0
  146. package/dist/commands/{ods → sandbox}/info.d.ts +2 -1
  147. package/dist/commands/{ods → sandbox}/info.js +6 -5
  148. package/dist/commands/sandbox/info.js.map +1 -0
  149. package/dist/commands/{ods → sandbox}/list.d.ts +2 -1
  150. package/dist/commands/{ods → sandbox}/list.js +6 -5
  151. package/dist/commands/sandbox/list.js.map +1 -0
  152. package/dist/commands/{ods → sandbox}/restart.d.ts +7 -1
  153. package/dist/commands/sandbox/restart.js +107 -0
  154. package/dist/commands/sandbox/restart.js.map +1 -0
  155. package/dist/commands/{ods → sandbox}/start.d.ts +7 -1
  156. package/dist/commands/sandbox/start.js +108 -0
  157. package/dist/commands/sandbox/start.js.map +1 -0
  158. package/dist/commands/{ods → sandbox}/stop.d.ts +7 -1
  159. package/dist/commands/sandbox/stop.js +107 -0
  160. package/dist/commands/sandbox/stop.js.map +1 -0
  161. package/dist/commands/scaffold/generate.d.ts +22 -0
  162. package/dist/commands/scaffold/generate.js +74 -0
  163. package/dist/commands/scaffold/generate.js.map +1 -0
  164. package/dist/commands/scaffold/index.d.ts +24 -0
  165. package/dist/commands/scaffold/index.js +80 -0
  166. package/dist/commands/scaffold/index.js.map +1 -0
  167. package/dist/commands/scaffold/info.d.ts +24 -0
  168. package/dist/commands/scaffold/info.js +89 -0
  169. package/dist/commands/scaffold/info.js.map +1 -0
  170. package/dist/commands/scaffold/init.d.ts +29 -0
  171. package/dist/commands/scaffold/init.js +221 -0
  172. package/dist/commands/scaffold/init.js.map +1 -0
  173. package/dist/commands/scaffold/list.d.ts +38 -0
  174. package/dist/commands/scaffold/list.js +131 -0
  175. package/dist/commands/scaffold/list.js.map +1 -0
  176. package/dist/commands/scaffold/search.d.ts +32 -0
  177. package/dist/commands/scaffold/search.js +97 -0
  178. package/dist/commands/scaffold/search.js.map +1 -0
  179. package/dist/commands/scaffold/validate.d.ts +24 -0
  180. package/dist/commands/scaffold/validate.js +74 -0
  181. package/dist/commands/scaffold/validate.js.map +1 -0
  182. package/dist/commands/scapi/custom/status.d.ts +1 -0
  183. package/dist/commands/scapi/schemas/get.d.ts +1 -0
  184. package/dist/commands/scapi/schemas/list.d.ts +1 -0
  185. package/dist/commands/setup/index.d.ts +12 -0
  186. package/dist/commands/setup/index.js +34 -0
  187. package/dist/commands/setup/index.js.map +1 -0
  188. package/dist/commands/setup/{config.d.ts → inspect.d.ts} +5 -4
  189. package/dist/commands/setup/{config.js → inspect.js} +5 -3
  190. package/dist/commands/setup/inspect.js.map +1 -0
  191. package/dist/commands/setup/instance/create.d.ts +43 -0
  192. package/dist/commands/setup/instance/create.js +269 -0
  193. package/dist/commands/setup/instance/create.js.map +1 -0
  194. package/dist/commands/setup/instance/index.d.ts +9 -0
  195. package/dist/commands/setup/instance/index.js +22 -0
  196. package/dist/commands/setup/instance/index.js.map +1 -0
  197. package/dist/commands/setup/instance/list.d.ts +31 -0
  198. package/dist/commands/setup/instance/list.js +68 -0
  199. package/dist/commands/setup/instance/list.js.map +1 -0
  200. package/dist/commands/setup/instance/remove.d.ts +34 -0
  201. package/dist/commands/setup/instance/remove.js +75 -0
  202. package/dist/commands/setup/instance/remove.js.map +1 -0
  203. package/dist/commands/setup/instance/set-active.d.ts +33 -0
  204. package/dist/commands/setup/instance/set-active.js +78 -0
  205. package/dist/commands/setup/instance/set-active.js.map +1 -0
  206. package/dist/commands/slas/client/create.d.ts +1 -0
  207. package/dist/commands/slas/client/create.js +1 -0
  208. package/dist/commands/slas/client/create.js.map +1 -1
  209. package/dist/commands/slas/client/delete.d.ts +1 -0
  210. package/dist/commands/slas/client/get.d.ts +1 -0
  211. package/dist/commands/slas/client/list.d.ts +1 -0
  212. package/dist/commands/slas/client/list.js +8 -3
  213. package/dist/commands/slas/client/list.js.map +1 -1
  214. package/dist/commands/slas/client/update.d.ts +1 -0
  215. package/dist/commands/webdav/get.d.ts +1 -0
  216. package/dist/commands/webdav/rm.d.ts +1 -0
  217. package/dist/i18n/locales/en.d.ts +42 -0
  218. package/dist/i18n/locales/en.js +42 -0
  219. package/dist/i18n/locales/en.js.map +1 -1
  220. package/dist/i18n/locales/index.d.ts +42 -0
  221. package/dist/lib/scaffold/generate-helper.d.ts +47 -0
  222. package/dist/lib/scaffold/generate-helper.js +271 -0
  223. package/dist/lib/scaffold/generate-helper.js.map +1 -0
  224. package/dist/lib/scaffold/source-resolver.d.ts +25 -0
  225. package/dist/lib/scaffold/source-resolver.js +37 -0
  226. package/dist/lib/scaffold/source-resolver.js.map +1 -0
  227. package/dist/utils/ecdn/zone-command.d.ts +1 -0
  228. package/dist/utils/mrt-logs/format.d.ts +28 -0
  229. package/dist/utils/mrt-logs/format.js +90 -0
  230. package/dist/utils/mrt-logs/format.js.map +1 -0
  231. package/dist/utils/mrt-logs/index.d.ts +1 -0
  232. package/dist/utils/mrt-logs/index.js +7 -0
  233. package/dist/utils/mrt-logs/index.js.map +1 -0
  234. package/dist/utils/slas/client.d.ts +7 -0
  235. package/dist/utils/slas/client.js +26 -13
  236. package/dist/utils/slas/client.js.map +1 -1
  237. package/oclif.manifest.json +13503 -4591
  238. package/package.json +61 -19
  239. package/dist/commands/ods/create.js.map +0 -1
  240. package/dist/commands/ods/delete.d.ts +0 -15
  241. package/dist/commands/ods/delete.js +0 -86
  242. package/dist/commands/ods/delete.js.map +0 -1
  243. package/dist/commands/ods/get.js.map +0 -1
  244. package/dist/commands/ods/info.js.map +0 -1
  245. package/dist/commands/ods/list.js.map +0 -1
  246. package/dist/commands/ods/restart.js +0 -51
  247. package/dist/commands/ods/restart.js.map +0 -1
  248. package/dist/commands/ods/start.js +0 -51
  249. package/dist/commands/ods/start.js.map +0 -1
  250. package/dist/commands/ods/stop.js +0 -51
  251. package/dist/commands/ods/stop.js.map +0 -1
  252. package/dist/commands/setup/config.js.map +0 -1
@@ -0,0 +1,63 @@
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 { Args, Flags } from '@oclif/core';
7
+ import { AmCommand } from '@salesforce/b2c-tooling-sdk/cli';
8
+ import { t } from '../../../i18n/index.js';
9
+ /**
10
+ * Command to update an Account Manager user.
11
+ */
12
+ export default class UserUpdate extends AmCommand {
13
+ static args = {
14
+ login: Args.string({
15
+ description: 'User login (email)',
16
+ required: true,
17
+ }),
18
+ };
19
+ static description = t('commands.user.update.description', 'Update an Account Manager user');
20
+ static enableJsonFlag = true;
21
+ static examples = [
22
+ '<%= config.bin %> <%= command.id %> user@example.com --first-name Jane',
23
+ '<%= config.bin %> <%= command.id %> user@example.com --last-name Smith --json',
24
+ ];
25
+ static flags = {
26
+ 'first-name': Flags.string({
27
+ description: 'First name',
28
+ }),
29
+ 'last-name': Flags.string({
30
+ description: 'Last name',
31
+ }),
32
+ };
33
+ async run() {
34
+ const { login } = this.args;
35
+ const { 'first-name': firstName, 'last-name': lastName } = this.flags;
36
+ this.log(t('commands.user.update.fetching', 'Fetching user {{login}}...', { login }));
37
+ const user = await this.accountManagerClient.findUserByLogin(login);
38
+ if (!user) {
39
+ this.error(t('commands.user.update.notFound', 'User {{login}} not found', { login }));
40
+ }
41
+ if (!user.id) {
42
+ this.error(t('commands.user.update.noId', 'User does not have an ID'));
43
+ }
44
+ const changes = {};
45
+ if (firstName !== undefined) {
46
+ changes.firstName = firstName;
47
+ }
48
+ if (lastName !== undefined) {
49
+ changes.lastName = lastName;
50
+ }
51
+ if (Object.keys(changes).length === 0) {
52
+ this.error(t('commands.user.update.noChanges', 'No changes specified. Provide at least one field to update.'));
53
+ }
54
+ this.log(t('commands.user.update.updating', 'Updating user {{login}}...', { login }));
55
+ const updatedUser = await this.accountManagerClient.updateUser(user.id, changes);
56
+ if (this.jsonEnabled()) {
57
+ return updatedUser;
58
+ }
59
+ this.log(t('commands.user.update.success', 'User {{login}} updated successfully.', { login }));
60
+ return updatedUser;
61
+ }
62
+ }
63
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/am/users/update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,IAAI,EAAE,KAAK,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,EAAC,SAAS,EAAC,MAAM,iCAAiC,CAAC;AAE1D,OAAO,EAAC,CAAC,EAAC,MAAM,wBAAwB,CAAC;AAEzC;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,SAA4B;IAClE,MAAM,CAAC,IAAI,GAAG;QACZ,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC;YACjB,WAAW,EAAE,oBAAoB;YACjC,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAC;IAEF,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,kCAAkC,EAAE,gCAAgC,CAAC,CAAC;IAE7F,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;IAE7B,MAAM,CAAC,QAAQ,GAAG;QAChB,wEAAwE;QACxE,+EAA+E;KAChF,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG;QACb,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC;YACzB,WAAW,EAAE,YAAY;SAC1B,CAAC;QACF,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;YACxB,WAAW,EAAE,WAAW;SACzB,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,IAAI,CAAC;QAC1B,MAAM,EAAC,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QAEpE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,+BAA+B,EAAE,4BAA4B,EAAE,EAAC,KAAK,EAAC,CAAC,CAAC,CAAC;QAEpF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAEpE,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,+BAA+B,EAAE,0BAA0B,EAAE,EAAC,KAAK,EAAC,CAAC,CAAC,CAAC;QACtF,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,2BAA2B,EAAE,0BAA0B,CAAC,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,OAAO,GAA4B,EAAE,CAAC;QAC5C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QAChC,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC9B,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,gCAAgC,EAAE,6DAA6D,CAAC,CAAC,CAAC;QACjH,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,+BAA+B,EAAE,4BAA4B,EAAE,EAAC,KAAK,EAAC,CAAC,CAAC,CAAC;QAEpF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAyB,CAAC,CAAC;QAEnG,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,8BAA8B,EAAE,sCAAsC,EAAE,EAAC,KAAK,EAAC,CAAC,CAAC,CAAC;QAE7F,OAAO,WAAW,CAAC;IACrB,CAAC"}
@@ -22,6 +22,7 @@ export default class CodeActivate extends InstanceCommand<typeof CodeActivate> {
22
22
  'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
23
23
  'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
24
24
  'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
+ 'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
25
26
  'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
27
  'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
28
  debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
@@ -27,6 +27,7 @@ export default class CodeDelete extends InstanceCommand<typeof CodeDelete> {
27
27
  'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
28
  'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
29
  'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
+ 'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
30
31
  'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
31
32
  'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
32
33
  debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
@@ -27,6 +27,7 @@ export default class CodeDeploy extends CartridgeCommand<typeof CodeDeploy> {
27
27
  'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
28
  'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
29
  'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
+ 'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
30
31
  'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
31
32
  'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
32
33
  debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
@@ -24,6 +24,7 @@ export default class CodeWatch extends CartridgeCommand<typeof CodeWatch> {
24
24
  'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
25
  'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
26
  'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
+ 'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
27
28
  'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
29
  'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
30
  debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
@@ -0,0 +1,57 @@
1
+ import { JobCommand } from '@salesforce/b2c-tooling-sdk/cli';
2
+ import { exportContent, fetchContentLibrary, type ContentExportResult } from '@salesforce/b2c-tooling-sdk/operations/content';
3
+ export default class ContentExport extends JobCommand<typeof ContentExport> {
4
+ static args: {
5
+ pages: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
6
+ };
7
+ static description: string;
8
+ static enableJsonFlag: boolean;
9
+ static examples: string[];
10
+ static flags: {
11
+ library: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
12
+ output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
13
+ 'site-library': import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
+ 'asset-query': import("@oclif/core/interfaces").OptionFlag<string[], import("@oclif/core/interfaces").CustomOptions>;
15
+ regex: import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
+ folder: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
17
+ offline: import("@oclif/core/interfaces").BooleanFlag<boolean>;
18
+ 'library-file': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
19
+ 'keep-orphans': import("@oclif/core/interfaces").BooleanFlag<boolean>;
20
+ 'show-tree': import("@oclif/core/interfaces").BooleanFlag<boolean>;
21
+ timeout: import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
22
+ 'dry-run': import("@oclif/core/interfaces").BooleanFlag<boolean>;
23
+ server: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
24
+ 'webdav-server': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
+ 'code-version': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
+ username: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
+ password: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
+ certificate: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
+ passphrase: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
+ selfsigned: import("@oclif/core/interfaces").BooleanFlag<boolean>;
31
+ verify: import("@oclif/core/interfaces").BooleanFlag<boolean>;
32
+ 'client-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
33
+ 'client-secret': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
34
+ scope: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
35
+ 'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
36
+ 'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
37
+ 'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
38
+ 'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
39
+ 'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
40
+ 'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
41
+ debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
42
+ json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
43
+ lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
44
+ config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
45
+ instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
46
+ 'working-directory': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
47
+ 'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
48
+ 'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
49
+ 'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
50
+ };
51
+ static strict: boolean;
52
+ protected operations: {
53
+ exportContent: typeof exportContent;
54
+ fetchContentLibrary: typeof fetchContentLibrary;
55
+ };
56
+ run(): Promise<ContentExportResult>;
57
+ }
@@ -0,0 +1,217 @@
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 { Args, Flags, ux } from '@oclif/core';
7
+ import { JobCommand } from '@salesforce/b2c-tooling-sdk/cli';
8
+ import { LibraryNode, exportContent, fetchContentLibrary, } from '@salesforce/b2c-tooling-sdk/operations/content';
9
+ export default class ContentExport extends JobCommand {
10
+ static args = {
11
+ pages: Args.string({
12
+ description: 'Content IDs to export (pages, content assets, or components)',
13
+ required: true,
14
+ }),
15
+ };
16
+ static description = 'Export Page Designer pages with components and assets from a content library';
17
+ static enableJsonFlag = true;
18
+ static examples = [
19
+ '<%= config.bin %> <%= command.id %> --library SharedLibrary homepage',
20
+ '<%= config.bin %> <%= command.id %> --library SharedLibrary homepage about-us',
21
+ '<%= config.bin %> <%= command.id %> --library SharedLibrary "hero-.*" --regex',
22
+ '<%= config.bin %> <%= command.id %> --library RefArch --site-library homepage -o ./export',
23
+ '<%= config.bin %> <%= command.id %> --library SharedLibrary homepage --json',
24
+ '<%= config.bin %> <%= command.id %> --library SharedLibrary homepage --dry-run',
25
+ ];
26
+ static flags = {
27
+ ...JobCommand.baseFlags,
28
+ library: Flags.string({
29
+ description: 'Library ID or site ID (also configurable via dw.json "content-library")',
30
+ }),
31
+ output: Flags.string({
32
+ char: 'o',
33
+ description: 'Output directory',
34
+ }),
35
+ 'site-library': Flags.boolean({
36
+ description: 'Library is a site-private library',
37
+ default: false,
38
+ }),
39
+ 'asset-query': Flags.string({
40
+ char: 'q',
41
+ description: 'JSON dot-paths for asset extraction',
42
+ multiple: true,
43
+ default: ['image.path'],
44
+ }),
45
+ regex: Flags.boolean({
46
+ char: 'r',
47
+ description: 'Treat page IDs as regular expressions',
48
+ default: false,
49
+ }),
50
+ folder: Flags.string({
51
+ description: 'Filter by folder classification',
52
+ multiple: true,
53
+ }),
54
+ offline: Flags.boolean({
55
+ description: 'Skip asset downloads',
56
+ default: false,
57
+ }),
58
+ 'library-file': Flags.string({
59
+ description: 'Use a local library XML file instead of fetching from instance',
60
+ }),
61
+ 'keep-orphans': Flags.boolean({
62
+ description: 'Include orphan components in export',
63
+ default: false,
64
+ }),
65
+ 'show-tree': Flags.boolean({
66
+ description: 'Display tree structure of exported content',
67
+ default: true,
68
+ }),
69
+ timeout: Flags.integer({
70
+ description: 'Export job timeout in seconds',
71
+ }),
72
+ 'dry-run': Flags.boolean({
73
+ description: 'Preview export without downloading assets or writing files',
74
+ default: false,
75
+ }),
76
+ };
77
+ // Allow multiple page arguments
78
+ static strict = false;
79
+ operations = {
80
+ exportContent,
81
+ fetchContentLibrary,
82
+ };
83
+ async run() {
84
+ const { argv, flags } = await this.parse(ContentExport);
85
+ const pageIds = argv;
86
+ const outputPath = flags.output ??
87
+ `content-${new Date()
88
+ .toISOString()
89
+ .replaceAll(/[-:.TZ]/g, '')
90
+ .slice(0, 14)}`;
91
+ if (pageIds.length === 0) {
92
+ this.error('At least one content ID is required.');
93
+ }
94
+ const libraryId = flags.library ?? this.resolvedConfig.values.contentLibrary;
95
+ if (!libraryId) {
96
+ this.error('Library is required. Set via --library flag or "content-library" in dw.json.');
97
+ }
98
+ if (!flags['library-file']) {
99
+ this.requireOAuthCredentials();
100
+ }
101
+ const waitOptions = flags.timeout ? { timeout: flags.timeout * 1000 } : undefined;
102
+ if (flags['dry-run']) {
103
+ const { library } = await this.operations.fetchContentLibrary(this.instance, libraryId, {
104
+ libraryFile: flags['library-file'],
105
+ isSiteLibrary: flags['site-library'],
106
+ assetQuery: flags['asset-query'],
107
+ keepOrphans: flags['keep-orphans'],
108
+ waitOptions,
109
+ });
110
+ // Build matchers from content IDs
111
+ const matchers = flags.regex ? pageIds.map((p) => new RegExp(p)) : pageIds;
112
+ function matchesId(id) {
113
+ return matchers.some((m) => (m instanceof RegExp ? m.test(id) : id === m));
114
+ }
115
+ // Filter root children (pages/content) by ID and optionally by folder
116
+ library.filter((node) => {
117
+ if (node.type !== 'PAGE' && node.type !== 'CONTENT') {
118
+ return false;
119
+ }
120
+ if (!matchesId(node.id)) {
121
+ return false;
122
+ }
123
+ if (flags.folder && flags.folder.length > 0) {
124
+ const xmlData = node.xml;
125
+ if (!xmlData)
126
+ return false;
127
+ const folderLinks = xmlData['folder-links'];
128
+ const classificationLink = folderLinks?.find((l) => l['classification-link']?.[0]);
129
+ const linkEl = classificationLink?.['classification-link']?.[0];
130
+ const folderId = linkEl?.$?.['folder-id'];
131
+ if (!folderId || !flags.folder.includes(folderId)) {
132
+ return false;
133
+ }
134
+ }
135
+ return true;
136
+ });
137
+ // Promote matching components to root level
138
+ const allNodes = [...library.nodes({ traverseHidden: true, callbackHidden: true })];
139
+ for (const node of allNodes) {
140
+ if (node.type === 'COMPONENT' && matchesId(node.id)) {
141
+ library.promoteToRoot(node);
142
+ }
143
+ }
144
+ // Count pages, content, and components
145
+ let pageCount = 0;
146
+ let contentCount = 0;
147
+ let componentCount = 0;
148
+ const assetPaths = [];
149
+ library.traverse((node) => {
150
+ switch (node.type) {
151
+ case 'COMPONENT': {
152
+ componentCount++;
153
+ break;
154
+ }
155
+ case 'CONTENT': {
156
+ contentCount++;
157
+ break;
158
+ }
159
+ case 'PAGE': {
160
+ pageCount++;
161
+ break;
162
+ }
163
+ case 'STATIC': {
164
+ assetPaths.push(node.id);
165
+ break;
166
+ }
167
+ }
168
+ }, { traverseHidden: false });
169
+ if (flags['show-tree']) {
170
+ ux.stdout(library.getTreeString({ colorize: ux.colorize }));
171
+ }
172
+ this.log(formatSummary('Dry run', pageCount, contentCount, componentCount, assetPaths.length, outputPath));
173
+ return {
174
+ library,
175
+ outputPath,
176
+ downloadedAssets: [],
177
+ failedAssets: [],
178
+ pageCount,
179
+ contentCount,
180
+ componentCount,
181
+ };
182
+ }
183
+ const result = await this.operations.exportContent(this.instance, pageIds, libraryId, outputPath, {
184
+ isSiteLibrary: flags['site-library'],
185
+ assetQuery: flags['asset-query'],
186
+ libraryFile: flags['library-file'],
187
+ offline: flags.offline,
188
+ folders: flags.folder,
189
+ regex: flags.regex,
190
+ keepOrphans: flags['keep-orphans'],
191
+ waitOptions,
192
+ onAssetProgress: (asset, index, total, success) => {
193
+ this.log(` [${index + 1}/${total}] ${asset} ${success ? '✓' : '✗'}`);
194
+ },
195
+ });
196
+ if (flags['show-tree']) {
197
+ ux.stdout(result.library.getTreeString({ colorize: ux.colorize }));
198
+ }
199
+ this.log(formatSummary('Exported', result.pageCount, result.contentCount, result.componentCount, result.downloadedAssets.length, result.outputPath));
200
+ return result;
201
+ }
202
+ }
203
+ const pluralS = (n) => (n === 1 ? '' : 's');
204
+ function formatSummary(prefix, pages, content, components, assets, outputPath) {
205
+ const parts = [];
206
+ if (pages > 0)
207
+ parts.push(`${pages} page${pluralS(pages)}`);
208
+ if (content > 0)
209
+ parts.push(`${content} content asset${pluralS(content)}`);
210
+ if (components > 0)
211
+ parts.push(`${components} component${pluralS(components)}`);
212
+ if (assets > 0)
213
+ parts.push(`${assets} static asset${pluralS(assets)}`);
214
+ const suffix = prefix === 'Dry run' ? `would be exported to ${outputPath}` : `to ${outputPath}`;
215
+ return parts.length > 0 ? `${prefix}: ${parts.join(', ')} ${suffix}` : `${prefix}: nothing to export`;
216
+ }
217
+ //# sourceMappingURL=export.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../src/commands/content/export.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import { JobCommand } from '@salesforce/b2c-tooling-sdk/cli';
2
+ import { fetchContentLibrary } from '@salesforce/b2c-tooling-sdk/operations/content';
3
+ interface ContentListItem {
4
+ id: string;
5
+ type: string;
6
+ typeId: string;
7
+ children: number;
8
+ }
9
+ export default class ContentList extends JobCommand<typeof ContentList> {
10
+ static description: string;
11
+ static enableJsonFlag: boolean;
12
+ static examples: string[];
13
+ static flags: {
14
+ library: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
15
+ 'site-library': import("@oclif/core/interfaces").BooleanFlag<boolean>;
16
+ 'library-file': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
17
+ type: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
18
+ components: import("@oclif/core/interfaces").BooleanFlag<boolean>;
19
+ tree: import("@oclif/core/interfaces").BooleanFlag<boolean>;
20
+ timeout: import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
21
+ server: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
22
+ 'webdav-server': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
23
+ 'code-version': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
24
+ username: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
+ password: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
+ certificate: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
+ passphrase: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
+ selfsigned: import("@oclif/core/interfaces").BooleanFlag<boolean>;
29
+ verify: import("@oclif/core/interfaces").BooleanFlag<boolean>;
30
+ 'client-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
31
+ 'client-secret': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
32
+ scope: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
33
+ 'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
34
+ 'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
35
+ 'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
36
+ 'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
37
+ 'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
38
+ 'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
39
+ debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
40
+ json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
41
+ lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
42
+ config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
43
+ instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
44
+ 'working-directory': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
45
+ 'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
46
+ 'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
47
+ 'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
48
+ };
49
+ protected operations: {
50
+ fetchContentLibrary: typeof fetchContentLibrary;
51
+ };
52
+ run(): Promise<{
53
+ data: ContentListItem[];
54
+ }>;
55
+ }
56
+ export {};
@@ -0,0 +1,133 @@
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 { Flags } from '@oclif/core';
7
+ import { ux } from '@oclif/core';
8
+ import { JobCommand, createTable } from '@salesforce/b2c-tooling-sdk/cli';
9
+ import { fetchContentLibrary } from '@salesforce/b2c-tooling-sdk/operations/content';
10
+ const COLUMNS = {
11
+ id: {
12
+ header: 'ID',
13
+ get: (item) => item.id,
14
+ },
15
+ type: {
16
+ header: 'TYPE',
17
+ get: (item) => item.type,
18
+ },
19
+ typeId: {
20
+ header: 'TYPE ID',
21
+ get: (item) => item.typeId,
22
+ },
23
+ children: {
24
+ header: 'CHILDREN',
25
+ get: (item) => String(item.children),
26
+ },
27
+ };
28
+ const DEFAULT_COLUMNS = ['id', 'type', 'typeId', 'children'];
29
+ const TYPE_MAP = {
30
+ page: 'PAGE',
31
+ content: 'CONTENT',
32
+ component: 'COMPONENT',
33
+ };
34
+ export default class ContentList extends JobCommand {
35
+ static description = 'List pages and content in a content library';
36
+ static enableJsonFlag = true;
37
+ static examples = [
38
+ '<%= config.bin %> <%= command.id %> --library SharedLibrary',
39
+ '<%= config.bin %> <%= command.id %> --library SharedLibrary --tree',
40
+ '<%= config.bin %> <%= command.id %> --library RefArch --site-library --type page',
41
+ ];
42
+ static flags = {
43
+ ...JobCommand.baseFlags,
44
+ library: Flags.string({
45
+ description: 'Library ID or site ID (also configurable via dw.json "content-library")',
46
+ }),
47
+ 'site-library': Flags.boolean({
48
+ description: 'Site-private library',
49
+ default: false,
50
+ }),
51
+ 'library-file': Flags.string({
52
+ description: 'Local XML file',
53
+ }),
54
+ type: Flags.string({
55
+ description: 'Filter by node type',
56
+ options: ['page', 'content', 'component'],
57
+ }),
58
+ components: Flags.boolean({
59
+ description: 'Include components in output',
60
+ default: false,
61
+ }),
62
+ tree: Flags.boolean({
63
+ description: 'Show tree structure',
64
+ default: false,
65
+ }),
66
+ timeout: Flags.integer({
67
+ description: 'Job timeout in seconds',
68
+ }),
69
+ };
70
+ operations = {
71
+ fetchContentLibrary,
72
+ };
73
+ async run() {
74
+ const { flags } = await this.parse(ContentList);
75
+ const libraryId = flags.library ?? this.resolvedConfig.values.contentLibrary;
76
+ if (!libraryId) {
77
+ this.error('Library is required. Set via --library flag or "content-library" in dw.json.');
78
+ }
79
+ if (!flags['library-file']) {
80
+ this.requireOAuthCredentials();
81
+ }
82
+ const waitOptions = flags.timeout ? { timeout: flags.timeout * 1000 } : undefined;
83
+ const instance = flags['library-file'] ? null : this.instance;
84
+ const { library } = await this.operations.fetchContentLibrary(instance, libraryId, {
85
+ libraryFile: flags['library-file'],
86
+ isSiteLibrary: flags['site-library'],
87
+ waitOptions,
88
+ });
89
+ const typeFilter = flags.type ? TYPE_MAP[flags.type] : undefined;
90
+ const items = [];
91
+ function collectItems(nodes, includeComponents) {
92
+ for (const child of nodes) {
93
+ // Skip static asset nodes in table view
94
+ if (child.type === 'STATIC') {
95
+ continue;
96
+ }
97
+ // Skip components unless --components is set
98
+ if (child.type === 'COMPONENT' && !includeComponents) {
99
+ continue;
100
+ }
101
+ // Apply type filter
102
+ const matchesType = !typeFilter || child.type === typeFilter;
103
+ if (matchesType) {
104
+ items.push({
105
+ id: child.id,
106
+ type: child.type,
107
+ typeId: child.typeId ?? '',
108
+ children: child.children.length,
109
+ });
110
+ }
111
+ // Recurse into children when --components is set
112
+ if (includeComponents && child.children.length > 0) {
113
+ collectItems(child.children, true);
114
+ }
115
+ }
116
+ }
117
+ collectItems(library.tree.children, flags.components);
118
+ if (flags.tree) {
119
+ ux.stdout(library.getTreeString({ colorize: ux.colorize }));
120
+ return { data: items };
121
+ }
122
+ if (this.jsonEnabled()) {
123
+ return { data: items };
124
+ }
125
+ if (items.length === 0) {
126
+ ux.stdout('No content found.');
127
+ return { data: items };
128
+ }
129
+ createTable(COLUMNS).render(items, DEFAULT_COLUMNS);
130
+ return { data: items };
131
+ }
132
+ }
133
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/content/list.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ export default class DocsDownload extends InstanceCommand<typeof DocsDownload> {
24
24
  'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
25
  'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
26
  'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
+ 'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
27
28
  'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
29
  'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
30
  debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
@@ -26,6 +26,7 @@ export default class EcdnCachePurge extends EcdnZoneCommand<typeof EcdnCachePurg
26
26
  'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
27
  'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
28
  'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
+ 'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
29
30
  'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
31
  'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
31
32
  debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
@@ -27,6 +27,7 @@ export default class EcdnCertificatesAdd extends EcdnZoneCommand<typeof EcdnCert
27
27
  'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
28
  'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
29
  'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
+ 'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
30
31
  'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
31
32
  'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
32
33
  debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;