@rockcarver/frodo-cli 0.24.5 → 2.0.0-1
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/.vscode/launch.json +15 -0
- package/CHANGELOG.md +5 -1
- package/esm/app.js +2 -5
- package/esm/app.js.map +1 -1
- package/esm/cli/FrodoCommand.js +10 -10
- package/esm/cli/FrodoCommand.js.map +1 -1
- package/esm/cli/_template/something-delete.js +2 -5
- package/esm/cli/_template/something-delete.js.map +1 -1
- package/esm/cli/_template/something-describe.js +2 -5
- package/esm/cli/_template/something-describe.js.map +1 -1
- package/esm/cli/_template/something-else-delete.js +2 -5
- package/esm/cli/_template/something-else-delete.js.map +1 -1
- package/esm/cli/_template/something-else-describe.js +2 -5
- package/esm/cli/_template/something-else-describe.js.map +1 -1
- package/esm/cli/_template/something-else-export.js +2 -5
- package/esm/cli/_template/something-else-export.js.map +1 -1
- package/esm/cli/_template/something-else-import.js +2 -5
- package/esm/cli/_template/something-else-import.js.map +1 -1
- package/esm/cli/_template/something-else-list.js +2 -5
- package/esm/cli/_template/something-else-list.js.map +1 -1
- package/esm/cli/_template/something-export.js +2 -5
- package/esm/cli/_template/something-export.js.map +1 -1
- package/esm/cli/_template/something-import.js +2 -5
- package/esm/cli/_template/something-import.js.map +1 -1
- package/esm/cli/_template/something-list.js +2 -5
- package/esm/cli/_template/something-list.js.map +1 -1
- package/esm/cli/_template/something-other-delete.js +2 -5
- package/esm/cli/_template/something-other-delete.js.map +1 -1
- package/esm/cli/_template/something-other-describe.js +2 -5
- package/esm/cli/_template/something-other-describe.js.map +1 -1
- package/esm/cli/_template/something-other-export.js +2 -5
- package/esm/cli/_template/something-other-export.js.map +1 -1
- package/esm/cli/_template/something-other-import.js +2 -5
- package/esm/cli/_template/something-other-import.js.map +1 -1
- package/esm/cli/_template/something-other-list.js +2 -5
- package/esm/cli/_template/something-other-list.js.map +1 -1
- package/esm/cli/admin/admin-add-autoid-static-user-mapping.js +3 -9
- 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 +4 -11
- package/esm/cli/admin/admin-create-oauth2-client-with-admin-privileges.js.map +1 -1
- package/esm/cli/admin/admin-get-access-token.js +3 -9
- package/esm/cli/admin/admin-get-access-token.js.map +1 -1
- package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js +3 -9
- package/esm/cli/admin/admin-grant-oauth2-client-admin-privileges.js.map +1 -1
- package/esm/cli/admin/admin-hide-generic-extension-attributes.js +3 -9
- 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 +3 -9
- 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 +3 -9
- 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 +3 -9
- package/esm/cli/admin/admin-list-static-user-mappings.js.map +1 -1
- package/esm/cli/admin/admin-remove-static-user-mapping.js +3 -9
- package/esm/cli/admin/admin-remove-static-user-mapping.js.map +1 -1
- package/esm/cli/admin/admin-repair-org-model.js +3 -9
- package/esm/cli/admin/admin-repair-org-model.js.map +1 -1
- package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js +3 -9
- package/esm/cli/admin/admin-revoke-oauth2-client-admin-privileges.js.map +1 -1
- package/esm/cli/admin/admin-show-generic-extension-attributes.js +3 -9
- package/esm/cli/admin/admin-show-generic-extension-attributes.js.map +1 -1
- package/esm/cli/agent/agent-delete.js +4 -11
- package/esm/cli/agent/agent-delete.js.map +1 -1
- package/esm/cli/agent/agent-describe.js +2 -5
- package/esm/cli/agent/agent-describe.js.map +1 -1
- package/esm/cli/agent/agent-export.js +2 -5
- package/esm/cli/agent/agent-export.js.map +1 -1
- package/esm/cli/agent/agent-gateway-delete.js +4 -11
- package/esm/cli/agent/agent-gateway-delete.js.map +1 -1
- package/esm/cli/agent/agent-gateway-describe.js +2 -5
- package/esm/cli/agent/agent-gateway-describe.js.map +1 -1
- package/esm/cli/agent/agent-gateway-export.js +2 -5
- package/esm/cli/agent/agent-gateway-export.js.map +1 -1
- package/esm/cli/agent/agent-gateway-import.js +2 -5
- package/esm/cli/agent/agent-gateway-import.js.map +1 -1
- package/esm/cli/agent/agent-gateway-list.js +2 -5
- package/esm/cli/agent/agent-gateway-list.js.map +1 -1
- package/esm/cli/agent/agent-import.js +2 -5
- package/esm/cli/agent/agent-import.js.map +1 -1
- package/esm/cli/agent/agent-java-delete.js +4 -11
- package/esm/cli/agent/agent-java-delete.js.map +1 -1
- package/esm/cli/agent/agent-java-describe.js +2 -5
- package/esm/cli/agent/agent-java-describe.js.map +1 -1
- package/esm/cli/agent/agent-java-export.js +2 -5
- package/esm/cli/agent/agent-java-export.js.map +1 -1
- package/esm/cli/agent/agent-java-import.js +2 -5
- package/esm/cli/agent/agent-java-import.js.map +1 -1
- package/esm/cli/agent/agent-java-list.js +2 -5
- package/esm/cli/agent/agent-java-list.js.map +1 -1
- package/esm/cli/agent/agent-list.js +2 -5
- package/esm/cli/agent/agent-list.js.map +1 -1
- package/esm/cli/agent/agent-web-delete.js +4 -11
- package/esm/cli/agent/agent-web-delete.js.map +1 -1
- package/esm/cli/agent/agent-web-describe.js +2 -5
- package/esm/cli/agent/agent-web-describe.js.map +1 -1
- package/esm/cli/agent/agent-web-export.js +2 -5
- package/esm/cli/agent/agent-web-export.js.map +1 -1
- package/esm/cli/agent/agent-web-import.js +2 -5
- package/esm/cli/agent/agent-web-import.js.map +1 -1
- package/esm/cli/agent/agent-web-list.js +2 -5
- package/esm/cli/agent/agent-web-list.js.map +1 -1
- package/esm/cli/app/app-delete.js +2 -5
- package/esm/cli/app/app-delete.js.map +1 -1
- package/esm/cli/app/app-describe.js +2 -5
- package/esm/cli/app/app-describe.js.map +1 -1
- package/esm/cli/app/app-export.js +4 -7
- package/esm/cli/app/app-export.js.map +1 -1
- package/esm/cli/app/app-import.js +5 -8
- package/esm/cli/app/app-import.js.map +1 -1
- package/esm/cli/app/app-list.js +3 -6
- package/esm/cli/app/app-list.js.map +1 -1
- package/esm/cli/authz/authz-policy-delete.js +4 -7
- package/esm/cli/authz/authz-policy-delete.js.map +1 -1
- package/esm/cli/authz/authz-policy-describe.js +2 -5
- package/esm/cli/authz/authz-policy-describe.js.map +1 -1
- package/esm/cli/authz/authz-policy-export.js +6 -9
- package/esm/cli/authz/authz-policy-export.js.map +1 -1
- package/esm/cli/authz/authz-policy-import.js +5 -8
- package/esm/cli/authz/authz-policy-import.js.map +1 -1
- package/esm/cli/authz/authz-policy-list.js +3 -6
- package/esm/cli/authz/authz-policy-list.js.map +1 -1
- package/esm/cli/authz/authz-set-delete.js +3 -6
- package/esm/cli/authz/authz-set-delete.js.map +1 -1
- package/esm/cli/authz/authz-set-describe.js +2 -5
- package/esm/cli/authz/authz-set-describe.js.map +1 -1
- package/esm/cli/authz/authz-set-export.js +4 -7
- package/esm/cli/authz/authz-set-export.js.map +1 -1
- package/esm/cli/authz/authz-set-import.js +5 -8
- package/esm/cli/authz/authz-set-import.js.map +1 -1
- package/esm/cli/authz/authz-set-list.js +2 -5
- package/esm/cli/authz/authz-set-list.js.map +1 -1
- package/esm/cli/authz/authz-type-delete.js +4 -7
- package/esm/cli/authz/authz-type-delete.js.map +1 -1
- package/esm/cli/authz/authz-type-describe.js +3 -6
- package/esm/cli/authz/authz-type-describe.js.map +1 -1
- package/esm/cli/authz/authz-type-export.js +5 -8
- package/esm/cli/authz/authz-type-export.js.map +1 -1
- package/esm/cli/authz/authz-type-import.js +6 -9
- package/esm/cli/authz/authz-type-import.js.map +1 -1
- package/esm/cli/authz/authz-type-list.js +2 -5
- package/esm/cli/authz/authz-type-list.js.map +1 -1
- package/esm/cli/conn/conn-delete.js +2 -5
- package/esm/cli/conn/conn-delete.js.map +1 -1
- package/esm/cli/conn/conn-describe.js +1 -4
- package/esm/cli/conn/conn-describe.js.map +1 -1
- package/esm/cli/conn/conn-list.js +1 -4
- package/esm/cli/conn/conn-list.js.map +1 -1
- package/esm/cli/conn/conn-save.js +6 -16
- package/esm/cli/conn/conn-save.js.map +1 -1
- package/esm/cli/email/email-template-export.js +4 -7
- package/esm/cli/email/email-template-export.js.map +1 -1
- package/esm/cli/email/email-template-import.js +5 -8
- package/esm/cli/email/email-template-import.js.map +1 -1
- package/esm/cli/email/email-template-list.js +2 -5
- package/esm/cli/email/email-template-list.js.map +1 -1
- package/esm/cli/esv/esv-apply.js +6 -16
- package/esm/cli/esv/esv-apply.js.map +1 -1
- package/esm/cli/esv/esv-secret-create.js +3 -8
- package/esm/cli/esv/esv-secret-create.js.map +1 -1
- package/esm/cli/esv/esv-secret-delete.js +6 -12
- package/esm/cli/esv/esv-secret-delete.js.map +1 -1
- package/esm/cli/esv/esv-secret-describe.js +3 -8
- package/esm/cli/esv/esv-secret-describe.js.map +1 -1
- package/esm/cli/esv/esv-secret-export.js +2 -5
- package/esm/cli/esv/esv-secret-export.js.map +1 -1
- package/esm/cli/esv/esv-secret-import.js +2 -5
- package/esm/cli/esv/esv-secret-import.js.map +1 -1
- package/esm/cli/esv/esv-secret-list.js +3 -8
- package/esm/cli/esv/esv-secret-list.js.map +1 -1
- package/esm/cli/esv/esv-secret-set.js +4 -9
- package/esm/cli/esv/esv-secret-set.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-activate.js +3 -8
- package/esm/cli/esv/esv-secret-version-activate.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-create.js +4 -9
- package/esm/cli/esv/esv-secret-version-create.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-deactivate.js +3 -8
- package/esm/cli/esv/esv-secret-version-deactivate.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-delete.js +5 -10
- package/esm/cli/esv/esv-secret-version-delete.js.map +1 -1
- package/esm/cli/esv/esv-secret-version-list.js +4 -9
- package/esm/cli/esv/esv-secret-version-list.js.map +1 -1
- package/esm/cli/esv/esv-variable-create.js +3 -8
- package/esm/cli/esv/esv-variable-create.js.map +1 -1
- package/esm/cli/esv/esv-variable-delete.js +6 -12
- package/esm/cli/esv/esv-variable-delete.js.map +1 -1
- package/esm/cli/esv/esv-variable-describe.js +3 -8
- package/esm/cli/esv/esv-variable-describe.js.map +1 -1
- package/esm/cli/esv/esv-variable-export.js +2 -5
- package/esm/cli/esv/esv-variable-export.js.map +1 -1
- package/esm/cli/esv/esv-variable-import.js +2 -5
- package/esm/cli/esv/esv-variable-import.js.map +1 -1
- package/esm/cli/esv/esv-variable-list.js +3 -8
- package/esm/cli/esv/esv-variable-list.js.map +1 -1
- package/esm/cli/esv/esv-variable-set.js +5 -11
- package/esm/cli/esv/esv-variable-set.js.map +1 -1
- package/esm/cli/idm/idm-count.js +2 -5
- package/esm/cli/idm/idm-count.js.map +1 -1
- package/esm/cli/idm/idm-export.js +4 -7
- package/esm/cli/idm/idm-export.js.map +1 -1
- package/esm/cli/idm/idm-import.js +5 -8
- package/esm/cli/idm/idm-import.js.map +1 -1
- package/esm/cli/idm/idm-list.js +2 -5
- package/esm/cli/idm/idm-list.js.map +1 -1
- package/esm/cli/idp/idp-export.js +2 -5
- package/esm/cli/idp/idp-export.js.map +1 -1
- package/esm/cli/idp/idp-import.js +5 -8
- package/esm/cli/idp/idp-import.js.map +1 -1
- package/esm/cli/idp/idp-list.js +2 -5
- package/esm/cli/idp/idp-list.js.map +1 -1
- package/esm/cli/info/info.js +3 -9
- package/esm/cli/info/info.js.map +1 -1
- package/esm/cli/journey/journey-delete.js +5 -12
- package/esm/cli/journey/journey-delete.js.map +1 -1
- package/esm/cli/journey/journey-describe.js +7 -15
- package/esm/cli/journey/journey-describe.js.map +1 -1
- package/esm/cli/journey/journey-disable.js +3 -9
- package/esm/cli/journey/journey-disable.js.map +1 -1
- package/esm/cli/journey/journey-enable.js +3 -9
- package/esm/cli/journey/journey-enable.js.map +1 -1
- package/esm/cli/journey/journey-export.js +4 -7
- package/esm/cli/journey/journey-export.js.map +1 -1
- package/esm/cli/journey/journey-import.js +5 -8
- package/esm/cli/journey/journey-import.js.map +1 -1
- package/esm/cli/journey/journey-list.js +2 -5
- package/esm/cli/journey/journey-list.js.map +1 -1
- package/esm/cli/journey/journey-prune.js +4 -11
- package/esm/cli/journey/journey-prune.js.map +1 -1
- package/esm/cli/logging/logs-fetch.js +7 -17
- package/esm/cli/logging/logs-fetch.js.map +1 -1
- package/esm/cli/logging/logs-list.js +5 -15
- package/esm/cli/logging/logs-list.js.map +1 -1
- package/esm/cli/logging/logs-tail.js +7 -17
- package/esm/cli/logging/logs-tail.js.map +1 -1
- package/esm/cli/realm/realm-add-custom-domain.js +3 -8
- package/esm/cli/realm/realm-add-custom-domain.js.map +1 -1
- package/esm/cli/realm/realm-describe.js +4 -12
- package/esm/cli/realm/realm-describe.js.map +1 -1
- package/esm/cli/realm/realm-list.js +3 -8
- package/esm/cli/realm/realm-list.js.map +1 -1
- package/esm/cli/realm/realm-remove-custom-domain.js +3 -9
- package/esm/cli/realm/realm-remove-custom-domain.js.map +1 -1
- package/esm/cli/saml/saml-cot-export.js +11 -15
- package/esm/cli/saml/saml-cot-export.js.map +1 -1
- package/esm/cli/saml/saml-cot-import.js +15 -19
- package/esm/cli/saml/saml-cot-import.js.map +1 -1
- package/esm/cli/saml/saml-cot-list.js +5 -9
- package/esm/cli/saml/saml-cot-list.js.map +1 -1
- package/esm/cli/saml/saml-delete.js +5 -12
- package/esm/cli/saml/saml-delete.js.map +1 -1
- package/esm/cli/saml/saml-describe.js +2 -5
- package/esm/cli/saml/saml-describe.js.map +1 -1
- package/esm/cli/saml/saml-export.js +12 -30
- package/esm/cli/saml/saml-export.js.map +1 -1
- package/esm/cli/saml/saml-import.js +15 -36
- package/esm/cli/saml/saml-import.js.map +1 -1
- package/esm/cli/saml/saml-list.js +6 -14
- package/esm/cli/saml/saml-list.js.map +1 -1
- package/esm/cli/saml/saml-metadata-export.js +3 -6
- package/esm/cli/saml/saml-metadata-export.js.map +1 -1
- package/esm/cli/script/script-delete.js +2 -5
- package/esm/cli/script/script-delete.js.map +1 -1
- package/esm/cli/script/script-describe.js +2 -5
- package/esm/cli/script/script-describe.js.map +1 -1
- package/esm/cli/script/script-export.js +2 -5
- package/esm/cli/script/script-export.js.map +1 -1
- package/esm/cli/script/script-import.js +4 -6
- package/esm/cli/script/script-import.js.map +1 -1
- package/esm/cli/script/script-list.js +4 -6
- package/esm/cli/script/script-list.js.map +1 -1
- package/esm/cli/service/service-delete.js +3 -6
- package/esm/cli/service/service-delete.js.map +1 -1
- package/esm/cli/service/service-export.js +4 -7
- package/esm/cli/service/service-export.js.map +1 -1
- package/esm/cli/service/service-import.js +5 -8
- package/esm/cli/service/service-import.js.map +1 -1
- package/esm/cli/service/service-list.js +2 -5
- package/esm/cli/service/service-list.js.map +1 -1
- package/esm/cli/theme/theme-delete.js +4 -7
- package/esm/cli/theme/theme-delete.js.map +1 -1
- package/esm/cli/theme/theme-export.js +5 -8
- package/esm/cli/theme/theme-export.js.map +1 -1
- package/esm/cli/theme/theme-import.js +6 -9
- package/esm/cli/theme/theme-import.js.map +1 -1
- package/esm/cli/theme/theme-list.js +2 -5
- package/esm/cli/theme/theme-list.js.map +1 -1
- package/esm/launch.js +4 -3
- package/esm/launch.js.map +1 -1
- package/esm/ops/AgentOps.js +49 -82
- package/esm/ops/AgentOps.js.map +1 -1
- package/esm/ops/CirclesOfTrustOps.js +217 -2
- package/esm/ops/CirclesOfTrustOps.js.map +1 -1
- package/esm/ops/ConnectionProfileOps.js +97 -8
- package/esm/ops/ConnectionProfileOps.js.map +1 -1
- package/esm/ops/EmailTemplateOps.js +16 -25
- package/esm/ops/EmailTemplateOps.js.map +1 -1
- package/esm/ops/IdmOps.js +25 -39
- package/esm/ops/IdmOps.js.map +1 -1
- package/esm/ops/IdpOps.js +10 -18
- package/esm/ops/IdpOps.js.map +1 -1
- package/esm/ops/JourneyOps.js +49 -65
- package/esm/ops/JourneyOps.js.map +1 -1
- package/esm/ops/LogOps.js +9 -17
- package/esm/ops/LogOps.js.map +1 -1
- package/esm/ops/NodeOps.js +11 -11
- package/esm/ops/NodeOps.js.map +1 -1
- package/esm/ops/OAuth2ClientOps.js +13 -29
- package/esm/ops/OAuth2ClientOps.js.map +1 -1
- package/esm/ops/OrganizationOps.js +28 -0
- package/esm/ops/OrganizationOps.js.map +1 -0
- package/esm/ops/PolicyOps.js +22 -38
- package/esm/ops/PolicyOps.js.map +1 -1
- package/esm/ops/PolicySetOps.js +19 -37
- package/esm/ops/PolicySetOps.js.map +1 -1
- package/esm/ops/RealmOps.js +109 -0
- package/esm/ops/RealmOps.js.map +1 -0
- package/esm/ops/ResourceTypeOps.js +19 -37
- package/esm/ops/ResourceTypeOps.js.map +1 -1
- package/esm/ops/Saml2Ops.js +30 -251
- package/esm/ops/Saml2Ops.js.map +1 -1
- package/esm/ops/ScriptOps.js +14 -21
- package/esm/ops/ScriptOps.js.map +1 -1
- package/esm/ops/SecretsOps.js +223 -0
- package/esm/ops/SecretsOps.js.map +1 -0
- package/esm/ops/ServiceOps.js +20 -41
- package/esm/ops/ServiceOps.js.map +1 -1
- package/esm/ops/ThemeOps.js +20 -35
- package/esm/ops/ThemeOps.js.map +1 -1
- package/esm/ops/VariablesOps.js +133 -0
- package/esm/ops/VariablesOps.js.map +1 -0
- package/esm/utils/Config.js +3 -6
- package/esm/utils/Config.js.map +1 -1
- package/esm/utils/Console.js +2 -5
- package/esm/utils/Console.js.map +1 -1
- package/esm/utils/ExportImportUtils.js +4 -6
- package/esm/utils/ExportImportUtils.js.map +1 -1
- package/esm/utils/Version.js +3 -3
- package/esm/utils/Version.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
2
|
import { Option } from 'commander';
|
|
3
|
-
import {
|
|
4
|
-
const {
|
|
5
|
-
getTokens
|
|
6
|
-
} = Authenticate;
|
|
3
|
+
import { frodo } from '@rockcarver/frodo-lib';
|
|
7
4
|
const program = new FrodoCommand('frodo something other describe');
|
|
8
5
|
program.description('Describe other.').addOption(new Option('-i, --other-id <other-id>', '[Other] id.')).action(
|
|
9
6
|
// implement command logic inside action handler
|
|
10
7
|
async (host, realm, user, password, options, command) => {
|
|
11
8
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
12
|
-
if (await getTokens()) {
|
|
9
|
+
if (await frodo.login.getTokens()) {
|
|
13
10
|
// code goes here
|
|
14
11
|
} else {
|
|
15
12
|
process.exitCode = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"something-other-describe.js","names":["FrodoCommand","Option","
|
|
1
|
+
{"version":3,"file":"something-other-describe.js","names":["FrodoCommand","Option","frodo","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","process","exitCode","parse"],"sources":["cli/_template/something-other-describe.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\n\nconst program = new FrodoCommand('frodo something other describe');\n\nprogram\n .description('Describe other.')\n .addOption(new Option('-i, --other-id <other-id>', '[Other] id.'))\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n // code goes here\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,QAAQ,uBAAuB;AAE7C,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,gCAAgC,CAAC;AAElEG,OAAO,CACJC,WAAW,CAAC,iBAAiB,CAAC,CAC9BC,SAAS,CAAC,IAAIJ,MAAM,CAAC,2BAA2B,EAAE,aAAa,CAAC,CAAC,CACjEK,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMV,KAAK,CAACY,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjC;EAAA,CACD,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHd,OAAO,CAACe,KAAK,CAAC,CAAC"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
2
|
import { Option } from 'commander';
|
|
3
|
-
import {
|
|
4
|
-
const {
|
|
5
|
-
getTokens
|
|
6
|
-
} = Authenticate;
|
|
3
|
+
import { frodo } from '@rockcarver/frodo-lib';
|
|
7
4
|
const program = new FrodoCommand('frodo something other export');
|
|
8
5
|
program.description('Export other.').addOption(new Option('-i, --other-id <other-id>', '[Other] id. If specified, -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the export file.')).addOption(new Option('-a, --all', 'Export all [others] to a single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Export all [others] to separate files (*.[other].json) in the current directory. Ignored with -i or -a.')).action(
|
|
9
6
|
// implement command logic inside action handler
|
|
10
7
|
async (host, realm, user, password, options, command) => {
|
|
11
8
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
12
|
-
if (await getTokens()) {
|
|
9
|
+
if (await frodo.login.getTokens()) {
|
|
13
10
|
// code goes here
|
|
14
11
|
} else {
|
|
15
12
|
process.exitCode = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"something-other-export.js","names":["FrodoCommand","Option","
|
|
1
|
+
{"version":3,"file":"something-other-export.js","names":["FrodoCommand","Option","frodo","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","process","exitCode","parse"],"sources":["cli/_template/something-other-export.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\n\nconst program = new FrodoCommand('frodo something other export');\n\nprogram\n .description('Export other.')\n .addOption(\n new Option(\n '-i, --other-id <other-id>',\n '[Other] id. If specified, -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the export file.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Export all [others] to a single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Export all [others] to separate files (*.[other].json) in the current directory. Ignored with -i or -a.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n // code goes here\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,QAAQ,uBAAuB;AAE7C,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,8BAA8B,CAAC;AAEhEG,OAAO,CACJC,WAAW,CAAC,eAAe,CAAC,CAC5BC,SAAS,CACR,IAAIJ,MAAM,CACR,2BAA2B,EAC3B,kDACF,CACF,CAAC,CACAI,SAAS,CAAC,IAAIJ,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC,CAAC,CACtEI,SAAS,CACR,IAAIJ,MAAM,CACR,WAAW,EACX,wDACF,CACF,CAAC,CACAI,SAAS,CACR,IAAIJ,MAAM,CACR,oBAAoB,EACpB,yGACF,CACF,CAAC,CACAK,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMV,KAAK,CAACY,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjC;EAAA,CACD,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHd,OAAO,CAACe,KAAK,CAAC,CAAC"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
2
|
import { Option } from 'commander';
|
|
3
|
-
import {
|
|
4
|
-
const {
|
|
5
|
-
getTokens
|
|
6
|
-
} = Authenticate;
|
|
3
|
+
import { frodo } from '@rockcarver/frodo-lib';
|
|
7
4
|
const program = new FrodoCommand('frodo something other import');
|
|
8
5
|
program.description('Import other.').addOption(new Option('-i, --other-id <other-id>', '[Other] id. If specified, only one [other] is imported and the options -a and -A are ignored.')).addOption(new Option('-f, --file <file>', 'Name of the file to import.')).addOption(new Option('-a, --all', 'Import all [others] from single file. Ignored with -i.')).addOption(new Option('-A, --all-separate', 'Import all [others] from separate files (*.[other].json) in the current directory. Ignored with -i or -a.')).action(
|
|
9
6
|
// implement command logic inside action handler
|
|
10
7
|
async (host, realm, user, password, options, command) => {
|
|
11
8
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
12
|
-
if (await getTokens()) {
|
|
9
|
+
if (await frodo.login.getTokens()) {
|
|
13
10
|
// code goes here
|
|
14
11
|
} else {
|
|
15
12
|
process.exitCode = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"something-other-import.js","names":["FrodoCommand","Option","
|
|
1
|
+
{"version":3,"file":"something-other-import.js","names":["FrodoCommand","Option","frodo","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","process","exitCode","parse"],"sources":["cli/_template/something-other-import.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\n\nconst program = new FrodoCommand('frodo something other import');\n\nprogram\n .description('Import other.')\n .addOption(\n new Option(\n '-i, --other-id <other-id>',\n '[Other] id. If specified, only one [other] is imported and the options -a and -A are ignored.'\n )\n )\n .addOption(new Option('-f, --file <file>', 'Name of the file to import.'))\n .addOption(\n new Option(\n '-a, --all',\n 'Import all [others] from single file. Ignored with -i.'\n )\n )\n .addOption(\n new Option(\n '-A, --all-separate',\n 'Import all [others] from separate files (*.[other].json) in the current directory. Ignored with -i or -a.'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n // code goes here\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,QAAQ,uBAAuB;AAE7C,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,8BAA8B,CAAC;AAEhEG,OAAO,CACJC,WAAW,CAAC,eAAe,CAAC,CAC5BC,SAAS,CACR,IAAIJ,MAAM,CACR,2BAA2B,EAC3B,+FACF,CACF,CAAC,CACAI,SAAS,CAAC,IAAIJ,MAAM,CAAC,mBAAmB,EAAE,6BAA6B,CAAC,CAAC,CACzEI,SAAS,CACR,IAAIJ,MAAM,CACR,WAAW,EACX,wDACF,CACF,CAAC,CACAI,SAAS,CACR,IAAIJ,MAAM,CACR,oBAAoB,EACpB,2GACF,CACF,CAAC,CACAK,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMV,KAAK,CAACY,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjC;EAAA,CACD,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHd,OAAO,CAACe,KAAK,CAAC,CAAC"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
2
|
import { Option } from 'commander';
|
|
3
|
-
import {
|
|
4
|
-
const {
|
|
5
|
-
getTokens
|
|
6
|
-
} = Authenticate;
|
|
3
|
+
import { frodo } from '@rockcarver/frodo-lib';
|
|
7
4
|
const program = new FrodoCommand('frodo something other list');
|
|
8
5
|
program.description('List other.').addOption(new Option('-l, --long', 'Long with all fields.').default(false, 'false')).action(
|
|
9
6
|
// implement command logic inside action handler
|
|
10
7
|
async (host, realm, user, password, options, command) => {
|
|
11
8
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
12
|
-
if (await getTokens()) {
|
|
9
|
+
if (await frodo.login.getTokens()) {
|
|
13
10
|
// code goes here
|
|
14
11
|
} else {
|
|
15
12
|
process.exitCode = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"something-other-list.js","names":["FrodoCommand","Option","
|
|
1
|
+
{"version":3,"file":"something-other-list.js","names":["FrodoCommand","Option","frodo","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","process","exitCode","parse"],"sources":["cli/_template/something-other-list.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\n\nconst program = new FrodoCommand('frodo something other list');\n\nprogram\n .description('List other.')\n .addOption(\n new Option('-l, --long', 'Long with all fields.').default(false, 'false')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n // code goes here\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,QAAQ,uBAAuB;AAE7C,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,4BAA4B,CAAC;AAE9DG,OAAO,CACJC,WAAW,CAAC,aAAa,CAAC,CAC1BC,SAAS,CACR,IAAIJ,MAAM,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAACK,OAAO,CAAC,KAAK,EAAE,OAAO,CAC1E,CAAC,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMX,KAAK,CAACa,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjC;EAAA,CACD,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHf,OAAO,CAACgB,KAAK,CAAC,CAAC"}
|
|
@@ -1,20 +1,14 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
|
-
import {
|
|
2
|
+
import { frodo } from '@rockcarver/frodo-lib';
|
|
3
3
|
import { printMessage } from '../../utils/Console.js';
|
|
4
|
-
const {
|
|
5
|
-
getTokens
|
|
6
|
-
} = Authenticate;
|
|
7
|
-
const {
|
|
8
|
-
addAutoIdStaticUserMapping
|
|
9
|
-
} = Admin;
|
|
10
4
|
const program = new FrodoCommand('frodo admin add-autoid-static-user-mapping');
|
|
11
5
|
program.description('Add AutoId static user mapping to enable dashboards and other AutoId-based functionality.').action(
|
|
12
6
|
// implement command logic inside action handler
|
|
13
7
|
async (host, realm, user, password, options, command) => {
|
|
14
8
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
15
|
-
if (await getTokens()) {
|
|
9
|
+
if (await frodo.login.getTokens()) {
|
|
16
10
|
printMessage(`Adding AutoId static user mapping...`);
|
|
17
|
-
await addAutoIdStaticUserMapping();
|
|
11
|
+
await frodo.admin.addAutoIdStaticUserMapping();
|
|
18
12
|
printMessage('Done.');
|
|
19
13
|
} else {
|
|
20
14
|
process.exitCode = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-add-autoid-static-user-mapping.js","names":["FrodoCommand","
|
|
1
|
+
{"version":3,"file":"admin-add-autoid-static-user-mapping.js","names":["FrodoCommand","frodo","printMessage","program","description","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","admin","addAutoIdStaticUserMapping","process","exitCode","parse"],"sources":["cli/admin/admin-add-autoid-static-user-mapping.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { frodo } from '@rockcarver/frodo-lib';\nimport { printMessage } from '../../utils/Console.js';\n\nconst program = new FrodoCommand('frodo admin add-autoid-static-user-mapping');\n\nprogram\n .description(\n 'Add AutoId static user mapping to enable dashboards and other AutoId-based functionality.'\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n printMessage(`Adding AutoId static user mapping...`);\n await frodo.admin.addAutoIdStaticUserMapping();\n printMessage('Done.');\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,YAAY,QAAQ,wBAAwB;AAErD,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,4CAA4C,CAAC;AAE9EG,OAAO,CACJC,WAAW,CACV,2FACF,CAAC,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMV,KAAK,CAACY,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjCZ,YAAY,CAAE,sCAAqC,CAAC;IACpD,MAAMD,KAAK,CAACc,KAAK,CAACC,0BAA0B,CAAC,CAAC;IAC9Cd,YAAY,CAAC,OAAO,CAAC;EACvB,CAAC,MAAM;IACLe,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHf,OAAO,CAACgB,KAAK,CAAC,CAAC"}
|
|
@@ -2,21 +2,14 @@ import { FrodoCommand } from '../FrodoCommand';
|
|
|
2
2
|
import { Option } from 'commander';
|
|
3
3
|
import { v4 as uuidv4 } from 'uuid';
|
|
4
4
|
import Table from 'cli-table3';
|
|
5
|
-
import {
|
|
5
|
+
import { frodo, state } from '@rockcarver/frodo-lib';
|
|
6
6
|
import { printMessage } from '../../utils/Console.js';
|
|
7
|
-
const {
|
|
8
|
-
getTokens
|
|
9
|
-
} = Authenticate;
|
|
10
|
-
const {
|
|
11
|
-
createLongLivedToken,
|
|
12
|
-
createOAuth2ClientWithAdminPrivileges
|
|
13
|
-
} = Admin;
|
|
14
7
|
const program = new FrodoCommand('frodo admin create-oauth2-client-with-admin-privileges');
|
|
15
8
|
program.description('Create an oauth2 client with admin privileges.').addOption(new Option('--client-id [id]', 'Client id.')).addOption(new Option('--client-secret [secret]', 'Client secret.')).addOption(new Option('--llt', 'Create a long-lived token and store it in a secret. The default secret name is esv-admin-token and the default token lifetime is 315,360,000 seconds (10 years). Both can be overwritten with the --llt-esv and --llt-ttl options.')).addOption(new Option('--llt-scope [scope]', 'Request the following scope(s). This option only applies if used with the --llt option.').default('fr:idm:*', 'fr:idm:*')).addOption(new Option('--llt-esv [esv]', 'Name of the secret to store the token in. This option only applies if used with the --llt option.').default('esv-admin-token', 'esv-admin-token')).addOption(new Option('--no-llt-esv', "Don't store the token in a secret and output to console instead. This option only applies if used with the --llt option.")).addOption(new Option('--llt-ttl [ttl]', 'Token lifetime (seconds). This option only applies if used with the --llt option.').default(315360000, '315,360,000 seconds (10 years)')).action(
|
|
16
9
|
// implement command logic inside action handler
|
|
17
10
|
async (host, realm, user, password, options, command) => {
|
|
18
11
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
19
|
-
if (await getTokens()) {
|
|
12
|
+
if (await frodo.login.getTokens()) {
|
|
20
13
|
printMessage(`Creating oauth2 client with admin privileges in realm "${state.getRealm()}"...`);
|
|
21
14
|
let clientId = uuidv4();
|
|
22
15
|
let clientSecret = uuidv4();
|
|
@@ -27,7 +20,7 @@ async (host, realm, user, password, options, command) => {
|
|
|
27
20
|
clientSecret = options.clientSecret;
|
|
28
21
|
}
|
|
29
22
|
try {
|
|
30
|
-
await createOAuth2ClientWithAdminPrivileges(clientId, clientSecret);
|
|
23
|
+
await frodo.admin.createOAuth2ClientWithAdminPrivileges(clientId, clientSecret);
|
|
31
24
|
} catch (error) {
|
|
32
25
|
printMessage(error, 'error');
|
|
33
26
|
process.exitCode = 1;
|
|
@@ -59,7 +52,7 @@ async (host, realm, user, password, options, command) => {
|
|
|
59
52
|
table.push(['Client Secret'['brightCyan'], clientSecret]);
|
|
60
53
|
if (options.llt) {
|
|
61
54
|
try {
|
|
62
|
-
const response = await createLongLivedToken(clientId, clientSecret, options.scope, options.lltEsv, options.lltTtl);
|
|
55
|
+
const response = await frodo.admin.createLongLivedToken(clientId, clientSecret, options.scope, options.lltEsv, options.lltTtl);
|
|
63
56
|
if (options.lltEsv) table.push(['Secret Name'['brightCyan'], response.secret]);
|
|
64
57
|
table.push(['Scope'['brightCyan'], response.scope]);
|
|
65
58
|
table.push(['Expires'['brightCyan'], response.expires_on]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-create-oauth2-client-with-admin-privileges.js","names":["FrodoCommand","Option","v4","uuidv4","Table","
|
|
1
|
+
{"version":3,"file":"admin-create-oauth2-client-with-admin-privileges.js","names":["FrodoCommand","Option","v4","uuidv4","Table","frodo","state","printMessage","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","getRealm","clientId","clientSecret","admin","createOAuth2ClientWithAdminPrivileges","error","process","exitCode","table","chars","top","bottom","left","mid","right","style","wordWrap","push","llt","response","createLongLivedToken","scope","lltEsv","lltTtl","secret","expires_on","toString","access_token","parse"],"sources":["cli/admin/admin-create-oauth2-client-with-admin-privileges.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { v4 as uuidv4 } from 'uuid';\nimport Table from 'cli-table3';\nimport { frodo, state } from '@rockcarver/frodo-lib';\nimport { printMessage } from '../../utils/Console.js';\n\nconst program = new FrodoCommand(\n 'frodo admin create-oauth2-client-with-admin-privileges'\n);\n\nprogram\n .description('Create an oauth2 client with admin privileges.')\n .addOption(new Option('--client-id [id]', 'Client id.'))\n .addOption(new Option('--client-secret [secret]', 'Client secret.'))\n .addOption(\n new Option(\n '--llt',\n 'Create a long-lived token and store it in a secret. The default secret name is esv-admin-token and the default token lifetime is 315,360,000 seconds (10 years). Both can be overwritten with the --llt-esv and --llt-ttl options.'\n )\n )\n .addOption(\n new Option(\n '--llt-scope [scope]',\n 'Request the following scope(s). This option only applies if used with the --llt option.'\n ).default('fr:idm:*', 'fr:idm:*')\n )\n .addOption(\n new Option(\n '--llt-esv [esv]',\n 'Name of the secret to store the token in. This option only applies if used with the --llt option.'\n ).default('esv-admin-token', 'esv-admin-token')\n )\n .addOption(\n new Option(\n '--no-llt-esv',\n \"Don't store the token in a secret and output to console instead. This option only applies if used with the --llt option.\"\n )\n )\n .addOption(\n new Option(\n '--llt-ttl [ttl]',\n 'Token lifetime (seconds). This option only applies if used with the --llt option.'\n ).default(315360000, '315,360,000 seconds (10 years)')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n printMessage(\n `Creating oauth2 client with admin privileges in realm \"${state.getRealm()}\"...`\n );\n let clientId = uuidv4();\n let clientSecret = uuidv4();\n if (options.clientId) {\n clientId = options.clientId;\n }\n if (options.clientSecret) {\n clientSecret = options.clientSecret;\n }\n try {\n await frodo.admin.createOAuth2ClientWithAdminPrivileges(\n clientId,\n clientSecret\n );\n } catch (error) {\n printMessage(error, 'error');\n process.exitCode = 1;\n }\n const table = new Table({\n chars: {\n top: '',\n 'top-mid': '',\n 'top-left': '',\n 'top-right': '',\n bottom: '',\n 'bottom-mid': '',\n 'bottom-left': '',\n 'bottom-right': '',\n left: '',\n 'left-mid': '',\n mid: '',\n 'mid-mid': '',\n right: '',\n 'right-mid': '',\n },\n style: { 'padding-left': 0, 'padding-right': 0 },\n wordWrap: true,\n });\n table.push(['Client ID'['brightCyan'], clientId]);\n table.push(['Client Secret'['brightCyan'], clientSecret]);\n if (options.llt) {\n try {\n const response = await frodo.admin.createLongLivedToken(\n clientId,\n clientSecret,\n options.scope,\n options.lltEsv,\n options.lltTtl\n );\n if (options.lltEsv)\n table.push(['Secret Name'['brightCyan'], response.secret]);\n table.push(['Scope'['brightCyan'], response.scope]);\n table.push(['Expires'['brightCyan'], response.expires_on]);\n printMessage(table.toString());\n if (options.lltEsv === false) {\n printMessage(`\\nBearer token:`, 'info');\n printMessage(`${response.access_token}`, 'data');\n }\n } catch (error) {\n printMessage(error, 'error');\n process.exitCode = 1;\n }\n } else {\n printMessage(table.toString());\n }\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"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"}
|
|
@@ -1,21 +1,15 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
2
|
import { Option } from 'commander';
|
|
3
|
-
import {
|
|
3
|
+
import { frodo, state } from '@rockcarver/frodo-lib';
|
|
4
4
|
import { printMessage } from '../../utils/Console.js';
|
|
5
|
-
const {
|
|
6
|
-
clientCredentialsGrant
|
|
7
|
-
} = OAuth2OIDCApi;
|
|
8
|
-
const {
|
|
9
|
-
getTokens
|
|
10
|
-
} = Authenticate;
|
|
11
5
|
const program = new FrodoCommand('frodo admin get-access-token');
|
|
12
6
|
program.description('Get an access token using client credentials grant type.').addOption(new Option('--client-id [id]', 'Client id.').makeOptionMandatory()).addOption(new Option('--client-secret [secret]', 'Client secret.').makeOptionMandatory()).addOption(new Option('--scope [scope]', 'Request the following scope(s).').default('fr:idm:*', 'fr:idm:*')).action(
|
|
13
7
|
// implement command logic inside action handler
|
|
14
8
|
async (host, realm, user, password, options, command) => {
|
|
15
9
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
16
|
-
if (await getTokens()) {
|
|
10
|
+
if (await frodo.login.getTokens()) {
|
|
17
11
|
printMessage(`Getting an access token using client "${options.clientId}"...`);
|
|
18
|
-
const response = (await clientCredentialsGrant(options.clientId, options.clientSecret, options.scope)).data;
|
|
12
|
+
const response = (await frodo.oauth2oidc.endpoint.clientCredentialsGrant(state.getHost(), options.clientId, options.clientSecret, options.scope)).data;
|
|
19
13
|
printMessage(`Token: ${response.access_token}`);
|
|
20
14
|
} else {
|
|
21
15
|
process.exitCode = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-get-access-token.js","names":["FrodoCommand","Option","
|
|
1
|
+
{"version":3,"file":"admin-get-access-token.js","names":["FrodoCommand","Option","frodo","state","printMessage","program","description","addOption","makeOptionMandatory","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","clientId","response","oauth2oidc","endpoint","clientCredentialsGrant","getHost","clientSecret","scope","data","access_token","process","exitCode","parse"],"sources":["cli/admin/admin-get-access-token.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo, state } from '@rockcarver/frodo-lib';\nimport { printMessage } from '../../utils/Console.js';\n\nconst program = new FrodoCommand('frodo admin get-access-token');\n\nprogram\n .description('Get an access token using client credentials grant type.')\n .addOption(new Option('--client-id [id]', 'Client id.').makeOptionMandatory())\n .addOption(\n new Option(\n '--client-secret [secret]',\n 'Client secret.'\n ).makeOptionMandatory()\n )\n .addOption(\n new Option('--scope [scope]', 'Request the following scope(s).').default(\n 'fr:idm:*',\n 'fr:idm:*'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n printMessage(\n `Getting an access token using client \"${options.clientId}\"...`\n );\n const response = (\n await frodo.oauth2oidc.endpoint.clientCredentialsGrant(\n state.getHost(),\n options.clientId,\n options.clientSecret,\n options.scope\n )\n ).data;\n printMessage(`Token: ${response.access_token}`);\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,EAAEC,KAAK,QAAQ,uBAAuB;AACpD,SAASC,YAAY,QAAQ,wBAAwB;AAErD,MAAMC,OAAO,GAAG,IAAIL,YAAY,CAAC,8BAA8B,CAAC;AAEhEK,OAAO,CACJC,WAAW,CAAC,0DAA0D,CAAC,CACvEC,SAAS,CAAC,IAAIN,MAAM,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAACO,mBAAmB,CAAC,CAAC,CAAC,CAC7ED,SAAS,CACR,IAAIN,MAAM,CACR,0BAA0B,EAC1B,gBACF,CAAC,CAACO,mBAAmB,CAAC,CACxB,CAAC,CACAD,SAAS,CACR,IAAIN,MAAM,CAAC,iBAAiB,EAAE,iCAAiC,CAAC,CAACQ,OAAO,CACtE,UAAU,EACV,UACF,CACF,CAAC,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMd,KAAK,CAACgB,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjCf,YAAY,CACT,yCAAwCW,OAAO,CAACK,QAAS,MAC5D,CAAC;IACD,MAAMC,QAAQ,GAAG,CACf,MAAMnB,KAAK,CAACoB,UAAU,CAACC,QAAQ,CAACC,sBAAsB,CACpDrB,KAAK,CAACsB,OAAO,CAAC,CAAC,EACfV,OAAO,CAACK,QAAQ,EAChBL,OAAO,CAACW,YAAY,EACpBX,OAAO,CAACY,KACV,CAAC,EACDC,IAAI;IACNxB,YAAY,CAAE,UAASiB,QAAQ,CAACQ,YAAa,EAAC,CAAC;EACjD,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEH1B,OAAO,CAAC2B,KAAK,CAAC,CAAC"}
|
|
@@ -1,21 +1,15 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
2
|
import { Option } from 'commander';
|
|
3
|
-
import {
|
|
3
|
+
import { frodo, state } from '@rockcarver/frodo-lib';
|
|
4
4
|
import { printMessage } from '../../utils/Console.js';
|
|
5
|
-
const {
|
|
6
|
-
getTokens
|
|
7
|
-
} = Authenticate;
|
|
8
|
-
const {
|
|
9
|
-
grantOAuth2ClientAdminPrivileges
|
|
10
|
-
} = Admin;
|
|
11
5
|
const program = new FrodoCommand('frodo admin grant-oauth2-client-admin-privileges');
|
|
12
6
|
program.description('Grant an oauth2 client admin privileges.').addOption(new Option('-t, --target <target name or id>', 'Name of the oauth2 client.')).action(
|
|
13
7
|
// implement command logic inside action handler
|
|
14
8
|
async (host, realm, user, password, options, command) => {
|
|
15
9
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
16
|
-
if (await getTokens()) {
|
|
10
|
+
if (await frodo.login.getTokens()) {
|
|
17
11
|
printMessage(`Granting oauth2 client "${options.target}" in realm "${state.getRealm()}" admin privileges...`);
|
|
18
|
-
await grantOAuth2ClientAdminPrivileges(options.target);
|
|
12
|
+
await frodo.admin.grantOAuth2ClientAdminPrivileges(options.target);
|
|
19
13
|
printMessage('Done.');
|
|
20
14
|
} else {
|
|
21
15
|
process.exitCode = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-grant-oauth2-client-admin-privileges.js","names":["FrodoCommand","Option","
|
|
1
|
+
{"version":3,"file":"admin-grant-oauth2-client-admin-privileges.js","names":["FrodoCommand","Option","frodo","state","printMessage","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","target","getRealm","admin","grantOAuth2ClientAdminPrivileges","process","exitCode","parse"],"sources":["cli/admin/admin-grant-oauth2-client-admin-privileges.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo, state } from '@rockcarver/frodo-lib';\nimport { printMessage } from '../../utils/Console.js';\n\nconst program = new FrodoCommand(\n 'frodo admin grant-oauth2-client-admin-privileges'\n);\n\nprogram\n .description('Grant an oauth2 client admin privileges.')\n .addOption(\n new Option('-t, --target <target name or id>', 'Name of the oauth2 client.')\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n printMessage(\n `Granting oauth2 client \"${\n options.target\n }\" in realm \"${state.getRealm()}\" admin privileges...`\n );\n await frodo.admin.grantOAuth2ClientAdminPrivileges(options.target);\n printMessage('Done.');\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,EAAEC,KAAK,QAAQ,uBAAuB;AACpD,SAASC,YAAY,QAAQ,wBAAwB;AAErD,MAAMC,OAAO,GAAG,IAAIL,YAAY,CAC9B,kDACF,CAAC;AAEDK,OAAO,CACJC,WAAW,CAAC,0CAA0C,CAAC,CACvDC,SAAS,CACR,IAAIN,MAAM,CAAC,kCAAkC,EAAE,4BAA4B,CAC7E,CAAC,CACAO,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMZ,KAAK,CAACc,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjCb,YAAY,CACT,2BACCS,OAAO,CAACK,MACT,eAAcf,KAAK,CAACgB,QAAQ,CAAC,CAAE,uBAClC,CAAC;IACD,MAAMjB,KAAK,CAACkB,KAAK,CAACC,gCAAgC,CAACR,OAAO,CAACK,MAAM,CAAC;IAClEd,YAAY,CAAC,OAAO,CAAC;EACvB,CAAC,MAAM;IACLkB,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHlB,OAAO,CAACmB,KAAK,CAAC,CAAC"}
|
|
@@ -1,21 +1,15 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
2
|
import { Option } from 'commander';
|
|
3
|
-
import {
|
|
3
|
+
import { frodo, state } from '@rockcarver/frodo-lib';
|
|
4
4
|
import { printMessage } from '../../utils/Console.js';
|
|
5
|
-
const {
|
|
6
|
-
getTokens
|
|
7
|
-
} = Authenticate;
|
|
8
|
-
const {
|
|
9
|
-
hideGenericExtensionAttributes
|
|
10
|
-
} = Admin;
|
|
11
5
|
const program = new FrodoCommand('frodo admin hide-generic-extension-attributes');
|
|
12
6
|
program.description('Hide generic extension attributes.').addOption(new Option('--include-customized', 'Include customized attributes.')).addOption(new Option('--dry-run', 'Dry-run only, do not perform changes.')).action(
|
|
13
7
|
// implement command logic inside action handler
|
|
14
8
|
async (host, realm, user, password, options, command) => {
|
|
15
9
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
16
|
-
if (await getTokens()) {
|
|
10
|
+
if (await frodo.login.getTokens()) {
|
|
17
11
|
printMessage(`Hiding generic extension attributes in realm "${state.getRealm()}"...`);
|
|
18
|
-
await hideGenericExtensionAttributes(options.includeCustomized, options.dryRun);
|
|
12
|
+
await frodo.admin.hideGenericExtensionAttributes(options.includeCustomized, options.dryRun);
|
|
19
13
|
printMessage('Done.');
|
|
20
14
|
} else {
|
|
21
15
|
process.exitCode = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-hide-generic-extension-attributes.js","names":["FrodoCommand","Option","
|
|
1
|
+
{"version":3,"file":"admin-hide-generic-extension-attributes.js","names":["FrodoCommand","Option","frodo","state","printMessage","program","description","addOption","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","getRealm","admin","hideGenericExtensionAttributes","includeCustomized","dryRun","process","exitCode","parse"],"sources":["cli/admin/admin-hide-generic-extension-attributes.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo, state } from '@rockcarver/frodo-lib';\nimport { printMessage } from '../../utils/Console.js';\n\nconst program = new FrodoCommand(\n 'frodo admin hide-generic-extension-attributes'\n);\n\nprogram\n .description('Hide generic extension attributes.')\n .addOption(\n new Option('--include-customized', 'Include customized attributes.')\n )\n .addOption(new Option('--dry-run', 'Dry-run only, do not perform changes.'))\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n printMessage(\n `Hiding generic extension attributes in realm \"${state.getRealm()}\"...`\n );\n await frodo.admin.hideGenericExtensionAttributes(\n options.includeCustomized,\n options.dryRun\n );\n printMessage('Done.');\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,EAAEC,KAAK,QAAQ,uBAAuB;AACpD,SAASC,YAAY,QAAQ,wBAAwB;AAErD,MAAMC,OAAO,GAAG,IAAIL,YAAY,CAC9B,+CACF,CAAC;AAEDK,OAAO,CACJC,WAAW,CAAC,oCAAoC,CAAC,CACjDC,SAAS,CACR,IAAIN,MAAM,CAAC,sBAAsB,EAAE,gCAAgC,CACrE,CAAC,CACAM,SAAS,CAAC,IAAIN,MAAM,CAAC,WAAW,EAAE,uCAAuC,CAAC,CAAC,CAC3EO,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMZ,KAAK,CAACc,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjCb,YAAY,CACT,iDAAgDD,KAAK,CAACe,QAAQ,CAAC,CAAE,MACpE,CAAC;IACD,MAAMhB,KAAK,CAACiB,KAAK,CAACC,8BAA8B,CAC9CP,OAAO,CAACQ,iBAAiB,EACzBR,OAAO,CAACS,MACV,CAAC;IACDlB,YAAY,CAAC,OAAO,CAAC;EACvB,CAAC,MAAM;IACLmB,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHnB,OAAO,CAACoB,KAAK,CAAC,CAAC"}
|
|
@@ -1,20 +1,14 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
|
-
import {
|
|
2
|
+
import { frodo, state } from '@rockcarver/frodo-lib';
|
|
3
3
|
import { printMessage } from '../../utils/Console.js';
|
|
4
|
-
const {
|
|
5
|
-
listOAuth2AdminClients
|
|
6
|
-
} = Admin;
|
|
7
|
-
const {
|
|
8
|
-
getTokens
|
|
9
|
-
} = Authenticate;
|
|
10
4
|
const program = new FrodoCommand('frodo admin list-oauth2-clients-with-admin-privileges');
|
|
11
5
|
program.description('List oauth2 clients with admin privileges.').action(
|
|
12
6
|
// implement command logic inside action handler
|
|
13
7
|
async (host, realm, user, password, options, command) => {
|
|
14
8
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
15
|
-
if (await getTokens()) {
|
|
9
|
+
if (await frodo.login.getTokens()) {
|
|
16
10
|
printMessage(`Listing oauth2 clients with admin privileges in realm "${state.getRealm()}"...`);
|
|
17
|
-
const adminClients = await listOAuth2AdminClients();
|
|
11
|
+
const adminClients = await frodo.admin.listOAuth2AdminClients();
|
|
18
12
|
adminClients.sort((a, b) => a.localeCompare(b));
|
|
19
13
|
adminClients.forEach(item => {
|
|
20
14
|
printMessage(`${item}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-list-oauth2-clients-with-admin-privileges.js","names":["FrodoCommand","
|
|
1
|
+
{"version":3,"file":"admin-list-oauth2-clients-with-admin-privileges.js","names":["FrodoCommand","frodo","state","printMessage","program","description","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","getRealm","adminClients","admin","listOAuth2AdminClients","sort","a","b","localeCompare","forEach","item","process","exitCode","parse"],"sources":["cli/admin/admin-list-oauth2-clients-with-admin-privileges.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { frodo, state } from '@rockcarver/frodo-lib';\nimport { printMessage } from '../../utils/Console.js';\n\nconst program = new FrodoCommand(\n 'frodo admin list-oauth2-clients-with-admin-privileges'\n);\n\nprogram.description('List oauth2 clients with admin privileges.').action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n printMessage(\n `Listing oauth2 clients with admin privileges in realm \"${state.getRealm()}\"...`\n );\n const adminClients = await frodo.admin.listOAuth2AdminClients();\n adminClients.sort((a, b) => a.localeCompare(b));\n adminClients.forEach((item) => {\n printMessage(`${item}`);\n });\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n);\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,KAAK,EAAEC,KAAK,QAAQ,uBAAuB;AACpD,SAASC,YAAY,QAAQ,wBAAwB;AAErD,MAAMC,OAAO,GAAG,IAAIJ,YAAY,CAC9B,uDACF,CAAC;AAEDI,OAAO,CAACC,WAAW,CAAC,4CAA4C,CAAC,CAACC,MAAM;AACtE;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMX,KAAK,CAACa,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjCZ,YAAY,CACT,0DAAyDD,KAAK,CAACc,QAAQ,CAAC,CAAE,MAC7E,CAAC;IACD,MAAMC,YAAY,GAAG,MAAMhB,KAAK,CAACiB,KAAK,CAACC,sBAAsB,CAAC,CAAC;IAC/DF,YAAY,CAACG,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACE,aAAa,CAACD,CAAC,CAAC,CAAC;IAC/CL,YAAY,CAACO,OAAO,CAAEC,IAAI,IAAK;MAC7BtB,YAAY,CAAE,GAAEsB,IAAK,EAAC,CAAC;IACzB,CAAC,CAAC;EACJ,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEDvB,OAAO,CAACwB,KAAK,CAAC,CAAC"}
|
|
@@ -1,20 +1,14 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
|
-
import {
|
|
2
|
+
import { frodo, state } from '@rockcarver/frodo-lib';
|
|
3
3
|
import { printMessage } from '../../utils/Console.js';
|
|
4
|
-
const {
|
|
5
|
-
listOAuth2CustomClients
|
|
6
|
-
} = Admin;
|
|
7
|
-
const {
|
|
8
|
-
getTokens
|
|
9
|
-
} = Authenticate;
|
|
10
4
|
const program = new FrodoCommand('frodo admin list-oauth2-clients-with-custom-privileges');
|
|
11
5
|
program.description('List oauth2 clients with custom privileges.').action(
|
|
12
6
|
// implement command logic inside action handler
|
|
13
7
|
async (host, realm, user, password, options, command) => {
|
|
14
8
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
15
|
-
if (await getTokens()) {
|
|
9
|
+
if (await frodo.login.getTokens()) {
|
|
16
10
|
printMessage(`Listing oauth2 clients with custom privileges in realm "${state.getRealm()}"...`);
|
|
17
|
-
const adminClients = await listOAuth2CustomClients();
|
|
11
|
+
const adminClients = await frodo.admin.listOAuth2CustomClients();
|
|
18
12
|
adminClients.sort((a, b) => a.localeCompare(b));
|
|
19
13
|
adminClients.forEach(item => {
|
|
20
14
|
printMessage(`${item}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-list-oauth2-clients-with-custom-privileges.js","names":["FrodoCommand","
|
|
1
|
+
{"version":3,"file":"admin-list-oauth2-clients-with-custom-privileges.js","names":["FrodoCommand","frodo","state","printMessage","program","description","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","getRealm","adminClients","admin","listOAuth2CustomClients","sort","a","b","localeCompare","forEach","item","process","exitCode","parse"],"sources":["cli/admin/admin-list-oauth2-clients-with-custom-privileges.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { frodo, state } from '@rockcarver/frodo-lib';\nimport { printMessage } from '../../utils/Console.js';\n\nconst program = new FrodoCommand(\n 'frodo admin list-oauth2-clients-with-custom-privileges'\n);\n\nprogram.description('List oauth2 clients with custom privileges.').action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n printMessage(\n `Listing oauth2 clients with custom privileges in realm \"${state.getRealm()}\"...`\n );\n const adminClients = await frodo.admin.listOAuth2CustomClients();\n adminClients.sort((a, b) => a.localeCompare(b));\n adminClients.forEach((item) => {\n printMessage(`${item}`);\n });\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n);\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,KAAK,EAAEC,KAAK,QAAQ,uBAAuB;AACpD,SAASC,YAAY,QAAQ,wBAAwB;AAErD,MAAMC,OAAO,GAAG,IAAIJ,YAAY,CAC9B,wDACF,CAAC;AAEDI,OAAO,CAACC,WAAW,CAAC,6CAA6C,CAAC,CAACC,MAAM;AACvE;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMX,KAAK,CAACa,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjCZ,YAAY,CACT,2DAA0DD,KAAK,CAACc,QAAQ,CAAC,CAAE,MAC9E,CAAC;IACD,MAAMC,YAAY,GAAG,MAAMhB,KAAK,CAACiB,KAAK,CAACC,uBAAuB,CAAC,CAAC;IAChEF,YAAY,CAACG,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACE,aAAa,CAACD,CAAC,CAAC,CAAC;IAC/CL,YAAY,CAACO,OAAO,CAAEC,IAAI,IAAK;MAC7BtB,YAAY,CAAE,GAAEsB,IAAK,EAAC,CAAC;IACzB,CAAC,CAAC;EACJ,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEDvB,OAAO,CAACwB,KAAK,CAAC,CAAC"}
|
|
@@ -1,21 +1,15 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
2
|
import { Option } from 'commander';
|
|
3
|
-
import {
|
|
3
|
+
import { frodo } from '@rockcarver/frodo-lib';
|
|
4
4
|
import { printMessage } from '../../utils/Console.js';
|
|
5
|
-
const {
|
|
6
|
-
getTokens
|
|
7
|
-
} = Authenticate;
|
|
8
|
-
const {
|
|
9
|
-
listNonOAuth2AdminStaticUserMappings
|
|
10
|
-
} = Admin;
|
|
11
5
|
const program = new FrodoCommand('frodo admin list-static-user-mappings');
|
|
12
6
|
program.description('List all subjects of static user mappings that are not oauth2 clients.').addOption(new Option('--show-protected', 'Show protected (system) subjects.').default(false, 'false')).action(
|
|
13
7
|
// implement command logic inside action handler
|
|
14
8
|
async (host, realm, user, password, options, command) => {
|
|
15
9
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
16
|
-
if (await getTokens()) {
|
|
10
|
+
if (await frodo.login.getTokens()) {
|
|
17
11
|
printMessage('Listing all non-oauth2 client subjects of static user mappings...');
|
|
18
|
-
const subjects = await listNonOAuth2AdminStaticUserMappings(options.showProtected);
|
|
12
|
+
const subjects = await frodo.admin.listNonOAuth2AdminStaticUserMappings(options.showProtected);
|
|
19
13
|
subjects.sort((a, b) => a.localeCompare(b));
|
|
20
14
|
subjects.forEach(item => {
|
|
21
15
|
printMessage(`${item}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-list-static-user-mappings.js","names":["FrodoCommand","Option","
|
|
1
|
+
{"version":3,"file":"admin-list-static-user-mappings.js","names":["FrodoCommand","Option","frodo","printMessage","program","description","addOption","default","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","subjects","admin","listNonOAuth2AdminStaticUserMappings","showProtected","sort","a","b","localeCompare","forEach","item","process","exitCode","parse"],"sources":["cli/admin/admin-list-static-user-mappings.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { Option } from 'commander';\nimport { frodo } from '@rockcarver/frodo-lib';\nimport { printMessage } from '../../utils/Console.js';\n\nconst program = new FrodoCommand('frodo admin list-static-user-mappings');\n\nprogram\n .description(\n 'List all subjects of static user mappings that are not oauth2 clients.'\n )\n .addOption(\n new Option('--show-protected', 'Show protected (system) subjects.').default(\n false,\n 'false'\n )\n )\n .action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n printMessage(\n 'Listing all non-oauth2 client subjects of static user mappings...'\n );\n const subjects = await frodo.admin.listNonOAuth2AdminStaticUserMappings(\n options.showProtected\n );\n subjects.sort((a, b) => a.localeCompare(b));\n subjects.forEach((item) => {\n printMessage(`${item}`);\n });\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n );\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,MAAM,QAAQ,WAAW;AAClC,SAASC,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,YAAY,QAAQ,wBAAwB;AAErD,MAAMC,OAAO,GAAG,IAAIJ,YAAY,CAAC,uCAAuC,CAAC;AAEzEI,OAAO,CACJC,WAAW,CACV,wEACF,CAAC,CACAC,SAAS,CACR,IAAIL,MAAM,CAAC,kBAAkB,EAAE,mCAAmC,CAAC,CAACM,OAAO,CACzE,KAAK,EACL,OACF,CACF,CAAC,CACAC,MAAM;AACL;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMZ,KAAK,CAACc,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjCd,YAAY,CACV,mEACF,CAAC;IACD,MAAMe,QAAQ,GAAG,MAAMhB,KAAK,CAACiB,KAAK,CAACC,oCAAoC,CACrEP,OAAO,CAACQ,aACV,CAAC;IACDH,QAAQ,CAACI,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACE,aAAa,CAACD,CAAC,CAAC,CAAC;IAC3CN,QAAQ,CAACQ,OAAO,CAAEC,IAAI,IAAK;MACzBxB,YAAY,CAAE,GAAEwB,IAAK,EAAC,CAAC;IACzB,CAAC,CAAC;EACJ,CAAC,MAAM;IACLC,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEHzB,OAAO,CAAC0B,KAAK,CAAC,CAAC"}
|
|
@@ -1,20 +1,14 @@
|
|
|
1
1
|
import { FrodoCommand } from '../FrodoCommand';
|
|
2
|
-
import {
|
|
2
|
+
import { frodo } from '@rockcarver/frodo-lib';
|
|
3
3
|
import { printMessage } from '../../utils/Console.js';
|
|
4
|
-
const {
|
|
5
|
-
getTokens
|
|
6
|
-
} = Authenticate;
|
|
7
|
-
const {
|
|
8
|
-
removeStaticUserMapping
|
|
9
|
-
} = Admin;
|
|
10
4
|
const program = new FrodoCommand('frodo admin remove-static-user-mapping');
|
|
11
5
|
program.description("Remove a subject's static user mapping.").action(
|
|
12
6
|
// implement command logic inside action handler
|
|
13
7
|
async (host, realm, user, password, options, command) => {
|
|
14
8
|
command.handleDefaultArgsAndOpts(host, realm, user, password, options, command);
|
|
15
|
-
if (await getTokens()) {
|
|
9
|
+
if (await frodo.login.getTokens()) {
|
|
16
10
|
printMessage("Removing a subject's static user mapping...");
|
|
17
|
-
await removeStaticUserMapping(options.subject);
|
|
11
|
+
await frodo.admin.removeStaticUserMapping(options.subject);
|
|
18
12
|
printMessage('Done.');
|
|
19
13
|
} else {
|
|
20
14
|
process.exitCode = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin-remove-static-user-mapping.js","names":["FrodoCommand","
|
|
1
|
+
{"version":3,"file":"admin-remove-static-user-mapping.js","names":["FrodoCommand","frodo","printMessage","program","description","action","host","realm","user","password","options","command","handleDefaultArgsAndOpts","login","getTokens","admin","removeStaticUserMapping","subject","process","exitCode","parse"],"sources":["cli/admin/admin-remove-static-user-mapping.ts"],"sourcesContent":["import { FrodoCommand } from '../FrodoCommand';\nimport { frodo } from '@rockcarver/frodo-lib';\nimport { printMessage } from '../../utils/Console.js';\n\nconst program = new FrodoCommand('frodo admin remove-static-user-mapping');\n\nprogram.description(\"Remove a subject's static user mapping.\").action(\n // implement command logic inside action handler\n async (host, realm, user, password, options, command) => {\n command.handleDefaultArgsAndOpts(\n host,\n realm,\n user,\n password,\n options,\n command\n );\n if (await frodo.login.getTokens()) {\n printMessage(\"Removing a subject's static user mapping...\");\n await frodo.admin.removeStaticUserMapping(options.subject);\n printMessage('Done.');\n } else {\n process.exitCode = 1;\n }\n }\n // end command logic inside action handler\n);\n\nprogram.parse();\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAC9C,SAASC,KAAK,QAAQ,uBAAuB;AAC7C,SAASC,YAAY,QAAQ,wBAAwB;AAErD,MAAMC,OAAO,GAAG,IAAIH,YAAY,CAAC,wCAAwC,CAAC;AAE1EG,OAAO,CAACC,WAAW,CAAC,yCAAyC,CAAC,CAACC,MAAM;AACnE;AACA,OAAOC,IAAI,EAAEC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,OAAO,EAAEC,OAAO,KAAK;EACvDA,OAAO,CAACC,wBAAwB,CAC9BN,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,OAAO,EACPC,OACF,CAAC;EACD,IAAI,MAAMV,KAAK,CAACY,KAAK,CAACC,SAAS,CAAC,CAAC,EAAE;IACjCZ,YAAY,CAAC,6CAA6C,CAAC;IAC3D,MAAMD,KAAK,CAACc,KAAK,CAACC,uBAAuB,CAACN,OAAO,CAACO,OAAO,CAAC;IAC1Df,YAAY,CAAC,OAAO,CAAC;EACvB,CAAC,MAAM;IACLgB,OAAO,CAACC,QAAQ,GAAG,CAAC;EACtB;AACF;AACA;AACF,CAAC;;AAEDhB,OAAO,CAACiB,KAAK,CAAC,CAAC"}
|