@rockcarver/frodo-cli 2.0.0-3 → 2.0.0-31

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 (466) hide show
  1. package/CHANGELOG.md +275 -4
  2. package/esm/app.js +20 -5
  3. package/esm/app.js.map +1 -1
  4. package/esm/cli/FrodoCommand.js +28 -6
  5. package/esm/cli/FrodoCommand.js.map +1 -1
  6. package/esm/cli/_template/something-delete.js +7 -4
  7. package/esm/cli/_template/something-delete.js.map +1 -1
  8. package/esm/cli/_template/something-describe.js +7 -4
  9. package/esm/cli/_template/something-describe.js.map +1 -1
  10. package/esm/cli/_template/something-else-delete.js +7 -4
  11. package/esm/cli/_template/something-else-delete.js.map +1 -1
  12. package/esm/cli/_template/something-else-describe.js +7 -4
  13. package/esm/cli/_template/something-else-describe.js.map +1 -1
  14. package/esm/cli/_template/something-else-export.js +7 -4
  15. package/esm/cli/_template/something-else-export.js.map +1 -1
  16. package/esm/cli/_template/something-else-import.js +7 -4
  17. package/esm/cli/_template/something-else-import.js.map +1 -1
  18. package/esm/cli/_template/something-else-list.js +7 -4
  19. package/esm/cli/_template/something-else-list.js.map +1 -1
  20. package/esm/cli/_template/something-else.js +1 -1
  21. package/esm/cli/_template/something-else.js.map +1 -1
  22. package/esm/cli/_template/something-export.js +7 -4
  23. package/esm/cli/_template/something-export.js.map +1 -1
  24. package/esm/cli/_template/something-import.js +7 -4
  25. package/esm/cli/_template/something-import.js.map +1 -1
  26. package/esm/cli/_template/something-list.js +7 -4
  27. package/esm/cli/_template/something-list.js.map +1 -1
  28. package/esm/cli/_template/something-other-delete.js +7 -4
  29. package/esm/cli/_template/something-other-delete.js.map +1 -1
  30. package/esm/cli/_template/something-other-describe.js +7 -4
  31. package/esm/cli/_template/something-other-describe.js.map +1 -1
  32. package/esm/cli/_template/something-other-export.js +7 -4
  33. package/esm/cli/_template/something-other-export.js.map +1 -1
  34. package/esm/cli/_template/something-other-import.js +7 -4
  35. package/esm/cli/_template/something-other-import.js.map +1 -1
  36. package/esm/cli/_template/something-other-list.js +7 -4
  37. package/esm/cli/_template/something-other-list.js.map +1 -1
  38. package/esm/cli/_template/something-other.js +1 -1
  39. package/esm/cli/_template/something-other.js.map +1 -1
  40. package/esm/cli/_template/something.js +2 -2
  41. package/esm/cli/_template/something.js.map +1 -1
  42. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js +10 -4
  43. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js.map +1 -1
  44. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js +14 -7
  45. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js.map +1 -1
  46. package/esm/cli/admin/admin-federation-export.js +45 -0
  47. package/esm/cli/admin/admin-federation-export.js.map +1 -0
  48. package/esm/cli/admin/admin-federation-import.js +49 -0
  49. package/esm/cli/admin/admin-federation-import.js.map +1 -0
  50. package/esm/cli/admin/admin-federation-list.js +29 -0
  51. package/esm/cli/admin/admin-federation-list.js.map +1 -0
  52. package/esm/cli/admin/admin-federation.js +13 -0
  53. package/esm/cli/admin/admin-federation.js.map +1 -0
  54. package/esm/cli/admin/admin-get-access-token.js +12 -6
  55. package/esm/cli/admin/admin-get-access-token.js.map +1 -1
  56. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js +13 -7
  57. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js.map +1 -1
  58. package/esm/cli/admin/admin-hide-generic-extension-attributes.js +11 -5
  59. package/esm/cli/admin/admin-hide-generic-extension-attributes.js.map +1 -1
  60. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js +11 -5
  61. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js.map +1 -1
  62. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js +11 -5
  63. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js.map +1 -1
  64. package/esm/cli/admin/admin-list-static-user-mappings.js +12 -6
  65. package/esm/cli/admin/admin-list-static-user-mappings.js.map +1 -1
  66. package/esm/cli/admin/admin-remove-static-user-mapping.js +12 -5
  67. package/esm/cli/admin/admin-remove-static-user-mapping.js.map +1 -1
  68. package/esm/cli/admin/admin-repair-org-model.js +11 -5
  69. package/esm/cli/admin/admin-repair-org-model.js.map +1 -1
  70. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js +12 -6
  71. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js.map +1 -1
  72. package/esm/cli/admin/admin-show-generic-extension-attributes.js +11 -5
  73. package/esm/cli/admin/admin-show-generic-extension-attributes.js.map +1 -1
  74. package/esm/cli/admin/admin-train-auto-access-model.js +33 -0
  75. package/esm/cli/admin/admin-train-auto-access-model.js.map +1 -0
  76. package/esm/cli/admin/admin.js +6 -2
  77. package/esm/cli/admin/admin.js.map +1 -1
  78. package/esm/cli/agent/agent-delete.js +13 -6
  79. package/esm/cli/agent/agent-delete.js.map +1 -1
  80. package/esm/cli/agent/agent-describe.js +7 -4
  81. package/esm/cli/agent/agent-describe.js.map +1 -1
  82. package/esm/cli/agent/agent-export.js +8 -5
  83. package/esm/cli/agent/agent-export.js.map +1 -1
  84. package/esm/cli/agent/agent-gateway-delete.js +13 -6
  85. package/esm/cli/agent/agent-gateway-delete.js.map +1 -1
  86. package/esm/cli/agent/agent-gateway-describe.js +7 -4
  87. package/esm/cli/agent/agent-gateway-describe.js.map +1 -1
  88. package/esm/cli/agent/agent-gateway-export.js +8 -5
  89. package/esm/cli/agent/agent-gateway-export.js.map +1 -1
  90. package/esm/cli/agent/agent-gateway-import.js +8 -5
  91. package/esm/cli/agent/agent-gateway-import.js.map +1 -1
  92. package/esm/cli/agent/agent-gateway-list.js +7 -4
  93. package/esm/cli/agent/agent-gateway-list.js.map +1 -1
  94. package/esm/cli/agent/agent-gateway.js +1 -1
  95. package/esm/cli/agent/agent-gateway.js.map +1 -1
  96. package/esm/cli/agent/agent-import.js +8 -5
  97. package/esm/cli/agent/agent-import.js.map +1 -1
  98. package/esm/cli/agent/agent-java-delete.js +13 -6
  99. package/esm/cli/agent/agent-java-delete.js.map +1 -1
  100. package/esm/cli/agent/agent-java-describe.js +7 -4
  101. package/esm/cli/agent/agent-java-describe.js.map +1 -1
  102. package/esm/cli/agent/agent-java-export.js +8 -5
  103. package/esm/cli/agent/agent-java-export.js.map +1 -1
  104. package/esm/cli/agent/agent-java-import.js +8 -5
  105. package/esm/cli/agent/agent-java-import.js.map +1 -1
  106. package/esm/cli/agent/agent-java-list.js +7 -4
  107. package/esm/cli/agent/agent-java-list.js.map +1 -1
  108. package/esm/cli/agent/agent-java.js +1 -1
  109. package/esm/cli/agent/agent-java.js.map +1 -1
  110. package/esm/cli/agent/agent-list.js +7 -4
  111. package/esm/cli/agent/agent-list.js.map +1 -1
  112. package/esm/cli/agent/agent-web-delete.js +13 -6
  113. package/esm/cli/agent/agent-web-delete.js.map +1 -1
  114. package/esm/cli/agent/agent-web-describe.js +7 -4
  115. package/esm/cli/agent/agent-web-describe.js.map +1 -1
  116. package/esm/cli/agent/agent-web-export.js +8 -5
  117. package/esm/cli/agent/agent-web-export.js.map +1 -1
  118. package/esm/cli/agent/agent-web-import.js +8 -5
  119. package/esm/cli/agent/agent-web-import.js.map +1 -1
  120. package/esm/cli/agent/agent-web-list.js +7 -4
  121. package/esm/cli/agent/agent-web-list.js.map +1 -1
  122. package/esm/cli/agent/agent-web.js +3 -3
  123. package/esm/cli/agent/agent-web.js.map +1 -1
  124. package/esm/cli/agent/agent.js +2 -2
  125. package/esm/cli/agent/agent.js.map +1 -1
  126. package/esm/cli/app/app-delete.js +27 -8
  127. package/esm/cli/app/app-delete.js.map +1 -1
  128. package/esm/cli/app/app-describe.js +9 -5
  129. package/esm/cli/app/app-describe.js.map +1 -1
  130. package/esm/cli/app/app-export.js +17 -13
  131. package/esm/cli/app/app-export.js.map +1 -1
  132. package/esm/cli/app/app-import.js +21 -17
  133. package/esm/cli/app/app-import.js.map +1 -1
  134. package/esm/cli/app/app-list.js +12 -8
  135. package/esm/cli/app/app-list.js.map +1 -1
  136. package/esm/cli/app/app.js +8 -12
  137. package/esm/cli/app/app.js.map +1 -1
  138. package/esm/cli/authn/authn-describe.js +30 -0
  139. package/esm/cli/authn/authn-describe.js.map +1 -0
  140. package/esm/cli/authn/authn-export.js +26 -0
  141. package/esm/cli/authn/authn-export.js.map +1 -0
  142. package/esm/cli/authn/authn-import.js +26 -0
  143. package/esm/cli/authn/authn-import.js.map +1 -0
  144. package/esm/cli/authn/authn.js +12 -0
  145. package/esm/cli/authn/authn.js.map +1 -0
  146. package/esm/cli/authz/authz-policy-delete.js +11 -8
  147. package/esm/cli/authz/authz-policy-delete.js.map +1 -1
  148. package/esm/cli/authz/authz-policy-describe.js +8 -5
  149. package/esm/cli/authz/authz-policy-describe.js.map +1 -1
  150. package/esm/cli/authz/authz-policy-export.js +12 -9
  151. package/esm/cli/authz/authz-policy-export.js.map +1 -1
  152. package/esm/cli/authz/authz-policy-import.js +10 -7
  153. package/esm/cli/authz/authz-policy-import.js.map +1 -1
  154. package/esm/cli/authz/authz-policy-list.js +9 -6
  155. package/esm/cli/authz/authz-policy-list.js.map +1 -1
  156. package/esm/cli/authz/authz-policy.js +1 -1
  157. package/esm/cli/authz/authz-policy.js.map +1 -1
  158. package/esm/cli/authz/authz-set-delete.js +10 -7
  159. package/esm/cli/authz/authz-set-delete.js.map +1 -1
  160. package/esm/cli/authz/authz-set-describe.js +8 -5
  161. package/esm/cli/authz/authz-set-describe.js.map +1 -1
  162. package/esm/cli/authz/authz-set-export.js +10 -7
  163. package/esm/cli/authz/authz-set-export.js.map +1 -1
  164. package/esm/cli/authz/authz-set-import.js +10 -7
  165. package/esm/cli/authz/authz-set-import.js.map +1 -1
  166. package/esm/cli/authz/authz-set-list.js +7 -4
  167. package/esm/cli/authz/authz-set-list.js.map +1 -1
  168. package/esm/cli/authz/authz-set.js +1 -1
  169. package/esm/cli/authz/authz-set.js.map +1 -1
  170. package/esm/cli/authz/authz-type-delete.js +12 -9
  171. package/esm/cli/authz/authz-type-delete.js.map +1 -1
  172. package/esm/cli/authz/authz-type-describe.js +9 -6
  173. package/esm/cli/authz/authz-type-describe.js.map +1 -1
  174. package/esm/cli/authz/authz-type-export.js +11 -8
  175. package/esm/cli/authz/authz-type-export.js.map +1 -1
  176. package/esm/cli/authz/authz-type-import.js +12 -9
  177. package/esm/cli/authz/authz-type-import.js.map +1 -1
  178. package/esm/cli/authz/authz-type-list.js +8 -5
  179. package/esm/cli/authz/authz-type-list.js.map +1 -1
  180. package/esm/cli/authz/authz-type.js +1 -1
  181. package/esm/cli/authz/authz-type.js.map +1 -1
  182. package/esm/cli/authz/authz.js +2 -2
  183. package/esm/cli/authz/authz.js.map +1 -1
  184. package/esm/cli/conn/conn-delete.js +2 -2
  185. package/esm/cli/conn/conn-delete.js.map +1 -1
  186. package/esm/cli/conn/conn-describe.js +2 -2
  187. package/esm/cli/conn/conn-describe.js.map +1 -1
  188. package/esm/cli/conn/conn-list.js +2 -2
  189. package/esm/cli/conn/conn-list.js.map +1 -1
  190. package/esm/cli/conn/conn-save.js +31 -15
  191. package/esm/cli/conn/conn-save.js.map +1 -1
  192. package/esm/cli/conn/conn.js +2 -2
  193. package/esm/cli/conn/conn.js.map +1 -1
  194. package/esm/cli/email/email-template-export.js +10 -7
  195. package/esm/cli/email/email-template-export.js.map +1 -1
  196. package/esm/cli/email/email-template-import.js +11 -8
  197. package/esm/cli/email/email-template-import.js.map +1 -1
  198. package/esm/cli/email/email-template-list.js +8 -5
  199. package/esm/cli/email/email-template-list.js.map +1 -1
  200. package/esm/cli/email/email-template.js +1 -1
  201. package/esm/cli/email/email-template.js.map +1 -1
  202. package/esm/cli/email/email.js +2 -2
  203. package/esm/cli/email/email.js.map +1 -1
  204. package/esm/cli/esv/esv-apply.js +18 -8
  205. package/esm/cli/esv/esv-apply.js.map +1 -1
  206. package/esm/cli/esv/esv-secret-create.js +8 -5
  207. package/esm/cli/esv/esv-secret-create.js.map +1 -1
  208. package/esm/cli/esv/esv-secret-delete.js +9 -6
  209. package/esm/cli/esv/esv-secret-delete.js.map +1 -1
  210. package/esm/cli/esv/esv-secret-describe.js +8 -5
  211. package/esm/cli/esv/esv-secret-describe.js.map +1 -1
  212. package/esm/cli/esv/esv-secret-export.js +19 -5
  213. package/esm/cli/esv/esv-secret-export.js.map +1 -1
  214. package/esm/cli/esv/esv-secret-import.js +7 -4
  215. package/esm/cli/esv/esv-secret-import.js.map +1 -1
  216. package/esm/cli/esv/esv-secret-list.js +8 -5
  217. package/esm/cli/esv/esv-secret-list.js.map +1 -1
  218. package/esm/cli/esv/esv-secret-set.js +8 -5
  219. package/esm/cli/esv/esv-secret-set.js.map +1 -1
  220. package/esm/cli/esv/esv-secret-version-activate.js +8 -5
  221. package/esm/cli/esv/esv-secret-version-activate.js.map +1 -1
  222. package/esm/cli/esv/esv-secret-version-create.js +9 -6
  223. package/esm/cli/esv/esv-secret-version-create.js.map +1 -1
  224. package/esm/cli/esv/esv-secret-version-deactivate.js +8 -5
  225. package/esm/cli/esv/esv-secret-version-deactivate.js.map +1 -1
  226. package/esm/cli/esv/esv-secret-version-delete.js +9 -6
  227. package/esm/cli/esv/esv-secret-version-delete.js.map +1 -1
  228. package/esm/cli/esv/esv-secret-version-list.js +8 -5
  229. package/esm/cli/esv/esv-secret-version-list.js.map +1 -1
  230. package/esm/cli/esv/esv-secret-version.js +1 -1
  231. package/esm/cli/esv/esv-secret-version.js.map +1 -1
  232. package/esm/cli/esv/esv-secret.js +2 -3
  233. package/esm/cli/esv/esv-secret.js.map +1 -1
  234. package/esm/cli/esv/esv-variable-create.js +10 -6
  235. package/esm/cli/esv/esv-variable-create.js.map +1 -1
  236. package/esm/cli/esv/esv-variable-delete.js +10 -7
  237. package/esm/cli/esv/esv-variable-delete.js.map +1 -1
  238. package/esm/cli/esv/esv-variable-describe.js +10 -7
  239. package/esm/cli/esv/esv-variable-describe.js.map +1 -1
  240. package/esm/cli/esv/esv-variable-export.js +20 -6
  241. package/esm/cli/esv/esv-variable-export.js.map +1 -1
  242. package/esm/cli/esv/esv-variable-import.js +7 -4
  243. package/esm/cli/esv/esv-variable-import.js.map +1 -1
  244. package/esm/cli/esv/esv-variable-list.js +8 -5
  245. package/esm/cli/esv/esv-variable-list.js.map +1 -1
  246. package/esm/cli/esv/esv-variable-set.js +8 -5
  247. package/esm/cli/esv/esv-variable-set.js.map +1 -1
  248. package/esm/cli/esv/esv-variable.js +2 -3
  249. package/esm/cli/esv/esv-variable.js.map +1 -1
  250. package/esm/cli/esv/esv.js +2 -2
  251. package/esm/cli/esv/esv.js.map +1 -1
  252. package/esm/cli/idm/idm-count.js +9 -6
  253. package/esm/cli/idm/idm-count.js.map +1 -1
  254. package/esm/cli/idm/idm-export.js +21 -12
  255. package/esm/cli/idm/idm-export.js.map +1 -1
  256. package/esm/cli/idm/idm-import.js +22 -13
  257. package/esm/cli/idm/idm-import.js.map +1 -1
  258. package/esm/cli/idm/idm-list.js +7 -4
  259. package/esm/cli/idm/idm-list.js.map +1 -1
  260. package/esm/cli/idm/idm.js +2 -2
  261. package/esm/cli/idm/idm.js.map +1 -1
  262. package/esm/cli/idp/idp-export.js +11 -8
  263. package/esm/cli/idp/idp-export.js.map +1 -1
  264. package/esm/cli/idp/idp-import.js +15 -12
  265. package/esm/cli/idp/idp-import.js.map +1 -1
  266. package/esm/cli/idp/idp-list.js +7 -4
  267. package/esm/cli/idp/idp-list.js.map +1 -1
  268. package/esm/cli/idp/idp.js +2 -2
  269. package/esm/cli/idp/idp.js.map +1 -1
  270. package/esm/cli/info/info.js +16 -10
  271. package/esm/cli/info/info.js.map +1 -1
  272. package/esm/cli/journey/journey-delete.js +8 -5
  273. package/esm/cli/journey/journey-delete.js.map +1 -1
  274. package/esm/cli/journey/journey-describe.js +19 -10
  275. package/esm/cli/journey/journey-describe.js.map +1 -1
  276. package/esm/cli/journey/journey-disable.js +12 -6
  277. package/esm/cli/journey/journey-disable.js.map +1 -1
  278. package/esm/cli/journey/journey-enable.js +12 -6
  279. package/esm/cli/journey/journey-enable.js.map +1 -1
  280. package/esm/cli/journey/journey-export.js +21 -9
  281. package/esm/cli/journey/journey-export.js.map +1 -1
  282. package/esm/cli/journey/journey-import.js +11 -8
  283. package/esm/cli/journey/journey-import.js.map +1 -1
  284. package/esm/cli/journey/journey-list.js +6 -3
  285. package/esm/cli/journey/journey-list.js.map +1 -1
  286. package/esm/cli/journey/journey-prune.js +23 -12
  287. package/esm/cli/journey/journey-prune.js.map +1 -1
  288. package/esm/cli/journey/journey.js +2 -2
  289. package/esm/cli/journey/journey.js.map +1 -1
  290. package/esm/cli/{logging/logs-fetch.js → log/log-fetch.js} +68 -36
  291. package/esm/cli/log/log-fetch.js.map +1 -0
  292. package/esm/cli/log/log-key-delete.js +35 -0
  293. package/esm/cli/log/log-key-delete.js.map +1 -0
  294. package/esm/cli/log/log-key-describe.js +22 -0
  295. package/esm/cli/log/log-key-describe.js.map +1 -0
  296. package/esm/cli/log/log-key-list.js +26 -0
  297. package/esm/cli/log/log-key-list.js.map +1 -0
  298. package/esm/cli/log/log-key.js +8 -0
  299. package/esm/cli/log/log-key.js.map +1 -0
  300. package/esm/cli/log/log-list.js +80 -0
  301. package/esm/cli/log/log-list.js.map +1 -0
  302. package/esm/cli/log/log-tail.js +77 -0
  303. package/esm/cli/log/log-tail.js.map +1 -0
  304. package/esm/cli/{logging/logs.js → log/log.js} +6 -3
  305. package/esm/cli/log/log.js.map +1 -0
  306. package/esm/cli/oauth/oauth-client-delete.js +22 -0
  307. package/esm/cli/oauth/oauth-client-delete.js.map +1 -0
  308. package/esm/cli/oauth/oauth-client-describe.js +22 -0
  309. package/esm/cli/oauth/oauth-client-describe.js.map +1 -0
  310. package/esm/cli/oauth/oauth-client-export.js +52 -0
  311. package/esm/cli/oauth/oauth-client-export.js.map +1 -0
  312. package/esm/cli/oauth/oauth-client-import.js +57 -0
  313. package/esm/cli/oauth/oauth-client-import.js.map +1 -0
  314. package/esm/cli/oauth/oauth-client-list.js +25 -0
  315. package/esm/cli/oauth/oauth-client-list.js.map +1 -0
  316. package/esm/cli/oauth/oauth-client.js +14 -0
  317. package/esm/cli/oauth/oauth-client.js.map +1 -0
  318. package/esm/cli/oauth/oauth.js +13 -0
  319. package/esm/cli/oauth/oauth.js.map +1 -0
  320. package/esm/cli/realm/realm-add-custom-domain.js +8 -5
  321. package/esm/cli/realm/realm-add-custom-domain.js.map +1 -1
  322. package/esm/cli/realm/realm-describe.js +8 -5
  323. package/esm/cli/realm/realm-describe.js.map +1 -1
  324. package/esm/cli/realm/realm-list.js +8 -5
  325. package/esm/cli/realm/realm-list.js.map +1 -1
  326. package/esm/cli/realm/realm-remove-custom-domain.js +11 -5
  327. package/esm/cli/realm/realm-remove-custom-domain.js.map +1 -1
  328. package/esm/cli/realm/realm.js +2 -2
  329. package/esm/cli/realm/realm.js.map +1 -1
  330. package/esm/cli/saml/saml-cot-export.js +10 -7
  331. package/esm/cli/saml/saml-cot-export.js.map +1 -1
  332. package/esm/cli/saml/saml-cot-import.js +15 -12
  333. package/esm/cli/saml/saml-cot-import.js.map +1 -1
  334. package/esm/cli/saml/saml-cot-list.js +8 -5
  335. package/esm/cli/saml/saml-cot-list.js.map +1 -1
  336. package/esm/cli/saml/saml-cot.js +1 -1
  337. package/esm/cli/saml/saml-cot.js.map +1 -1
  338. package/esm/cli/saml/saml-delete.js +14 -7
  339. package/esm/cli/saml/saml-delete.js.map +1 -1
  340. package/esm/cli/saml/saml-describe.js +8 -5
  341. package/esm/cli/saml/saml-describe.js.map +1 -1
  342. package/esm/cli/saml/saml-export.js +10 -7
  343. package/esm/cli/saml/saml-export.js.map +1 -1
  344. package/esm/cli/saml/saml-import.js +11 -8
  345. package/esm/cli/saml/saml-import.js.map +1 -1
  346. package/esm/cli/saml/saml-list.js +8 -5
  347. package/esm/cli/saml/saml-list.js.map +1 -1
  348. package/esm/cli/saml/saml-metadata-export.js +9 -6
  349. package/esm/cli/saml/saml-metadata-export.js.map +1 -1
  350. package/esm/cli/saml/saml-metadata.js +1 -1
  351. package/esm/cli/saml/saml-metadata.js.map +1 -1
  352. package/esm/cli/saml/saml.js +2 -2
  353. package/esm/cli/saml/saml.js.map +1 -1
  354. package/esm/cli/script/script-delete.js +7 -4
  355. package/esm/cli/script/script-delete.js.map +1 -1
  356. package/esm/cli/script/script-describe.js +7 -4
  357. package/esm/cli/script/script-describe.js.map +1 -1
  358. package/esm/cli/script/script-export.js +8 -5
  359. package/esm/cli/script/script-export.js.map +1 -1
  360. package/esm/cli/script/script-import.js +9 -6
  361. package/esm/cli/script/script-import.js.map +1 -1
  362. package/esm/cli/script/script-list.js +8 -5
  363. package/esm/cli/script/script-list.js.map +1 -1
  364. package/esm/cli/script/script.js +2 -2
  365. package/esm/cli/script/script.js.map +1 -1
  366. package/esm/cli/service/service-delete.js +8 -5
  367. package/esm/cli/service/service-delete.js.map +1 -1
  368. package/esm/cli/service/service-export.js +9 -6
  369. package/esm/cli/service/service-export.js.map +1 -1
  370. package/esm/cli/service/service-import.js +11 -9
  371. package/esm/cli/service/service-import.js.map +1 -1
  372. package/esm/cli/service/service-list.js +7 -4
  373. package/esm/cli/service/service-list.js.map +1 -1
  374. package/esm/cli/service/service.js +2 -2
  375. package/esm/cli/service/service.js.map +1 -1
  376. package/esm/cli/shell/shell.js +57 -0
  377. package/esm/cli/shell/shell.js.map +1 -0
  378. package/esm/cli/theme/theme-delete.js +10 -7
  379. package/esm/cli/theme/theme-delete.js.map +1 -1
  380. package/esm/cli/theme/theme-export.js +11 -8
  381. package/esm/cli/theme/theme-export.js.map +1 -1
  382. package/esm/cli/theme/theme-import.js +12 -9
  383. package/esm/cli/theme/theme-import.js.map +1 -1
  384. package/esm/cli/theme/theme-list.js +7 -4
  385. package/esm/cli/theme/theme-list.js.map +1 -1
  386. package/esm/cli/theme/theme.js +2 -2
  387. package/esm/cli/theme/theme.js.map +1 -1
  388. package/esm/help/SampleData.js +7 -0
  389. package/esm/help/SampleData.js.map +1 -0
  390. package/esm/launch.js +1 -1
  391. package/esm/launch.js.map +1 -1
  392. package/esm/loader.js +2 -2
  393. package/esm/loader.js.map +1 -1
  394. package/esm/ops/AdminFederationOps.js +225 -0
  395. package/esm/ops/AdminFederationOps.js.map +1 -0
  396. package/esm/ops/AgentOps.js +128 -87
  397. package/esm/ops/AgentOps.js.map +1 -1
  398. package/esm/ops/ApplicationOps.js +315 -0
  399. package/esm/ops/ApplicationOps.js.map +1 -0
  400. package/esm/ops/AuthenticationSettingsOps.js +89 -0
  401. package/esm/ops/AuthenticationSettingsOps.js.map +1 -0
  402. package/esm/ops/CirclesOfTrustOps.js +72 -59
  403. package/esm/ops/CirclesOfTrustOps.js.map +1 -1
  404. package/esm/ops/ConnectionProfileOps.js +13 -6
  405. package/esm/ops/ConnectionProfileOps.js.map +1 -1
  406. package/esm/ops/EmailTemplateOps.js +76 -64
  407. package/esm/ops/EmailTemplateOps.js.map +1 -1
  408. package/esm/ops/IdmOps.js +70 -84
  409. package/esm/ops/IdmOps.js.map +1 -1
  410. package/esm/ops/IdpOps.js +74 -43
  411. package/esm/ops/IdpOps.js.map +1 -1
  412. package/esm/ops/JourneyOps.js +99 -67
  413. package/esm/ops/JourneyOps.js.map +1 -1
  414. package/esm/ops/LogOps.js +92 -30
  415. package/esm/ops/LogOps.js.map +1 -1
  416. package/esm/ops/NodeOps.js +6 -3
  417. package/esm/ops/NodeOps.js.map +1 -1
  418. package/esm/ops/OAuth2ClientOps.js +51 -32
  419. package/esm/ops/OAuth2ClientOps.js.map +1 -1
  420. package/esm/ops/OrganizationOps.js +14 -22
  421. package/esm/ops/OrganizationOps.js.map +1 -1
  422. package/esm/ops/PolicyOps.js +84 -55
  423. package/esm/ops/PolicyOps.js.map +1 -1
  424. package/esm/ops/PolicySetOps.js +67 -43
  425. package/esm/ops/PolicySetOps.js.map +1 -1
  426. package/esm/ops/RealmOps.js +18 -11
  427. package/esm/ops/RealmOps.js.map +1 -1
  428. package/esm/ops/ResourceTypeOps.js +75 -66
  429. package/esm/ops/ResourceTypeOps.js.map +1 -1
  430. package/esm/ops/Saml2Ops.js +76 -54
  431. package/esm/ops/Saml2Ops.js.map +1 -1
  432. package/esm/ops/Saml2Ops.test_.js.map +1 -1
  433. package/esm/ops/ScriptOps.js +92 -31
  434. package/esm/ops/ScriptOps.js.map +1 -1
  435. package/esm/ops/SecretsOps.js +106 -23
  436. package/esm/ops/SecretsOps.js.map +1 -1
  437. package/esm/ops/ServiceOps.js +67 -41
  438. package/esm/ops/ServiceOps.js.map +1 -1
  439. package/esm/ops/ThemeOps.js +62 -36
  440. package/esm/ops/ThemeOps.js.map +1 -1
  441. package/esm/ops/VariablesOps.js +132 -41
  442. package/esm/ops/VariablesOps.js.map +1 -1
  443. package/esm/ops/utils/OpsUtils.js +1 -1
  444. package/esm/ops/utils/OpsUtils.js.map +1 -1
  445. package/esm/ops/utils/Wordwrap.js +1 -1
  446. package/esm/ops/utils/Wordwrap.js.map +1 -1
  447. package/esm/storage/StaticStorage.js +1 -1
  448. package/esm/storage/StaticStorage.js.map +1 -1
  449. package/esm/utils/Config.js +7 -4
  450. package/esm/utils/Config.js.map +1 -1
  451. package/esm/utils/Console.js +9 -5
  452. package/esm/utils/Console.js.map +1 -1
  453. package/esm/utils/ExportImportUtils.js +32 -66
  454. package/esm/utils/ExportImportUtils.js.map +1 -1
  455. package/esm/utils/Version.js +19 -16
  456. package/esm/utils/Version.js.map +1 -1
  457. package/global-jest-setup.js +4 -0
  458. package/package.json +46 -35
  459. package/esm/cli/logging/logs-fetch.js.map +0 -1
  460. package/esm/cli/logging/logs-list.js +0 -49
  461. package/esm/cli/logging/logs-list.js.map +0 -1
  462. package/esm/cli/logging/logs-tail.js +0 -46
  463. package/esm/cli/logging/logs-tail.js.map +0 -1
  464. package/esm/cli/logging/logs.js.map +0 -1
  465. package/esm/cli/theme/theme-delete.e2e.test_.js.map +0 -1
  466. package/esm/cli/theme/theme-list.e2e.test_.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"app-export.js","names":["FrodoCommand","Option","frodo","verboseMessage","exportOAuth2ClientsToFile","exportOAuth2ClientsToFiles","exportOAuth2ClientToFile","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","appId","login","getTokens","status","file","useStringArrays","deps","process","exitCode","all","allSeparate","help","parse"],"sources":["cli/app/app-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport {\n exportOAuth2ClientsToFile,\n exportOAuth2ClientsToFiles,\n exportOAuth2ClientToFile,\n} from '../../ops/OAuth2ClientOps';\n\nconst program = new FrodoCommand('frodo app export');\n\nprogram\n .description('Export OAuth2 applications.')\n .addOption(\n new Option(\n '-i, --app-id <app-id>',\n 'App id. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Export all OAuth2 apps to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all OAuth2 apps to separate files (*.oauth2.app.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option('--no-deps', 'Do not include any dependencies (scripts).')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // export\n if (options.appId && (await frodo.login.getTokens())) {\n verboseMessage('Exporting OAuth2 application...');\n const status = await exportOAuth2ClientToFile(\n options.appId,\n options.file,\n {\n useStringArrays: true,\n deps: options.deps,\n }\n );\n if (!status) process.exitCode = 1;\n }\n // -a/--all\n else if (options.all && (await frodo.login.getTokens())) {\n verboseMessage('Exporting all OAuth2 applications to file...');\n const status = await exportOAuth2ClientsToFile(options.file, {\n useStringArrays: true,\n deps: options.deps,\n });\n if (!status) process.exitCode = 1;\n }\n // -A/--all-separate\n else if (options.allSeparate && (await frodo.login.getTokens())) {\n verboseMessage('Exporting all applications to separate files...');\n const status = await exportOAuth2ClientsToFiles({\n useStringArrays: true,\n deps: options.deps,\n });\n if (!status) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SACEC,yBAAyB,EACzBC,0BAA0B,EAC1BC,wBAAwB,QACnB,2BAA2B;AAElC,MAAMC,OAAO,GAAG,IAAIP,YAAY,CAAC,kBAAkB,CAAC;AAEpDO,OAAO,CACJC,WAAW,CAAC,6BAA6B,CAAC,CAC1CC,SAAS,CACR,IAAIR,MAAM,CACR,uBAAuB,EACvB,8CACF,CACF,CAAC,CACAQ,SAAS,CAAC,IAAIR,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtEQ,SAAS,CACR,IAAIR,MAAM,CACR,WAAW,EACX,2DACF,CACF,CAAC,CACAQ,SAAS,CACR,IAAIR,MAAM,CACR,oBAAoB,EACpB,+GACF,CACF,CAAC,CACAQ,SAAS,CACR,IAAIR,MAAM,CAAC,WAAW,EAAE,4CAA4C,CACtE,CAAC,CACAS,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD;EACA,IAAID,OAAO,CAACG,KAAK,KAAK,MAAMhB,KAAK,CAACiB,KAAK,CAACC,SAAS,CAAC,CAAC,CAAC,EAAE;IACpDjB,cAAc,CAAC,iCAAiC,CAAC;IACjD,MAAMkB,MAAM,GAAG,MAAMf,wBAAwB,CAC3CS,OAAO,CAACG,KAAK,EACbH,OAAO,CAACO,IAAI,EACZ;MACEC,eAAe,EAAE,IAAI;MACrBC,IAAI,EAAET,OAAO,CAACS;IAChB,CACF,CAAC;IACD,IAAI,CAACH,MAAM,EAAEI,OAAO,CAACC,QAAQ,GAAG,CAAC;EACnC;EACA;EAAA,KACK,IAAIX,OAAO,CAACY,GAAG,KAAK,MAAMzB,KAAK,CAACiB,KAAK,CAACC,SAAS,CAAC,CAAC,CAAC,EAAE;IACvDjB,cAAc,CAAC,8CAA8C,CAAC;IAC9D,MAAMkB,MAAM,GAAG,MAAMjB,yBAAyB,CAACW,OAAO,CAACO,IAAI,EAAE;MAC3DC,eAAe,EAAE,IAAI;MACrBC,IAAI,EAAET,OAAO,CAACS;IAChB,CAAC,CAAC;IACF,IAAI,CAACH,MAAM,EAAEI,OAAO,CAACC,QAAQ,GAAG,CAAC;EACnC;EACA;EAAA,KACK,IAAIX,OAAO,CAACa,WAAW,KAAK,MAAM1B,KAAK,CAACiB,KAAK,CAACC,SAAS,CAAC,CAAC,CAAC,EAAE;IAC/DjB,cAAc,CAAC,iDAAiD,CAAC;IACjE,MAAMkB,MAAM,GAAG,MAAMhB,0BAA0B,CAAC;MAC9CkB,eAAe,EAAE,IAAI;MACrBC,IAAI,EAAET,OAAO,CAACS;IAChB,CAAC,CAAC;IACF,IAAI,CAACH,MAAM,EAAEI,OAAO,CAACC,QAAQ,GAAG,CAAC;EACnC;EACA;EAAA,KACK;IACHvB,cAAc,CAAC,sDAAsD,CAAC;IACtEI,OAAO,CAACsB,IAAI,CAAC,CAAC;IACdJ,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHnB,OAAO,CAACuB,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"app-export.js","names":["frodo","Option","s","exportApplicationsToFile","exportApplicationsToFiles","exportApplicationToFile","verboseMessage","FrodoCommand","getTokens","login","program","description","addOption","addHelpText","connId","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","appId","status","file","useStringArrays","deps","process","exitCode","all","allSeparate","help","parse"],"sources":["../../../src/cli/app/app-export.ts"],"sourcesContent":["import { frodo } from '@rockcarver/frodo-lib';\nimport { Option } from 'commander';\n\nimport * as s from '../../help/SampleData';\nimport {\n exportApplicationsToFile,\n exportApplicationsToFiles,\n exportApplicationToFile,\n} from '../../ops/ApplicationOps';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst { getTokens } = frodo.login;\n\nconst program = new FrodoCommand('frodo app export');\n\nprogram\n .description('Export applications.')\n .addOption(\n new Option(\n '-i, --app-id <app-id>',\n 'Application name. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Export all applications to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all applications to separate files (*.application.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option('--no-deps', 'Do not include any dependencies (scripts).')\n )\n .addHelpText(\n 'after',\n `Important Note:\\n`['brightYellow'] +\n ` The ${\n 'frodo app'['brightCyan']\n } command to manage OAuth2 clients in v1.x has been renamed to ${\n 'frodo oauth client'['brightCyan']\n } in v2.x\\n` +\n ` The ${\n 'frodo app'['brightCyan']\n } command in v2.x manages the new applications created using the new application templates in ForgeRock Identity Cloud. To manage oauth clients, use the ${\n 'frodo oauth client'['brightCyan']\n } command.\\n\\n` +\n `Usage Examples:\\n` +\n ` Export all applications to a single export file with an auto-generated filename using a connection profile:\\n` +\n ` $ frodo app export -a ${s.connId}\\n`['brightCyan'] +\n ` Export the first application to a single export file with a custom filename:\\n` +\n ` $ frodo app export -f ./allMyApplications.application.json ${s.connId}\\n`[\n 'brightCyan'\n ] +\n ` Export all applications to separate export files with an auto-generated filenames:\\n` +\n ` $ frodo app export -A ${s.connId}\\n`['brightCyan'] +\n ` Export all applications without dependencies to a single export file:\\n` +\n ` $ frodo app export --no-deps -a ${s.connId}\\n`['brightCyan'] +\n ` Export the application 'myApp' to a file with an auto-generated filename of 'myApp.application.json':\\n` +\n ` $ frodo app export -i myApp ${s.connId}\\n`['brightCyan']\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // export\n if (options.appId && (await getTokens())) {\n verboseMessage('Exporting application...');\n const status = await exportApplicationToFile(\n options.appId,\n options.file,\n {\n useStringArrays: true,\n deps: options.deps,\n }\n );\n if (!status) process.exitCode = 1;\n }\n // -a/--all\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all applications to file...');\n const status = await exportApplicationsToFile(options.file, {\n useStringArrays: true,\n deps: options.deps,\n });\n if (!status) process.exitCode = 1;\n }\n // -A/--all-separate\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Exporting all applications to separate files...');\n const status = await exportApplicationsToFiles({\n useStringArrays: true,\n deps: options.deps,\n });\n if (!status) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
@@ -1,41 +1,45 @@
1
- import { FrodoCommand } from '../FrodoCommand';
2
- import { Option } from 'commander';
3
1
  import { frodo } from '@rockcarver/frodo-lib';
2
+ import { Option } from 'commander';
3
+ import * as s from '../../help/SampleData';
4
+ import { importApplicationFromFile, importApplicationsFromFile, importApplicationsFromFiles, importFirstApplicationFromFile } from '../../ops/ApplicationOps';
4
5
  import { printMessage, verboseMessage } from '../../utils/Console.js';
5
- import { importFirstOAuth2ClientFromFile, importOAuth2ClientFromFile, importOAuth2ClientsFromFile, importOAuth2ClientsFromFiles } from '../../ops/OAuth2ClientOps';
6
+ import { FrodoCommand } from '../FrodoCommand';
7
+ const {
8
+ getTokens
9
+ } = frodo.login;
6
10
  const program = new FrodoCommand('frodo app import');
7
- program.description('Import OAuth2 applications.').addOption(new Option('-i, --app-id <id>', 'Application id. If specified, only one application is imported and the options -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the file to import.')).addOption(new Option('-a, --all', 'Import all applications from single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Import all applications from separate files (*.app.json) in the current directory. Ignored with -i or -a.')).addOption(new Option('--no-deps', 'Do not include any dependencies (scripts).')).action(
11
+ program.description('Import applications.').addOption(new Option('-i, --app-id <id>', 'Application name. If specified, only one application is imported and the options -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the file to import.')).addOption(new Option('-a, --all', 'Import all applications from single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Import all applications from separate files (*.app.json) in the current directory. Ignored with -i or -a.')).addOption(new Option('--no-deps', 'Do not include any dependencies (scripts).')).addHelpText('after', `Important Note:\n`['brightYellow'] + ` The ${'frodo app'['brightCyan']} command to manage OAuth2 clients in v1.x has been renamed to ${'frodo oauth client'['brightCyan']} in v2.x\n` + ` The ${'frodo app'['brightCyan']} command in v2.x manages the new applications created using the new application templates in ForgeRock Identity Cloud. To manage oauth clients, use the ${'frodo oauth client'['brightCyan']} command.\n\n` + `Usage Examples:\n` + ` Import all applications from a single export file using a connection profile:\n` + ` $ frodo app import -a -f ./allAlphaApplications.application.json ${s.connId}\n`['brightCyan'] + ` Import the first application from a single export file:\n` + ` $ frodo app import -f ./allAlphaApplications.application.json ${s.connId}\n`['brightCyan'] + ` Import all applications from separate export files:\n` + ` $ frodo app import -A ${s.connId}\n`['brightCyan'] + ` Import all applications without dependencies from a single export file:\n` + ` $ frodo app import --no-deps -a -f ./allAlphaApplications.application.json ${s.connId}\n`['brightCyan'] + ` Import only the application 'myApp' from a file with an export file containing multiple applications:\n` + ` $ frodo app import -i myApp -f ./allAlphaApplications.application.json ${s.connId}\n`['brightCyan']).action(
8
12
  // implement command logic inside action handler
9
13
  async (host, realm, user, password, options, command) => {
10
14
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
11
15
  // import by id
12
- if (options.file && options.idpId && (await frodo.login.getTokens())) {
13
- verboseMessage(`Importing OAuth2 application "${options.appId}"...`);
14
- const status = await importOAuth2ClientFromFile(options.appId, options.file, {
16
+ if (options.file && options.appId && (await getTokens())) {
17
+ verboseMessage(`Importing application "${options.appId}"...`);
18
+ const status = await importApplicationFromFile(options.appId, options.file, {
15
19
  deps: options.deps
16
20
  });
17
21
  if (!status) process.exitCode = 1;
18
22
  }
19
23
  // --all -a
20
- else if (options.all && options.file && (await frodo.login.getTokens())) {
21
- verboseMessage(`Importing all OAuth2 applications from a single file (${options.file})...`);
22
- const status = await importOAuth2ClientsFromFile(options.file, {
24
+ else if (options.all && options.file && (await getTokens())) {
25
+ verboseMessage(`Importing all applications from a single file (${options.file})...`);
26
+ const status = await importApplicationsFromFile(options.file, {
23
27
  deps: options.deps
24
28
  });
25
29
  if (!status) process.exitCode = 1;
26
30
  }
27
31
  // --all-separate -A
28
- else if (options.allSeparate && !options.file && (await frodo.login.getTokens())) {
29
- verboseMessage('Importing all OAuth2 applications from separate files in current directory...');
30
- const status = await importOAuth2ClientsFromFiles({
32
+ else if (options.allSeparate && !options.file && (await getTokens())) {
33
+ verboseMessage('Importing all applications from separate files in current directory...');
34
+ const status = await importApplicationsFromFiles({
31
35
  deps: options.deps
32
36
  });
33
37
  if (!status) process.exitCode = 1;
34
38
  }
35
39
  // import first provider from file
36
- else if (options.file && (await frodo.login.getTokens())) {
37
- verboseMessage(`Importing first OAuth2 application from file "${options.file}"...`);
38
- const status = await importFirstOAuth2ClientFromFile(options.file, {
40
+ else if (options.file && (await getTokens())) {
41
+ verboseMessage(`Importing first application from file "${options.file}"...`);
42
+ const status = await importFirstApplicationFromFile(options.file, {
39
43
  deps: options.deps
40
44
  });
41
45
  if (!status) process.exitCode = 1;
@@ -51,4 +55,4 @@ async (host, realm, user, password, options, command) => {
51
55
  );
52
56
 
53
57
  program.parse();
54
- //# sourceMappingURL=app-import.js.map
58
+ //# sourceMappingURL=app-import.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-import.js","names":["FrodoCommand","Option","frodo","printMessage","verboseMessage","importFirstOAuth2ClientFromFile","importOAuth2ClientFromFile","importOAuth2ClientsFromFile","importOAuth2ClientsFromFiles","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","file","idpId","login","getTokens","appId","status","deps","process","exitCode","all","allSeparate","help","parse"],"sources":["cli/app/app-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n importFirstOAuth2ClientFromFile,\n importOAuth2ClientFromFile,\n importOAuth2ClientsFromFile,\n importOAuth2ClientsFromFiles,\n} from '../../ops/OAuth2ClientOps';\n\nconst program = new FrodoCommand('frodo app import');\n\nprogram\n .description('Import OAuth2 applications.')\n .addOption(\n new Option(\n '-i, --app-id <id>',\n 'Application id. If specified, only one application is imported and the options -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the file to import.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Import all applications from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all applications from separate files (*.app.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option('--no-deps', 'Do not include any dependencies (scripts).')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // import by id\n if (options.file && options.idpId && (await frodo.login.getTokens())) {\n verboseMessage(`Importing OAuth2 application \"${options.appId}\"...`);\n const status = await importOAuth2ClientFromFile(\n options.appId,\n options.file,\n {\n deps: options.deps,\n }\n );\n if (!status) process.exitCode = 1;\n }\n // --all -a\n else if (options.all && options.file && (await frodo.login.getTokens())) {\n verboseMessage(\n `Importing all OAuth2 applications from a single file (${options.file})...`\n );\n const status = await importOAuth2ClientsFromFile(options.file, {\n deps: options.deps,\n });\n if (!status) process.exitCode = 1;\n }\n // --all-separate -A\n else if (\n options.allSeparate &&\n !options.file &&\n (await frodo.login.getTokens())\n ) {\n verboseMessage(\n 'Importing all OAuth2 applications from separate files in current directory...'\n );\n const status = await importOAuth2ClientsFromFiles({\n deps: options.deps,\n });\n if (!status) process.exitCode = 1;\n }\n // import first provider from file\n else if (options.file && (await frodo.login.getTokens())) {\n verboseMessage(\n `Importing first OAuth2 application from file \"${options.file}\"...`\n );\n const status = await importFirstOAuth2ClientFromFile(options.file, {\n deps: options.deps,\n });\n if (!status) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n printMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"app-import.js","names":["frodo","Option","s","importApplicationFromFile","importApplicationsFromFile","importApplicationsFromFiles","importFirstApplicationFromFile","printMessage","verboseMessage","FrodoCommand","getTokens","login","program","description","addOption","addHelpText","connId","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","file","appId","status","deps","process","exitCode","all","allSeparate","help","parse"],"sources":["../../../src/cli/app/app-import.ts"],"sourcesContent":["import { frodo } from '@rockcarver/frodo-lib';\nimport { Option } from 'commander';\n\nimport * as s from '../../help/SampleData';\nimport {\n importApplicationFromFile,\n importApplicationsFromFile,\n importApplicationsFromFiles,\n importFirstApplicationFromFile,\n} from '../../ops/ApplicationOps';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst { getTokens } = frodo.login;\n\nconst program = new FrodoCommand('frodo app import');\n\nprogram\n .description('Import applications.')\n .addOption(\n new Option(\n '-i, --app-id <id>',\n 'Application name. If specified, only one application is imported and the options -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the file to import.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Import all applications from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all applications from separate files (*.app.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option('--no-deps', 'Do not include any dependencies (scripts).')\n )\n .addHelpText(\n 'after',\n `Important Note:\\n`['brightYellow'] +\n ` The ${\n 'frodo app'['brightCyan']\n } command to manage OAuth2 clients in v1.x has been renamed to ${\n 'frodo oauth client'['brightCyan']\n } in v2.x\\n` +\n ` The ${\n 'frodo app'['brightCyan']\n } command in v2.x manages the new applications created using the new application templates in ForgeRock Identity Cloud. To manage oauth clients, use the ${\n 'frodo oauth client'['brightCyan']\n } command.\\n\\n` +\n `Usage Examples:\\n` +\n ` Import all applications from a single export file using a connection profile:\\n` +\n ` $ frodo app import -a -f ./allAlphaApplications.application.json ${s.connId}\\n`[\n 'brightCyan'\n ] +\n ` Import the first application from a single export file:\\n` +\n ` $ frodo app import -f ./allAlphaApplications.application.json ${s.connId}\\n`[\n 'brightCyan'\n ] +\n ` Import all applications from separate export files:\\n` +\n ` $ frodo app import -A ${s.connId}\\n`['brightCyan'] +\n ` Import all applications without dependencies from a single export file:\\n` +\n ` $ frodo app import --no-deps -a -f ./allAlphaApplications.application.json ${s.connId}\\n`[\n 'brightCyan'\n ] +\n ` Import only the application 'myApp' from a file with an export file containing multiple applications:\\n` +\n ` $ frodo app import -i myApp -f ./allAlphaApplications.application.json ${s.connId}\\n`[\n 'brightCyan'\n ]\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // import by id\n if (options.file && options.appId && (await getTokens())) {\n verboseMessage(`Importing application \"${options.appId}\"...`);\n const status = await importApplicationFromFile(\n options.appId,\n options.file,\n {\n deps: options.deps,\n }\n );\n if (!status) process.exitCode = 1;\n }\n // --all -a\n else if (options.all && options.file && (await getTokens())) {\n verboseMessage(\n `Importing all applications from a single file (${options.file})...`\n );\n const status = await importApplicationsFromFile(options.file, {\n deps: options.deps,\n });\n if (!status) process.exitCode = 1;\n }\n // --all-separate -A\n else if (options.allSeparate && !options.file && (await getTokens())) {\n verboseMessage(\n 'Importing all applications from separate files in current directory...'\n );\n const status = await importApplicationsFromFiles({\n deps: options.deps,\n });\n if (!status) process.exitCode = 1;\n }\n // import first provider from file\n else if (options.file && (await getTokens())) {\n verboseMessage(\n `Importing first application from file \"${options.file}\"...`\n );\n const status = await importFirstApplicationFromFile(options.file, {\n deps: options.deps,\n });\n if (!status) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n printMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
@@ -1,16 +1,20 @@
1
- import { FrodoCommand } from '../FrodoCommand';
2
- import { Option } from 'commander';
3
1
  import { frodo } from '@rockcarver/frodo-lib';
2
+ import { Option } from 'commander';
3
+ import * as s from '../../help/SampleData';
4
+ import { listApplications } from '../../ops/ApplicationOps';
4
5
  import { verboseMessage } from '../../utils/Console.js';
5
- import { listOAuth2Clients } from '../../ops/OAuth2ClientOps';
6
+ import { FrodoCommand } from '../FrodoCommand';
7
+ const {
8
+ getTokens
9
+ } = frodo.login;
6
10
  const program = new FrodoCommand('frodo app list');
7
- program.description('List OAuth2 applications.').addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).action(
11
+ program.description('List applications.').addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).addHelpText('after', `Important Note:\n`['brightYellow'] + ` The ${'frodo app'['brightCyan']} command to manage OAuth2 clients in v1.x has been renamed to ${'frodo oauth client'['brightCyan']} in v2.x\n` + ` The ${'frodo app'['brightCyan']} command in v2.x manages the new applications created using the new application templates in ForgeRock Identity Cloud. To manage oauth clients, use the ${'frodo oauth client'['brightCyan']} command.\n\n` + `Usage Examples:\n` + ` List applications using AM base URL, username, and password (note the quotes around password to allow special characters):\n` + ` $ frodo app list ${s.amBaseUrl} ${s.username} '${s.password}'\n`['brightCyan'] + ` List applications using a connection profile (identified by the full AM base URL):\n` + ` $ frodo app list ${s.amBaseUrl}\n`['brightCyan'] + ` List applications using a connection profile (identified by a unique substring of the AM base URL):\n` + ` $ frodo app list ${s.connId}\n`['brightCyan']).action(
8
12
  // implement command logic inside action handler
9
13
  async (host, realm, user, password, options, command) => {
10
14
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
11
- if (await frodo.login.getTokens()) {
12
- verboseMessage(`Listing OAuth2 applications...`);
13
- await listOAuth2Clients(options.long);
15
+ if (await getTokens()) {
16
+ verboseMessage(`Listing applications...`);
17
+ await listApplications(options.long);
14
18
  } else {
15
19
  process.exitCode = 1;
16
20
  }
@@ -19,4 +23,4 @@ async (host, realm, user, password, options, command) => {
19
23
  );
20
24
 
21
25
  program.parse();
22
- //# sourceMappingURL=app-list.js.map
26
+ //# sourceMappingURL=app-list.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app-list.js","names":["FrodoCommand","Option","frodo","verboseMessage","listOAuth2Clients","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","long","process","exitCode","parse"],"sources":["cli/app/app-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { listOAuth2Clients } from '../../ops/OAuth2ClientOps';\n\nconst program = new FrodoCommand('frodo app list');\n\nprogram\n .description('List OAuth2 applications.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n verboseMessage(`Listing OAuth2 applications...`);\n await listOAuth2Clients(options.long);\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,iBAAiB,QAAQ,2BAA2B;AAE7D,MAAMC,OAAO,GAAG,IAAIL,YAAY,CAAC,gBAAgB,CAAC;AAElDK,OAAO,CACJC,WAAW,CAAC,2BAA2B,CAAC,CACxCC,SAAS,CACR,IAAIN,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACO,OAAO,CAAC,KAAK,EAAE,OAAO,CAC1E,CAAC,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMb,KAAK,CAACe,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjCf,cAAc,CAAE,gCAA+B,CAAC;IAChD,MAAMC,iBAAiB,CAACU,OAAO,CAACK,IAAI,CAAC;EACvC,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHhB,OAAO,CAACiB,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"app-list.js","names":["frodo","Option","s","listApplications","verboseMessage","FrodoCommand","getTokens","login","program","description","addOption","default","addHelpText","amBaseUrl","username","password","connId","action","host","realm","user","options","command","handleDefaultArgsAndOpts","long","process","exitCode","parse"],"sources":["../../../src/cli/app/app-list.ts"],"sourcesContent":["import { frodo } from '@rockcarver/frodo-lib';\nimport { Option } from 'commander';\n\nimport * as s from '../../help/SampleData';\nimport { listApplications } from '../../ops/ApplicationOps';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst { getTokens } = frodo.login;\n\nconst program = new FrodoCommand('frodo app list');\n\nprogram\n .description('List applications.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .addHelpText(\n 'after',\n `Important Note:\\n`['brightYellow'] +\n ` The ${\n 'frodo app'['brightCyan']\n } command to manage OAuth2 clients in v1.x has been renamed to ${\n 'frodo oauth client'['brightCyan']\n } in v2.x\\n` +\n ` The ${\n 'frodo app'['brightCyan']\n } command in v2.x manages the new applications created using the new application templates in ForgeRock Identity Cloud. To manage oauth clients, use the ${\n 'frodo oauth client'['brightCyan']\n } command.\\n\\n` +\n `Usage Examples:\\n` +\n ` List applications using AM base URL, username, and password (note the quotes around password to allow special characters):\\n` +\n ` $ frodo app list ${s.amBaseUrl} ${s.username} '${s.password}'\\n`[\n 'brightCyan'\n ] +\n ` List applications using a connection profile (identified by the full AM base URL):\\n` +\n ` $ frodo app list ${s.amBaseUrl}\\n`['brightCyan'] +\n ` List applications using a connection profile (identified by a unique substring of the AM base URL):\\n` +\n ` $ frodo app list ${s.connId}\\n`['brightCyan']\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage(`Listing applications...`);\n await listApplications(options.long);\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,MAAM,QAAQ,WAAW;AAElC,OAAO,KAAKC,CAAC,MAAM,uBAAuB;AAC1C,SAASC,gBAAgB,QAAQ,0BAA0B;AAC3D,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAM;EAAEC;AAAU,CAAC,GAAGN,KAAK,CAACO,KAAK;AAEjC,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,gBAAgB,CAAC;AAElDG,OAAO,CACJC,WAAW,CAAC,oBAAoB,CAAC,CACjCC,SAAS,CACR,IAAIT,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACU,OAAO,CAAC,KAAK,EAAE,OAAO,CAC1E,CAAC,CACAC,WAAW,CACV,OAAO,EACN,mBAAkB,CAAC,cAAc,CAAC,GAChC,SACC,WAAW,CAAC,YAAY,CACzB,iEACC,oBAAoB,CAAC,YAAY,CAClC,YAAW,GACX,SACC,WAAW,CAAC,YAAY,CACzB,2JACC,oBAAoB,CAAC,YAAY,CAClC,eAAc,GACd,mBAAkB,GAClB,gIAA+H,GAC/H,sBAAqBV,CAAC,CAACW,SAAU,IAAGX,CAAC,CAACY,QAAS,KAAIZ,CAAC,CAACa,QAAS,KAAI,CACjE,YAAY,CACb,GACA,wFAAuF,GACvF,sBAAqBb,CAAC,CAACW,SAAU,IAAG,CAAC,YAAY,CAAC,GAClD,yGAAwG,GACxG,sBAAqBX,CAAC,CAACc,MAAO,IAAG,CAAC,YAAY,CACnD,CAAC,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEL,QAAQ,EAAEM,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BL,IAAI,EACJC,KAAK,EACLC,IAAI,EACJL,QAAQ,EACRM,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMhB,SAAS,CAAC,CAAC,EAAE;IACrBF,cAAc,CAAE,yBAAwB,CAAC;IACzC,MAAMD,gBAAgB,CAACkB,OAAO,CAACG,IAAI,CAAC;EACtC,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHlB,OAAO,CAACmB,KAAK,CAAC,CAAC"}
@@ -1,21 +1,17 @@
1
- import { FrodoStubCommand } from '../FrodoCommand';
2
1
  import path from 'path';
3
2
  import { fileURLToPath } from 'url';
3
+ import { FrodoStubCommand } from '../FrodoCommand';
4
4
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
5
5
  export default function setup() {
6
- const program = new FrodoStubCommand('app')
7
- // for backwards compatibility
8
- .alias('application').description('Manage OAuth2 applications.').executableDir(__dirname);
9
- program.command('list', 'List OAuth2 applications.');
6
+ const program = new FrodoStubCommand('app').description('Manage applications.').executableDir(__dirname).addHelpText('after', `\nImportant Note:\n`['brightYellow'] + ` The ${'frodo app'['brightCyan']} command to manage OAuth2 clients in v1.x has been renamed to ${'frodo oauth client'['brightCyan']} in v2.x\n` + ` The ${'frodo app'['brightCyan']} command in v2.x manages the new applications created using the new application templates in ForgeRock Identity Cloud. To manage oauth clients, use the ${'frodo oauth client'['brightCyan']} command.\n\n`);
7
+ program.command('list', 'List applications.');
10
8
 
11
9
  // program
12
- // .command('describe', 'Describe OAuth2 applications.');
13
-
14
- program.command('export', 'Export OAuth2 applications.');
15
- program.command('import', 'Import OAuth2 applications.');
16
-
17
- // program.command('delete', 'Delete OAuth2 applications.');
10
+ // .command('describe', 'Describe applications.');
18
11
 
12
+ program.command('export', 'Export applications.');
13
+ program.command('import', 'Import applications.');
14
+ program.command('delete', 'Delete applications.');
19
15
  return program;
20
16
  }
21
- //# sourceMappingURL=app.js.map
17
+ //# sourceMappingURL=app.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","names":["FrodoStubCommand","path","fileURLToPath","__dirname","dirname","import","meta","url","setup","program","alias","description","executableDir","command"],"sources":["cli/app/app.ts"],"sourcesContent":["import { FrodoStubCommand } from '../FrodoCommand';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nexport default function setup() {\n const program = new FrodoStubCommand('app')\n // for backwards compatibility\n .alias('application')\n .description('Manage OAuth2 applications.')\n .executableDir(__dirname);\n\n program.command('list', 'List OAuth2 applications.');\n\n // program\n // .command('describe', 'Describe OAuth2 applications.');\n\n program.command('export', 'Export OAuth2 applications.');\n\n program.command('import', 'Import OAuth2 applications.');\n\n // program.command('delete', 'Delete OAuth2 applications.');\n\n return program;\n}\n"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,iBAAiB;AAClD,OAAOC,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AAEnC,MAAMC,SAAS,GAAGF,IAAI,CAACG,OAAO,CAACF,aAAa,CAACG,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;AAE9D,eAAe,SAASC,KAAKA,CAAA,EAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIT,gBAAgB,CAAC,KAAK;EACxC;EAAA,CACCU,KAAK,CAAC,aAAa,CAAC,CACpBC,WAAW,CAAC,6BAA6B,CAAC,CAC1CC,aAAa,CAACT,SAAS,CAAC;EAE3BM,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,2BAA2B,CAAC;;EAEpD;EACA;;EAEAJ,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC;EAExDJ,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC;;EAExD;;EAEA,OAAOJ,OAAO;AAChB"}
1
+ {"version":3,"file":"app.js","names":["path","fileURLToPath","FrodoStubCommand","__dirname","dirname","import","meta","url","setup","program","description","executableDir","addHelpText","command"],"sources":["../../../src/cli/app/app.ts"],"sourcesContent":["import path from 'path';\nimport { fileURLToPath } from 'url';\n\nimport { FrodoStubCommand } from '../FrodoCommand';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nexport default function setup() {\n const program = new FrodoStubCommand('app')\n .description('Manage applications.')\n .executableDir(__dirname)\n .addHelpText(\n 'after',\n `\\nImportant Note:\\n`['brightYellow'] +\n ` The ${\n 'frodo app'['brightCyan']\n } command to manage OAuth2 clients in v1.x has been renamed to ${\n 'frodo oauth client'['brightCyan']\n } in v2.x\\n` +\n ` The ${\n 'frodo app'['brightCyan']\n } command in v2.x manages the new applications created using the new application templates in ForgeRock Identity Cloud. To manage oauth clients, use the ${\n 'frodo oauth client'['brightCyan']\n } command.\\n\\n`\n );\n\n program.command('list', 'List applications.');\n\n // program\n // .command('describe', 'Describe applications.');\n\n program.command('export', 'Export applications.');\n\n program.command('import', 'Import applications.');\n\n program.command('delete', 'Delete applications.');\n\n return program;\n}\n"],"mappings":"AAAA,OAAOA,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AAEnC,SAASC,gBAAgB,QAAQ,iBAAiB;AAElD,MAAMC,SAAS,GAAGH,IAAI,CAACI,OAAO,CAACH,aAAa,CAACI,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;AAE9D,eAAe,SAASC,KAAKA,CAAA,EAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIP,gBAAgB,CAAC,KAAK,CAAC,CACxCQ,WAAW,CAAC,sBAAsB,CAAC,CACnCC,aAAa,CAACR,SAAS,CAAC,CACxBS,WAAW,CACV,OAAO,EACN,qBAAoB,CAAC,cAAc,CAAC,GAClC,SACC,WAAW,CAAC,YAAY,CACzB,iEACC,oBAAoB,CAAC,YAAY,CAClC,YAAW,GACX,SACC,WAAW,CAAC,YAAY,CACzB,2JACC,oBAAoB,CAAC,YAAY,CAClC,eACL,CAAC;EAEHH,OAAO,CAACI,OAAO,CAAC,MAAM,EAAE,oBAAoB,CAAC;;EAE7C;EACA;;EAEAJ,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC;EAEjDJ,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC;EAEjDJ,OAAO,CAACI,OAAO,CAAC,QAAQ,EAAE,sBAAsB,CAAC;EAEjD,OAAOJ,OAAO;AAChB"}
@@ -0,0 +1,30 @@
1
+ import { frodo } from '@rockcarver/frodo-lib';
2
+ import { Option } from 'commander';
3
+ import { describeAuthenticationSettings } from '../../ops/AuthenticationSettingsOps';
4
+ import { verboseMessage } from '../../utils/Console';
5
+ import { FrodoCommand } from '../FrodoCommand';
6
+ const {
7
+ getTokens
8
+ } = frodo.login;
9
+ const program = new FrodoCommand('frodo authn describe');
10
+ program.description('Describe authentication settings.').addOption(new Option('--json', 'Output in JSON format.')).action(
11
+ // implement command logic inside action handler
12
+ async (host, realm, user, password, options, command) => {
13
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
14
+ if (await getTokens()) {
15
+ verboseMessage(`Describing authentication settings...`);
16
+ const outcome = await describeAuthenticationSettings(options.json);
17
+ if (!outcome) process.exitCode = 1;
18
+ }
19
+ // unrecognized combination of options or no options
20
+ else {
21
+ verboseMessage('Unrecognized combination of options or no options...');
22
+ program.help();
23
+ process.exitCode = 1;
24
+ }
25
+ }
26
+ // end command logic inside action handler
27
+ );
28
+
29
+ program.parse();
30
+ //# sourceMappingURL=authn-describe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authn-describe.js","names":["frodo","Option","describeAuthenticationSettings","verboseMessage","FrodoCommand","getTokens","login","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","outcome","json","process","exitCode","help","parse"],"sources":["../../../src/cli/authn/authn-describe.ts"],"sourcesContent":["import { frodo } from '@rockcarver/frodo-lib';\nimport { Option } from 'commander';\n\nimport { describeAuthenticationSettings } from '../../ops/AuthenticationSettingsOps';\nimport { verboseMessage } from '../../utils/Console';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst { getTokens } = frodo.login;\n\nconst program = new FrodoCommand('frodo authn describe');\n\nprogram\n .description('Describe authentication settings.')\n .addOption(new Option('--json', 'Output in JSON format.'))\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage(`Describing authentication settings...`);\n const outcome = await describeAuthenticationSettings(options.json);\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,MAAM,QAAQ,WAAW;AAElC,SAASC,8BAA8B,QAAQ,qCAAqC;AACpF,SAASC,cAAc,QAAQ,qBAAqB;AACpD,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAM;EAAEC;AAAU,CAAC,GAAGL,KAAK,CAACM,KAAK;AAEjC,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,sBAAsB,CAAC;AAExDG,OAAO,CACJC,WAAW,CAAC,mCAAmC,CAAC,CAChDC,SAAS,CAAC,IAAIR,MAAM,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC,CACzDS,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMX,SAAS,CAAC,CAAC,EAAE;IACrBF,cAAc,CAAE,uCAAsC,CAAC;IACvD,MAAMe,OAAO,GAAG,MAAMhB,8BAA8B,CAACa,OAAO,CAACI,IAAI,CAAC;IAClE,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHlB,cAAc,CAAC,sDAAsD,CAAC;IACtEI,OAAO,CAACe,IAAI,CAAC,CAAC;IACdF,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHd,OAAO,CAACgB,KAAK,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { frodo } from '@rockcarver/frodo-lib';
2
+ import { Option } from 'commander';
3
+ import { exportAuthenticationSettingsToFile } from '../../ops/AuthenticationSettingsOps';
4
+ import { verboseMessage } from '../../utils/Console';
5
+ import { FrodoCommand } from '../FrodoCommand';
6
+ const {
7
+ getTokens
8
+ } = frodo.login;
9
+ const program = new FrodoCommand('frodo authn export');
10
+ program.description('Export authentication settings.').addOption(new Option('-f, --file <file>', 'Name of the export file.')).action(
11
+ // implement command logic inside action handler
12
+ async (host, realm, user, password, options, command) => {
13
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
14
+ if (await getTokens()) {
15
+ verboseMessage('Exporting authentication settings to file...');
16
+ const outcome = exportAuthenticationSettingsToFile(options.file);
17
+ if (!outcome) process.exitCode = 1;
18
+ } else {
19
+ process.exitCode = 1;
20
+ }
21
+ }
22
+ // end command logic inside action handler
23
+ );
24
+
25
+ program.parse();
26
+ //# sourceMappingURL=authn-export.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authn-export.js","names":["frodo","Option","exportAuthenticationSettingsToFile","verboseMessage","FrodoCommand","getTokens","login","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","outcome","file","process","exitCode","parse"],"sources":["../../../src/cli/authn/authn-export.ts"],"sourcesContent":["import { frodo } from '@rockcarver/frodo-lib';\nimport { Option } from 'commander';\n\nimport { exportAuthenticationSettingsToFile } from '../../ops/AuthenticationSettingsOps';\nimport { verboseMessage } from '../../utils/Console';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst { getTokens } = frodo.login;\n\nconst program = new FrodoCommand('frodo authn export');\n\nprogram\n .description('Export authentication settings.')\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage('Exporting authentication settings to file...');\n const outcome = exportAuthenticationSettingsToFile(options.file);\n if (!outcome) process.exitCode = 1;\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,MAAM,QAAQ,WAAW;AAElC,SAASC,kCAAkC,QAAQ,qCAAqC;AACxF,SAASC,cAAc,QAAQ,qBAAqB;AACpD,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAM;EAAEC;AAAU,CAAC,GAAGL,KAAK,CAACM,KAAK;AAEjC,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,oBAAoB,CAAC;AAEtDG,OAAO,CACJC,WAAW,CAAC,iCAAiC,CAAC,CAC9CC,SAAS,CAAC,IAAIR,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtES,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMX,SAAS,CAAC,CAAC,EAAE;IACrBF,cAAc,CAAC,8CAA8C,CAAC;IAC9D,MAAMe,OAAO,GAAGhB,kCAAkC,CAACa,OAAO,CAACI,IAAI,CAAC;IAChE,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHd,OAAO,CAACe,KAAK,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { frodo } from '@rockcarver/frodo-lib';
2
+ import { Option } from 'commander';
3
+ import { importAuthenticationSettingsFromFile } from '../../ops/AuthenticationSettingsOps';
4
+ import { verboseMessage } from '../../utils/Console';
5
+ import { FrodoCommand } from '../FrodoCommand';
6
+ const {
7
+ getTokens
8
+ } = frodo.login;
9
+ const program = new FrodoCommand('frodo authn import');
10
+ program.description('Import authentication settings.').addOption(new Option('-f, --file <file>', 'Name of the file to import.')).action(
11
+ // implement command logic inside action handler
12
+ async (host, realm, user, password, options, command) => {
13
+ command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
14
+ if (await getTokens()) {
15
+ verboseMessage('Importing authentication settings from file...');
16
+ const outcome = importAuthenticationSettingsFromFile(options.file);
17
+ if (!outcome) process.exitCode = 1;
18
+ } else {
19
+ process.exitCode = 1;
20
+ }
21
+ }
22
+ // end command logic inside action handler
23
+ );
24
+
25
+ program.parse();
26
+ //# sourceMappingURL=authn-import.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authn-import.js","names":["frodo","Option","importAuthenticationSettingsFromFile","verboseMessage","FrodoCommand","getTokens","login","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","outcome","file","process","exitCode","parse"],"sources":["../../../src/cli/authn/authn-import.ts"],"sourcesContent":["import { frodo } from '@rockcarver/frodo-lib';\nimport { Option } from 'commander';\n\nimport { importAuthenticationSettingsFromFile } from '../../ops/AuthenticationSettingsOps';\nimport { verboseMessage } from '../../utils/Console';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst { getTokens } = frodo.login;\n\nconst program = new FrodoCommand('frodo authn import');\n\nprogram\n .description('Import authentication settings.')\n .addOption(new Option('-f, --file <file>', 'Name of the file to import.'))\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await getTokens()) {\n verboseMessage('Importing authentication settings from file...');\n const outcome = importAuthenticationSettingsFromFile(options.file);\n if (!outcome) process.exitCode = 1;\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,MAAM,QAAQ,WAAW;AAElC,SAASC,oCAAoC,QAAQ,qCAAqC;AAC1F,SAASC,cAAc,QAAQ,qBAAqB;AACpD,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAM;EAAEC;AAAU,CAAC,GAAGL,KAAK,CAACM,KAAK;AAEjC,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,oBAAoB,CAAC;AAEtDG,OAAO,CACJC,WAAW,CAAC,iCAAiC,CAAC,CAC9CC,SAAS,CAAC,IAAIR,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,CAAC,CAAC,CACzES,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMX,SAAS,CAAC,CAAC,EAAE;IACrBF,cAAc,CAAC,gDAAgD,CAAC;IAChE,MAAMe,OAAO,GAAGhB,oCAAoC,CAACa,OAAO,CAACI,IAAI,CAAC;IAClE,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC,CAAC,MAAM;IACLD,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHd,OAAO,CAACe,KAAK,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import path from 'path';
2
+ import { fileURLToPath } from 'url';
3
+ import { FrodoStubCommand } from '../FrodoCommand';
4
+ const __dirname = path.dirname(fileURLToPath(import.meta.url));
5
+ export default function setup() {
6
+ const program = new FrodoStubCommand('authn').description('Manage authentication settings.').executableDir(__dirname);
7
+ program.command('describe', 'Describe authentication settings.');
8
+ program.command('export', 'Export authentication settings.');
9
+ program.command('import', 'Import authentication settings.');
10
+ return program;
11
+ }
12
+ //# sourceMappingURL=authn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authn.js","names":["path","fileURLToPath","FrodoStubCommand","__dirname","dirname","import","meta","url","setup","program","description","executableDir","command"],"sources":["../../../src/cli/authn/authn.ts"],"sourcesContent":["import path from 'path';\nimport { fileURLToPath } from 'url';\n\nimport { FrodoStubCommand } from '../FrodoCommand';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nexport default function setup() {\n const program = new FrodoStubCommand('authn')\n .description('Manage authentication settings.')\n .executableDir(__dirname);\n\n program.command('describe', 'Describe authentication settings.');\n\n program.command('export', 'Export authentication settings.');\n\n program.command('import', 'Import authentication settings.');\n\n return program;\n}\n"],"mappings":"AAAA,OAAOA,IAAI,MAAM,MAAM;AACvB,SAASC,aAAa,QAAQ,KAAK;AAEnC,SAASC,gBAAgB,QAAQ,iBAAiB;AAElD,MAAMC,SAAS,GAAGH,IAAI,CAACI,OAAO,CAACH,aAAa,CAACI,MAAM,CAACC,IAAI,CAACC,GAAG,CAAC,CAAC;AAE9D,eAAe,SAASC,KAAKA,CAAA,EAAG;EAC9B,MAAMC,OAAO,GAAG,IAAIP,gBAAgB,CAAC,OAAO,CAAC,CAC1CQ,WAAW,CAAC,iCAAiC,CAAC,CAC9CC,aAAa,CAACR,SAAS,CAAC;EAE3BM,OAAO,CAACG,OAAO,CAAC,UAAU,EAAE,mCAAmC,CAAC;EAEhEH,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,iCAAiC,CAAC;EAE5DH,OAAO,CAACG,OAAO,CAAC,QAAQ,EAAE,iCAAiC,CAAC;EAE5D,OAAOH,OAAO;AAChB"}
@@ -1,27 +1,30 @@
1
- import { FrodoCommand } from '../FrodoCommand';
2
- import { Option } from 'commander';
3
1
  import { frodo } from '@rockcarver/frodo-lib';
2
+ import { Option } from 'commander';
3
+ import { deletePolicies, deletePoliciesByPolicySet, deletePolicyById } from '../../ops/PolicyOps';
4
4
  import { printMessage, verboseMessage } from '../../utils/Console.js';
5
- import { deletePolicy, deletePolicies, deletePoliciesByPolicySet } from '../../ops/PolicyOps';
5
+ import { FrodoCommand } from '../FrodoCommand';
6
+ const {
7
+ getTokens
8
+ } = frodo.login;
6
9
  const program = new FrodoCommand('frodo authz policy delete');
7
10
  program.description('Delete authorization policies.').addOption(new Option('-i, --policy-id <policy-id>', 'Policy id/name. If specified, -a is ignored.')).addOption(new Option('-a, --all', 'Delete all policies in a realm. Ignored with -i.')).addOption(new Option('--set-id <set-id>', 'Policy set id/name. Ignored with -i.')).action(
8
11
  // implement command logic inside action handler
9
12
  async (host, realm, user, password, options, command) => {
10
13
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
11
14
  // delete by id
12
- if (options.policyId && (await frodo.login.getTokens())) {
15
+ if (options.policyId && (await getTokens())) {
13
16
  verboseMessage('Deleting authorization policy...');
14
- const outcome = await deletePolicy(options.policyId);
17
+ const outcome = await deletePolicyById(options.policyId);
15
18
  if (!outcome) process.exitCode = 1;
16
19
  }
17
20
  // --all -a by policy set
18
- else if (options.setId && options.all && (await frodo.login.getTokens())) {
21
+ else if (options.setId && options.all && (await getTokens())) {
19
22
  verboseMessage(`Deleting all authorization policies in policy set ${options.setId}...`);
20
23
  const outcome = await deletePoliciesByPolicySet(options.setId);
21
24
  if (!outcome) process.exitCode = 1;
22
25
  }
23
26
  // --all -a
24
- else if (options.all && (await frodo.login.getTokens())) {
27
+ else if (options.all && (await getTokens())) {
25
28
  verboseMessage('Deleting all authorization policies...');
26
29
  const outcome = await deletePolicies();
27
30
  if (!outcome) process.exitCode = 1;
@@ -37,4 +40,4 @@ async (host, realm, user, password, options, command) => {
37
40
  );
38
41
 
39
42
  program.parse();
40
- //# sourceMappingURL=authz-policy-delete.js.map
43
+ //# sourceMappingURL=authz-policy-delete.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"authz-policy-delete.js","names":["FrodoCommand","Option","frodo","printMessage","verboseMessage","deletePolicy","deletePolicies","deletePoliciesByPolicySet","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","policyId","login","getTokens","outcome","process","exitCode","setId","all","help","parse"],"sources":["cli/authz/authz-policy-delete.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport {\n deletePolicy,\n deletePolicies,\n deletePoliciesByPolicySet,\n} from '../../ops/PolicyOps';\n\nconst program = new FrodoCommand('frodo authz policy delete');\n\nprogram\n .description('Delete authorization policies.')\n .addOption(\n new Option(\n '-i, --policy-id <policy-id>',\n 'Policy id/name. If specified, -a is ignored.'\n )\n )\n .addOption(\n new Option('-a, --all', 'Delete all policies in a realm. Ignored with -i.')\n )\n .addOption(\n new Option('--set-id <set-id>', 'Policy set id/name. Ignored with -i.')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // delete by id\n if (options.policyId && (await frodo.login.getTokens())) {\n verboseMessage('Deleting authorization policy...');\n const outcome = await deletePolicy(options.policyId);\n if (!outcome) process.exitCode = 1;\n }\n // --all -a by policy set\n else if (\n options.setId &&\n options.all &&\n (await frodo.login.getTokens())\n ) {\n verboseMessage(\n `Deleting all authorization policies in policy set ${options.setId}...`\n );\n const outcome = await deletePoliciesByPolicySet(options.setId);\n if (!outcome) process.exitCode = 1;\n }\n // --all -a\n else if (options.all && (await frodo.login.getTokens())) {\n verboseMessage('Deleting all authorization policies...');\n const outcome = await deletePolicies();\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n printMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,YAAY,EAAEC,cAAc,QAAQ,wBAAwB;AACrE,SACEC,YAAY,EACZC,cAAc,EACdC,yBAAyB,QACpB,qBAAqB;AAE5B,MAAMC,OAAO,GAAG,IAAIR,YAAY,CAAC,2BAA2B,CAAC;AAE7DQ,OAAO,CACJC,WAAW,CAAC,gCAAgC,CAAC,CAC7CC,SAAS,CACR,IAAIT,MAAM,CACR,6BAA6B,EAC7B,8CACF,CACF,CAAC,CACAS,SAAS,CACR,IAAIT,MAAM,CAAC,WAAW,EAAE,kDAAkD,CAC5E,CAAC,CACAS,SAAS,CACR,IAAIT,MAAM,CAAC,mBAAmB,EAAE,sCAAsC,CACxE,CAAC,CACAU,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD;EACA,IAAID,OAAO,CAACG,QAAQ,KAAK,MAAMjB,KAAK,CAACkB,KAAK,CAACC,SAAS,CAAC,CAAC,CAAC,EAAE;IACvDjB,cAAc,CAAC,kCAAkC,CAAC;IAClD,MAAMkB,OAAO,GAAG,MAAMjB,YAAY,CAACW,OAAO,CAACG,QAAQ,CAAC;IACpD,IAAI,CAACG,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IACHR,OAAO,CAACS,KAAK,IACbT,OAAO,CAACU,GAAG,KACV,MAAMxB,KAAK,CAACkB,KAAK,CAACC,SAAS,CAAC,CAAC,CAAC,EAC/B;IACAjB,cAAc,CACX,qDAAoDY,OAAO,CAACS,KAAM,KACrE,CAAC;IACD,MAAMH,OAAO,GAAG,MAAMf,yBAAyB,CAACS,OAAO,CAACS,KAAK,CAAC;IAC9D,IAAI,CAACH,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIR,OAAO,CAACU,GAAG,KAAK,MAAMxB,KAAK,CAACkB,KAAK,CAACC,SAAS,CAAC,CAAC,CAAC,EAAE;IACvDjB,cAAc,CAAC,wCAAwC,CAAC;IACxD,MAAMkB,OAAO,GAAG,MAAMhB,cAAc,CAAC,CAAC;IACtC,IAAI,CAACgB,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHrB,YAAY,CAAC,sDAAsD,CAAC;IACpEK,OAAO,CAACmB,IAAI,CAAC,CAAC;IACdJ,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHhB,OAAO,CAACoB,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"authz-policy-delete.js","names":["frodo","Option","deletePolicies","deletePoliciesByPolicySet","deletePolicyById","printMessage","verboseMessage","FrodoCommand","getTokens","login","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","policyId","outcome","process","exitCode","setId","all","help","parse"],"sources":["../../../src/cli/authz/authz-policy-delete.ts"],"sourcesContent":["import { frodo } from '@rockcarver/frodo-lib';\nimport { Option } from 'commander';\n\nimport {\n deletePolicies,\n deletePoliciesByPolicySet,\n deletePolicyById,\n} from '../../ops/PolicyOps';\nimport { printMessage, verboseMessage } from '../../utils/Console.js';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst { getTokens } = frodo.login;\n\nconst program = new FrodoCommand('frodo authz policy delete');\n\nprogram\n .description('Delete authorization policies.')\n .addOption(\n new Option(\n '-i, --policy-id <policy-id>',\n 'Policy id/name. If specified, -a is ignored.'\n )\n )\n .addOption(\n new Option('-a, --all', 'Delete all policies in a realm. Ignored with -i.')\n )\n .addOption(\n new Option('--set-id <set-id>', 'Policy set id/name. Ignored with -i.')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n // delete by id\n if (options.policyId && (await getTokens())) {\n verboseMessage('Deleting authorization policy...');\n const outcome = await deletePolicyById(options.policyId);\n if (!outcome) process.exitCode = 1;\n }\n // --all -a by policy set\n else if (options.setId && options.all && (await getTokens())) {\n verboseMessage(\n `Deleting all authorization policies in policy set ${options.setId}...`\n );\n const outcome = await deletePoliciesByPolicySet(options.setId);\n if (!outcome) process.exitCode = 1;\n }\n // --all -a\n else if (options.all && (await getTokens())) {\n verboseMessage('Deleting all authorization policies...');\n const outcome = await deletePolicies();\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n printMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,MAAM,QAAQ,WAAW;AAElC,SACEC,cAAc,EACdC,yBAAyB,EACzBC,gBAAgB,QACX,qBAAqB;AAC5B,SAASC,YAAY,EAAEC,cAAc,QAAQ,wBAAwB;AACrE,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAM;EAAEC;AAAU,CAAC,GAAGR,KAAK,CAACS,KAAK;AAEjC,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,2BAA2B,CAAC;AAE7DG,OAAO,CACJC,WAAW,CAAC,gCAAgC,CAAC,CAC7CC,SAAS,CACR,IAAIX,MAAM,CACR,6BAA6B,EAC7B,8CACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CAAC,WAAW,EAAE,kDAAkD,CAC5E,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CAAC,mBAAmB,EAAE,sCAAsC,CACxE,CAAC,CACAY,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD;EACA,IAAID,OAAO,CAACG,QAAQ,KAAK,MAAMb,SAAS,CAAC,CAAC,CAAC,EAAE;IAC3CF,cAAc,CAAC,kCAAkC,CAAC;IAClD,MAAMgB,OAAO,GAAG,MAAMlB,gBAAgB,CAACc,OAAO,CAACG,QAAQ,CAAC;IACxD,IAAI,CAACC,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIN,OAAO,CAACO,KAAK,IAAIP,OAAO,CAACQ,GAAG,KAAK,MAAMlB,SAAS,CAAC,CAAC,CAAC,EAAE;IAC5DF,cAAc,CACX,qDAAoDY,OAAO,CAACO,KAAM,KACrE,CAAC;IACD,MAAMH,OAAO,GAAG,MAAMnB,yBAAyB,CAACe,OAAO,CAACO,KAAK,CAAC;IAC9D,IAAI,CAACH,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK,IAAIN,OAAO,CAACQ,GAAG,KAAK,MAAMlB,SAAS,CAAC,CAAC,CAAC,EAAE;IAC3CF,cAAc,CAAC,wCAAwC,CAAC;IACxD,MAAMgB,OAAO,GAAG,MAAMpB,cAAc,CAAC,CAAC;IACtC,IAAI,CAACoB,OAAO,EAAEC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHnB,YAAY,CAAC,sDAAsD,CAAC;IACpEK,OAAO,CAACiB,IAAI,CAAC,CAAC;IACdJ,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHd,OAAO,CAACkB,KAAK,CAAC,CAAC"}
@@ -1,14 +1,17 @@
1
- import { FrodoCommand } from '../FrodoCommand';
2
- import { Option } from 'commander';
3
1
  import { frodo } from '@rockcarver/frodo-lib';
4
- import { verboseMessage } from '../../utils/Console.js';
2
+ import { Option } from 'commander';
5
3
  import { describePolicy } from '../../ops/PolicyOps';
4
+ import { verboseMessage } from '../../utils/Console.js';
5
+ import { FrodoCommand } from '../FrodoCommand';
6
+ const {
7
+ getTokens
8
+ } = frodo.login;
6
9
  const program = new FrodoCommand('frodo authz policy describe');
7
10
  program.description('Describe authorization policies.').addOption(new Option('-i, --policy-id <policy-id>', 'Policy id/name.').makeOptionMandatory()).addOption(new Option('--json', 'Output in JSON format.')).action(
8
11
  // implement command logic inside action handler
9
12
  async (host, realm, user, password, options, command) => {
10
13
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
11
- if (options.policyId && (await frodo.login.getTokens())) {
14
+ if (options.policyId && (await getTokens())) {
12
15
  verboseMessage(`Describing authorization policy ${options.policyId}...`);
13
16
  const outcome = await describePolicy(options.policyId, options.json);
14
17
  if (!outcome) process.exitCode = 1;
@@ -24,4 +27,4 @@ async (host, realm, user, password, options, command) => {
24
27
  );
25
28
 
26
29
  program.parse();
27
- //# sourceMappingURL=authz-policy-describe.js.map
30
+ //# sourceMappingURL=authz-policy-describe.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"authz-policy-describe.js","names":["FrodoCommand","Option","frodo","verboseMessage","describePolicy","program","description","addOption","makeOptionMandatory","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","policyId","login","getTokens","outcome","json","process","exitCode","help","parse"],"sources":["cli/authz/authz-policy-describe.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { describePolicy } from '../../ops/PolicyOps';\n\nconst program = new FrodoCommand('frodo authz policy describe');\n\nprogram\n .description('Describe authorization policies.')\n .addOption(\n new Option(\n '-i, --policy-id <policy-id>',\n 'Policy id/name.'\n ).makeOptionMandatory()\n )\n .addOption(new Option('--json', 'Output in JSON format.'))\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (options.policyId && (await frodo.login.getTokens())) {\n verboseMessage(\n `Describing authorization policy ${options.policyId}...`\n );\n const outcome = await describePolicy(options.policyId, options.json);\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,cAAc,QAAQ,qBAAqB;AAEpD,MAAMC,OAAO,GAAG,IAAIL,YAAY,CAAC,6BAA6B,CAAC;AAE/DK,OAAO,CACJC,WAAW,CAAC,kCAAkC,CAAC,CAC/CC,SAAS,CACR,IAAIN,MAAM,CACR,6BAA6B,EAC7B,iBACF,CAAC,CAACO,mBAAmB,CAAC,CACxB,CAAC,CACAD,SAAS,CAAC,IAAIN,MAAM,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC,CACzDQ,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAID,OAAO,CAACG,QAAQ,KAAK,MAAMf,KAAK,CAACgB,KAAK,CAACC,SAAS,CAAC,CAAC,CAAC,EAAE;IACvDhB,cAAc,CACX,mCAAkCW,OAAO,CAACG,QAAS,KACtD,CAAC;IACD,MAAMG,OAAO,GAAG,MAAMhB,cAAc,CAACU,OAAO,CAACG,QAAQ,EAAEH,OAAO,CAACO,IAAI,CAAC;IACpE,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHpB,cAAc,CAAC,sDAAsD,CAAC;IACtEE,OAAO,CAACmB,IAAI,CAAC,CAAC;IACdF,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHlB,OAAO,CAACoB,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"authz-policy-describe.js","names":["frodo","Option","describePolicy","verboseMessage","FrodoCommand","getTokens","login","program","description","addOption","makeOptionMandatory","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","policyId","outcome","json","process","exitCode","help","parse"],"sources":["../../../src/cli/authz/authz-policy-describe.ts"],"sourcesContent":["import { frodo } from '@rockcarver/frodo-lib';\nimport { Option } from 'commander';\n\nimport { describePolicy } from '../../ops/PolicyOps';\nimport { verboseMessage } from '../../utils/Console.js';\nimport { FrodoCommand } from '../FrodoCommand';\n\nconst { getTokens } = frodo.login;\n\nconst program = new FrodoCommand('frodo authz policy describe');\n\nprogram\n .description('Describe authorization policies.')\n .addOption(\n new Option(\n '-i, --policy-id <policy-id>',\n 'Policy id/name.'\n ).makeOptionMandatory()\n )\n .addOption(new Option('--json', 'Output in JSON format.'))\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (options.policyId && (await getTokens())) {\n verboseMessage(\n `Describing authorization policy ${options.policyId}...`\n );\n const outcome = await describePolicy(options.policyId, options.json);\n if (!outcome) process.exitCode = 1;\n }\n // unrecognized combination of options or no options\n else {\n verboseMessage('Unrecognized combination of options or no options...');\n program.help();\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,MAAM,QAAQ,WAAW;AAElC,SAASC,cAAc,QAAQ,qBAAqB;AACpD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,MAAM;EAAEC;AAAU,CAAC,GAAGL,KAAK,CAACM,KAAK;AAEjC,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,6BAA6B,CAAC;AAE/DG,OAAO,CACJC,WAAW,CAAC,kCAAkC,CAAC,CAC/CC,SAAS,CACR,IAAIR,MAAM,CACR,6BAA6B,EAC7B,iBACF,CAAC,CAACS,mBAAmB,CAAC,CACxB,CAAC,CACAD,SAAS,CAAC,IAAIR,MAAM,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC,CACzDU,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAID,OAAO,CAACG,QAAQ,KAAK,MAAMd,SAAS,CAAC,CAAC,CAAC,EAAE;IAC3CF,cAAc,CACX,mCAAkCa,OAAO,CAACG,QAAS,KACtD,CAAC;IACD,MAAMC,OAAO,GAAG,MAAMlB,cAAc,CAACc,OAAO,CAACG,QAAQ,EAAEH,OAAO,CAACK,IAAI,CAAC;IACpE,IAAI,CAACD,OAAO,EAAEE,OAAO,CAACC,QAAQ,GAAG,CAAC;EACpC;EACA;EAAA,KACK;IACHpB,cAAc,CAAC,sDAAsD,CAAC;IACtEI,OAAO,CAACiB,IAAI,CAAC,CAAC;IACdF,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHhB,OAAO,CAACkB,KAAK,CAAC,CAAC"}
@@ -1,15 +1,18 @@
1
- import { FrodoCommand } from '../FrodoCommand';
2
- import { Option } from 'commander';
3
1
  import { frodo } from '@rockcarver/frodo-lib';
4
- import { exportPolicyToFile, exportPoliciesToFile, exportPoliciesByPolicySetToFile, exportPoliciesToFiles, exportPoliciesByPolicySetToFiles } from '../../ops/PolicyOps';
2
+ import { Option } from 'commander';
3
+ import { exportPoliciesByPolicySetToFile, exportPoliciesByPolicySetToFiles, exportPoliciesToFile, exportPoliciesToFiles, exportPolicyToFile } from '../../ops/PolicyOps';
5
4
  import { verboseMessage } from '../../utils/Console';
5
+ import { FrodoCommand } from '../FrodoCommand';
6
+ const {
7
+ getTokens
8
+ } = frodo.login;
6
9
  const program = new FrodoCommand('frodo authz policy export');
7
10
  program.description('Export authorization policies.').addOption(new Option('-i, --policy-id <policy-id>', 'Policy id. If specified, -a and -A are ignored.')).addOption(new Option('--set-id <set-id>', 'Export policies in policy set only. Ignored with -i.')).addOption(new Option('-f, --file <file>', 'Name of the export file.')).addOption(new Option('-a, --all', 'Export policies to a single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Export policies to separate files (*.policy.authz.json) in the current directory. Ignored with -i or -a.')).addOption(new Option('--no-deps', 'Do not include dependencies (scripts).')).addOption(new Option('--prereqs', 'Include prerequisites (policy sets, resource types).')).action(
8
11
  // implement command logic inside action handler
9
12
  async (host, realm, user, password, options, command) => {
10
13
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
11
14
  // export
12
- if (options.policyId && (await frodo.login.getTokens())) {
15
+ if (options.policyId && (await getTokens())) {
13
16
  verboseMessage('Exporting authorization policy to file...');
14
17
  const outcome = exportPolicyToFile(options.policyId, options.file, {
15
18
  deps: options.deps,
@@ -19,7 +22,7 @@ async (host, realm, user, password, options, command) => {
19
22
  if (!outcome) process.exitCode = 1;
20
23
  }
21
24
  // -a/--all by policy set
22
- else if (options.setId && options.all && (await frodo.login.getTokens())) {
25
+ else if (options.setId && options.all && (await getTokens())) {
23
26
  verboseMessage(`Exporting all authorization policies in policy set ${options.setId} to file...`);
24
27
  const outcome = await exportPoliciesByPolicySetToFile(options.setId, options.file, {
25
28
  deps: options.deps,
@@ -29,7 +32,7 @@ async (host, realm, user, password, options, command) => {
29
32
  if (!outcome) process.exitCode = 1;
30
33
  }
31
34
  // -a/--all
32
- else if (options.all && (await frodo.login.getTokens())) {
35
+ else if (options.all && (await getTokens())) {
33
36
  verboseMessage('Exporting all authorization policies to file...');
34
37
  const outcome = await exportPoliciesToFile(options.file, {
35
38
  deps: options.deps,
@@ -39,7 +42,7 @@ async (host, realm, user, password, options, command) => {
39
42
  if (!outcome) process.exitCode = 1;
40
43
  }
41
44
  // -A/--all-separate by policy set
42
- else if (options.setId && options.allSeparate && (await frodo.login.getTokens())) {
45
+ else if (options.setId && options.allSeparate && (await getTokens())) {
43
46
  verboseMessage(`Exporting all authorization policies in policy set ${options.setId} to separate files...`);
44
47
  const outcome = await exportPoliciesByPolicySetToFiles(options.setId, {
45
48
  deps: options.deps,
@@ -49,7 +52,7 @@ async (host, realm, user, password, options, command) => {
49
52
  if (!outcome) process.exitCode = 1;
50
53
  }
51
54
  // -A/--all-separate
52
- else if (options.allSeparate && (await frodo.login.getTokens())) {
55
+ else if (options.allSeparate && (await getTokens())) {
53
56
  verboseMessage('Exporting all authorization policies to separate files...');
54
57
  const outcome = await exportPoliciesToFiles({
55
58
  deps: options.deps,
@@ -69,4 +72,4 @@ async (host, realm, user, password, options, command) => {
69
72
  );
70
73
 
71
74
  program.parse();
72
- //# sourceMappingURL=authz-policy-export.js.map
75
+ //# sourceMappingURL=authz-policy-export.js.map