@rockcarver/frodo-cli 0.24.5 → 2.0.0-2

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 (337) hide show
  1. package/.vscode/launch.json +15 -0
  2. package/CHANGELOG.md +9 -1
  3. package/esm/app.js +2 -5
  4. package/esm/app.js.map +1 -1
  5. package/esm/cli/FrodoCommand.js +10 -10
  6. package/esm/cli/FrodoCommand.js.map +1 -1
  7. package/esm/cli/_template/something-delete.js +2 -5
  8. package/esm/cli/_template/something-delete.js.map +1 -1
  9. package/esm/cli/_template/something-describe.js +2 -5
  10. package/esm/cli/_template/something-describe.js.map +1 -1
  11. package/esm/cli/_template/something-else-delete.js +2 -5
  12. package/esm/cli/_template/something-else-delete.js.map +1 -1
  13. package/esm/cli/_template/something-else-describe.js +2 -5
  14. package/esm/cli/_template/something-else-describe.js.map +1 -1
  15. package/esm/cli/_template/something-else-export.js +2 -5
  16. package/esm/cli/_template/something-else-export.js.map +1 -1
  17. package/esm/cli/_template/something-else-import.js +2 -5
  18. package/esm/cli/_template/something-else-import.js.map +1 -1
  19. package/esm/cli/_template/something-else-list.js +2 -5
  20. package/esm/cli/_template/something-else-list.js.map +1 -1
  21. package/esm/cli/_template/something-export.js +2 -5
  22. package/esm/cli/_template/something-export.js.map +1 -1
  23. package/esm/cli/_template/something-import.js +2 -5
  24. package/esm/cli/_template/something-import.js.map +1 -1
  25. package/esm/cli/_template/something-list.js +2 -5
  26. package/esm/cli/_template/something-list.js.map +1 -1
  27. package/esm/cli/_template/something-other-delete.js +2 -5
  28. package/esm/cli/_template/something-other-delete.js.map +1 -1
  29. package/esm/cli/_template/something-other-describe.js +2 -5
  30. package/esm/cli/_template/something-other-describe.js.map +1 -1
  31. package/esm/cli/_template/something-other-export.js +2 -5
  32. package/esm/cli/_template/something-other-export.js.map +1 -1
  33. package/esm/cli/_template/something-other-import.js +2 -5
  34. package/esm/cli/_template/something-other-import.js.map +1 -1
  35. package/esm/cli/_template/something-other-list.js +2 -5
  36. package/esm/cli/_template/something-other-list.js.map +1 -1
  37. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js +3 -9
  38. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js.map +1 -1
  39. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js +4 -11
  40. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js.map +1 -1
  41. package/esm/cli/admin/admin-get-access-token.js +3 -9
  42. package/esm/cli/admin/admin-get-access-token.js.map +1 -1
  43. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js +3 -9
  44. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js.map +1 -1
  45. package/esm/cli/admin/admin-hide-generic-extension-attributes.js +3 -9
  46. package/esm/cli/admin/admin-hide-generic-extension-attributes.js.map +1 -1
  47. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js +3 -9
  48. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js.map +1 -1
  49. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js +3 -9
  50. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js.map +1 -1
  51. package/esm/cli/admin/admin-list-static-user-mappings.js +3 -9
  52. package/esm/cli/admin/admin-list-static-user-mappings.js.map +1 -1
  53. package/esm/cli/admin/admin-remove-static-user-mapping.js +3 -9
  54. package/esm/cli/admin/admin-remove-static-user-mapping.js.map +1 -1
  55. package/esm/cli/admin/admin-repair-org-model.js +3 -9
  56. package/esm/cli/admin/admin-repair-org-model.js.map +1 -1
  57. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js +3 -9
  58. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js.map +1 -1
  59. package/esm/cli/admin/admin-show-generic-extension-attributes.js +3 -9
  60. package/esm/cli/admin/admin-show-generic-extension-attributes.js.map +1 -1
  61. package/esm/cli/agent/agent-delete.js +4 -11
  62. package/esm/cli/agent/agent-delete.js.map +1 -1
  63. package/esm/cli/agent/agent-describe.js +2 -5
  64. package/esm/cli/agent/agent-describe.js.map +1 -1
  65. package/esm/cli/agent/agent-export.js +2 -5
  66. package/esm/cli/agent/agent-export.js.map +1 -1
  67. package/esm/cli/agent/agent-gateway-delete.js +4 -11
  68. package/esm/cli/agent/agent-gateway-delete.js.map +1 -1
  69. package/esm/cli/agent/agent-gateway-describe.js +2 -5
  70. package/esm/cli/agent/agent-gateway-describe.js.map +1 -1
  71. package/esm/cli/agent/agent-gateway-export.js +2 -5
  72. package/esm/cli/agent/agent-gateway-export.js.map +1 -1
  73. package/esm/cli/agent/agent-gateway-import.js +2 -5
  74. package/esm/cli/agent/agent-gateway-import.js.map +1 -1
  75. package/esm/cli/agent/agent-gateway-list.js +2 -5
  76. package/esm/cli/agent/agent-gateway-list.js.map +1 -1
  77. package/esm/cli/agent/agent-import.js +2 -5
  78. package/esm/cli/agent/agent-import.js.map +1 -1
  79. package/esm/cli/agent/agent-java-delete.js +4 -11
  80. package/esm/cli/agent/agent-java-delete.js.map +1 -1
  81. package/esm/cli/agent/agent-java-describe.js +2 -5
  82. package/esm/cli/agent/agent-java-describe.js.map +1 -1
  83. package/esm/cli/agent/agent-java-export.js +2 -5
  84. package/esm/cli/agent/agent-java-export.js.map +1 -1
  85. package/esm/cli/agent/agent-java-import.js +2 -5
  86. package/esm/cli/agent/agent-java-import.js.map +1 -1
  87. package/esm/cli/agent/agent-java-list.js +2 -5
  88. package/esm/cli/agent/agent-java-list.js.map +1 -1
  89. package/esm/cli/agent/agent-list.js +2 -5
  90. package/esm/cli/agent/agent-list.js.map +1 -1
  91. package/esm/cli/agent/agent-web-delete.js +4 -11
  92. package/esm/cli/agent/agent-web-delete.js.map +1 -1
  93. package/esm/cli/agent/agent-web-describe.js +2 -5
  94. package/esm/cli/agent/agent-web-describe.js.map +1 -1
  95. package/esm/cli/agent/agent-web-export.js +2 -5
  96. package/esm/cli/agent/agent-web-export.js.map +1 -1
  97. package/esm/cli/agent/agent-web-import.js +2 -5
  98. package/esm/cli/agent/agent-web-import.js.map +1 -1
  99. package/esm/cli/agent/agent-web-list.js +2 -5
  100. package/esm/cli/agent/agent-web-list.js.map +1 -1
  101. package/esm/cli/app/app-delete.js +2 -5
  102. package/esm/cli/app/app-delete.js.map +1 -1
  103. package/esm/cli/app/app-describe.js +2 -5
  104. package/esm/cli/app/app-describe.js.map +1 -1
  105. package/esm/cli/app/app-export.js +4 -7
  106. package/esm/cli/app/app-export.js.map +1 -1
  107. package/esm/cli/app/app-import.js +5 -8
  108. package/esm/cli/app/app-import.js.map +1 -1
  109. package/esm/cli/app/app-list.js +3 -6
  110. package/esm/cli/app/app-list.js.map +1 -1
  111. package/esm/cli/authz/authz-policy-delete.js +4 -7
  112. package/esm/cli/authz/authz-policy-delete.js.map +1 -1
  113. package/esm/cli/authz/authz-policy-describe.js +2 -5
  114. package/esm/cli/authz/authz-policy-describe.js.map +1 -1
  115. package/esm/cli/authz/authz-policy-export.js +6 -9
  116. package/esm/cli/authz/authz-policy-export.js.map +1 -1
  117. package/esm/cli/authz/authz-policy-import.js +5 -8
  118. package/esm/cli/authz/authz-policy-import.js.map +1 -1
  119. package/esm/cli/authz/authz-policy-list.js +3 -6
  120. package/esm/cli/authz/authz-policy-list.js.map +1 -1
  121. package/esm/cli/authz/authz-set-delete.js +3 -6
  122. package/esm/cli/authz/authz-set-delete.js.map +1 -1
  123. package/esm/cli/authz/authz-set-describe.js +2 -5
  124. package/esm/cli/authz/authz-set-describe.js.map +1 -1
  125. package/esm/cli/authz/authz-set-export.js +4 -7
  126. package/esm/cli/authz/authz-set-export.js.map +1 -1
  127. package/esm/cli/authz/authz-set-import.js +5 -8
  128. package/esm/cli/authz/authz-set-import.js.map +1 -1
  129. package/esm/cli/authz/authz-set-list.js +2 -5
  130. package/esm/cli/authz/authz-set-list.js.map +1 -1
  131. package/esm/cli/authz/authz-type-delete.js +4 -7
  132. package/esm/cli/authz/authz-type-delete.js.map +1 -1
  133. package/esm/cli/authz/authz-type-describe.js +3 -6
  134. package/esm/cli/authz/authz-type-describe.js.map +1 -1
  135. package/esm/cli/authz/authz-type-export.js +5 -8
  136. package/esm/cli/authz/authz-type-export.js.map +1 -1
  137. package/esm/cli/authz/authz-type-import.js +6 -9
  138. package/esm/cli/authz/authz-type-import.js.map +1 -1
  139. package/esm/cli/authz/authz-type-list.js +2 -5
  140. package/esm/cli/authz/authz-type-list.js.map +1 -1
  141. package/esm/cli/conn/conn-delete.js +2 -5
  142. package/esm/cli/conn/conn-delete.js.map +1 -1
  143. package/esm/cli/conn/conn-describe.js +1 -4
  144. package/esm/cli/conn/conn-describe.js.map +1 -1
  145. package/esm/cli/conn/conn-list.js +1 -4
  146. package/esm/cli/conn/conn-list.js.map +1 -1
  147. package/esm/cli/conn/conn-save.js +6 -16
  148. package/esm/cli/conn/conn-save.js.map +1 -1
  149. package/esm/cli/email/email-template-export.js +4 -7
  150. package/esm/cli/email/email-template-export.js.map +1 -1
  151. package/esm/cli/email/email-template-import.js +5 -8
  152. package/esm/cli/email/email-template-import.js.map +1 -1
  153. package/esm/cli/email/email-template-list.js +2 -5
  154. package/esm/cli/email/email-template-list.js.map +1 -1
  155. package/esm/cli/esv/esv-apply.js +6 -16
  156. package/esm/cli/esv/esv-apply.js.map +1 -1
  157. package/esm/cli/esv/esv-secret-create.js +3 -8
  158. package/esm/cli/esv/esv-secret-create.js.map +1 -1
  159. package/esm/cli/esv/esv-secret-delete.js +6 -12
  160. package/esm/cli/esv/esv-secret-delete.js.map +1 -1
  161. package/esm/cli/esv/esv-secret-describe.js +3 -8
  162. package/esm/cli/esv/esv-secret-describe.js.map +1 -1
  163. package/esm/cli/esv/esv-secret-export.js +2 -5
  164. package/esm/cli/esv/esv-secret-export.js.map +1 -1
  165. package/esm/cli/esv/esv-secret-import.js +2 -5
  166. package/esm/cli/esv/esv-secret-import.js.map +1 -1
  167. package/esm/cli/esv/esv-secret-list.js +3 -8
  168. package/esm/cli/esv/esv-secret-list.js.map +1 -1
  169. package/esm/cli/esv/esv-secret-set.js +4 -9
  170. package/esm/cli/esv/esv-secret-set.js.map +1 -1
  171. package/esm/cli/esv/esv-secret-version-activate.js +3 -8
  172. package/esm/cli/esv/esv-secret-version-activate.js.map +1 -1
  173. package/esm/cli/esv/esv-secret-version-create.js +4 -9
  174. package/esm/cli/esv/esv-secret-version-create.js.map +1 -1
  175. package/esm/cli/esv/esv-secret-version-deactivate.js +3 -8
  176. package/esm/cli/esv/esv-secret-version-deactivate.js.map +1 -1
  177. package/esm/cli/esv/esv-secret-version-delete.js +5 -10
  178. package/esm/cli/esv/esv-secret-version-delete.js.map +1 -1
  179. package/esm/cli/esv/esv-secret-version-list.js +4 -9
  180. package/esm/cli/esv/esv-secret-version-list.js.map +1 -1
  181. package/esm/cli/esv/esv-variable-create.js +3 -8
  182. package/esm/cli/esv/esv-variable-create.js.map +1 -1
  183. package/esm/cli/esv/esv-variable-delete.js +6 -12
  184. package/esm/cli/esv/esv-variable-delete.js.map +1 -1
  185. package/esm/cli/esv/esv-variable-describe.js +3 -8
  186. package/esm/cli/esv/esv-variable-describe.js.map +1 -1
  187. package/esm/cli/esv/esv-variable-export.js +2 -5
  188. package/esm/cli/esv/esv-variable-export.js.map +1 -1
  189. package/esm/cli/esv/esv-variable-import.js +2 -5
  190. package/esm/cli/esv/esv-variable-import.js.map +1 -1
  191. package/esm/cli/esv/esv-variable-list.js +3 -8
  192. package/esm/cli/esv/esv-variable-list.js.map +1 -1
  193. package/esm/cli/esv/esv-variable-set.js +5 -11
  194. package/esm/cli/esv/esv-variable-set.js.map +1 -1
  195. package/esm/cli/idm/idm-count.js +2 -5
  196. package/esm/cli/idm/idm-count.js.map +1 -1
  197. package/esm/cli/idm/idm-export.js +4 -7
  198. package/esm/cli/idm/idm-export.js.map +1 -1
  199. package/esm/cli/idm/idm-import.js +5 -8
  200. package/esm/cli/idm/idm-import.js.map +1 -1
  201. package/esm/cli/idm/idm-list.js +2 -5
  202. package/esm/cli/idm/idm-list.js.map +1 -1
  203. package/esm/cli/idp/idp-export.js +2 -5
  204. package/esm/cli/idp/idp-export.js.map +1 -1
  205. package/esm/cli/idp/idp-import.js +5 -8
  206. package/esm/cli/idp/idp-import.js.map +1 -1
  207. package/esm/cli/idp/idp-list.js +2 -5
  208. package/esm/cli/idp/idp-list.js.map +1 -1
  209. package/esm/cli/info/info.js +3 -9
  210. package/esm/cli/info/info.js.map +1 -1
  211. package/esm/cli/journey/journey-delete.js +5 -12
  212. package/esm/cli/journey/journey-delete.js.map +1 -1
  213. package/esm/cli/journey/journey-describe.js +7 -15
  214. package/esm/cli/journey/journey-describe.js.map +1 -1
  215. package/esm/cli/journey/journey-disable.js +3 -9
  216. package/esm/cli/journey/journey-disable.js.map +1 -1
  217. package/esm/cli/journey/journey-enable.js +3 -9
  218. package/esm/cli/journey/journey-enable.js.map +1 -1
  219. package/esm/cli/journey/journey-export.js +4 -7
  220. package/esm/cli/journey/journey-export.js.map +1 -1
  221. package/esm/cli/journey/journey-import.js +5 -8
  222. package/esm/cli/journey/journey-import.js.map +1 -1
  223. package/esm/cli/journey/journey-list.js +2 -5
  224. package/esm/cli/journey/journey-list.js.map +1 -1
  225. package/esm/cli/journey/journey-prune.js +4 -11
  226. package/esm/cli/journey/journey-prune.js.map +1 -1
  227. package/esm/cli/logging/logs-fetch.js +7 -17
  228. package/esm/cli/logging/logs-fetch.js.map +1 -1
  229. package/esm/cli/logging/logs-list.js +5 -15
  230. package/esm/cli/logging/logs-list.js.map +1 -1
  231. package/esm/cli/logging/logs-tail.js +7 -17
  232. package/esm/cli/logging/logs-tail.js.map +1 -1
  233. package/esm/cli/realm/realm-add-custom-domain.js +3 -8
  234. package/esm/cli/realm/realm-add-custom-domain.js.map +1 -1
  235. package/esm/cli/realm/realm-describe.js +4 -12
  236. package/esm/cli/realm/realm-describe.js.map +1 -1
  237. package/esm/cli/realm/realm-list.js +3 -8
  238. package/esm/cli/realm/realm-list.js.map +1 -1
  239. package/esm/cli/realm/realm-remove-custom-domain.js +3 -9
  240. package/esm/cli/realm/realm-remove-custom-domain.js.map +1 -1
  241. package/esm/cli/saml/saml-cot-export.js +11 -15
  242. package/esm/cli/saml/saml-cot-export.js.map +1 -1
  243. package/esm/cli/saml/saml-cot-import.js +15 -19
  244. package/esm/cli/saml/saml-cot-import.js.map +1 -1
  245. package/esm/cli/saml/saml-cot-list.js +5 -9
  246. package/esm/cli/saml/saml-cot-list.js.map +1 -1
  247. package/esm/cli/saml/saml-delete.js +5 -12
  248. package/esm/cli/saml/saml-delete.js.map +1 -1
  249. package/esm/cli/saml/saml-describe.js +2 -5
  250. package/esm/cli/saml/saml-describe.js.map +1 -1
  251. package/esm/cli/saml/saml-export.js +12 -30
  252. package/esm/cli/saml/saml-export.js.map +1 -1
  253. package/esm/cli/saml/saml-import.js +15 -36
  254. package/esm/cli/saml/saml-import.js.map +1 -1
  255. package/esm/cli/saml/saml-list.js +6 -14
  256. package/esm/cli/saml/saml-list.js.map +1 -1
  257. package/esm/cli/saml/saml-metadata-export.js +3 -6
  258. package/esm/cli/saml/saml-metadata-export.js.map +1 -1
  259. package/esm/cli/script/script-delete.js +2 -5
  260. package/esm/cli/script/script-delete.js.map +1 -1
  261. package/esm/cli/script/script-describe.js +2 -5
  262. package/esm/cli/script/script-describe.js.map +1 -1
  263. package/esm/cli/script/script-export.js +2 -5
  264. package/esm/cli/script/script-export.js.map +1 -1
  265. package/esm/cli/script/script-import.js +4 -6
  266. package/esm/cli/script/script-import.js.map +1 -1
  267. package/esm/cli/script/script-list.js +4 -6
  268. package/esm/cli/script/script-list.js.map +1 -1
  269. package/esm/cli/service/service-delete.js +3 -6
  270. package/esm/cli/service/service-delete.js.map +1 -1
  271. package/esm/cli/service/service-export.js +4 -7
  272. package/esm/cli/service/service-export.js.map +1 -1
  273. package/esm/cli/service/service-import.js +5 -8
  274. package/esm/cli/service/service-import.js.map +1 -1
  275. package/esm/cli/service/service-list.js +2 -5
  276. package/esm/cli/service/service-list.js.map +1 -1
  277. package/esm/cli/theme/theme-delete.js +4 -7
  278. package/esm/cli/theme/theme-delete.js.map +1 -1
  279. package/esm/cli/theme/theme-export.js +5 -8
  280. package/esm/cli/theme/theme-export.js.map +1 -1
  281. package/esm/cli/theme/theme-import.js +6 -9
  282. package/esm/cli/theme/theme-import.js.map +1 -1
  283. package/esm/cli/theme/theme-list.js +2 -5
  284. package/esm/cli/theme/theme-list.js.map +1 -1
  285. package/esm/launch.js +4 -3
  286. package/esm/launch.js.map +1 -1
  287. package/esm/ops/AgentOps.js +49 -82
  288. package/esm/ops/AgentOps.js.map +1 -1
  289. package/esm/ops/CirclesOfTrustOps.js +217 -2
  290. package/esm/ops/CirclesOfTrustOps.js.map +1 -1
  291. package/esm/ops/ConnectionProfileOps.js +97 -8
  292. package/esm/ops/ConnectionProfileOps.js.map +1 -1
  293. package/esm/ops/EmailTemplateOps.js +16 -25
  294. package/esm/ops/EmailTemplateOps.js.map +1 -1
  295. package/esm/ops/IdmOps.js +25 -39
  296. package/esm/ops/IdmOps.js.map +1 -1
  297. package/esm/ops/IdpOps.js +10 -18
  298. package/esm/ops/IdpOps.js.map +1 -1
  299. package/esm/ops/JourneyOps.js +49 -65
  300. package/esm/ops/JourneyOps.js.map +1 -1
  301. package/esm/ops/LogOps.js +9 -17
  302. package/esm/ops/LogOps.js.map +1 -1
  303. package/esm/ops/NodeOps.js +11 -11
  304. package/esm/ops/NodeOps.js.map +1 -1
  305. package/esm/ops/OAuth2ClientOps.js +13 -29
  306. package/esm/ops/OAuth2ClientOps.js.map +1 -1
  307. package/esm/ops/OrganizationOps.js +28 -0
  308. package/esm/ops/OrganizationOps.js.map +1 -0
  309. package/esm/ops/PolicyOps.js +22 -38
  310. package/esm/ops/PolicyOps.js.map +1 -1
  311. package/esm/ops/PolicySetOps.js +19 -37
  312. package/esm/ops/PolicySetOps.js.map +1 -1
  313. package/esm/ops/RealmOps.js +109 -0
  314. package/esm/ops/RealmOps.js.map +1 -0
  315. package/esm/ops/ResourceTypeOps.js +19 -37
  316. package/esm/ops/ResourceTypeOps.js.map +1 -1
  317. package/esm/ops/Saml2Ops.js +30 -251
  318. package/esm/ops/Saml2Ops.js.map +1 -1
  319. package/esm/ops/ScriptOps.js +14 -21
  320. package/esm/ops/ScriptOps.js.map +1 -1
  321. package/esm/ops/SecretsOps.js +223 -0
  322. package/esm/ops/SecretsOps.js.map +1 -0
  323. package/esm/ops/ServiceOps.js +20 -41
  324. package/esm/ops/ServiceOps.js.map +1 -1
  325. package/esm/ops/ThemeOps.js +20 -35
  326. package/esm/ops/ThemeOps.js.map +1 -1
  327. package/esm/ops/VariablesOps.js +133 -0
  328. package/esm/ops/VariablesOps.js.map +1 -0
  329. package/esm/utils/Config.js +3 -6
  330. package/esm/utils/Config.js.map +1 -1
  331. package/esm/utils/Console.js +2 -5
  332. package/esm/utils/Console.js.map +1 -1
  333. package/esm/utils/ExportImportUtils.js +4 -6
  334. package/esm/utils/ExportImportUtils.js.map +1 -1
  335. package/esm/utils/Version.js +3 -3
  336. package/esm/utils/Version.js.map +1 -1
  337. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"journey-delete.js","names":["FrodoCommand","Option","Authenticate","Journey","state","printMessage","verboseMessage","getTokens","deleteJourney","deleteJourneys","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","journeyId","getRealm","all","help","process","exitCode","parse"],"sources":["cli/journey/journey-delete.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, Journey, state } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst { deleteJourney, deleteJourneys } = Journey;\n\nconst program = new FrodoCommand('frodo journey delete');\n\nprogram\n .description('Delete journeys/trees.')\n .addOption(\n new Option(\n '-i, --journey-id <journey>',\n 'Name of a journey/tree. If specified, -a is ignored.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Delete all the journeys/trees in a realm. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '--no-deep',\n 'No deep delete. This leaves orphaned configuration artifacts behind.'\n )\n )\n .addOption(\n new Option(\n '--verbose',\n 'Verbose output during command execution. If specified, may or may not produce additional output.'\n ).default(false, 'off')\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.journeyId && (await getTokens())) {\n verboseMessage(\n `Deleting journey ${\n options.journeyId\n } in realm \"${state.getRealm()}\"...`\n );\n deleteJourney(options.journeyId, options);\n }\n // --all -a\n else if (options.all && (await getTokens())) {\n verboseMessage('Deleting all journeys...');\n deleteJourneys(options);\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\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,YAAY,EAAEC,OAAO,EAAEC,KAAK,QAAQ,uBAAuB;AACpE,SAASC,YAAY,EAAEC,cAAc,QAAQ,qBAAqB;AAElE,MAAM;EAAEC;AAAU,CAAC,GAAGL,YAAY;AAClC,MAAM;EAAEM,aAAa;EAAEC;AAAe,CAAC,GAAGN,OAAO;AAEjD,MAAMO,OAAO,GAAG,IAAIV,YAAY,CAAC,sBAAsB,CAAC;AAExDU,OAAO,CACJC,WAAW,CAAC,wBAAwB,CAAC,CACrCC,SAAS,CACR,IAAIX,MAAM,CACR,4BAA4B,EAC5B,sDACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,WAAW,EACX,4DACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,WAAW,EACX,sEACF,CACF,CAAC,CACAW,SAAS,CACR,IAAIX,MAAM,CACR,WAAW,EACX,kGACF,CAAC,CAACY,OAAO,CAAC,KAAK,EAAE,KAAK,CACxB,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;EACA,IAAID,OAAO,CAACG,SAAS,KAAK,MAAMf,SAAS,CAAC,CAAC,CAAC,EAAE;IAC5CD,cAAc,CACX,oBACCa,OAAO,CAACG,SACT,cAAalB,KAAK,CAACmB,QAAQ,CAAC,CAAE,MACjC,CAAC;IACDf,aAAa,CAACW,OAAO,CAACG,SAAS,EAAEH,OAAO,CAAC;EAC3C;EACA;EAAA,KACK,IAAIA,OAAO,CAACK,GAAG,KAAK,MAAMjB,SAAS,CAAC,CAAC,CAAC,EAAE;IAC3CD,cAAc,CAAC,0BAA0B,CAAC;IAC1CG,cAAc,CAACU,OAAO,CAAC;EACzB;EACA;EAAA,KACK;IACHd,YAAY,CACV,sDAAsD,EACtD,OACF,CAAC;IACDK,OAAO,CAACe,IAAI,CAAC,CAAC;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHjB,OAAO,CAACkB,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"journey-delete.js","names":["FrodoCommand","Option","frodo","state","printMessage","verboseMessage","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","journeyId","login","getTokens","getRealm","authn","journey","deleteJourney","all","deleteJourneys","help","process","exitCode","parse"],"sources":["cli/journey/journey-delete.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo, state } from '@rockcarver/frodo-lib';\nimport { printMessage, verboseMessage } from '../../utils/Console';\n\nconst program = new FrodoCommand('frodo journey delete');\n\nprogram\n .description('Delete journeys/trees.')\n .addOption(\n new Option(\n '-i, --journey-id <journey>',\n 'Name of a journey/tree. If specified, -a is ignored.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Delete all the journeys/trees in a realm. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '--no-deep',\n 'No deep delete. This leaves orphaned configuration artifacts behind.'\n )\n )\n .addOption(\n new Option(\n '--verbose',\n 'Verbose output during command execution. If specified, may or may not produce additional output.'\n ).default(false, 'off')\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.journeyId && (await frodo.login.getTokens())) {\n verboseMessage(\n `Deleting journey ${\n options.journeyId\n } in realm \"${state.getRealm()}\"...`\n );\n frodo.authn.journey.deleteJourney(options.journeyId, options);\n }\n // --all -a\n else if (options.all && (await frodo.login.getTokens())) {\n verboseMessage('Deleting all journeys...');\n frodo.authn.journey.deleteJourneys(options);\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\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,EAAEC,KAAK,QAAQ,uBAAuB;AACpD,SAASC,YAAY,EAAEC,cAAc,QAAQ,qBAAqB;AAElE,MAAMC,OAAO,GAAG,IAAIN,YAAY,CAAC,sBAAsB,CAAC;AAExDM,OAAO,CACJC,WAAW,CAAC,wBAAwB,CAAC,CACrCC,SAAS,CACR,IAAIP,MAAM,CACR,4BAA4B,EAC5B,sDACF,CACF,CAAC,CACAO,SAAS,CACR,IAAIP,MAAM,CACR,WAAW,EACX,4DACF,CACF,CAAC,CACAO,SAAS,CACR,IAAIP,MAAM,CACR,WAAW,EACX,sEACF,CACF,CAAC,CACAO,SAAS,CACR,IAAIP,MAAM,CACR,WAAW,EACX,kGACF,CAAC,CAACQ,OAAO,CAAC,KAAK,EAAE,KAAK,CACxB,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;EACA,IAAID,OAAO,CAACG,SAAS,KAAK,MAAMhB,KAAK,CAACiB,KAAK,CAACC,SAAS,CAAC,CAAC,CAAC,EAAE;IACxDf,cAAc,CACX,oBACCU,OAAO,CAACG,SACT,cAAaf,KAAK,CAACkB,QAAQ,CAAC,CAAE,MACjC,CAAC;IACDnB,KAAK,CAACoB,KAAK,CAACC,OAAO,CAACC,aAAa,CAACT,OAAO,CAACG,SAAS,EAAEH,OAAO,CAAC;EAC/D;EACA;EAAA,KACK,IAAIA,OAAO,CAACU,GAAG,KAAK,MAAMvB,KAAK,CAACiB,KAAK,CAACC,SAAS,CAAC,CAAC,CAAC,EAAE;IACvDf,cAAc,CAAC,0BAA0B,CAAC;IAC1CH,KAAK,CAACoB,KAAK,CAACC,OAAO,CAACG,cAAc,CAACX,OAAO,CAAC;EAC7C;EACA;EAAA,KACK;IACHX,YAAY,CACV,sDAAsD,EACtD,OACF,CAAC;IACDE,OAAO,CAACqB,IAAI,CAAC,CAAC;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHvB,OAAO,CAACwB,KAAK,CAAC,CAAC"}
@@ -1,18 +1,10 @@
1
1
  import fs from 'fs';
2
2
  import { FrodoCommand } from '../FrodoCommand';
3
3
  import { Option } from 'commander';
4
- import { Authenticate, Journey, state } from '@rockcarver/frodo-lib';
4
+ import { frodo, state } from '@rockcarver/frodo-lib';
5
5
  import { describeJourney, describeJourneyMd } from '../../ops/JourneyOps';
6
6
  import { printMessage, verboseMessage } from '../../utils/Console';
7
7
  import { saveTextToFile } from '../../utils/ExportImportUtils';
8
- const {
9
- getTokens
10
- } = Authenticate;
11
- const {
12
- getJourneys,
13
- exportJourney,
14
- createFileParamTreeExportResolver
15
- } = Journey;
16
8
  const program = new FrodoCommand('frodo journey describe');
17
9
  program.description('If -h is supplied, describe the journey/tree indicated by -i, or all journeys/trees in the realm if no -i is supplied, otherwise describe the journey/tree export file indicated by -f.').addOption(new Option('-i, --journey-id <journey>', 'Name of a journey/tree. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the journey export file to describe. Ignored with -A.')).addOption(new Option('-F, --output-file <file>', 'Name of the file to write the output to.')).addOption(new Option('--markdown', 'Output in markdown.')).addOption(new Option('-o, --override-version <version>', "Override version. Notation: '<major>.<minor>.<patch>' e.g. '7.2.0'. Override detected version with any version. This is helpful in order to check if journeys in one environment would be compatible running in another environment (e.g. in preparation of migrating from on-prem to ForgeRock Identity Cloud.")).action(
18
10
  // implement command logic inside action handler
@@ -58,19 +50,19 @@ async (host, realm, user, password, options, command) => {
58
50
  }
59
51
  // ANSI text output
60
52
  if (!options.markdown) {
61
- await describeJourney(journeyData, createFileParamTreeExportResolver(options.file));
53
+ await describeJourney(journeyData, frodo.authn.journey.createFileParamTreeExportResolver(options.file));
62
54
  }
63
55
  // Markdown output
64
56
  else {
65
57
  // reset output file
66
58
  if (options.outputFile) saveTextToFile('', options.outputFile);
67
- await describeJourneyMd(journeyData, createFileParamTreeExportResolver(options.file));
59
+ await describeJourneyMd(journeyData, frodo.authn.journey.createFileParamTreeExportResolver(options.file));
68
60
  }
69
61
  } catch (error) {
70
62
  printMessage(error.message, 'error');
71
63
  process.exitCode = 1;
72
64
  }
73
- } else if (await getTokens()) {
65
+ } else if (await frodo.login.getTokens()) {
74
66
  verboseMessage(`Describing journey(s) in realm "${state.getRealm()}"...`);
75
67
  // override version
76
68
  if (typeof options.overrideVersion !== 'undefined') {
@@ -78,11 +70,11 @@ async (host, realm, user, password, options, command) => {
78
70
  }
79
71
  if (typeof options.journeyId === 'undefined') {
80
72
  let journeys = [];
81
- journeys = await getJourneys();
73
+ journeys = await frodo.authn.journey.getJourneys();
82
74
  for (const journey of journeys) {
83
75
  try {
84
76
  // eslint-disable-next-line no-await-in-loop, dot-notation
85
- const treeData = await exportJourney(journey['_id']);
77
+ const treeData = await frodo.authn.journey.exportJourney(journey['_id']);
86
78
  // ANSI text output
87
79
  if (!options.markdown) {
88
80
  await describeJourney(treeData);
@@ -100,7 +92,7 @@ async (host, realm, user, password, options, command) => {
100
92
  }
101
93
  } else {
102
94
  try {
103
- const treeData = await exportJourney(options.journeyId);
95
+ const treeData = await frodo.authn.journey.exportJourney(options.journeyId);
104
96
  // ANSI text output
105
97
  if (!options.markdown) {
106
98
  await describeJourney(treeData);
@@ -1 +1 @@
1
- {"version":3,"file":"journey-describe.js","names":["fs","FrodoCommand","Option","Authenticate","Journey","state","describeJourney","describeJourneyMd","printMessage","verboseMessage","saveTextToFile","getTokens","getJourneys","exportJourney","createFileParamTreeExportResolver","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","outputFile","setOutputFile","file","process","exitCode","_fileData$tree","_fileData$tree2","overrideVersion","setAmVersion","fileData","JSON","parse","readFileSync","journeyData","journeyId","trees","Object","values","tree","_id","Error","markdown","error","message","getRealm","journeys","journey","treeData"],"sources":["cli/journey/journey-describe.ts"],"sourcesContent":["import fs from 'fs';\nimport { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, Journey, state } from '@rockcarver/frodo-lib';\nimport { describeJourney, describeJourneyMd } from '../../ops/JourneyOps';\nimport { printMessage, verboseMessage } from '../../utils/Console';\nimport { saveTextToFile } from '../../utils/ExportImportUtils';\n\nconst { getTokens } = Authenticate;\nconst { getJourneys, exportJourney, createFileParamTreeExportResolver } =\n Journey;\n\nconst program = new FrodoCommand('frodo journey describe');\n\nprogram\n .description(\n 'If -h is supplied, describe the journey/tree indicated by -i, or all journeys/trees in the realm if no -i is supplied, otherwise describe the journey/tree export file indicated by -f.'\n )\n .addOption(\n new Option(\n '-i, --journey-id <journey>',\n 'Name of a journey/tree. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file <file>',\n 'Name of the journey export file to describe. Ignored with -A.'\n )\n )\n .addOption(\n new Option(\n '-F, --output-file <file>',\n 'Name of the file to write the output to.'\n )\n )\n .addOption(new Option('--markdown', 'Output in markdown.'))\n .addOption(\n new Option(\n '-o, --override-version <version>',\n \"Override version. Notation: '<major>.<minor>.<patch>' e.g. '7.2.0'. Override detected version with any version. This is helpful in order to check if journeys in one environment would be compatible running in another environment (e.g. in preparation of migrating from on-prem to ForgeRock Identity Cloud.\"\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 if (options.outputFile) state.setOutputFile(options.outputFile);\n // TODO: review checks for arguments\n if (typeof host === 'undefined' || typeof options.file !== 'undefined') {\n if (\n typeof host === 'undefined' &&\n typeof options.file === 'undefined'\n ) {\n printMessage('Need either [host] or -f.', 'error');\n process.exitCode = 1;\n return;\n }\n verboseMessage(`Describing local journey file ${options.file}...`);\n try {\n // override version\n if (typeof options.overrideVersion !== 'undefined') {\n state.setAmVersion(options.overrideVersion);\n }\n const fileData = JSON.parse(fs.readFileSync(options.file, 'utf8'));\n let journeyData;\n // single or multi tree export?\n // multi - by id\n if (\n typeof options.journeyId !== 'undefined' &&\n fileData.trees &&\n fileData.trees[options.journeyId]\n ) {\n journeyData = fileData.trees[options.journeyId];\n }\n // multi - first\n else if (typeof options.journeyId === 'undefined' && fileData.trees) {\n [journeyData] = Object.values(fileData.trees);\n }\n // single - by id\n else if (\n typeof options.journeyId !== 'undefined' &&\n options.journeyId === fileData.tree?._id\n ) {\n journeyData = fileData;\n }\n // single\n else if (\n typeof options.journeyId === 'undefined' &&\n fileData.tree?._id\n ) {\n journeyData = fileData;\n }\n // no journey/tree found\n else {\n throw new Error(\n typeof options.journeyId === 'undefined'\n ? `No journey found in ${options.file}`\n : `Journey '${options.journeyId}' not found in ${options.file}`\n );\n }\n // ANSI text output\n if (!options.markdown) {\n await describeJourney(\n journeyData,\n createFileParamTreeExportResolver(options.file)\n );\n }\n // Markdown output\n else {\n // reset output file\n if (options.outputFile) saveTextToFile('', options.outputFile);\n await describeJourneyMd(\n journeyData,\n createFileParamTreeExportResolver(options.file)\n );\n }\n } catch (error) {\n printMessage(error.message, 'error');\n process.exitCode = 1;\n }\n } else if (await getTokens()) {\n verboseMessage(\n `Describing journey(s) in realm \"${state.getRealm()}\"...`\n );\n // override version\n if (typeof options.overrideVersion !== 'undefined') {\n state.setAmVersion(options.overrideVersion);\n }\n if (typeof options.journeyId === 'undefined') {\n let journeys = [];\n journeys = await getJourneys();\n for (const journey of journeys) {\n try {\n // eslint-disable-next-line no-await-in-loop, dot-notation\n const treeData = await exportJourney(journey['_id']);\n // ANSI text output\n if (!options.markdown) {\n await describeJourney(treeData);\n }\n // Markdown output\n else {\n // reset output file\n if (options.outputFile) saveTextToFile('', options.outputFile);\n await describeJourneyMd(treeData);\n }\n } catch (error) {\n printMessage(error.message, 'error');\n process.exitCode = 1;\n }\n }\n } else {\n try {\n const treeData = await exportJourney(options.journeyId);\n // ANSI text output\n if (!options.markdown) {\n await describeJourney(treeData);\n }\n // Markdown output\n else {\n // reset output file\n if (options.outputFile) saveTextToFile('', options.outputFile);\n await describeJourneyMd(treeData);\n }\n } catch (error) {\n printMessage(error.message, 'error');\n process.exitCode = 1;\n }\n }\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
1
+ {"version":3,"file":"journey-describe.js","names":["fs","FrodoCommand","Option","frodo","state","describeJourney","describeJourneyMd","printMessage","verboseMessage","saveTextToFile","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","outputFile","setOutputFile","file","process","exitCode","_fileData$tree","_fileData$tree2","overrideVersion","setAmVersion","fileData","JSON","parse","readFileSync","journeyData","journeyId","trees","Object","values","tree","_id","Error","markdown","authn","journey","createFileParamTreeExportResolver","error","message","login","getTokens","getRealm","journeys","getJourneys","treeData","exportJourney"],"sources":["cli/journey/journey-describe.ts"],"sourcesContent":["import fs from 'fs';\nimport { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo, state } from '@rockcarver/frodo-lib';\nimport { describeJourney, describeJourneyMd } from '../../ops/JourneyOps';\nimport { printMessage, verboseMessage } from '../../utils/Console';\nimport { saveTextToFile } from '../../utils/ExportImportUtils';\n\nconst program = new FrodoCommand('frodo journey describe');\n\nprogram\n .description(\n 'If -h is supplied, describe the journey/tree indicated by -i, or all journeys/trees in the realm if no -i is supplied, otherwise describe the journey/tree export file indicated by -f.'\n )\n .addOption(\n new Option(\n '-i, --journey-id <journey>',\n 'Name of a journey/tree. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file <file>',\n 'Name of the journey export file to describe. Ignored with -A.'\n )\n )\n .addOption(\n new Option(\n '-F, --output-file <file>',\n 'Name of the file to write the output to.'\n )\n )\n .addOption(new Option('--markdown', 'Output in markdown.'))\n .addOption(\n new Option(\n '-o, --override-version <version>',\n \"Override version. Notation: '<major>.<minor>.<patch>' e.g. '7.2.0'. Override detected version with any version. This is helpful in order to check if journeys in one environment would be compatible running in another environment (e.g. in preparation of migrating from on-prem to ForgeRock Identity Cloud.\"\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 if (options.outputFile) state.setOutputFile(options.outputFile);\n // TODO: review checks for arguments\n if (typeof host === 'undefined' || typeof options.file !== 'undefined') {\n if (\n typeof host === 'undefined' &&\n typeof options.file === 'undefined'\n ) {\n printMessage('Need either [host] or -f.', 'error');\n process.exitCode = 1;\n return;\n }\n verboseMessage(`Describing local journey file ${options.file}...`);\n try {\n // override version\n if (typeof options.overrideVersion !== 'undefined') {\n state.setAmVersion(options.overrideVersion);\n }\n const fileData = JSON.parse(fs.readFileSync(options.file, 'utf8'));\n let journeyData;\n // single or multi tree export?\n // multi - by id\n if (\n typeof options.journeyId !== 'undefined' &&\n fileData.trees &&\n fileData.trees[options.journeyId]\n ) {\n journeyData = fileData.trees[options.journeyId];\n }\n // multi - first\n else if (typeof options.journeyId === 'undefined' && fileData.trees) {\n [journeyData] = Object.values(fileData.trees);\n }\n // single - by id\n else if (\n typeof options.journeyId !== 'undefined' &&\n options.journeyId === fileData.tree?._id\n ) {\n journeyData = fileData;\n }\n // single\n else if (\n typeof options.journeyId === 'undefined' &&\n fileData.tree?._id\n ) {\n journeyData = fileData;\n }\n // no journey/tree found\n else {\n throw new Error(\n typeof options.journeyId === 'undefined'\n ? `No journey found in ${options.file}`\n : `Journey '${options.journeyId}' not found in ${options.file}`\n );\n }\n // ANSI text output\n if (!options.markdown) {\n await describeJourney(\n journeyData,\n frodo.authn.journey.createFileParamTreeExportResolver(\n options.file\n )\n );\n }\n // Markdown output\n else {\n // reset output file\n if (options.outputFile) saveTextToFile('', options.outputFile);\n await describeJourneyMd(\n journeyData,\n frodo.authn.journey.createFileParamTreeExportResolver(\n options.file\n )\n );\n }\n } catch (error) {\n printMessage(error.message, 'error');\n process.exitCode = 1;\n }\n } else if (await frodo.login.getTokens()) {\n verboseMessage(\n `Describing journey(s) in realm \"${state.getRealm()}\"...`\n );\n // override version\n if (typeof options.overrideVersion !== 'undefined') {\n state.setAmVersion(options.overrideVersion);\n }\n if (typeof options.journeyId === 'undefined') {\n let journeys = [];\n journeys = await frodo.authn.journey.getJourneys();\n for (const journey of journeys) {\n try {\n // eslint-disable-next-line no-await-in-loop, dot-notation\n const treeData = await frodo.authn.journey.exportJourney(\n journey['_id']\n );\n // ANSI text output\n if (!options.markdown) {\n await describeJourney(treeData);\n }\n // Markdown output\n else {\n // reset output file\n if (options.outputFile) saveTextToFile('', options.outputFile);\n await describeJourneyMd(treeData);\n }\n } catch (error) {\n printMessage(error.message, 'error');\n process.exitCode = 1;\n }\n }\n } else {\n try {\n const treeData = await frodo.authn.journey.exportJourney(\n options.journeyId\n );\n // ANSI text output\n if (!options.markdown) {\n await describeJourney(treeData);\n }\n // Markdown output\n else {\n // reset output file\n if (options.outputFile) saveTextToFile('', options.outputFile);\n await describeJourneyMd(treeData);\n }\n } catch (error) {\n printMessage(error.message, 'error');\n process.exitCode = 1;\n }\n }\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
@@ -1,13 +1,7 @@
1
1
  import { FrodoCommand } from '../FrodoCommand';
2
2
  import { Option } from 'commander';
3
- import { Authenticate, Journey } from '@rockcarver/frodo-lib';
3
+ import { frodo } from '@rockcarver/frodo-lib';
4
4
  import { showSpinner, failSpinner, succeedSpinner, printMessage } from '../../utils/Console';
5
- const {
6
- getTokens
7
- } = Authenticate;
8
- const {
9
- disableJourney
10
- } = Journey;
11
5
  const program = new FrodoCommand('frodo journey disable');
12
6
  program.description('Disable journeys/trees.').addOption(new Option('-i, --journey-id <journey>', 'Name of a journey/tree.'))
13
7
  // .addOption(
@@ -21,9 +15,9 @@ program.description('Disable journeys/trees.').addOption(new Option('-i, --journ
21
15
  async (host, realm, user, password, options, command) => {
22
16
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
23
17
  // disable
24
- if (options.journeyId && (await getTokens())) {
18
+ if (options.journeyId && (await frodo.login.getTokens())) {
25
19
  showSpinner(`Disabling journey ${options.journeyId}...`);
26
- if (await disableJourney(options.journeyId)) {
20
+ if (await frodo.authn.journey.disableJourney(options.journeyId)) {
27
21
  succeedSpinner(`Disabled journey ${options.journeyId}.`);
28
22
  } else {
29
23
  failSpinner(`Disabling journey ${options.journeyId} failed.`);
@@ -1 +1 @@
1
- {"version":3,"file":"journey-disable.js","names":["FrodoCommand","Option","Authenticate","Journey","showSpinner","failSpinner","succeedSpinner","printMessage","getTokens","disableJourney","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","journeyId","help","process","exitCode","parse"],"sources":["cli/journey/journey-disable.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, Journey } from '@rockcarver/frodo-lib';\nimport {\n showSpinner,\n failSpinner,\n succeedSpinner,\n printMessage,\n} from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst { disableJourney } = Journey;\n\nconst program = new FrodoCommand('frodo journey disable');\n\nprogram\n .description('Disable journeys/trees.')\n .addOption(\n new Option('-i, --journey-id <journey>', 'Name of a journey/tree.')\n )\n // .addOption(\n // new Option(\n // '-a, --all',\n // 'Disable all the journeys/trees in a realm. Ignored with -i.'\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 // disable\n if (options.journeyId && (await getTokens())) {\n showSpinner(`Disabling journey ${options.journeyId}...`);\n if (await disableJourney(options.journeyId)) {\n succeedSpinner(`Disabled journey ${options.journeyId}.`);\n } else {\n failSpinner(`Disabling journey ${options.journeyId} failed.`);\n }\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,YAAY,EAAEC,OAAO,QAAQ,uBAAuB;AAC7D,SACEC,WAAW,EACXC,WAAW,EACXC,cAAc,EACdC,YAAY,QACP,qBAAqB;AAE5B,MAAM;EAAEC;AAAU,CAAC,GAAGN,YAAY;AAClC,MAAM;EAAEO;AAAe,CAAC,GAAGN,OAAO;AAElC,MAAMO,OAAO,GAAG,IAAIV,YAAY,CAAC,uBAAuB,CAAC;AAEzDU,OAAO,CACJC,WAAW,CAAC,yBAAyB,CAAC,CACtCC,SAAS,CACR,IAAIX,MAAM,CAAC,4BAA4B,EAAE,yBAAyB,CACpE;AACA;AACA;AACA;AACA;AACA;AACA;AAAA,CACCY,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,SAAS,KAAK,MAAMb,SAAS,CAAC,CAAC,CAAC,EAAE;IAC5CJ,WAAW,CAAE,qBAAoBc,OAAO,CAACG,SAAU,KAAI,CAAC;IACxD,IAAI,MAAMZ,cAAc,CAACS,OAAO,CAACG,SAAS,CAAC,EAAE;MAC3Cf,cAAc,CAAE,oBAAmBY,OAAO,CAACG,SAAU,GAAE,CAAC;IAC1D,CAAC,MAAM;MACLhB,WAAW,CAAE,qBAAoBa,OAAO,CAACG,SAAU,UAAS,CAAC;IAC/D;EACF;EACA;EAAA,KACK;IACHd,YAAY,CAAC,sDAAsD,CAAC;IACpEG,OAAO,CAACY,IAAI,CAAC,CAAC;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHd,OAAO,CAACe,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"journey-disable.js","names":["FrodoCommand","Option","frodo","showSpinner","failSpinner","succeedSpinner","printMessage","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","journeyId","login","getTokens","authn","journey","disableJourney","help","process","exitCode","parse"],"sources":["cli/journey/journey-disable.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\nimport {\n showSpinner,\n failSpinner,\n succeedSpinner,\n printMessage,\n} from '../../utils/Console';\n\nconst program = new FrodoCommand('frodo journey disable');\n\nprogram\n .description('Disable journeys/trees.')\n .addOption(\n new Option('-i, --journey-id <journey>', 'Name of a journey/tree.')\n )\n // .addOption(\n // new Option(\n // '-a, --all',\n // 'Disable all the journeys/trees in a realm. Ignored with -i.'\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 // disable\n if (options.journeyId && (await frodo.login.getTokens())) {\n showSpinner(`Disabling journey ${options.journeyId}...`);\n if (await frodo.authn.journey.disableJourney(options.journeyId)) {\n succeedSpinner(`Disabled journey ${options.journeyId}.`);\n } else {\n failSpinner(`Disabling journey ${options.journeyId} failed.`);\n }\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,SACEC,WAAW,EACXC,WAAW,EACXC,cAAc,EACdC,YAAY,QACP,qBAAqB;AAE5B,MAAMC,OAAO,GAAG,IAAIP,YAAY,CAAC,uBAAuB,CAAC;AAEzDO,OAAO,CACJC,WAAW,CAAC,yBAAyB,CAAC,CACtCC,SAAS,CACR,IAAIR,MAAM,CAAC,4BAA4B,EAAE,yBAAyB,CACpE;AACA;AACA;AACA;AACA;AACA;AACA;AAAA,CACCS,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,SAAS,KAAK,MAAMhB,KAAK,CAACiB,KAAK,CAACC,SAAS,CAAC,CAAC,CAAC,EAAE;IACxDjB,WAAW,CAAE,qBAAoBY,OAAO,CAACG,SAAU,KAAI,CAAC;IACxD,IAAI,MAAMhB,KAAK,CAACmB,KAAK,CAACC,OAAO,CAACC,cAAc,CAACR,OAAO,CAACG,SAAS,CAAC,EAAE;MAC/Db,cAAc,CAAE,oBAAmBU,OAAO,CAACG,SAAU,GAAE,CAAC;IAC1D,CAAC,MAAM;MACLd,WAAW,CAAE,qBAAoBW,OAAO,CAACG,SAAU,UAAS,CAAC;IAC/D;EACF;EACA;EAAA,KACK;IACHZ,YAAY,CAAC,sDAAsD,CAAC;IACpEC,OAAO,CAACiB,IAAI,CAAC,CAAC;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHnB,OAAO,CAACoB,KAAK,CAAC,CAAC"}
@@ -1,13 +1,7 @@
1
1
  import { FrodoCommand } from '../FrodoCommand';
2
2
  import { Option } from 'commander';
3
- import { Authenticate, Journey } from '@rockcarver/frodo-lib';
3
+ import { frodo } from '@rockcarver/frodo-lib';
4
4
  import { showSpinner, failSpinner, succeedSpinner, printMessage } from '../../utils/Console';
5
- const {
6
- getTokens
7
- } = Authenticate;
8
- const {
9
- enableJourney
10
- } = Journey;
11
5
  const program = new FrodoCommand('frodo journey enable');
12
6
  program.description('Enable journeys/trees.').addOption(new Option('-i, --journey-id <journey>', 'Name of a journey/tree.'))
13
7
  // .addOption(
@@ -21,9 +15,9 @@ program.description('Enable journeys/trees.').addOption(new Option('-i, --journe
21
15
  async (host, realm, user, password, options, command) => {
22
16
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
23
17
  // enable
24
- if (options.journeyId && (await getTokens())) {
18
+ if (options.journeyId && (await frodo.login.getTokens())) {
25
19
  showSpinner(`Enabling journey ${options.journeyId}...`);
26
- if (await enableJourney(options.journeyId)) {
20
+ if (await frodo.authn.journey.enableJourney(options.journeyId)) {
27
21
  succeedSpinner(`Enabled journey ${options.journeyId}.`);
28
22
  } else {
29
23
  failSpinner(`Enabling journey ${options.journeyId} failed.`);
@@ -1 +1 @@
1
- {"version":3,"file":"journey-enable.js","names":["FrodoCommand","Option","Authenticate","Journey","showSpinner","failSpinner","succeedSpinner","printMessage","getTokens","enableJourney","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","journeyId","help","process","exitCode","parse"],"sources":["cli/journey/journey-enable.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, Journey } from '@rockcarver/frodo-lib';\nimport {\n showSpinner,\n failSpinner,\n succeedSpinner,\n printMessage,\n} from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst { enableJourney } = Journey;\n\nconst program = new FrodoCommand('frodo journey enable');\n\nprogram\n .description('Enable journeys/trees.')\n .addOption(\n new Option('-i, --journey-id <journey>', 'Name of a journey/tree.')\n )\n // .addOption(\n // new Option(\n // '-a, --all',\n // 'Enable all the journeys/trees in a realm. Ignored with -i.'\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 // enable\n if (options.journeyId && (await getTokens())) {\n showSpinner(`Enabling journey ${options.journeyId}...`);\n if (await enableJourney(options.journeyId)) {\n succeedSpinner(`Enabled journey ${options.journeyId}.`);\n } else {\n failSpinner(`Enabling journey ${options.journeyId} failed.`);\n }\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,YAAY,EAAEC,OAAO,QAAQ,uBAAuB;AAC7D,SACEC,WAAW,EACXC,WAAW,EACXC,cAAc,EACdC,YAAY,QACP,qBAAqB;AAE5B,MAAM;EAAEC;AAAU,CAAC,GAAGN,YAAY;AAClC,MAAM;EAAEO;AAAc,CAAC,GAAGN,OAAO;AAEjC,MAAMO,OAAO,GAAG,IAAIV,YAAY,CAAC,sBAAsB,CAAC;AAExDU,OAAO,CACJC,WAAW,CAAC,wBAAwB,CAAC,CACrCC,SAAS,CACR,IAAIX,MAAM,CAAC,4BAA4B,EAAE,yBAAyB,CACpE;AACA;AACA;AACA;AACA;AACA;AACA;AAAA,CACCY,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,SAAS,KAAK,MAAMb,SAAS,CAAC,CAAC,CAAC,EAAE;IAC5CJ,WAAW,CAAE,oBAAmBc,OAAO,CAACG,SAAU,KAAI,CAAC;IACvD,IAAI,MAAMZ,aAAa,CAACS,OAAO,CAACG,SAAS,CAAC,EAAE;MAC1Cf,cAAc,CAAE,mBAAkBY,OAAO,CAACG,SAAU,GAAE,CAAC;IACzD,CAAC,MAAM;MACLhB,WAAW,CAAE,oBAAmBa,OAAO,CAACG,SAAU,UAAS,CAAC;IAC9D;EACF;EACA;EAAA,KACK;IACHd,YAAY,CAAC,sDAAsD,CAAC;IACpEG,OAAO,CAACY,IAAI,CAAC,CAAC;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHd,OAAO,CAACe,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"journey-enable.js","names":["FrodoCommand","Option","frodo","showSpinner","failSpinner","succeedSpinner","printMessage","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","journeyId","login","getTokens","authn","journey","enableJourney","help","process","exitCode","parse"],"sources":["cli/journey/journey-enable.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\nimport {\n showSpinner,\n failSpinner,\n succeedSpinner,\n printMessage,\n} from '../../utils/Console';\n\nconst program = new FrodoCommand('frodo journey enable');\n\nprogram\n .description('Enable journeys/trees.')\n .addOption(\n new Option('-i, --journey-id <journey>', 'Name of a journey/tree.')\n )\n // .addOption(\n // new Option(\n // '-a, --all',\n // 'Enable all the journeys/trees in a realm. Ignored with -i.'\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 // enable\n if (options.journeyId && (await frodo.login.getTokens())) {\n showSpinner(`Enabling journey ${options.journeyId}...`);\n if (await frodo.authn.journey.enableJourney(options.journeyId)) {\n succeedSpinner(`Enabled journey ${options.journeyId}.`);\n } else {\n failSpinner(`Enabling journey ${options.journeyId} failed.`);\n }\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,SACEC,WAAW,EACXC,WAAW,EACXC,cAAc,EACdC,YAAY,QACP,qBAAqB;AAE5B,MAAMC,OAAO,GAAG,IAAIP,YAAY,CAAC,sBAAsB,CAAC;AAExDO,OAAO,CACJC,WAAW,CAAC,wBAAwB,CAAC,CACrCC,SAAS,CACR,IAAIR,MAAM,CAAC,4BAA4B,EAAE,yBAAyB,CACpE;AACA;AACA;AACA;AACA;AACA;AACA;AAAA,CACCS,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,SAAS,KAAK,MAAMhB,KAAK,CAACiB,KAAK,CAACC,SAAS,CAAC,CAAC,CAAC,EAAE;IACxDjB,WAAW,CAAE,oBAAmBY,OAAO,CAACG,SAAU,KAAI,CAAC;IACvD,IAAI,MAAMhB,KAAK,CAACmB,KAAK,CAACC,OAAO,CAACC,aAAa,CAACR,OAAO,CAACG,SAAS,CAAC,EAAE;MAC9Db,cAAc,CAAE,mBAAkBU,OAAO,CAACG,SAAU,GAAE,CAAC;IACzD,CAAC,MAAM;MACLd,WAAW,CAAE,oBAAmBW,OAAO,CAACG,SAAU,UAAS,CAAC;IAC9D;EACF;EACA;EAAA,KACK;IACHZ,YAAY,CAAC,sDAAsD,CAAC;IACpEC,OAAO,CAACiB,IAAI,CAAC,CAAC;IACdC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHnB,OAAO,CAACoB,KAAK,CAAC,CAAC"}
@@ -1,11 +1,8 @@
1
1
  import { FrodoCommand } from '../FrodoCommand';
2
2
  import { Option } from 'commander';
3
- import { Authenticate, state } from '@rockcarver/frodo-lib';
3
+ import { frodo, state } from '@rockcarver/frodo-lib';
4
4
  import { exportJourneyToFile, exportJourneysToFile, exportJourneysToFiles } from '../../ops/JourneyOps';
5
5
  import { printMessage, verboseMessage } from '../../utils/Console';
6
- const {
7
- getTokens
8
- } = Authenticate;
9
6
  const program = new FrodoCommand('frodo journey export');
10
7
  program.description('Export journeys/trees.').addOption(new Option('-i, --journey-id <journey>', 'Name of a journey/tree. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the file to write the exported journey(s) to. Ignored with -A.')).addOption(new Option('-a, --all', 'Export all the journeys/trees in a realm. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Export all the journeys/trees in a realm as separate files <journey/tree name>.json. Ignored with -i or -a.')).addOption(new Option('--use-string-arrays', 'Where applicable, use string arrays to store multi-line text (e.g. scripts).').default(false, 'off')).addOption(new Option('--no-deps', 'Do not include any dependencies (scripts, email templates, SAML entity providers and circles of trust, social identity providers, themes).')).addOption(new Option('-D, --directory <directory>', 'Destination directory.')).addOption(new Option('-O, --organize <method>', 'Organize exports into folders using the indicated method. Valid values for method:\n' + 'id: folders named by id of exported object\n' + 'type: folders named by type (e.g. script, journey, idp)\n' + 'type/id: folders named by type with sub-folders named by id')).action(
11
8
  // implement command logic inside action handler
@@ -13,7 +10,7 @@ async (host, realm, user, password, options, command) => {
13
10
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
14
11
  if (options.directory) state.setDirectory(options.directory);
15
12
  // export
16
- if (options.journeyId && (await getTokens())) {
13
+ if (options.journeyId && (await frodo.login.getTokens())) {
17
14
  verboseMessage('Exporting journey...');
18
15
  await exportJourneyToFile(options.journeyId, options.file, {
19
16
  useStringArrays: options.useStringArrays,
@@ -21,7 +18,7 @@ async (host, realm, user, password, options, command) => {
21
18
  });
22
19
  }
23
20
  // --all -a
24
- else if (options.all && (await getTokens())) {
21
+ else if (options.all && (await frodo.login.getTokens())) {
25
22
  verboseMessage('Exporting all journeys to a single file...');
26
23
  await exportJourneysToFile(options.file, {
27
24
  useStringArrays: options.useStringArrays,
@@ -29,7 +26,7 @@ async (host, realm, user, password, options, command) => {
29
26
  });
30
27
  }
31
28
  // --all-separate -A
32
- else if (options.allSeparate && (await getTokens())) {
29
+ else if (options.allSeparate && (await frodo.login.getTokens())) {
33
30
  verboseMessage('Exporting all journeys to separate files...');
34
31
  await exportJourneysToFiles({
35
32
  useStringArrays: options.useStringArrays,
@@ -1 +1 @@
1
- {"version":3,"file":"journey-export.js","names":["FrodoCommand","Option","Authenticate","state","exportJourneyToFile","exportJourneysToFile","exportJourneysToFiles","printMessage","verboseMessage","getTokens","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","directory","setDirectory","journeyId","file","useStringArrays","deps","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/journey/journey-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport {\n exportJourneyToFile,\n exportJourneysToFile,\n exportJourneysToFiles,\n} from '../../ops/JourneyOps';\nimport { printMessage, verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo journey export');\n\nprogram\n .description('Export journeys/trees.')\n .addOption(\n new Option(\n '-i, --journey-id <journey>',\n 'Name of a journey/tree. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file <file>',\n 'Name of the file to write the exported journey(s) to. Ignored with -A.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Export all the journeys/trees in a realm. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all the journeys/trees in a realm as separate files <journey/tree name>.json. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option(\n '--use-string-arrays',\n 'Where applicable, use string arrays to store multi-line text (e.g. scripts).'\n ).default(false, 'off')\n )\n .addOption(\n new Option(\n '--no-deps',\n 'Do not include any dependencies (scripts, email templates, SAML entity providers and circles of trust, social identity providers, themes).'\n )\n )\n .addOption(\n new Option('-D, --directory <directory>', 'Destination directory.')\n )\n .addOption(\n new Option(\n '-O, --organize <method>',\n 'Organize exports into folders using the indicated method. Valid values for method:\\n' +\n 'id: folders named by id of exported object\\n' +\n 'type: folders named by type (e.g. script, journey, idp)\\n' +\n 'type/id: folders named by type with sub-folders named by id'\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 if (options.directory) state.setDirectory(options.directory);\n // export\n if (options.journeyId && (await getTokens())) {\n verboseMessage('Exporting journey...');\n await exportJourneyToFile(options.journeyId, options.file, {\n useStringArrays: options.useStringArrays,\n deps: options.deps,\n });\n }\n // --all -a\n else if (options.all && (await getTokens())) {\n verboseMessage('Exporting all journeys to a single file...');\n await exportJourneysToFile(options.file, {\n useStringArrays: options.useStringArrays,\n deps: options.deps,\n });\n }\n // --all-separate -A\n else if (options.allSeparate && (await getTokens())) {\n verboseMessage('Exporting all journeys to separate files...');\n await exportJourneysToFiles({\n useStringArrays: options.useStringArrays,\n deps: options.deps,\n });\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\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":"journey-export.js","names":["FrodoCommand","Option","frodo","state","exportJourneyToFile","exportJourneysToFile","exportJourneysToFiles","printMessage","verboseMessage","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","directory","setDirectory","journeyId","login","getTokens","file","useStringArrays","deps","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/journey/journey-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo, state } from '@rockcarver/frodo-lib';\nimport {\n exportJourneyToFile,\n exportJourneysToFile,\n exportJourneysToFiles,\n} from '../../ops/JourneyOps';\nimport { printMessage, verboseMessage } from '../../utils/Console';\n\nconst program = new FrodoCommand('frodo journey export');\n\nprogram\n .description('Export journeys/trees.')\n .addOption(\n new Option(\n '-i, --journey-id <journey>',\n 'Name of a journey/tree. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file <file>',\n 'Name of the file to write the exported journey(s) to. Ignored with -A.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Export all the journeys/trees in a realm. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all the journeys/trees in a realm as separate files <journey/tree name>.json. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option(\n '--use-string-arrays',\n 'Where applicable, use string arrays to store multi-line text (e.g. scripts).'\n ).default(false, 'off')\n )\n .addOption(\n new Option(\n '--no-deps',\n 'Do not include any dependencies (scripts, email templates, SAML entity providers and circles of trust, social identity providers, themes).'\n )\n )\n .addOption(\n new Option('-D, --directory <directory>', 'Destination directory.')\n )\n .addOption(\n new Option(\n '-O, --organize <method>',\n 'Organize exports into folders using the indicated method. Valid values for method:\\n' +\n 'id: folders named by id of exported object\\n' +\n 'type: folders named by type (e.g. script, journey, idp)\\n' +\n 'type/id: folders named by type with sub-folders named by id'\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 if (options.directory) state.setDirectory(options.directory);\n // export\n if (options.journeyId && (await frodo.login.getTokens())) {\n verboseMessage('Exporting journey...');\n await exportJourneyToFile(options.journeyId, options.file, {\n useStringArrays: options.useStringArrays,\n deps: options.deps,\n });\n }\n // --all -a\n else if (options.all && (await frodo.login.getTokens())) {\n verboseMessage('Exporting all journeys to a single file...');\n await exportJourneysToFile(options.file, {\n useStringArrays: options.useStringArrays,\n deps: options.deps,\n });\n }\n // --all-separate -A\n else if (options.allSeparate && (await frodo.login.getTokens())) {\n verboseMessage('Exporting all journeys to separate files...');\n await exportJourneysToFiles({\n useStringArrays: options.useStringArrays,\n deps: options.deps,\n });\n }\n // unrecognized combination of options or no options\n else {\n printMessage(\n 'Unrecognized combination of options or no options...',\n 'error'\n );\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,18 +1,15 @@
1
1
  import { FrodoCommand } from '../FrodoCommand';
2
2
  import { Option } from 'commander';
3
- import { Authenticate } from '@rockcarver/frodo-lib';
3
+ import { frodo } from '@rockcarver/frodo-lib';
4
4
  import { importJourneyFromFile, importJourneysFromFile, importJourneysFromFiles, importFirstJourneyFromFile } from '../../ops/JourneyOps';
5
5
  import { printMessage } from '../../utils/Console';
6
- const {
7
- getTokens
8
- } = Authenticate;
9
6
  const program = new FrodoCommand('frodo journey import');
10
7
  program.description('Import journey/tree.').addOption(new Option('-i, --journey-id <journey>', 'Name of a journey/tree. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the file to import the journey(s) from. Ignored with -A.')).addOption(new Option('-a, --all', 'Import all the journeys/trees from single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Import all the journeys/trees from separate files (*.json) in the current directory. Ignored with -i or -a.')).addOption(new Option('--re-uuid', 'Generate new UUIDs for all nodes during import.').default(false, 'off')).addOption(new Option('--no-deps', 'Do not include any dependencies (scripts, email templates, SAML entity providers and circles of trust, social identity providers, themes).')).action(
11
8
  // implement command logic inside action handler
12
9
  async (host, realm, user, password, options, command) => {
13
10
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
14
11
  // import
15
- if (options.journeyId && (await getTokens())) {
12
+ if (options.journeyId && (await frodo.login.getTokens())) {
16
13
  printMessage(`Importing journey ${options.journeyId}...`);
17
14
  importJourneyFromFile(options.journeyId, options.file, {
18
15
  reUuid: options.reUuid,
@@ -20,7 +17,7 @@ async (host, realm, user, password, options, command) => {
20
17
  });
21
18
  }
22
19
  // --all -a
23
- else if (options.all && options.file && (await getTokens())) {
20
+ else if (options.all && options.file && (await frodo.login.getTokens())) {
24
21
  printMessage(`Importing all journeys from a single file (${options.file})...`);
25
22
  importJourneysFromFile(options.file, {
26
23
  reUuid: options.reUuid,
@@ -28,7 +25,7 @@ async (host, realm, user, password, options, command) => {
28
25
  });
29
26
  }
30
27
  // --all-separate -A
31
- else if (options.allSeparate && !options.file && (await getTokens())) {
28
+ else if (options.allSeparate && !options.file && (await frodo.login.getTokens())) {
32
29
  printMessage('Importing all journeys from separate files in current directory...');
33
30
  importJourneysFromFiles({
34
31
  reUuid: options.reUuid,
@@ -36,7 +33,7 @@ async (host, realm, user, password, options, command) => {
36
33
  });
37
34
  }
38
35
  // import first journey in file
39
- else if (options.file && (await getTokens())) {
36
+ else if (options.file && (await frodo.login.getTokens())) {
40
37
  printMessage('Importing first journey in file...');
41
38
  importFirstJourneyFromFile(options.file, {
42
39
  reUuid: options.reUuid,
@@ -1 +1 @@
1
- {"version":3,"file":"journey-import.js","names":["FrodoCommand","Option","Authenticate","importJourneyFromFile","importJourneysFromFile","importJourneysFromFiles","importFirstJourneyFromFile","printMessage","getTokens","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","journeyId","file","reUuid","deps","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/journey/journey-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate } from '@rockcarver/frodo-lib';\nimport {\n importJourneyFromFile,\n importJourneysFromFile,\n importJourneysFromFiles,\n importFirstJourneyFromFile,\n} from '../../ops/JourneyOps';\nimport { printMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo journey import');\n\nprogram\n .description('Import journey/tree.')\n .addOption(\n new Option(\n '-i, --journey-id <journey>',\n 'Name of a journey/tree. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file <file>',\n 'Name of the file to import the journey(s) from. Ignored with -A.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Import all the journeys/trees from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all the journeys/trees from separate files (*.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option(\n '--re-uuid',\n 'Generate new UUIDs for all nodes during import.'\n ).default(false, 'off')\n )\n .addOption(\n new Option(\n '--no-deps',\n 'Do not include any dependencies (scripts, email templates, SAML entity providers and circles of trust, social identity providers, themes).'\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\n if (options.journeyId && (await getTokens())) {\n printMessage(`Importing journey ${options.journeyId}...`);\n importJourneyFromFile(options.journeyId, options.file, {\n reUuid: options.reUuid,\n deps: options.deps,\n });\n }\n // --all -a\n else if (options.all && options.file && (await getTokens())) {\n printMessage(\n `Importing all journeys from a single file (${options.file})...`\n );\n importJourneysFromFile(options.file, {\n reUuid: options.reUuid,\n deps: options.deps,\n });\n }\n // --all-separate -A\n else if (options.allSeparate && !options.file && (await getTokens())) {\n printMessage(\n 'Importing all journeys from separate files in current directory...'\n );\n importJourneysFromFiles({\n reUuid: options.reUuid,\n deps: options.deps,\n });\n }\n // import first journey in file\n else if (options.file && (await getTokens())) {\n printMessage('Importing first journey in file...');\n importFirstJourneyFromFile(options.file, {\n reUuid: options.reUuid,\n deps: options.deps,\n });\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":"journey-import.js","names":["FrodoCommand","Option","frodo","importJourneyFromFile","importJourneysFromFile","importJourneysFromFiles","importFirstJourneyFromFile","printMessage","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","journeyId","login","getTokens","file","reUuid","deps","all","allSeparate","help","process","exitCode","parse"],"sources":["cli/journey/journey-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\nimport {\n importJourneyFromFile,\n importJourneysFromFile,\n importJourneysFromFiles,\n importFirstJourneyFromFile,\n} from '../../ops/JourneyOps';\nimport { printMessage } from '../../utils/Console';\n\nconst program = new FrodoCommand('frodo journey import');\n\nprogram\n .description('Import journey/tree.')\n .addOption(\n new Option(\n '-i, --journey-id <journey>',\n 'Name of a journey/tree. If specified, -a and -A are ignored.'\n )\n )\n .addOption(\n new Option(\n '-f, --file <file>',\n 'Name of the file to import the journey(s) from. Ignored with -A.'\n )\n )\n .addOption(\n new Option(\n '-a, --all',\n 'Import all the journeys/trees from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all the journeys/trees from separate files (*.json) in the current directory. Ignored with -i or -a.'\n )\n )\n .addOption(\n new Option(\n '--re-uuid',\n 'Generate new UUIDs for all nodes during import.'\n ).default(false, 'off')\n )\n .addOption(\n new Option(\n '--no-deps',\n 'Do not include any dependencies (scripts, email templates, SAML entity providers and circles of trust, social identity providers, themes).'\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\n if (options.journeyId && (await frodo.login.getTokens())) {\n printMessage(`Importing journey ${options.journeyId}...`);\n importJourneyFromFile(options.journeyId, options.file, {\n reUuid: options.reUuid,\n deps: options.deps,\n });\n }\n // --all -a\n else if (options.all && options.file && (await frodo.login.getTokens())) {\n printMessage(\n `Importing all journeys from a single file (${options.file})...`\n );\n importJourneysFromFile(options.file, {\n reUuid: options.reUuid,\n deps: options.deps,\n });\n }\n // --all-separate -A\n else if (\n options.allSeparate &&\n !options.file &&\n (await frodo.login.getTokens())\n ) {\n printMessage(\n 'Importing all journeys from separate files in current directory...'\n );\n importJourneysFromFiles({\n reUuid: options.reUuid,\n deps: options.deps,\n });\n }\n // import first journey in file\n else if (options.file && (await frodo.login.getTokens())) {\n printMessage('Importing first journey in file...');\n importFirstJourneyFromFile(options.file, {\n reUuid: options.reUuid,\n deps: options.deps,\n });\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,17 +1,14 @@
1
+ import { frodo, state } from '@rockcarver/frodo-lib';
1
2
  import { FrodoCommand } from '../FrodoCommand';
2
3
  import { Option } from 'commander';
3
- import { Authenticate, state } from '@rockcarver/frodo-lib';
4
4
  import { listJourneys } from '../../ops/JourneyOps';
5
5
  import { verboseMessage } from '../../utils/Console';
6
- const {
7
- getTokens
8
- } = Authenticate;
9
6
  const program = new FrodoCommand('frodo journey list');
10
7
  program.description('List journeys/trees.').addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).addOption(new Option('-a, --analyze', 'Analyze journeys for custom nodes.')).action(
11
8
  // implement command logic inside action handler
12
9
  async (host, realm, user, password, options, command) => {
13
10
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
14
- if (await getTokens()) {
11
+ if (await frodo.login.getTokens()) {
15
12
  verboseMessage(`Listing journeys in realm "${state.getRealm()}"...`);
16
13
  listJourneys(options.long, options.analyze);
17
14
  } else {
@@ -1 +1 @@
1
- {"version":3,"file":"journey-list.js","names":["FrodoCommand","Option","Authenticate","state","listJourneys","verboseMessage","getTokens","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","getRealm","long","analyze","process","exitCode","parse"],"sources":["cli/journey/journey-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { Authenticate, state } from '@rockcarver/frodo-lib';\nimport { listJourneys } from '../../ops/JourneyOps';\nimport { verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\n\nconst program = new FrodoCommand('frodo journey list');\n\nprogram\n .description('List journeys/trees.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .addOption(new Option('-a, --analyze', 'Analyze journeys for custom nodes.'))\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 journeys in realm \"${state.getRealm()}\"...`);\n listJourneys(options.long, options.analyze);\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,YAAY,EAAEC,KAAK,QAAQ,uBAAuB;AAC3D,SAASC,YAAY,QAAQ,sBAAsB;AACnD,SAASC,cAAc,QAAQ,qBAAqB;AAEpD,MAAM;EAAEC;AAAU,CAAC,GAAGJ,YAAY;AAElC,MAAMK,OAAO,GAAG,IAAIP,YAAY,CAAC,oBAAoB,CAAC;AAEtDO,OAAO,CACJC,WAAW,CAAC,sBAAsB,CAAC,CACnCC,SAAS,CACR,IAAIR,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACS,OAAO,CAAC,KAAK,EAAE,OAAO,CAC1E,CAAC,CACAD,SAAS,CAAC,IAAIR,MAAM,CAAC,eAAe,EAAE,oCAAoC,CAAC,CAAC,CAC5EU,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;IACrBD,cAAc,CAAE,8BAA6BF,KAAK,CAACgB,QAAQ,CAAC,CAAE,MAAK,CAAC;IACpEf,YAAY,CAACY,OAAO,CAACI,IAAI,EAAEJ,OAAO,CAACK,OAAO,CAAC;EAC7C,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHhB,OAAO,CAACiB,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"journey-list.js","names":["frodo","state","FrodoCommand","Option","listJourneys","verboseMessage","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","getRealm","long","analyze","process","exitCode","parse"],"sources":["cli/journey/journey-list.ts"],"sourcesContent":["import { frodo, state } from '@rockcarver/frodo-lib';\nimport { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { listJourneys } from '../../ops/JourneyOps';\nimport { verboseMessage } from '../../utils/Console';\n\nconst program = new FrodoCommand('frodo journey list');\n\nprogram\n .description('List journeys/trees.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .addOption(new Option('-a, --analyze', 'Analyze journeys for custom nodes.'))\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 journeys in realm \"${state.getRealm()}\"...`);\n listJourneys(options.long, options.analyze);\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,KAAK,EAAEC,KAAK,QAAQ,uBAAuB;AACpD,SAASC,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,YAAY,QAAQ,sBAAsB;AACnD,SAASC,cAAc,QAAQ,qBAAqB;AAEpD,MAAMC,OAAO,GAAG,IAAIJ,YAAY,CAAC,oBAAoB,CAAC;AAEtDI,OAAO,CACJC,WAAW,CAAC,sBAAsB,CAAC,CACnCC,SAAS,CACR,IAAIL,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACM,OAAO,CAAC,KAAK,EAAE,OAAO,CAC1E,CAAC,CACAD,SAAS,CAAC,IAAIL,MAAM,CAAC,eAAe,EAAE,oCAAoC,CAAC,CAAC,CAC5EO,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,MAAMhB,KAAK,CAACkB,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjCd,cAAc,CAAE,8BAA6BJ,KAAK,CAACmB,QAAQ,CAAC,CAAE,MAAK,CAAC;IACpEhB,YAAY,CAACW,OAAO,CAACM,IAAI,EAAEN,OAAO,CAACO,OAAO,CAAC;EAC7C,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHlB,OAAO,CAACmB,KAAK,CAAC,CAAC"}
@@ -1,28 +1,21 @@
1
1
  import { FrodoCommand } from '../FrodoCommand';
2
- import { Authenticate, Journey, state } from '@rockcarver/frodo-lib';
2
+ import { frodo, state } from '@rockcarver/frodo-lib';
3
3
  import yesno from 'yesno';
4
4
  import { printMessage, verboseMessage } from '../../utils/Console';
5
- const {
6
- getTokens
7
- } = Authenticate;
8
- const {
9
- findOrphanedNodes,
10
- removeOrphanedNodes
11
- } = Journey;
12
5
  const program = new FrodoCommand('frodo journey prune');
13
6
  program.description('Prune orphaned configuration artifacts left behind after deleting authentication trees. You will be prompted before any destructive operations are performed.').action(
14
7
  // implement command logic inside action handler
15
8
  async (host, realm, user, password, options, command) => {
16
9
  command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
17
- if (await getTokens()) {
10
+ if (await frodo.login.getTokens()) {
18
11
  verboseMessage(`Pruning orphaned configuration artifacts in realm "${state.getRealm()}"...`);
19
- const orphanedNodes = await findOrphanedNodes();
12
+ const orphanedNodes = await frodo.authn.journey.findOrphanedNodes();
20
13
  if (orphanedNodes.length > 0) {
21
14
  const ok = await yesno({
22
15
  question: 'Prune (permanently delete) orphaned nodes? (y|n):'
23
16
  });
24
17
  if (ok) {
25
- await removeOrphanedNodes(orphanedNodes);
18
+ await frodo.authn.journey.removeOrphanedNodes(orphanedNodes);
26
19
  }
27
20
  } else {
28
21
  printMessage('No orphaned nodes found.');
@@ -1 +1 @@
1
- {"version":3,"file":"journey-prune.js","names":["FrodoCommand","Authenticate","Journey","state","yesno","printMessage","verboseMessage","getTokens","findOrphanedNodes","removeOrphanedNodes","program","description","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","getRealm","orphanedNodes","length","ok","question","process","exitCode","parse"],"sources":["cli/journey/journey-prune.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Authenticate, Journey, state } from '@rockcarver/frodo-lib';\nimport yesno from 'yesno';\nimport { printMessage, verboseMessage } from '../../utils/Console';\n\nconst { getTokens } = Authenticate;\nconst { findOrphanedNodes, removeOrphanedNodes } = Journey;\n\nconst program = new FrodoCommand('frodo journey prune');\n\nprogram\n .description(\n 'Prune orphaned configuration artifacts left behind after deleting authentication trees. You will be prompted before any destructive operations are performed.'\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(\n `Pruning orphaned configuration artifacts in realm \"${state.getRealm()}\"...`\n );\n const orphanedNodes = await findOrphanedNodes();\n if (orphanedNodes.length > 0) {\n const ok = await yesno({\n question: 'Prune (permanently delete) orphaned nodes? (y|n):',\n });\n if (ok) {\n await removeOrphanedNodes(orphanedNodes);\n }\n } else {\n printMessage('No orphaned nodes found.');\n }\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,YAAY,EAAEC,OAAO,EAAEC,KAAK,QAAQ,uBAAuB;AACpE,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,YAAY,EAAEC,cAAc,QAAQ,qBAAqB;AAElE,MAAM;EAAEC;AAAU,CAAC,GAAGN,YAAY;AAClC,MAAM;EAAEO,iBAAiB;EAAEC;AAAoB,CAAC,GAAGP,OAAO;AAE1D,MAAMQ,OAAO,GAAG,IAAIV,YAAY,CAAC,qBAAqB,CAAC;AAEvDU,OAAO,CACJC,WAAW,CACV,+JACF,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,MAAMX,SAAS,CAAC,CAAC,EAAE;IACrBD,cAAc,CACX,sDAAqDH,KAAK,CAACiB,QAAQ,CAAC,CAAE,MACzE,CAAC;IACD,MAAMC,aAAa,GAAG,MAAMb,iBAAiB,CAAC,CAAC;IAC/C,IAAIa,aAAa,CAACC,MAAM,GAAG,CAAC,EAAE;MAC5B,MAAMC,EAAE,GAAG,MAAMnB,KAAK,CAAC;QACrBoB,QAAQ,EAAE;MACZ,CAAC,CAAC;MACF,IAAID,EAAE,EAAE;QACN,MAAMd,mBAAmB,CAACY,aAAa,CAAC;MAC1C;IACF,CAAC,MAAM;MACLhB,YAAY,CAAC,0BAA0B,CAAC;IAC1C;EACF,CAAC,MAAM;IACLoB,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHhB,OAAO,CAACiB,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"journey-prune.js","names":["FrodoCommand","frodo","state","yesno","printMessage","verboseMessage","program","description","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","getRealm","orphanedNodes","authn","journey","findOrphanedNodes","length","ok","question","removeOrphanedNodes","process","exitCode","parse"],"sources":["cli/journey/journey-prune.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { frodo, state } from '@rockcarver/frodo-lib';\nimport yesno from 'yesno';\nimport { printMessage, verboseMessage } from '../../utils/Console';\n\nconst program = new FrodoCommand('frodo journey prune');\n\nprogram\n .description(\n 'Prune orphaned configuration artifacts left behind after deleting authentication trees. You will be prompted before any destructive operations are performed.'\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(\n `Pruning orphaned configuration artifacts in realm \"${state.getRealm()}\"...`\n );\n const orphanedNodes = await frodo.authn.journey.findOrphanedNodes();\n if (orphanedNodes.length > 0) {\n const ok = await yesno({\n question: 'Prune (permanently delete) orphaned nodes? (y|n):',\n });\n if (ok) {\n await frodo.authn.journey.removeOrphanedNodes(orphanedNodes);\n }\n } else {\n printMessage('No orphaned nodes found.');\n }\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,KAAK,EAAEC,KAAK,QAAQ,uBAAuB;AACpD,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,YAAY,EAAEC,cAAc,QAAQ,qBAAqB;AAElE,MAAMC,OAAO,GAAG,IAAIN,YAAY,CAAC,qBAAqB,CAAC;AAEvDM,OAAO,CACJC,WAAW,CACV,+JACF,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;IACjCZ,cAAc,CACX,sDAAqDH,KAAK,CAACgB,QAAQ,CAAC,CAAE,MACzE,CAAC;IACD,MAAMC,aAAa,GAAG,MAAMlB,KAAK,CAACmB,KAAK,CAACC,OAAO,CAACC,iBAAiB,CAAC,CAAC;IACnE,IAAIH,aAAa,CAACI,MAAM,GAAG,CAAC,EAAE;MAC5B,MAAMC,EAAE,GAAG,MAAMrB,KAAK,CAAC;QACrBsB,QAAQ,EAAE;MACZ,CAAC,CAAC;MACF,IAAID,EAAE,EAAE;QACN,MAAMvB,KAAK,CAACmB,KAAK,CAACC,OAAO,CAACK,mBAAmB,CAACP,aAAa,CAAC;MAC9D;IACF,CAAC,MAAM;MACLf,YAAY,CAAC,0BAA0B,CAAC;IAC1C;EACF,CAAC,MAAM;IACLuB,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHtB,OAAO,CAACuB,KAAK,CAAC,CAAC"}
@@ -1,20 +1,10 @@
1
1
  import { FrodoCommand } from '../FrodoCommand';
2
2
  import { sourcesOptionM } from './logs';
3
3
  import { Option } from 'commander';
4
- import { Authenticate, ConnectionProfile, Log, state } from '@rockcarver/frodo-lib';
4
+ import { frodo, state } from '@rockcarver/frodo-lib';
5
5
  import * as config from '../../utils/Config';
6
6
  import { printMessage } from '../../utils/Console';
7
7
  import { fetchLogs, provisionCreds } from '../../ops/LogOps';
8
- const {
9
- resolveLevel
10
- } = Log;
11
- const {
12
- getConnectionProfile,
13
- saveConnectionProfile
14
- } = ConnectionProfile;
15
- const {
16
- getTokens
17
- } = Authenticate;
18
8
  const SECONDS_IN_30_DAYS = 2592000;
19
9
  const SECONDS_IN_1_HOUR = 3600;
20
10
  const LOG_TIME_WINDOW_MAX = SECONDS_IN_30_DAYS;
@@ -25,12 +15,12 @@ program.description('Fetch Identity Cloud logs between a specified begin and end
25
15
  Following values are possible (values on the same line are equivalent): \
26
16
  \n0, SEVERE, FATAL, or ERROR\n1, WARNING, WARN or CONFIG\
27
17
  \n2, INFO or INFORMATION\n3, DEBUG, FINE, FINER or FINEST\
28
- \n4 or ALL').default('ERROR', `${resolveLevel('ERROR')}`)).addOption(new Option('-t, --transaction-id <txid>', 'Filter by transactionId')).addOption(new Option('-b, --begin-timestamp <beginTs>', 'Begin timestamp for period (in ISO8601, example: "2022-10-13T19:06:28Z", or "2022-09.30". \
18
+ \n4 or ALL').default('ERROR', `${frodo.cloud.log.resolveLevel('ERROR')}`)).addOption(new Option('-t, --transaction-id <txid>', 'Filter by transactionId')).addOption(new Option('-b, --begin-timestamp <beginTs>', 'Begin timestamp for period (in ISO8601, example: "2022-10-13T19:06:28Z", or "2022-09.30". \
29
19
  Cannot be more than 30 days in the past. If not specified, logs from one hour ago are fetched \
30
20
  (-e is ignored)')).addOption(new Option('-e, --end-timestamp <endTs>', 'End timestamp for period. Default: "now"')).addOption(new Option('-s, --search-string <ss>', 'Filter by a specific string (ANDed with transactionID filter)')).addOption(new Option('-d, --defaults', 'Use default logging noise filters').default(false, `Use custom logging noise filters defined in $HOME/${config.FRODO_LOG_NOISEFILTER_FILENAME}`)).action(async (host, user, password, options, command) => {
31
21
  command.handleDefaultArgsAndOpts(host, user, password, options, command);
32
22
  let credsFromParameters = true;
33
- const conn = await getConnectionProfile();
23
+ const conn = await frodo.conn.getConnectionProfile();
34
24
  if (conn) {
35
25
  state.setHost(conn.tenant);
36
26
  if (conn.logApiKey != null && conn.logApiSecret != null) {
@@ -48,7 +38,7 @@ Cannot be more than 30 days in the past. If not specified, logs from one hour ag
48
38
  state.setUsername(conn.username);
49
39
  state.setPassword(conn.password);
50
40
  }
51
- if (await getTokens(true)) {
41
+ if (await frodo.login.getTokens(true)) {
52
42
  const creds = await provisionCreds();
53
43
  state.setLogApiKey(creds.api_key_id);
54
44
  state.setLogApiSecret(creds.api_key_secret);
@@ -83,8 +73,8 @@ Cannot be more than 30 days in the past. If not specified, logs from one hour ag
83
73
  return;
84
74
  }
85
75
  let intermediateEndTs = 0;
86
- printMessage(`Fetching ID Cloud logs from the following sources: ${command.opts().sources} and levels [${resolveLevel(command.opts().level)}] of ${conn.tenant}...`);
87
- if (credsFromParameters) await saveConnectionProfile(host); // save new values if they were specified on CLI
76
+ printMessage(`Fetching ID Cloud logs from the following sources: ${command.opts().sources} and levels [${frodo.cloud.log.resolveLevel(command.opts().level)}] of ${conn.tenant}...`);
77
+ if (credsFromParameters) await frodo.conn.saveConnectionProfile(host); // save new values if they were specified on CLI
88
78
 
89
79
  let timeIncrement = LOG_TIME_WINDOW_INCREMENT;
90
80
  if (endTs - beginTs > 30) {
@@ -92,7 +82,7 @@ Cannot be more than 30 days in the past. If not specified, logs from one hour ag
92
82
  }
93
83
  do {
94
84
  intermediateEndTs = beginTs + timeIncrement;
95
- await fetchLogs(command.opts().sources, new Date(beginTs * 1000).toISOString(), new Date(intermediateEndTs * 1000).toISOString(), resolveLevel(command.opts().level), command.opts().transactionId, command.opts().searchString, null, config.getNoiseFilters(options.defaults));
85
+ await fetchLogs(command.opts().sources, new Date(beginTs * 1000).toISOString(), new Date(intermediateEndTs * 1000).toISOString(), frodo.cloud.log.resolveLevel(command.opts().level), command.opts().transactionId, command.opts().searchString, null, config.getNoiseFilters(options.defaults));
96
86
  beginTs = intermediateEndTs;
97
87
  } while (intermediateEndTs < endTs);
98
88
  }