@rockcarver/frodo-cli 2.0.0-8 → 2.0.0

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