@salesforce/b2c-cli 0.0.0-nightly.20260122024142 → 0.0.0-nightly.20260122144746

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 (321) hide show
  1. package/dist/commands/ecdn/cache/purge.d.ts +43 -0
  2. package/dist/commands/ecdn/cache/purge.js +104 -0
  3. package/dist/commands/ecdn/cache/purge.js.map +1 -0
  4. package/dist/commands/ecdn/certificates/add.d.ts +44 -0
  5. package/dist/commands/ecdn/certificates/add.js +109 -0
  6. package/dist/commands/ecdn/certificates/add.js.map +1 -0
  7. package/dist/commands/ecdn/certificates/delete.d.ts +41 -0
  8. package/dist/commands/ecdn/certificates/delete.js +69 -0
  9. package/dist/commands/ecdn/certificates/delete.js.map +1 -0
  10. package/dist/commands/ecdn/certificates/list.d.ts +46 -0
  11. package/dist/commands/ecdn/certificates/list.js +124 -0
  12. package/dist/commands/ecdn/certificates/list.js.map +1 -0
  13. package/dist/commands/ecdn/certificates/update.d.ts +45 -0
  14. package/dist/commands/ecdn/certificates/update.js +104 -0
  15. package/dist/commands/ecdn/certificates/update.js.map +1 -0
  16. package/dist/commands/ecdn/certificates/validate.d.ts +40 -0
  17. package/dist/commands/ecdn/certificates/validate.js +68 -0
  18. package/dist/commands/ecdn/certificates/validate.js.map +1 -0
  19. package/dist/commands/ecdn/cipher-suites/get.d.ts +39 -0
  20. package/dist/commands/ecdn/cipher-suites/get.js +63 -0
  21. package/dist/commands/ecdn/cipher-suites/get.js.map +1 -0
  22. package/dist/commands/ecdn/cipher-suites/update.d.ts +41 -0
  23. package/dist/commands/ecdn/cipher-suites/update.js +81 -0
  24. package/dist/commands/ecdn/cipher-suites/update.js.map +1 -0
  25. package/dist/commands/ecdn/logpush/jobs/create.d.ts +45 -0
  26. package/dist/commands/ecdn/logpush/jobs/create.js +103 -0
  27. package/dist/commands/ecdn/logpush/jobs/create.js.map +1 -0
  28. package/dist/commands/ecdn/logpush/jobs/delete.d.ts +39 -0
  29. package/dist/commands/ecdn/logpush/jobs/delete.js +50 -0
  30. package/dist/commands/ecdn/logpush/jobs/delete.js.map +1 -0
  31. package/dist/commands/ecdn/logpush/jobs/get.d.ts +40 -0
  32. package/dist/commands/ecdn/logpush/jobs/get.js +85 -0
  33. package/dist/commands/ecdn/logpush/jobs/get.js.map +1 -0
  34. package/dist/commands/ecdn/logpush/jobs/list.d.ts +43 -0
  35. package/dist/commands/ecdn/logpush/jobs/list.js +124 -0
  36. package/dist/commands/ecdn/logpush/jobs/list.js.map +1 -0
  37. package/dist/commands/ecdn/logpush/jobs/update.d.ts +43 -0
  38. package/dist/commands/ecdn/logpush/jobs/update.js +94 -0
  39. package/dist/commands/ecdn/logpush/jobs/update.js.map +1 -0
  40. package/dist/commands/ecdn/logpush/ownership.d.ts +39 -0
  41. package/dist/commands/ecdn/logpush/ownership.js +72 -0
  42. package/dist/commands/ecdn/logpush/ownership.js.map +1 -0
  43. package/dist/commands/ecdn/mrt-rules/create.d.ts +42 -0
  44. package/dist/commands/ecdn/mrt-rules/create.js +81 -0
  45. package/dist/commands/ecdn/mrt-rules/create.js.map +1 -0
  46. package/dist/commands/ecdn/mrt-rules/delete.d.ts +39 -0
  47. package/dist/commands/ecdn/mrt-rules/delete.js +52 -0
  48. package/dist/commands/ecdn/mrt-rules/delete.js.map +1 -0
  49. package/dist/commands/ecdn/mrt-rules/get.d.ts +39 -0
  50. package/dist/commands/ecdn/mrt-rules/get.js +89 -0
  51. package/dist/commands/ecdn/mrt-rules/get.js.map +1 -0
  52. package/dist/commands/ecdn/mrt-rules/rules/delete.d.ts +40 -0
  53. package/dist/commands/ecdn/mrt-rules/rules/delete.js +57 -0
  54. package/dist/commands/ecdn/mrt-rules/rules/delete.js.map +1 -0
  55. package/dist/commands/ecdn/mrt-rules/rules/update.d.ts +44 -0
  56. package/dist/commands/ecdn/mrt-rules/rules/update.js +88 -0
  57. package/dist/commands/ecdn/mrt-rules/rules/update.js.map +1 -0
  58. package/dist/commands/ecdn/mrt-rules/update.d.ts +43 -0
  59. package/dist/commands/ecdn/mrt-rules/update.js +87 -0
  60. package/dist/commands/ecdn/mrt-rules/update.js.map +1 -0
  61. package/dist/commands/ecdn/mtls/create.d.ts +41 -0
  62. package/dist/commands/ecdn/mtls/create.js +84 -0
  63. package/dist/commands/ecdn/mtls/create.js.map +1 -0
  64. package/dist/commands/ecdn/mtls/delete.d.ts +38 -0
  65. package/dist/commands/ecdn/mtls/delete.js +53 -0
  66. package/dist/commands/ecdn/mtls/delete.js.map +1 -0
  67. package/dist/commands/ecdn/mtls/get.d.ts +39 -0
  68. package/dist/commands/ecdn/mtls/get.js +72 -0
  69. package/dist/commands/ecdn/mtls/get.js.map +1 -0
  70. package/dist/commands/ecdn/mtls/list.d.ts +42 -0
  71. package/dist/commands/ecdn/mtls/list.js +118 -0
  72. package/dist/commands/ecdn/mtls/list.js.map +1 -0
  73. package/dist/commands/ecdn/origin-headers/delete.d.ts +37 -0
  74. package/dist/commands/ecdn/origin-headers/delete.js +46 -0
  75. package/dist/commands/ecdn/origin-headers/delete.js.map +1 -0
  76. package/dist/commands/ecdn/origin-headers/get.d.ts +39 -0
  77. package/dist/commands/ecdn/origin-headers/get.js +61 -0
  78. package/dist/commands/ecdn/origin-headers/get.js.map +1 -0
  79. package/dist/commands/ecdn/origin-headers/set.d.ts +41 -0
  80. package/dist/commands/ecdn/origin-headers/set.js +76 -0
  81. package/dist/commands/ecdn/origin-headers/set.js.map +1 -0
  82. package/dist/commands/ecdn/page-shield/notifications/create.d.ts +41 -0
  83. package/dist/commands/ecdn/page-shield/notifications/create.js +84 -0
  84. package/dist/commands/ecdn/page-shield/notifications/create.js.map +1 -0
  85. package/dist/commands/ecdn/page-shield/notifications/delete.d.ts +38 -0
  86. package/dist/commands/ecdn/page-shield/notifications/delete.js +53 -0
  87. package/dist/commands/ecdn/page-shield/notifications/delete.js.map +1 -0
  88. package/dist/commands/ecdn/page-shield/notifications/list.d.ts +42 -0
  89. package/dist/commands/ecdn/page-shield/notifications/list.js +118 -0
  90. package/dist/commands/ecdn/page-shield/notifications/list.js.map +1 -0
  91. package/dist/commands/ecdn/page-shield/policies/create.d.ts +44 -0
  92. package/dist/commands/ecdn/page-shield/policies/create.js +100 -0
  93. package/dist/commands/ecdn/page-shield/policies/create.js.map +1 -0
  94. package/dist/commands/ecdn/page-shield/policies/delete.d.ts +39 -0
  95. package/dist/commands/ecdn/page-shield/policies/delete.js +56 -0
  96. package/dist/commands/ecdn/page-shield/policies/delete.js.map +1 -0
  97. package/dist/commands/ecdn/page-shield/policies/get.d.ts +40 -0
  98. package/dist/commands/ecdn/page-shield/policies/get.js +72 -0
  99. package/dist/commands/ecdn/page-shield/policies/get.js.map +1 -0
  100. package/dist/commands/ecdn/page-shield/policies/list.d.ts +43 -0
  101. package/dist/commands/ecdn/page-shield/policies/list.js +119 -0
  102. package/dist/commands/ecdn/page-shield/policies/list.js.map +1 -0
  103. package/dist/commands/ecdn/page-shield/policies/update.d.ts +45 -0
  104. package/dist/commands/ecdn/page-shield/policies/update.js +110 -0
  105. package/dist/commands/ecdn/page-shield/policies/update.js.map +1 -0
  106. package/dist/commands/ecdn/page-shield/scripts/get.d.ts +40 -0
  107. package/dist/commands/ecdn/page-shield/scripts/get.js +99 -0
  108. package/dist/commands/ecdn/page-shield/scripts/get.js.map +1 -0
  109. package/dist/commands/ecdn/page-shield/scripts/list.d.ts +43 -0
  110. package/dist/commands/ecdn/page-shield/scripts/list.js +124 -0
  111. package/dist/commands/ecdn/page-shield/scripts/list.js.map +1 -0
  112. package/dist/commands/ecdn/security/get.d.ts +39 -0
  113. package/dist/commands/ecdn/security/get.js +69 -0
  114. package/dist/commands/ecdn/security/get.js.map +1 -0
  115. package/dist/commands/ecdn/security/update.d.ts +47 -0
  116. package/dist/commands/ecdn/security/update.js +136 -0
  117. package/dist/commands/ecdn/security/update.js.map +1 -0
  118. package/dist/commands/ecdn/speed/get.d.ts +39 -0
  119. package/dist/commands/ecdn/speed/get.js +64 -0
  120. package/dist/commands/ecdn/speed/get.js.map +1 -0
  121. package/dist/commands/ecdn/speed/update.d.ts +46 -0
  122. package/dist/commands/ecdn/speed/update.js +105 -0
  123. package/dist/commands/ecdn/speed/update.js.map +1 -0
  124. package/dist/commands/ecdn/waf/groups/list.d.ts +42 -0
  125. package/dist/commands/ecdn/waf/groups/list.js +89 -0
  126. package/dist/commands/ecdn/waf/groups/list.js.map +1 -0
  127. package/dist/commands/ecdn/waf/groups/update.d.ts +43 -0
  128. package/dist/commands/ecdn/waf/groups/update.js +84 -0
  129. package/dist/commands/ecdn/waf/groups/update.js.map +1 -0
  130. package/dist/commands/ecdn/waf/managed-rules/list.d.ts +44 -0
  131. package/dist/commands/ecdn/waf/managed-rules/list.js +124 -0
  132. package/dist/commands/ecdn/waf/managed-rules/list.js.map +1 -0
  133. package/dist/commands/ecdn/waf/managed-rules/update.d.ts +43 -0
  134. package/dist/commands/ecdn/waf/managed-rules/update.js +94 -0
  135. package/dist/commands/ecdn/waf/managed-rules/update.js.map +1 -0
  136. package/dist/commands/ecdn/waf/migrate.d.ts +40 -0
  137. package/dist/commands/ecdn/waf/migrate.js +83 -0
  138. package/dist/commands/ecdn/waf/migrate.js.map +1 -0
  139. package/dist/commands/ecdn/waf/owasp/get.d.ts +40 -0
  140. package/dist/commands/ecdn/waf/owasp/get.js +64 -0
  141. package/dist/commands/ecdn/waf/owasp/get.js.map +1 -0
  142. package/dist/commands/ecdn/waf/owasp/update.d.ts +42 -0
  143. package/dist/commands/ecdn/waf/owasp/update.js +79 -0
  144. package/dist/commands/ecdn/waf/owasp/update.js.map +1 -0
  145. package/dist/commands/ecdn/waf/rules/get.d.ts +41 -0
  146. package/dist/commands/ecdn/waf/rules/get.js +68 -0
  147. package/dist/commands/ecdn/waf/rules/get.js.map +1 -0
  148. package/dist/commands/ecdn/waf/rules/list.d.ts +45 -0
  149. package/dist/commands/ecdn/waf/rules/list.js +120 -0
  150. package/dist/commands/ecdn/waf/rules/list.js.map +1 -0
  151. package/dist/commands/ecdn/waf/rules/update.d.ts +42 -0
  152. package/dist/commands/ecdn/waf/rules/update.js +77 -0
  153. package/dist/commands/ecdn/waf/rules/update.js.map +1 -0
  154. package/dist/commands/ecdn/waf/rulesets/list.d.ts +43 -0
  155. package/dist/commands/ecdn/waf/rulesets/list.js +119 -0
  156. package/dist/commands/ecdn/waf/rulesets/list.js.map +1 -0
  157. package/dist/commands/ecdn/waf/rulesets/update.d.ts +44 -0
  158. package/dist/commands/ecdn/waf/rulesets/update.js +101 -0
  159. package/dist/commands/ecdn/waf/rulesets/update.js.map +1 -0
  160. package/dist/commands/ecdn/zones/create.d.ts +40 -0
  161. package/dist/commands/ecdn/zones/create.js +71 -0
  162. package/dist/commands/ecdn/zones/create.js.map +1 -0
  163. package/dist/commands/ecdn/zones/list.d.ts +44 -0
  164. package/dist/commands/ecdn/zones/list.js +112 -0
  165. package/dist/commands/ecdn/zones/list.js.map +1 -0
  166. package/dist/commands/mrt/{push.d.ts → bundle/deploy.d.ts} +24 -9
  167. package/dist/commands/mrt/bundle/deploy.js +182 -0
  168. package/dist/commands/mrt/bundle/deploy.js.map +1 -0
  169. package/dist/commands/mrt/bundle/download.d.ts +40 -0
  170. package/dist/commands/mrt/bundle/download.js +109 -0
  171. package/dist/commands/mrt/bundle/download.js.map +1 -0
  172. package/dist/commands/mrt/bundle/history.d.ts +30 -0
  173. package/dist/commands/mrt/bundle/history.js +90 -0
  174. package/dist/commands/mrt/bundle/history.js.map +1 -0
  175. package/dist/commands/mrt/bundle/list.d.ts +30 -0
  176. package/dist/commands/mrt/bundle/list.js +79 -0
  177. package/dist/commands/mrt/bundle/list.js.map +1 -0
  178. package/dist/commands/mrt/env/access-control/list.d.ts +30 -0
  179. package/dist/commands/mrt/env/access-control/list.js +83 -0
  180. package/dist/commands/mrt/env/access-control/list.js.map +1 -0
  181. package/dist/commands/mrt/env/b2c.d.ts +32 -0
  182. package/dist/commands/mrt/env/b2c.js +120 -0
  183. package/dist/commands/mrt/env/b2c.js.map +1 -0
  184. package/dist/commands/mrt/env/get.d.ts +28 -0
  185. package/dist/commands/mrt/env/get.js +98 -0
  186. package/dist/commands/mrt/env/get.js.map +1 -0
  187. package/dist/commands/mrt/env/invalidate.d.ts +29 -0
  188. package/dist/commands/mrt/env/invalidate.js +66 -0
  189. package/dist/commands/mrt/env/invalidate.js.map +1 -0
  190. package/dist/commands/mrt/env/list.d.ts +28 -0
  191. package/dist/commands/mrt/env/list.js +68 -0
  192. package/dist/commands/mrt/env/list.js.map +1 -0
  193. package/dist/commands/mrt/env/redirect/clone.d.ts +31 -0
  194. package/dist/commands/mrt/env/redirect/clone.js +95 -0
  195. package/dist/commands/mrt/env/redirect/clone.js.map +1 -0
  196. package/dist/commands/mrt/env/redirect/create.d.ts +33 -0
  197. package/dist/commands/mrt/env/redirect/create.js +87 -0
  198. package/dist/commands/mrt/env/redirect/create.js.map +1 -0
  199. package/dist/commands/mrt/env/redirect/delete.d.ts +34 -0
  200. package/dist/commands/mrt/env/redirect/delete.js +92 -0
  201. package/dist/commands/mrt/env/redirect/delete.js.map +1 -0
  202. package/dist/commands/mrt/env/redirect/list.d.ts +31 -0
  203. package/dist/commands/mrt/env/redirect/list.js +90 -0
  204. package/dist/commands/mrt/env/redirect/list.js.map +1 -0
  205. package/dist/commands/mrt/env/update.d.ts +37 -0
  206. package/dist/commands/mrt/env/update.js +173 -0
  207. package/dist/commands/mrt/env/update.js.map +1 -0
  208. package/dist/commands/mrt/org/b2c.d.ts +31 -0
  209. package/dist/commands/mrt/org/b2c.js +55 -0
  210. package/dist/commands/mrt/org/b2c.js.map +1 -0
  211. package/dist/commands/mrt/org/list.d.ts +30 -0
  212. package/dist/commands/mrt/org/list.js +70 -0
  213. package/dist/commands/mrt/org/list.js.map +1 -0
  214. package/dist/commands/mrt/project/create.d.ts +35 -0
  215. package/dist/commands/mrt/project/create.js +129 -0
  216. package/dist/commands/mrt/project/create.js.map +1 -0
  217. package/dist/commands/mrt/project/delete.d.ts +39 -0
  218. package/dist/commands/mrt/project/delete.js +81 -0
  219. package/dist/commands/mrt/project/delete.js.map +1 -0
  220. package/dist/commands/mrt/project/get.d.ts +31 -0
  221. package/dist/commands/mrt/project/get.js +79 -0
  222. package/dist/commands/mrt/project/get.js.map +1 -0
  223. package/dist/commands/mrt/project/list.d.ts +31 -0
  224. package/dist/commands/mrt/project/list.js +80 -0
  225. package/dist/commands/mrt/project/list.js.map +1 -0
  226. package/dist/commands/mrt/project/member/add.d.ts +32 -0
  227. package/dist/commands/mrt/project/member/add.js +73 -0
  228. package/dist/commands/mrt/project/member/add.js.map +1 -0
  229. package/dist/commands/mrt/project/member/get.d.ts +31 -0
  230. package/dist/commands/mrt/project/member/get.js +70 -0
  231. package/dist/commands/mrt/project/member/get.js.map +1 -0
  232. package/dist/commands/mrt/project/member/list.d.ts +32 -0
  233. package/dist/commands/mrt/project/member/list.js +82 -0
  234. package/dist/commands/mrt/project/member/list.js.map +1 -0
  235. package/dist/commands/mrt/project/member/remove.d.ts +34 -0
  236. package/dist/commands/mrt/project/member/remove.js +89 -0
  237. package/dist/commands/mrt/project/member/remove.js.map +1 -0
  238. package/dist/commands/mrt/project/member/update.d.ts +32 -0
  239. package/dist/commands/mrt/project/member/update.js +72 -0
  240. package/dist/commands/mrt/project/member/update.js.map +1 -0
  241. package/dist/commands/mrt/project/notification/create.d.ts +33 -0
  242. package/dist/commands/mrt/project/notification/create.js +86 -0
  243. package/dist/commands/mrt/project/notification/create.js.map +1 -0
  244. package/dist/commands/mrt/project/notification/delete.d.ts +34 -0
  245. package/dist/commands/mrt/project/notification/delete.js +88 -0
  246. package/dist/commands/mrt/project/notification/delete.js.map +1 -0
  247. package/dist/commands/mrt/project/notification/get.d.ts +31 -0
  248. package/dist/commands/mrt/project/notification/get.js +86 -0
  249. package/dist/commands/mrt/project/notification/get.js.map +1 -0
  250. package/dist/commands/mrt/project/notification/list.d.ts +31 -0
  251. package/dist/commands/mrt/project/notification/list.js +88 -0
  252. package/dist/commands/mrt/project/notification/list.js.map +1 -0
  253. package/dist/commands/mrt/project/notification/update.d.ts +36 -0
  254. package/dist/commands/mrt/project/notification/update.js +86 -0
  255. package/dist/commands/mrt/project/notification/update.js.map +1 -0
  256. package/dist/commands/mrt/project/update.d.ts +34 -0
  257. package/dist/commands/mrt/project/update.js +123 -0
  258. package/dist/commands/mrt/project/update.js.map +1 -0
  259. package/dist/commands/mrt/user/api-key.d.ts +30 -0
  260. package/dist/commands/mrt/user/api-key.js +63 -0
  261. package/dist/commands/mrt/user/api-key.js.map +1 -0
  262. package/dist/commands/mrt/user/email-prefs.d.ts +30 -0
  263. package/dist/commands/mrt/user/email-prefs.js +83 -0
  264. package/dist/commands/mrt/user/email-prefs.js.map +1 -0
  265. package/dist/commands/mrt/user/profile.d.ts +28 -0
  266. package/dist/commands/mrt/user/profile.js +50 -0
  267. package/dist/commands/mrt/user/profile.js.map +1 -0
  268. package/dist/commands/ods/create.d.ts +1 -1
  269. package/dist/commands/ods/create.js +2 -3
  270. package/dist/commands/ods/create.js.map +1 -1
  271. package/dist/commands/ods/delete.js +2 -3
  272. package/dist/commands/ods/delete.js.map +1 -1
  273. package/dist/commands/ods/list.d.ts +1 -1
  274. package/dist/commands/ods/list.js +2 -3
  275. package/dist/commands/ods/list.js.map +1 -1
  276. package/dist/commands/ods/restart.d.ts +1 -1
  277. package/dist/commands/ods/restart.js +2 -3
  278. package/dist/commands/ods/restart.js.map +1 -1
  279. package/dist/commands/ods/start.d.ts +1 -1
  280. package/dist/commands/ods/start.js +2 -3
  281. package/dist/commands/ods/start.js.map +1 -1
  282. package/dist/commands/ods/stop.d.ts +1 -1
  283. package/dist/commands/ods/stop.js +2 -3
  284. package/dist/commands/ods/stop.js.map +1 -1
  285. package/dist/commands/scapi/custom/status.js +3 -3
  286. package/dist/commands/scapi/custom/status.js.map +1 -1
  287. package/dist/commands/scapi/schemas/get.js +2 -2
  288. package/dist/commands/scapi/schemas/get.js.map +1 -1
  289. package/dist/commands/scapi/schemas/list.js +2 -2
  290. package/dist/commands/scapi/schemas/list.js.map +1 -1
  291. package/dist/commands/sites/list.js +5 -2
  292. package/dist/commands/sites/list.js.map +1 -1
  293. package/dist/commands/slas/client/create.js +1 -1
  294. package/dist/commands/slas/client/create.js.map +1 -1
  295. package/dist/commands/slas/client/delete.js +2 -2
  296. package/dist/commands/slas/client/delete.js.map +1 -1
  297. package/dist/commands/slas/client/get.js +2 -2
  298. package/dist/commands/slas/client/get.js.map +1 -1
  299. package/dist/commands/slas/client/list.js +2 -2
  300. package/dist/commands/slas/client/list.js.map +1 -1
  301. package/dist/commands/slas/client/update.js +4 -4
  302. package/dist/commands/slas/client/update.js.map +1 -1
  303. package/dist/utils/ecdn/base-command.d.ts +46 -0
  304. package/dist/utils/ecdn/base-command.js +69 -0
  305. package/dist/utils/ecdn/base-command.js.map +1 -0
  306. package/dist/utils/ecdn/index.d.ts +2 -0
  307. package/dist/utils/ecdn/index.js +8 -0
  308. package/dist/utils/ecdn/index.js.map +1 -0
  309. package/dist/utils/ecdn/zone-command.d.ts +42 -0
  310. package/dist/utils/ecdn/zone-command.js +75 -0
  311. package/dist/utils/ecdn/zone-command.js.map +1 -0
  312. package/dist/utils/scapi/schemas.d.ts +1 -1
  313. package/dist/utils/scapi/schemas.js +3 -3
  314. package/dist/utils/scapi/schemas.js.map +1 -1
  315. package/dist/utils/slas/client.d.ts +1 -1
  316. package/dist/utils/slas/client.js +6 -6
  317. package/dist/utils/slas/client.js.map +1 -1
  318. package/oclif.manifest.json +21535 -2858
  319. package/package.json +118 -8
  320. package/dist/commands/mrt/push.js +0 -125
  321. package/dist/commands/mrt/push.js.map +0 -1
