@rockcarver/frodo-cli 2.0.0-6 → 2.0.0-60

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 (443) hide show
  1. package/.vscode/launch.json +1 -0
  2. package/CHANGELOG.md +427 -7
  3. package/dist/app.cjs +187368 -0
  4. package/dist/app.cjs.map +1 -0
  5. package/dist/app.d.cts +2 -0
  6. package/dist/chunk-MPPKDFVI.cjs +56 -0
  7. package/dist/chunk-MPPKDFVI.cjs.map +1 -0
  8. package/dist/launch.cjs +27 -0
  9. package/dist/launch.cjs.map +1 -0
  10. package/dist/launch.d.cts +1 -0
  11. package/dist/loader.cjs +836 -0
  12. package/dist/loader.cjs.map +1 -0
  13. package/dist/loader.d.cts +3 -0
  14. package/global-jest-setup.js +5 -0
  15. package/package.json +71 -64
  16. package/tsup.config.ts +40 -0
  17. package/esm/app.js +0 -58
  18. package/esm/app.js.map +0 -1
  19. package/esm/cli/FrodoCommand.js +0 -147
  20. package/esm/cli/FrodoCommand.js.map +0 -1
  21. package/esm/cli/_template/something-delete.js +0 -19
  22. package/esm/cli/_template/something-delete.js.map +0 -1
  23. package/esm/cli/_template/something-describe.js +0 -19
  24. package/esm/cli/_template/something-describe.js.map +0 -1
  25. package/esm/cli/_template/something-else-delete.js +0 -19
  26. package/esm/cli/_template/something-else-delete.js.map +0 -1
  27. package/esm/cli/_template/something-else-describe.js +0 -19
  28. package/esm/cli/_template/something-else-describe.js.map +0 -1
  29. package/esm/cli/_template/something-else-export.js +0 -19
  30. package/esm/cli/_template/something-else-export.js.map +0 -1
  31. package/esm/cli/_template/something-else-import.js +0 -19
  32. package/esm/cli/_template/something-else-import.js.map +0 -1
  33. package/esm/cli/_template/something-else-list.js +0 -19
  34. package/esm/cli/_template/something-else-list.js.map +0 -1
  35. package/esm/cli/_template/something-else.js +0 -10
  36. package/esm/cli/_template/something-else.js.map +0 -1
  37. package/esm/cli/_template/something-export.js +0 -19
  38. package/esm/cli/_template/something-export.js.map +0 -1
  39. package/esm/cli/_template/something-import.js +0 -19
  40. package/esm/cli/_template/something-import.js.map +0 -1
  41. package/esm/cli/_template/something-list.js +0 -19
  42. package/esm/cli/_template/something-list.js.map +0 -1
  43. package/esm/cli/_template/something-other-delete.js +0 -19
  44. package/esm/cli/_template/something-other-delete.js.map +0 -1
  45. package/esm/cli/_template/something-other-describe.js +0 -19
  46. package/esm/cli/_template/something-other-describe.js.map +0 -1
  47. package/esm/cli/_template/something-other-export.js +0 -19
  48. package/esm/cli/_template/something-other-export.js.map +0 -1
  49. package/esm/cli/_template/something-other-import.js +0 -19
  50. package/esm/cli/_template/something-other-import.js.map +0 -1
  51. package/esm/cli/_template/something-other-list.js +0 -19
  52. package/esm/cli/_template/something-other-list.js.map +0 -1
  53. package/esm/cli/_template/something-other.js +0 -10
  54. package/esm/cli/_template/something-other.js.map +0 -1
  55. package/esm/cli/_template/something.js +0 -16
  56. package/esm/cli/_template/something.js.map +0 -1
  57. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js +0 -21
  58. package/esm/cli/admin/admin-add-autoid-static-user-mapping.js.map +0 -1
  59. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js +0 -79
  60. package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js.map +0 -1
  61. package/esm/cli/admin/admin-federation-export.js +0 -42
  62. package/esm/cli/admin/admin-federation-export.js.map +0 -1
  63. package/esm/cli/admin/admin-federation-import.js +0 -46
  64. package/esm/cli/admin/admin-federation-import.js.map +0 -1
  65. package/esm/cli/admin/admin-federation-list.js +0 -26
  66. package/esm/cli/admin/admin-federation-list.js.map +0 -1
  67. package/esm/cli/admin/admin-federation.js +0 -13
  68. package/esm/cli/admin/admin-federation.js.map +0 -1
  69. package/esm/cli/admin/admin-get-access-token.js +0 -22
  70. package/esm/cli/admin/admin-get-access-token.js.map +0 -1
  71. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js +0 -22
  72. package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js.map +0 -1
  73. package/esm/cli/admin/admin-hide-generic-extension-attributes.js +0 -22
  74. package/esm/cli/admin/admin-hide-generic-extension-attributes.js.map +0 -1
  75. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js +0 -24
  76. package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js.map +0 -1
  77. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js +0 -24
  78. package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js.map +0 -1
  79. package/esm/cli/admin/admin-list-static-user-mappings.js +0 -25
  80. package/esm/cli/admin/admin-list-static-user-mappings.js.map +0 -1
  81. package/esm/cli/admin/admin-remove-static-user-mapping.js +0 -21
  82. package/esm/cli/admin/admin-remove-static-user-mapping.js.map +0 -1
  83. package/esm/cli/admin/admin-repair-org-model.js +0 -22
  84. package/esm/cli/admin/admin-repair-org-model.js.map +0 -1
  85. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js +0 -22
  86. package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js.map +0 -1
  87. package/esm/cli/admin/admin-show-generic-extension-attributes.js +0 -22
  88. package/esm/cli/admin/admin-show-generic-extension-attributes.js.map +0 -1
  89. package/esm/cli/admin/admin.js +0 -22
  90. package/esm/cli/admin/admin.js.map +0 -1
  91. package/esm/cli/agent/agent-delete.js +0 -45
  92. package/esm/cli/agent/agent-delete.js.map +0 -1
  93. package/esm/cli/agent/agent-describe.js +0 -19
  94. package/esm/cli/agent/agent-describe.js.map +0 -1
  95. package/esm/cli/agent/agent-export.js +0 -39
  96. package/esm/cli/agent/agent-export.js.map +0 -1
  97. package/esm/cli/agent/agent-gateway-delete.js +0 -45
  98. package/esm/cli/agent/agent-gateway-delete.js.map +0 -1
  99. package/esm/cli/agent/agent-gateway-describe.js +0 -19
  100. package/esm/cli/agent/agent-gateway-describe.js.map +0 -1
  101. package/esm/cli/agent/agent-gateway-export.js +0 -39
  102. package/esm/cli/agent/agent-gateway-export.js.map +0 -1
  103. package/esm/cli/agent/agent-gateway-import.js +0 -44
  104. package/esm/cli/agent/agent-gateway-import.js.map +0 -1
  105. package/esm/cli/agent/agent-gateway-list.js +0 -20
  106. package/esm/cli/agent/agent-gateway-list.js.map +0 -1
  107. package/esm/cli/agent/agent-gateway.js +0 -10
  108. package/esm/cli/agent/agent-gateway.js.map +0 -1
  109. package/esm/cli/agent/agent-import.js +0 -44
  110. package/esm/cli/agent/agent-import.js.map +0 -1
  111. package/esm/cli/agent/agent-java-delete.js +0 -45
  112. package/esm/cli/agent/agent-java-delete.js.map +0 -1
  113. package/esm/cli/agent/agent-java-describe.js +0 -19
  114. package/esm/cli/agent/agent-java-describe.js.map +0 -1
  115. package/esm/cli/agent/agent-java-export.js +0 -39
  116. package/esm/cli/agent/agent-java-export.js.map +0 -1
  117. package/esm/cli/agent/agent-java-import.js +0 -44
  118. package/esm/cli/agent/agent-java-import.js.map +0 -1
  119. package/esm/cli/agent/agent-java-list.js +0 -20
  120. package/esm/cli/agent/agent-java-list.js.map +0 -1
  121. package/esm/cli/agent/agent-java.js +0 -10
  122. package/esm/cli/agent/agent-java.js.map +0 -1
  123. package/esm/cli/agent/agent-list.js +0 -20
  124. package/esm/cli/agent/agent-list.js.map +0 -1
  125. package/esm/cli/agent/agent-web-delete.js +0 -45
  126. package/esm/cli/agent/agent-web-delete.js.map +0 -1
  127. package/esm/cli/agent/agent-web-describe.js +0 -19
  128. package/esm/cli/agent/agent-web-describe.js.map +0 -1
  129. package/esm/cli/agent/agent-web-export.js +0 -39
  130. package/esm/cli/agent/agent-web-export.js.map +0 -1
  131. package/esm/cli/agent/agent-web-import.js +0 -44
  132. package/esm/cli/agent/agent-web-import.js.map +0 -1
  133. package/esm/cli/agent/agent-web-list.js +0 -20
  134. package/esm/cli/agent/agent-web-list.js.map +0 -1
  135. package/esm/cli/agent/agent-web.js +0 -10
  136. package/esm/cli/agent/agent-web.js.map +0 -1
  137. package/esm/cli/agent/agent.js +0 -17
  138. package/esm/cli/agent/agent.js.map +0 -1
  139. package/esm/cli/app/app-delete.js +0 -19
  140. package/esm/cli/app/app-delete.js.map +0 -1
  141. package/esm/cli/app/app-describe.js +0 -19
  142. package/esm/cli/app/app-describe.js.map +0 -1
  143. package/esm/cli/app/app-export.js +0 -49
  144. package/esm/cli/app/app-export.js.map +0 -1
  145. package/esm/cli/app/app-import.js +0 -54
  146. package/esm/cli/app/app-import.js.map +0 -1
  147. package/esm/cli/app/app-list.js +0 -22
  148. package/esm/cli/app/app-list.js.map +0 -1
  149. package/esm/cli/app/app.js +0 -21
  150. package/esm/cli/app/app.js.map +0 -1
  151. package/esm/cli/authz/authz-policy-delete.js +0 -40
  152. package/esm/cli/authz/authz-policy-delete.js.map +0 -1
  153. package/esm/cli/authz/authz-policy-describe.js +0 -27
  154. package/esm/cli/authz/authz-policy-describe.js.map +0 -1
  155. package/esm/cli/authz/authz-policy-export.js +0 -72
  156. package/esm/cli/authz/authz-policy-export.js.map +0 -1
  157. package/esm/cli/authz/authz-policy-import.js +0 -62
  158. package/esm/cli/authz/authz-policy-import.js.map +0 -1
  159. package/esm/cli/authz/authz-policy-list.js +0 -34
  160. package/esm/cli/authz/authz-policy-list.js.map +0 -1
  161. package/esm/cli/authz/authz-policy.js +0 -10
  162. package/esm/cli/authz/authz-policy.js.map +0 -1
  163. package/esm/cli/authz/authz-set-delete.js +0 -34
  164. package/esm/cli/authz/authz-set-delete.js.map +0 -1
  165. package/esm/cli/authz/authz-set-describe.js +0 -27
  166. package/esm/cli/authz/authz-set-describe.js.map +0 -1
  167. package/esm/cli/authz/authz-set-export.js +0 -52
  168. package/esm/cli/authz/authz-set-export.js.map +0 -1
  169. package/esm/cli/authz/authz-set-import.js +0 -58
  170. package/esm/cli/authz/authz-set-import.js.map +0 -1
  171. package/esm/cli/authz/authz-set-list.js +0 -22
  172. package/esm/cli/authz/authz-set-list.js.map +0 -1
  173. package/esm/cli/authz/authz-set.js +0 -10
  174. package/esm/cli/authz/authz-set.js.map +0 -1
  175. package/esm/cli/authz/authz-type-delete.js +0 -40
  176. package/esm/cli/authz/authz-type-delete.js.map +0 -1
  177. package/esm/cli/authz/authz-type-describe.js +0 -31
  178. package/esm/cli/authz/authz-type-describe.js.map +0 -1
  179. package/esm/cli/authz/authz-type-export.js +0 -46
  180. package/esm/cli/authz/authz-type-export.js.map +0 -1
  181. package/esm/cli/authz/authz-type-import.js +0 -52
  182. package/esm/cli/authz/authz-type-import.js.map +0 -1
  183. package/esm/cli/authz/authz-type-list.js +0 -23
  184. package/esm/cli/authz/authz-type-list.js.map +0 -1
  185. package/esm/cli/authz/authz-type.js +0 -10
  186. package/esm/cli/authz/authz-type.js.map +0 -1
  187. package/esm/cli/authz/authz.js +0 -12
  188. package/esm/cli/authz/authz.js.map +0 -1
  189. package/esm/cli/conn/conn-delete.js +0 -14
  190. package/esm/cli/conn/conn-delete.js.map +0 -1
  191. package/esm/cli/conn/conn-describe.js +0 -15
  192. package/esm/cli/conn/conn-describe.js.map +0 -1
  193. package/esm/cli/conn/conn-list.js +0 -15
  194. package/esm/cli/conn/conn-list.js.map +0 -1
  195. package/esm/cli/conn/conn-save.js +0 -94
  196. package/esm/cli/conn/conn-save.js.map +0 -1
  197. package/esm/cli/conn/conn.js +0 -15
  198. package/esm/cli/conn/conn.js.map +0 -1
  199. package/esm/cli/email/email-template-export.js +0 -37
  200. package/esm/cli/email/email-template-export.js.map +0 -1
  201. package/esm/cli/email/email-template-import.js +0 -42
  202. package/esm/cli/email/email-template-import.js.map +0 -1
  203. package/esm/cli/email/email-template-list.js +0 -22
  204. package/esm/cli/email/email-template-list.js.map +0 -1
  205. package/esm/cli/email/email-template.js +0 -8
  206. package/esm/cli/email/email-template.js.map +0 -1
  207. package/esm/cli/email/email.js +0 -11
  208. package/esm/cli/email/email.js.map +0 -1
  209. package/esm/cli/esv/esv-apply.js +0 -52
  210. package/esm/cli/esv/esv-apply.js.map +0 -1
  211. package/esm/cli/esv/esv-secret-create.js +0 -22
  212. package/esm/cli/esv/esv-secret-create.js.map +0 -1
  213. package/esm/cli/esv/esv-secret-delete.js +0 -32
  214. package/esm/cli/esv/esv-secret-delete.js.map +0 -1
  215. package/esm/cli/esv/esv-secret-describe.js +0 -22
  216. package/esm/cli/esv/esv-secret-describe.js.map +0 -1
  217. package/esm/cli/esv/esv-secret-export.js +0 -19
  218. package/esm/cli/esv/esv-secret-export.js.map +0 -1
  219. package/esm/cli/esv/esv-secret-import.js +0 -19
  220. package/esm/cli/esv/esv-secret-import.js.map +0 -1
  221. package/esm/cli/esv/esv-secret-list.js +0 -22
  222. package/esm/cli/esv/esv-secret-list.js.map +0 -1
  223. package/esm/cli/esv/esv-secret-set.js +0 -22
  224. package/esm/cli/esv/esv-secret-set.js.map +0 -1
  225. package/esm/cli/esv/esv-secret-version-activate.js +0 -27
  226. package/esm/cli/esv/esv-secret-version-activate.js.map +0 -1
  227. package/esm/cli/esv/esv-secret-version-create.js +0 -22
  228. package/esm/cli/esv/esv-secret-version-create.js.map +0 -1
  229. package/esm/cli/esv/esv-secret-version-deactivate.js +0 -27
  230. package/esm/cli/esv/esv-secret-version-deactivate.js.map +0 -1
  231. package/esm/cli/esv/esv-secret-version-delete.js +0 -32
  232. package/esm/cli/esv/esv-secret-version-delete.js.map +0 -1
  233. package/esm/cli/esv/esv-secret-version-list.js +0 -22
  234. package/esm/cli/esv/esv-secret-version-list.js.map +0 -1
  235. package/esm/cli/esv/esv-secret-version.js +0 -10
  236. package/esm/cli/esv/esv-secret-version.js.map +0 -1
  237. package/esm/cli/esv/esv-secret.js +0 -16
  238. package/esm/cli/esv/esv-secret.js.map +0 -1
  239. package/esm/cli/esv/esv-variable-create.js +0 -21
  240. package/esm/cli/esv/esv-variable-create.js.map +0 -1
  241. package/esm/cli/esv/esv-variable-delete.js +0 -32
  242. package/esm/cli/esv/esv-variable-delete.js.map +0 -1
  243. package/esm/cli/esv/esv-variable-describe.js +0 -22
  244. package/esm/cli/esv/esv-variable-describe.js.map +0 -1
  245. package/esm/cli/esv/esv-variable-export.js +0 -19
  246. package/esm/cli/esv/esv-variable-export.js.map +0 -1
  247. package/esm/cli/esv/esv-variable-import.js +0 -19
  248. package/esm/cli/esv/esv-variable-import.js.map +0 -1
  249. package/esm/cli/esv/esv-variable-list.js +0 -22
  250. package/esm/cli/esv/esv-variable-list.js.map +0 -1
  251. package/esm/cli/esv/esv-variable-set.js +0 -28
  252. package/esm/cli/esv/esv-variable-set.js.map +0 -1
  253. package/esm/cli/esv/esv-variable.js +0 -15
  254. package/esm/cli/esv/esv-variable.js.map +0 -1
  255. package/esm/cli/esv/esv.js +0 -12
  256. package/esm/cli/esv/esv.js.map +0 -1
  257. package/esm/cli/idm/idm-count.js +0 -22
  258. package/esm/cli/idm/idm-count.js.map +0 -1
  259. package/esm/cli/idm/idm-export.js +0 -39
  260. package/esm/cli/idm/idm-export.js.map +0 -1
  261. package/esm/cli/idm/idm-import.js +0 -42
  262. package/esm/cli/idm/idm-import.js.map +0 -1
  263. package/esm/cli/idm/idm-list.js +0 -26
  264. package/esm/cli/idm/idm-list.js.map +0 -1
  265. package/esm/cli/idm/idm.js +0 -13
  266. package/esm/cli/idm/idm.js.map +0 -1
  267. package/esm/cli/idp/idp-export.js +0 -39
  268. package/esm/cli/idp/idp-export.js.map +0 -1
  269. package/esm/cli/idp/idp-import.js +0 -42
  270. package/esm/cli/idp/idp-import.js.map +0 -1
  271. package/esm/cli/idp/idp-list.js +0 -25
  272. package/esm/cli/idp/idp-list.js.map +0 -1
  273. package/esm/cli/idp/idp.js +0 -12
  274. package/esm/cli/idp/idp.js.map +0 -1
  275. package/esm/cli/info/info.js +0 -48
  276. package/esm/cli/info/info.js.map +0 -1
  277. package/esm/cli/journey/journey-delete.js +0 -31
  278. package/esm/cli/journey/journey-delete.js.map +0 -1
  279. package/esm/cli/journey/journey-describe.js +0 -117
  280. package/esm/cli/journey/journey-describe.js.map +0 -1
  281. package/esm/cli/journey/journey-disable.js +0 -37
  282. package/esm/cli/journey/journey-disable.js.map +0 -1
  283. package/esm/cli/journey/journey-enable.js +0 -37
  284. package/esm/cli/journey/journey-enable.js.map +0 -1
  285. package/esm/cli/journey/journey-export.js +0 -47
  286. package/esm/cli/journey/journey-export.js.map +0 -1
  287. package/esm/cli/journey/journey-import.js +0 -54
  288. package/esm/cli/journey/journey-import.js.map +0 -1
  289. package/esm/cli/journey/journey-list.js +0 -22
  290. package/esm/cli/journey/journey-list.js.map +0 -1
  291. package/esm/cli/journey/journey-prune.js +0 -31
  292. package/esm/cli/journey/journey-prune.js.map +0 -1
  293. package/esm/cli/journey/journey.js +0 -17
  294. package/esm/cli/journey/journey.js.map +0 -1
  295. package/esm/cli/log/log-fetch.js +0 -91
  296. package/esm/cli/log/log-fetch.js.map +0 -1
  297. package/esm/cli/log/log-key-delete.js +0 -32
  298. package/esm/cli/log/log-key-delete.js.map +0 -1
  299. package/esm/cli/log/log-key-describe.js +0 -19
  300. package/esm/cli/log/log-key-describe.js.map +0 -1
  301. package/esm/cli/log/log-key-list.js +0 -23
  302. package/esm/cli/log/log-key-list.js.map +0 -1
  303. package/esm/cli/log/log-key.js +0 -8
  304. package/esm/cli/log/log-key.js.map +0 -1
  305. package/esm/cli/log/log-list.js +0 -49
  306. package/esm/cli/log/log-list.js.map +0 -1
  307. package/esm/cli/log/log-tail.js +0 -46
  308. package/esm/cli/log/log-tail.js.map +0 -1
  309. package/esm/cli/log/log.js +0 -17
  310. package/esm/cli/log/log.js.map +0 -1
  311. package/esm/cli/realm/realm-add-custom-domain.js +0 -22
  312. package/esm/cli/realm/realm-add-custom-domain.js.map +0 -1
  313. package/esm/cli/realm/realm-describe.js +0 -21
  314. package/esm/cli/realm/realm-describe.js.map +0 -1
  315. package/esm/cli/realm/realm-list.js +0 -22
  316. package/esm/cli/realm/realm-list.js.map +0 -1
  317. package/esm/cli/realm/realm-remove-custom-domain.js +0 -21
  318. package/esm/cli/realm/realm-remove-custom-domain.js.map +0 -1
  319. package/esm/cli/realm/realm.js +0 -18
  320. package/esm/cli/realm/realm.js.map +0 -1
  321. package/esm/cli/saml/saml-cot-export.js +0 -40
  322. package/esm/cli/saml/saml-cot-export.js.map +0 -1
  323. package/esm/cli/saml/saml-cot-import.js +0 -46
  324. package/esm/cli/saml/saml-cot-import.js.map +0 -1
  325. package/esm/cli/saml/saml-cot-list.js +0 -23
  326. package/esm/cli/saml/saml-cot-list.js.map +0 -1
  327. package/esm/cli/saml/saml-cot.js +0 -8
  328. package/esm/cli/saml/saml-cot.js.map +0 -1
  329. package/esm/cli/saml/saml-delete.js +0 -31
  330. package/esm/cli/saml/saml-delete.js.map +0 -1
  331. package/esm/cli/saml/saml-describe.js +0 -22
  332. package/esm/cli/saml/saml-describe.js.map +0 -1
  333. package/esm/cli/saml/saml-export.js +0 -37
  334. package/esm/cli/saml/saml-export.js.map +0 -1
  335. package/esm/cli/saml/saml-import.js +0 -42
  336. package/esm/cli/saml/saml-import.js.map +0 -1
  337. package/esm/cli/saml/saml-list.js +0 -22
  338. package/esm/cli/saml/saml-list.js.map +0 -1
  339. package/esm/cli/saml/saml-metadata-export.js +0 -32
  340. package/esm/cli/saml/saml-metadata-export.js.map +0 -1
  341. package/esm/cli/saml/saml-metadata.js +0 -6
  342. package/esm/cli/saml/saml-metadata.js.map +0 -1
  343. package/esm/cli/saml/saml.js +0 -16
  344. package/esm/cli/saml/saml.js.map +0 -1
  345. package/esm/cli/script/script-delete.js +0 -19
  346. package/esm/cli/script/script-delete.js.map +0 -1
  347. package/esm/cli/script/script-describe.js +0 -19
  348. package/esm/cli/script/script-describe.js.map +0 -1
  349. package/esm/cli/script/script-export.js +0 -59
  350. package/esm/cli/script/script-export.js.map +0 -1
  351. package/esm/cli/script/script-import.js +0 -32
  352. package/esm/cli/script/script-import.js.map +0 -1
  353. package/esm/cli/script/script-list.js +0 -23
  354. package/esm/cli/script/script-list.js.map +0 -1
  355. package/esm/cli/script/script.js +0 -18
  356. package/esm/cli/script/script.js.map +0 -1
  357. package/esm/cli/service/service-delete.js +0 -19
  358. package/esm/cli/service/service-delete.js.map +0 -1
  359. package/esm/cli/service/service-export.js +0 -37
  360. package/esm/cli/service/service-export.js.map +0 -1
  361. package/esm/cli/service/service-import.js +0 -44
  362. package/esm/cli/service/service-import.js.map +0 -1
  363. package/esm/cli/service/service-list.js +0 -17
  364. package/esm/cli/service/service-list.js.map +0 -1
  365. package/esm/cli/service/service.js +0 -13
  366. package/esm/cli/service/service.js.map +0 -1
  367. package/esm/cli/theme/theme-delete.e2e.test_.js.map +0 -1
  368. package/esm/cli/theme/theme-delete.js +0 -37
  369. package/esm/cli/theme/theme-delete.js.map +0 -1
  370. package/esm/cli/theme/theme-export.js +0 -42
  371. package/esm/cli/theme/theme-export.js.map +0 -1
  372. package/esm/cli/theme/theme-import.js +0 -47
  373. package/esm/cli/theme/theme-import.js.map +0 -1
  374. package/esm/cli/theme/theme-list.e2e.test_.js.map +0 -1
  375. package/esm/cli/theme/theme-list.js +0 -22
  376. package/esm/cli/theme/theme-list.js.map +0 -1
  377. package/esm/cli/theme/theme.js +0 -13
  378. package/esm/cli/theme/theme.js.map +0 -1
  379. package/esm/help/SampleData.js +0 -7
  380. package/esm/help/SampleData.js.map +0 -1
  381. package/esm/launch.js +0 -15
  382. package/esm/launch.js.map +0 -1
  383. package/esm/loader.js +0 -40
  384. package/esm/loader.js.map +0 -1
  385. package/esm/ops/AdminFederationOps.js +0 -208
  386. package/esm/ops/AdminFederationOps.js.map +0 -1
  387. package/esm/ops/AgentOps.js +0 -665
  388. package/esm/ops/AgentOps.js.map +0 -1
  389. package/esm/ops/CirclesOfTrustOps.js +0 -248
  390. package/esm/ops/CirclesOfTrustOps.js.map +0 -1
  391. package/esm/ops/ConnectionProfileOps.js +0 -118
  392. package/esm/ops/ConnectionProfileOps.js.map +0 -1
  393. package/esm/ops/EmailTemplateOps.js +0 -353
  394. package/esm/ops/EmailTemplateOps.js.map +0 -1
  395. package/esm/ops/IdmOps.js +0 -347
  396. package/esm/ops/IdmOps.js.map +0 -1
  397. package/esm/ops/IdpOps.js +0 -204
  398. package/esm/ops/IdpOps.js.map +0 -1
  399. package/esm/ops/JourneyOps.js +0 -653
  400. package/esm/ops/JourneyOps.js.map +0 -1
  401. package/esm/ops/LogOps.js +0 -139
  402. package/esm/ops/LogOps.js.map +0 -1
  403. package/esm/ops/NodeOps.js +0 -86
  404. package/esm/ops/NodeOps.js.map +0 -1
  405. package/esm/ops/OAuth2ClientOps.js +0 -258
  406. package/esm/ops/OAuth2ClientOps.js.map +0 -1
  407. package/esm/ops/OrganizationOps.js +0 -28
  408. package/esm/ops/OrganizationOps.js.map +0 -1
  409. package/esm/ops/PolicyOps.js +0 -478
  410. package/esm/ops/PolicyOps.js.map +0 -1
  411. package/esm/ops/PolicySetOps.js +0 -362
  412. package/esm/ops/PolicySetOps.js.map +0 -1
  413. package/esm/ops/RealmOps.js +0 -111
  414. package/esm/ops/RealmOps.js.map +0 -1
  415. package/esm/ops/ResourceTypeOps.js +0 -436
  416. package/esm/ops/ResourceTypeOps.js.map +0 -1
  417. package/esm/ops/Saml2Ops.js +0 -273
  418. package/esm/ops/Saml2Ops.js.map +0 -1
  419. package/esm/ops/Saml2Ops.test_.js.map +0 -1
  420. package/esm/ops/ScriptOps.js +0 -375
  421. package/esm/ops/ScriptOps.js.map +0 -1
  422. package/esm/ops/SecretsOps.js +0 -223
  423. package/esm/ops/SecretsOps.js.map +0 -1
  424. package/esm/ops/ServiceOps.js +0 -192
  425. package/esm/ops/ServiceOps.js.map +0 -1
  426. package/esm/ops/ThemeOps.js +0 -345
  427. package/esm/ops/ThemeOps.js.map +0 -1
  428. package/esm/ops/VariablesOps.js +0 -133
  429. package/esm/ops/VariablesOps.js.map +0 -1
  430. package/esm/ops/utils/OpsUtils.js +0 -9
  431. package/esm/ops/utils/OpsUtils.js.map +0 -1
  432. package/esm/ops/utils/Wordwrap.js +0 -5
  433. package/esm/ops/utils/Wordwrap.js.map +0 -1
  434. package/esm/storage/StaticStorage.js +0 -12
  435. package/esm/storage/StaticStorage.js.map +0 -1
  436. package/esm/utils/Config.js +0 -40
  437. package/esm/utils/Config.js.map +0 -1
  438. package/esm/utils/Console.js +0 -534
  439. package/esm/utils/Console.js.map +0 -1
  440. package/esm/utils/ExportImportUtils.js +0 -90
  441. package/esm/utils/ExportImportUtils.js.map +0 -1
  442. package/esm/utils/Version.js +0 -135
  443. package/esm/utils/Version.js.map +0 -1
