@rockcarver/frodo-cli 2.0.0-4 → 2.0.0-41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +312 -5
- package/esm/app.js +22 -5
- package/esm/app.js.map +1 -1
- package/esm/cli/FrodoCommand.js +33 -7
- package/esm/cli/FrodoCommand.js.map +1 -1
- package/esm/cli/_template/something-delete.js +7 -5
- package/esm/cli/_template/something-delete.js.map +1 -1
- package/esm/cli/_template/something-describe.js +7 -5
- package/esm/cli/_template/something-describe.js.map +1 -1
- package/esm/cli/_template/something-else-delete.js +7 -5
- package/esm/cli/_template/something-else-delete.js.map +1 -1
- package/esm/cli/_template/something-else-describe.js +7 -5
- package/esm/cli/_template/something-else-describe.js.map +1 -1
- package/esm/cli/_template/something-else-export.js +8 -6
- package/esm/cli/_template/something-else-export.js.map +1 -1
- package/esm/cli/_template/something-else-import.js +7 -5
- package/esm/cli/_template/something-else-import.js.map +1 -1
- package/esm/cli/_template/something-else-list.js +7 -5
- package/esm/cli/_template/something-else-list.js.map +1 -1
- package/esm/cli/_template/something-else.js +1 -1
- package/esm/cli/_template/something-else.js.map +1 -1
- package/esm/cli/_template/something-export.js +8 -6
- package/esm/cli/_template/something-export.js.map +1 -1
- package/esm/cli/_template/something-import.js +7 -5
- package/esm/cli/_template/something-import.js.map +1 -1
- package/esm/cli/_template/something-list.js +7 -5
- package/esm/cli/_template/something-list.js.map +1 -1
- package/esm/cli/_template/something-other-delete.js +7 -5
- package/esm/cli/_template/something-other-delete.js.map +1 -1
- package/esm/cli/_template/something-other-describe.js +7 -5
- package/esm/cli/_template/something-other-describe.js.map +1 -1
- package/esm/cli/_template/something-other-export.js +8 -6
- package/esm/cli/_template/something-other-export.js.map +1 -1
- package/esm/cli/_template/something-other-import.js +7 -5
- package/esm/cli/_template/something-other-import.js.map +1 -1
- package/esm/cli/_template/something-other-list.js +7 -5
- package/esm/cli/_template/something-other-list.js.map +1 -1
- package/esm/cli/_template/something-other.js +1 -1
- package/esm/cli/_template/something-other.js.map +1 -1
- package/esm/cli/_template/something.js +2 -2
- package/esm/cli/_template/something.js.map +1 -1
- package/esm/cli/admin/admin-add-autoid-static-user-mapping.js +10 -5
- package/esm/cli/admin/admin-add-autoid-static-user-mapping.js.map +1 -1
- package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js +14 -8
- package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js.map +1 -1
- package/esm/cli/admin/admin-execute-rfc7523-authz-grant-flow.js +41 -0
- package/esm/cli/admin/admin-execute-rfc7523-authz-grant-flow.js.map +1 -0
- package/esm/cli/admin/admin-federation-export.js +44 -0
- package/esm/cli/admin/admin-federation-export.js.map +1 -0
- package/esm/cli/admin/admin-federation-import.js +48 -0
- package/esm/cli/admin/admin-federation-import.js.map +1 -0
- package/esm/cli/admin/admin-federation-list.js +28 -0
- package/esm/cli/admin/admin-federation-list.js.map +1 -0
- package/esm/cli/admin/admin-federation.js +13 -0
- package/esm/cli/admin/admin-federation.js.map +1 -0
- package/esm/cli/admin/admin-generate-rfc7523-authz-grant-artefacts.js +43 -0
- package/esm/cli/admin/admin-generate-rfc7523-authz-grant-artefacts.js.map +1 -0
- package/esm/cli/admin/admin-get-access-token.js +12 -7
- package/esm/cli/admin/admin-get-access-token.js.map +1 -1
- package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js +13 -8
- package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js.map +1 -1
- package/esm/cli/admin/admin-hide-generic-extension-attributes.js +11 -6
- package/esm/cli/admin/admin-hide-generic-extension-attributes.js.map +1 -1
- package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js +11 -6
- package/esm/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js.map +1 -1
- package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js +11 -6
- package/esm/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js.map +1 -1
- package/esm/cli/admin/admin-list-static-user-mappings.js +12 -7
- package/esm/cli/admin/admin-list-static-user-mappings.js.map +1 -1
- package/esm/cli/admin/admin-remove-static-user-mapping.js +12 -6
- package/esm/cli/admin/admin-remove-static-user-mapping.js.map +1 -1
- package/esm/cli/admin/admin-repair-org-model.js +11 -6
- package/esm/cli/admin/admin-repair-org-model.js.map +1 -1
- package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js +12 -7
- package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js.map +1 -1
- package/esm/cli/admin/admin-show-generic-extension-attributes.js +11 -6
- package/esm/cli/admin/admin-show-generic-extension-attributes.js.map +1 -1
- package/esm/cli/admin/admin-train-auto-access-model.js +32 -0
- package/esm/cli/admin/admin-train-auto-access-model.js.map +1 -0
- package/esm/cli/admin/admin.js +8 -2
- package/esm/cli/admin/admin.js.map +1 -1
- package/esm/cli/agent/agent-delete.js +13 -7
- package/esm/cli/agent/agent-delete.js.map +1 -1
- package/esm/cli/agent/agent-describe.js +7 -5
- package/esm/cli/agent/agent-describe.js.map +1 -1
- package/esm/cli/agent/agent-export.js +12 -10
- package/esm/cli/agent/agent-export.js.map +1 -1
- package/esm/cli/agent/agent-gateway-delete.js +13 -7
- package/esm/cli/agent/agent-gateway-delete.js.map +1 -1
- package/esm/cli/agent/agent-gateway-describe.js +7 -5
- package/esm/cli/agent/agent-gateway-describe.js.map +1 -1
- package/esm/cli/agent/agent-gateway-export.js +12 -10
- package/esm/cli/agent/agent-gateway-export.js.map +1 -1
- package/esm/cli/agent/agent-gateway-import.js +8 -6
- package/esm/cli/agent/agent-gateway-import.js.map +1 -1
- package/esm/cli/agent/agent-gateway-list.js +7 -5
- package/esm/cli/agent/agent-gateway-list.js.map +1 -1
- package/esm/cli/agent/agent-gateway.js +1 -1
- package/esm/cli/agent/agent-gateway.js.map +1 -1
- package/esm/cli/agent/agent-import.js +8 -6
- package/esm/cli/agent/agent-import.js.map +1 -1
- package/esm/cli/agent/agent-java-delete.js +13 -7
- package/esm/cli/agent/agent-java-delete.js.map +1 -1
- package/esm/cli/agent/agent-java-describe.js +7 -5
- package/esm/cli/agent/agent-java-describe.js.map +1 -1
- package/esm/cli/agent/agent-java-export.js +12 -10
- package/esm/cli/agent/agent-java-export.js.map +1 -1
- package/esm/cli/agent/agent-java-import.js +8 -6
- package/esm/cli/agent/agent-java-import.js.map +1 -1
- package/esm/cli/agent/agent-java-list.js +7 -5
- package/esm/cli/agent/agent-java-list.js.map +1 -1
- package/esm/cli/agent/agent-java.js +1 -1
- package/esm/cli/agent/agent-java.js.map +1 -1
- package/esm/cli/agent/agent-list.js +7 -5
- package/esm/cli/agent/agent-list.js.map +1 -1
- package/esm/cli/agent/agent-web-delete.js +13 -7
- package/esm/cli/agent/agent-web-delete.js.map +1 -1
- package/esm/cli/agent/agent-web-describe.js +7 -5
- package/esm/cli/agent/agent-web-describe.js.map +1 -1
- package/esm/cli/agent/agent-web-export.js +12 -10
- package/esm/cli/agent/agent-web-export.js.map +1 -1
- package/esm/cli/agent/agent-web-import.js +8 -6
- package/esm/cli/agent/agent-web-import.js.map +1 -1
- package/esm/cli/agent/agent-web-list.js +7 -5
- package/esm/cli/agent/agent-web-list.js.map +1 -1
- package/esm/cli/agent/agent-web.js +3 -3
- package/esm/cli/agent/agent-web.js.map +1 -1
- package/esm/cli/agent/agent.js +2 -2
- package/esm/cli/agent/agent.js.map +1 -1
- package/esm/cli/app/app-delete.js +27 -9
- package/esm/cli/app/app-delete.js.map +1 -1
- package/esm/cli/app/app-describe.js +9 -6
- package/esm/cli/app/app-describe.js.map +1 -1
- package/esm/cli/app/app-export.js +17 -14
- package/esm/cli/app/app-export.js.map +1 -1
- package/esm/cli/app/app-import.js +21 -18
- package/esm/cli/app/app-import.js.map +1 -1
- package/esm/cli/app/app-list.js +12 -9
- package/esm/cli/app/app-list.js.map +1 -1
- package/esm/cli/app/app.js +8 -12
- package/esm/cli/app/app.js.map +1 -1
- package/esm/cli/authn/authn-describe.js +29 -0
- package/esm/cli/authn/authn-describe.js.map +1 -0
- package/esm/cli/authn/authn-export.js +25 -0
- package/esm/cli/authn/authn-export.js.map +1 -0
- package/esm/cli/authn/authn-import.js +25 -0
- package/esm/cli/authn/authn-import.js.map +1 -0
- package/esm/cli/authn/authn.js +12 -0
- package/esm/cli/authn/authn.js.map +1 -0
- package/esm/cli/authz/authz-policy-delete.js +11 -9
- package/esm/cli/authz/authz-policy-delete.js.map +1 -1
- package/esm/cli/authz/authz-policy-describe.js +8 -6
- package/esm/cli/authz/authz-policy-describe.js.map +1 -1
- package/esm/cli/authz/authz-policy-export.js +18 -16
- package/esm/cli/authz/authz-policy-export.js.map +1 -1
- package/esm/cli/authz/authz-policy-import.js +11 -9
- package/esm/cli/authz/authz-policy-import.js.map +1 -1
- package/esm/cli/authz/authz-policy-list.js +11 -9
- package/esm/cli/authz/authz-policy-list.js.map +1 -1
- package/esm/cli/authz/authz-policy.js +1 -1
- package/esm/cli/authz/authz-policy.js.map +1 -1
- package/esm/cli/authz/authz-set-delete.js +11 -9
- package/esm/cli/authz/authz-set-delete.js.map +1 -1
- package/esm/cli/authz/authz-set-describe.js +8 -6
- package/esm/cli/authz/authz-set-describe.js.map +1 -1
- package/esm/cli/authz/authz-set-export.js +14 -12
- package/esm/cli/authz/authz-set-export.js.map +1 -1
- package/esm/cli/authz/authz-set-import.js +11 -9
- package/esm/cli/authz/authz-set-import.js.map +1 -1
- package/esm/cli/authz/authz-set-list.js +8 -6
- package/esm/cli/authz/authz-set-list.js.map +1 -1
- package/esm/cli/authz/authz-set.js +1 -1
- package/esm/cli/authz/authz-set.js.map +1 -1
- package/esm/cli/authz/authz-type-delete.js +13 -11
- package/esm/cli/authz/authz-type-delete.js.map +1 -1
- package/esm/cli/authz/authz-type-describe.js +9 -7
- package/esm/cli/authz/authz-type-describe.js.map +1 -1
- package/esm/cli/authz/authz-type-export.js +16 -14
- package/esm/cli/authz/authz-type-export.js.map +1 -1
- package/esm/cli/authz/authz-type-import.js +14 -12
- package/esm/cli/authz/authz-type-import.js.map +1 -1
- package/esm/cli/authz/authz-type-list.js +9 -7
- package/esm/cli/authz/authz-type-list.js.map +1 -1
- package/esm/cli/authz/authz-type.js +1 -1
- package/esm/cli/authz/authz-type.js.map +1 -1
- package/esm/cli/authz/authz.js +2 -2
- package/esm/cli/authz/authz.js.map +1 -1
- package/esm/cli/config/config-delete.js +21 -0
- package/esm/cli/config/config-delete.js.map +1 -0
- package/esm/cli/config/config-describe.js +21 -0
- package/esm/cli/config/config-describe.js.map +1 -0
- package/esm/cli/config/config-export.js +43 -0
- package/esm/cli/config/config-export.js.map +1 -0
- package/esm/cli/config/config-import.js +54 -0
- package/esm/cli/config/config-import.js.map +1 -0
- package/esm/cli/config/config-list.js +21 -0
- package/esm/cli/config/config-list.js.map +1 -0
- package/esm/cli/config/config.js +19 -0
- package/esm/cli/config/config.js.map +1 -0
- package/esm/cli/conn/conn-delete.js +2 -3
- package/esm/cli/conn/conn-delete.js.map +1 -1
- package/esm/cli/conn/conn-describe.js +2 -3
- package/esm/cli/conn/conn-describe.js.map +1 -1
- package/esm/cli/conn/conn-list.js +2 -3
- package/esm/cli/conn/conn-list.js.map +1 -1
- package/esm/cli/conn/conn-save.js +31 -16
- package/esm/cli/conn/conn-save.js.map +1 -1
- package/esm/cli/conn/conn.js +2 -2
- package/esm/cli/conn/conn.js.map +1 -1
- package/esm/cli/email/email-template-export.js +14 -12
- package/esm/cli/email/email-template-export.js.map +1 -1
- package/esm/cli/email/email-template-import.js +15 -13
- package/esm/cli/email/email-template-import.js.map +1 -1
- package/esm/cli/email/email-template-list.js +9 -7
- package/esm/cli/email/email-template-list.js.map +1 -1
- package/esm/cli/email/email-template.js +1 -1
- package/esm/cli/email/email-template.js.map +1 -1
- package/esm/cli/email/email.js +2 -2
- package/esm/cli/email/email.js.map +1 -1
- package/esm/cli/esv/esv-apply.js +18 -9
- package/esm/cli/esv/esv-apply.js.map +1 -1
- package/esm/cli/esv/esv-secret-create.js +10 -7
- package/esm/cli/esv/esv-secret-create.js.map +1 -1
- package/esm/cli/esv/esv-secret-delete.js +13 -10
- package/esm/cli/esv/esv-secret-delete.js.map +1 -1
- package/esm/cli/esv/esv-secret-describe.js +10 -7
- package/esm/cli/esv/esv-secret-describe.js.map +1 -1
- package/esm/cli/esv/esv-secret-export.js +22 -7
- package/esm/cli/esv/esv-secret-export.js.map +1 -1
- package/esm/cli/esv/esv-secret-import.js +7 -5
- package/esm/cli/esv/esv-secret-import.js.map +1 -1
- package/esm/cli/esv/esv-secret-list.js +11 -8
- package/esm/cli/esv/esv-secret-list.js.map +1 -1
- package/esm/cli/esv/esv-secret-set.js +10 -7
- package/esm/cli/esv/esv-secret-set.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-activate.js +10 -8
- package/esm/cli/esv/esv-secret-version-activate.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-create.js +10 -7
- package/esm/cli/esv/esv-secret-version-create.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-deactivate.js +10 -8
- package/esm/cli/esv/esv-secret-version-deactivate.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-delete.js +13 -10
- package/esm/cli/esv/esv-secret-version-delete.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-list.js +10 -7
- package/esm/cli/esv/esv-secret-version-list.js.map +1 -1
- package/esm/cli/esv/esv-secret-version.js +1 -1
- package/esm/cli/esv/esv-secret-version.js.map +1 -1
- package/esm/cli/esv/esv-secret.js +2 -3
- package/esm/cli/esv/esv-secret.js.map +1 -1
- package/esm/cli/esv/esv-variable-create.js +11 -7
- package/esm/cli/esv/esv-variable-create.js.map +1 -1
- package/esm/cli/esv/esv-variable-delete.js +13 -9
- package/esm/cli/esv/esv-variable-delete.js.map +1 -1
- package/esm/cli/esv/esv-variable-describe.js +11 -8
- package/esm/cli/esv/esv-variable-describe.js.map +1 -1
- package/esm/cli/esv/esv-variable-export.js +23 -7
- package/esm/cli/esv/esv-variable-export.js.map +1 -1
- package/esm/cli/esv/esv-variable-import.js +7 -5
- package/esm/cli/esv/esv-variable-import.js.map +1 -1
- package/esm/cli/esv/esv-variable-list.js +11 -8
- package/esm/cli/esv/esv-variable-list.js.map +1 -1
- package/esm/cli/esv/esv-variable-set.js +12 -8
- package/esm/cli/esv/esv-variable-set.js.map +1 -1
- package/esm/cli/esv/esv-variable.js +2 -3
- package/esm/cli/esv/esv-variable.js.map +1 -1
- package/esm/cli/esv/esv.js +2 -2
- package/esm/cli/esv/esv.js.map +1 -1
- package/esm/cli/idm/idm-count.js +10 -8
- package/esm/cli/idm/idm-count.js.map +1 -1
- package/esm/cli/idm/idm-export.js +24 -16
- package/esm/cli/idm/idm-export.js.map +1 -1
- package/esm/cli/idm/idm-import.js +22 -14
- package/esm/cli/idm/idm-import.js.map +1 -1
- package/esm/cli/idm/idm-list.js +9 -7
- package/esm/cli/idm/idm-list.js.map +1 -1
- package/esm/cli/idm/idm.js +2 -2
- package/esm/cli/idm/idm.js.map +1 -1
- package/esm/cli/idp/idp-export.js +12 -10
- package/esm/cli/idp/idp-export.js.map +1 -1
- package/esm/cli/idp/idp-import.js +24 -14
- package/esm/cli/idp/idp-import.js.map +1 -1
- package/esm/cli/idp/idp-list.js +8 -6
- package/esm/cli/idp/idp-list.js.map +1 -1
- package/esm/cli/idp/idp.js +2 -2
- package/esm/cli/idp/idp.js.map +1 -1
- package/esm/cli/info/info.js +13 -8
- package/esm/cli/info/info.js.map +1 -1
- package/esm/cli/journey/journey-delete.js +14 -8
- package/esm/cli/journey/journey-delete.js.map +1 -1
- package/esm/cli/journey/journey-describe.js +22 -12
- package/esm/cli/journey/journey-describe.js.map +1 -1
- package/esm/cli/journey/journey-disable.js +11 -12
- package/esm/cli/journey/journey-disable.js.map +1 -1
- package/esm/cli/journey/journey-enable.js +11 -12
- package/esm/cli/journey/journey-enable.js.map +1 -1
- package/esm/cli/journey/journey-export.js +24 -13
- package/esm/cli/journey/journey-export.js.map +1 -1
- package/esm/cli/journey/journey-import.js +15 -13
- package/esm/cli/journey/journey-import.js.map +1 -1
- package/esm/cli/journey/journey-list.js +7 -5
- package/esm/cli/journey/journey-list.js.map +1 -1
- package/esm/cli/journey/journey-prune.js +23 -13
- package/esm/cli/journey/journey-prune.js.map +1 -1
- package/esm/cli/journey/journey.js +2 -2
- package/esm/cli/journey/journey.js.map +1 -1
- package/esm/cli/{logging/logs-fetch.js → log/log-fetch.js} +68 -36
- package/esm/cli/log/log-fetch.js.map +1 -0
- package/esm/cli/log/log-key-delete.js +34 -0
- package/esm/cli/log/log-key-delete.js.map +1 -0
- package/esm/cli/log/log-key-describe.js +21 -0
- package/esm/cli/log/log-key-describe.js.map +1 -0
- package/esm/cli/log/log-key-list.js +25 -0
- package/esm/cli/log/log-key-list.js.map +1 -0
- package/esm/cli/log/log-key.js +8 -0
- package/esm/cli/log/log-key.js.map +1 -0
- package/esm/cli/log/log-list.js +80 -0
- package/esm/cli/log/log-list.js.map +1 -0
- package/esm/cli/log/log-tail.js +77 -0
- package/esm/cli/log/log-tail.js.map +1 -0
- package/esm/cli/{logging/logs.js → log/log.js} +6 -3
- package/esm/cli/log/log.js.map +1 -0
- package/esm/cli/oauth/oauth-client-delete.js +21 -0
- package/esm/cli/oauth/oauth-client-delete.js.map +1 -0
- package/esm/cli/oauth/oauth-client-describe.js +21 -0
- package/esm/cli/oauth/oauth-client-describe.js.map +1 -0
- package/esm/cli/oauth/oauth-client-export.js +51 -0
- package/esm/cli/oauth/oauth-client-export.js.map +1 -0
- package/esm/cli/oauth/oauth-client-import.js +56 -0
- package/esm/cli/oauth/oauth-client-import.js.map +1 -0
- package/esm/cli/oauth/oauth-client-list.js +24 -0
- package/esm/cli/oauth/oauth-client-list.js.map +1 -0
- package/esm/cli/oauth/oauth-client.js +14 -0
- package/esm/cli/oauth/oauth-client.js.map +1 -0
- package/esm/cli/oauth/oauth.js +13 -0
- package/esm/cli/oauth/oauth.js.map +1 -0
- package/esm/cli/realm/realm-add-custom-domain.js +8 -6
- package/esm/cli/realm/realm-add-custom-domain.js.map +1 -1
- package/esm/cli/realm/realm-describe.js +8 -6
- package/esm/cli/realm/realm-describe.js.map +1 -1
- package/esm/cli/realm/realm-list.js +8 -6
- package/esm/cli/realm/realm-list.js.map +1 -1
- package/esm/cli/realm/realm-remove-custom-domain.js +11 -6
- package/esm/cli/realm/realm-remove-custom-domain.js.map +1 -1
- package/esm/cli/realm/realm.js +2 -2
- package/esm/cli/realm/realm.js.map +1 -1
- package/esm/cli/saml/saml-cot-export.js +14 -12
- package/esm/cli/saml/saml-cot-export.js.map +1 -1
- package/esm/cli/saml/saml-cot-import.js +15 -13
- package/esm/cli/saml/saml-cot-import.js.map +1 -1
- package/esm/cli/saml/saml-cot-list.js +9 -7
- package/esm/cli/saml/saml-cot-list.js.map +1 -1
- package/esm/cli/saml/saml-cot.js +1 -1
- package/esm/cli/saml/saml-cot.js.map +1 -1
- package/esm/cli/saml/saml-delete.js +14 -8
- package/esm/cli/saml/saml-delete.js.map +1 -1
- package/esm/cli/saml/saml-describe.js +9 -7
- package/esm/cli/saml/saml-describe.js.map +1 -1
- package/esm/cli/saml/saml-export.js +14 -12
- package/esm/cli/saml/saml-export.js.map +1 -1
- package/esm/cli/saml/saml-import.js +24 -14
- package/esm/cli/saml/saml-import.js.map +1 -1
- package/esm/cli/saml/saml-list.js +9 -7
- package/esm/cli/saml/saml-list.js.map +1 -1
- package/esm/cli/saml/saml-metadata-export.js +10 -8
- package/esm/cli/saml/saml-metadata-export.js.map +1 -1
- package/esm/cli/saml/saml-metadata.js +1 -1
- package/esm/cli/saml/saml-metadata.js.map +1 -1
- package/esm/cli/saml/saml.js +2 -2
- package/esm/cli/saml/saml.js.map +1 -1
- package/esm/cli/script/script-delete.js +21 -8
- package/esm/cli/script/script-delete.js.map +1 -1
- package/esm/cli/script/script-describe.js +7 -5
- package/esm/cli/script/script-describe.js.map +1 -1
- package/esm/cli/script/script-export.js +12 -14
- package/esm/cli/script/script-export.js.map +1 -1
- package/esm/cli/script/script-import.js +9 -7
- package/esm/cli/script/script-import.js.map +1 -1
- package/esm/cli/script/script-list.js +10 -8
- package/esm/cli/script/script-list.js.map +1 -1
- package/esm/cli/script/script.js +3 -5
- package/esm/cli/script/script.js.map +1 -1
- package/esm/cli/service/service-delete.js +8 -5
- package/esm/cli/service/service-delete.js.map +1 -1
- package/esm/cli/service/service-export.js +13 -11
- package/esm/cli/service/service-export.js.map +1 -1
- package/esm/cli/service/service-import.js +32 -14
- package/esm/cli/service/service-import.js.map +1 -1
- package/esm/cli/service/service-list.js +7 -4
- package/esm/cli/service/service-list.js.map +1 -1
- package/esm/cli/service/service.js +2 -2
- package/esm/cli/service/service.js.map +1 -1
- package/esm/cli/shell/shell.js +57 -0
- package/esm/cli/shell/shell.js.map +1 -0
- package/esm/cli/theme/theme-delete.js +13 -11
- package/esm/cli/theme/theme-delete.js.map +1 -1
- package/esm/cli/theme/theme-export.js +16 -14
- package/esm/cli/theme/theme-export.js.map +1 -1
- package/esm/cli/theme/theme-import.js +16 -14
- package/esm/cli/theme/theme-import.js.map +1 -1
- package/esm/cli/theme/theme-list.js +8 -6
- package/esm/cli/theme/theme-list.js.map +1 -1
- package/esm/cli/theme/theme.js +2 -2
- package/esm/cli/theme/theme.js.map +1 -1
- package/esm/help/SampleData.js +7 -0
- package/esm/help/SampleData.js.map +1 -0
- package/esm/launch.js +1 -1
- package/esm/launch.js.map +1 -1
- package/esm/loader.js +2 -2
- package/esm/loader.js.map +1 -1
- package/esm/ops/AdminFederationOps.js +231 -0
- package/esm/ops/AdminFederationOps.js.map +1 -0
- package/esm/ops/AdminOps.js +151 -0
- package/esm/ops/AdminOps.js.map +1 -0
- package/esm/ops/AgentOps.js +213 -150
- package/esm/ops/AgentOps.js.map +1 -1
- package/esm/ops/ApplicationOps.js +324 -0
- package/esm/ops/ApplicationOps.js.map +1 -0
- package/esm/ops/AuthenticationSettingsOps.js +90 -0
- package/esm/ops/AuthenticationSettingsOps.js.map +1 -0
- package/esm/ops/CirclesOfTrustOps.js +98 -78
- package/esm/ops/CirclesOfTrustOps.js.map +1 -1
- package/esm/ops/ConfigOps.js +162 -0
- package/esm/ops/ConfigOps.js.map +1 -0
- package/esm/ops/ConnectionProfileOps.js +12 -6
- package/esm/ops/ConnectionProfileOps.js.map +1 -1
- package/esm/ops/EmailTemplateOps.js +122 -127
- package/esm/ops/EmailTemplateOps.js.map +1 -1
- package/esm/ops/IdmOps.js +101 -182
- package/esm/ops/IdmOps.js.map +1 -1
- package/esm/ops/IdpOps.js +118 -73
- package/esm/ops/IdpOps.js.map +1 -1
- package/esm/ops/JourneyOps.js +176 -114
- package/esm/ops/JourneyOps.js.map +1 -1
- package/esm/ops/LogOps.js +92 -30
- package/esm/ops/LogOps.js.map +1 -1
- package/esm/ops/NodeOps.js +6 -3
- package/esm/ops/NodeOps.js.map +1 -1
- package/esm/ops/OAuth2ClientOps.js +71 -49
- package/esm/ops/OAuth2ClientOps.js.map +1 -1
- package/esm/ops/OrganizationOps.js +14 -22
- package/esm/ops/OrganizationOps.js.map +1 -1
- package/esm/ops/PolicyOps.js +127 -86
- package/esm/ops/PolicyOps.js.map +1 -1
- package/esm/ops/PolicySetOps.js +108 -76
- package/esm/ops/PolicySetOps.js.map +1 -1
- package/esm/ops/RealmOps.js +18 -11
- package/esm/ops/RealmOps.js.map +1 -1
- package/esm/ops/ResourceTypeOps.js +105 -87
- package/esm/ops/ResourceTypeOps.js.map +1 -1
- package/esm/ops/Saml2Ops.js +132 -91
- package/esm/ops/Saml2Ops.js.map +1 -1
- package/esm/ops/Saml2Ops.test_.js.map +1 -1
- package/esm/ops/ScriptOps.js +205 -82
- package/esm/ops/ScriptOps.js.map +1 -1
- package/esm/ops/SecretsOps.js +289 -79
- package/esm/ops/SecretsOps.js.map +1 -1
- package/esm/ops/ServiceOps.js +97 -54
- package/esm/ops/ServiceOps.js.map +1 -1
- package/esm/ops/ThemeOps.js +164 -158
- package/esm/ops/ThemeOps.js.map +1 -1
- package/esm/ops/VariablesOps.js +252 -65
- package/esm/ops/VariablesOps.js.map +1 -1
- package/esm/ops/utils/OpsUtils.js +1 -1
- package/esm/ops/utils/OpsUtils.js.map +1 -1
- package/esm/ops/utils/Wordwrap.js +1 -1
- package/esm/ops/utils/Wordwrap.js.map +1 -1
- package/esm/storage/StaticStorage.js +1 -1
- package/esm/storage/StaticStorage.js.map +1 -1
- package/esm/utils/Config.js +162 -4
- package/esm/utils/Config.js.map +1 -1
- package/esm/utils/Console.js +78 -35
- package/esm/utils/Console.js.map +1 -1
- package/esm/utils/Version.js +19 -16
- package/esm/utils/Version.js.map +1 -1
- package/global-jest-setup.js +4 -0
- package/package.json +55 -37
- package/esm/cli/logging/logs-fetch.js.map +0 -1
- package/esm/cli/logging/logs-list.js +0 -49
- package/esm/cli/logging/logs-list.js.map +0 -1
- package/esm/cli/logging/logs-tail.js +0 -46
- package/esm/cli/logging/logs-tail.js.map +0 -1
- package/esm/cli/logging/logs.js.map +0 -1
- package/esm/cli/theme/theme-delete.e2e.test_.js.map +0 -1
- package/esm/cli/theme/theme-list.e2e.test_.js.map +0 -1
- package/esm/utils/ExportImportUtils.js +0 -90
- package/esm/utils/ExportImportUtils.js.map +0 -1
package/esm/ops/JourneyOps.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { frodo, state } from '@rockcarver/frodo-lib';
|
|
2
2
|
import fs from 'fs';
|
|
3
|
-
import {
|
|
3
|
+
import { createProgressIndicator, createTable, debugMessage, printMessage, stopProgressIndicator, updateProgressIndicator } from '../utils/Console';
|
|
4
4
|
import * as CirclesOfTrust from './CirclesOfTrustOps';
|
|
5
5
|
import * as EmailTemplate from './EmailTemplateOps';
|
|
6
6
|
import * as Idp from './IdpOps';
|
|
@@ -8,8 +8,29 @@ import * as Node from './NodeOps';
|
|
|
8
8
|
import * as Saml2 from './Saml2Ops';
|
|
9
9
|
import * as Script from './ScriptOps';
|
|
10
10
|
import * as Theme from './ThemeOps';
|
|
11
|
-
import wordwrap from './utils/Wordwrap';
|
|
12
11
|
import { cloneDeep } from './utils/OpsUtils';
|
|
12
|
+
import wordwrap from './utils/Wordwrap';
|
|
13
|
+
const {
|
|
14
|
+
getTypedFilename,
|
|
15
|
+
saveJsonToFile,
|
|
16
|
+
getRealmString,
|
|
17
|
+
getFilePath,
|
|
18
|
+
getWorkingDirectory
|
|
19
|
+
} = frodo.utils;
|
|
20
|
+
const {
|
|
21
|
+
readJourneys,
|
|
22
|
+
exportJourney,
|
|
23
|
+
exportJourneys,
|
|
24
|
+
resolveDependencies,
|
|
25
|
+
importJourneys,
|
|
26
|
+
importJourney,
|
|
27
|
+
getTreeDescendents,
|
|
28
|
+
getNodeRef,
|
|
29
|
+
onlineTreeExportResolver,
|
|
30
|
+
getJourneyClassification: _getJourneyClassification,
|
|
31
|
+
disableJourney: _disableJourney,
|
|
32
|
+
enableJourney: _enableJourney
|
|
33
|
+
} = frodo.authn.journey;
|
|
13
34
|
|
|
14
35
|
/**
|
|
15
36
|
* List all the journeys/trees
|
|
@@ -20,7 +41,7 @@ import { cloneDeep } from './utils/OpsUtils';
|
|
|
20
41
|
export async function listJourneys(long = false, analyze = false) {
|
|
21
42
|
let journeys = [];
|
|
22
43
|
try {
|
|
23
|
-
journeys = await
|
|
44
|
+
journeys = await readJourneys();
|
|
24
45
|
if (!long && !analyze) {
|
|
25
46
|
for (const journeyStub of journeys) {
|
|
26
47
|
printMessage(`${journeyStub['_id']}`, 'data');
|
|
@@ -34,17 +55,17 @@ export async function listJourneys(long = false, analyze = false) {
|
|
|
34
55
|
}
|
|
35
56
|
printMessage(table.toString(), 'data');
|
|
36
57
|
} else {
|
|
37
|
-
|
|
58
|
+
const spinnerId = createProgressIndicator('indeterminate', 0, `Retrieving details of all journeys...`);
|
|
38
59
|
const exportPromises = [];
|
|
39
60
|
try {
|
|
40
61
|
for (const journeyStub of journeys) {
|
|
41
|
-
exportPromises.push(
|
|
62
|
+
exportPromises.push(exportJourney(journeyStub['_id'], {
|
|
42
63
|
useStringArrays: false,
|
|
43
64
|
deps: false
|
|
44
65
|
}));
|
|
45
66
|
}
|
|
46
67
|
const journeyExports = await Promise.all(exportPromises);
|
|
47
|
-
|
|
68
|
+
stopProgressIndicator(spinnerId, 'Retrieved details of all journeys.', 'success');
|
|
48
69
|
const table = createTable(['Name', 'Status', 'Classification', 'Tags']);
|
|
49
70
|
for (const journeyExport of journeyExports) {
|
|
50
71
|
var _journeyExport$tree$u;
|
|
@@ -52,7 +73,7 @@ export async function listJourneys(long = false, analyze = false) {
|
|
|
52
73
|
}
|
|
53
74
|
printMessage(table.toString(), 'data');
|
|
54
75
|
} catch (error) {
|
|
55
|
-
|
|
76
|
+
stopProgressIndicator(spinnerId, 'Error retrieving details of all journeys.', 'fail');
|
|
56
77
|
printMessage(error.response.data, 'error');
|
|
57
78
|
}
|
|
58
79
|
}
|
|
@@ -68,86 +89,73 @@ export async function listJourneys(long = false, analyze = false) {
|
|
|
68
89
|
* Export journey by id/name to file
|
|
69
90
|
* @param {string} journeyId journey id/name
|
|
70
91
|
* @param {string} file optional export file name
|
|
92
|
+
* @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
|
|
71
93
|
* @param {TreeExportOptions} options export options
|
|
72
94
|
*/
|
|
73
|
-
export async function exportJourneyToFile(journeyId, file, options
|
|
95
|
+
export async function exportJourneyToFile(journeyId, file, includeMeta = true, options = {
|
|
96
|
+
deps: false,
|
|
97
|
+
useStringArrays: false
|
|
98
|
+
}) {
|
|
74
99
|
debugMessage(`exportJourneyToFile: start`);
|
|
75
|
-
const verbose = state.
|
|
100
|
+
const verbose = state.getVerbose();
|
|
76
101
|
if (!file) {
|
|
77
|
-
file =
|
|
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
|
-
}
|
|
102
|
+
file = getTypedFilename(journeyId, 'journey');
|
|
90
103
|
}
|
|
91
|
-
|
|
104
|
+
const filePath = getFilePath(file, true);
|
|
105
|
+
let spinnerId;
|
|
106
|
+
if (!verbose) spinnerId = createProgressIndicator('indeterminate', 0, `${journeyId}`);
|
|
92
107
|
try {
|
|
93
|
-
const fileData = await
|
|
94
|
-
if (verbose)
|
|
95
|
-
|
|
96
|
-
|
|
108
|
+
const fileData = await exportJourney(journeyId, options);
|
|
109
|
+
if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `${journeyId}`);
|
|
110
|
+
saveJsonToFile(fileData, filePath, includeMeta);
|
|
111
|
+
stopProgressIndicator(spinnerId, `Exported ${journeyId['brightCyan']} to ${filePath['brightCyan']}.`, 'success');
|
|
97
112
|
} catch (error) {
|
|
98
|
-
if (verbose)
|
|
99
|
-
|
|
113
|
+
if (verbose) spinnerId = createProgressIndicator('indeterminate', 0, `${journeyId}`);
|
|
114
|
+
stopProgressIndicator(spinnerId, `Error exporting journey ${journeyId}: ${error}`, 'fail');
|
|
100
115
|
}
|
|
101
116
|
}
|
|
102
117
|
|
|
103
118
|
/**
|
|
104
119
|
* Export all journeys to file
|
|
105
120
|
* @param {string} file optional export file name
|
|
121
|
+
* @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
|
|
106
122
|
* @param {TreeExportOptions} options export options
|
|
107
123
|
*/
|
|
108
|
-
export async function exportJourneysToFile(file, options = {
|
|
124
|
+
export async function exportJourneysToFile(file, includeMeta = true, options = {
|
|
109
125
|
deps: false,
|
|
110
126
|
useStringArrays: false
|
|
111
127
|
}) {
|
|
112
|
-
|
|
113
|
-
|
|
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
|
+
if (!file) {
|
|
129
|
+
file = getTypedFilename(`all${getRealmString()}Journeys`, 'journey');
|
|
128
130
|
}
|
|
129
|
-
|
|
130
|
-
|
|
131
|
+
const filePath = getFilePath(file, true);
|
|
132
|
+
const fileData = await exportJourneys(options);
|
|
133
|
+
saveJsonToFile(fileData, filePath, includeMeta);
|
|
131
134
|
}
|
|
132
135
|
|
|
133
136
|
/**
|
|
134
137
|
* Export all journeys to separate files
|
|
138
|
+
* @param {boolean} includeMeta true to include metadata, false otherwise. Default: true
|
|
135
139
|
* @param {TreeExportOptions} options export options
|
|
136
140
|
*/
|
|
137
|
-
export async function exportJourneysToFiles(options
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
141
|
+
export async function exportJourneysToFiles(includeMeta = true, options = {
|
|
142
|
+
deps: false,
|
|
143
|
+
useStringArrays: false
|
|
144
|
+
}) {
|
|
145
|
+
const journeysExport = await exportJourneys(options);
|
|
146
|
+
const trees = Object.entries(journeysExport.trees);
|
|
147
|
+
for (const [treeId, treeValue] of trees) {
|
|
148
|
+
const indicatorId = createProgressIndicator('determinate', 1, `Saving ${treeId}...`);
|
|
149
|
+
const file = getFilePath(getTypedFilename(`${treeId}`, 'journey'), true);
|
|
150
|
+
treeValue['meta'] = journeysExport.meta;
|
|
143
151
|
try {
|
|
144
|
-
|
|
145
|
-
|
|
152
|
+
updateProgressIndicator(indicatorId, `Saving ${treeId} to ${file}`);
|
|
153
|
+
saveJsonToFile(treeValue, file, includeMeta);
|
|
154
|
+
stopProgressIndicator(indicatorId, `${treeId} saved to ${file}`);
|
|
146
155
|
} catch (error) {
|
|
147
|
-
|
|
156
|
+
stopProgressIndicator(indicatorId, `Error saving ${treeId} to ${file}`);
|
|
148
157
|
}
|
|
149
158
|
}
|
|
150
|
-
stopProgressBar('Done');
|
|
151
159
|
}
|
|
152
160
|
|
|
153
161
|
/**
|
|
@@ -157,9 +165,9 @@ export async function exportJourneysToFiles(options) {
|
|
|
157
165
|
* @param {TreeImportOptions} options import options
|
|
158
166
|
*/
|
|
159
167
|
export async function importJourneyFromFile(journeyId, file, options) {
|
|
160
|
-
const verbose = state.
|
|
161
|
-
|
|
162
|
-
|
|
168
|
+
const verbose = state.getVerbose();
|
|
169
|
+
try {
|
|
170
|
+
const data = fs.readFileSync(getFilePath(file), 'utf8');
|
|
163
171
|
let journeyData = JSON.parse(data);
|
|
164
172
|
// check if this is a file with multiple trees and get journey by id
|
|
165
173
|
if (journeyData.trees && journeyData.trees[journeyId]) {
|
|
@@ -171,35 +179,39 @@ export async function importJourneyFromFile(journeyId, file, options) {
|
|
|
171
179
|
// if a journeyId was specified, only import the matching journey
|
|
172
180
|
if (journeyData && journeyId === journeyData.tree._id) {
|
|
173
181
|
// attempt dependency resolution for single tree import
|
|
174
|
-
const installedJourneys = (await
|
|
182
|
+
const installedJourneys = (await readJourneys()).map(x => x._id);
|
|
175
183
|
const unresolvedJourneys = {};
|
|
176
184
|
const resolvedJourneys = [];
|
|
177
|
-
|
|
178
|
-
await
|
|
185
|
+
const indicatorId1 = createProgressIndicator('indeterminate', 0, 'Resolving dependencies');
|
|
186
|
+
await resolveDependencies(installedJourneys, {
|
|
179
187
|
[journeyId]: journeyData
|
|
180
188
|
}, unresolvedJourneys, resolvedJourneys);
|
|
181
189
|
if (Object.keys(unresolvedJourneys).length === 0) {
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
190
|
+
stopProgressIndicator(indicatorId1, `Resolved all dependencies.`, 'success');
|
|
191
|
+
let indicatorId2;
|
|
192
|
+
if (!verbose) indicatorId2 = createProgressIndicator('indeterminate', 0, `Importing ${journeyId}...`);
|
|
193
|
+
try {
|
|
194
|
+
await importJourney(journeyData, options);
|
|
195
|
+
if (verbose) indicatorId2 = createProgressIndicator('indeterminate', 0, `Importing ${journeyId}...`);
|
|
196
|
+
stopProgressIndicator(indicatorId2, `Imported ${journeyId}.`, 'success');
|
|
197
|
+
} catch (importError) {
|
|
198
|
+
if (verbose) indicatorId2 = createProgressIndicator('indeterminate', 0, `Importing ${journeyId}...`);
|
|
199
|
+
stopProgressIndicator(indicatorId2, `${importError}`, 'fail');
|
|
200
|
+
}
|
|
191
201
|
} else {
|
|
192
|
-
|
|
202
|
+
stopProgressIndicator(indicatorId1, `Unresolved dependencies:`, 'fail');
|
|
193
203
|
for (const journey of Object.keys(unresolvedJourneys)) {
|
|
194
204
|
printMessage(` ${journey} requires ${unresolvedJourneys[journey]}`, 'error');
|
|
195
205
|
}
|
|
196
206
|
}
|
|
197
207
|
// end dependency resolution for single tree import
|
|
198
208
|
} else {
|
|
199
|
-
|
|
200
|
-
|
|
209
|
+
const indicatorId3 = createProgressIndicator('indeterminate', 0, `Importing ${journeyId}...`);
|
|
210
|
+
stopProgressIndicator(indicatorId3, `${journeyId} not found!`, 'fail');
|
|
201
211
|
}
|
|
202
|
-
})
|
|
212
|
+
} catch (error) {
|
|
213
|
+
printMessage(`Error importing journey ${journeyId}: ${error}`, 'error');
|
|
214
|
+
}
|
|
203
215
|
}
|
|
204
216
|
|
|
205
217
|
/**
|
|
@@ -208,9 +220,9 @@ export async function importJourneyFromFile(journeyId, file, options) {
|
|
|
208
220
|
* @param {TreeImportOptions} options import options
|
|
209
221
|
*/
|
|
210
222
|
export async function importFirstJourneyFromFile(file, options) {
|
|
211
|
-
const verbose = state.
|
|
212
|
-
|
|
213
|
-
|
|
223
|
+
const verbose = state.getVerbose();
|
|
224
|
+
try {
|
|
225
|
+
const data = fs.readFileSync(getFilePath(file), 'utf8');
|
|
214
226
|
let journeyData = cloneDeep(JSON.parse(data));
|
|
215
227
|
let journeyId = null;
|
|
216
228
|
// single tree
|
|
@@ -231,35 +243,39 @@ export async function importFirstJourneyFromFile(file, options) {
|
|
|
231
243
|
// if a journeyId was specified, only import the matching journey
|
|
232
244
|
if (journeyData && journeyId) {
|
|
233
245
|
// attempt dependency resolution for single tree import
|
|
234
|
-
const installedJourneys = (await
|
|
246
|
+
const installedJourneys = (await readJourneys()).map(x => x._id);
|
|
235
247
|
const unresolvedJourneys = {};
|
|
236
248
|
const resolvedJourneys = [];
|
|
237
|
-
|
|
238
|
-
await
|
|
249
|
+
const depSpinnerId = createProgressIndicator('indeterminate', 0, 'Resolving dependencies');
|
|
250
|
+
await resolveDependencies(installedJourneys, {
|
|
239
251
|
[journeyId]: journeyData
|
|
240
252
|
}, unresolvedJourneys, resolvedJourneys);
|
|
241
253
|
if (Object.keys(unresolvedJourneys).length === 0) {
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
254
|
+
stopProgressIndicator(depSpinnerId, `Resolved all dependencies.`, 'success');
|
|
255
|
+
let importSpinnerId;
|
|
256
|
+
if (!verbose) importSpinnerId = createProgressIndicator('indeterminate', 0, `Importing ${journeyId}...`);
|
|
257
|
+
try {
|
|
258
|
+
await importJourney(journeyData, options);
|
|
259
|
+
if (verbose) importSpinnerId = createProgressIndicator('indeterminate', 0, `Importing ${journeyId}...`);
|
|
260
|
+
stopProgressIndicator(importSpinnerId, `Imported ${journeyId}.`, 'success');
|
|
261
|
+
} catch (importError) {
|
|
262
|
+
if (verbose) importSpinnerId = createProgressIndicator('indeterminate', 0, `Importing ${journeyId}...`);
|
|
263
|
+
stopProgressIndicator(importSpinnerId, `${importError}`, 'fail');
|
|
264
|
+
}
|
|
251
265
|
} else {
|
|
252
|
-
|
|
266
|
+
stopProgressIndicator(depSpinnerId, `Unresolved dependencies:`, 'fail');
|
|
253
267
|
for (const journey of Object.keys(unresolvedJourneys)) {
|
|
254
268
|
printMessage(` ${journey} requires ${unresolvedJourneys[journey]}`, 'error');
|
|
255
269
|
}
|
|
256
270
|
}
|
|
257
271
|
} else {
|
|
258
|
-
|
|
259
|
-
|
|
272
|
+
const importSpinnerId = createProgressIndicator('indeterminate', 0, `Importing...`);
|
|
273
|
+
stopProgressIndicator(importSpinnerId, `No journeys found!`, 'fail');
|
|
260
274
|
}
|
|
261
275
|
// end dependency resolution for single tree import
|
|
262
|
-
})
|
|
276
|
+
} catch (error) {
|
|
277
|
+
printMessage(`Error importing first journey: ${error}`, 'error');
|
|
278
|
+
}
|
|
263
279
|
}
|
|
264
280
|
|
|
265
281
|
/**
|
|
@@ -268,11 +284,27 @@ export async function importFirstJourneyFromFile(file, options) {
|
|
|
268
284
|
* @param {TreeImportOptions} options import options
|
|
269
285
|
*/
|
|
270
286
|
export async function importJourneysFromFile(file, options) {
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
287
|
+
try {
|
|
288
|
+
const data = fs.readFileSync(getFilePath(file), 'utf8');
|
|
289
|
+
try {
|
|
290
|
+
const fileData = JSON.parse(data);
|
|
291
|
+
await importJourneys(fileData, options);
|
|
292
|
+
} catch (error) {
|
|
293
|
+
if (error.name === 'UnresolvedDependenciesError') {
|
|
294
|
+
for (const journey of Object.keys(error.unresolvedJourneys)) {
|
|
295
|
+
printMessage({
|
|
296
|
+
message: ` - ${journey} requires ${error.unresolvedJourneys[journey]}`,
|
|
297
|
+
type: 'info',
|
|
298
|
+
state
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
} else {
|
|
302
|
+
printMessage(`${error.message}`, 'error');
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
} catch (error) {
|
|
306
|
+
printMessage(`Error importing journeys: ${error}`, 'error');
|
|
307
|
+
}
|
|
276
308
|
}
|
|
277
309
|
|
|
278
310
|
/**
|
|
@@ -280,8 +312,8 @@ export async function importJourneysFromFile(file, options) {
|
|
|
280
312
|
* @param {TreeImportOptions} options import options
|
|
281
313
|
*/
|
|
282
314
|
export async function importJourneysFromFiles(options) {
|
|
283
|
-
const names = fs.readdirSync(
|
|
284
|
-
const jsonFiles = names.filter(name => name.toLowerCase().endsWith('.journey.json'));
|
|
315
|
+
const names = fs.readdirSync(getWorkingDirectory());
|
|
316
|
+
const jsonFiles = names.filter(name => name.toLowerCase().endsWith('.journey.json')).map(name => getFilePath(name));
|
|
285
317
|
const allJourneysData = {
|
|
286
318
|
trees: {}
|
|
287
319
|
};
|
|
@@ -289,7 +321,12 @@ export async function importJourneysFromFiles(options) {
|
|
|
289
321
|
const journeyData = JSON.parse(fs.readFileSync(file, 'utf8'));
|
|
290
322
|
allJourneysData.trees[journeyData.tree._id] = journeyData;
|
|
291
323
|
}
|
|
292
|
-
|
|
324
|
+
try {
|
|
325
|
+
await importJourneys(allJourneysData, options);
|
|
326
|
+
} catch (error) {
|
|
327
|
+
var _error$response2;
|
|
328
|
+
printMessage(`${((_error$response2 = error.response) === null || _error$response2 === void 0 || (_error$response2 = _error$response2.data) === null || _error$response2 === void 0 ? void 0 : _error$response2.message) || error.message}`, 'error');
|
|
329
|
+
}
|
|
293
330
|
}
|
|
294
331
|
|
|
295
332
|
/**
|
|
@@ -298,7 +335,7 @@ export async function importJourneysFromFiles(options) {
|
|
|
298
335
|
* @returns {string[]} Colored string array of classifications
|
|
299
336
|
*/
|
|
300
337
|
export function getJourneyClassification(journey) {
|
|
301
|
-
return
|
|
338
|
+
return _getJourneyClassification(journey).map(it => {
|
|
302
339
|
switch (it) {
|
|
303
340
|
case 'standard':
|
|
304
341
|
return it['brightGreen'];
|
|
@@ -318,7 +355,7 @@ export function getJourneyClassification(journey) {
|
|
|
318
355
|
* @returns {string[]} Colored string array of classifications
|
|
319
356
|
*/
|
|
320
357
|
export function getJourneyClassificationMd(journey) {
|
|
321
|
-
return
|
|
358
|
+
return _getJourneyClassification(journey).map(it => {
|
|
322
359
|
switch (it) {
|
|
323
360
|
case 'standard':
|
|
324
361
|
return `:green_circle: \`${it}\``;
|
|
@@ -410,7 +447,7 @@ function describeTreeDescendentsMd(descendents, depth = 0) {
|
|
|
410
447
|
* @param {SingleTreeExportInterface} journeyData journey export object
|
|
411
448
|
* @param {TreeExportResolverInterface} resolveTreeExport tree export resolver callback function
|
|
412
449
|
*/
|
|
413
|
-
export async function describeJourney(journeyData, resolveTreeExport =
|
|
450
|
+
export async function describeJourney(journeyData, resolveTreeExport = onlineTreeExportResolver) {
|
|
414
451
|
var _journeyData$meta, _journeyData$tree$uiC, _journeyData$themes;
|
|
415
452
|
const allNodes = {
|
|
416
453
|
...journeyData.nodes,
|
|
@@ -454,8 +491,13 @@ export async function describeJourney(journeyData, resolveTreeExport = frodo.aut
|
|
|
454
491
|
}
|
|
455
492
|
|
|
456
493
|
// Dependency Tree
|
|
457
|
-
|
|
458
|
-
|
|
494
|
+
try {
|
|
495
|
+
const descendents = await getTreeDescendents(journeyData, resolveTreeExport);
|
|
496
|
+
describeTreeDescendents(descendents);
|
|
497
|
+
} catch (error) {
|
|
498
|
+
printMessage(`Error resolving inner tree dependencies:`, 'error');
|
|
499
|
+
printMessage(error.stack, 'error');
|
|
500
|
+
}
|
|
459
501
|
|
|
460
502
|
// Node Types
|
|
461
503
|
if (Object.entries(nodeTypeMap).length) {
|
|
@@ -469,7 +511,7 @@ export async function describeJourney(journeyData, resolveTreeExport = frodo.aut
|
|
|
469
511
|
if (Object.entries(allNodes).length) {
|
|
470
512
|
printMessage(`\nNodes (${Object.entries(allNodes).length}):`, 'data');
|
|
471
513
|
for (const nodeObj of Object.values(allNodes)) {
|
|
472
|
-
printMessage(`- ${Node.getOneLineDescription(nodeObj,
|
|
514
|
+
printMessage(`- ${Node.getOneLineDescription(nodeObj, getNodeRef(nodeObj, journeyData))}`, 'data');
|
|
473
515
|
}
|
|
474
516
|
}
|
|
475
517
|
|
|
@@ -537,7 +579,7 @@ export async function describeJourney(journeyData, resolveTreeExport = frodo.aut
|
|
|
537
579
|
* @param {SingleTreeExportInterface} journeyData journey export object
|
|
538
580
|
* @param {TreeExportResolverInterface} resolveTreeExport tree export resolver callback function
|
|
539
581
|
*/
|
|
540
|
-
export async function describeJourneyMd(journeyData, resolveTreeExport =
|
|
582
|
+
export async function describeJourneyMd(journeyData, resolveTreeExport = onlineTreeExportResolver) {
|
|
541
583
|
var _journeyData$meta2, _journeyData$tree$uiC2, _journeyData$themes2;
|
|
542
584
|
const allNodes = {
|
|
543
585
|
...journeyData.nodes,
|
|
@@ -574,7 +616,7 @@ export async function describeJourneyMd(journeyData, resolveTreeExport = frodo.a
|
|
|
574
616
|
printMessage(`\n[]()\n`, 'data');
|
|
575
617
|
|
|
576
618
|
// Dependency Tree
|
|
577
|
-
const descendents = await
|
|
619
|
+
const descendents = await getTreeDescendents(journeyData, resolveTreeExport);
|
|
578
620
|
printMessage(describeTreeDescendentsMd(descendents), 'data');
|
|
579
621
|
|
|
580
622
|
// Node Types
|
|
@@ -592,7 +634,7 @@ export async function describeJourneyMd(journeyData, resolveTreeExport = frodo.a
|
|
|
592
634
|
printMessage(`## Nodes (${Object.entries(allNodes).length})`, 'data');
|
|
593
635
|
printMessage(Node.getTableHeaderMd(), 'data');
|
|
594
636
|
for (const nodeObj of Object.values(allNodes)) {
|
|
595
|
-
printMessage(`${Node.getTableRowMd(nodeObj,
|
|
637
|
+
printMessage(`${Node.getTableRowMd(nodeObj, getNodeRef(nodeObj, journeyData))}`, 'data');
|
|
596
638
|
}
|
|
597
639
|
}
|
|
598
640
|
|
|
@@ -650,4 +692,24 @@ export async function describeJourneyMd(journeyData, resolveTreeExport = frodo.a
|
|
|
650
692
|
}
|
|
651
693
|
}
|
|
652
694
|
}
|
|
653
|
-
|
|
695
|
+
export async function enableJourney(journeyId) {
|
|
696
|
+
const indicatorId = createProgressIndicator('indeterminate', 0, `Enabling journey ${journeyId}...`);
|
|
697
|
+
if (_enableJourney(journeyId)) {
|
|
698
|
+
stopProgressIndicator(indicatorId, `Enabled journey ${journeyId}.`, 'success');
|
|
699
|
+
return true;
|
|
700
|
+
} else {
|
|
701
|
+
stopProgressIndicator(indicatorId, `Error enabling journey ${journeyId}`, 'fail');
|
|
702
|
+
return false;
|
|
703
|
+
}
|
|
704
|
+
}
|
|
705
|
+
export async function disableJourney(journeyId) {
|
|
706
|
+
const indicatorId = createProgressIndicator('indeterminate', 0, `Disabling journey ${journeyId}...`);
|
|
707
|
+
if (_disableJourney(journeyId)) {
|
|
708
|
+
stopProgressIndicator(indicatorId, `Disabled journey ${journeyId}.`, 'success');
|
|
709
|
+
return true;
|
|
710
|
+
} else {
|
|
711
|
+
stopProgressIndicator(indicatorId, `Error disabling journey ${journeyId}`, 'fail');
|
|
712
|
+
return false;
|
|
713
|
+
}
|
|
714
|
+
}
|
|
715
|
+
//# sourceMappingURL=JourneyOps.js.map
|