@@ -0,0 +1,39 @@
1
+ import type { CdnZonesComponents } from '@salesforce/b2c-tooling-sdk/clients';
2
+ import { EcdnZoneCommand } from '../../../utils/ecdn/index.js';
3
+ type SpeedSetting = CdnZonesComponents['schemas']['SpeedSetting'];
4
+ /**
5
+ * Response type for the get command.
6
+ */
7
+ interface GetOutput {
8
+ settings: SpeedSetting;
9
+ }
10
+ /**
11
+ * Command to get speed settings for a zone.
12
+ */
13
+ export default class EcdnSpeedGet extends EcdnZoneCommand<typeof EcdnSpeedGet> {
14
+ static description: string;
15
+ static enableJsonFlag: boolean;
16
+ static examples: string[];
17
+ static flags: {
18
+ zone: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
19
+ 'tenant-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
20
+ 'client-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
21
+ 'client-secret': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
22
+ scope: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
23
+ 'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
24
+ 'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
+ 'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
+ 'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
+ debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
28
+ json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
29
+ lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
+ config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
31
+ instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
32
+ 'working-directory': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
33
+ 'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
34
+ 'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
35
+ 'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
36
+ };
37
+ run(): Promise<GetOutput>;
38
+ }
39
+ export {};
@@ -0,0 +1,64 @@
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 { ux } from '@oclif/core';
7
+ import cliui from 'cliui';
8
+ import { EcdnZoneCommand, formatApiError } from '../../../utils/ecdn/index.js';
9
+ import { t } from '../../../i18n/index.js';
10
+ /**
11
+ * Command to get speed settings for a zone.
12
+ */
13
+ export default class EcdnSpeedGet extends EcdnZoneCommand {
14
+ static description = t('commands.ecdn.speed.get.description', 'Get speed/performance settings for a zone');
15
+ static enableJsonFlag = true;
16
+ static examples = [
17
+ '<%= config.bin %> <%= command.id %> --tenant-id zzxy_prd --zone my-zone',
18
+ '<%= config.bin %> <%= command.id %> --tenant-id zzxy_prd --zone my-zone --json',
19
+ ];
20
+ static flags = {
21
+ ...EcdnZoneCommand.baseFlags,
22
+ };
23
+ async run() {
24
+ this.requireOAuthCredentials();
25
+ const zoneId = await this.resolveZoneId();
26
+ if (!this.jsonEnabled()) {
27
+ this.log(t('commands.ecdn.speed.get.fetching', 'Fetching speed settings...'));
28
+ }
29
+ const client = this.getCdnZonesClient();
30
+ const organizationId = this.getOrganizationId();
31
+ const { data, error } = await client.GET('/organizations/{organizationId}/zones/{zoneId}/speed-settings', {
32
+ params: {
33
+ path: { organizationId, zoneId },
34
+ },
35
+ });
36
+ if (error) {
37
+ this.error(t('commands.ecdn.speed.get.error', 'Failed to fetch speed settings: {{message}}', {
38
+ message: formatApiError(error),
39
+ }));
40
+ }
41
+ const settings = data?.data;
42
+ if (!settings) {
43
+ this.error(t('commands.ecdn.speed.get.noData', 'No speed settings returned from API'));
44
+ }
45
+ const output = { settings };
46
+ if (this.jsonEnabled()) {
47
+ return output;
48
+ }
49
+ const ui = cliui({ width: process.stdout.columns || 80 });
50
+ const labelWidth = 22;
51
+ ui.div('');
52
+ ui.div({ text: 'Speed Settings:', padding: [0, 0, 1, 0] });
53
+ ui.div({ text: 'Brotli Compression:', width: labelWidth }, { text: settings.brotliCompression });
54
+ ui.div({ text: 'HTTP/2 Prioritization:', width: labelWidth }, { text: settings.http2Prioritization });
55
+ ui.div({ text: 'HTTP/2 to Origin:', width: labelWidth }, { text: settings.http2ToOrigin });
56
+ ui.div({ text: 'HTTP/3:', width: labelWidth }, { text: settings.http3 });
57
+ ui.div({ text: 'Early Hints:', width: labelWidth }, { text: settings.earlyHints });
58
+ ui.div({ text: 'WebP:', width: labelWidth }, { text: settings.webp });
59
+ ui.div({ text: 'Polish:', width: labelWidth }, { text: settings.polish });
60
+ ux.stdout(ui.toString());
61
+ return output;
62
+ }
63
+ }
64
+ //# sourceMappingURL=get.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../src/commands/ecdn/speed/get.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import type { CdnZonesComponents } from '@salesforce/b2c-tooling-sdk/clients';
2
+ import { EcdnZoneCommand } from '../../../utils/ecdn/index.js';
3
+ type SpeedSetting = CdnZonesComponents['schemas']['SpeedSetting'];
4
+ /**
5
+ * Response type for the update command.
6
+ */
7
+ interface UpdateOutput {
8
+ settings: SpeedSetting;
9
+ }
10
+ /**
11
+ * Command to update speed settings for a zone.
12
+ */
13
+ export default class EcdnSpeedUpdate extends EcdnZoneCommand<typeof EcdnSpeedUpdate> {
14
+ static description: string;
15
+ static enableJsonFlag: boolean;
16
+ static examples: string[];
17
+ static flags: {
18
+ brotli: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
19
+ 'http2-prioritization': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
20
+ 'http2-to-origin': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
21
+ http3: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
22
+ 'early-hints': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
23
+ webp: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
24
+ polish: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
+ zone: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
26
+ 'tenant-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
27
+ 'client-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
+ 'client-secret': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
+ scope: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
+ 'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
31
+ 'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
32
+ 'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
33
+ 'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
34
+ debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
35
+ json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
36
+ lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
37
+ config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
38
+ instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
39
+ 'working-directory': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
40
+ 'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
41
+ 'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
42
+ 'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
43
+ };
44
+ run(): Promise<UpdateOutput>;
45
+ }
46
+ export {};
@@ -0,0 +1,105 @@
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, ux } from '@oclif/core';
7
+ import cliui from 'cliui';
8
+ import { EcdnZoneCommand, formatApiError } from '../../../utils/ecdn/index.js';
9
+ import { t } from '../../../i18n/index.js';
10
+ /**
11
+ * Command to update speed settings for a zone.
12
+ */
13
+ export default class EcdnSpeedUpdate extends EcdnZoneCommand {
14
+ static description = t('commands.ecdn.speed.update.description', 'Update speed/performance settings for a zone');
15
+ static enableJsonFlag = true;
16
+ static examples = [
17
+ '<%= config.bin %> <%= command.id %> --tenant-id zzxy_prd --zone my-zone --brotli on',
18
+ '<%= config.bin %> <%= command.id %> --tenant-id zzxy_prd --zone my-zone --http3 on --early-hints on',
19
+ '<%= config.bin %> <%= command.id %> --tenant-id zzxy_prd --zone my-zone --polish lossy --webp on',
20
+ ];
21
+ static flags = {
22
+ ...EcdnZoneCommand.baseFlags,
23
+ brotli: Flags.string({
24
+ description: t('flags.brotli.description', 'Brotli compression (on/off)'),
25
+ options: ['on', 'off'],
26
+ }),
27
+ 'http2-prioritization': Flags.string({
28
+ description: t('flags.http2Prioritization.description', 'HTTP/2 prioritization (on/off)'),
29
+ options: ['on', 'off'],
30
+ }),
31
+ 'http2-to-origin': Flags.string({
32
+ description: t('flags.http2ToOrigin.description', 'HTTP/2 to origin (on/off)'),
33
+ options: ['on', 'off'],
34
+ }),
35
+ http3: Flags.string({
36
+ description: t('flags.http3.description', 'HTTP/3 (on/off)'),
37
+ options: ['on', 'off'],
38
+ }),
39
+ 'early-hints': Flags.string({
40
+ description: t('flags.earlyHints.description', 'Early hints (on/off)'),
41
+ options: ['on', 'off'],
42
+ }),
43
+ webp: Flags.string({
44
+ description: t('flags.webp.description', 'WebP image format support (on/off)'),
45
+ options: ['on', 'off'],
46
+ }),
47
+ polish: Flags.string({
48
+ description: t('flags.polish.description', 'Image polish level (off/lossless/lossy)'),
49
+ options: ['off', 'lossless', 'lossy'],
50
+ }),
51
+ };
52
+ async run() {
53
+ this.requireOAuthCredentials();
54
+ const zoneId = await this.resolveZoneId();
55
+ // Build the request body from flags - all fields are required
56
+ const body = {
57
+ brotliCompression: this.flags.brotli ?? 'off',
58
+ http2Prioritization: this.flags['http2-prioritization'] ?? 'off',
59
+ http2ToOrigin: this.flags['http2-to-origin'] ?? 'off',
60
+ http3: this.flags.http3 ?? 'off',
61
+ earlyHints: this.flags['early-hints'] ?? 'off',
62
+ webp: this.flags.webp ?? 'off',
63
+ polish: this.flags.polish ?? 'off',
64
+ };
65
+ if (!this.jsonEnabled()) {
66
+ this.log(t('commands.ecdn.speed.update.updating', 'Updating speed settings...'));
67
+ }
68
+ const client = this.getCdnZonesRwClient();
69
+ const organizationId = this.getOrganizationId();
70
+ const { data, error } = await client.PATCH('/organizations/{organizationId}/zones/{zoneId}/speed-settings', {
71
+ params: {
72
+ path: { organizationId, zoneId },
73
+ },
74
+ body,
75
+ });
76
+ if (error) {
77
+ this.error(t('commands.ecdn.speed.update.error', 'Failed to update speed settings: {{message}}', {
78
+ message: formatApiError(error),
79
+ }));
80
+ }
81
+ const settings = data?.data;
82
+ if (!settings) {
83
+ this.error(t('commands.ecdn.speed.update.noData', 'No speed settings returned from API'));
84
+ }
85
+ const output = { settings };
86
+ if (this.jsonEnabled()) {
87
+ return output;
88
+ }
89
+ const ui = cliui({ width: process.stdout.columns || 80 });
90
+ const labelWidth = 22;
91
+ ui.div('');
92
+ ui.div({ text: t('commands.ecdn.speed.update.success', 'Speed settings updated successfully!') });
93
+ ui.div('');
94
+ ui.div({ text: 'Brotli Compression:', width: labelWidth }, { text: settings.brotliCompression });
95
+ ui.div({ text: 'HTTP/2 Prioritization:', width: labelWidth }, { text: settings.http2Prioritization });
96
+ ui.div({ text: 'HTTP/2 to Origin:', width: labelWidth }, { text: settings.http2ToOrigin });
97
+ ui.div({ text: 'HTTP/3:', width: labelWidth }, { text: settings.http3 });
98
+ ui.div({ text: 'Early Hints:', width: labelWidth }, { text: settings.earlyHints });
99
+ ui.div({ text: 'WebP:', width: labelWidth }, { text: settings.webp });
100
+ ui.div({ text: 'Polish:', width: labelWidth }, { text: settings.polish });
101
+ ux.stdout(ui.toString());
102
+ return output;
103
+ }
104
+ }
105
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/ecdn/speed/update.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import type { CdnZonesComponents } from '@salesforce/b2c-tooling-sdk/clients';
2
+ import { EcdnZoneCommand } from '../../../../utils/ecdn/index.js';
3
+ type WafGroup = CdnZonesComponents['schemas']['WafGroup'];
4
+ /**
5
+ * Response type for the list command.
6
+ */
7
+ interface ListOutput {
8
+ groups: WafGroup[];
9
+ total: number;
10
+ }
11
+ /**
12
+ * Command to list WAF groups for a zone.
13
+ * Note: This is for WAF v1. For zones created after 24.5, use waf rulesets commands.
14
+ */
15
+ export default class EcdnWafGroupsList extends EcdnZoneCommand<typeof EcdnWafGroupsList> {
16
+ static description: string;
17
+ static enableJsonFlag: boolean;
18
+ static examples: string[];
19
+ static flags: {
20
+ columns: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
21
+ zone: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
22
+ 'tenant-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
23
+ 'client-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
24
+ 'client-secret': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
+ scope: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
+ 'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
+ 'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
+ 'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
+ 'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
+ debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
31
+ json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
32
+ lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
33
+ config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
34
+ instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
35
+ 'working-directory': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
36
+ 'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
37
+ 'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
38
+ 'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
39
+ };
40
+ run(): Promise<ListOutput>;
41
+ }
42
+ export {};
@@ -0,0 +1,89 @@
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 { TableRenderer } from '@salesforce/b2c-tooling-sdk/cli';
8
+ import { EcdnZoneCommand, formatApiError } from '../../../../utils/ecdn/index.js';
9
+ import { t } from '../../../../i18n/index.js';
10
+ const COLUMNS = {
11
+ groupId: {
12
+ header: 'Group ID',
13
+ get: (g) => g.groupId || '-',
14
+ },
15
+ description: {
16
+ header: 'Description',
17
+ get: (g) => g.description || '-',
18
+ },
19
+ mode: {
20
+ header: 'Mode',
21
+ get: (g) => g.mode || '-',
22
+ },
23
+ action: {
24
+ header: 'Action',
25
+ get: (g) => g.action || '-',
26
+ },
27
+ };
28
+ const DEFAULT_COLUMNS = ['groupId', 'description', 'mode', 'action'];
29
+ const tableRenderer = new TableRenderer(COLUMNS);
30
+ /**
31
+ * Command to list WAF groups for a zone.
32
+ * Note: This is for WAF v1. For zones created after 24.5, use waf rulesets commands.
33
+ */
34
+ export default class EcdnWafGroupsList extends EcdnZoneCommand {
35
+ static description = t('commands.ecdn.waf.groups.list.description', 'List WAF v1 groups for a zone (not applicable for WAFv2 zones)');
36
+ static enableJsonFlag = true;
37
+ static examples = [
38
+ '<%= config.bin %> <%= command.id %> --tenant-id zzxy_prd --zone my-zone',
39
+ '<%= config.bin %> <%= command.id %> --tenant-id zzxy_prd --zone my-zone --json',
40
+ ];
41
+ static flags = {
42
+ ...EcdnZoneCommand.baseFlags,
43
+ columns: Flags.string({
44
+ char: 'c',
45
+ description: `Columns to display (comma-separated). Available: ${Object.keys(COLUMNS).join(', ')}`,
46
+ }),
47
+ };
48
+ async run() {
49
+ this.requireOAuthCredentials();
50
+ const zoneId = await this.resolveZoneId();
51
+ if (!this.jsonEnabled()) {
52
+ this.log(t('commands.ecdn.waf.groups.list.fetching', 'Fetching WAF groups...'));
53
+ }
54
+ const client = this.getCdnZonesClient();
55
+ const organizationId = this.getOrganizationId();
56
+ const { data, error } = await client.GET('/organizations/{organizationId}/zones/{zoneId}/waf/groups', {
57
+ params: {
58
+ path: { organizationId, zoneId },
59
+ },
60
+ });
61
+ if (error) {
62
+ this.error(t('commands.ecdn.waf.groups.list.error', 'Failed to fetch WAF groups: {{message}}', {
63
+ message: formatApiError(error),
64
+ }));
65
+ }
66
+ const groups = data?.data ?? [];
67
+ const output = {
68
+ groups,
69
+ total: groups.length,
70
+ };
71
+ if (this.jsonEnabled()) {
72
+ return output;
73
+ }
74
+ if (groups.length === 0) {
75
+ this.log(t('commands.ecdn.waf.groups.list.noGroups', 'No WAF groups found.'));
76
+ return output;
77
+ }
78
+ this.log(t('commands.ecdn.waf.groups.list.count', 'Found {{count}} WAF group(s):', {
79
+ count: groups.length,
80
+ }));
81
+ this.log('');
82
+ const columns = this.flags.columns
83
+ ? tableRenderer.validateColumnKeys(this.flags.columns.split(',').map((c) => c.trim()))
84
+ : DEFAULT_COLUMNS;
85
+ tableRenderer.render(groups, columns.length > 0 ? columns : DEFAULT_COLUMNS);
86
+ return output;
87
+ }
88
+ }
89
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../../src/commands/ecdn/waf/groups/list.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import type { CdnZonesComponents } from '@salesforce/b2c-tooling-sdk/clients';
2
+ import { EcdnZoneCommand } from '../../../../utils/ecdn/index.js';
3
+ type WafGroup = CdnZonesComponents['schemas']['WafGroup'];
4
+ /**
5
+ * Response type for the update command.
6
+ */
7
+ interface UpdateOutput {
8
+ group: WafGroup;
9
+ }
10
+ /**
11
+ * Command to update a WAF group for a zone.
12
+ * Note: This is for WAF v1. For zones created after 24.5, use waf rulesets commands.
13
+ */
14
+ export default class EcdnWafGroupsUpdate extends EcdnZoneCommand<typeof EcdnWafGroupsUpdate> {
15
+ static description: string;
16
+ static enableJsonFlag: boolean;
17
+ static examples: string[];
18
+ static flags: {
19
+ 'group-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
20
+ mode: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
21
+ action: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
22
+ zone: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
23
+ 'tenant-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
24
+ 'client-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
+ 'client-secret': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
+ scope: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
+ 'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
+ 'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
+ 'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
+ 'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
31
+ debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
32
+ json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
33
+ lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
34
+ config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
35
+ instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
36
+ 'working-directory': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
37
+ 'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
38
+ 'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
39
+ 'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
40
+ };
41
+ run(): Promise<UpdateOutput>;
42
+ }
43
+ export {};
@@ -0,0 +1,84 @@
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, ux } from '@oclif/core';
7
+ import cliui from 'cliui';
8
+ import { EcdnZoneCommand, formatApiError } from '../../../../utils/ecdn/index.js';
9
+ import { t } from '../../../../i18n/index.js';
10
+ /**
11
+ * Command to update a WAF group for a zone.
12
+ * Note: This is for WAF v1. For zones created after 24.5, use waf rulesets commands.
13
+ */
14
+ export default class EcdnWafGroupsUpdate extends EcdnZoneCommand {
15
+ static description = t('commands.ecdn.waf.groups.update.description', 'Update a WAF v1 group for a zone (not applicable for WAFv2 zones)');
16
+ static enableJsonFlag = true;
17
+ static examples = [
18
+ '<%= config.bin %> <%= command.id %> --tenant-id zzxy_prd --zone my-zone --group-id abc123 --mode on',
19
+ '<%= config.bin %> <%= command.id %> --tenant-id zzxy_prd --zone my-zone --group-id abc123 --action block',
20
+ ];
21
+ static flags = {
22
+ ...EcdnZoneCommand.baseFlags,
23
+ 'group-id': Flags.string({
24
+ description: t('flags.groupId.description', 'WAF group ID to update'),
25
+ required: true,
26
+ }),
27
+ mode: Flags.string({
28
+ description: t('flags.mode.description', 'Mode for the WAF group (on/off)'),
29
+ options: ['on', 'off'],
30
+ required: true,
31
+ }),
32
+ action: Flags.string({
33
+ description: t('flags.action.description', 'Action for the WAF group'),
34
+ options: ['block', 'challenge', 'monitor', 'default'],
35
+ }),
36
+ };
37
+ async run() {
38
+ this.requireOAuthCredentials();
39
+ const zoneId = await this.resolveZoneId();
40
+ const groupId = this.flags['group-id'];
41
+ const mode = this.flags.mode;
42
+ const action = this.flags.action;
43
+ if (!this.jsonEnabled()) {
44
+ this.log(t('commands.ecdn.waf.groups.update.updating', 'Updating WAF group {{id}}...', { id: groupId }));
45
+ }
46
+ const body = { mode };
47
+ if (action) {
48
+ body.action = action;
49
+ }
50
+ const client = this.getCdnZonesRwClient();
51
+ const organizationId = this.getOrganizationId();
52
+ const { data, error } = await client.PUT('/organizations/{organizationId}/zones/{zoneId}/waf/groups/{groupId}', {
53
+ params: {
54
+ path: { organizationId, zoneId, groupId },
55
+ },
56
+ body,
57
+ });
58
+ if (error) {
59
+ this.error(t('commands.ecdn.waf.groups.update.error', 'Failed to update WAF group: {{message}}', {
60
+ message: formatApiError(error),
61
+ }));
62
+ }
63
+ const group = data?.data;
64
+ if (!group) {
65
+ this.error(t('commands.ecdn.waf.groups.update.noData', 'No WAF group data returned from API'));
66
+ }
67
+ const output = { group };
68
+ if (this.jsonEnabled()) {
69
+ return output;
70
+ }
71
+ const ui = cliui({ width: process.stdout.columns || 80 });
72
+ const labelWidth = 14;
73
+ ui.div('');
74
+ ui.div({ text: t('commands.ecdn.waf.groups.update.success', 'WAF group updated successfully!') });
75
+ ui.div('');
76
+ ui.div({ text: 'Group ID:', width: labelWidth }, { text: group.groupId || '-' });
77
+ ui.div({ text: 'Description:', width: labelWidth }, { text: group.description || '-' });
78
+ ui.div({ text: 'Mode:', width: labelWidth }, { text: group.mode });
79
+ ui.div({ text: 'Action:', width: labelWidth }, { text: group.action || '-' });
80
+ ux.stdout(ui.toString());
81
+ return output;
82
+ }
83
+ }
84
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../../src/commands/ecdn/waf/groups/update.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import type { CdnZonesComponents } from '@salesforce/b2c-tooling-sdk/clients';
2
+ import { EcdnZoneCommand } from '../../../../utils/ecdn/index.js';
3
+ type WAFManagedRule = CdnZonesComponents['schemas']['WAFManagedRule'];
4
+ /**
5
+ * Response type for the list command.
6
+ */
7
+ interface ListOutput {
8
+ rules: WAFManagedRule[];
9
+ total: number;
10
+ }
11
+ /**
12
+ * Command to list WAF v2 managed rules within a ruleset.
13
+ */
14
+ export default class EcdnWafManagedRulesList extends EcdnZoneCommand<typeof EcdnWafManagedRulesList> {
15
+ static description: string;
16
+ static enableJsonFlag: boolean;
17
+ static examples: string[];
18
+ static flags: {
19
+ 'ruleset-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
20
+ columns: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
21
+ extended: import("@oclif/core/interfaces").BooleanFlag<boolean>;
22
+ zone: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
23
+ 'tenant-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
24
+ 'client-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
+ 'client-secret': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
+ scope: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
+ 'short-code': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
+ 'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
+ 'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
30
+ 'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
31
+ debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
32
+ json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
33
+ lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
34
+ config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
35
+ instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
36
+ 'working-directory': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
37
+ 'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
38
+ 'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
39
+ 'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
40
+ };
41
+ run(): Promise<ListOutput>;
42
+ private getSelectedColumns;
43
+ }
44
+ export {};