@@ -1,653 +0,0 @@
1
- import { frodo, state } from '@rockcarver/frodo-lib';
2
- import fs from 'fs';
3
- import { printMessage, createProgressBar, updateProgressBar, stopProgressBar, showSpinner, succeedSpinner, failSpinner, createTable, debugMessage } from '../utils/Console';
4
- import * as CirclesOfTrust from './CirclesOfTrustOps';
5
- import * as EmailTemplate from './EmailTemplateOps';
6
- import * as Idp from './IdpOps';
7
- import * as Node from './NodeOps';
8
- import * as Saml2 from './Saml2Ops';
9
- import * as Script from './ScriptOps';
10
- import * as Theme from './ThemeOps';
11
- import wordwrap from './utils/Wordwrap';
12
- import { cloneDeep } from './utils/OpsUtils';
13
-
14
- /**
15
- * List all the journeys/trees
16
- * @param {boolean} long Long version, all the fields
17
- * @param {boolean} analyze Analyze journeys/trees for custom nodes (expensive)
18
- * @returns {Promise<TreeSkeleton[]>} a promise that resolves to an array journey objects
19
- */
20
- export async function listJourneys(long = false, analyze = false) {
21
- let journeys = [];
22
- try {
23
- journeys = await frodo.authn.journey.getJourneys();
24
- if (!long && !analyze) {
25
- for (const journeyStub of journeys) {
26
- printMessage(`${journeyStub['_id']}`, 'data');
27
- }
28
- } else {
29
- if (!analyze) {
30
- const table = createTable(['Name', 'Status', 'Tags']);
31
- for (const journeyStub of journeys) {
32
- var _journeyStub$uiConfig;
33
- table.push([`${journeyStub._id}`, journeyStub.enabled === false ? 'disabled'['brightRed'] : 'enabled'['brightGreen'], (_journeyStub$uiConfig = journeyStub.uiConfig) !== null && _journeyStub$uiConfig !== void 0 && _journeyStub$uiConfig.categories ? wordwrap(JSON.parse(journeyStub.uiConfig.categories).join(', '), 60) : '']);
34
- }
35
- printMessage(table.toString(), 'data');
36
- } else {
37
- showSpinner('Retrieving details of all journeys...');
38
- const exportPromises = [];
39
- try {
40
- for (const journeyStub of journeys) {
41
- exportPromises.push(frodo.authn.journey.exportJourney(journeyStub['_id'], {
42
- useStringArrays: false,
43
- deps: false
44
- }));
45
- }
46
- const journeyExports = await Promise.all(exportPromises);
47
- succeedSpinner('Retrieved details of all journeys.');
48
- const table = createTable(['Name', 'Status', 'Classification', 'Tags']);
49
- for (const journeyExport of journeyExports) {
50
- var _journeyExport$tree$u;
51
- table.push([`${journeyExport.tree._id}`, journeyExport.tree.enabled === false ? 'disabled'['brightRed'] : 'enabled'['brightGreen'], getJourneyClassification(journeyExport).join(', '), (_journeyExport$tree$u = journeyExport.tree.uiConfig) !== null && _journeyExport$tree$u !== void 0 && _journeyExport$tree$u.categories ? wordwrap(JSON.parse(journeyExport.tree.uiConfig.categories).join(', '), 60) : '']);
52
- }
53
- printMessage(table.toString(), 'data');
54
- } catch (error) {
55
- failSpinner('Error retrieving details of all journeys.');
56
- printMessage(error.response.data, 'error');
57
- }
58
- }
59
- }
60
- } catch (error) {
61
- var _error$response;
62
- printMessage((_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.data, 'error');
63
- }
64
- return journeys;
65
- }
66
-
67
- /**
68
- * Export journey by id/name to file
69
- * @param {string} journeyId journey id/name
70
- * @param {string} file optional export file name
71
- * @param {TreeExportOptions} options export options
72
- */
73
- export async function exportJourneyToFile(journeyId, file, options) {
74
- debugMessage(`exportJourneyToFile: start`);
75
- const verbose = state.getDebug();
76
- if (!file) {
77
- file = frodo.utils.impex.getTypedFilename(journeyId, 'journey');
78
- }
79
- if (state.getDirectory()) {
80
- const dir = state.getDirectory().replace(/\/$/, '');
81
- debugMessage(`exportJourneyToFile: directory='${dir}'`);
82
- file = `${dir}/${file}`;
83
- // create directory if it doesn't exist
84
- if (!fs.existsSync(dir)) {
85
- debugMessage(`exportJourneyToFile: creating directory '${dir}'`);
86
- fs.mkdirSync(dir, {
87
- recursive: true
88
- });
89
- }
90
- }
91
- if (!verbose) showSpinner(`${journeyId}`);
92
- try {
93
- const fileData = await frodo.authn.journey.exportJourney(journeyId, options);
94
- if (verbose) showSpinner(`${journeyId}`);
95
- frodo.utils.impex.saveJsonToFile(fileData, file);
96
- succeedSpinner(`Exported ${journeyId['brightCyan']} to ${file['brightCyan']}.`);
97
- } catch (error) {
98
- if (verbose) showSpinner(`${journeyId}`);
99
- failSpinner(`Error exporting journey ${journeyId}: ${error}`);
100
- }
101
- }
102
-
103
- /**
104
- * Export all journeys to file
105
- * @param {string} file optional export file name
106
- * @param {TreeExportOptions} options export options
107
- */
108
- export async function exportJourneysToFile(file, options = {
109
- deps: false,
110
- useStringArrays: false
111
- }) {
112
- let fileName = file;
113
- if (!fileName) {
114
- fileName = frodo.utils.impex.getTypedFilename(`all${frodo.utils.impex.getRealmString()}Journeys`, 'journeys');
115
- }
116
- const trees = await frodo.authn.journey.getJourneys();
117
- const fileData = frodo.authn.journey.createMultiTreeExportTemplate();
118
- createProgressBar(trees.length, 'Exporting journeys...');
119
- for (const tree of trees) {
120
- updateProgressBar(`${tree._id}`);
121
- try {
122
- const exportData = await frodo.authn.journey.exportJourney(tree._id, options);
123
- delete exportData.meta;
124
- fileData.trees[tree._id] = exportData;
125
- } catch (error) {
126
- printMessage(`Error exporting journey ${tree._id}: ${error}`, 'error');
127
- }
128
- }
129
- frodo.utils.impex.saveJsonToFile(fileData, fileName);
130
- stopProgressBar(`Exported to ${fileName}`);
131
- }
132
-
133
- /**
134
- * Export all journeys to separate files
135
- * @param {TreeExportOptions} options export options
136
- */
137
- export async function exportJourneysToFiles(options) {
138
- const trees = await frodo.authn.journey.getJourneys();
139
- createProgressBar(trees.length, 'Exporting journeys...');
140
- for (const tree of trees) {
141
- updateProgressBar(`${tree._id}`);
142
- const fileName = frodo.utils.impex.getTypedFilename(`${tree._id}`, 'journey');
143
- try {
144
- const exportData = await frodo.authn.journey.exportJourney(tree._id, options);
145
- frodo.utils.impex.saveJsonToFile(exportData, fileName);
146
- } catch (error) {
147
- // do we need to report status here?
148
- }
149
- }
150
- stopProgressBar('Done');
151
- }
152
-
153
- /**
154
- * Import a journey from file
155
- * @param {string} journeyId journey id/name
156
- * @param {string} file import file name
157
- * @param {TreeImportOptions} options import options
158
- */
159
- export async function importJourneyFromFile(journeyId, file, options) {
160
- const verbose = state.getDebug();
161
- fs.readFile(file, 'utf8', async (err, data) => {
162
- if (err) throw err;
163
- let journeyData = JSON.parse(data);
164
- // check if this is a file with multiple trees and get journey by id
165
- if (journeyData.trees && journeyData.trees[journeyId]) {
166
- journeyData = journeyData.trees[journeyId];
167
- } else if (journeyData.trees) {
168
- journeyData = null;
169
- }
170
-
171
- // if a journeyId was specified, only import the matching journey
172
- if (journeyData && journeyId === journeyData.tree._id) {
173
- // attempt dependency resolution for single tree import
174
- const installedJourneys = (await frodo.authn.journey.getJourneys()).map(x => x._id);
175
- const unresolvedJourneys = {};
176
- const resolvedJourneys = [];
177
- showSpinner('Resolving dependencies');
178
- await frodo.authn.journey.resolveDependencies(installedJourneys, {
179
- [journeyId]: journeyData
180
- }, unresolvedJourneys, resolvedJourneys);
181
- if (Object.keys(unresolvedJourneys).length === 0) {
182
- succeedSpinner(`Resolved all dependencies.`);
183
- if (!verbose) showSpinner(`Importing ${journeyId}...`);
184
- frodo.authn.journey.importJourney(journeyData, options).then(() => {
185
- if (verbose) showSpinner(`Importing ${journeyId}...`);
186
- succeedSpinner(`Imported ${journeyId}.`);
187
- }).catch(importError => {
188
- if (verbose) showSpinner(`Importing ${journeyId}...`);
189
- failSpinner(`${importError}`);
190
- });
191
- } else {
192
- failSpinner(`Unresolved dependencies:`);
193
- for (const journey of Object.keys(unresolvedJourneys)) {
194
- printMessage(` ${journey} requires ${unresolvedJourneys[journey]}`, 'error');
195
- }
196
- }
197
- // end dependency resolution for single tree import
198
- } else {
199
- showSpinner(`Importing ${journeyId}...`);
200
- failSpinner(`${journeyId} not found!`);
201
- }
202
- });
203
- }
204
-
205
- /**
206
- * Import first journey from file
207
- * @param {string} file import file name
208
- * @param {TreeImportOptions} options import options
209
- */
210
- export async function importFirstJourneyFromFile(file, options) {
211
- const verbose = state.getDebug();
212
- fs.readFile(file, 'utf8', async (err, data) => {
213
- if (err) throw err;
214
- let journeyData = cloneDeep(JSON.parse(data));
215
- let journeyId = null;
216
- // single tree
217
- if (journeyData.tree) {
218
- journeyId = cloneDeep(journeyData.tree._id);
219
- }
220
- // multiple trees, so get the first tree
221
- else if (journeyData.trees) {
222
- for (const treeId in journeyData.trees) {
223
- if (Object.hasOwnProperty.call(journeyData.trees, treeId)) {
224
- journeyId = treeId;
225
- journeyData = journeyData.trees[treeId];
226
- break;
227
- }
228
- }
229
- }
230
-
231
- // if a journeyId was specified, only import the matching journey
232
- if (journeyData && journeyId) {
233
- // attempt dependency resolution for single tree import
234
- const installedJourneys = (await frodo.authn.journey.getJourneys()).map(x => x._id);
235
- const unresolvedJourneys = {};
236
- const resolvedJourneys = [];
237
- showSpinner('Resolving dependencies');
238
- await frodo.authn.journey.resolveDependencies(installedJourneys, {
239
- [journeyId]: journeyData
240
- }, unresolvedJourneys, resolvedJourneys);
241
- if (Object.keys(unresolvedJourneys).length === 0) {
242
- succeedSpinner(`Resolved all dependencies.`);
243
- if (!verbose) showSpinner(`Importing ${journeyId}...`);
244
- frodo.authn.journey.importJourney(journeyData, options).then(() => {
245
- if (verbose) showSpinner(`Importing ${journeyId}...`);
246
- succeedSpinner(`Imported ${journeyId}.`);
247
- }).catch(importError => {
248
- if (verbose) showSpinner(`Importing ${journeyId}...`);
249
- failSpinner(`${importError}`);
250
- });
251
- } else {
252
- failSpinner(`Unresolved dependencies:`);
253
- for (const journey of Object.keys(unresolvedJourneys)) {
254
- printMessage(` ${journey} requires ${unresolvedJourneys[journey]}`, 'error');
255
- }
256
- }
257
- } else {
258
- showSpinner(`Importing...`);
259
- failSpinner(`No journeys found!`);
260
- }
261
- // end dependency resolution for single tree import
262
- });
263
- }
264
-
265
- /**
266
- * Import all journeys from file
267
- * @param {string} file import file name
268
- * @param {TreeImportOptions} options import options
269
- */
270
- export async function importJourneysFromFile(file, options) {
271
- fs.readFile(file, 'utf8', (err, data) => {
272
- if (err) throw err;
273
- const fileData = JSON.parse(data);
274
- frodo.authn.journey.importAllJourneys(fileData.trees, options);
275
- });
276
- }
277
-
278
- /**
279
- * Import all journeys from separate files
280
- * @param {TreeImportOptions} options import options
281
- */
282
- export async function importJourneysFromFiles(options) {
283
- const names = fs.readdirSync('.');
284
- const jsonFiles = names.filter(name => name.toLowerCase().endsWith('.journey.json'));
285
- const allJourneysData = {
286
- trees: {}
287
- };
288
- for (const file of jsonFiles) {
289
- const journeyData = JSON.parse(fs.readFileSync(file, 'utf8'));
290
- allJourneysData.trees[journeyData.tree._id] = journeyData;
291
- }
292
- frodo.authn.journey.importAllJourneys(allJourneysData.trees, options);
293
- }
294
-
295
- /**
296
- * Get journey classification
297
- * @param {SingleTreeExportInterface} journey journey export
298
- * @returns {string[]} Colored string array of classifications
299
- */
300
- export function getJourneyClassification(journey) {
301
- return frodo.authn.journey.getJourneyClassification(journey).map(it => {
302
- switch (it) {
303
- case 'standard':
304
- return it['brightGreen'];
305
- case 'cloud':
306
- return it['brightMagenta'];
307
- case 'custom':
308
- return it['brightRed'];
309
- case 'premium':
310
- return it['brightYellow'];
311
- }
312
- });
313
- }
314
-
315
- /**
316
- * Get journey classification in markdown
317
- * @param {SingleTreeExportInterface} journey journey export
318
- * @returns {string[]} Colored string array of classifications
319
- */
320
- export function getJourneyClassificationMd(journey) {
321
- return frodo.authn.journey.getJourneyClassification(journey).map(it => {
322
- switch (it) {
323
- case 'standard':
324
- return `:green_circle: \`${it}\``;
325
- case 'cloud':
326
- return `:purple_circle: \`${it}\``;
327
- case 'custom':
328
- return `:red_circle: \`${it}\``;
329
- case 'premium':
330
- return `:yellow_circle: \`${it}\``;
331
- }
332
- });
333
- }
334
-
335
- /**
336
- * Get a one-line description of the tree object
337
- * @param {TreeSkeleton} treeObj circle of trust object to describe
338
- * @returns {string} a one-line description
339
- */
340
- export function getOneLineDescription(treeObj) {
341
- const description = `[${treeObj._id['brightCyan']}]`;
342
- return description;
343
- }
344
-
345
- /**
346
- * Get a one-line description of the tree object in markdown
347
- * @param {TreeSkeleton} treeObj circle of trust object to describe
348
- * @returns {string} a one-line description
349
- */
350
- export function getOneLineDescriptionMd(treeObj) {
351
- const description = `${treeObj._id}`;
352
- return description;
353
- }
354
-
355
- /**
356
- * Helper function to render a nested list of dependent trees
357
- * @param {TreeDependencyMapInterface} descendents tree dependency map
358
- * @param {number} depth level of nesting
359
- */
360
- function describeTreeDescendents(descendents, depth = 0) {
361
- if (depth || Object.values(descendents)[0].length) {
362
- // heading
363
- if (depth === 0) {
364
- printMessage(`\nInner Tree Dependencies (${Object.values(descendents)[0].length}):`, 'data');
365
- }
366
- const indent = Array(depth * 2).fill(' ').join('');
367
- const [tree] = Object.keys(descendents);
368
- printMessage(`${indent}- ${tree['brightCyan']}`, 'data');
369
- for (const descendent of descendents[tree]) {
370
- describeTreeDescendents(descendent, depth + 1);
371
- }
372
- }
373
- }
374
-
375
- /**
376
- * Helper function to render a nested list of dependent trees in markdown
377
- * @param {TreeDependencyMapInterface} descendents tree dependency map
378
- * @param {number} depth level of nesting
379
- */
380
- function describeTreeDescendentsMd(descendents, depth = 0) {
381
- let markdown = '';
382
- if (depth || Object.values(descendents)[0].length) {
383
- // heading
384
- if (depth === 0) {
385
- markdown += `## Inner Tree Dependencies (${Object.values(descendents)[0].length})\n`;
386
- }
387
- const indent = Array(depth * 2).fill(' ').join('');
388
- const [tree] = Object.keys(descendents);
389
- markdown += `${indent}- ${tree}\n`;
390
- for (const descendent of descendents[tree]) {
391
- markdown += describeTreeDescendentsMd(descendent, depth + 1);
392
- }
393
- return markdown;
394
- }
395
- return markdown;
396
- }
397
-
398
- /**
399
- * Describe a journey:
400
- * - Properties, tags, description, name, metadata
401
- * - Inner tree dependency tree
402
- * - Node type summary
403
- * - Nodes
404
- * - Themes
405
- * - Scripts
406
- * - Email templates
407
- * - Social identity providers
408
- * - SAML2 entity providers
409
- * - SAML2 circles of trust
410
- * @param {SingleTreeExportInterface} journeyData journey export object
411
- * @param {TreeExportResolverInterface} resolveTreeExport tree export resolver callback function
412
- */
413
- export async function describeJourney(journeyData, resolveTreeExport = frodo.authn.journey.onlineTreeExportResolver) {
414
- var _journeyData$meta, _journeyData$tree$uiC, _journeyData$themes;
415
- const allNodes = {
416
- ...journeyData.nodes,
417
- ...journeyData.innerNodes
418
- };
419
- const nodeTypeMap = {};
420
- for (const nodeData of Object.values(allNodes)) {
421
- if (nodeTypeMap[nodeData._type._id]) {
422
- nodeTypeMap[nodeData._type._id] += 1;
423
- } else {
424
- nodeTypeMap[nodeData._type._id] = 1;
425
- }
426
- }
427
-
428
- // initialize AM version from file
429
- if (!state.getAmVersion() && (_journeyData$meta = journeyData.meta) !== null && _journeyData$meta !== void 0 && _journeyData$meta.originAmVersion) {
430
- state.setAmVersion(journeyData.meta.originAmVersion);
431
- }
432
-
433
- // Journey Name
434
- printMessage(`${getOneLineDescription(journeyData.tree)}`, 'data');
435
- printMessage(Array(`[${journeyData.tree._id}]`['length']).fill('=').join(''));
436
-
437
- // Description
438
- if (journeyData.tree.description) {
439
- printMessage(`\n${journeyData.tree.description}`, 'data');
440
- }
441
-
442
- // Status
443
- printMessage(`\nStatus\n${journeyData.tree.enabled === false ? 'disabled'['brightRed'] : 'enabled'['brightGreen']}`);
444
-
445
- // Classification
446
- if (state.getAmVersion()) {
447
- printMessage(`\nClassification\n${getJourneyClassification(journeyData).join(', ')}`, 'data');
448
- }
449
-
450
- // Categories/Tags
451
- if ((_journeyData$tree$uiC = journeyData.tree.uiConfig) !== null && _journeyData$tree$uiC !== void 0 && _journeyData$tree$uiC.categories && journeyData.tree.uiConfig.categories != '[]') {
452
- printMessage('\nCategories/Tags', 'data');
453
- printMessage(`${JSON.parse(journeyData.tree.uiConfig.categories).join(', ')}`, 'data');
454
- }
455
-
456
- // Dependency Tree
457
- const descendents = await frodo.authn.journey.getTreeDescendents(journeyData, resolveTreeExport);
458
- describeTreeDescendents(descendents);
459
-
460
- // Node Types
461
- if (Object.entries(nodeTypeMap).length) {
462
- printMessage(`\nNode Types (${Object.entries(nodeTypeMap).length}):`, 'data');
463
- for (const [nodeType, count] of Object.entries(nodeTypeMap)) {
464
- printMessage(`- ${String(count)} [${nodeType['brightCyan']}] (${Node.getNodeClassification(nodeType).join(', ')})`, 'data');
465
- }
466
- }
467
-
468
- // Nodes
469
- if (Object.entries(allNodes).length) {
470
- printMessage(`\nNodes (${Object.entries(allNodes).length}):`, 'data');
471
- for (const nodeObj of Object.values(allNodes)) {
472
- printMessage(`- ${Node.getOneLineDescription(nodeObj, frodo.authn.journey.getNodeRef(nodeObj, journeyData))}`, 'data');
473
- }
474
- }
475
-
476
- // Themes
477
- if ((_journeyData$themes = journeyData.themes) !== null && _journeyData$themes !== void 0 && _journeyData$themes.length) {
478
- printMessage(`\nThemes (${journeyData.themes.length}):`, 'data');
479
- for (const themeData of journeyData.themes) {
480
- printMessage(`- ${Theme.getOneLineDescription(themeData)}`, 'data');
481
- }
482
- }
483
-
484
- // Scripts
485
- if (Object.entries(journeyData.scripts).length) {
486
- printMessage(`\nScripts (${Object.entries(journeyData.scripts).length}):`, 'data');
487
- for (const scriptData of Object.values(journeyData.scripts)) {
488
- printMessage(`- ${Script.getOneLineDescription(scriptData)}`, 'data');
489
- }
490
- }
491
-
492
- // Email Templates
493
- if (Object.entries(journeyData.emailTemplates).length) {
494
- printMessage(`\nEmail Templates (${Object.entries(journeyData.emailTemplates).length}):`, 'data');
495
- for (const templateData of Object.values(journeyData.emailTemplates)) {
496
- printMessage(`- ${EmailTemplate.getOneLineDescription(templateData)}`, 'data');
497
- }
498
- }
499
-
500
- // Social Identity Providers
501
- if (Object.entries(journeyData.socialIdentityProviders).length) {
502
- printMessage(`\nSocial Identity Providers (${Object.entries(journeyData.socialIdentityProviders).length}):`, 'data');
503
- for (const socialIdpData of Object.values(journeyData.socialIdentityProviders)) {
504
- printMessage(`- ${Idp.getOneLineDescription(socialIdpData)}`, 'data');
505
- }
506
- }
507
-
508
- // SAML2 Entity Providers
509
- if (Object.entries(journeyData.saml2Entities).length) {
510
- printMessage(`\nSAML2 Entity Providers (${Object.entries(journeyData.saml2Entities).length}):`, 'data');
511
- for (const entityProviderData of Object.values(journeyData.saml2Entities)) {
512
- printMessage(`- ${Saml2.getOneLineDescription(entityProviderData)}`, 'data');
513
- }
514
- }
515
-
516
- // SAML2 Circles Of Trust
517
- if (Object.entries(journeyData.circlesOfTrust).length) {
518
- printMessage(`\nSAML2 Circles Of Trust (${Object.entries(journeyData.circlesOfTrust).length}):`, 'data');
519
- for (const cotData of Object.values(journeyData.circlesOfTrust)) {
520
- printMessage(`- ${CirclesOfTrust.getOneLineDescription(cotData)}`, 'data');
521
- }
522
- }
523
- }
524
-
525
- /**
526
- * Describe a journey in markdown:
527
- * - Properties, tags, description, name, metadata
528
- * - Inner tree dependency tree
529
- * - Node type summary
530
- * - Nodes
531
- * - Themes
532
- * - Scripts
533
- * - Email templates
534
- * - Social identity providers
535
- * - SAML2 entity providers
536
- * - SAML2 circles of trust
537
- * @param {SingleTreeExportInterface} journeyData journey export object
538
- * @param {TreeExportResolverInterface} resolveTreeExport tree export resolver callback function
539
- */
540
- export async function describeJourneyMd(journeyData, resolveTreeExport = frodo.authn.journey.onlineTreeExportResolver) {
541
- var _journeyData$meta2, _journeyData$tree$uiC2, _journeyData$themes2;
542
- const allNodes = {
543
- ...journeyData.nodes,
544
- ...journeyData.innerNodes
545
- };
546
- const nodeTypeMap = {};
547
- for (const nodeData of Object.values(allNodes)) {
548
- if (nodeTypeMap[nodeData._type._id]) {
549
- nodeTypeMap[nodeData._type._id] += 1;
550
- } else {
551
- nodeTypeMap[nodeData._type._id] = 1;
552
- }
553
- }
554
-
555
- // initialize AM version from file
556
- if (!state.getAmVersion() && (_journeyData$meta2 = journeyData.meta) !== null && _journeyData$meta2 !== void 0 && _journeyData$meta2.originAmVersion) {
557
- state.setAmVersion(journeyData.meta.originAmVersion);
558
- }
559
-
560
- // Journey Name
561
- printMessage(`# ${getOneLineDescriptionMd(journeyData.tree)} - ${journeyData.tree.enabled === false ? ':o: `disabled`' : ':white_check_mark: `enabled`'}, ${getJourneyClassificationMd(journeyData).join(', ')}`, 'data');
562
-
563
- // Categories/Tags
564
- if ((_journeyData$tree$uiC2 = journeyData.tree.uiConfig) !== null && _journeyData$tree$uiC2 !== void 0 && _journeyData$tree$uiC2.categories && journeyData.tree.uiConfig.categories != '[]') {
565
- printMessage(`\`${JSON.parse(journeyData.tree.uiConfig.categories).join('`, `')}\``, 'data');
566
- }
567
-
568
- // Description
569
- if (journeyData.tree.description) {
570
- printMessage(`\n${journeyData.tree.description}`, 'data');
571
- }
572
-
573
- // Journey image
574
- printMessage(`\n[![](./${journeyData.tree._id}.png)]()\n`, 'data');
575
-
576
- // Dependency Tree
577
- const descendents = await frodo.authn.journey.getTreeDescendents(journeyData, resolveTreeExport);
578
- printMessage(describeTreeDescendentsMd(descendents), 'data');
579
-
580
- // Node Types
581
- if (Object.entries(nodeTypeMap).length) {
582
- printMessage(`## Node Types (${Object.entries(nodeTypeMap).length})`, 'data');
583
- printMessage('| Count | Type | Classification |', 'data');
584
- printMessage('| -----:| ---- | -------------- |', 'data');
585
- for (const [nodeType, count] of Object.entries(nodeTypeMap)) {
586
- printMessage(`| ${String(count)} | ${nodeType} | ${Node.getNodeClassificationMd(nodeType).join('<br>')} |`, 'data');
587
- }
588
- }
589
-
590
- // Nodes
591
- if (Object.entries(allNodes).length) {
592
- printMessage(`## Nodes (${Object.entries(allNodes).length})`, 'data');
593
- printMessage(Node.getTableHeaderMd(), 'data');
594
- for (const nodeObj of Object.values(allNodes)) {
595
- printMessage(`${Node.getTableRowMd(nodeObj, frodo.authn.journey.getNodeRef(nodeObj, journeyData))}`, 'data');
596
- }
597
- }
598
-
599
- // Themes
600
- if ((_journeyData$themes2 = journeyData.themes) !== null && _journeyData$themes2 !== void 0 && _journeyData$themes2.length) {
601
- printMessage(`## Themes (${journeyData.themes.length})`, 'data');
602
- printMessage(Theme.getTableHeaderMd(), 'data');
603
- for (const themeData of journeyData.themes) {
604
- printMessage(`${Theme.getTableRowMd(themeData)}`, 'data');
605
- }
606
- }
607
-
608
- // Scripts
609
- if (Object.entries(journeyData.scripts).length) {
610
- printMessage(`## Scripts (${Object.entries(journeyData.scripts).length})`, 'data');
611
- printMessage(Script.getTableHeaderMd(), 'data');
612
- for (const scriptData of Object.values(journeyData.scripts)) {
613
- printMessage(`${Script.getTableRowMd(scriptData)}`, 'data');
614
- }
615
- }
616
-
617
- // Email Templates
618
- if (Object.entries(journeyData.emailTemplates).length) {
619
- printMessage(`## Email Templates (${Object.entries(journeyData.emailTemplates).length})`, 'data');
620
- printMessage(EmailTemplate.getTableHeaderMd(), 'data');
621
- for (const templateData of Object.values(journeyData.emailTemplates)) {
622
- printMessage(`${EmailTemplate.getTableRowMd(templateData)}`, 'data');
623
- }
624
- }
625
-
626
- // Social Identity Providers
627
- if (Object.entries(journeyData.socialIdentityProviders).length) {
628
- printMessage(`## Social Identity Providers (${Object.entries(journeyData.socialIdentityProviders).length})`, 'data');
629
- printMessage(Idp.getTableHeaderMd(), 'data');
630
- for (const socialIdpData of Object.values(journeyData.socialIdentityProviders)) {
631
- printMessage(`${Idp.getTableRowMd(socialIdpData)}`, 'data');
632
- }
633
- }
634
-
635
- // SAML2 Entity Providers
636
- if (Object.entries(journeyData.saml2Entities).length) {
637
- printMessage(`## SAML2 Entity Providers (${Object.entries(journeyData.saml2Entities).length})`, 'data');
638
- printMessage(Saml2.getTableHeaderMd(), 'data');
639
- for (const entityProviderData of Object.values(journeyData.saml2Entities)) {
640
- printMessage(`${Saml2.getTableRowMd(entityProviderData)}`, 'data');
641
- }
642
- }
643
-
644
- // SAML2 Circles Of Trust
645
- if (Object.entries(journeyData.circlesOfTrust).length) {
646
- printMessage(`## SAML2 Circles Of Trust (${Object.entries(journeyData.circlesOfTrust).length})`, 'data');
647
- printMessage(CirclesOfTrust.getTableHeaderMd(), 'data');
648
- for (const cotData of Object.values(journeyData.circlesOfTrust)) {
649
- printMessage(`${CirclesOfTrust.getTableRowMd(cotData)}`, 'data');
650
- }
651
- }
652
- }
653
- //# sourceMappingURL=JourneyOps.js.map