@rockcarver/frodo-cli 2.0.0-4 → 2.0.0-41

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 (486) hide show
  1. package/CHANGELOG.md +312 -5
  2. package/esm/app.js +22 -5
  3. package/esm/app.js.map +1 -1
  4. package/esm/cli/FrodoCommand.js +33 -7
  5. package/esm/cli/FrodoCommand.js.map +1 -1
  6. package/esm/cli/_template/something-delete.js +7 -5
  7. package/esm/cli/_template/something-delete.js.map +1 -1
  8. package/esm/cli/_template/something-describe.js +7 -5
  9. package/esm/cli/_template/something-describe.js.map +1 -1
  10. package/esm/cli/_template/something-else-delete.js +7 -5
  11. package/esm/cli/_template/something-else-delete.js.map +1 -1
  12. package/esm/cli/_template/something-else-describe.js +7 -5
  13. package/esm/cli/_template/something-else-describe.js.map +1 -1
  14. package/esm/cli/_template/something-else-export.js +8 -6
  15. package/esm/cli/_template/something-else-export.js.map +1 -1
  16. package/esm/cli/_template/something-else-import.js +7 -5
  17. package/esm/cli/_template/something-else-import.js.map +1 -1
  18. package/esm/cli/_template/something-else-list.js +7 -5
  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 +8 -6
  23. package/esm/cli/_template/something-export.js.map +1 -1
  24. package/esm/cli/_template/something-import.js +7 -5
  25. package/esm/cli/_template/something-import.js.map +1 -1
  26. package/esm/cli/_template/something-list.js +7 -5
  27. package/esm/cli/_template/something-list.js.map +1 -1
  28. package/esm/cli/_template/something-other-delete.js +7 -5
  29. package/esm/cli/_template/something-other-delete.js.map +1 -1
  30. package/esm/cli/_template/something-other-describe.js +7 -5
  31. package/esm/cli/_template/something-other-describe.js.map +1 -1
  32. package/esm/cli/_template/something-other-export.js +8 -6
  33. package/esm/cli/_template/something-other-export.js.map +1 -1
  34. package/esm/cli/_template/something-other-import.js +7 -5
  35. package/esm/cli/_template/something-other-import.js.map +1 -1
  36. package/esm/cli/_template/something-other-list.js +7 -5
  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 -5
  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 -8
  45. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js.map +1 -1
  46. package/esm/cli/admin/admin-execute-rfc7523-authz-grant-flow.js +41 -0
  47. package/esm/cli/admin/admin-execute-rfc7523-authz-grant-flow.js.map +1 -0
  48. package/esm/cli/admin/admin-federation-export.js +44 -0
  49. package/esm/cli/admin/admin-federation-export.js.map +1 -0
  50. package/esm/cli/admin/admin-federation-import.js +48 -0
  51. package/esm/cli/admin/admin-federation-import.js.map +1 -0
  52. package/esm/cli/admin/admin-federation-list.js +28 -0
  53. package/esm/cli/admin/admin-federation-list.js.map +1 -0
  54. package/esm/cli/admin/admin-federation.js +13 -0
  55. package/esm/cli/admin/admin-federation.js.map +1 -0
  56. package/esm/cli/admin/admin-generate-rfc7523-authz-grant-artefacts.js +43 -0
  57. package/esm/cli/admin/admin-generate-rfc7523-authz-grant-artefacts.js.map +1 -0
  58. package/esm/cli/admin/admin-get-access-token.js +12 -7
  59. package/esm/cli/admin/admin-get-access-token.js.map +1 -1
  60. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js +13 -8
  61. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js.map +1 -1
  62. package/esm/cli/admin/admin-hide-generic-extension-attributes.js +11 -6
  63. package/esm/cli/admin/admin-hide-generic-extension-attributes.js.map +1 -1
  64. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js +11 -6
  65. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js.map +1 -1
  66. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js +11 -6
  67. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js.map +1 -1
  68. package/esm/cli/admin/admin-list-static-user-mappings.js +12 -7
  69. package/esm/cli/admin/admin-list-static-user-mappings.js.map +1 -1
  70. package/esm/cli/admin/admin-remove-static-user-mapping.js +12 -6
  71. package/esm/cli/admin/admin-remove-static-user-mapping.js.map +1 -1
  72. package/esm/cli/admin/admin-repair-org-model.js +11 -6
  73. package/esm/cli/admin/admin-repair-org-model.js.map +1 -1
  74. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js +12 -7
  75. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js.map +1 -1
  76. package/esm/cli/admin/admin-show-generic-extension-attributes.js +11 -6
  77. package/esm/cli/admin/admin-show-generic-extension-attributes.js.map +1 -1
  78. package/esm/cli/admin/admin-train-auto-access-model.js +32 -0
  79. package/esm/cli/admin/admin-train-auto-access-model.js.map +1 -0
  80. package/esm/cli/admin/admin.js +8 -2
  81. package/esm/cli/admin/admin.js.map +1 -1
  82. package/esm/cli/agent/agent-delete.js +13 -7
  83. package/esm/cli/agent/agent-delete.js.map +1 -1
  84. package/esm/cli/agent/agent-describe.js +7 -5
  85. package/esm/cli/agent/agent-describe.js.map +1 -1
  86. package/esm/cli/agent/agent-export.js +12 -10
  87. package/esm/cli/agent/agent-export.js.map +1 -1
  88. package/esm/cli/agent/agent-gateway-delete.js +13 -7
  89. package/esm/cli/agent/agent-gateway-delete.js.map +1 -1
  90. package/esm/cli/agent/agent-gateway-describe.js +7 -5
  91. package/esm/cli/agent/agent-gateway-describe.js.map +1 -1
  92. package/esm/cli/agent/agent-gateway-export.js +12 -10
  93. package/esm/cli/agent/agent-gateway-export.js.map +1 -1
  94. package/esm/cli/agent/agent-gateway-import.js +8 -6
  95. package/esm/cli/agent/agent-gateway-import.js.map +1 -1
  96. package/esm/cli/agent/agent-gateway-list.js +7 -5
  97. package/esm/cli/agent/agent-gateway-list.js.map +1 -1
  98. package/esm/cli/agent/agent-gateway.js +1 -1
  99. package/esm/cli/agent/agent-gateway.js.map +1 -1
  100. package/esm/cli/agent/agent-import.js +8 -6
  101. package/esm/cli/agent/agent-import.js.map +1 -1
  102. package/esm/cli/agent/agent-java-delete.js +13 -7
  103. package/esm/cli/agent/agent-java-delete.js.map +1 -1
  104. package/esm/cli/agent/agent-java-describe.js +7 -5
  105. package/esm/cli/agent/agent-java-describe.js.map +1 -1
  106. package/esm/cli/agent/agent-java-export.js +12 -10
  107. package/esm/cli/agent/agent-java-export.js.map +1 -1
  108. package/esm/cli/agent/agent-java-import.js +8 -6
  109. package/esm/cli/agent/agent-java-import.js.map +1 -1
  110. package/esm/cli/agent/agent-java-list.js +7 -5
  111. package/esm/cli/agent/agent-java-list.js.map +1 -1
  112. package/esm/cli/agent/agent-java.js +1 -1
  113. package/esm/cli/agent/agent-java.js.map +1 -1
  114. package/esm/cli/agent/agent-list.js +7 -5
  115. package/esm/cli/agent/agent-list.js.map +1 -1
  116. package/esm/cli/agent/agent-web-delete.js +13 -7
  117. package/esm/cli/agent/agent-web-delete.js.map +1 -1
  118. package/esm/cli/agent/agent-web-describe.js +7 -5
  119. package/esm/cli/agent/agent-web-describe.js.map +1 -1
  120. package/esm/cli/agent/agent-web-export.js +12 -10
  121. package/esm/cli/agent/agent-web-export.js.map +1 -1
  122. package/esm/cli/agent/agent-web-import.js +8 -6
  123. package/esm/cli/agent/agent-web-import.js.map +1 -1
  124. package/esm/cli/agent/agent-web-list.js +7 -5
  125. package/esm/cli/agent/agent-web-list.js.map +1 -1
  126. package/esm/cli/agent/agent-web.js +3 -3
  127. package/esm/cli/agent/agent-web.js.map +1 -1
  128. package/esm/cli/agent/agent.js +2 -2
  129. package/esm/cli/agent/agent.js.map +1 -1
  130. package/esm/cli/app/app-delete.js +27 -9
  131. package/esm/cli/app/app-delete.js.map +1 -1
  132. package/esm/cli/app/app-describe.js +9 -6
  133. package/esm/cli/app/app-describe.js.map +1 -1
  134. package/esm/cli/app/app-export.js +17 -14
  135. package/esm/cli/app/app-export.js.map +1 -1
  136. package/esm/cli/app/app-import.js +21 -18
  137. package/esm/cli/app/app-import.js.map +1 -1
  138. package/esm/cli/app/app-list.js +12 -9
  139. package/esm/cli/app/app-list.js.map +1 -1
  140. package/esm/cli/app/app.js +8 -12
  141. package/esm/cli/app/app.js.map +1 -1
  142. package/esm/cli/authn/authn-describe.js +29 -0
  143. package/esm/cli/authn/authn-describe.js.map +1 -0
  144. package/esm/cli/authn/authn-export.js +25 -0
  145. package/esm/cli/authn/authn-export.js.map +1 -0
  146. package/esm/cli/authn/authn-import.js +25 -0
  147. package/esm/cli/authn/authn-import.js.map +1 -0
  148. package/esm/cli/authn/authn.js +12 -0
  149. package/esm/cli/authn/authn.js.map +1 -0
  150. package/esm/cli/authz/authz-policy-delete.js +11 -9
  151. package/esm/cli/authz/authz-policy-delete.js.map +1 -1
  152. package/esm/cli/authz/authz-policy-describe.js +8 -6
  153. package/esm/cli/authz/authz-policy-describe.js.map +1 -1
  154. package/esm/cli/authz/authz-policy-export.js +18 -16
  155. package/esm/cli/authz/authz-policy-export.js.map +1 -1
  156. package/esm/cli/authz/authz-policy-import.js +11 -9
  157. package/esm/cli/authz/authz-policy-import.js.map +1 -1
  158. package/esm/cli/authz/authz-policy-list.js +11 -9
  159. package/esm/cli/authz/authz-policy-list.js.map +1 -1
  160. package/esm/cli/authz/authz-policy.js +1 -1
  161. package/esm/cli/authz/authz-policy.js.map +1 -1
  162. package/esm/cli/authz/authz-set-delete.js +11 -9
  163. package/esm/cli/authz/authz-set-delete.js.map +1 -1
  164. package/esm/cli/authz/authz-set-describe.js +8 -6
  165. package/esm/cli/authz/authz-set-describe.js.map +1 -1
  166. package/esm/cli/authz/authz-set-export.js +14 -12
  167. package/esm/cli/authz/authz-set-export.js.map +1 -1
  168. package/esm/cli/authz/authz-set-import.js +11 -9
  169. package/esm/cli/authz/authz-set-import.js.map +1 -1
  170. package/esm/cli/authz/authz-set-list.js +8 -6
  171. package/esm/cli/authz/authz-set-list.js.map +1 -1
  172. package/esm/cli/authz/authz-set.js +1 -1
  173. package/esm/cli/authz/authz-set.js.map +1 -1
  174. package/esm/cli/authz/authz-type-delete.js +13 -11
  175. package/esm/cli/authz/authz-type-delete.js.map +1 -1
  176. package/esm/cli/authz/authz-type-describe.js +9 -7
  177. package/esm/cli/authz/authz-type-describe.js.map +1 -1
  178. package/esm/cli/authz/authz-type-export.js +16 -14
  179. package/esm/cli/authz/authz-type-export.js.map +1 -1
  180. package/esm/cli/authz/authz-type-import.js +14 -12
  181. package/esm/cli/authz/authz-type-import.js.map +1 -1
  182. package/esm/cli/authz/authz-type-list.js +9 -7
  183. package/esm/cli/authz/authz-type-list.js.map +1 -1
  184. package/esm/cli/authz/authz-type.js +1 -1
  185. package/esm/cli/authz/authz-type.js.map +1 -1
  186. package/esm/cli/authz/authz.js +2 -2
  187. package/esm/cli/authz/authz.js.map +1 -1
  188. package/esm/cli/config/config-delete.js +21 -0
  189. package/esm/cli/config/config-delete.js.map +1 -0
  190. package/esm/cli/config/config-describe.js +21 -0
  191. package/esm/cli/config/config-describe.js.map +1 -0
  192. package/esm/cli/config/config-export.js +43 -0
  193. package/esm/cli/config/config-export.js.map +1 -0
  194. package/esm/cli/config/config-import.js +54 -0
  195. package/esm/cli/config/config-import.js.map +1 -0
  196. package/esm/cli/config/config-list.js +21 -0
  197. package/esm/cli/config/config-list.js.map +1 -0
  198. package/esm/cli/config/config.js +19 -0
  199. package/esm/cli/config/config.js.map +1 -0
  200. package/esm/cli/conn/conn-delete.js +2 -3
  201. package/esm/cli/conn/conn-delete.js.map +1 -1
  202. package/esm/cli/conn/conn-describe.js +2 -3
  203. package/esm/cli/conn/conn-describe.js.map +1 -1
  204. package/esm/cli/conn/conn-list.js +2 -3
  205. package/esm/cli/conn/conn-list.js.map +1 -1
  206. package/esm/cli/conn/conn-save.js +31 -16
  207. package/esm/cli/conn/conn-save.js.map +1 -1
  208. package/esm/cli/conn/conn.js +2 -2
  209. package/esm/cli/conn/conn.js.map +1 -1
  210. package/esm/cli/email/email-template-export.js +14 -12
  211. package/esm/cli/email/email-template-export.js.map +1 -1
  212. package/esm/cli/email/email-template-import.js +15 -13
  213. package/esm/cli/email/email-template-import.js.map +1 -1
  214. package/esm/cli/email/email-template-list.js +9 -7
  215. package/esm/cli/email/email-template-list.js.map +1 -1
  216. package/esm/cli/email/email-template.js +1 -1
  217. package/esm/cli/email/email-template.js.map +1 -1
  218. package/esm/cli/email/email.js +2 -2
  219. package/esm/cli/email/email.js.map +1 -1
  220. package/esm/cli/esv/esv-apply.js +18 -9
  221. package/esm/cli/esv/esv-apply.js.map +1 -1
  222. package/esm/cli/esv/esv-secret-create.js +10 -7
  223. package/esm/cli/esv/esv-secret-create.js.map +1 -1
  224. package/esm/cli/esv/esv-secret-delete.js +13 -10
  225. package/esm/cli/esv/esv-secret-delete.js.map +1 -1
  226. package/esm/cli/esv/esv-secret-describe.js +10 -7
  227. package/esm/cli/esv/esv-secret-describe.js.map +1 -1
  228. package/esm/cli/esv/esv-secret-export.js +22 -7
  229. package/esm/cli/esv/esv-secret-export.js.map +1 -1
  230. package/esm/cli/esv/esv-secret-import.js +7 -5
  231. package/esm/cli/esv/esv-secret-import.js.map +1 -1
  232. package/esm/cli/esv/esv-secret-list.js +11 -8
  233. package/esm/cli/esv/esv-secret-list.js.map +1 -1
  234. package/esm/cli/esv/esv-secret-set.js +10 -7
  235. package/esm/cli/esv/esv-secret-set.js.map +1 -1
  236. package/esm/cli/esv/esv-secret-version-activate.js +10 -8
  237. package/esm/cli/esv/esv-secret-version-activate.js.map +1 -1
  238. package/esm/cli/esv/esv-secret-version-create.js +10 -7
  239. package/esm/cli/esv/esv-secret-version-create.js.map +1 -1
  240. package/esm/cli/esv/esv-secret-version-deactivate.js +10 -8
  241. package/esm/cli/esv/esv-secret-version-deactivate.js.map +1 -1
  242. package/esm/cli/esv/esv-secret-version-delete.js +13 -10
  243. package/esm/cli/esv/esv-secret-version-delete.js.map +1 -1
  244. package/esm/cli/esv/esv-secret-version-list.js +10 -7
  245. package/esm/cli/esv/esv-secret-version-list.js.map +1 -1
  246. package/esm/cli/esv/esv-secret-version.js +1 -1
  247. package/esm/cli/esv/esv-secret-version.js.map +1 -1
  248. package/esm/cli/esv/esv-secret.js +2 -3
  249. package/esm/cli/esv/esv-secret.js.map +1 -1
  250. package/esm/cli/esv/esv-variable-create.js +11 -7
  251. package/esm/cli/esv/esv-variable-create.js.map +1 -1
  252. package/esm/cli/esv/esv-variable-delete.js +13 -9
  253. package/esm/cli/esv/esv-variable-delete.js.map +1 -1
  254. package/esm/cli/esv/esv-variable-describe.js +11 -8
  255. package/esm/cli/esv/esv-variable-describe.js.map +1 -1
  256. package/esm/cli/esv/esv-variable-export.js +23 -7
  257. package/esm/cli/esv/esv-variable-export.js.map +1 -1
  258. package/esm/cli/esv/esv-variable-import.js +7 -5
  259. package/esm/cli/esv/esv-variable-import.js.map +1 -1
  260. package/esm/cli/esv/esv-variable-list.js +11 -8
  261. package/esm/cli/esv/esv-variable-list.js.map +1 -1
  262. package/esm/cli/esv/esv-variable-set.js +12 -8
  263. package/esm/cli/esv/esv-variable-set.js.map +1 -1
  264. package/esm/cli/esv/esv-variable.js +2 -3
  265. package/esm/cli/esv/esv-variable.js.map +1 -1
  266. package/esm/cli/esv/esv.js +2 -2
  267. package/esm/cli/esv/esv.js.map +1 -1
  268. package/esm/cli/idm/idm-count.js +10 -8
  269. package/esm/cli/idm/idm-count.js.map +1 -1
  270. package/esm/cli/idm/idm-export.js +24 -16
  271. package/esm/cli/idm/idm-export.js.map +1 -1
  272. package/esm/cli/idm/idm-import.js +22 -14
  273. package/esm/cli/idm/idm-import.js.map +1 -1
  274. package/esm/cli/idm/idm-list.js +9 -7
  275. package/esm/cli/idm/idm-list.js.map +1 -1
  276. package/esm/cli/idm/idm.js +2 -2
  277. package/esm/cli/idm/idm.js.map +1 -1
  278. package/esm/cli/idp/idp-export.js +12 -10
  279. package/esm/cli/idp/idp-export.js.map +1 -1
  280. package/esm/cli/idp/idp-import.js +24 -14
  281. package/esm/cli/idp/idp-import.js.map +1 -1
  282. package/esm/cli/idp/idp-list.js +8 -6
  283. package/esm/cli/idp/idp-list.js.map +1 -1
  284. package/esm/cli/idp/idp.js +2 -2
  285. package/esm/cli/idp/idp.js.map +1 -1
  286. package/esm/cli/info/info.js +13 -8
  287. package/esm/cli/info/info.js.map +1 -1
  288. package/esm/cli/journey/journey-delete.js +14 -8
  289. package/esm/cli/journey/journey-delete.js.map +1 -1
  290. package/esm/cli/journey/journey-describe.js +22 -12
  291. package/esm/cli/journey/journey-describe.js.map +1 -1
  292. package/esm/cli/journey/journey-disable.js +11 -12
  293. package/esm/cli/journey/journey-disable.js.map +1 -1
  294. package/esm/cli/journey/journey-enable.js +11 -12
  295. package/esm/cli/journey/journey-enable.js.map +1 -1
  296. package/esm/cli/journey/journey-export.js +24 -13
  297. package/esm/cli/journey/journey-export.js.map +1 -1
  298. package/esm/cli/journey/journey-import.js +15 -13
  299. package/esm/cli/journey/journey-import.js.map +1 -1
  300. package/esm/cli/journey/journey-list.js +7 -5
  301. package/esm/cli/journey/journey-list.js.map +1 -1
  302. package/esm/cli/journey/journey-prune.js +23 -13
  303. package/esm/cli/journey/journey-prune.js.map +1 -1
  304. package/esm/cli/journey/journey.js +2 -2
  305. package/esm/cli/journey/journey.js.map +1 -1
  306. package/esm/cli/{logging/logs-fetch.js → log/log-fetch.js} +68 -36
  307. package/esm/cli/log/log-fetch.js.map +1 -0
  308. package/esm/cli/log/log-key-delete.js +34 -0
  309. package/esm/cli/log/log-key-delete.js.map +1 -0
  310. package/esm/cli/log/log-key-describe.js +21 -0
  311. package/esm/cli/log/log-key-describe.js.map +1 -0
  312. package/esm/cli/log/log-key-list.js +25 -0
  313. package/esm/cli/log/log-key-list.js.map +1 -0
  314. package/esm/cli/log/log-key.js +8 -0
  315. package/esm/cli/log/log-key.js.map +1 -0
  316. package/esm/cli/log/log-list.js +80 -0
  317. package/esm/cli/log/log-list.js.map +1 -0
  318. package/esm/cli/log/log-tail.js +77 -0
  319. package/esm/cli/log/log-tail.js.map +1 -0
  320. package/esm/cli/{logging/logs.js → log/log.js} +6 -3
  321. package/esm/cli/log/log.js.map +1 -0
  322. package/esm/cli/oauth/oauth-client-delete.js +21 -0
  323. package/esm/cli/oauth/oauth-client-delete.js.map +1 -0
  324. package/esm/cli/oauth/oauth-client-describe.js +21 -0
  325. package/esm/cli/oauth/oauth-client-describe.js.map +1 -0
  326. package/esm/cli/oauth/oauth-client-export.js +51 -0
  327. package/esm/cli/oauth/oauth-client-export.js.map +1 -0
  328. package/esm/cli/oauth/oauth-client-import.js +56 -0
  329. package/esm/cli/oauth/oauth-client-import.js.map +1 -0
  330. package/esm/cli/oauth/oauth-client-list.js +24 -0
  331. package/esm/cli/oauth/oauth-client-list.js.map +1 -0
  332. package/esm/cli/oauth/oauth-client.js +14 -0
  333. package/esm/cli/oauth/oauth-client.js.map +1 -0
  334. package/esm/cli/oauth/oauth.js +13 -0
  335. package/esm/cli/oauth/oauth.js.map +1 -0
  336. package/esm/cli/realm/realm-add-custom-domain.js +8 -6
  337. package/esm/cli/realm/realm-add-custom-domain.js.map +1 -1
  338. package/esm/cli/realm/realm-describe.js +8 -6
  339. package/esm/cli/realm/realm-describe.js.map +1 -1
  340. package/esm/cli/realm/realm-list.js +8 -6
  341. package/esm/cli/realm/realm-list.js.map +1 -1
  342. package/esm/cli/realm/realm-remove-custom-domain.js +11 -6
  343. package/esm/cli/realm/realm-remove-custom-domain.js.map +1 -1
  344. package/esm/cli/realm/realm.js +2 -2
  345. package/esm/cli/realm/realm.js.map +1 -1
  346. package/esm/cli/saml/saml-cot-export.js +14 -12
  347. package/esm/cli/saml/saml-cot-export.js.map +1 -1
  348. package/esm/cli/saml/saml-cot-import.js +15 -13
  349. package/esm/cli/saml/saml-cot-import.js.map +1 -1
  350. package/esm/cli/saml/saml-cot-list.js +9 -7
  351. package/esm/cli/saml/saml-cot-list.js.map +1 -1
  352. package/esm/cli/saml/saml-cot.js +1 -1
  353. package/esm/cli/saml/saml-cot.js.map +1 -1
  354. package/esm/cli/saml/saml-delete.js +14 -8
  355. package/esm/cli/saml/saml-delete.js.map +1 -1
  356. package/esm/cli/saml/saml-describe.js +9 -7
  357. package/esm/cli/saml/saml-describe.js.map +1 -1
  358. package/esm/cli/saml/saml-export.js +14 -12
  359. package/esm/cli/saml/saml-export.js.map +1 -1
  360. package/esm/cli/saml/saml-import.js +24 -14
  361. package/esm/cli/saml/saml-import.js.map +1 -1
  362. package/esm/cli/saml/saml-list.js +9 -7
  363. package/esm/cli/saml/saml-list.js.map +1 -1
  364. package/esm/cli/saml/saml-metadata-export.js +10 -8
  365. package/esm/cli/saml/saml-metadata-export.js.map +1 -1
  366. package/esm/cli/saml/saml-metadata.js +1 -1
  367. package/esm/cli/saml/saml-metadata.js.map +1 -1
  368. package/esm/cli/saml/saml.js +2 -2
  369. package/esm/cli/saml/saml.js.map +1 -1
  370. package/esm/cli/script/script-delete.js +21 -8
  371. package/esm/cli/script/script-delete.js.map +1 -1
  372. package/esm/cli/script/script-describe.js +7 -5
  373. package/esm/cli/script/script-describe.js.map +1 -1
  374. package/esm/cli/script/script-export.js +12 -14
  375. package/esm/cli/script/script-export.js.map +1 -1
  376. package/esm/cli/script/script-import.js +9 -7
  377. package/esm/cli/script/script-import.js.map +1 -1
  378. package/esm/cli/script/script-list.js +10 -8
  379. package/esm/cli/script/script-list.js.map +1 -1
  380. package/esm/cli/script/script.js +3 -5
  381. package/esm/cli/script/script.js.map +1 -1
  382. package/esm/cli/service/service-delete.js +8 -5
  383. package/esm/cli/service/service-delete.js.map +1 -1
  384. package/esm/cli/service/service-export.js +13 -11
  385. package/esm/cli/service/service-export.js.map +1 -1
  386. package/esm/cli/service/service-import.js +32 -14
  387. package/esm/cli/service/service-import.js.map +1 -1
  388. package/esm/cli/service/service-list.js +7 -4
  389. package/esm/cli/service/service-list.js.map +1 -1
  390. package/esm/cli/service/service.js +2 -2
  391. package/esm/cli/service/service.js.map +1 -1
  392. package/esm/cli/shell/shell.js +57 -0
  393. package/esm/cli/shell/shell.js.map +1 -0
  394. package/esm/cli/theme/theme-delete.js +13 -11
  395. package/esm/cli/theme/theme-delete.js.map +1 -1
  396. package/esm/cli/theme/theme-export.js +16 -14
  397. package/esm/cli/theme/theme-export.js.map +1 -1
  398. package/esm/cli/theme/theme-import.js +16 -14
  399. package/esm/cli/theme/theme-import.js.map +1 -1
  400. package/esm/cli/theme/theme-list.js +8 -6
  401. package/esm/cli/theme/theme-list.js.map +1 -1
  402. package/esm/cli/theme/theme.js +2 -2
  403. package/esm/cli/theme/theme.js.map +1 -1
  404. package/esm/help/SampleData.js +7 -0
  405. package/esm/help/SampleData.js.map +1 -0
  406. package/esm/launch.js +1 -1
  407. package/esm/launch.js.map +1 -1
  408. package/esm/loader.js +2 -2
  409. package/esm/loader.js.map +1 -1
  410. package/esm/ops/AdminFederationOps.js +231 -0
  411. package/esm/ops/AdminFederationOps.js.map +1 -0
  412. package/esm/ops/AdminOps.js +151 -0
  413. package/esm/ops/AdminOps.js.map +1 -0
  414. package/esm/ops/AgentOps.js +213 -150
  415. package/esm/ops/AgentOps.js.map +1 -1
  416. package/esm/ops/ApplicationOps.js +324 -0
  417. package/esm/ops/ApplicationOps.js.map +1 -0
  418. package/esm/ops/AuthenticationSettingsOps.js +90 -0
  419. package/esm/ops/AuthenticationSettingsOps.js.map +1 -0
  420. package/esm/ops/CirclesOfTrustOps.js +98 -78
  421. package/esm/ops/CirclesOfTrustOps.js.map +1 -1
  422. package/esm/ops/ConfigOps.js +162 -0
  423. package/esm/ops/ConfigOps.js.map +1 -0
  424. package/esm/ops/ConnectionProfileOps.js +12 -6
  425. package/esm/ops/ConnectionProfileOps.js.map +1 -1
  426. package/esm/ops/EmailTemplateOps.js +122 -127
  427. package/esm/ops/EmailTemplateOps.js.map +1 -1
  428. package/esm/ops/IdmOps.js +101 -182
  429. package/esm/ops/IdmOps.js.map +1 -1
  430. package/esm/ops/IdpOps.js +118 -73
  431. package/esm/ops/IdpOps.js.map +1 -1
  432. package/esm/ops/JourneyOps.js +176 -114
  433. package/esm/ops/JourneyOps.js.map +1 -1
  434. package/esm/ops/LogOps.js +92 -30
  435. package/esm/ops/LogOps.js.map +1 -1
  436. package/esm/ops/NodeOps.js +6 -3
  437. package/esm/ops/NodeOps.js.map +1 -1
  438. package/esm/ops/OAuth2ClientOps.js +71 -49
  439. package/esm/ops/OAuth2ClientOps.js.map +1 -1
  440. package/esm/ops/OrganizationOps.js +14 -22
  441. package/esm/ops/OrganizationOps.js.map +1 -1
  442. package/esm/ops/PolicyOps.js +127 -86
  443. package/esm/ops/PolicyOps.js.map +1 -1
  444. package/esm/ops/PolicySetOps.js +108 -76
  445. package/esm/ops/PolicySetOps.js.map +1 -1
  446. package/esm/ops/RealmOps.js +18 -11
  447. package/esm/ops/RealmOps.js.map +1 -1
  448. package/esm/ops/ResourceTypeOps.js +105 -87
  449. package/esm/ops/ResourceTypeOps.js.map +1 -1
  450. package/esm/ops/Saml2Ops.js +132 -91
  451. package/esm/ops/Saml2Ops.js.map +1 -1
  452. package/esm/ops/Saml2Ops.test_.js.map +1 -1
  453. package/esm/ops/ScriptOps.js +205 -82
  454. package/esm/ops/ScriptOps.js.map +1 -1
  455. package/esm/ops/SecretsOps.js +289 -79
  456. package/esm/ops/SecretsOps.js.map +1 -1
  457. package/esm/ops/ServiceOps.js +97 -54
  458. package/esm/ops/ServiceOps.js.map +1 -1
  459. package/esm/ops/ThemeOps.js +164 -158
  460. package/esm/ops/ThemeOps.js.map +1 -1
  461. package/esm/ops/VariablesOps.js +252 -65
  462. package/esm/ops/VariablesOps.js.map +1 -1
  463. package/esm/ops/utils/OpsUtils.js +1 -1
  464. package/esm/ops/utils/OpsUtils.js.map +1 -1
  465. package/esm/ops/utils/Wordwrap.js +1 -1
  466. package/esm/ops/utils/Wordwrap.js.map +1 -1
  467. package/esm/storage/StaticStorage.js +1 -1
  468. package/esm/storage/StaticStorage.js.map +1 -1
  469. package/esm/utils/Config.js +162 -4
  470. package/esm/utils/Config.js.map +1 -1
  471. package/esm/utils/Console.js +78 -35
  472. package/esm/utils/Console.js.map +1 -1
  473. package/esm/utils/Version.js +19 -16
  474. package/esm/utils/Version.js.map +1 -1
  475. package/global-jest-setup.js +4 -0
  476. package/package.json +55 -37
  477. package/esm/cli/logging/logs-fetch.js.map +0 -1
  478. package/esm/cli/logging/logs-list.js +0 -49
  479. package/esm/cli/logging/logs-list.js.map +0 -1
  480. package/esm/cli/logging/logs-tail.js +0 -46
  481. package/esm/cli/logging/logs-tail.js.map +0 -1
  482. package/esm/cli/logging/logs.js.map +0 -1
  483. package/esm/cli/theme/theme-delete.e2e.test_.js.map +0 -1
  484. package/esm/cli/theme/theme-list.e2e.test_.js.map +0 -1
  485. package/esm/utils/ExportImportUtils.js +0 -90
  486. package/esm/utils/ExportImportUtils.js.map +0 -1
@@ -1,7 +1,37 @@
1
1
  import { frodo, state } from '@rockcarver/frodo-lib';
2
2
  import fs from 'fs';
3
- import { printMessage, createTable, debugMessage, showSpinner, succeedSpinner, failSpinner } from '../utils/Console';
4
- import { getTypedFilename, saveJsonToFile, titleCase } from '../utils/ExportImportUtils';
3
+ import { createProgressIndicator, createTable, debugMessage, printMessage, stopProgressIndicator } from '../utils/Console';
4
+ const {
5
+ getRealmName,
6
+ getTypedFilename,
7
+ saveJsonToFile,
8
+ titleCase,
9
+ getFilePath,
10
+ getWorkingDirectory
11
+ } = frodo.utils;
12
+ const {
13
+ createAgentExportTemplate,
14
+ readAgents,
15
+ readIdentityGatewayAgents,
16
+ readJavaAgents,
17
+ readWebAgents,
18
+ exportAgents,
19
+ exportIdentityGatewayAgents,
20
+ exportJavaAgents,
21
+ exportWebAgents,
22
+ exportAgent,
23
+ exportIdentityGatewayAgent,
24
+ exportJavaAgent,
25
+ exportWebAgent,
26
+ importAgent,
27
+ importIdentityGatewayAgent,
28
+ importJavaAgent,
29
+ importWebAgent,
30
+ importAgents,
31
+ importIdentityGatewayAgents,
32
+ importJavaAgents,
33
+ importWebAgents
34
+ } = frodo.agent;
5
35
  const agentTypeToFileIdMap = {
6
36
  IdentityGatewayAgent: 'gateway.agent',
7
37
  J2EEAgent: 'java.agent',
@@ -13,7 +43,7 @@ const agentTypeToFileIdMap = {
13
43
  */
14
44
  export async function listAgents(long = false) {
15
45
  try {
16
- const agents = await frodo.agent.getAgents();
46
+ const agents = await readAgents();
17
47
  if (long) {
18
48
  const table = createTable(['Agent Id', 'Status', 'Agent Type']);
19
49
  for (const agent of agents) {
@@ -48,7 +78,7 @@ export async function listAgents(long = false) {
48
78
  */
49
79
  export async function listIdentityGatewayAgents(long = false) {
50
80
  try {
51
- const agents = await frodo.agent.getIdentityGatewayAgents();
81
+ const agents = await readIdentityGatewayAgents();
52
82
  if (long) {
53
83
  const table = createTable(['Gateway Agent Id', 'Status']);
54
84
  for (const agent of agents) {
@@ -71,7 +101,7 @@ export async function listIdentityGatewayAgents(long = false) {
71
101
  */
72
102
  export async function listJavaAgents(long = false) {
73
103
  try {
74
- const agents = await frodo.agent.getJavaAgents();
104
+ const agents = await readJavaAgents();
75
105
  if (long) {
76
106
  const table = createTable(['Java Agent Id', 'Status']);
77
107
  for (const agent of agents) {
@@ -94,7 +124,7 @@ export async function listJavaAgents(long = false) {
94
124
  */
95
125
  export async function listWebAgents(long = false) {
96
126
  try {
97
- const agents = await frodo.agent.getWebAgents();
127
+ const agents = await readWebAgents();
98
128
  if (long) {
99
129
  const table = createTable(['Web Agent Id', 'Status']);
100
130
  for (const agent of agents) {
@@ -115,163 +145,176 @@ export async function listWebAgents(long = false) {
115
145
  /**
116
146
  * Export all agents to file
117
147
  * @param {string} file file name
148
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
118
149
  */
119
- export async function exportAgentsToFile(file) {
120
- const exportData = await frodo.agent.exportAgents();
121
- let fileName = getTypedFilename(`all${titleCase(frodo.helper.utils.getRealmName(state.getRealm()))}Agents`, 'agent');
150
+ export async function exportAgentsToFile(file, includeMeta = true) {
151
+ const exportData = await exportAgents();
152
+ let fileName = getTypedFilename(`all${titleCase(getRealmName(state.getRealm()))}Agents`, 'agent');
122
153
  if (file) {
123
154
  fileName = file;
124
155
  }
125
- saveJsonToFile(exportData, fileName);
156
+ saveJsonToFile(exportData, getFilePath(fileName, true), includeMeta);
126
157
  }
127
158
 
128
159
  /**
129
160
  * Export all identity gateway agents to file
130
161
  * @param {string} file file name
162
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
131
163
  */
132
- export async function exportIdentityGatewayAgentsToFile(file) {
133
- const exportData = await frodo.agent.exportIdentityGatewayAgents();
134
- let fileName = getTypedFilename(`all${titleCase(frodo.helper.utils.getRealmName(state.getRealm()))}Agents`, agentTypeToFileIdMap['IdentityGatewayAgent']);
164
+ export async function exportIdentityGatewayAgentsToFile(file, includeMeta = true) {
165
+ const exportData = await exportIdentityGatewayAgents();
166
+ let fileName = getTypedFilename(`all${titleCase(getRealmName(state.getRealm()))}Agents`, agentTypeToFileIdMap['IdentityGatewayAgent']);
135
167
  if (file) {
136
168
  fileName = file;
137
169
  }
138
- saveJsonToFile(exportData, fileName);
170
+ saveJsonToFile(exportData, getFilePath(fileName, true), includeMeta);
139
171
  }
140
172
 
141
173
  /**
142
174
  * Export all java agents to file
143
175
  * @param {string} file file name
176
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
144
177
  */
145
- export async function exportJavaAgentsToFile(file) {
146
- const exportData = await frodo.agent.exportJavaAgents();
147
- let fileName = getTypedFilename(`all${titleCase(frodo.helper.utils.getRealmName(state.getRealm()))}Agents`, agentTypeToFileIdMap['J2EEAgent']);
178
+ export async function exportJavaAgentsToFile(file, includeMeta = true) {
179
+ const exportData = await exportJavaAgents();
180
+ let fileName = getTypedFilename(`all${titleCase(getRealmName(state.getRealm()))}Agents`, agentTypeToFileIdMap['J2EEAgent']);
148
181
  if (file) {
149
182
  fileName = file;
150
183
  }
151
- saveJsonToFile(exportData, fileName);
184
+ saveJsonToFile(exportData, getFilePath(fileName, true), includeMeta);
152
185
  }
153
186
 
154
187
  /**
155
188
  * Export all web agents to file
156
189
  * @param {string} file file name
190
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
157
191
  */
158
- export async function exportWebAgentsToFile(file) {
159
- const exportData = await frodo.agent.exportWebAgents();
160
- let fileName = getTypedFilename(`all${titleCase(frodo.helper.utils.getRealmName(state.getRealm()))}Agents`, agentTypeToFileIdMap['WebAgent']);
192
+ export async function exportWebAgentsToFile(file, includeMeta = true) {
193
+ const exportData = await exportWebAgents();
194
+ let fileName = getTypedFilename(`all${titleCase(getRealmName(state.getRealm()))}Agents`, agentTypeToFileIdMap['WebAgent']);
161
195
  if (file) {
162
196
  fileName = file;
163
197
  }
164
- saveJsonToFile(exportData, fileName);
198
+ saveJsonToFile(exportData, getFilePath(fileName, true), includeMeta);
165
199
  }
166
200
 
167
201
  /**
168
202
  * Export agent to file
169
203
  * @param {string} agentId agent id
170
204
  * @param {string} file file name
205
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
171
206
  */
172
- export async function exportAgentToFile(agentId, file) {
173
- const exportData = await frodo.agent.exportAgent(agentId);
207
+ export async function exportAgentToFile(agentId, file, includeMeta = true) {
208
+ const exportData = await exportAgent(agentId);
174
209
  let fileName = getTypedFilename(agentId, agentTypeToFileIdMap[exportData.agents[agentId]._type._id]);
175
210
  if (file) {
176
211
  fileName = file;
177
212
  }
178
- saveJsonToFile(exportData, fileName);
213
+ saveJsonToFile(exportData, getFilePath(fileName, true), includeMeta);
179
214
  }
180
215
 
181
216
  /**
182
217
  * Export identity gateway agent to file
183
218
  * @param {string} agentId agent id
184
219
  * @param {string} file file name
220
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
185
221
  */
186
- export async function exportIdentityGatewayAgentToFile(agentId, file) {
187
- const exportData = await frodo.agent.exportIdentityGatewayAgent(agentId);
222
+ export async function exportIdentityGatewayAgentToFile(agentId, file, includeMeta = true) {
223
+ const exportData = await exportIdentityGatewayAgent(agentId);
188
224
  let fileName = getTypedFilename(agentId, agentTypeToFileIdMap[exportData.agents[agentId]._type._id]);
189
225
  if (file) {
190
226
  fileName = file;
191
227
  }
192
- saveJsonToFile(exportData, fileName);
228
+ saveJsonToFile(exportData, getFilePath(fileName, true), includeMeta);
193
229
  }
194
230
 
195
231
  /**
196
232
  * Export java agent to file
197
233
  * @param {string} agentId agent id
198
234
  * @param {string} file file name
235
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
199
236
  */
200
- export async function exportJavaAgentToFile(agentId, file) {
201
- const exportData = await frodo.agent.exportJavaAgent(agentId);
237
+ export async function exportJavaAgentToFile(agentId, file, includeMeta = true) {
238
+ const exportData = await exportJavaAgent(agentId);
202
239
  let fileName = getTypedFilename(agentId, agentTypeToFileIdMap[exportData.agents[agentId]._type._id]);
203
240
  if (file) {
204
241
  fileName = file;
205
242
  }
206
- saveJsonToFile(exportData, fileName);
243
+ saveJsonToFile(exportData, getFilePath(fileName, true), includeMeta);
207
244
  }
208
245
 
209
246
  /**
210
247
  * Export web agent to file
211
248
  * @param {string} agentId agent id
212
249
  * @param {string} file file name
250
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
213
251
  */
214
- export async function exportWebAgentToFile(agentId, file) {
215
- const exportData = await frodo.agent.exportWebAgent(agentId);
252
+ export async function exportWebAgentToFile(agentId, file, includeMeta = true) {
253
+ const exportData = await exportWebAgent(agentId);
216
254
  let fileName = getTypedFilename(agentId, agentTypeToFileIdMap[exportData.agents[agentId]._type._id]);
217
255
  if (file) {
218
256
  fileName = file;
219
257
  }
220
- saveJsonToFile(exportData, fileName);
258
+ saveJsonToFile(exportData, getFilePath(fileName, true), includeMeta);
221
259
  }
222
260
 
223
261
  /**
224
262
  * Export all agents to separate files
263
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
225
264
  */
226
- export async function exportAgentsToFiles() {
227
- const agents = await frodo.agent.getAgents();
265
+ export async function exportAgentsToFiles(includeMeta = true) {
266
+ const agents = await readAgents();
228
267
  debugMessage(`exportAgentsToFiles: ${agents.length} agents`);
229
268
  for (const agent of agents) {
230
269
  const fileName = getTypedFilename(agent._id, agentTypeToFileIdMap[agent._type._id]);
231
- const exportData = frodo.agent.createAgentExportTemplate();
270
+ const filePath = getFilePath(fileName, true);
271
+ const exportData = createAgentExportTemplate();
232
272
  exportData.agents[agent._id] = agent;
233
- debugMessage(`exportAgentsToFiles: exporting ${agent._id} to ${fileName}`);
234
- saveJsonToFile(exportData, fileName);
273
+ debugMessage(`exportAgentsToFiles: exporting ${agent._id} to ${filePath}`);
274
+ saveJsonToFile(exportData, filePath, includeMeta);
235
275
  }
236
276
  debugMessage(`exportAgentsToFiles: done.`);
237
277
  }
238
278
 
239
279
  /**
240
280
  * Export all identity gateway agents to separate files
281
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
241
282
  */
242
- export async function exportIdentityGatewayAgentsToFiles() {
243
- const agents = await frodo.agent.getIdentityGatewayAgents();
283
+ export async function exportIdentityGatewayAgentsToFiles(includeMeta = true) {
284
+ const agents = await readIdentityGatewayAgents();
244
285
  for (const agent of agents) {
245
286
  const fileName = getTypedFilename(agent._id, agentTypeToFileIdMap[agent._type._id]);
246
- const exportData = frodo.agent.createAgentExportTemplate();
287
+ const exportData = createAgentExportTemplate();
247
288
  exportData.agents[agent._id] = agent;
248
- saveJsonToFile(exportData, fileName);
289
+ saveJsonToFile(exportData, getFilePath(fileName, true), includeMeta);
249
290
  }
250
291
  }
251
292
 
252
293
  /**
253
294
  * Export all java agents to separate files
295
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
254
296
  */
255
- export async function exportJavaAgentsToFiles() {
256
- const agents = await frodo.agent.getJavaAgents();
297
+ export async function exportJavaAgentsToFiles(includeMeta = true) {
298
+ const agents = await readJavaAgents();
257
299
  for (const agent of agents) {
258
300
  const fileName = getTypedFilename(agent._id, agentTypeToFileIdMap[agent._type._id]);
259
- const exportData = frodo.agent.createAgentExportTemplate();
301
+ const exportData = createAgentExportTemplate();
260
302
  exportData.agents[agent._id] = agent;
261
- saveJsonToFile(exportData, fileName);
303
+ saveJsonToFile(exportData, getFilePath(fileName, true), includeMeta);
262
304
  }
263
305
  }
264
306
 
265
307
  /**
266
308
  * Export all web agents to separate files
309
+ * @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
267
310
  */
268
- export async function exportWebAgentsToFiles() {
269
- const agents = await frodo.agent.getWebAgents();
311
+ export async function exportWebAgentsToFiles(includeMeta = true) {
312
+ const agents = await readWebAgents();
270
313
  for (const agent of agents) {
271
314
  const fileName = getTypedFilename(agent._id, agentTypeToFileIdMap[agent._type._id]);
272
- const exportData = frodo.agent.createAgentExportTemplate();
315
+ const exportData = createAgentExportTemplate();
273
316
  exportData.agents[agent._id] = agent;
274
- saveJsonToFile(exportData, fileName);
317
+ saveJsonToFile(exportData, getFilePath(fileName, true), includeMeta);
275
318
  }
276
319
  }
277
320
 
@@ -282,29 +325,32 @@ export async function exportWebAgentsToFiles() {
282
325
  */
283
326
  export async function importAgentFromFile(agentId, file) {
284
327
  const verbose = state.getVerbose();
285
- fs.readFile(file, 'utf8', async (err, data) => {
328
+ fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
286
329
  if (err) throw err;
287
- let importData = JSON.parse(data);
330
+ const importData = JSON.parse(data);
288
331
  // check if this is a file with multiple agents and get agent by id
289
332
  if (importData.agents && importData.agents[agentId]) {
290
- importData = importData.agents[agentId];
333
+ const agent = importData.agents[agentId];
334
+ importData.agents = {};
335
+ importData.agents[agentId] = agent;
291
336
  } else if (importData.agents) {
292
- importData = null;
337
+ importData.agents = null;
293
338
  }
294
339
  // if an agentId was specified, only import the matching agent
295
- if (importData && agentId === importData.agents._id) {
296
- if (!verbose) showSpinner(`Importing ${agentId}...`);
340
+ let spinnerId;
341
+ if (importData.agents) {
342
+ if (!verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
297
343
  try {
298
- if (verbose) showSpinner(`Importing ${agentId}...`);
299
- await frodo.agent.importAgent(agentId, importData);
300
- succeedSpinner(`Imported ${agentId}.`);
344
+ if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
345
+ await importAgent(agentId, importData);
346
+ stopProgressIndicator(spinnerId, `Imported ${agentId}.`, 'success');
301
347
  } catch (importError) {
302
- if (verbose) showSpinner(`Importing ${agentId}...`);
303
- failSpinner(`${importError}`);
348
+ if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
349
+ stopProgressIndicator(spinnerId, `${importError}`, 'fail');
304
350
  }
305
351
  } else {
306
- showSpinner(`Importing ${agentId}...`);
307
- failSpinner(`${agentId} not found!`);
352
+ spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
353
+ stopProgressIndicator(spinnerId, `${agentId} not found!`, 'fail');
308
354
  }
309
355
  });
310
356
  }
@@ -315,25 +361,26 @@ export async function importAgentFromFile(agentId, file) {
315
361
  */
316
362
  export async function importFirstAgentFromFile(file) {
317
363
  const verbose = state.getVerbose();
318
- fs.readFile(file, 'utf8', async (err, data) => {
364
+ fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
319
365
  if (err) throw err;
320
366
  const importData = JSON.parse(data);
367
+ let spinnerId;
321
368
  if (Object.keys(importData.agents).length > 0) {
322
369
  for (const agent of Object.values(importData.agents)) {
323
- if (!verbose) showSpinner(`Importing ${agent['_id']}...`);
370
+ if (!verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agent['_id']}...`);
324
371
  try {
325
- if (verbose) showSpinner(`Importing ${agent['_id']}...`);
326
- await frodo.agent.importAgent(agent['_id'], importData);
327
- succeedSpinner(`Imported ${agent['_id']}.`);
372
+ if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agent['_id']}...`);
373
+ await importAgent(agent['_id'], importData);
374
+ stopProgressIndicator(spinnerId, `Imported ${agent['_id']}.`, 'success');
328
375
  } catch (importError) {
329
- if (verbose) showSpinner(`Importing ${agent['_id']}...`);
330
- failSpinner(`${importError}`);
376
+ if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agent['_id']}...`);
377
+ stopProgressIndicator(spinnerId, `${importError}`, 'fail');
331
378
  }
332
379
  return;
333
380
  }
334
381
  } else {
335
- showSpinner(`Importing...`);
336
- failSpinner(`No agents found!`);
382
+ spinnerId = createProgressIndicator('indeterminate', 0, `Importing...`);
383
+ stopProgressIndicator(spinnerId, `No agents found!`, 'fail');
337
384
  }
338
385
  });
339
386
  }
@@ -344,12 +391,13 @@ export async function importFirstAgentFromFile(file) {
344
391
  */
345
392
  export async function importAgentsFromFile(file) {
346
393
  debugMessage(`importAgentsFromFile: start`);
347
- fs.readFile(file, 'utf8', async (err, data) => {
394
+ const filePath = getFilePath(file);
395
+ fs.readFile(filePath, 'utf8', async (err, data) => {
348
396
  if (err) throw err;
349
- debugMessage(`importAgentsFromFile: importing ${file}`);
397
+ debugMessage(`importAgentsFromFile: importing ${filePath}`);
350
398
  const importData = JSON.parse(data);
351
399
  try {
352
- await frodo.agent.importAgents(importData);
400
+ await importAgents(importData);
353
401
  } catch (error) {
354
402
  printMessage(`${error.message}`, 'error');
355
403
  printMessage(error.response.status, 'error');
@@ -362,7 +410,7 @@ export async function importAgentsFromFile(file) {
362
410
  * Import all agents from separate files
363
411
  */
364
412
  export async function importAgentsFromFiles() {
365
- const names = fs.readdirSync('.');
413
+ const names = fs.readdirSync(getWorkingDirectory());
366
414
  const agentFiles = names.filter(name => name.toLowerCase().endsWith('.agent.json'));
367
415
  for (const file of agentFiles) {
368
416
  await importAgentsFromFile(file);
@@ -377,28 +425,31 @@ export async function importAgentsFromFiles() {
377
425
  export async function importIdentityGatewayAgentFromFile(agentId, file) {
378
426
  debugMessage(`cli.AgentOps.importIdentityGatewayAgentFromFile: start`);
379
427
  const verbose = state.getVerbose();
380
- fs.readFile(file, 'utf8', async (err, data) => {
428
+ fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
381
429
  if (err) throw err;
382
- let importData = JSON.parse(data);
430
+ const importData = JSON.parse(data);
383
431
  // check if this is a file with multiple agents and get agent by id
384
432
  if (importData.agents && importData.agents[agentId]) {
385
- importData = importData.agents[agentId];
433
+ const agent = importData.agents[agentId];
434
+ importData.agents = {};
435
+ importData.agents[agentId] = agent;
386
436
  } else if (importData.agents) {
387
- importData = null;
437
+ importData.agents = null;
388
438
  }
389
439
  // if an agentId was specified, only import the matching agent
390
- if (importData && agentId === importData.agents._id) {
391
- if (!verbose) showSpinner(`Importing ${agentId}...`);
440
+ let spinnerId;
441
+ if (importData.agents) {
442
+ if (!verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
392
443
  try {
393
- if (verbose) showSpinner(`Importing ${agentId}...`);
394
- await frodo.agent.importIdentityGatewayAgent(agentId, importData);
395
- succeedSpinner(`Imported ${agentId}.`);
444
+ if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
445
+ await importIdentityGatewayAgent(agentId, importData);
446
+ stopProgressIndicator(spinnerId, `Imported ${agentId}.`, 'success');
396
447
  } catch (importError) {
397
- failSpinner(`${importError}`);
448
+ stopProgressIndicator(spinnerId, `${importError}`, 'fail');
398
449
  }
399
450
  } else {
400
- showSpinner(`Importing ${agentId}...`);
401
- failSpinner(`${agentId} not found!`);
451
+ spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
452
+ stopProgressIndicator(spinnerId, `${agentId} not found!`, 'fail');
402
453
  }
403
454
  debugMessage(`cli.AgentOps.importIdentityGatewayAgentFromFile: end`);
404
455
  });
@@ -411,24 +462,25 @@ export async function importIdentityGatewayAgentFromFile(agentId, file) {
411
462
  export async function importFirstIdentityGatewayAgentFromFile(file) {
412
463
  debugMessage(`cli.AgentOps.importFirstIdentityGatewayAgentFromFile: start`);
413
464
  const verbose = state.getVerbose();
414
- fs.readFile(file, 'utf8', async (err, data) => {
465
+ fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
415
466
  if (err) throw err;
416
467
  const importData = JSON.parse(data);
468
+ let spinnerId;
417
469
  if (Object.keys(importData.agents).length > 0) {
418
470
  for (const agent of Object.values(importData.agents)) {
419
- if (!verbose) showSpinner(`Importing ${agent['_id']}...`);
471
+ if (!verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agent['_id']}...`);
420
472
  try {
421
- if (verbose) showSpinner(`Importing ${agent['_id']}...`);
422
- await frodo.agent.importIdentityGatewayAgent(agent['_id'], importData);
423
- succeedSpinner(`Imported ${agent['_id']}.`);
473
+ if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agent['_id']}...`);
474
+ await importIdentityGatewayAgent(agent['_id'], importData);
475
+ stopProgressIndicator(spinnerId, `Imported ${agent['_id']}.`, 'success');
424
476
  } catch (importError) {
425
- failSpinner(`${importError}`);
477
+ stopProgressIndicator(spinnerId, `${importError}`, 'fail');
426
478
  }
427
479
  return;
428
480
  }
429
481
  } else {
430
- showSpinner(`Importing...`);
431
- failSpinner(`No agents found!`);
482
+ spinnerId = createProgressIndicator('indeterminate', 0, `Importing...`);
483
+ stopProgressIndicator(spinnerId, `No agents found!`, 'fail');
432
484
  }
433
485
  debugMessage(`cli.AgentOps.importFirstIdentityGatewayAgentFromFile: end`);
434
486
  });
@@ -440,12 +492,13 @@ export async function importFirstIdentityGatewayAgentFromFile(file) {
440
492
  */
441
493
  export async function importIdentityGatewayAgentsFromFile(file) {
442
494
  debugMessage(`cli.AgentOps.importIdentityGatewayAgentsFromFile: start`);
443
- fs.readFile(file, 'utf8', async (err, data) => {
495
+ const filePath = getFilePath(file);
496
+ fs.readFile(filePath, 'utf8', async (err, data) => {
444
497
  if (err) throw err;
445
- debugMessage(`cli.AgentOps.importIdentityGatewayAgentsFromFile: importing ${file}`);
498
+ debugMessage(`cli.AgentOps.importIdentityGatewayAgentsFromFile: importing ${filePath}`);
446
499
  const importData = JSON.parse(data);
447
500
  try {
448
- await frodo.agent.importIdentityGatewayAgents(importData);
501
+ await importIdentityGatewayAgents(importData);
449
502
  } catch (error) {
450
503
  printMessage(`${error.message}`, 'error');
451
504
  printMessage(error.response.status, 'error');
@@ -459,7 +512,7 @@ export async function importIdentityGatewayAgentsFromFile(file) {
459
512
  */
460
513
  export async function importIdentityGatewayAgentsFromFiles() {
461
514
  debugMessage(`cli.AgentOps.importIdentityGatewayAgentsFromFiles: start`);
462
- const names = fs.readdirSync('.');
515
+ const names = fs.readdirSync(getWorkingDirectory());
463
516
  const agentFiles = names.filter(name => name.toLowerCase().endsWith('.agent.json'));
464
517
  for (const file of agentFiles) {
465
518
  await importIdentityGatewayAgentsFromFile(file);
@@ -475,28 +528,31 @@ export async function importIdentityGatewayAgentsFromFiles() {
475
528
  export async function importJavaAgentFromFile(agentId, file) {
476
529
  debugMessage(`cli.AgentOps.importJavaAgentFromFile: start`);
477
530
  const verbose = state.getVerbose();
478
- fs.readFile(file, 'utf8', async (err, data) => {
531
+ fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
479
532
  if (err) throw err;
480
- let importData = JSON.parse(data);
533
+ const importData = JSON.parse(data);
481
534
  // check if this is a file with multiple agents and get agent by id
482
535
  if (importData.agents && importData.agents[agentId]) {
483
- importData = importData.agents[agentId];
536
+ const agent = importData.agents[agentId];
537
+ importData.agents = {};
538
+ importData.agents[agentId] = agent;
484
539
  } else if (importData.agents) {
485
- importData = null;
540
+ importData.agents = null;
486
541
  }
487
542
  // if an agentId was specified, only import the matching agent
488
- if (importData && agentId === importData.agents._id) {
489
- if (!verbose) showSpinner(`Importing ${agentId}...`);
543
+ let spinnerId;
544
+ if (importData.agents) {
545
+ if (!verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
490
546
  try {
491
- if (verbose) showSpinner(`Importing ${agentId}...`);
492
- await frodo.agent.importJavaAgent(agentId, importData);
493
- succeedSpinner(`Imported ${agentId}.`);
547
+ if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
548
+ await importJavaAgent(agentId, importData);
549
+ stopProgressIndicator(spinnerId, `Imported ${agentId}.`, 'success');
494
550
  } catch (importError) {
495
- failSpinner(`${importError}`);
551
+ stopProgressIndicator(spinnerId, `${importError}`, 'fail');
496
552
  }
497
553
  } else {
498
- showSpinner(`Importing ${agentId}...`);
499
- failSpinner(`${agentId} not found!`);
554
+ spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
555
+ stopProgressIndicator(spinnerId, `${agentId} not found!`, 'fail');
500
556
  }
501
557
  debugMessage(`cli.AgentOps.importJavaAgentFromFile: end`);
502
558
  });
@@ -509,24 +565,25 @@ export async function importJavaAgentFromFile(agentId, file) {
509
565
  export async function importFirstJavaAgentFromFile(file) {
510
566
  debugMessage(`cli.AgentOps.importFirstJavaAgentFromFile: start`);
511
567
  const verbose = state.getVerbose();
512
- fs.readFile(file, 'utf8', async (err, data) => {
568
+ fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
513
569
  if (err) throw err;
514
570
  const importData = JSON.parse(data);
571
+ let spinnerId;
515
572
  if (Object.keys(importData.agents).length > 0) {
516
573
  for (const agent of Object.values(importData.agents)) {
517
- if (!verbose) showSpinner(`Importing ${agent['_id']}...`);
574
+ if (!verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agent['_id']}...`);
518
575
  try {
519
- if (verbose) showSpinner(`Importing ${agent['_id']}...`);
520
- await frodo.agent.importJavaAgent(agent['_id'], importData);
521
- succeedSpinner(`Imported ${agent['_id']}.`);
576
+ if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agent['_id']}...`);
577
+ await importJavaAgent(agent['_id'], importData);
578
+ stopProgressIndicator(spinnerId, `Imported ${agent['_id']}.`, 'success');
522
579
  } catch (importError) {
523
- failSpinner(`${importError}`);
580
+ stopProgressIndicator(spinnerId, `${importError}`, 'fail');
524
581
  }
525
582
  return;
526
583
  }
527
584
  } else {
528
- showSpinner(`Importing...`);
529
- failSpinner(`No agents found!`);
585
+ spinnerId = createProgressIndicator('indeterminate', 0, `Importing...`);
586
+ stopProgressIndicator(spinnerId, `No agents found!`, 'fail');
530
587
  }
531
588
  debugMessage(`cli.AgentOps.importFirstJavaAgentFromFile: end`);
532
589
  });
@@ -538,12 +595,13 @@ export async function importFirstJavaAgentFromFile(file) {
538
595
  */
539
596
  export async function importJavaAgentsFromFile(file) {
540
597
  debugMessage(`cli.AgentOps.importJavaAgentsFromFile: start`);
541
- fs.readFile(file, 'utf8', async (err, data) => {
598
+ const filePath = getFilePath(file);
599
+ fs.readFile(filePath, 'utf8', async (err, data) => {
542
600
  if (err) throw err;
543
- debugMessage(`cli.AgentOps.importJavaAgentsFromFile: importing ${file}`);
601
+ debugMessage(`cli.AgentOps.importJavaAgentsFromFile: importing ${filePath}`);
544
602
  const importData = JSON.parse(data);
545
603
  try {
546
- await frodo.agent.importJavaAgents(importData);
604
+ await importJavaAgents(importData);
547
605
  } catch (error) {
548
606
  printMessage(`${error.message}`, 'error');
549
607
  printMessage(error.response.status, 'error');
@@ -557,7 +615,7 @@ export async function importJavaAgentsFromFile(file) {
557
615
  */
558
616
  export async function importJavaAgentsFromFiles() {
559
617
  debugMessage(`cli.AgentOps.importJavaAgentsFromFiles: start`);
560
- const names = fs.readdirSync('.');
618
+ const names = fs.readdirSync(getWorkingDirectory());
561
619
  const agentFiles = names.filter(name => name.toLowerCase().endsWith('.agent.json'));
562
620
  for (const file of agentFiles) {
563
621
  await importJavaAgentsFromFile(file);
@@ -573,28 +631,31 @@ export async function importJavaAgentsFromFiles() {
573
631
  export async function importWebAgentFromFile(agentId, file) {
574
632
  debugMessage(`cli.AgentOps.importWebAgentFromFile: start`);
575
633
  const verbose = state.getVerbose();
576
- fs.readFile(file, 'utf8', async (err, data) => {
634
+ fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
577
635
  if (err) throw err;
578
- let importData = JSON.parse(data);
636
+ const importData = JSON.parse(data);
579
637
  // check if this is a file with multiple agents and get agent by id
580
638
  if (importData.agents && importData.agents[agentId]) {
581
- importData = importData.agents[agentId];
639
+ const agent = importData.agents[agentId];
640
+ importData.agents = {};
641
+ importData.agents[agentId] = agent;
582
642
  } else if (importData.agents) {
583
- importData = null;
643
+ importData.agents = null;
584
644
  }
585
645
  // if an agentId was specified, only import the matching agent
586
- if (importData && agentId === importData.agents._id) {
587
- if (!verbose) showSpinner(`Importing ${agentId}...`);
646
+ let spinnerId;
647
+ if (importData.agents) {
648
+ if (!verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
588
649
  try {
589
- if (verbose) showSpinner(`Importing ${agentId}...`);
590
- await frodo.agent.importWebAgent(agentId, importData);
591
- succeedSpinner(`Imported ${agentId}.`);
650
+ if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
651
+ await importWebAgent(agentId, importData);
652
+ stopProgressIndicator(spinnerId, `Imported ${agentId}.`, 'success');
592
653
  } catch (importError) {
593
- failSpinner(`${importError}`);
654
+ stopProgressIndicator(spinnerId, `${importError}`, 'fail');
594
655
  }
595
656
  } else {
596
- showSpinner(`Importing ${agentId}...`);
597
- failSpinner(`${agentId} not found!`);
657
+ spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agentId}...`);
658
+ stopProgressIndicator(spinnerId, `${agentId} not found!`, 'fail');
598
659
  }
599
660
  debugMessage(`cli.AgentOps.importWebAgentFromFile: end`);
600
661
  });
@@ -607,24 +668,25 @@ export async function importWebAgentFromFile(agentId, file) {
607
668
  export async function importFirstWebAgentFromFile(file) {
608
669
  debugMessage(`cli.AgentOps.importFirstWebAgentFromFile: start`);
609
670
  const verbose = state.getVerbose();
610
- fs.readFile(file, 'utf8', async (err, data) => {
671
+ fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
611
672
  if (err) throw err;
612
673
  const importData = JSON.parse(data);
674
+ let spinnerId;
613
675
  if (Object.keys(importData.agents).length > 0) {
614
676
  for (const agent of Object.values(importData.agents)) {
615
- if (!verbose) showSpinner(`Importing ${agent['_id']}...`);
677
+ if (!verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agent['_id']}...`);
616
678
  try {
617
- if (verbose) showSpinner(`Importing ${agent['_id']}...`);
618
- await frodo.agent.importWebAgent(agent['_id'], importData);
619
- succeedSpinner(`Imported ${agent['_id']}.`);
679
+ if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `Importing ${agent['_id']}...`);
680
+ await importWebAgent(agent['_id'], importData);
681
+ stopProgressIndicator(spinnerId, `Imported ${agent['_id']}.`, 'success');
620
682
  } catch (importError) {
621
- failSpinner(`caught it here ${importError}`);
683
+ stopProgressIndicator(spinnerId, `caught it here ${importError}`, 'fail');
622
684
  }
623
685
  break;
624
686
  }
625
687
  } else {
626
- showSpinner(`Importing...`);
627
- failSpinner(`No agents found!`);
688
+ spinnerId = createProgressIndicator('indeterminate', 0, `Importing...`);
689
+ stopProgressIndicator(spinnerId, `No agents found!`, 'fail');
628
690
  }
629
691
  debugMessage(`cli.AgentOps.importFirstWebAgentFromFile: end`);
630
692
  });
@@ -636,12 +698,13 @@ export async function importFirstWebAgentFromFile(file) {
636
698
  */
637
699
  export async function importWebAgentsFromFile(file) {
638
700
  debugMessage(`cli.AgentOps.importWebAgentsFromFile: start`);
639
- fs.readFile(file, 'utf8', async (err, data) => {
701
+ const filePath = getFilePath(file);
702
+ fs.readFile(filePath, 'utf8', async (err, data) => {
640
703
  if (err) throw err;
641
- debugMessage(`cli.AgentOps.importWebAgentsFromFile: importing ${file}`);
704
+ debugMessage(`cli.AgentOps.importWebAgentsFromFile: importing ${filePath}`);
642
705
  const importData = JSON.parse(data);
643
706
  try {
644
- await frodo.agent.importWebAgents(importData);
707
+ await importWebAgents(importData);
645
708
  } catch (error) {
646
709
  printMessage(`${error.message}`, 'error');
647
710
  printMessage(error.response.status, 'error');
@@ -655,11 +718,11 @@ export async function importWebAgentsFromFile(file) {
655
718
  */
656
719
  export async function importWebAgentsFromFiles() {
657
720
  debugMessage(`cli.AgentOps.importWebAgentsFromFiles: start`);
658
- const names = fs.readdirSync('.');
721
+ const names = fs.readdirSync(getWorkingDirectory());
659
722
  const agentFiles = names.filter(name => name.toLowerCase().endsWith('.agent.json'));
660
723
  for (const file of agentFiles) {
661
724
  await importWebAgentsFromFile(file);
662
725
  }
663
726
  debugMessage(`cli.AgentOps.importWebAgentsFromFiles: end`);
664
727
  }
665
- //# sourceMappingURL=AgentOps.js.map
728
+ //# sourceMappingURL=AgentOps.js.map