@contember/cli 2.1.0-rc.3 → 2.2.0-alpha.10
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/CLAUDE.md +35 -28
- package/dist/development/index.cjs +5 -0
- package/dist/development/index.cjs.map +1 -0
- package/dist/development/index.js +5 -0
- package/dist/development/index.js.map +1 -0
- package/dist/development/run.cjs +14 -6
- package/dist/development/run.cjs.map +1 -1
- package/dist/development/run.js +12 -4
- package/dist/development/run.js.map +1 -1
- package/dist/development/src/commands/actions/ActionsGetEventCommand.cjs +30 -15
- package/dist/development/src/commands/actions/ActionsGetEventCommand.cjs.map +1 -1
- package/dist/development/src/commands/actions/ActionsGetEventCommand.js +31 -16
- package/dist/development/src/commands/actions/ActionsGetEventCommand.js.map +1 -1
- package/dist/development/src/commands/actions/ActionsListFailedEventsCommand.cjs +21 -41
- package/dist/development/src/commands/actions/ActionsListFailedEventsCommand.cjs.map +1 -1
- package/dist/development/src/commands/actions/ActionsListFailedEventsCommand.js +22 -42
- package/dist/development/src/commands/actions/ActionsListFailedEventsCommand.js.map +1 -1
- package/dist/development/src/commands/actions/ActionsListVariablesCommand.cjs +15 -13
- package/dist/development/src/commands/actions/ActionsListVariablesCommand.cjs.map +1 -1
- package/dist/development/src/commands/actions/ActionsListVariablesCommand.js +15 -13
- package/dist/development/src/commands/actions/ActionsListVariablesCommand.js.map +1 -1
- package/dist/development/src/commands/actions/ActionsRetryEventCommand.cjs +28 -16
- package/dist/development/src/commands/actions/ActionsRetryEventCommand.cjs.map +1 -1
- package/dist/development/src/commands/actions/ActionsRetryEventCommand.js +29 -17
- package/dist/development/src/commands/actions/ActionsRetryEventCommand.js.map +1 -1
- package/dist/development/src/commands/actions/ActionsSetVariablesCommand.cjs +51 -22
- package/dist/development/src/commands/actions/ActionsSetVariablesCommand.cjs.map +1 -1
- package/dist/development/src/commands/actions/ActionsSetVariablesCommand.js +52 -23
- package/dist/development/src/commands/actions/ActionsSetVariablesCommand.js.map +1 -1
- package/dist/development/src/commands/actions/ActionsStopEventCommand.cjs +28 -16
- package/dist/development/src/commands/actions/ActionsStopEventCommand.cjs.map +1 -1
- package/dist/development/src/commands/actions/ActionsStopEventCommand.js +29 -17
- package/dist/development/src/commands/actions/ActionsStopEventCommand.js.map +1 -1
- package/dist/development/src/commands/deploy/DeployCommand.cjs +58 -29
- package/dist/development/src/commands/deploy/DeployCommand.cjs.map +1 -1
- package/dist/development/src/commands/deploy/DeployCommand.js +59 -30
- package/dist/development/src/commands/deploy/DeployCommand.js.map +1 -1
- package/dist/development/src/commands/migrations/MigrationAmendCommand.cjs +88 -26
- package/dist/development/src/commands/migrations/MigrationAmendCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationAmendCommand.js +89 -27
- package/dist/development/src/commands/migrations/MigrationAmendCommand.js.map +1 -1
- package/dist/development/src/commands/migrations/MigrationBlankCommand.cjs +2 -2
- package/dist/development/src/commands/migrations/MigrationBlankCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationBlankCommand.js +2 -2
- package/dist/development/src/commands/migrations/MigrationBlankCommand.js.map +1 -1
- package/dist/development/src/commands/migrations/MigrationDescribeCommand.cjs +7 -3
- package/dist/development/src/commands/migrations/MigrationDescribeCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationDescribeCommand.js +8 -4
- package/dist/development/src/commands/migrations/MigrationDescribeCommand.js.map +1 -1
- package/dist/development/src/commands/migrations/MigrationDiffCommand.cjs +103 -19
- package/dist/development/src/commands/migrations/MigrationDiffCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationDiffCommand.js +104 -20
- package/dist/development/src/commands/migrations/MigrationDiffCommand.js.map +1 -1
- package/dist/development/src/commands/migrations/MigrationExecuteCommand.cjs +10 -3
- package/dist/development/src/commands/migrations/MigrationExecuteCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationExecuteCommand.js +10 -3
- package/dist/development/src/commands/migrations/MigrationExecuteCommand.js.map +1 -1
- package/dist/development/src/commands/migrations/MigrationInitStateCommand.cjs +33 -0
- package/dist/development/src/commands/migrations/MigrationInitStateCommand.cjs.map +1 -0
- package/dist/development/src/commands/migrations/MigrationInitStateCommand.js +33 -0
- package/dist/development/src/commands/migrations/MigrationInitStateCommand.js.map +1 -0
- package/dist/development/src/commands/migrations/MigrationRebaseCommand.cjs +24 -4
- package/dist/development/src/commands/migrations/MigrationRebaseCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationRebaseCommand.js +25 -5
- package/dist/development/src/commands/migrations/MigrationRebaseCommand.js.map +1 -1
- package/dist/development/src/commands/migrations/MigrationSnapshotCommand.cjs +59 -0
- package/dist/development/src/commands/migrations/MigrationSnapshotCommand.cjs.map +1 -0
- package/dist/development/src/commands/migrations/MigrationSnapshotCommand.js +59 -0
- package/dist/development/src/commands/migrations/MigrationSnapshotCommand.js.map +1 -0
- package/dist/development/src/commands/migrations/MigrationStatusCommand.cjs +5 -5
- package/dist/development/src/commands/migrations/MigrationStatusCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationStatusCommand.js +5 -5
- package/dist/development/src/commands/migrations/MigrationStatusCommand.js.map +1 -1
- package/dist/development/src/commands/migrations/MigrationVerifySnapshotCommand.cjs +22 -0
- package/dist/development/src/commands/migrations/MigrationVerifySnapshotCommand.cjs.map +1 -0
- package/dist/development/src/commands/migrations/MigrationVerifySnapshotCommand.js +22 -0
- package/dist/development/src/commands/migrations/MigrationVerifySnapshotCommand.js.map +1 -0
- package/dist/development/src/commands/misc/CommandsCommand.cjs +58 -0
- package/dist/development/src/commands/misc/CommandsCommand.cjs.map +1 -0
- package/dist/development/src/commands/misc/CommandsCommand.js +58 -0
- package/dist/development/src/commands/misc/CommandsCommand.js.map +1 -0
- package/dist/development/src/commands/misc/VersionCommand.cjs +2 -3
- package/dist/development/src/commands/misc/VersionCommand.cjs.map +1 -1
- package/dist/development/src/commands/misc/VersionCommand.js +2 -3
- package/dist/development/src/commands/misc/VersionCommand.js.map +1 -1
- package/dist/development/src/commands/project/ProjectGenerateDocumentationCommand.cjs +13 -13
- package/dist/development/src/commands/project/ProjectGenerateDocumentationCommand.cjs.map +1 -1
- package/dist/development/src/commands/project/ProjectGenerateDocumentationCommand.js +13 -13
- package/dist/development/src/commands/project/ProjectGenerateDocumentationCommand.js.map +1 -1
- package/dist/development/src/commands/project/ProjectPrintSchemaCommand.cjs +17 -15
- package/dist/development/src/commands/project/ProjectPrintSchemaCommand.cjs.map +1 -1
- package/dist/development/src/commands/project/ProjectPrintSchemaCommand.js +18 -16
- package/dist/development/src/commands/project/ProjectPrintSchemaCommand.js.map +1 -1
- package/dist/development/src/commands/project/ProjectValidateCommand.cjs +40 -12
- package/dist/development/src/commands/project/ProjectValidateCommand.cjs.map +1 -1
- package/dist/development/src/commands/project/ProjectValidateCommand.js +42 -14
- package/dist/development/src/commands/project/ProjectValidateCommand.js.map +1 -1
- package/dist/development/src/commands/tenant/TenantApplyCommand.cjs +59 -0
- package/dist/development/src/commands/tenant/TenantApplyCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/TenantApplyCommand.js +59 -0
- package/dist/development/src/commands/tenant/TenantApplyCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyCreateCommand.cjs +68 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyCreateCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyCreateCommand.js +68 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyCreateCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyDisableCommand.cjs +31 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyDisableCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyDisableCommand.js +31 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyDisableCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyListCommand.cjs +55 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyListCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyListCommand.js +55 -0
- package/dist/development/src/commands/tenant/apikey/TenantApiKeyListCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberAddCommand.cjs +36 -0
- package/dist/development/src/commands/tenant/member/TenantMemberAddCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberAddCommand.js +36 -0
- package/dist/development/src/commands/tenant/member/TenantMemberAddCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberInviteCommand.cjs +62 -0
- package/dist/development/src/commands/tenant/member/TenantMemberInviteCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberInviteCommand.js +62 -0
- package/dist/development/src/commands/tenant/member/TenantMemberInviteCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberInviteUnmanagedCommand.cjs +102 -0
- package/dist/development/src/commands/tenant/member/TenantMemberInviteUnmanagedCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberInviteUnmanagedCommand.js +102 -0
- package/dist/development/src/commands/tenant/member/TenantMemberInviteUnmanagedCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberListCommand.cjs +73 -0
- package/dist/development/src/commands/tenant/member/TenantMemberListCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberListCommand.js +73 -0
- package/dist/development/src/commands/tenant/member/TenantMemberListCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberRemoveCommand.cjs +35 -0
- package/dist/development/src/commands/tenant/member/TenantMemberRemoveCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberRemoveCommand.js +35 -0
- package/dist/development/src/commands/tenant/member/TenantMemberRemoveCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberUpdateCommand.cjs +45 -0
- package/dist/development/src/commands/tenant/member/TenantMemberUpdateCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/member/TenantMemberUpdateCommand.js +45 -0
- package/dist/development/src/commands/tenant/member/TenantMemberUpdateCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/member/memberOptions.cjs +16 -0
- package/dist/development/src/commands/tenant/member/memberOptions.cjs.map +1 -0
- package/dist/development/src/commands/tenant/member/memberOptions.js +16 -0
- package/dist/development/src/commands/tenant/member/memberOptions.js.map +1 -0
- package/dist/development/src/commands/tenant/member/membershipInput.cjs +109 -0
- package/dist/development/src/commands/tenant/member/membershipInput.cjs.map +1 -0
- package/dist/development/src/commands/tenant/member/membershipInput.js +109 -0
- package/dist/development/src/commands/tenant/member/membershipInput.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantIdentityRoleAddCommand.cjs +27 -0
- package/dist/development/src/commands/tenant/person/TenantIdentityRoleAddCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantIdentityRoleAddCommand.js +27 -0
- package/dist/development/src/commands/tenant/person/TenantIdentityRoleAddCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantIdentityRoleRemoveCommand.cjs +34 -0
- package/dist/development/src/commands/tenant/person/TenantIdentityRoleRemoveCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantIdentityRoleRemoveCommand.js +34 -0
- package/dist/development/src/commands/tenant/person/TenantIdentityRoleRemoveCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonCreateCommand.cjs +79 -0
- package/dist/development/src/commands/tenant/person/TenantPersonCreateCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonCreateCommand.js +79 -0
- package/dist/development/src/commands/tenant/person/TenantPersonCreateCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonDisableCommand.cjs +29 -0
- package/dist/development/src/commands/tenant/person/TenantPersonDisableCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonDisableCommand.js +29 -0
- package/dist/development/src/commands/tenant/person/TenantPersonDisableCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonListCommand.cjs +53 -0
- package/dist/development/src/commands/tenant/person/TenantPersonListCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonListCommand.js +53 -0
- package/dist/development/src/commands/tenant/person/TenantPersonListCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonResetMfaCommand.cjs +37 -0
- package/dist/development/src/commands/tenant/person/TenantPersonResetMfaCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonResetMfaCommand.js +37 -0
- package/dist/development/src/commands/tenant/person/TenantPersonResetMfaCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonResetPasswordRequestCommand.cjs +47 -0
- package/dist/development/src/commands/tenant/person/TenantPersonResetPasswordRequestCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonResetPasswordRequestCommand.js +47 -0
- package/dist/development/src/commands/tenant/person/TenantPersonResetPasswordRequestCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonSetPasswordCommand.cjs +46 -0
- package/dist/development/src/commands/tenant/person/TenantPersonSetPasswordCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonSetPasswordCommand.js +46 -0
- package/dist/development/src/commands/tenant/person/TenantPersonSetPasswordCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonShowCommand.cjs +55 -0
- package/dist/development/src/commands/tenant/person/TenantPersonShowCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonShowCommand.js +55 -0
- package/dist/development/src/commands/tenant/person/TenantPersonShowCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonSignOutCommand.cjs +38 -0
- package/dist/development/src/commands/tenant/person/TenantPersonSignOutCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonSignOutCommand.js +38 -0
- package/dist/development/src/commands/tenant/person/TenantPersonSignOutCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonUpdateCommand.cjs +36 -0
- package/dist/development/src/commands/tenant/person/TenantPersonUpdateCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantPersonUpdateCommand.js +36 -0
- package/dist/development/src/commands/tenant/person/TenantPersonUpdateCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantSessionCreateCommand.cjs +65 -0
- package/dist/development/src/commands/tenant/person/TenantSessionCreateCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/TenantSessionCreateCommand.js +65 -0
- package/dist/development/src/commands/tenant/person/TenantSessionCreateCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/person/personInput.cjs +77 -0
- package/dist/development/src/commands/tenant/person/personInput.cjs.map +1 -0
- package/dist/development/src/commands/tenant/person/personInput.js +77 -0
- package/dist/development/src/commands/tenant/person/personInput.js.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantAuthLogCommand.cjs +96 -0
- package/dist/development/src/commands/tenant/policy/TenantAuthLogCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantAuthLogCommand.js +96 -0
- package/dist/development/src/commands/tenant/policy/TenantAuthLogCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateAddCommand.cjs +59 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateAddCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateAddCommand.js +59 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateAddCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateListCommand.cjs +41 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateListCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateListCommand.js +41 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateListCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateRemoveCommand.cjs +42 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateRemoveCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateRemoveCommand.js +42 -0
- package/dist/development/src/commands/tenant/policy/TenantMailTemplateRemoveCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyCreateCommand.cjs +36 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyCreateCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyCreateCommand.js +36 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyCreateCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyDeleteCommand.cjs +31 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyDeleteCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyDeleteCommand.js +31 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyDeleteCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyListCommand.cjs +33 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyListCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyListCommand.js +33 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyListCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyUpdateCommand.cjs +38 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyUpdateCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyUpdateCommand.js +38 -0
- package/dist/development/src/commands/tenant/policy/TenantPolicyUpdateCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/policy/policyInput.cjs +167 -0
- package/dist/development/src/commands/tenant/policy/policyInput.cjs.map +1 -0
- package/dist/development/src/commands/tenant/policy/policyInput.js +167 -0
- package/dist/development/src/commands/tenant/policy/policyInput.js.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantConfigShowCommand.cjs +24 -0
- package/dist/development/src/commands/tenant/project/TenantConfigShowCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantConfigShowCommand.js +24 -0
- package/dist/development/src/commands/tenant/project/TenantConfigShowCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantIdpListCommand.cjs +22 -0
- package/dist/development/src/commands/tenant/project/TenantIdpListCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantIdpListCommand.js +22 -0
- package/dist/development/src/commands/tenant/project/TenantIdpListCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantProjectCreateCommand.cjs +53 -0
- package/dist/development/src/commands/tenant/project/TenantProjectCreateCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantProjectCreateCommand.js +53 -0
- package/dist/development/src/commands/tenant/project/TenantProjectCreateCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantProjectListCommand.cjs +22 -0
- package/dist/development/src/commands/tenant/project/TenantProjectListCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantProjectListCommand.js +22 -0
- package/dist/development/src/commands/tenant/project/TenantProjectListCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantProjectSecretSetCommand.cjs +50 -0
- package/dist/development/src/commands/tenant/project/TenantProjectSecretSetCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantProjectSecretSetCommand.js +50 -0
- package/dist/development/src/commands/tenant/project/TenantProjectSecretSetCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantProjectShowCommand.cjs +23 -0
- package/dist/development/src/commands/tenant/project/TenantProjectShowCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantProjectShowCommand.js +23 -0
- package/dist/development/src/commands/tenant/project/TenantProjectShowCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantProjectUpdateCommand.cjs +53 -0
- package/dist/development/src/commands/tenant/project/TenantProjectUpdateCommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantProjectUpdateCommand.js +53 -0
- package/dist/development/src/commands/tenant/project/TenantProjectUpdateCommand.js.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantWhoAmICommand.cjs +18 -0
- package/dist/development/src/commands/tenant/project/TenantWhoAmICommand.cjs.map +1 -0
- package/dist/development/src/commands/tenant/project/TenantWhoAmICommand.js +18 -0
- package/dist/development/src/commands/tenant/project/TenantWhoAmICommand.js.map +1 -0
- package/dist/development/src/commands/tenant/project/jsonConfigOption.cjs +26 -0
- package/dist/development/src/commands/tenant/project/jsonConfigOption.cjs.map +1 -0
- package/dist/development/src/commands/tenant/project/jsonConfigOption.js +26 -0
- package/dist/development/src/commands/tenant/project/jsonConfigOption.js.map +1 -0
- package/dist/development/src/commands/tenant/tenantOutput.cjs +35 -0
- package/dist/development/src/commands/tenant/tenantOutput.cjs.map +1 -0
- package/dist/development/src/commands/tenant/tenantOutput.js +35 -0
- package/dist/development/src/commands/tenant/tenantOutput.js.map +1 -0
- package/dist/development/src/commands/transfer/ExportCommand.cjs +35 -20
- package/dist/development/src/commands/transfer/ExportCommand.cjs.map +1 -1
- package/dist/development/src/commands/transfer/ExportCommand.js +38 -23
- package/dist/development/src/commands/transfer/ExportCommand.js.map +1 -1
- package/dist/development/src/commands/transfer/ImportCommand.cjs +70 -27
- package/dist/development/src/commands/transfer/ImportCommand.cjs.map +1 -1
- package/dist/development/src/commands/transfer/ImportCommand.js +72 -29
- package/dist/development/src/commands/transfer/ImportCommand.js.map +1 -1
- package/dist/development/src/commands/transfer/TransferCommand.cjs +79 -29
- package/dist/development/src/commands/transfer/TransferCommand.cjs.map +1 -1
- package/dist/development/src/commands/transfer/TransferCommand.js +81 -31
- package/dist/development/src/commands/transfer/TransferCommand.js.map +1 -1
- package/dist/development/src/commands/transfer/utils.cjs +12 -10
- package/dist/development/src/commands/transfer/utils.cjs.map +1 -1
- package/dist/development/src/commands/transfer/utils.js +12 -10
- package/dist/development/src/commands/transfer/utils.js.map +1 -1
- package/dist/development/src/commands/workspace/WorkspaceUpdateApiCommand.cjs +87 -32
- package/dist/development/src/commands/workspace/WorkspaceUpdateApiCommand.cjs.map +1 -1
- package/dist/development/src/commands/workspace/WorkspaceUpdateApiCommand.js +89 -34
- package/dist/development/src/commands/workspace/WorkspaceUpdateApiCommand.js.map +1 -1
- package/dist/development/src/consts.cjs +2 -2
- package/dist/development/src/consts.cjs.map +1 -1
- package/dist/development/src/dic.cjs +200 -45
- package/dist/development/src/dic.cjs.map +1 -1
- package/dist/development/src/dic.js +201 -46
- package/dist/development/src/dic.js.map +1 -1
- package/dist/development/src/lib/SystemClientProvider.cjs +55 -2
- package/dist/development/src/lib/SystemClientProvider.cjs.map +1 -1
- package/dist/development/src/lib/SystemClientProvider.js +55 -2
- package/dist/development/src/lib/SystemClientProvider.js.map +1 -1
- package/dist/development/src/lib/TenantClientProvider.cjs +28 -5
- package/dist/development/src/lib/TenantClientProvider.cjs.map +1 -1
- package/dist/development/src/lib/TenantClientProvider.js +28 -5
- package/dist/development/src/lib/TenantClientProvider.js.map +1 -1
- package/dist/development/src/lib/VersionChecker.cjs +2 -2
- package/dist/development/src/lib/VersionChecker.cjs.map +1 -1
- package/dist/development/src/lib/VersionChecker.js.map +1 -1
- package/dist/development/src/lib/actions/ActionsClient.cjs +18 -6
- package/dist/development/src/lib/actions/ActionsClient.cjs.map +1 -1
- package/dist/development/src/lib/actions/ActionsClient.js +18 -6
- package/dist/development/src/lib/actions/ActionsClient.js.map +1 -1
- package/dist/development/src/lib/actions/resolveActionsClient.cjs +13 -0
- package/dist/development/src/lib/actions/resolveActionsClient.cjs.map +1 -0
- package/dist/development/src/lib/actions/resolveActionsClient.js +13 -0
- package/dist/development/src/lib/actions/resolveActionsClient.js.map +1 -0
- package/dist/development/src/lib/actions/runActionMutationBatch.cjs +44 -0
- package/dist/development/src/lib/actions/runActionMutationBatch.cjs.map +1 -0
- package/dist/development/src/lib/actions/runActionMutationBatch.js +44 -0
- package/dist/development/src/lib/actions/runActionMutationBatch.js.map +1 -0
- package/dist/development/src/lib/admin/AdminClient.cjs +31 -11
- package/dist/development/src/lib/admin/AdminClient.cjs.map +1 -1
- package/dist/development/src/lib/admin/AdminClient.js +31 -11
- package/dist/development/src/lib/admin/AdminClient.js.map +1 -1
- package/dist/development/src/lib/admin/AdminDeployer.cjs +5 -3
- package/dist/development/src/lib/admin/AdminDeployer.cjs.map +1 -1
- package/dist/development/src/lib/admin/AdminDeployer.js +5 -3
- package/dist/development/src/lib/admin/AdminDeployer.js.map +1 -1
- package/dist/development/src/lib/errors/TransportError.cjs +204 -0
- package/dist/development/src/lib/errors/TransportError.cjs.map +1 -0
- package/dist/development/src/lib/errors/TransportError.js +204 -0
- package/dist/development/src/lib/errors/TransportError.js.map +1 -0
- package/dist/development/src/lib/fs/DockerComposeManager.cjs +10 -10
- package/dist/development/src/lib/fs/DockerComposeManager.cjs.map +1 -1
- package/dist/development/src/lib/fs/DockerComposeManager.js.map +1 -1
- package/dist/development/src/lib/fs/YamlHandler.cjs.map +1 -1
- package/dist/development/src/lib/fs/YamlHandler.js.map +1 -1
- package/dist/development/src/lib/js/EsBuildBuilder.cjs.map +1 -1
- package/dist/development/src/lib/js/EsBuildBuilder.js.map +1 -1
- package/dist/development/src/lib/js/EvalExecutor.cjs.map +1 -1
- package/dist/development/src/lib/js/EvalExecutor.js.map +1 -1
- package/dist/development/src/lib/js/JsCodeRunner.cjs.map +1 -1
- package/dist/development/src/lib/js/JsCodeRunner.js.map +1 -1
- package/dist/development/src/lib/maskToken.cjs +7 -1
- package/dist/development/src/lib/maskToken.cjs.map +1 -1
- package/dist/development/src/lib/maskToken.js +7 -1
- package/dist/development/src/lib/maskToken.js.map +1 -1
- package/dist/development/src/lib/migrations/MigrationExecutionFacade.cjs +150 -43
- package/dist/development/src/lib/migrations/MigrationExecutionFacade.cjs.map +1 -1
- package/dist/development/src/lib/migrations/MigrationExecutionFacade.js +151 -44
- package/dist/development/src/lib/migrations/MigrationExecutionFacade.js.map +1 -1
- package/dist/development/src/lib/migrations/MigrationPrinter.cjs +80 -64
- package/dist/development/src/lib/migrations/MigrationPrinter.cjs.map +1 -1
- package/dist/development/src/lib/migrations/MigrationPrinter.js +81 -65
- package/dist/development/src/lib/migrations/MigrationPrinter.js.map +1 -1
- package/dist/development/src/lib/migrations/MigrationRebaseFacade.cjs +7 -2
- package/dist/development/src/lib/migrations/MigrationRebaseFacade.cjs.map +1 -1
- package/dist/development/src/lib/migrations/MigrationRebaseFacade.js +7 -2
- package/dist/development/src/lib/migrations/MigrationRebaseFacade.js.map +1 -1
- package/dist/development/src/lib/migrations/MigrationSnapshotFacade.cjs +175 -0
- package/dist/development/src/lib/migrations/MigrationSnapshotFacade.cjs.map +1 -0
- package/dist/development/src/lib/migrations/MigrationSnapshotFacade.js +175 -0
- package/dist/development/src/lib/migrations/MigrationSnapshotFacade.js.map +1 -0
- package/dist/development/src/lib/migrations/MigrationsStatusFacade.cjs +12 -4
- package/dist/development/src/lib/migrations/MigrationsStatusFacade.cjs.map +1 -1
- package/dist/development/src/lib/migrations/MigrationsStatusFacade.js +12 -4
- package/dist/development/src/lib/migrations/MigrationsStatusFacade.js.map +1 -1
- package/dist/development/src/lib/migrations/MigrationsValidator.cjs +5 -3
- package/dist/development/src/lib/migrations/MigrationsValidator.cjs.map +1 -1
- package/dist/development/src/lib/migrations/MigrationsValidator.js +5 -3
- package/dist/development/src/lib/migrations/MigrationsValidator.js.map +1 -1
- package/dist/development/src/lib/project/RemoteProjectProvider.cjs +5 -1
- package/dist/development/src/lib/project/RemoteProjectProvider.cjs.map +1 -1
- package/dist/development/src/lib/project/RemoteProjectProvider.js +5 -1
- package/dist/development/src/lib/project/RemoteProjectProvider.js.map +1 -1
- package/dist/development/src/lib/project/RemoteProjectResolver.cjs.map +1 -1
- package/dist/development/src/lib/project/RemoteProjectResolver.js.map +1 -1
- package/dist/development/src/lib/project/docs/components/EntityInfo.cjs.map +1 -1
- package/dist/development/src/lib/project/docs/components/EntityInfo.js.map +1 -1
- package/dist/development/src/lib/project/docs/components/EntityLink.cjs.map +1 -1
- package/dist/development/src/lib/project/docs/components/EntityLink.js.map +1 -1
- package/dist/development/src/lib/project/docs/components/FieldLink.cjs.map +1 -1
- package/dist/development/src/lib/project/docs/components/FieldLink.js.map +1 -1
- package/dist/development/src/lib/project/docs/components/FieldPermissions.cjs.map +1 -1
- package/dist/development/src/lib/project/docs/components/FieldPermissions.js.map +1 -1
- package/dist/development/src/lib/project/docs/components/FieldType.cjs.map +1 -1
- package/dist/development/src/lib/project/docs/components/FieldType.js.map +1 -1
- package/dist/development/src/lib/project/docs/components/OnDelete.cjs.map +1 -1
- package/dist/development/src/lib/project/docs/components/OnDelete.js.map +1 -1
- package/dist/development/src/lib/project/docs/components/ProjectInfo.cjs.map +1 -1
- package/dist/development/src/lib/project/docs/components/ProjectInfo.js.map +1 -1
- package/dist/development/src/lib/project/docs/projectDescribe.cjs.map +1 -1
- package/dist/development/src/lib/project/docs/projectDescribe.js.map +1 -1
- package/dist/development/src/lib/prompt/prompt.cjs +13 -0
- package/dist/development/src/lib/prompt/prompt.cjs.map +1 -0
- package/dist/development/src/lib/prompt/prompt.internal.cjs +21 -0
- package/dist/development/src/lib/prompt/prompt.internal.cjs.map +1 -0
- package/dist/development/src/lib/prompt/prompt.internal.js +21 -0
- package/dist/development/src/lib/prompt/prompt.internal.js.map +1 -0
- package/dist/development/src/lib/prompt/prompt.js +13 -0
- package/dist/development/src/lib/prompt/prompt.js.map +1 -0
- package/dist/development/src/lib/schema/SchemaLoader.cjs +5 -5
- package/dist/development/src/lib/schema/SchemaLoader.cjs.map +1 -1
- package/dist/development/src/lib/schema/SchemaLoader.js.map +1 -1
- package/dist/development/src/lib/schema/SchemaValidationHelper.cjs +2 -2
- package/dist/development/src/lib/schema/SchemaValidationHelper.cjs.map +1 -1
- package/dist/development/src/lib/schema/SchemaValidationHelper.js +2 -2
- package/dist/development/src/lib/schema/SchemaValidationHelper.js.map +1 -1
- package/dist/development/src/lib/schema/SchemaValidationPrinter.cjs +4 -4
- package/dist/development/src/lib/schema/SchemaValidationPrinter.cjs.map +1 -1
- package/dist/development/src/lib/schema/SchemaValidationPrinter.js +4 -4
- package/dist/development/src/lib/schema/SchemaValidationPrinter.js.map +1 -1
- package/dist/development/src/lib/tenant/TenantApiTransport.cjs +160 -0
- package/dist/development/src/lib/tenant/TenantApiTransport.cjs.map +1 -0
- package/dist/development/src/lib/tenant/TenantApiTransport.js +160 -0
- package/dist/development/src/lib/tenant/TenantApiTransport.js.map +1 -0
- package/dist/development/src/lib/tenant/TenantConfigApplier.cjs +139 -0
- package/dist/development/src/lib/tenant/TenantConfigApplier.cjs.map +1 -0
- package/dist/development/src/lib/tenant/TenantConfigApplier.js +139 -0
- package/dist/development/src/lib/tenant/TenantConfigApplier.js.map +1 -0
- package/dist/development/src/lib/tenant/TenantConfigLoader.cjs +32 -0
- package/dist/development/src/lib/tenant/TenantConfigLoader.cjs.map +1 -0
- package/dist/development/src/lib/tenant/TenantConfigLoader.js +32 -0
- package/dist/development/src/lib/tenant/TenantConfigLoader.js.map +1 -0
- package/dist/development/src/lib/tenant/TenantConnectionProvider.cjs +20 -0
- package/dist/development/src/lib/tenant/TenantConnectionProvider.cjs.map +1 -0
- package/dist/development/src/lib/tenant/TenantConnectionProvider.js +20 -0
- package/dist/development/src/lib/tenant/TenantConnectionProvider.js.map +1 -0
- package/dist/development/src/lib/tenant/TenantConnectionResolver.cjs +30 -0
- package/dist/development/src/lib/tenant/TenantConnectionResolver.cjs.map +1 -0
- package/dist/development/src/lib/tenant/TenantConnectionResolver.js +30 -0
- package/dist/development/src/lib/tenant/TenantConnectionResolver.js.map +1 -0
- package/dist/development/src/lib/tenant/authPolicy.cjs +10 -0
- package/dist/development/src/lib/tenant/authPolicy.cjs.map +1 -0
- package/dist/development/src/lib/tenant/authPolicy.js +10 -0
- package/dist/development/src/lib/tenant/authPolicy.js.map +1 -0
- package/dist/development/src/lib/tenant/clients/TenantApiKeyClient.cjs +101 -0
- package/dist/development/src/lib/tenant/clients/TenantApiKeyClient.cjs.map +1 -0
- package/dist/development/src/lib/tenant/clients/TenantApiKeyClient.js +101 -0
- package/dist/development/src/lib/tenant/clients/TenantApiKeyClient.js.map +1 -0
- package/dist/development/src/lib/tenant/clients/TenantMemberClient.cjs +96 -0
- package/dist/development/src/lib/tenant/clients/TenantMemberClient.cjs.map +1 -0
- package/dist/development/src/lib/tenant/clients/TenantMemberClient.js +96 -0
- package/dist/development/src/lib/tenant/clients/TenantMemberClient.js.map +1 -0
- package/dist/development/src/lib/tenant/clients/TenantPersonClient.cjs +162 -0
- package/dist/development/src/lib/tenant/clients/TenantPersonClient.cjs.map +1 -0
- package/dist/development/src/lib/tenant/clients/TenantPersonClient.js +162 -0
- package/dist/development/src/lib/tenant/clients/TenantPersonClient.js.map +1 -0
- package/dist/development/src/lib/tenant/clients/TenantPolicyClient.cjs +135 -0
- package/dist/development/src/lib/tenant/clients/TenantPolicyClient.cjs.map +1 -0
- package/dist/development/src/lib/tenant/clients/TenantPolicyClient.js +135 -0
- package/dist/development/src/lib/tenant/clients/TenantPolicyClient.js.map +1 -0
- package/dist/development/src/lib/tenant/clients/TenantProjectClient.cjs +209 -0
- package/dist/development/src/lib/tenant/clients/TenantProjectClient.cjs.map +1 -0
- package/dist/development/src/lib/tenant/clients/TenantProjectClient.js +209 -0
- package/dist/development/src/lib/tenant/clients/TenantProjectClient.js.map +1 -0
- package/dist/development/src/lib/tenant/clients/index.cjs +21 -0
- package/dist/development/src/lib/tenant/clients/index.cjs.map +1 -0
- package/dist/development/src/lib/tenant/clients/index.js +21 -0
- package/dist/development/src/lib/tenant/clients/index.js.map +1 -0
- package/dist/development/src/lib/tenant/confirmation.cjs +23 -0
- package/dist/development/src/lib/tenant/confirmation.cjs.map +1 -0
- package/dist/development/src/lib/tenant/confirmation.js +23 -0
- package/dist/development/src/lib/tenant/confirmation.js.map +1 -0
- package/dist/development/src/lib/tenant/input/pagination.cjs +24 -0
- package/dist/development/src/lib/tenant/input/pagination.cjs.map +1 -0
- package/dist/development/src/lib/tenant/input/pagination.js +24 -0
- package/dist/development/src/lib/tenant/input/pagination.js.map +1 -0
- package/dist/development/src/lib/tenant/input/value.cjs +71 -0
- package/dist/development/src/lib/tenant/input/value.cjs.map +1 -0
- package/dist/development/src/lib/tenant/input/value.js +71 -0
- package/dist/development/src/lib/tenant/input/value.js.map +1 -0
- package/dist/development/src/lib/tenant/stdin.cjs +13 -0
- package/dist/development/src/lib/tenant/stdin.cjs.map +1 -0
- package/dist/development/src/lib/tenant/stdin.js +13 -0
- package/dist/development/src/lib/tenant/stdin.js.map +1 -0
- package/dist/development/src/lib/tenant/tenantConfig.cjs +5 -0
- package/dist/development/src/lib/tenant/tenantConfig.cjs.map +1 -0
- package/dist/development/src/lib/tenant/tenantConfig.js +5 -0
- package/dist/development/src/lib/tenant/tenantConfig.js.map +1 -0
- package/dist/development/src/lib/transfer/DataTransferClient.cjs +290 -54
- package/dist/development/src/lib/transfer/DataTransferClient.cjs.map +1 -1
- package/dist/development/src/lib/transfer/DataTransferClient.js +292 -56
- package/dist/development/src/lib/transfer/DataTransferClient.js.map +1 -1
- package/dist/development/src/lib/transfer/stdio.cjs +3 -8
- package/dist/development/src/lib/transfer/stdio.cjs.map +1 -1
- package/dist/development/src/lib/transfer/stdio.js +3 -8
- package/dist/development/src/lib/transfer/stdio.js.map +1 -1
- package/dist/development/src/lib/workspace/WorkspaceResolver.cjs +6 -6
- package/dist/development/src/lib/workspace/WorkspaceResolver.cjs.map +1 -1
- package/dist/development/src/lib/workspace/WorkspaceResolver.js.map +1 -1
- package/dist/production/index.cjs +5 -0
- package/dist/production/index.cjs.map +1 -0
- package/dist/production/index.js +5 -0
- package/dist/production/index.js.map +1 -0
- package/dist/production/run.cjs +14 -6
- package/dist/production/run.cjs.map +1 -1
- package/dist/production/run.js +12 -4
- package/dist/production/run.js.map +1 -1
- package/dist/production/src/commands/actions/ActionsGetEventCommand.cjs +30 -15
- package/dist/production/src/commands/actions/ActionsGetEventCommand.cjs.map +1 -1
- package/dist/production/src/commands/actions/ActionsGetEventCommand.js +31 -16
- package/dist/production/src/commands/actions/ActionsGetEventCommand.js.map +1 -1
- package/dist/production/src/commands/actions/ActionsListFailedEventsCommand.cjs +21 -41
- package/dist/production/src/commands/actions/ActionsListFailedEventsCommand.cjs.map +1 -1
- package/dist/production/src/commands/actions/ActionsListFailedEventsCommand.js +22 -42
- package/dist/production/src/commands/actions/ActionsListFailedEventsCommand.js.map +1 -1
- package/dist/production/src/commands/actions/ActionsListVariablesCommand.cjs +15 -13
- package/dist/production/src/commands/actions/ActionsListVariablesCommand.cjs.map +1 -1
- package/dist/production/src/commands/actions/ActionsListVariablesCommand.js +15 -13
- package/dist/production/src/commands/actions/ActionsListVariablesCommand.js.map +1 -1
- package/dist/production/src/commands/actions/ActionsRetryEventCommand.cjs +28 -16
- package/dist/production/src/commands/actions/ActionsRetryEventCommand.cjs.map +1 -1
- package/dist/production/src/commands/actions/ActionsRetryEventCommand.js +29 -17
- package/dist/production/src/commands/actions/ActionsRetryEventCommand.js.map +1 -1
- package/dist/production/src/commands/actions/ActionsSetVariablesCommand.cjs +51 -22
- package/dist/production/src/commands/actions/ActionsSetVariablesCommand.cjs.map +1 -1
- package/dist/production/src/commands/actions/ActionsSetVariablesCommand.js +52 -23
- package/dist/production/src/commands/actions/ActionsSetVariablesCommand.js.map +1 -1
- package/dist/production/src/commands/actions/ActionsStopEventCommand.cjs +28 -16
- package/dist/production/src/commands/actions/ActionsStopEventCommand.cjs.map +1 -1
- package/dist/production/src/commands/actions/ActionsStopEventCommand.js +29 -17
- package/dist/production/src/commands/actions/ActionsStopEventCommand.js.map +1 -1
- package/dist/production/src/commands/deploy/DeployCommand.cjs +58 -29
- package/dist/production/src/commands/deploy/DeployCommand.cjs.map +1 -1
- package/dist/production/src/commands/deploy/DeployCommand.js +59 -30
- package/dist/production/src/commands/deploy/DeployCommand.js.map +1 -1
- package/dist/production/src/commands/migrations/MigrationAmendCommand.cjs +88 -26
- package/dist/production/src/commands/migrations/MigrationAmendCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationAmendCommand.js +89 -27
- package/dist/production/src/commands/migrations/MigrationAmendCommand.js.map +1 -1
- package/dist/production/src/commands/migrations/MigrationBlankCommand.cjs +2 -2
- package/dist/production/src/commands/migrations/MigrationBlankCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationBlankCommand.js +2 -2
- package/dist/production/src/commands/migrations/MigrationBlankCommand.js.map +1 -1
- package/dist/production/src/commands/migrations/MigrationDescribeCommand.cjs +7 -3
- package/dist/production/src/commands/migrations/MigrationDescribeCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationDescribeCommand.js +8 -4
- package/dist/production/src/commands/migrations/MigrationDescribeCommand.js.map +1 -1
- package/dist/production/src/commands/migrations/MigrationDiffCommand.cjs +103 -19
- package/dist/production/src/commands/migrations/MigrationDiffCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationDiffCommand.js +104 -20
- package/dist/production/src/commands/migrations/MigrationDiffCommand.js.map +1 -1
- package/dist/production/src/commands/migrations/MigrationExecuteCommand.cjs +10 -3
- package/dist/production/src/commands/migrations/MigrationExecuteCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationExecuteCommand.js +10 -3
- package/dist/production/src/commands/migrations/MigrationExecuteCommand.js.map +1 -1
- package/dist/production/src/commands/migrations/MigrationInitStateCommand.cjs +33 -0
- package/dist/production/src/commands/migrations/MigrationInitStateCommand.cjs.map +1 -0
- package/dist/production/src/commands/migrations/MigrationInitStateCommand.js +33 -0
- package/dist/production/src/commands/migrations/MigrationInitStateCommand.js.map +1 -0
- package/dist/production/src/commands/migrations/MigrationRebaseCommand.cjs +24 -4
- package/dist/production/src/commands/migrations/MigrationRebaseCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationRebaseCommand.js +25 -5
- package/dist/production/src/commands/migrations/MigrationRebaseCommand.js.map +1 -1
- package/dist/production/src/commands/migrations/MigrationSnapshotCommand.cjs +59 -0
- package/dist/production/src/commands/migrations/MigrationSnapshotCommand.cjs.map +1 -0
- package/dist/production/src/commands/migrations/MigrationSnapshotCommand.js +59 -0
- package/dist/production/src/commands/migrations/MigrationSnapshotCommand.js.map +1 -0
- package/dist/production/src/commands/migrations/MigrationStatusCommand.cjs +5 -5
- package/dist/production/src/commands/migrations/MigrationStatusCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationStatusCommand.js +5 -5
- package/dist/production/src/commands/migrations/MigrationStatusCommand.js.map +1 -1
- package/dist/production/src/commands/migrations/MigrationVerifySnapshotCommand.cjs +22 -0
- package/dist/production/src/commands/migrations/MigrationVerifySnapshotCommand.cjs.map +1 -0
- package/dist/production/src/commands/migrations/MigrationVerifySnapshotCommand.js +22 -0
- package/dist/production/src/commands/migrations/MigrationVerifySnapshotCommand.js.map +1 -0
- package/dist/production/src/commands/misc/CommandsCommand.cjs +58 -0
- package/dist/production/src/commands/misc/CommandsCommand.cjs.map +1 -0
- package/dist/production/src/commands/misc/CommandsCommand.js +58 -0
- package/dist/production/src/commands/misc/CommandsCommand.js.map +1 -0
- package/dist/production/src/commands/misc/VersionCommand.cjs +2 -3
- package/dist/production/src/commands/misc/VersionCommand.cjs.map +1 -1
- package/dist/production/src/commands/misc/VersionCommand.js +2 -3
- package/dist/production/src/commands/misc/VersionCommand.js.map +1 -1
- package/dist/production/src/commands/project/ProjectGenerateDocumentationCommand.cjs +13 -13
- package/dist/production/src/commands/project/ProjectGenerateDocumentationCommand.cjs.map +1 -1
- package/dist/production/src/commands/project/ProjectGenerateDocumentationCommand.js +13 -13
- package/dist/production/src/commands/project/ProjectGenerateDocumentationCommand.js.map +1 -1
- package/dist/production/src/commands/project/ProjectPrintSchemaCommand.cjs +17 -15
- package/dist/production/src/commands/project/ProjectPrintSchemaCommand.cjs.map +1 -1
- package/dist/production/src/commands/project/ProjectPrintSchemaCommand.js +18 -16
- package/dist/production/src/commands/project/ProjectPrintSchemaCommand.js.map +1 -1
- package/dist/production/src/commands/project/ProjectValidateCommand.cjs +40 -12
- package/dist/production/src/commands/project/ProjectValidateCommand.cjs.map +1 -1
- package/dist/production/src/commands/project/ProjectValidateCommand.js +42 -14
- package/dist/production/src/commands/project/ProjectValidateCommand.js.map +1 -1
- package/dist/production/src/commands/tenant/TenantApplyCommand.cjs +59 -0
- package/dist/production/src/commands/tenant/TenantApplyCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/TenantApplyCommand.js +59 -0
- package/dist/production/src/commands/tenant/TenantApplyCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyCreateCommand.cjs +68 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyCreateCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyCreateCommand.js +68 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyCreateCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyDisableCommand.cjs +31 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyDisableCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyDisableCommand.js +31 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyDisableCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyListCommand.cjs +55 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyListCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyListCommand.js +55 -0
- package/dist/production/src/commands/tenant/apikey/TenantApiKeyListCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberAddCommand.cjs +36 -0
- package/dist/production/src/commands/tenant/member/TenantMemberAddCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberAddCommand.js +36 -0
- package/dist/production/src/commands/tenant/member/TenantMemberAddCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberInviteCommand.cjs +62 -0
- package/dist/production/src/commands/tenant/member/TenantMemberInviteCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberInviteCommand.js +62 -0
- package/dist/production/src/commands/tenant/member/TenantMemberInviteCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberInviteUnmanagedCommand.cjs +102 -0
- package/dist/production/src/commands/tenant/member/TenantMemberInviteUnmanagedCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberInviteUnmanagedCommand.js +102 -0
- package/dist/production/src/commands/tenant/member/TenantMemberInviteUnmanagedCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberListCommand.cjs +73 -0
- package/dist/production/src/commands/tenant/member/TenantMemberListCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberListCommand.js +73 -0
- package/dist/production/src/commands/tenant/member/TenantMemberListCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberRemoveCommand.cjs +35 -0
- package/dist/production/src/commands/tenant/member/TenantMemberRemoveCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberRemoveCommand.js +35 -0
- package/dist/production/src/commands/tenant/member/TenantMemberRemoveCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberUpdateCommand.cjs +45 -0
- package/dist/production/src/commands/tenant/member/TenantMemberUpdateCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/member/TenantMemberUpdateCommand.js +45 -0
- package/dist/production/src/commands/tenant/member/TenantMemberUpdateCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/member/memberOptions.cjs +16 -0
- package/dist/production/src/commands/tenant/member/memberOptions.cjs.map +1 -0
- package/dist/production/src/commands/tenant/member/memberOptions.js +16 -0
- package/dist/production/src/commands/tenant/member/memberOptions.js.map +1 -0
- package/dist/production/src/commands/tenant/member/membershipInput.cjs +109 -0
- package/dist/production/src/commands/tenant/member/membershipInput.cjs.map +1 -0
- package/dist/production/src/commands/tenant/member/membershipInput.js +109 -0
- package/dist/production/src/commands/tenant/member/membershipInput.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantIdentityRoleAddCommand.cjs +27 -0
- package/dist/production/src/commands/tenant/person/TenantIdentityRoleAddCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantIdentityRoleAddCommand.js +27 -0
- package/dist/production/src/commands/tenant/person/TenantIdentityRoleAddCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantIdentityRoleRemoveCommand.cjs +34 -0
- package/dist/production/src/commands/tenant/person/TenantIdentityRoleRemoveCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantIdentityRoleRemoveCommand.js +34 -0
- package/dist/production/src/commands/tenant/person/TenantIdentityRoleRemoveCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonCreateCommand.cjs +79 -0
- package/dist/production/src/commands/tenant/person/TenantPersonCreateCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonCreateCommand.js +79 -0
- package/dist/production/src/commands/tenant/person/TenantPersonCreateCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonDisableCommand.cjs +29 -0
- package/dist/production/src/commands/tenant/person/TenantPersonDisableCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonDisableCommand.js +29 -0
- package/dist/production/src/commands/tenant/person/TenantPersonDisableCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonListCommand.cjs +53 -0
- package/dist/production/src/commands/tenant/person/TenantPersonListCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonListCommand.js +53 -0
- package/dist/production/src/commands/tenant/person/TenantPersonListCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonResetMfaCommand.cjs +37 -0
- package/dist/production/src/commands/tenant/person/TenantPersonResetMfaCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonResetMfaCommand.js +37 -0
- package/dist/production/src/commands/tenant/person/TenantPersonResetMfaCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonResetPasswordRequestCommand.cjs +47 -0
- package/dist/production/src/commands/tenant/person/TenantPersonResetPasswordRequestCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonResetPasswordRequestCommand.js +47 -0
- package/dist/production/src/commands/tenant/person/TenantPersonResetPasswordRequestCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonSetPasswordCommand.cjs +46 -0
- package/dist/production/src/commands/tenant/person/TenantPersonSetPasswordCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonSetPasswordCommand.js +46 -0
- package/dist/production/src/commands/tenant/person/TenantPersonSetPasswordCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonShowCommand.cjs +55 -0
- package/dist/production/src/commands/tenant/person/TenantPersonShowCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonShowCommand.js +55 -0
- package/dist/production/src/commands/tenant/person/TenantPersonShowCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonSignOutCommand.cjs +38 -0
- package/dist/production/src/commands/tenant/person/TenantPersonSignOutCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonSignOutCommand.js +38 -0
- package/dist/production/src/commands/tenant/person/TenantPersonSignOutCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonUpdateCommand.cjs +36 -0
- package/dist/production/src/commands/tenant/person/TenantPersonUpdateCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantPersonUpdateCommand.js +36 -0
- package/dist/production/src/commands/tenant/person/TenantPersonUpdateCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantSessionCreateCommand.cjs +65 -0
- package/dist/production/src/commands/tenant/person/TenantSessionCreateCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/TenantSessionCreateCommand.js +65 -0
- package/dist/production/src/commands/tenant/person/TenantSessionCreateCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/person/personInput.cjs +77 -0
- package/dist/production/src/commands/tenant/person/personInput.cjs.map +1 -0
- package/dist/production/src/commands/tenant/person/personInput.js +77 -0
- package/dist/production/src/commands/tenant/person/personInput.js.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantAuthLogCommand.cjs +96 -0
- package/dist/production/src/commands/tenant/policy/TenantAuthLogCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantAuthLogCommand.js +96 -0
- package/dist/production/src/commands/tenant/policy/TenantAuthLogCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateAddCommand.cjs +59 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateAddCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateAddCommand.js +59 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateAddCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateListCommand.cjs +41 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateListCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateListCommand.js +41 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateListCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateRemoveCommand.cjs +42 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateRemoveCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateRemoveCommand.js +42 -0
- package/dist/production/src/commands/tenant/policy/TenantMailTemplateRemoveCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyCreateCommand.cjs +36 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyCreateCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyCreateCommand.js +36 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyCreateCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyDeleteCommand.cjs +31 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyDeleteCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyDeleteCommand.js +31 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyDeleteCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyListCommand.cjs +33 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyListCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyListCommand.js +33 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyListCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyUpdateCommand.cjs +38 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyUpdateCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyUpdateCommand.js +38 -0
- package/dist/production/src/commands/tenant/policy/TenantPolicyUpdateCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/policy/policyInput.cjs +167 -0
- package/dist/production/src/commands/tenant/policy/policyInput.cjs.map +1 -0
- package/dist/production/src/commands/tenant/policy/policyInput.js +167 -0
- package/dist/production/src/commands/tenant/policy/policyInput.js.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantConfigShowCommand.cjs +24 -0
- package/dist/production/src/commands/tenant/project/TenantConfigShowCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantConfigShowCommand.js +24 -0
- package/dist/production/src/commands/tenant/project/TenantConfigShowCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantIdpListCommand.cjs +22 -0
- package/dist/production/src/commands/tenant/project/TenantIdpListCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantIdpListCommand.js +22 -0
- package/dist/production/src/commands/tenant/project/TenantIdpListCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantProjectCreateCommand.cjs +53 -0
- package/dist/production/src/commands/tenant/project/TenantProjectCreateCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantProjectCreateCommand.js +53 -0
- package/dist/production/src/commands/tenant/project/TenantProjectCreateCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantProjectListCommand.cjs +22 -0
- package/dist/production/src/commands/tenant/project/TenantProjectListCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantProjectListCommand.js +22 -0
- package/dist/production/src/commands/tenant/project/TenantProjectListCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantProjectSecretSetCommand.cjs +50 -0
- package/dist/production/src/commands/tenant/project/TenantProjectSecretSetCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantProjectSecretSetCommand.js +50 -0
- package/dist/production/src/commands/tenant/project/TenantProjectSecretSetCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantProjectShowCommand.cjs +23 -0
- package/dist/production/src/commands/tenant/project/TenantProjectShowCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantProjectShowCommand.js +23 -0
- package/dist/production/src/commands/tenant/project/TenantProjectShowCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantProjectUpdateCommand.cjs +53 -0
- package/dist/production/src/commands/tenant/project/TenantProjectUpdateCommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantProjectUpdateCommand.js +53 -0
- package/dist/production/src/commands/tenant/project/TenantProjectUpdateCommand.js.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantWhoAmICommand.cjs +18 -0
- package/dist/production/src/commands/tenant/project/TenantWhoAmICommand.cjs.map +1 -0
- package/dist/production/src/commands/tenant/project/TenantWhoAmICommand.js +18 -0
- package/dist/production/src/commands/tenant/project/TenantWhoAmICommand.js.map +1 -0
- package/dist/production/src/commands/tenant/project/jsonConfigOption.cjs +26 -0
- package/dist/production/src/commands/tenant/project/jsonConfigOption.cjs.map +1 -0
- package/dist/production/src/commands/tenant/project/jsonConfigOption.js +26 -0
- package/dist/production/src/commands/tenant/project/jsonConfigOption.js.map +1 -0
- package/dist/production/src/commands/tenant/tenantOutput.cjs +35 -0
- package/dist/production/src/commands/tenant/tenantOutput.cjs.map +1 -0
- package/dist/production/src/commands/tenant/tenantOutput.js +35 -0
- package/dist/production/src/commands/tenant/tenantOutput.js.map +1 -0
- package/dist/production/src/commands/transfer/ExportCommand.cjs +35 -20
- package/dist/production/src/commands/transfer/ExportCommand.cjs.map +1 -1
- package/dist/production/src/commands/transfer/ExportCommand.js +38 -23
- package/dist/production/src/commands/transfer/ExportCommand.js.map +1 -1
- package/dist/production/src/commands/transfer/ImportCommand.cjs +70 -27
- package/dist/production/src/commands/transfer/ImportCommand.cjs.map +1 -1
- package/dist/production/src/commands/transfer/ImportCommand.js +72 -29
- package/dist/production/src/commands/transfer/ImportCommand.js.map +1 -1
- package/dist/production/src/commands/transfer/TransferCommand.cjs +79 -29
- package/dist/production/src/commands/transfer/TransferCommand.cjs.map +1 -1
- package/dist/production/src/commands/transfer/TransferCommand.js +81 -31
- package/dist/production/src/commands/transfer/TransferCommand.js.map +1 -1
- package/dist/production/src/commands/transfer/utils.cjs +12 -10
- package/dist/production/src/commands/transfer/utils.cjs.map +1 -1
- package/dist/production/src/commands/transfer/utils.js +12 -10
- package/dist/production/src/commands/transfer/utils.js.map +1 -1
- package/dist/production/src/commands/workspace/WorkspaceUpdateApiCommand.cjs +87 -32
- package/dist/production/src/commands/workspace/WorkspaceUpdateApiCommand.cjs.map +1 -1
- package/dist/production/src/commands/workspace/WorkspaceUpdateApiCommand.js +89 -34
- package/dist/production/src/commands/workspace/WorkspaceUpdateApiCommand.js.map +1 -1
- package/dist/production/src/consts.cjs +2 -2
- package/dist/production/src/consts.cjs.map +1 -1
- package/dist/production/src/dic.cjs +200 -45
- package/dist/production/src/dic.cjs.map +1 -1
- package/dist/production/src/dic.js +201 -46
- package/dist/production/src/dic.js.map +1 -1
- package/dist/production/src/lib/SystemClientProvider.cjs +55 -2
- package/dist/production/src/lib/SystemClientProvider.cjs.map +1 -1
- package/dist/production/src/lib/SystemClientProvider.js +55 -2
- package/dist/production/src/lib/SystemClientProvider.js.map +1 -1
- package/dist/production/src/lib/TenantClientProvider.cjs +28 -5
- package/dist/production/src/lib/TenantClientProvider.cjs.map +1 -1
- package/dist/production/src/lib/TenantClientProvider.js +28 -5
- package/dist/production/src/lib/TenantClientProvider.js.map +1 -1
- package/dist/production/src/lib/VersionChecker.cjs +2 -2
- package/dist/production/src/lib/VersionChecker.cjs.map +1 -1
- package/dist/production/src/lib/VersionChecker.js.map +1 -1
- package/dist/production/src/lib/actions/ActionsClient.cjs +18 -6
- package/dist/production/src/lib/actions/ActionsClient.cjs.map +1 -1
- package/dist/production/src/lib/actions/ActionsClient.js +18 -6
- package/dist/production/src/lib/actions/ActionsClient.js.map +1 -1
- package/dist/production/src/lib/actions/resolveActionsClient.cjs +13 -0
- package/dist/production/src/lib/actions/resolveActionsClient.cjs.map +1 -0
- package/dist/production/src/lib/actions/resolveActionsClient.js +13 -0
- package/dist/production/src/lib/actions/resolveActionsClient.js.map +1 -0
- package/dist/production/src/lib/actions/runActionMutationBatch.cjs +44 -0
- package/dist/production/src/lib/actions/runActionMutationBatch.cjs.map +1 -0
- package/dist/production/src/lib/actions/runActionMutationBatch.js +44 -0
- package/dist/production/src/lib/actions/runActionMutationBatch.js.map +1 -0
- package/dist/production/src/lib/admin/AdminClient.cjs +31 -11
- package/dist/production/src/lib/admin/AdminClient.cjs.map +1 -1
- package/dist/production/src/lib/admin/AdminClient.js +31 -11
- package/dist/production/src/lib/admin/AdminClient.js.map +1 -1
- package/dist/production/src/lib/admin/AdminDeployer.cjs +5 -3
- package/dist/production/src/lib/admin/AdminDeployer.cjs.map +1 -1
- package/dist/production/src/lib/admin/AdminDeployer.js +5 -3
- package/dist/production/src/lib/admin/AdminDeployer.js.map +1 -1
- package/dist/production/src/lib/errors/TransportError.cjs +204 -0
- package/dist/production/src/lib/errors/TransportError.cjs.map +1 -0
- package/dist/production/src/lib/errors/TransportError.js +204 -0
- package/dist/production/src/lib/errors/TransportError.js.map +1 -0
- package/dist/production/src/lib/fs/DockerComposeManager.cjs +10 -10
- package/dist/production/src/lib/fs/DockerComposeManager.cjs.map +1 -1
- package/dist/production/src/lib/fs/DockerComposeManager.js.map +1 -1
- package/dist/production/src/lib/fs/YamlHandler.cjs.map +1 -1
- package/dist/production/src/lib/fs/YamlHandler.js.map +1 -1
- package/dist/production/src/lib/js/EsBuildBuilder.cjs.map +1 -1
- package/dist/production/src/lib/js/EsBuildBuilder.js.map +1 -1
- package/dist/production/src/lib/js/EvalExecutor.cjs.map +1 -1
- package/dist/production/src/lib/js/EvalExecutor.js.map +1 -1
- package/dist/production/src/lib/js/JsCodeRunner.cjs.map +1 -1
- package/dist/production/src/lib/js/JsCodeRunner.js.map +1 -1
- package/dist/production/src/lib/maskToken.cjs +7 -1
- package/dist/production/src/lib/maskToken.cjs.map +1 -1
- package/dist/production/src/lib/maskToken.js +7 -1
- package/dist/production/src/lib/maskToken.js.map +1 -1
- package/dist/production/src/lib/migrations/MigrationExecutionFacade.cjs +150 -43
- package/dist/production/src/lib/migrations/MigrationExecutionFacade.cjs.map +1 -1
- package/dist/production/src/lib/migrations/MigrationExecutionFacade.js +151 -44
- package/dist/production/src/lib/migrations/MigrationExecutionFacade.js.map +1 -1
- package/dist/production/src/lib/migrations/MigrationPrinter.cjs +80 -64
- package/dist/production/src/lib/migrations/MigrationPrinter.cjs.map +1 -1
- package/dist/production/src/lib/migrations/MigrationPrinter.js +81 -65
- package/dist/production/src/lib/migrations/MigrationPrinter.js.map +1 -1
- package/dist/production/src/lib/migrations/MigrationRebaseFacade.cjs +7 -2
- package/dist/production/src/lib/migrations/MigrationRebaseFacade.cjs.map +1 -1
- package/dist/production/src/lib/migrations/MigrationRebaseFacade.js +7 -2
- package/dist/production/src/lib/migrations/MigrationRebaseFacade.js.map +1 -1
- package/dist/production/src/lib/migrations/MigrationSnapshotFacade.cjs +175 -0
- package/dist/production/src/lib/migrations/MigrationSnapshotFacade.cjs.map +1 -0
- package/dist/production/src/lib/migrations/MigrationSnapshotFacade.js +175 -0
- package/dist/production/src/lib/migrations/MigrationSnapshotFacade.js.map +1 -0
- package/dist/production/src/lib/migrations/MigrationsStatusFacade.cjs +12 -4
- package/dist/production/src/lib/migrations/MigrationsStatusFacade.cjs.map +1 -1
- package/dist/production/src/lib/migrations/MigrationsStatusFacade.js +12 -4
- package/dist/production/src/lib/migrations/MigrationsStatusFacade.js.map +1 -1
- package/dist/production/src/lib/migrations/MigrationsValidator.cjs +5 -3
- package/dist/production/src/lib/migrations/MigrationsValidator.cjs.map +1 -1
- package/dist/production/src/lib/migrations/MigrationsValidator.js +5 -3
- package/dist/production/src/lib/migrations/MigrationsValidator.js.map +1 -1
- package/dist/production/src/lib/project/RemoteProjectProvider.cjs +5 -1
- package/dist/production/src/lib/project/RemoteProjectProvider.cjs.map +1 -1
- package/dist/production/src/lib/project/RemoteProjectProvider.js +5 -1
- package/dist/production/src/lib/project/RemoteProjectProvider.js.map +1 -1
- package/dist/production/src/lib/project/RemoteProjectResolver.cjs.map +1 -1
- package/dist/production/src/lib/project/RemoteProjectResolver.js.map +1 -1
- package/dist/production/src/lib/project/docs/components/EntityInfo.cjs.map +1 -1
- package/dist/production/src/lib/project/docs/components/EntityInfo.js.map +1 -1
- package/dist/production/src/lib/project/docs/components/EntityLink.cjs.map +1 -1
- package/dist/production/src/lib/project/docs/components/EntityLink.js.map +1 -1
- package/dist/production/src/lib/project/docs/components/FieldLink.cjs.map +1 -1
- package/dist/production/src/lib/project/docs/components/FieldLink.js.map +1 -1
- package/dist/production/src/lib/project/docs/components/FieldPermissions.cjs.map +1 -1
- package/dist/production/src/lib/project/docs/components/FieldPermissions.js.map +1 -1
- package/dist/production/src/lib/project/docs/components/FieldType.cjs.map +1 -1
- package/dist/production/src/lib/project/docs/components/FieldType.js.map +1 -1
- package/dist/production/src/lib/project/docs/components/OnDelete.cjs.map +1 -1
- package/dist/production/src/lib/project/docs/components/OnDelete.js.map +1 -1
- package/dist/production/src/lib/project/docs/components/ProjectInfo.cjs.map +1 -1
- package/dist/production/src/lib/project/docs/components/ProjectInfo.js.map +1 -1
- package/dist/production/src/lib/project/docs/projectDescribe.cjs.map +1 -1
- package/dist/production/src/lib/project/docs/projectDescribe.js.map +1 -1
- package/dist/production/src/lib/prompt/prompt.cjs +13 -0
- package/dist/production/src/lib/prompt/prompt.cjs.map +1 -0
- package/dist/production/src/lib/prompt/prompt.internal.cjs +21 -0
- package/dist/production/src/lib/prompt/prompt.internal.cjs.map +1 -0
- package/dist/production/src/lib/prompt/prompt.internal.js +21 -0
- package/dist/production/src/lib/prompt/prompt.internal.js.map +1 -0
- package/dist/production/src/lib/prompt/prompt.js +13 -0
- package/dist/production/src/lib/prompt/prompt.js.map +1 -0
- package/dist/production/src/lib/schema/SchemaLoader.cjs +5 -5
- package/dist/production/src/lib/schema/SchemaLoader.cjs.map +1 -1
- package/dist/production/src/lib/schema/SchemaLoader.js.map +1 -1
- package/dist/production/src/lib/schema/SchemaValidationHelper.cjs +2 -2
- package/dist/production/src/lib/schema/SchemaValidationHelper.cjs.map +1 -1
- package/dist/production/src/lib/schema/SchemaValidationHelper.js +2 -2
- package/dist/production/src/lib/schema/SchemaValidationHelper.js.map +1 -1
- package/dist/production/src/lib/schema/SchemaValidationPrinter.cjs +4 -4
- package/dist/production/src/lib/schema/SchemaValidationPrinter.cjs.map +1 -1
- package/dist/production/src/lib/schema/SchemaValidationPrinter.js +4 -4
- package/dist/production/src/lib/schema/SchemaValidationPrinter.js.map +1 -1
- package/dist/production/src/lib/tenant/TenantApiTransport.cjs +160 -0
- package/dist/production/src/lib/tenant/TenantApiTransport.cjs.map +1 -0
- package/dist/production/src/lib/tenant/TenantApiTransport.js +160 -0
- package/dist/production/src/lib/tenant/TenantApiTransport.js.map +1 -0
- package/dist/production/src/lib/tenant/TenantConfigApplier.cjs +139 -0
- package/dist/production/src/lib/tenant/TenantConfigApplier.cjs.map +1 -0
- package/dist/production/src/lib/tenant/TenantConfigApplier.js +139 -0
- package/dist/production/src/lib/tenant/TenantConfigApplier.js.map +1 -0
- package/dist/production/src/lib/tenant/TenantConfigLoader.cjs +32 -0
- package/dist/production/src/lib/tenant/TenantConfigLoader.cjs.map +1 -0
- package/dist/production/src/lib/tenant/TenantConfigLoader.js +32 -0
- package/dist/production/src/lib/tenant/TenantConfigLoader.js.map +1 -0
- package/dist/production/src/lib/tenant/TenantConnectionProvider.cjs +20 -0
- package/dist/production/src/lib/tenant/TenantConnectionProvider.cjs.map +1 -0
- package/dist/production/src/lib/tenant/TenantConnectionProvider.js +20 -0
- package/dist/production/src/lib/tenant/TenantConnectionProvider.js.map +1 -0
- package/dist/production/src/lib/tenant/TenantConnectionResolver.cjs +30 -0
- package/dist/production/src/lib/tenant/TenantConnectionResolver.cjs.map +1 -0
- package/dist/production/src/lib/tenant/TenantConnectionResolver.js +30 -0
- package/dist/production/src/lib/tenant/TenantConnectionResolver.js.map +1 -0
- package/dist/production/src/lib/tenant/authPolicy.cjs +10 -0
- package/dist/production/src/lib/tenant/authPolicy.cjs.map +1 -0
- package/dist/production/src/lib/tenant/authPolicy.js +10 -0
- package/dist/production/src/lib/tenant/authPolicy.js.map +1 -0
- package/dist/production/src/lib/tenant/clients/TenantApiKeyClient.cjs +101 -0
- package/dist/production/src/lib/tenant/clients/TenantApiKeyClient.cjs.map +1 -0
- package/dist/production/src/lib/tenant/clients/TenantApiKeyClient.js +101 -0
- package/dist/production/src/lib/tenant/clients/TenantApiKeyClient.js.map +1 -0
- package/dist/production/src/lib/tenant/clients/TenantMemberClient.cjs +96 -0
- package/dist/production/src/lib/tenant/clients/TenantMemberClient.cjs.map +1 -0
- package/dist/production/src/lib/tenant/clients/TenantMemberClient.js +96 -0
- package/dist/production/src/lib/tenant/clients/TenantMemberClient.js.map +1 -0
- package/dist/production/src/lib/tenant/clients/TenantPersonClient.cjs +162 -0
- package/dist/production/src/lib/tenant/clients/TenantPersonClient.cjs.map +1 -0
- package/dist/production/src/lib/tenant/clients/TenantPersonClient.js +162 -0
- package/dist/production/src/lib/tenant/clients/TenantPersonClient.js.map +1 -0
- package/dist/production/src/lib/tenant/clients/TenantPolicyClient.cjs +135 -0
- package/dist/production/src/lib/tenant/clients/TenantPolicyClient.cjs.map +1 -0
- package/dist/production/src/lib/tenant/clients/TenantPolicyClient.js +135 -0
- package/dist/production/src/lib/tenant/clients/TenantPolicyClient.js.map +1 -0
- package/dist/production/src/lib/tenant/clients/TenantProjectClient.cjs +209 -0
- package/dist/production/src/lib/tenant/clients/TenantProjectClient.cjs.map +1 -0
- package/dist/production/src/lib/tenant/clients/TenantProjectClient.js +209 -0
- package/dist/production/src/lib/tenant/clients/TenantProjectClient.js.map +1 -0
- package/dist/production/src/lib/tenant/clients/index.cjs +21 -0
- package/dist/production/src/lib/tenant/clients/index.cjs.map +1 -0
- package/dist/production/src/lib/tenant/clients/index.js +21 -0
- package/dist/production/src/lib/tenant/clients/index.js.map +1 -0
- package/dist/production/src/lib/tenant/confirmation.cjs +23 -0
- package/dist/production/src/lib/tenant/confirmation.cjs.map +1 -0
- package/dist/production/src/lib/tenant/confirmation.js +23 -0
- package/dist/production/src/lib/tenant/confirmation.js.map +1 -0
- package/dist/production/src/lib/tenant/input/pagination.cjs +24 -0
- package/dist/production/src/lib/tenant/input/pagination.cjs.map +1 -0
- package/dist/production/src/lib/tenant/input/pagination.js +24 -0
- package/dist/production/src/lib/tenant/input/pagination.js.map +1 -0
- package/dist/production/src/lib/tenant/input/value.cjs +71 -0
- package/dist/production/src/lib/tenant/input/value.cjs.map +1 -0
- package/dist/production/src/lib/tenant/input/value.js +71 -0
- package/dist/production/src/lib/tenant/input/value.js.map +1 -0
- package/dist/production/src/lib/tenant/stdin.cjs +13 -0
- package/dist/production/src/lib/tenant/stdin.cjs.map +1 -0
- package/dist/production/src/lib/tenant/stdin.js +13 -0
- package/dist/production/src/lib/tenant/stdin.js.map +1 -0
- package/dist/production/src/lib/tenant/tenantConfig.cjs +5 -0
- package/dist/production/src/lib/tenant/tenantConfig.cjs.map +1 -0
- package/dist/production/src/lib/tenant/tenantConfig.js +5 -0
- package/dist/production/src/lib/tenant/tenantConfig.js.map +1 -0
- package/dist/production/src/lib/transfer/DataTransferClient.cjs +290 -54
- package/dist/production/src/lib/transfer/DataTransferClient.cjs.map +1 -1
- package/dist/production/src/lib/transfer/DataTransferClient.js +292 -56
- package/dist/production/src/lib/transfer/DataTransferClient.js.map +1 -1
- package/dist/production/src/lib/transfer/stdio.cjs +3 -8
- package/dist/production/src/lib/transfer/stdio.cjs.map +1 -1
- package/dist/production/src/lib/transfer/stdio.js +3 -8
- package/dist/production/src/lib/transfer/stdio.js.map +1 -1
- package/dist/production/src/lib/workspace/WorkspaceResolver.cjs +6 -6
- package/dist/production/src/lib/workspace/WorkspaceResolver.cjs.map +1 -1
- package/dist/production/src/lib/workspace/WorkspaceResolver.js.map +1 -1
- package/dist/types/commands/actions/ActionsGetEventCommand.d.ts +7 -5
- package/dist/types/commands/actions/ActionsGetEventCommand.d.ts.map +1 -1
- package/dist/types/commands/actions/ActionsListFailedEventsCommand.d.ts +6 -5
- package/dist/types/commands/actions/ActionsListFailedEventsCommand.d.ts.map +1 -1
- package/dist/types/commands/actions/ActionsListVariablesCommand.d.ts +6 -4
- package/dist/types/commands/actions/ActionsListVariablesCommand.d.ts.map +1 -1
- package/dist/types/commands/actions/ActionsRetryEventCommand.d.ts +7 -5
- package/dist/types/commands/actions/ActionsRetryEventCommand.d.ts.map +1 -1
- package/dist/types/commands/actions/ActionsSetVariablesCommand.d.ts +6 -4
- package/dist/types/commands/actions/ActionsSetVariablesCommand.d.ts.map +1 -1
- package/dist/types/commands/actions/ActionsStopEventCommand.d.ts +7 -5
- package/dist/types/commands/actions/ActionsStopEventCommand.d.ts.map +1 -1
- package/dist/types/commands/deploy/DeployCommand.d.ts +18 -9
- package/dist/types/commands/deploy/DeployCommand.d.ts.map +1 -1
- package/dist/types/commands/deploy/index.d.ts +1 -1
- package/dist/types/commands/deploy/index.d.ts.map +1 -1
- package/dist/types/commands/index.d.ts +6 -5
- package/dist/types/commands/index.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationAmendCommand.d.ts +11 -9
- package/dist/types/commands/migrations/MigrationAmendCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationBlankCommand.d.ts +2 -2
- package/dist/types/commands/migrations/MigrationBlankCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationDescribeCommand.d.ts +3 -3
- package/dist/types/commands/migrations/MigrationDescribeCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationDiffCommand.d.ts +11 -7
- package/dist/types/commands/migrations/MigrationDiffCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationExecuteCommand.d.ts +6 -4
- package/dist/types/commands/migrations/MigrationExecuteCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationInitStateCommand.d.ts +14 -0
- package/dist/types/commands/migrations/MigrationInitStateCommand.d.ts.map +1 -0
- package/dist/types/commands/migrations/MigrationRebaseCommand.d.ts +5 -4
- package/dist/types/commands/migrations/MigrationRebaseCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationSnapshotCommand.d.ts +14 -0
- package/dist/types/commands/migrations/MigrationSnapshotCommand.d.ts.map +1 -0
- package/dist/types/commands/migrations/MigrationStatusCommand.d.ts +12 -6
- package/dist/types/commands/migrations/MigrationStatusCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationVerifySnapshotCommand.d.ts +12 -0
- package/dist/types/commands/migrations/MigrationVerifySnapshotCommand.d.ts.map +1 -0
- package/dist/types/commands/migrations/index.d.ts +10 -7
- package/dist/types/commands/migrations/index.d.ts.map +1 -1
- package/dist/types/commands/misc/CommandsCommand.d.ts +13 -0
- package/dist/types/commands/misc/CommandsCommand.d.ts.map +1 -0
- package/dist/types/commands/misc/VersionCommand.d.ts +11 -4
- package/dist/types/commands/misc/VersionCommand.d.ts.map +1 -1
- package/dist/types/commands/misc/index.d.ts +2 -1
- package/dist/types/commands/misc/index.d.ts.map +1 -1
- package/dist/types/commands/project/ProjectGenerateDocumentationCommand.d.ts +6 -4
- package/dist/types/commands/project/ProjectGenerateDocumentationCommand.d.ts.map +1 -1
- package/dist/types/commands/project/ProjectPrintSchemaCommand.d.ts +3 -3
- package/dist/types/commands/project/ProjectPrintSchemaCommand.d.ts.map +1 -1
- package/dist/types/commands/project/ProjectValidateCommand.d.ts +4 -4
- package/dist/types/commands/project/ProjectValidateCommand.d.ts.map +1 -1
- package/dist/types/commands/project/index.d.ts +3 -3
- package/dist/types/commands/project/index.d.ts.map +1 -1
- package/dist/types/commands/tenant/TenantApplyCommand.d.ts +28 -0
- package/dist/types/commands/tenant/TenantApplyCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/apikey/TenantApiKeyCreateCommand.d.ts +22 -0
- package/dist/types/commands/tenant/apikey/TenantApiKeyCreateCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/apikey/TenantApiKeyDisableCommand.d.ts +17 -0
- package/dist/types/commands/tenant/apikey/TenantApiKeyDisableCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/apikey/TenantApiKeyListCommand.d.ts +15 -0
- package/dist/types/commands/tenant/apikey/TenantApiKeyListCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/apikey/index.d.ts +4 -0
- package/dist/types/commands/tenant/apikey/index.d.ts.map +1 -0
- package/dist/types/commands/tenant/index.d.ts +7 -0
- package/dist/types/commands/tenant/index.d.ts.map +1 -0
- package/dist/types/commands/tenant/member/TenantMemberAddCommand.d.ts +19 -0
- package/dist/types/commands/tenant/member/TenantMemberAddCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/member/TenantMemberInviteCommand.d.ts +28 -0
- package/dist/types/commands/tenant/member/TenantMemberInviteCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/member/TenantMemberInviteUnmanagedCommand.d.ts +36 -0
- package/dist/types/commands/tenant/member/TenantMemberInviteUnmanagedCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/member/TenantMemberListCommand.d.ts +21 -0
- package/dist/types/commands/tenant/member/TenantMemberListCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/member/TenantMemberRemoveCommand.d.ts +17 -0
- package/dist/types/commands/tenant/member/TenantMemberRemoveCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/member/TenantMemberUpdateCommand.d.ts +20 -0
- package/dist/types/commands/tenant/member/TenantMemberUpdateCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/member/index.d.ts +7 -0
- package/dist/types/commands/tenant/member/index.d.ts.map +1 -0
- package/dist/types/commands/tenant/member/memberOptions.d.ts +16 -0
- package/dist/types/commands/tenant/member/memberOptions.d.ts.map +1 -0
- package/dist/types/commands/tenant/member/membershipInput.d.ts +44 -0
- package/dist/types/commands/tenant/member/membershipInput.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantIdentityRoleAddCommand.d.ts +15 -0
- package/dist/types/commands/tenant/person/TenantIdentityRoleAddCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantIdentityRoleRemoveCommand.d.ts +17 -0
- package/dist/types/commands/tenant/person/TenantIdentityRoleRemoveCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantPersonCreateCommand.d.ts +25 -0
- package/dist/types/commands/tenant/person/TenantPersonCreateCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantPersonDisableCommand.d.ts +16 -0
- package/dist/types/commands/tenant/person/TenantPersonDisableCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantPersonListCommand.d.ts +18 -0
- package/dist/types/commands/tenant/person/TenantPersonListCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantPersonResetMfaCommand.d.ts +16 -0
- package/dist/types/commands/tenant/person/TenantPersonResetMfaCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantPersonResetPasswordRequestCommand.d.ts +21 -0
- package/dist/types/commands/tenant/person/TenantPersonResetPasswordRequestCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantPersonSetPasswordCommand.d.ts +20 -0
- package/dist/types/commands/tenant/person/TenantPersonSetPasswordCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantPersonShowCommand.d.ts +14 -0
- package/dist/types/commands/tenant/person/TenantPersonShowCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantPersonSignOutCommand.d.ts +17 -0
- package/dist/types/commands/tenant/person/TenantPersonSignOutCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantPersonUpdateCommand.d.ts +17 -0
- package/dist/types/commands/tenant/person/TenantPersonUpdateCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/TenantSessionCreateCommand.d.ts +18 -0
- package/dist/types/commands/tenant/person/TenantSessionCreateCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/index.d.ts +13 -0
- package/dist/types/commands/tenant/person/index.d.ts.map +1 -0
- package/dist/types/commands/tenant/person/personInput.d.ts +37 -0
- package/dist/types/commands/tenant/person/personInput.d.ts.map +1 -0
- package/dist/types/commands/tenant/policy/TenantAuthLogCommand.d.ts +35 -0
- package/dist/types/commands/tenant/policy/TenantAuthLogCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/policy/TenantMailTemplateAddCommand.d.ts +30 -0
- package/dist/types/commands/tenant/policy/TenantMailTemplateAddCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/policy/TenantMailTemplateListCommand.d.ts +12 -0
- package/dist/types/commands/tenant/policy/TenantMailTemplateListCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/policy/TenantMailTemplateRemoveCommand.d.ts +19 -0
- package/dist/types/commands/tenant/policy/TenantMailTemplateRemoveCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/policy/TenantPolicyCreateCommand.d.ts +17 -0
- package/dist/types/commands/tenant/policy/TenantPolicyCreateCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/policy/TenantPolicyDeleteCommand.d.ts +16 -0
- package/dist/types/commands/tenant/policy/TenantPolicyDeleteCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/policy/TenantPolicyListCommand.d.ts +12 -0
- package/dist/types/commands/tenant/policy/TenantPolicyListCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/policy/TenantPolicyUpdateCommand.d.ts +19 -0
- package/dist/types/commands/tenant/policy/TenantPolicyUpdateCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/policy/index.d.ts +9 -0
- package/dist/types/commands/tenant/policy/index.d.ts.map +1 -0
- package/dist/types/commands/tenant/policy/policyInput.d.ts +41 -0
- package/dist/types/commands/tenant/policy/policyInput.d.ts.map +1 -0
- package/dist/types/commands/tenant/project/TenantConfigShowCommand.d.ts +12 -0
- package/dist/types/commands/tenant/project/TenantConfigShowCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/project/TenantIdpListCommand.d.ts +12 -0
- package/dist/types/commands/tenant/project/TenantIdpListCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/project/TenantProjectCreateCommand.d.ts +22 -0
- package/dist/types/commands/tenant/project/TenantProjectCreateCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/project/TenantProjectListCommand.d.ts +12 -0
- package/dist/types/commands/tenant/project/TenantProjectListCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/project/TenantProjectSecretSetCommand.d.ts +21 -0
- package/dist/types/commands/tenant/project/TenantProjectSecretSetCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/project/TenantProjectShowCommand.d.ts +14 -0
- package/dist/types/commands/tenant/project/TenantProjectShowCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/project/TenantProjectUpdateCommand.d.ts +21 -0
- package/dist/types/commands/tenant/project/TenantProjectUpdateCommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/project/TenantWhoAmICommand.d.ts +12 -0
- package/dist/types/commands/tenant/project/TenantWhoAmICommand.d.ts.map +1 -0
- package/dist/types/commands/tenant/project/index.d.ts +9 -0
- package/dist/types/commands/tenant/project/index.d.ts.map +1 -0
- package/dist/types/commands/tenant/project/jsonConfigOption.d.ts +9 -0
- package/dist/types/commands/tenant/project/jsonConfigOption.d.ts.map +1 -0
- package/dist/types/commands/tenant/tenantOutput.d.ts +7 -0
- package/dist/types/commands/tenant/tenantOutput.d.ts.map +1 -0
- package/dist/types/commands/transfer/ExportCommand.d.ts +10 -4
- package/dist/types/commands/transfer/ExportCommand.d.ts.map +1 -1
- package/dist/types/commands/transfer/ImportCommand.d.ts +17 -5
- package/dist/types/commands/transfer/ImportCommand.d.ts.map +1 -1
- package/dist/types/commands/transfer/TransferCommand.d.ts +16 -4
- package/dist/types/commands/transfer/TransferCommand.d.ts.map +1 -1
- package/dist/types/commands/transfer/index.d.ts +3 -3
- package/dist/types/commands/transfer/index.d.ts.map +1 -1
- package/dist/types/commands/transfer/utils.d.ts +2 -2
- package/dist/types/commands/transfer/utils.d.ts.map +1 -1
- package/dist/types/commands/workspace/WorkspaceUpdateApiCommand.d.ts +27 -4
- package/dist/types/commands/workspace/WorkspaceUpdateApiCommand.d.ts.map +1 -1
- package/dist/types/commands/workspace/index.d.ts +1 -1
- package/dist/types/commands/workspace/index.d.ts.map +1 -1
- package/dist/types/dic.d.ts +145 -36
- package/dist/types/dic.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/lib/SystemClientProvider.d.ts +5 -2
- package/dist/types/lib/SystemClientProvider.d.ts.map +1 -1
- package/dist/types/lib/TenantClientProvider.d.ts +14 -5
- package/dist/types/lib/TenantClientProvider.d.ts.map +1 -1
- package/dist/types/lib/VersionChecker.d.ts +1 -1
- package/dist/types/lib/VersionChecker.d.ts.map +1 -1
- package/dist/types/lib/actions/ActionsClient.d.ts +17 -8
- package/dist/types/lib/actions/ActionsClient.d.ts.map +1 -1
- package/dist/types/lib/actions/resolveActionsClient.d.ts +7 -0
- package/dist/types/lib/actions/resolveActionsClient.d.ts.map +1 -0
- package/dist/types/lib/actions/runActionMutationBatch.d.ts +23 -0
- package/dist/types/lib/actions/runActionMutationBatch.d.ts.map +1 -0
- package/dist/types/lib/admin/AdminClient.d.ts +2 -1
- package/dist/types/lib/admin/AdminClient.d.ts.map +1 -1
- package/dist/types/lib/admin/AdminDeployer.d.ts +6 -4
- package/dist/types/lib/admin/AdminDeployer.d.ts.map +1 -1
- package/dist/types/lib/dsn.d.ts.map +1 -1
- package/dist/types/lib/errors/TransportError.d.ts +29 -0
- package/dist/types/lib/errors/TransportError.d.ts.map +1 -0
- package/dist/types/lib/errors/index.d.ts +2 -0
- package/dist/types/lib/errors/index.d.ts.map +1 -0
- package/dist/types/lib/fs/DockerComposeManager.d.ts +2 -2
- package/dist/types/lib/fs/DockerComposeManager.d.ts.map +1 -1
- package/dist/types/lib/fs/FileSystem.d.ts.map +1 -1
- package/dist/types/lib/fs/YamlHandler.d.ts +2 -2
- package/dist/types/lib/fs/YamlHandler.d.ts.map +1 -1
- package/dist/types/lib/js/EsBuildBuilder.d.ts +1 -1
- package/dist/types/lib/js/EsBuildBuilder.d.ts.map +1 -1
- package/dist/types/lib/js/EvalExecutor.d.ts +1 -1
- package/dist/types/lib/js/EvalExecutor.d.ts.map +1 -1
- package/dist/types/lib/js/JsCodeRunner.d.ts +2 -2
- package/dist/types/lib/js/JsCodeRunner.d.ts.map +1 -1
- package/dist/types/lib/maskToken.d.ts +1 -0
- package/dist/types/lib/maskToken.d.ts.map +1 -1
- package/dist/types/lib/migrations/MigrationExecutionFacade.d.ts +18 -8
- package/dist/types/lib/migrations/MigrationExecutionFacade.d.ts.map +1 -1
- package/dist/types/lib/migrations/MigrationPrinter.d.ts +28 -2
- package/dist/types/lib/migrations/MigrationPrinter.d.ts.map +1 -1
- package/dist/types/lib/migrations/MigrationRebaseFacade.d.ts +5 -4
- package/dist/types/lib/migrations/MigrationRebaseFacade.d.ts.map +1 -1
- package/dist/types/lib/migrations/MigrationSnapshotFacade.d.ts +31 -0
- package/dist/types/lib/migrations/MigrationSnapshotFacade.d.ts.map +1 -0
- package/dist/types/lib/migrations/MigrationsStatusFacade.d.ts +15 -4
- package/dist/types/lib/migrations/MigrationsStatusFacade.d.ts.map +1 -1
- package/dist/types/lib/migrations/MigrationsValidator.d.ts +3 -1
- package/dist/types/lib/migrations/MigrationsValidator.d.ts.map +1 -1
- package/dist/types/lib/project/RemoteProject.d.ts.map +1 -1
- package/dist/types/lib/project/RemoteProjectProvider.d.ts +1 -1
- package/dist/types/lib/project/RemoteProjectProvider.d.ts.map +1 -1
- package/dist/types/lib/project/RemoteProjectResolver.d.ts +2 -2
- package/dist/types/lib/project/RemoteProjectResolver.d.ts.map +1 -1
- package/dist/types/lib/project/docs/components/EntityInfo.d.ts +1 -1
- package/dist/types/lib/project/docs/components/EntityInfo.d.ts.map +1 -1
- package/dist/types/lib/project/docs/components/EntityLink.d.ts.map +1 -1
- package/dist/types/lib/project/docs/components/FieldLink.d.ts.map +1 -1
- package/dist/types/lib/project/docs/components/FieldPermissions.d.ts.map +1 -1
- package/dist/types/lib/project/docs/components/FieldType.d.ts.map +1 -1
- package/dist/types/lib/project/docs/components/OnDelete.d.ts +1 -1
- package/dist/types/lib/project/docs/components/OnDelete.d.ts.map +1 -1
- package/dist/types/lib/project/docs/components/ProjectInfo.d.ts.map +1 -1
- package/dist/types/lib/project/docs/components/SinglePermission.d.ts.map +1 -1
- package/dist/types/lib/project/docs/components/utils.d.ts.map +1 -1
- package/dist/types/lib/project/docs/projectDescribe.d.ts.map +1 -1
- package/dist/types/lib/prompt/index.d.ts +2 -0
- package/dist/types/lib/prompt/index.d.ts.map +1 -0
- package/dist/types/lib/prompt/prompt.d.ts +6 -0
- package/dist/types/lib/prompt/prompt.d.ts.map +1 -0
- package/dist/types/lib/prompt/prompt.internal.d.ts +37 -0
- package/dist/types/lib/prompt/prompt.internal.d.ts.map +1 -0
- package/dist/types/lib/prompt/prompt.test.d.ts +2 -0
- package/dist/types/lib/prompt/prompt.test.d.ts.map +1 -0
- package/dist/types/lib/schema/SchemaLoader.d.ts +2 -2
- package/dist/types/lib/schema/SchemaLoader.d.ts.map +1 -1
- package/dist/types/lib/schema/SchemaValidationHelper.d.ts +2 -1
- package/dist/types/lib/schema/SchemaValidationHelper.d.ts.map +1 -1
- package/dist/types/lib/schema/SchemaValidationPrinter.d.ts +2 -1
- package/dist/types/lib/schema/SchemaValidationPrinter.d.ts.map +1 -1
- package/dist/types/lib/schema/collectReferences.d.ts.map +1 -1
- package/dist/types/lib/stream.d.ts.map +1 -1
- package/dist/types/lib/tenant/TenantApiTransport.d.ts +49 -0
- package/dist/types/lib/tenant/TenantApiTransport.d.ts.map +1 -0
- package/dist/types/lib/tenant/TenantConfigApplier.d.ts +53 -0
- package/dist/types/lib/tenant/TenantConfigApplier.d.ts.map +1 -0
- package/dist/types/lib/tenant/TenantConfigLoader.d.ts +16 -0
- package/dist/types/lib/tenant/TenantConfigLoader.d.ts.map +1 -0
- package/dist/types/lib/tenant/TenantConnection.d.ts +8 -0
- package/dist/types/lib/tenant/TenantConnection.d.ts.map +1 -0
- package/dist/types/lib/tenant/TenantConnectionProvider.d.ts +8 -0
- package/dist/types/lib/tenant/TenantConnectionProvider.d.ts.map +1 -0
- package/dist/types/lib/tenant/TenantConnectionResolver.d.ts +8 -0
- package/dist/types/lib/tenant/TenantConnectionResolver.d.ts.map +1 -0
- package/dist/types/lib/tenant/authPolicy.d.ts +17 -0
- package/dist/types/lib/tenant/authPolicy.d.ts.map +1 -0
- package/dist/types/lib/tenant/clients/TenantApiKeyClient.d.ts +56 -0
- package/dist/types/lib/tenant/clients/TenantApiKeyClient.d.ts.map +1 -0
- package/dist/types/lib/tenant/clients/TenantMemberClient.d.ts +68 -0
- package/dist/types/lib/tenant/clients/TenantMemberClient.d.ts.map +1 -0
- package/dist/types/lib/tenant/clients/TenantPersonClient.d.ts +97 -0
- package/dist/types/lib/tenant/clients/TenantPersonClient.d.ts.map +1 -0
- package/dist/types/lib/tenant/clients/TenantPolicyClient.d.ts +75 -0
- package/dist/types/lib/tenant/clients/TenantPolicyClient.d.ts.map +1 -0
- package/dist/types/lib/tenant/clients/TenantProjectClient.d.ts +162 -0
- package/dist/types/lib/tenant/clients/TenantProjectClient.d.ts.map +1 -0
- package/dist/types/lib/tenant/clients/index.d.ts +21 -0
- package/dist/types/lib/tenant/clients/index.d.ts.map +1 -0
- package/dist/types/lib/tenant/confirmation.d.ts +14 -0
- package/dist/types/lib/tenant/confirmation.d.ts.map +1 -0
- package/dist/types/lib/tenant/input/index.d.ts +3 -0
- package/dist/types/lib/tenant/input/index.d.ts.map +1 -0
- package/dist/types/lib/tenant/input/pagination.d.ts +7 -0
- package/dist/types/lib/tenant/input/pagination.d.ts.map +1 -0
- package/dist/types/lib/tenant/input/value.d.ts +45 -0
- package/dist/types/lib/tenant/input/value.d.ts.map +1 -0
- package/dist/types/lib/tenant/stdin.d.ts +8 -0
- package/dist/types/lib/tenant/stdin.d.ts.map +1 -0
- package/dist/types/lib/tenant/tenantConfig.d.ts +148 -0
- package/dist/types/lib/tenant/tenantConfig.d.ts.map +1 -0
- package/dist/types/lib/transfer/DataTransferClient.d.ts +9 -3
- package/dist/types/lib/transfer/DataTransferClient.d.ts.map +1 -1
- package/dist/types/lib/transfer/stdio.d.ts +3 -1
- package/dist/types/lib/transfer/stdio.d.ts.map +1 -1
- package/dist/types/lib/workspace/WorkspaceResolver.d.ts +2 -2
- package/dist/types/lib/workspace/WorkspaceResolver.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +33 -15
- package/src/commands/actions/ActionsGetEventCommand.ts +39 -17
- package/src/commands/actions/ActionsListFailedEventsCommand.ts +25 -44
- package/src/commands/actions/ActionsListVariablesCommand.ts +16 -14
- package/src/commands/actions/ActionsRetryEventCommand.ts +37 -19
- package/src/commands/actions/ActionsSetVariablesCommand.ts +57 -29
- package/src/commands/actions/ActionsStopEventCommand.ts +37 -19
- package/src/commands/deploy/DeployCommand.ts +82 -38
- package/src/commands/deploy/index.ts +1 -1
- package/src/commands/index.ts +6 -5
- package/src/commands/migrations/MigrationAmendCommand.ts +104 -33
- package/src/commands/migrations/MigrationBlankCommand.ts +3 -3
- package/src/commands/migrations/MigrationDescribeCommand.ts +10 -5
- package/src/commands/migrations/MigrationDiffCommand.ts +122 -26
- package/src/commands/migrations/MigrationExecuteCommand.ts +17 -5
- package/src/commands/migrations/MigrationInitStateCommand.ts +47 -0
- package/src/commands/migrations/MigrationRebaseCommand.ts +29 -7
- package/src/commands/migrations/MigrationSnapshotCommand.ts +69 -0
- package/src/commands/migrations/MigrationStatusCommand.ts +22 -14
- package/src/commands/migrations/MigrationVerifySnapshotCommand.ts +27 -0
- package/src/commands/migrations/index.ts +10 -7
- package/src/commands/misc/CommandsCommand.ts +74 -0
- package/src/commands/misc/VersionCommand.ts +13 -6
- package/src/commands/misc/index.ts +2 -1
- package/src/commands/project/ProjectGenerateDocumentationCommand.ts +15 -16
- package/src/commands/project/ProjectPrintSchemaCommand.ts +21 -19
- package/src/commands/project/ProjectValidateCommand.ts +53 -19
- package/src/commands/project/index.ts +3 -3
- package/src/commands/tenant/TenantApplyCommand.ts +89 -0
- package/src/commands/tenant/apikey/TenantApiKeyCreateCommand.ts +102 -0
- package/src/commands/tenant/apikey/TenantApiKeyDisableCommand.ts +47 -0
- package/src/commands/tenant/apikey/TenantApiKeyListCommand.ts +64 -0
- package/src/commands/tenant/apikey/index.ts +4 -0
- package/src/commands/tenant/index.ts +6 -0
- package/src/commands/tenant/member/TenantMemberAddCommand.ts +48 -0
- package/src/commands/tenant/member/TenantMemberInviteCommand.ts +88 -0
- package/src/commands/tenant/member/TenantMemberInviteUnmanagedCommand.ts +135 -0
- package/src/commands/tenant/member/TenantMemberListCommand.ts +94 -0
- package/src/commands/tenant/member/TenantMemberRemoveCommand.ts +48 -0
- package/src/commands/tenant/member/TenantMemberUpdateCommand.ts +58 -0
- package/src/commands/tenant/member/index.ts +9 -0
- package/src/commands/tenant/member/memberOptions.ts +29 -0
- package/src/commands/tenant/member/membershipInput.ts +155 -0
- package/src/commands/tenant/person/TenantIdentityRoleAddCommand.ts +44 -0
- package/src/commands/tenant/person/TenantIdentityRoleRemoveCommand.ts +54 -0
- package/src/commands/tenant/person/TenantPersonCreateCommand.ts +98 -0
- package/src/commands/tenant/person/TenantPersonDisableCommand.ts +46 -0
- package/src/commands/tenant/person/TenantPersonListCommand.ts +68 -0
- package/src/commands/tenant/person/TenantPersonResetMfaCommand.ts +59 -0
- package/src/commands/tenant/person/TenantPersonResetPasswordRequestCommand.ts +67 -0
- package/src/commands/tenant/person/TenantPersonSetPasswordCommand.ts +66 -0
- package/src/commands/tenant/person/TenantPersonShowCommand.ts +70 -0
- package/src/commands/tenant/person/TenantPersonSignOutCommand.ts +60 -0
- package/src/commands/tenant/person/TenantPersonUpdateCommand.ts +55 -0
- package/src/commands/tenant/person/TenantSessionCreateCommand.ts +79 -0
- package/src/commands/tenant/person/index.ts +15 -0
- package/src/commands/tenant/person/personInput.ts +112 -0
- package/src/commands/tenant/policy/TenantAuthLogCommand.ts +141 -0
- package/src/commands/tenant/policy/TenantMailTemplateAddCommand.ts +92 -0
- package/src/commands/tenant/policy/TenantMailTemplateListCommand.ts +50 -0
- package/src/commands/tenant/policy/TenantMailTemplateRemoveCommand.ts +63 -0
- package/src/commands/tenant/policy/TenantPolicyCreateCommand.ts +46 -0
- package/src/commands/tenant/policy/TenantPolicyDeleteCommand.ts +42 -0
- package/src/commands/tenant/policy/TenantPolicyListCommand.ts +39 -0
- package/src/commands/tenant/policy/TenantPolicyUpdateCommand.ts +51 -0
- package/src/commands/tenant/policy/index.ts +9 -0
- package/src/commands/tenant/policy/policyInput.ts +210 -0
- package/src/commands/tenant/project/TenantConfigShowCommand.ts +28 -0
- package/src/commands/tenant/project/TenantIdpListCommand.ts +27 -0
- package/src/commands/tenant/project/TenantProjectCreateCommand.ts +67 -0
- package/src/commands/tenant/project/TenantProjectListCommand.ts +27 -0
- package/src/commands/tenant/project/TenantProjectSecretSetCommand.ts +63 -0
- package/src/commands/tenant/project/TenantProjectShowCommand.ts +29 -0
- package/src/commands/tenant/project/TenantProjectUpdateCommand.ts +66 -0
- package/src/commands/tenant/project/TenantWhoAmICommand.ts +22 -0
- package/src/commands/tenant/project/index.ts +9 -0
- package/src/commands/tenant/project/jsonConfigOption.ts +33 -0
- package/src/commands/tenant/tenantOutput.ts +35 -0
- package/src/commands/transfer/ExportCommand.ts +48 -31
- package/src/commands/transfer/ImportCommand.ts +90 -37
- package/src/commands/transfer/TransferCommand.ts +97 -37
- package/src/commands/transfer/index.ts +3 -3
- package/src/commands/transfer/utils.ts +12 -11
- package/src/commands/workspace/WorkspaceUpdateApiCommand.ts +136 -37
- package/src/commands/workspace/index.ts +1 -1
- package/src/dic.ts +290 -73
- package/src/index.ts +1 -0
- package/src/lib/SystemClientProvider.ts +76 -2
- package/src/lib/TenantClientProvider.ts +44 -6
- package/src/lib/VersionChecker.ts +2 -2
- package/src/lib/actions/ActionsClient.ts +38 -14
- package/src/lib/actions/resolveActionsClient.ts +15 -0
- package/src/lib/actions/runActionMutationBatch.ts +69 -0
- package/src/lib/admin/AdminClient.ts +40 -13
- package/src/lib/admin/AdminDeployer.ts +7 -5
- package/src/lib/errors/TransportError.ts +260 -0
- package/src/lib/errors/index.ts +1 -0
- package/src/lib/fs/DockerComposeManager.ts +2 -2
- package/src/lib/fs/YamlHandler.ts +2 -2
- package/src/lib/js/EsBuildBuilder.ts +1 -1
- package/src/lib/js/EvalExecutor.ts +1 -1
- package/src/lib/js/JsCodeRunner.ts +2 -2
- package/src/lib/maskToken.ts +9 -1
- package/src/lib/migrations/MigrationExecutionFacade.ts +203 -51
- package/src/lib/migrations/MigrationPrinter.ts +101 -65
- package/src/lib/migrations/MigrationRebaseFacade.ts +12 -4
- package/src/lib/migrations/MigrationSnapshotFacade.ts +223 -0
- package/src/lib/migrations/MigrationsStatusFacade.ts +19 -5
- package/src/lib/migrations/MigrationsValidator.ts +5 -3
- package/src/lib/project/RemoteProjectProvider.ts +7 -2
- package/src/lib/project/RemoteProjectResolver.ts +3 -3
- package/src/lib/project/docs/components/EntityInfo.tsx +6 -6
- package/src/lib/project/docs/components/EntityLink.tsx +1 -1
- package/src/lib/project/docs/components/FieldLink.tsx +2 -2
- package/src/lib/project/docs/components/FieldPermissions.tsx +1 -1
- package/src/lib/project/docs/components/FieldType.tsx +2 -2
- package/src/lib/project/docs/components/OnDelete.tsx +3 -3
- package/src/lib/project/docs/components/ProjectInfo.tsx +3 -3
- package/src/lib/project/docs/projectDescribe.tsx +2 -2
- package/src/lib/prompt/index.ts +1 -0
- package/src/lib/prompt/prompt.internal.ts +69 -0
- package/src/lib/prompt/prompt.test.ts +100 -0
- package/src/lib/prompt/prompt.ts +23 -0
- package/src/lib/schema/SchemaLoader.ts +2 -2
- package/src/lib/schema/SchemaValidationHelper.ts +9 -3
- package/src/lib/schema/SchemaValidationPrinter.ts +5 -4
- package/src/lib/tenant/TenantApiTransport.ts +209 -0
- package/src/lib/tenant/TenantConfigApplier.ts +241 -0
- package/src/lib/tenant/TenantConfigLoader.ts +41 -0
- package/src/lib/tenant/TenantConnection.ts +8 -0
- package/src/lib/tenant/TenantConnectionProvider.ts +21 -0
- package/src/lib/tenant/TenantConnectionResolver.ts +31 -0
- package/src/lib/tenant/authPolicy.ts +20 -0
- package/src/lib/tenant/clients/README.md +84 -0
- package/src/lib/tenant/clients/TenantApiKeyClient.ts +182 -0
- package/src/lib/tenant/clients/TenantMemberClient.ts +199 -0
- package/src/lib/tenant/clients/TenantPersonClient.ts +306 -0
- package/src/lib/tenant/clients/TenantPolicyClient.ts +244 -0
- package/src/lib/tenant/clients/TenantProjectClient.ts +425 -0
- package/src/lib/tenant/clients/index.ts +29 -0
- package/src/lib/tenant/confirmation.ts +32 -0
- package/src/lib/tenant/input/index.ts +2 -0
- package/src/lib/tenant/input/pagination.ts +39 -0
- package/src/lib/tenant/input/value.ts +149 -0
- package/src/lib/tenant/stdin.ts +16 -0
- package/src/lib/tenant/tenantConfig.ts +222 -0
- package/src/lib/transfer/DataTransferClient.ts +356 -61
- package/src/lib/transfer/stdio.ts +5 -7
- package/src/lib/workspace/WorkspaceResolver.ts +2 -2
- package/src/run.ts +25 -9
- package/src/tsconfig.json +1 -0
- package/tenant.config.example.ts +92 -0
- package/tests/cases/unit/MigrationAmendCommand.test.ts +171 -0
- package/tests/cases/unit/MigrationDiffCommand.test.ts +182 -0
- package/tests/cases/unit/MigrationExecuteCommand.test.ts +58 -0
- package/tests/cases/unit/MigrationExecutionFacade.test.ts +368 -0
- package/tests/cases/unit/MigrationInitStateCommand.test.ts +72 -0
- package/tests/cases/unit/MigrationRebaseCommand.test.ts +59 -0
- package/tests/cases/unit/MigrationRebaseFacade.test.ts +87 -0
- package/tests/cases/unit/MigrationSnapshotFacade.test.ts +305 -0
- package/tests/cases/unit/MigrationStatusCommand.test.ts +197 -0
- package/tests/cases/unit/MigrationsValidator.test.ts +61 -0
- package/tests/cases/unit/actions.test.ts +802 -0
- package/tests/cases/unit/cli-process.test.ts +266 -0
- package/tests/cases/unit/command-registry.test.ts +214 -0
- package/tests/cases/unit/deploy.test.ts +505 -0
- package/tests/cases/unit/migration-transport.test.ts +156 -0
- package/tests/cases/unit/project.test.ts +223 -0
- package/tests/cases/unit/structured-output.test.ts +189 -0
- package/tests/cases/unit/tenant-apikey.test.ts +645 -0
- package/tests/cases/unit/tenant-apply-command.test.ts +247 -0
- package/tests/cases/unit/tenant-clients.test.ts +130 -0
- package/tests/cases/unit/tenant-connection.test.ts +91 -0
- package/tests/cases/unit/tenant-input.test.ts +275 -0
- package/tests/cases/unit/tenant-member.test.ts +683 -0
- package/tests/cases/unit/tenant-person.test.ts +857 -0
- package/tests/cases/unit/tenant-policy.test.ts +799 -0
- package/tests/cases/unit/tenant-project.test.ts +634 -0
- package/tests/cases/unit/tenant-transport.test.ts +322 -0
- package/tests/cases/unit/transfer.test.ts +714 -0
- package/tests/cases/unit/transport-errors.test.ts +78 -0
- package/tests/cases/unit/workspace-update-api.test.ts +152 -0
- package/tests/tenantConfigApplier.test.ts +483 -0
- package/dist/development/src/lib/tenant/TenantClient.cjs +0 -41
- package/dist/development/src/lib/tenant/TenantClient.cjs.map +0 -1
- package/dist/development/src/lib/tenant/TenantClient.js +0 -41
- package/dist/development/src/lib/tenant/TenantClient.js.map +0 -1
- package/dist/production/src/lib/tenant/TenantClient.cjs +0 -41
- package/dist/production/src/lib/tenant/TenantClient.cjs.map +0 -1
- package/dist/production/src/lib/tenant/TenantClient.js +0 -41
- package/dist/production/src/lib/tenant/TenantClient.js.map +0 -1
- package/dist/types/lib/tenant/TenantClient.d.ts +0 -9
- package/dist/types/lib/tenant/TenantClient.d.ts.map +0 -1
- package/src/lib/tenant/TenantClient.ts +0 -40
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const cliCommon = require("@contember/cli-common");
|
|
4
|
+
const confirmation = require("../../../lib/tenant/confirmation.cjs");
|
|
5
|
+
const tenantOutput = require("../tenantOutput.cjs");
|
|
6
|
+
const memberOptions = require("./memberOptions.cjs");
|
|
7
|
+
class TenantMemberRemoveCommand extends cliCommon.Command {
|
|
8
|
+
constructor(tenantClientProvider) {
|
|
9
|
+
super();
|
|
10
|
+
this.tenantClientProvider = tenantClientProvider;
|
|
11
|
+
}
|
|
12
|
+
configure(configuration) {
|
|
13
|
+
configuration.description("Remove an identity from a project");
|
|
14
|
+
configuration.option("project").valueRequired().required().description("Project slug.");
|
|
15
|
+
configuration.option("identity").valueRequired().required().description("Identity id of the member to remove.");
|
|
16
|
+
configuration.option("yes").valueNone().description("Do not ask for confirmation.");
|
|
17
|
+
}
|
|
18
|
+
async execute(input, output) {
|
|
19
|
+
const projectSlug = memberOptions.requireOptionValue(input.getOption("project"), "project");
|
|
20
|
+
const identityId = memberOptions.requireOptionValue(input.getOption("identity"), "identity");
|
|
21
|
+
await confirmation.requireConfirmation({
|
|
22
|
+
yes: input.getOption("yes") === true,
|
|
23
|
+
output,
|
|
24
|
+
warning: `Identity ${identityId} will lose all its memberships in project ${projectSlug}.`
|
|
25
|
+
});
|
|
26
|
+
output.info(`Removing identity ${identityId} from project ${projectSlug}`);
|
|
27
|
+
await this.tenantClientProvider.member().removeProjectMember(projectSlug, identityId);
|
|
28
|
+
output.data(
|
|
29
|
+
{ projectSlug, identityId, removed: true },
|
|
30
|
+
{ human: (it) => `Identity ${tenantOutput.humanText(it.identityId)} was removed from ${tenantOutput.humanText(it.projectSlug)}.`, quiet: (it) => it.identityId }
|
|
31
|
+
);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.TenantMemberRemoveCommand = TenantMemberRemoveCommand;
|
|
35
|
+
//# sourceMappingURL=TenantMemberRemoveCommand.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantMemberRemoveCommand.cjs","sources":["../../../../../../../packages/cli/src/commands/tenant/member/TenantMemberRemoveCommand.ts"],"sourcesContent":["import { Command, CommandConfiguration, Input, Output } from '@contember/cli-common'\nimport { TenantClientProvider } from '../../../lib/TenantClientProvider.js'\nimport { requireConfirmation } from '../../../lib/tenant/confirmation.js'\nimport { humanText } from '../tenantOutput.js'\nimport { requireOptionValue } from './memberOptions.js'\n\ntype Args = {}\n\ntype Options = {\n\tproject?: string\n\tidentity?: string\n\tyes?: boolean\n}\n\n/** `tenant member remove` */\nexport class TenantMemberRemoveCommand extends Command<Args, Options> {\n\tconstructor(\n\t\tprivate readonly tenantClientProvider: TenantClientProvider,\n\t) {\n\t\tsuper()\n\t}\n\n\tprotected configure(configuration: CommandConfiguration<Args, Options>): void {\n\t\tconfiguration.description('Remove an identity from a project')\n\t\tconfiguration.option('project').valueRequired().required().description('Project slug.')\n\t\tconfiguration.option('identity').valueRequired().required().description('Identity id of the member to remove.')\n\t\tconfiguration.option('yes').valueNone().description('Do not ask for confirmation.')\n\t}\n\n\tprotected async execute(input: Input<Args, Options>, output: Output): Promise<number | void> {\n\t\tconst projectSlug = requireOptionValue(input.getOption('project'), 'project')\n\t\tconst identityId = requireOptionValue(input.getOption('identity'), 'identity')\n\n\t\tawait requireConfirmation({\n\t\t\tyes: input.getOption('yes') === true,\n\t\t\toutput,\n\t\t\twarning: `Identity ${identityId} will lose all its memberships in project ${projectSlug}.`,\n\t\t})\n\n\t\toutput.info(`Removing identity ${identityId} from project ${projectSlug}`)\n\t\tawait this.tenantClientProvider.member().removeProjectMember(projectSlug, identityId)\n\n\t\toutput.data(\n\t\t\t{ projectSlug, identityId, removed: true },\n\t\t\t{ human: it => `Identity ${humanText(it.identityId)} was removed from ${humanText(it.projectSlug)}.`, quiet: it => it.identityId },\n\t\t)\n\t}\n}\n"],"names":["Command","requireOptionValue","requireConfirmation","humanText"],"mappings":";;;;;;AAeO,MAAM,kCAAkCA,UAAAA,QAAuB;AAAA,EACrE,YACkB,sBAChB;AACD,UAAA;AAFiB,SAAA,uBAAA;AAAA,EAGlB;AAAA,EAEU,UAAU,eAA0D;AAC7E,kBAAc,YAAY,mCAAmC;AAC7D,kBAAc,OAAO,SAAS,EAAE,cAAA,EAAgB,SAAA,EAAW,YAAY,eAAe;AACtF,kBAAc,OAAO,UAAU,EAAE,cAAA,EAAgB,SAAA,EAAW,YAAY,sCAAsC;AAC9G,kBAAc,OAAO,KAAK,EAAE,UAAA,EAAY,YAAY,8BAA8B;AAAA,EACnF;AAAA,EAEA,MAAgB,QAAQ,OAA6B,QAAwC;AAC5F,UAAM,cAAcC,cAAAA,mBAAmB,MAAM,UAAU,SAAS,GAAG,SAAS;AAC5E,UAAM,aAAaA,cAAAA,mBAAmB,MAAM,UAAU,UAAU,GAAG,UAAU;AAE7E,UAAMC,iCAAoB;AAAA,MACzB,KAAK,MAAM,UAAU,KAAK,MAAM;AAAA,MAChC;AAAA,MACA,SAAS,YAAY,UAAU,6CAA6C,WAAW;AAAA,IAAA,CACvF;AAED,WAAO,KAAK,qBAAqB,UAAU,iBAAiB,WAAW,EAAE;AACzE,UAAM,KAAK,qBAAqB,OAAA,EAAS,oBAAoB,aAAa,UAAU;AAEpF,WAAO;AAAA,MACN,EAAE,aAAa,YAAY,SAAS,KAAA;AAAA,MACpC,EAAE,OAAO,CAAA,OAAM,YAAYC,uBAAU,GAAG,UAAU,CAAC,qBAAqBA,aAAAA,UAAU,GAAG,WAAW,CAAC,KAAK,OAAO,CAAA,OAAM,GAAG,WAAA;AAAA,IAAW;AAAA,EAEnI;AACD;;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Command } from "@contember/cli-common";
|
|
2
|
+
import { requireConfirmation } from "../../../lib/tenant/confirmation.js";
|
|
3
|
+
import { humanText } from "../tenantOutput.js";
|
|
4
|
+
import { requireOptionValue } from "./memberOptions.js";
|
|
5
|
+
class TenantMemberRemoveCommand extends Command {
|
|
6
|
+
constructor(tenantClientProvider) {
|
|
7
|
+
super();
|
|
8
|
+
this.tenantClientProvider = tenantClientProvider;
|
|
9
|
+
}
|
|
10
|
+
configure(configuration) {
|
|
11
|
+
configuration.description("Remove an identity from a project");
|
|
12
|
+
configuration.option("project").valueRequired().required().description("Project slug.");
|
|
13
|
+
configuration.option("identity").valueRequired().required().description("Identity id of the member to remove.");
|
|
14
|
+
configuration.option("yes").valueNone().description("Do not ask for confirmation.");
|
|
15
|
+
}
|
|
16
|
+
async execute(input, output) {
|
|
17
|
+
const projectSlug = requireOptionValue(input.getOption("project"), "project");
|
|
18
|
+
const identityId = requireOptionValue(input.getOption("identity"), "identity");
|
|
19
|
+
await requireConfirmation({
|
|
20
|
+
yes: input.getOption("yes") === true,
|
|
21
|
+
output,
|
|
22
|
+
warning: `Identity ${identityId} will lose all its memberships in project ${projectSlug}.`
|
|
23
|
+
});
|
|
24
|
+
output.info(`Removing identity ${identityId} from project ${projectSlug}`);
|
|
25
|
+
await this.tenantClientProvider.member().removeProjectMember(projectSlug, identityId);
|
|
26
|
+
output.data(
|
|
27
|
+
{ projectSlug, identityId, removed: true },
|
|
28
|
+
{ human: (it) => `Identity ${humanText(it.identityId)} was removed from ${humanText(it.projectSlug)}.`, quiet: (it) => it.identityId }
|
|
29
|
+
);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export {
|
|
33
|
+
TenantMemberRemoveCommand
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=TenantMemberRemoveCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantMemberRemoveCommand.js","sources":["../../../../../../../packages/cli/src/commands/tenant/member/TenantMemberRemoveCommand.ts"],"sourcesContent":["import { Command, CommandConfiguration, Input, Output } from '@contember/cli-common'\nimport { TenantClientProvider } from '../../../lib/TenantClientProvider.js'\nimport { requireConfirmation } from '../../../lib/tenant/confirmation.js'\nimport { humanText } from '../tenantOutput.js'\nimport { requireOptionValue } from './memberOptions.js'\n\ntype Args = {}\n\ntype Options = {\n\tproject?: string\n\tidentity?: string\n\tyes?: boolean\n}\n\n/** `tenant member remove` */\nexport class TenantMemberRemoveCommand extends Command<Args, Options> {\n\tconstructor(\n\t\tprivate readonly tenantClientProvider: TenantClientProvider,\n\t) {\n\t\tsuper()\n\t}\n\n\tprotected configure(configuration: CommandConfiguration<Args, Options>): void {\n\t\tconfiguration.description('Remove an identity from a project')\n\t\tconfiguration.option('project').valueRequired().required().description('Project slug.')\n\t\tconfiguration.option('identity').valueRequired().required().description('Identity id of the member to remove.')\n\t\tconfiguration.option('yes').valueNone().description('Do not ask for confirmation.')\n\t}\n\n\tprotected async execute(input: Input<Args, Options>, output: Output): Promise<number | void> {\n\t\tconst projectSlug = requireOptionValue(input.getOption('project'), 'project')\n\t\tconst identityId = requireOptionValue(input.getOption('identity'), 'identity')\n\n\t\tawait requireConfirmation({\n\t\t\tyes: input.getOption('yes') === true,\n\t\t\toutput,\n\t\t\twarning: `Identity ${identityId} will lose all its memberships in project ${projectSlug}.`,\n\t\t})\n\n\t\toutput.info(`Removing identity ${identityId} from project ${projectSlug}`)\n\t\tawait this.tenantClientProvider.member().removeProjectMember(projectSlug, identityId)\n\n\t\toutput.data(\n\t\t\t{ projectSlug, identityId, removed: true },\n\t\t\t{ human: it => `Identity ${humanText(it.identityId)} was removed from ${humanText(it.projectSlug)}.`, quiet: it => it.identityId },\n\t\t)\n\t}\n}\n"],"names":[],"mappings":";;;;AAeO,MAAM,kCAAkC,QAAuB;AAAA,EACrE,YACkB,sBAChB;AACD,UAAA;AAFiB,SAAA,uBAAA;AAAA,EAGlB;AAAA,EAEU,UAAU,eAA0D;AAC7E,kBAAc,YAAY,mCAAmC;AAC7D,kBAAc,OAAO,SAAS,EAAE,cAAA,EAAgB,SAAA,EAAW,YAAY,eAAe;AACtF,kBAAc,OAAO,UAAU,EAAE,cAAA,EAAgB,SAAA,EAAW,YAAY,sCAAsC;AAC9G,kBAAc,OAAO,KAAK,EAAE,UAAA,EAAY,YAAY,8BAA8B;AAAA,EACnF;AAAA,EAEA,MAAgB,QAAQ,OAA6B,QAAwC;AAC5F,UAAM,cAAc,mBAAmB,MAAM,UAAU,SAAS,GAAG,SAAS;AAC5E,UAAM,aAAa,mBAAmB,MAAM,UAAU,UAAU,GAAG,UAAU;AAE7E,UAAM,oBAAoB;AAAA,MACzB,KAAK,MAAM,UAAU,KAAK,MAAM;AAAA,MAChC;AAAA,MACA,SAAS,YAAY,UAAU,6CAA6C,WAAW;AAAA,IAAA,CACvF;AAED,WAAO,KAAK,qBAAqB,UAAU,iBAAiB,WAAW,EAAE;AACzE,UAAM,KAAK,qBAAqB,OAAA,EAAS,oBAAoB,aAAa,UAAU;AAEpF,WAAO;AAAA,MACN,EAAE,aAAa,YAAY,SAAS,KAAA;AAAA,MACpC,EAAE,OAAO,CAAA,OAAM,YAAY,UAAU,GAAG,UAAU,CAAC,qBAAqB,UAAU,GAAG,WAAW,CAAC,KAAK,OAAO,CAAA,OAAM,GAAG,WAAA;AAAA,IAAW;AAAA,EAEnI;AACD;"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const cliCommon = require("@contember/cli-common");
|
|
4
|
+
const memberOptions = require("./memberOptions.cjs");
|
|
5
|
+
const membershipInput = require("./membershipInput.cjs");
|
|
6
|
+
const stdin = require("../../../lib/tenant/stdin.cjs");
|
|
7
|
+
const confirmation = require("../../../lib/tenant/confirmation.cjs");
|
|
8
|
+
const tenantOutput = require("../tenantOutput.cjs");
|
|
9
|
+
class TenantMemberUpdateCommand extends cliCommon.Command {
|
|
10
|
+
constructor(tenantClientProvider, readStdin = stdin.readStdinText) {
|
|
11
|
+
super();
|
|
12
|
+
this.tenantClientProvider = tenantClientProvider;
|
|
13
|
+
this.readStdin = readStdin;
|
|
14
|
+
}
|
|
15
|
+
configure(configuration) {
|
|
16
|
+
configuration.description("Replace the memberships of an existing project member");
|
|
17
|
+
configuration.option("project").valueRequired().required().description("Project slug.");
|
|
18
|
+
configuration.option("identity").valueRequired().required().description("Identity id of the member.");
|
|
19
|
+
configuration.option("yes").valueNone().description("Confirm replacing the membership list with an empty list.");
|
|
20
|
+
membershipInput.configureMembershipOptions(configuration);
|
|
21
|
+
}
|
|
22
|
+
async execute(input, output) {
|
|
23
|
+
const projectSlug = memberOptions.requireOptionValue(input.getOption("project"), "project");
|
|
24
|
+
const identityId = memberOptions.requireOptionValue(input.getOption("identity"), "identity");
|
|
25
|
+
const memberships = await membershipInput.resolveMemberships(membershipInput.readMembershipInputSource(input), this.readStdin);
|
|
26
|
+
if (memberships.length === 0) {
|
|
27
|
+
await confirmation.requireConfirmation({
|
|
28
|
+
yes: input.getOption("yes") === true,
|
|
29
|
+
output,
|
|
30
|
+
warning: `This will remove every membership of identity ${identityId} in project ${projectSlug}.`
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
output.info(`Replacing the memberships of identity ${identityId} in project ${projectSlug} with ${memberOptions.formatMemberships(memberships)}`);
|
|
34
|
+
await this.tenantClientProvider.member().updateProjectMember(projectSlug, identityId, memberships);
|
|
35
|
+
output.data(
|
|
36
|
+
{ projectSlug, identityId, memberships },
|
|
37
|
+
{
|
|
38
|
+
human: (it) => `Identity ${tenantOutput.humanText(it.identityId)} in ${tenantOutput.humanText(it.projectSlug)} now has: ${memberOptions.formatMemberships(it.memberships)}`,
|
|
39
|
+
quiet: (it) => it.identityId
|
|
40
|
+
}
|
|
41
|
+
);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.TenantMemberUpdateCommand = TenantMemberUpdateCommand;
|
|
45
|
+
//# sourceMappingURL=TenantMemberUpdateCommand.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantMemberUpdateCommand.cjs","sources":["../../../../../../../packages/cli/src/commands/tenant/member/TenantMemberUpdateCommand.ts"],"sourcesContent":["import { Command, CommandConfiguration, Input, Output } from '@contember/cli-common'\nimport { TenantClientProvider } from '../../../lib/TenantClientProvider.js'\nimport { formatMemberships, requireOptionValue } from './memberOptions.js'\nimport { configureMembershipOptions, MembershipOptions, readMembershipInputSource, resolveMemberships } from './membershipInput.js'\nimport { readStdinText, StdinReader } from '../../../lib/tenant/stdin.js'\nimport { requireConfirmation } from '../../../lib/tenant/confirmation.js'\nimport { humanText } from '../tenantOutput.js'\n\ntype Args = {}\n\ntype Options = MembershipOptions & {\n\tproject?: string\n\tidentity?: string\n\tyes?: boolean\n}\n\n/** `tenant member update` */\nexport class TenantMemberUpdateCommand extends Command<Args, Options> {\n\tconstructor(\n\t\tprivate readonly tenantClientProvider: TenantClientProvider,\n\t\tprivate readonly readStdin: StdinReader = readStdinText,\n\t) {\n\t\tsuper()\n\t}\n\n\tprotected configure(configuration: CommandConfiguration<Args, Options>): void {\n\t\tconfiguration.description('Replace the memberships of an existing project member')\n\t\tconfiguration.option('project').valueRequired().required().description('Project slug.')\n\t\tconfiguration.option('identity').valueRequired().required().description('Identity id of the member.')\n\t\tconfiguration.option('yes').valueNone().description('Confirm replacing the membership list with an empty list.')\n\t\tconfigureMembershipOptions(configuration)\n\t}\n\n\tprotected async execute(input: Input<Args, Options>, output: Output): Promise<void> {\n\t\tconst projectSlug = requireOptionValue(input.getOption('project'), 'project')\n\t\tconst identityId = requireOptionValue(input.getOption('identity'), 'identity')\n\t\tconst memberships = await resolveMemberships(readMembershipInputSource(input), this.readStdin)\n\t\tif (memberships.length === 0) {\n\t\t\tawait requireConfirmation({\n\t\t\t\tyes: input.getOption('yes') === true,\n\t\t\t\toutput,\n\t\t\t\twarning: `This will remove every membership of identity ${identityId} in project ${projectSlug}.`,\n\t\t\t})\n\t\t}\n\n\t\t// the mutation replaces the whole list, so anything the caller omits is dropped\n\t\toutput.info(`Replacing the memberships of identity ${identityId} in project ${projectSlug} with ${formatMemberships(memberships)}`)\n\t\tawait this.tenantClientProvider.member().updateProjectMember(projectSlug, identityId, memberships)\n\n\t\toutput.data(\n\t\t\t{ projectSlug, identityId, memberships },\n\t\t\t{\n\t\t\t\thuman: it => `Identity ${humanText(it.identityId)} in ${humanText(it.projectSlug)} now has: ${formatMemberships(it.memberships)}`,\n\t\t\t\tquiet: it => it.identityId,\n\t\t\t},\n\t\t)\n\t}\n}\n"],"names":["Command","readStdinText","configureMembershipOptions","requireOptionValue","resolveMemberships","readMembershipInputSource","requireConfirmation","formatMemberships","humanText"],"mappings":";;;;;;;;AAiBO,MAAM,kCAAkCA,UAAAA,QAAuB;AAAA,EACrE,YACkB,sBACA,YAAyBC,qBACzC;AACD,UAAA;AAHiB,SAAA,uBAAA;AACA,SAAA,YAAA;AAAA,EAGlB;AAAA,EAEU,UAAU,eAA0D;AAC7E,kBAAc,YAAY,uDAAuD;AACjF,kBAAc,OAAO,SAAS,EAAE,cAAA,EAAgB,SAAA,EAAW,YAAY,eAAe;AACtF,kBAAc,OAAO,UAAU,EAAE,cAAA,EAAgB,SAAA,EAAW,YAAY,4BAA4B;AACpG,kBAAc,OAAO,KAAK,EAAE,UAAA,EAAY,YAAY,2DAA2D;AAC/GC,oBAAAA,2BAA2B,aAAa;AAAA,EACzC;AAAA,EAEA,MAAgB,QAAQ,OAA6B,QAA+B;AACnF,UAAM,cAAcC,cAAAA,mBAAmB,MAAM,UAAU,SAAS,GAAG,SAAS;AAC5E,UAAM,aAAaA,cAAAA,mBAAmB,MAAM,UAAU,UAAU,GAAG,UAAU;AAC7E,UAAM,cAAc,MAAMC,mCAAmBC,gBAAAA,0BAA0B,KAAK,GAAG,KAAK,SAAS;AAC7F,QAAI,YAAY,WAAW,GAAG;AAC7B,YAAMC,iCAAoB;AAAA,QACzB,KAAK,MAAM,UAAU,KAAK,MAAM;AAAA,QAChC;AAAA,QACA,SAAS,iDAAiD,UAAU,eAAe,WAAW;AAAA,MAAA,CAC9F;AAAA,IACF;AAGA,WAAO,KAAK,yCAAyC,UAAU,eAAe,WAAW,SAASC,cAAAA,kBAAkB,WAAW,CAAC,EAAE;AAClI,UAAM,KAAK,qBAAqB,OAAA,EAAS,oBAAoB,aAAa,YAAY,WAAW;AAEjG,WAAO;AAAA,MACN,EAAE,aAAa,YAAY,YAAA;AAAA,MAC3B;AAAA,QACC,OAAO,CAAA,OAAM,YAAYC,aAAAA,UAAU,GAAG,UAAU,CAAC,OAAOA,aAAAA,UAAU,GAAG,WAAW,CAAC,aAAaD,cAAAA,kBAAkB,GAAG,WAAW,CAAC;AAAA,QAC/H,OAAO,QAAM,GAAG;AAAA,MAAA;AAAA,IACjB;AAAA,EAEF;AACD;;"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Command } from "@contember/cli-common";
|
|
2
|
+
import { requireOptionValue, formatMemberships } from "./memberOptions.js";
|
|
3
|
+
import { configureMembershipOptions, resolveMemberships, readMembershipInputSource } from "./membershipInput.js";
|
|
4
|
+
import { readStdinText } from "../../../lib/tenant/stdin.js";
|
|
5
|
+
import { requireConfirmation } from "../../../lib/tenant/confirmation.js";
|
|
6
|
+
import { humanText } from "../tenantOutput.js";
|
|
7
|
+
class TenantMemberUpdateCommand extends Command {
|
|
8
|
+
constructor(tenantClientProvider, readStdin = readStdinText) {
|
|
9
|
+
super();
|
|
10
|
+
this.tenantClientProvider = tenantClientProvider;
|
|
11
|
+
this.readStdin = readStdin;
|
|
12
|
+
}
|
|
13
|
+
configure(configuration) {
|
|
14
|
+
configuration.description("Replace the memberships of an existing project member");
|
|
15
|
+
configuration.option("project").valueRequired().required().description("Project slug.");
|
|
16
|
+
configuration.option("identity").valueRequired().required().description("Identity id of the member.");
|
|
17
|
+
configuration.option("yes").valueNone().description("Confirm replacing the membership list with an empty list.");
|
|
18
|
+
configureMembershipOptions(configuration);
|
|
19
|
+
}
|
|
20
|
+
async execute(input, output) {
|
|
21
|
+
const projectSlug = requireOptionValue(input.getOption("project"), "project");
|
|
22
|
+
const identityId = requireOptionValue(input.getOption("identity"), "identity");
|
|
23
|
+
const memberships = await resolveMemberships(readMembershipInputSource(input), this.readStdin);
|
|
24
|
+
if (memberships.length === 0) {
|
|
25
|
+
await requireConfirmation({
|
|
26
|
+
yes: input.getOption("yes") === true,
|
|
27
|
+
output,
|
|
28
|
+
warning: `This will remove every membership of identity ${identityId} in project ${projectSlug}.`
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
output.info(`Replacing the memberships of identity ${identityId} in project ${projectSlug} with ${formatMemberships(memberships)}`);
|
|
32
|
+
await this.tenantClientProvider.member().updateProjectMember(projectSlug, identityId, memberships);
|
|
33
|
+
output.data(
|
|
34
|
+
{ projectSlug, identityId, memberships },
|
|
35
|
+
{
|
|
36
|
+
human: (it) => `Identity ${humanText(it.identityId)} in ${humanText(it.projectSlug)} now has: ${formatMemberships(it.memberships)}`,
|
|
37
|
+
quiet: (it) => it.identityId
|
|
38
|
+
}
|
|
39
|
+
);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
export {
|
|
43
|
+
TenantMemberUpdateCommand
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=TenantMemberUpdateCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantMemberUpdateCommand.js","sources":["../../../../../../../packages/cli/src/commands/tenant/member/TenantMemberUpdateCommand.ts"],"sourcesContent":["import { Command, CommandConfiguration, Input, Output } from '@contember/cli-common'\nimport { TenantClientProvider } from '../../../lib/TenantClientProvider.js'\nimport { formatMemberships, requireOptionValue } from './memberOptions.js'\nimport { configureMembershipOptions, MembershipOptions, readMembershipInputSource, resolveMemberships } from './membershipInput.js'\nimport { readStdinText, StdinReader } from '../../../lib/tenant/stdin.js'\nimport { requireConfirmation } from '../../../lib/tenant/confirmation.js'\nimport { humanText } from '../tenantOutput.js'\n\ntype Args = {}\n\ntype Options = MembershipOptions & {\n\tproject?: string\n\tidentity?: string\n\tyes?: boolean\n}\n\n/** `tenant member update` */\nexport class TenantMemberUpdateCommand extends Command<Args, Options> {\n\tconstructor(\n\t\tprivate readonly tenantClientProvider: TenantClientProvider,\n\t\tprivate readonly readStdin: StdinReader = readStdinText,\n\t) {\n\t\tsuper()\n\t}\n\n\tprotected configure(configuration: CommandConfiguration<Args, Options>): void {\n\t\tconfiguration.description('Replace the memberships of an existing project member')\n\t\tconfiguration.option('project').valueRequired().required().description('Project slug.')\n\t\tconfiguration.option('identity').valueRequired().required().description('Identity id of the member.')\n\t\tconfiguration.option('yes').valueNone().description('Confirm replacing the membership list with an empty list.')\n\t\tconfigureMembershipOptions(configuration)\n\t}\n\n\tprotected async execute(input: Input<Args, Options>, output: Output): Promise<void> {\n\t\tconst projectSlug = requireOptionValue(input.getOption('project'), 'project')\n\t\tconst identityId = requireOptionValue(input.getOption('identity'), 'identity')\n\t\tconst memberships = await resolveMemberships(readMembershipInputSource(input), this.readStdin)\n\t\tif (memberships.length === 0) {\n\t\t\tawait requireConfirmation({\n\t\t\t\tyes: input.getOption('yes') === true,\n\t\t\t\toutput,\n\t\t\t\twarning: `This will remove every membership of identity ${identityId} in project ${projectSlug}.`,\n\t\t\t})\n\t\t}\n\n\t\t// the mutation replaces the whole list, so anything the caller omits is dropped\n\t\toutput.info(`Replacing the memberships of identity ${identityId} in project ${projectSlug} with ${formatMemberships(memberships)}`)\n\t\tawait this.tenantClientProvider.member().updateProjectMember(projectSlug, identityId, memberships)\n\n\t\toutput.data(\n\t\t\t{ projectSlug, identityId, memberships },\n\t\t\t{\n\t\t\t\thuman: it => `Identity ${humanText(it.identityId)} in ${humanText(it.projectSlug)} now has: ${formatMemberships(it.memberships)}`,\n\t\t\t\tquiet: it => it.identityId,\n\t\t\t},\n\t\t)\n\t}\n}\n"],"names":[],"mappings":";;;;;;AAiBO,MAAM,kCAAkC,QAAuB;AAAA,EACrE,YACkB,sBACA,YAAyB,eACzC;AACD,UAAA;AAHiB,SAAA,uBAAA;AACA,SAAA,YAAA;AAAA,EAGlB;AAAA,EAEU,UAAU,eAA0D;AAC7E,kBAAc,YAAY,uDAAuD;AACjF,kBAAc,OAAO,SAAS,EAAE,cAAA,EAAgB,SAAA,EAAW,YAAY,eAAe;AACtF,kBAAc,OAAO,UAAU,EAAE,cAAA,EAAgB,SAAA,EAAW,YAAY,4BAA4B;AACpG,kBAAc,OAAO,KAAK,EAAE,UAAA,EAAY,YAAY,2DAA2D;AAC/G,+BAA2B,aAAa;AAAA,EACzC;AAAA,EAEA,MAAgB,QAAQ,OAA6B,QAA+B;AACnF,UAAM,cAAc,mBAAmB,MAAM,UAAU,SAAS,GAAG,SAAS;AAC5E,UAAM,aAAa,mBAAmB,MAAM,UAAU,UAAU,GAAG,UAAU;AAC7E,UAAM,cAAc,MAAM,mBAAmB,0BAA0B,KAAK,GAAG,KAAK,SAAS;AAC7F,QAAI,YAAY,WAAW,GAAG;AAC7B,YAAM,oBAAoB;AAAA,QACzB,KAAK,MAAM,UAAU,KAAK,MAAM;AAAA,QAChC;AAAA,QACA,SAAS,iDAAiD,UAAU,eAAe,WAAW;AAAA,MAAA,CAC9F;AAAA,IACF;AAGA,WAAO,KAAK,yCAAyC,UAAU,eAAe,WAAW,SAAS,kBAAkB,WAAW,CAAC,EAAE;AAClI,UAAM,KAAK,qBAAqB,OAAA,EAAS,oBAAoB,aAAa,YAAY,WAAW;AAEjG,WAAO;AAAA,MACN,EAAE,aAAa,YAAY,YAAA;AAAA,MAC3B;AAAA,QACC,OAAO,CAAA,OAAM,YAAY,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,GAAG,WAAW,CAAC,aAAa,kBAAkB,GAAG,WAAW,CAAC;AAAA,QAC/H,OAAO,QAAM,GAAG;AAAA,MAAA;AAAA,IACjB;AAAA,EAEF;AACD;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const cliCommon = require("@contember/cli-common");
|
|
4
|
+
const tenantOutput = require("../tenantOutput.cjs");
|
|
5
|
+
const requireOptionValue = (value, name) => {
|
|
6
|
+
if (value === void 0 || value === "") {
|
|
7
|
+
throw new cliCommon.CliError(`Option --${name} is required and must not be empty.`, { code: "INVALID_INPUT", exitCode: cliCommon.ExitCode.InputError });
|
|
8
|
+
}
|
|
9
|
+
return value;
|
|
10
|
+
};
|
|
11
|
+
const formatMemberships = (memberships) => memberships.map(
|
|
12
|
+
(it) => it.variables.length === 0 ? tenantOutput.humanText(it.role) : `${tenantOutput.humanText(it.role)} (${it.variables.map((v) => `${tenantOutput.humanText(v.name)}: ${v.values.map(tenantOutput.humanText).join(", ")}`).join("; ")})`
|
|
13
|
+
).join(", ");
|
|
14
|
+
exports.formatMemberships = formatMemberships;
|
|
15
|
+
exports.requireOptionValue = requireOptionValue;
|
|
16
|
+
//# sourceMappingURL=memberOptions.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memberOptions.cjs","sources":["../../../../../../../packages/cli/src/commands/tenant/member/memberOptions.ts"],"sourcesContent":["import { CliError, ExitCode } from '@contember/cli-common'\nimport { humanText } from '../tenantOutput.js'\n\n/**\n * Reads an option the parser already enforces as required. The parser guarantees presence, not a\n * non-empty value, and the option type stays optional — this keeps the command free of a cast.\n */\nexport const requireOptionValue = (value: string | undefined, name: string): string => {\n\tif (value === undefined || value === '') {\n\t\tthrow new CliError(`Option --${name} is required and must not be empty.`, { code: 'INVALID_INPUT', exitCode: ExitCode.InputError })\n\t}\n\treturn value\n}\n\n/** Both the fetched `TenantMembership` and the `MembershipInput` sent to the API, which differ only in readonly-ness. */\nexport interface MembershipLike {\n\treadonly role: string\n\treadonly variables: readonly { readonly name: string; readonly values: readonly string[] }[]\n}\n\n/** Human-mode rendering of a membership list. `--json` and `--quiet` always see the raw structure. */\nexport const formatMemberships = (memberships: readonly MembershipLike[]): string =>\n\tmemberships\n\t\t.map(it =>\n\t\t\tit.variables.length === 0\n\t\t\t\t? humanText(it.role)\n\t\t\t\t: `${humanText(it.role)} (${it.variables.map(v => `${humanText(v.name)}: ${v.values.map(humanText).join(', ')}`).join('; ')})`\n\t\t)\n\t\t.join(', ')\n"],"names":["CliError","ExitCode","humanText"],"mappings":";;;;AAOO,MAAM,qBAAqB,CAAC,OAA2B,SAAyB;AACtF,MAAI,UAAU,UAAa,UAAU,IAAI;AACxC,UAAM,IAAIA,UAAAA,SAAS,YAAY,IAAI,uCAAuC,EAAE,MAAM,iBAAiB,UAAUC,UAAAA,SAAS,WAAA,CAAY;AAAA,EACnI;AACA,SAAO;AACR;AASO,MAAM,oBAAoB,CAAC,gBACjC,YACE;AAAA,EAAI,QACJ,GAAG,UAAU,WAAW,IACrBC,aAAAA,UAAU,GAAG,IAAI,IACjB,GAAGA,aAAAA,UAAU,GAAG,IAAI,CAAC,KAAK,GAAG,UAAU,IAAI,CAAA,MAAK,GAAGA,aAAAA,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,IAAIA,aAAAA,SAAS,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC;AAC7H,EACC,KAAK,IAAI;;;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CliError, ExitCode } from "@contember/cli-common";
|
|
2
|
+
import { humanText } from "../tenantOutput.js";
|
|
3
|
+
const requireOptionValue = (value, name) => {
|
|
4
|
+
if (value === void 0 || value === "") {
|
|
5
|
+
throw new CliError(`Option --${name} is required and must not be empty.`, { code: "INVALID_INPUT", exitCode: ExitCode.InputError });
|
|
6
|
+
}
|
|
7
|
+
return value;
|
|
8
|
+
};
|
|
9
|
+
const formatMemberships = (memberships) => memberships.map(
|
|
10
|
+
(it) => it.variables.length === 0 ? humanText(it.role) : `${humanText(it.role)} (${it.variables.map((v) => `${humanText(v.name)}: ${v.values.map(humanText).join(", ")}`).join("; ")})`
|
|
11
|
+
).join(", ");
|
|
12
|
+
export {
|
|
13
|
+
formatMemberships,
|
|
14
|
+
requireOptionValue
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=memberOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memberOptions.js","sources":["../../../../../../../packages/cli/src/commands/tenant/member/memberOptions.ts"],"sourcesContent":["import { CliError, ExitCode } from '@contember/cli-common'\nimport { humanText } from '../tenantOutput.js'\n\n/**\n * Reads an option the parser already enforces as required. The parser guarantees presence, not a\n * non-empty value, and the option type stays optional — this keeps the command free of a cast.\n */\nexport const requireOptionValue = (value: string | undefined, name: string): string => {\n\tif (value === undefined || value === '') {\n\t\tthrow new CliError(`Option --${name} is required and must not be empty.`, { code: 'INVALID_INPUT', exitCode: ExitCode.InputError })\n\t}\n\treturn value\n}\n\n/** Both the fetched `TenantMembership` and the `MembershipInput` sent to the API, which differ only in readonly-ness. */\nexport interface MembershipLike {\n\treadonly role: string\n\treadonly variables: readonly { readonly name: string; readonly values: readonly string[] }[]\n}\n\n/** Human-mode rendering of a membership list. `--json` and `--quiet` always see the raw structure. */\nexport const formatMemberships = (memberships: readonly MembershipLike[]): string =>\n\tmemberships\n\t\t.map(it =>\n\t\t\tit.variables.length === 0\n\t\t\t\t? humanText(it.role)\n\t\t\t\t: `${humanText(it.role)} (${it.variables.map(v => `${humanText(v.name)}: ${v.values.map(humanText).join(', ')}`).join('; ')})`\n\t\t)\n\t\t.join(', ')\n"],"names":[],"mappings":";;AAOO,MAAM,qBAAqB,CAAC,OAA2B,SAAyB;AACtF,MAAI,UAAU,UAAa,UAAU,IAAI;AACxC,UAAM,IAAI,SAAS,YAAY,IAAI,uCAAuC,EAAE,MAAM,iBAAiB,UAAU,SAAS,WAAA,CAAY;AAAA,EACnI;AACA,SAAO;AACR;AASO,MAAM,oBAAoB,CAAC,gBACjC,YACE;AAAA,EAAI,QACJ,GAAG,UAAU,WAAW,IACrB,UAAU,GAAG,IAAI,IACjB,GAAG,UAAU,GAAG,IAAI,CAAC,KAAK,GAAG,UAAU,IAAI,CAAA,MAAK,GAAG,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,IAAI,SAAS,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC;AAC7H,EACC,KAAK,IAAI;"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const cliCommon = require("@contember/cli-common");
|
|
4
|
+
const MEMBERSHIPS_JSON_EXAMPLE = '[{"role":"editor","variables":[{"name":"locale","values":["cs","en"]}]}]';
|
|
5
|
+
const configureMembershipOptions = (configuration, { roleDescription = "Membership role without variables. Repeat for several roles." } = {}) => {
|
|
6
|
+
configuration.option("role").valueArray().description(roleDescription);
|
|
7
|
+
configuration.option("memberships").valueRequired().description(
|
|
8
|
+
`Memberships as JSON, e.g. '${MEMBERSHIPS_JSON_EXAMPLE}'. Not combinable with --role.`
|
|
9
|
+
);
|
|
10
|
+
configuration.option("memberships-stdin").valueNone().description("Read the memberships JSON from stdin instead of --memberships.");
|
|
11
|
+
};
|
|
12
|
+
const readMembershipInputSource = (input) => ({
|
|
13
|
+
roles: input.getOption("role"),
|
|
14
|
+
json: input.getOption("memberships"),
|
|
15
|
+
fromStdin: input.getOption("memberships-stdin") === true
|
|
16
|
+
});
|
|
17
|
+
const resolveMemberships = async (source, readStdin) => {
|
|
18
|
+
const roles = source.roles ?? [];
|
|
19
|
+
const hasJson = source.json !== void 0;
|
|
20
|
+
if (hasJson && source.fromStdin) {
|
|
21
|
+
throw membershipInputError("Pass the memberships either as --memberships or as --memberships-stdin, not both.");
|
|
22
|
+
}
|
|
23
|
+
if (roles.length > 0 && (hasJson || source.fromStdin)) {
|
|
24
|
+
throw membershipInputError("Pass the memberships either as --role or as JSON (--memberships / --memberships-stdin), not both.");
|
|
25
|
+
}
|
|
26
|
+
if (roles.length > 0) {
|
|
27
|
+
return roles.map((role) => ({ role, variables: [] }));
|
|
28
|
+
}
|
|
29
|
+
if (hasJson) {
|
|
30
|
+
return parseMemberships(source.json ?? "", "--memberships");
|
|
31
|
+
}
|
|
32
|
+
if (source.fromStdin) {
|
|
33
|
+
return parseMemberships(await readStdin(), "stdin");
|
|
34
|
+
}
|
|
35
|
+
throw membershipInputError(
|
|
36
|
+
`No memberships given. Pass --role <role> for a role without variables, or the full structure as --memberships '${MEMBERSHIPS_JSON_EXAMPLE}'.`
|
|
37
|
+
);
|
|
38
|
+
};
|
|
39
|
+
const resolveNonEmptyMemberships = async (source, readStdin) => {
|
|
40
|
+
const memberships = await resolveMemberships(source, readStdin);
|
|
41
|
+
if (memberships.length === 0) {
|
|
42
|
+
throw membershipInputError("At least one membership is required for this operation.");
|
|
43
|
+
}
|
|
44
|
+
return memberships;
|
|
45
|
+
};
|
|
46
|
+
const membershipInputError = (message, details) => new cliCommon.CliError(message, { code: "INVALID_MEMBERSHIPS", exitCode: cliCommon.ExitCode.InputError, details });
|
|
47
|
+
const parseMemberships = (json, origin) => {
|
|
48
|
+
if (json.trim() === "") {
|
|
49
|
+
throw membershipInputError(`Empty memberships JSON read from ${origin}.`);
|
|
50
|
+
}
|
|
51
|
+
let parsed;
|
|
52
|
+
try {
|
|
53
|
+
parsed = JSON.parse(json);
|
|
54
|
+
} catch (e) {
|
|
55
|
+
throw membershipInputError(`Memberships read from ${origin} are not valid JSON: ${e instanceof Error ? e.message : String(e)}`);
|
|
56
|
+
}
|
|
57
|
+
if (!Array.isArray(parsed)) {
|
|
58
|
+
throw membershipInputError(`Memberships read from ${origin} must be a JSON array, got ${describeJson(parsed)}.`);
|
|
59
|
+
}
|
|
60
|
+
return parsed.map((it, index) => parseMembership(it, `${origin}[${index}]`));
|
|
61
|
+
};
|
|
62
|
+
const parseMembership = (value, path) => {
|
|
63
|
+
const record = asRecord(value, path);
|
|
64
|
+
assertNoUnknownKeys(record, ["role", "variables"], path);
|
|
65
|
+
const role = record.role;
|
|
66
|
+
if (typeof role !== "string" || role === "") {
|
|
67
|
+
throw membershipInputError(`${path}.role must be a non-empty string.`);
|
|
68
|
+
}
|
|
69
|
+
const variables = record.variables;
|
|
70
|
+
if (variables === void 0 || variables === null) {
|
|
71
|
+
return { role, variables: [] };
|
|
72
|
+
}
|
|
73
|
+
if (!Array.isArray(variables)) {
|
|
74
|
+
throw membershipInputError(`${path}.variables must be an array, got ${describeJson(variables)}.`);
|
|
75
|
+
}
|
|
76
|
+
return { role, variables: variables.map((it, index) => parseVariable(it, `${path}.variables[${index}]`)) };
|
|
77
|
+
};
|
|
78
|
+
const parseVariable = (value, path) => {
|
|
79
|
+
const record = asRecord(value, path);
|
|
80
|
+
assertNoUnknownKeys(record, ["name", "values"], path);
|
|
81
|
+
const name = record.name;
|
|
82
|
+
if (typeof name !== "string" || name === "") {
|
|
83
|
+
throw membershipInputError(`${path}.name must be a non-empty string.`);
|
|
84
|
+
}
|
|
85
|
+
const values = record.values;
|
|
86
|
+
if (!Array.isArray(values) || values.some((it) => typeof it !== "string")) {
|
|
87
|
+
throw membershipInputError(`${path}.values must be an array of strings.`);
|
|
88
|
+
}
|
|
89
|
+
return { name, values: values.filter((it) => typeof it === "string") };
|
|
90
|
+
};
|
|
91
|
+
const asRecord = (value, path) => {
|
|
92
|
+
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
93
|
+
throw membershipInputError(`${path} must be an object, got ${describeJson(value)}.`);
|
|
94
|
+
}
|
|
95
|
+
return { ...value };
|
|
96
|
+
};
|
|
97
|
+
const assertNoUnknownKeys = (record, known, path) => {
|
|
98
|
+
const unknown = Object.keys(record).filter((it) => !known.includes(it));
|
|
99
|
+
if (unknown.length > 0) {
|
|
100
|
+
throw membershipInputError(`${path} has unknown ${unknown.length === 1 ? "key" : "keys"} ${unknown.join(", ")}. Allowed: ${known.join(", ")}.`);
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
const describeJson = (value) => value === null ? "null" : Array.isArray(value) ? "an array" : typeof value;
|
|
104
|
+
exports.MEMBERSHIPS_JSON_EXAMPLE = MEMBERSHIPS_JSON_EXAMPLE;
|
|
105
|
+
exports.configureMembershipOptions = configureMembershipOptions;
|
|
106
|
+
exports.readMembershipInputSource = readMembershipInputSource;
|
|
107
|
+
exports.resolveMemberships = resolveMemberships;
|
|
108
|
+
exports.resolveNonEmptyMemberships = resolveNonEmptyMemberships;
|
|
109
|
+
//# sourceMappingURL=membershipInput.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"membershipInput.cjs","sources":["../../../../../../../packages/cli/src/commands/tenant/member/membershipInput.ts"],"sourcesContent":["import { CliError, CommandConfiguration, ExitCode } from '@contember/cli-common'\nimport type { MembershipInput } from '@contember/graphql-client-tenant'\nimport type { StdinReader } from '../../../lib/tenant/stdin.js'\n\n/** `Arguments` is not part of the `@contember/cli-common` public surface, so the widest form is spelled out here. */\ntype AnyArguments = Record<string, string | string[] | undefined>\n\n/**\n * The options every command taking `memberships: [MembershipInput!]!` declares.\n *\n * There are deliberately exactly two ways in, and no third one:\n *\n * - `--role <role>`, repeatable — a membership with no variables, which is the whole shape a human\n * needs for `--role editor`;\n * - `--memberships <json>` / `--memberships-stdin` — the complete `MembershipInput[]` structure, which is\n * what a script or an agent already holds.\n *\n * A compact string syntax for variables (`editor:locale=en,cs`) is intentionally not offered: it breaks\n * the moment a value contains the separator, and the JSON form costs an agent nothing.\n */\nexport type MembershipOptions = {\n\trole?: string[]\n\tmemberships?: string\n\t['memberships-stdin']?: boolean\n}\n\nexport const MEMBERSHIPS_JSON_EXAMPLE = '[{\"role\":\"editor\",\"variables\":[{\"name\":\"locale\",\"values\":[\"cs\",\"en\"]}]}]'\n\n/** `roleDescription` exists for `tenant api-key create`, where `--role` also names a global tenant role. */\nexport const configureMembershipOptions = (\n\tconfiguration: CommandConfiguration<AnyArguments, MembershipOptions>,\n\t{ roleDescription = 'Membership role without variables. Repeat for several roles.' }: { roleDescription?: string } = {},\n): void => {\n\tconfiguration.option('role').valueArray().description(roleDescription)\n\tconfiguration.option('memberships').valueRequired().description(\n\t\t`Memberships as JSON, e.g. '${MEMBERSHIPS_JSON_EXAMPLE}'. Not combinable with --role.`,\n\t)\n\tconfiguration.option('memberships-stdin').valueNone().description('Read the memberships JSON from stdin instead of --memberships.')\n}\n\n/** The raw values of {@link MembershipOptions}, read by the command so no generic `Input` has to be passed around. */\nexport interface MembershipInputSource {\n\troles: string[] | undefined\n\tjson: string | undefined\n\tfromStdin: boolean\n}\n\nexport const readMembershipInputSource = (input: {\n\tgetOption(name: 'role'): string[] | undefined\n\tgetOption(name: 'memberships'): string | undefined\n\tgetOption(name: 'memberships-stdin'): boolean | undefined\n}): MembershipInputSource => ({\n\troles: input.getOption('role'),\n\tjson: input.getOption('memberships'),\n\tfromStdin: input.getOption('memberships-stdin') === true,\n})\n\nexport const resolveMemberships = async (source: MembershipInputSource, readStdin: StdinReader): Promise<MembershipInput[]> => {\n\tconst roles = source.roles ?? []\n\tconst hasJson = source.json !== undefined\n\tif (hasJson && source.fromStdin) {\n\t\tthrow membershipInputError('Pass the memberships either as --memberships or as --memberships-stdin, not both.')\n\t}\n\tif (roles.length > 0 && (hasJson || source.fromStdin)) {\n\t\tthrow membershipInputError('Pass the memberships either as --role or as JSON (--memberships / --memberships-stdin), not both.')\n\t}\n\tif (roles.length > 0) {\n\t\treturn roles.map(role => ({ role, variables: [] }))\n\t}\n\tif (hasJson) {\n\t\treturn parseMemberships(source.json ?? '', '--memberships')\n\t}\n\tif (source.fromStdin) {\n\t\treturn parseMemberships(await readStdin(), 'stdin')\n\t}\n\tthrow membershipInputError(\n\t\t`No memberships given. Pass --role <role> for a role without variables, or the full structure as --memberships '${MEMBERSHIPS_JSON_EXAMPLE}'.`,\n\t)\n}\n\n/** Creation operations must not create an identity with no project access. */\nexport const resolveNonEmptyMemberships = async (source: MembershipInputSource, readStdin: StdinReader): Promise<MembershipInput[]> => {\n\tconst memberships = await resolveMemberships(source, readStdin)\n\tif (memberships.length === 0) {\n\t\tthrow membershipInputError('At least one membership is required for this operation.')\n\t}\n\treturn memberships\n}\n\nconst membershipInputError = (message: string, details?: unknown): CliError =>\n\tnew CliError(message, { code: 'INVALID_MEMBERSHIPS', exitCode: ExitCode.InputError, details })\n\nconst parseMemberships = (json: string, origin: string): MembershipInput[] => {\n\tif (json.trim() === '') {\n\t\tthrow membershipInputError(`Empty memberships JSON read from ${origin}.`)\n\t}\n\tlet parsed: unknown\n\ttry {\n\t\tparsed = JSON.parse(json)\n\t} catch (e) {\n\t\tthrow membershipInputError(`Memberships read from ${origin} are not valid JSON: ${e instanceof Error ? e.message : String(e)}`)\n\t}\n\tif (!Array.isArray(parsed)) {\n\t\tthrow membershipInputError(`Memberships read from ${origin} must be a JSON array, got ${describeJson(parsed)}.`)\n\t}\n\treturn parsed.map((it, index) => parseMembership(it, `${origin}[${index}]`))\n}\n\nconst parseMembership = (value: unknown, path: string): MembershipInput => {\n\tconst record = asRecord(value, path)\n\tassertNoUnknownKeys(record, ['role', 'variables'], path)\n\tconst role = record.role\n\tif (typeof role !== 'string' || role === '') {\n\t\tthrow membershipInputError(`${path}.role must be a non-empty string.`)\n\t}\n\tconst variables = record.variables\n\tif (variables === undefined || variables === null) {\n\t\treturn { role, variables: [] }\n\t}\n\tif (!Array.isArray(variables)) {\n\t\tthrow membershipInputError(`${path}.variables must be an array, got ${describeJson(variables)}.`)\n\t}\n\treturn { role, variables: variables.map((it, index) => parseVariable(it, `${path}.variables[${index}]`)) }\n}\n\nconst parseVariable = (value: unknown, path: string): { name: string; values: string[] } => {\n\tconst record = asRecord(value, path)\n\tassertNoUnknownKeys(record, ['name', 'values'], path)\n\tconst name = record.name\n\tif (typeof name !== 'string' || name === '') {\n\t\tthrow membershipInputError(`${path}.name must be a non-empty string.`)\n\t}\n\tconst values = record.values\n\tif (!Array.isArray(values) || values.some(it => typeof it !== 'string')) {\n\t\tthrow membershipInputError(`${path}.values must be an array of strings.`)\n\t}\n\treturn { name, values: values.filter(it => typeof it === 'string') }\n}\n\nconst asRecord = (value: unknown, path: string): Record<string, unknown> => {\n\tif (typeof value !== 'object' || value === null || Array.isArray(value)) {\n\t\tthrow membershipInputError(`${path} must be an object, got ${describeJson(value)}.`)\n\t}\n\treturn { ...value }\n}\n\n// a typo'd key would otherwise be dropped without a word, which is the worst possible failure for a script\nconst assertNoUnknownKeys = (record: Record<string, unknown>, known: string[], path: string): void => {\n\tconst unknown = Object.keys(record).filter(it => !known.includes(it))\n\tif (unknown.length > 0) {\n\t\tthrow membershipInputError(`${path} has unknown ${unknown.length === 1 ? 'key' : 'keys'} ${unknown.join(', ')}. Allowed: ${known.join(', ')}.`)\n\t}\n}\n\nconst describeJson = (value: unknown): string => (value === null ? 'null' : Array.isArray(value) ? 'an array' : typeof value)\n"],"names":["CliError","ExitCode"],"mappings":";;;AA0BO,MAAM,2BAA2B;AAGjC,MAAM,6BAA6B,CACzC,eACA,EAAE,kBAAkB,+DAAA,IAAiG,CAAA,MAC3G;AACV,gBAAc,OAAO,MAAM,EAAE,WAAA,EAAa,YAAY,eAAe;AACrE,gBAAc,OAAO,aAAa,EAAE,cAAA,EAAgB;AAAA,IACnD,8BAA8B,wBAAwB;AAAA,EAAA;AAEvD,gBAAc,OAAO,mBAAmB,EAAE,UAAA,EAAY,YAAY,gEAAgE;AACnI;AASO,MAAM,4BAA4B,CAAC,WAIZ;AAAA,EAC7B,OAAO,MAAM,UAAU,MAAM;AAAA,EAC7B,MAAM,MAAM,UAAU,aAAa;AAAA,EACnC,WAAW,MAAM,UAAU,mBAAmB,MAAM;AACrD;AAEO,MAAM,qBAAqB,OAAO,QAA+B,cAAuD;AAC9H,QAAM,QAAQ,OAAO,SAAS,CAAA;AAC9B,QAAM,UAAU,OAAO,SAAS;AAChC,MAAI,WAAW,OAAO,WAAW;AAChC,UAAM,qBAAqB,mFAAmF;AAAA,EAC/G;AACA,MAAI,MAAM,SAAS,MAAM,WAAW,OAAO,YAAY;AACtD,UAAM,qBAAqB,mGAAmG;AAAA,EAC/H;AACA,MAAI,MAAM,SAAS,GAAG;AACrB,WAAO,MAAM,IAAI,CAAA,UAAS,EAAE,MAAM,WAAW,CAAA,IAAK;AAAA,EACnD;AACA,MAAI,SAAS;AACZ,WAAO,iBAAiB,OAAO,QAAQ,IAAI,eAAe;AAAA,EAC3D;AACA,MAAI,OAAO,WAAW;AACrB,WAAO,iBAAiB,MAAM,UAAA,GAAa,OAAO;AAAA,EACnD;AACA,QAAM;AAAA,IACL,kHAAkH,wBAAwB;AAAA,EAAA;AAE5I;AAGO,MAAM,6BAA6B,OAAO,QAA+B,cAAuD;AACtI,QAAM,cAAc,MAAM,mBAAmB,QAAQ,SAAS;AAC9D,MAAI,YAAY,WAAW,GAAG;AAC7B,UAAM,qBAAqB,yDAAyD;AAAA,EACrF;AACA,SAAO;AACR;AAEA,MAAM,uBAAuB,CAAC,SAAiB,YAC9C,IAAIA,UAAAA,SAAS,SAAS,EAAE,MAAM,uBAAuB,UAAUC,UAAAA,SAAS,YAAY,SAAS;AAE9F,MAAM,mBAAmB,CAAC,MAAc,WAAsC;AAC7E,MAAI,KAAK,KAAA,MAAW,IAAI;AACvB,UAAM,qBAAqB,oCAAoC,MAAM,GAAG;AAAA,EACzE;AACA,MAAI;AACJ,MAAI;AACH,aAAS,KAAK,MAAM,IAAI;AAAA,EACzB,SAAS,GAAG;AACX,UAAM,qBAAqB,yBAAyB,MAAM,wBAAwB,aAAa,QAAQ,EAAE,UAAU,OAAO,CAAC,CAAC,EAAE;AAAA,EAC/H;AACA,MAAI,CAAC,MAAM,QAAQ,MAAM,GAAG;AAC3B,UAAM,qBAAqB,yBAAyB,MAAM,8BAA8B,aAAa,MAAM,CAAC,GAAG;AAAA,EAChH;AACA,SAAO,OAAO,IAAI,CAAC,IAAI,UAAU,gBAAgB,IAAI,GAAG,MAAM,IAAI,KAAK,GAAG,CAAC;AAC5E;AAEA,MAAM,kBAAkB,CAAC,OAAgB,SAAkC;AAC1E,QAAM,SAAS,SAAS,OAAO,IAAI;AACnC,sBAAoB,QAAQ,CAAC,QAAQ,WAAW,GAAG,IAAI;AACvD,QAAM,OAAO,OAAO;AACpB,MAAI,OAAO,SAAS,YAAY,SAAS,IAAI;AAC5C,UAAM,qBAAqB,GAAG,IAAI,mCAAmC;AAAA,EACtE;AACA,QAAM,YAAY,OAAO;AACzB,MAAI,cAAc,UAAa,cAAc,MAAM;AAClD,WAAO,EAAE,MAAM,WAAW,GAAC;AAAA,EAC5B;AACA,MAAI,CAAC,MAAM,QAAQ,SAAS,GAAG;AAC9B,UAAM,qBAAqB,GAAG,IAAI,oCAAoC,aAAa,SAAS,CAAC,GAAG;AAAA,EACjG;AACA,SAAO,EAAE,MAAM,WAAW,UAAU,IAAI,CAAC,IAAI,UAAU,cAAc,IAAI,GAAG,IAAI,cAAc,KAAK,GAAG,CAAC,EAAA;AACxG;AAEA,MAAM,gBAAgB,CAAC,OAAgB,SAAqD;AAC3F,QAAM,SAAS,SAAS,OAAO,IAAI;AACnC,sBAAoB,QAAQ,CAAC,QAAQ,QAAQ,GAAG,IAAI;AACpD,QAAM,OAAO,OAAO;AACpB,MAAI,OAAO,SAAS,YAAY,SAAS,IAAI;AAC5C,UAAM,qBAAqB,GAAG,IAAI,mCAAmC;AAAA,EACtE;AACA,QAAM,SAAS,OAAO;AACtB,MAAI,CAAC,MAAM,QAAQ,MAAM,KAAK,OAAO,KAAK,CAAA,OAAM,OAAO,OAAO,QAAQ,GAAG;AACxE,UAAM,qBAAqB,GAAG,IAAI,sCAAsC;AAAA,EACzE;AACA,SAAO,EAAE,MAAM,QAAQ,OAAO,OAAO,CAAA,OAAM,OAAO,OAAO,QAAQ,EAAA;AAClE;AAEA,MAAM,WAAW,CAAC,OAAgB,SAA0C;AAC3E,MAAI,OAAO,UAAU,YAAY,UAAU,QAAQ,MAAM,QAAQ,KAAK,GAAG;AACxE,UAAM,qBAAqB,GAAG,IAAI,2BAA2B,aAAa,KAAK,CAAC,GAAG;AAAA,EACpF;AACA,SAAO,EAAE,GAAG,MAAA;AACb;AAGA,MAAM,sBAAsB,CAAC,QAAiC,OAAiB,SAAuB;AACrG,QAAM,UAAU,OAAO,KAAK,MAAM,EAAE,OAAO,CAAA,OAAM,CAAC,MAAM,SAAS,EAAE,CAAC;AACpE,MAAI,QAAQ,SAAS,GAAG;AACvB,UAAM,qBAAqB,GAAG,IAAI,gBAAgB,QAAQ,WAAW,IAAI,QAAQ,MAAM,IAAI,QAAQ,KAAK,IAAI,CAAC,cAAc,MAAM,KAAK,IAAI,CAAC,GAAG;AAAA,EAC/I;AACD;AAEA,MAAM,eAAe,CAAC,UAA4B,UAAU,OAAO,SAAS,MAAM,QAAQ,KAAK,IAAI,aAAa,OAAO;;;;;;"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { CliError, ExitCode } from "@contember/cli-common";
|
|
2
|
+
const MEMBERSHIPS_JSON_EXAMPLE = '[{"role":"editor","variables":[{"name":"locale","values":["cs","en"]}]}]';
|
|
3
|
+
const configureMembershipOptions = (configuration, { roleDescription = "Membership role without variables. Repeat for several roles." } = {}) => {
|
|
4
|
+
configuration.option("role").valueArray().description(roleDescription);
|
|
5
|
+
configuration.option("memberships").valueRequired().description(
|
|
6
|
+
`Memberships as JSON, e.g. '${MEMBERSHIPS_JSON_EXAMPLE}'. Not combinable with --role.`
|
|
7
|
+
);
|
|
8
|
+
configuration.option("memberships-stdin").valueNone().description("Read the memberships JSON from stdin instead of --memberships.");
|
|
9
|
+
};
|
|
10
|
+
const readMembershipInputSource = (input) => ({
|
|
11
|
+
roles: input.getOption("role"),
|
|
12
|
+
json: input.getOption("memberships"),
|
|
13
|
+
fromStdin: input.getOption("memberships-stdin") === true
|
|
14
|
+
});
|
|
15
|
+
const resolveMemberships = async (source, readStdin) => {
|
|
16
|
+
const roles = source.roles ?? [];
|
|
17
|
+
const hasJson = source.json !== void 0;
|
|
18
|
+
if (hasJson && source.fromStdin) {
|
|
19
|
+
throw membershipInputError("Pass the memberships either as --memberships or as --memberships-stdin, not both.");
|
|
20
|
+
}
|
|
21
|
+
if (roles.length > 0 && (hasJson || source.fromStdin)) {
|
|
22
|
+
throw membershipInputError("Pass the memberships either as --role or as JSON (--memberships / --memberships-stdin), not both.");
|
|
23
|
+
}
|
|
24
|
+
if (roles.length > 0) {
|
|
25
|
+
return roles.map((role) => ({ role, variables: [] }));
|
|
26
|
+
}
|
|
27
|
+
if (hasJson) {
|
|
28
|
+
return parseMemberships(source.json ?? "", "--memberships");
|
|
29
|
+
}
|
|
30
|
+
if (source.fromStdin) {
|
|
31
|
+
return parseMemberships(await readStdin(), "stdin");
|
|
32
|
+
}
|
|
33
|
+
throw membershipInputError(
|
|
34
|
+
`No memberships given. Pass --role <role> for a role without variables, or the full structure as --memberships '${MEMBERSHIPS_JSON_EXAMPLE}'.`
|
|
35
|
+
);
|
|
36
|
+
};
|
|
37
|
+
const resolveNonEmptyMemberships = async (source, readStdin) => {
|
|
38
|
+
const memberships = await resolveMemberships(source, readStdin);
|
|
39
|
+
if (memberships.length === 0) {
|
|
40
|
+
throw membershipInputError("At least one membership is required for this operation.");
|
|
41
|
+
}
|
|
42
|
+
return memberships;
|
|
43
|
+
};
|
|
44
|
+
const membershipInputError = (message, details) => new CliError(message, { code: "INVALID_MEMBERSHIPS", exitCode: ExitCode.InputError, details });
|
|
45
|
+
const parseMemberships = (json, origin) => {
|
|
46
|
+
if (json.trim() === "") {
|
|
47
|
+
throw membershipInputError(`Empty memberships JSON read from ${origin}.`);
|
|
48
|
+
}
|
|
49
|
+
let parsed;
|
|
50
|
+
try {
|
|
51
|
+
parsed = JSON.parse(json);
|
|
52
|
+
} catch (e) {
|
|
53
|
+
throw membershipInputError(`Memberships read from ${origin} are not valid JSON: ${e instanceof Error ? e.message : String(e)}`);
|
|
54
|
+
}
|
|
55
|
+
if (!Array.isArray(parsed)) {
|
|
56
|
+
throw membershipInputError(`Memberships read from ${origin} must be a JSON array, got ${describeJson(parsed)}.`);
|
|
57
|
+
}
|
|
58
|
+
return parsed.map((it, index) => parseMembership(it, `${origin}[${index}]`));
|
|
59
|
+
};
|
|
60
|
+
const parseMembership = (value, path) => {
|
|
61
|
+
const record = asRecord(value, path);
|
|
62
|
+
assertNoUnknownKeys(record, ["role", "variables"], path);
|
|
63
|
+
const role = record.role;
|
|
64
|
+
if (typeof role !== "string" || role === "") {
|
|
65
|
+
throw membershipInputError(`${path}.role must be a non-empty string.`);
|
|
66
|
+
}
|
|
67
|
+
const variables = record.variables;
|
|
68
|
+
if (variables === void 0 || variables === null) {
|
|
69
|
+
return { role, variables: [] };
|
|
70
|
+
}
|
|
71
|
+
if (!Array.isArray(variables)) {
|
|
72
|
+
throw membershipInputError(`${path}.variables must be an array, got ${describeJson(variables)}.`);
|
|
73
|
+
}
|
|
74
|
+
return { role, variables: variables.map((it, index) => parseVariable(it, `${path}.variables[${index}]`)) };
|
|
75
|
+
};
|
|
76
|
+
const parseVariable = (value, path) => {
|
|
77
|
+
const record = asRecord(value, path);
|
|
78
|
+
assertNoUnknownKeys(record, ["name", "values"], path);
|
|
79
|
+
const name = record.name;
|
|
80
|
+
if (typeof name !== "string" || name === "") {
|
|
81
|
+
throw membershipInputError(`${path}.name must be a non-empty string.`);
|
|
82
|
+
}
|
|
83
|
+
const values = record.values;
|
|
84
|
+
if (!Array.isArray(values) || values.some((it) => typeof it !== "string")) {
|
|
85
|
+
throw membershipInputError(`${path}.values must be an array of strings.`);
|
|
86
|
+
}
|
|
87
|
+
return { name, values: values.filter((it) => typeof it === "string") };
|
|
88
|
+
};
|
|
89
|
+
const asRecord = (value, path) => {
|
|
90
|
+
if (typeof value !== "object" || value === null || Array.isArray(value)) {
|
|
91
|
+
throw membershipInputError(`${path} must be an object, got ${describeJson(value)}.`);
|
|
92
|
+
}
|
|
93
|
+
return { ...value };
|
|
94
|
+
};
|
|
95
|
+
const assertNoUnknownKeys = (record, known, path) => {
|
|
96
|
+
const unknown = Object.keys(record).filter((it) => !known.includes(it));
|
|
97
|
+
if (unknown.length > 0) {
|
|
98
|
+
throw membershipInputError(`${path} has unknown ${unknown.length === 1 ? "key" : "keys"} ${unknown.join(", ")}. Allowed: ${known.join(", ")}.`);
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
const describeJson = (value) => value === null ? "null" : Array.isArray(value) ? "an array" : typeof value;
|
|
102
|
+
export {
|
|
103
|
+
MEMBERSHIPS_JSON_EXAMPLE,
|
|
104
|
+
configureMembershipOptions,
|
|
105
|
+
readMembershipInputSource,
|
|
106
|
+
resolveMemberships,
|
|
107
|
+
resolveNonEmptyMemberships
|
|
108
|
+
};
|
|
109
|
+
//# sourceMappingURL=membershipInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"membershipInput.js","sources":["../../../../../../../packages/cli/src/commands/tenant/member/membershipInput.ts"],"sourcesContent":["import { CliError, CommandConfiguration, ExitCode } from '@contember/cli-common'\nimport type { MembershipInput } from '@contember/graphql-client-tenant'\nimport type { StdinReader } from '../../../lib/tenant/stdin.js'\n\n/** `Arguments` is not part of the `@contember/cli-common` public surface, so the widest form is spelled out here. */\ntype AnyArguments = Record<string, string | string[] | undefined>\n\n/**\n * The options every command taking `memberships: [MembershipInput!]!` declares.\n *\n * There are deliberately exactly two ways in, and no third one:\n *\n * - `--role <role>`, repeatable — a membership with no variables, which is the whole shape a human\n * needs for `--role editor`;\n * - `--memberships <json>` / `--memberships-stdin` — the complete `MembershipInput[]` structure, which is\n * what a script or an agent already holds.\n *\n * A compact string syntax for variables (`editor:locale=en,cs`) is intentionally not offered: it breaks\n * the moment a value contains the separator, and the JSON form costs an agent nothing.\n */\nexport type MembershipOptions = {\n\trole?: string[]\n\tmemberships?: string\n\t['memberships-stdin']?: boolean\n}\n\nexport const MEMBERSHIPS_JSON_EXAMPLE = '[{\"role\":\"editor\",\"variables\":[{\"name\":\"locale\",\"values\":[\"cs\",\"en\"]}]}]'\n\n/** `roleDescription` exists for `tenant api-key create`, where `--role` also names a global tenant role. */\nexport const configureMembershipOptions = (\n\tconfiguration: CommandConfiguration<AnyArguments, MembershipOptions>,\n\t{ roleDescription = 'Membership role without variables. Repeat for several roles.' }: { roleDescription?: string } = {},\n): void => {\n\tconfiguration.option('role').valueArray().description(roleDescription)\n\tconfiguration.option('memberships').valueRequired().description(\n\t\t`Memberships as JSON, e.g. '${MEMBERSHIPS_JSON_EXAMPLE}'. Not combinable with --role.`,\n\t)\n\tconfiguration.option('memberships-stdin').valueNone().description('Read the memberships JSON from stdin instead of --memberships.')\n}\n\n/** The raw values of {@link MembershipOptions}, read by the command so no generic `Input` has to be passed around. */\nexport interface MembershipInputSource {\n\troles: string[] | undefined\n\tjson: string | undefined\n\tfromStdin: boolean\n}\n\nexport const readMembershipInputSource = (input: {\n\tgetOption(name: 'role'): string[] | undefined\n\tgetOption(name: 'memberships'): string | undefined\n\tgetOption(name: 'memberships-stdin'): boolean | undefined\n}): MembershipInputSource => ({\n\troles: input.getOption('role'),\n\tjson: input.getOption('memberships'),\n\tfromStdin: input.getOption('memberships-stdin') === true,\n})\n\nexport const resolveMemberships = async (source: MembershipInputSource, readStdin: StdinReader): Promise<MembershipInput[]> => {\n\tconst roles = source.roles ?? []\n\tconst hasJson = source.json !== undefined\n\tif (hasJson && source.fromStdin) {\n\t\tthrow membershipInputError('Pass the memberships either as --memberships or as --memberships-stdin, not both.')\n\t}\n\tif (roles.length > 0 && (hasJson || source.fromStdin)) {\n\t\tthrow membershipInputError('Pass the memberships either as --role or as JSON (--memberships / --memberships-stdin), not both.')\n\t}\n\tif (roles.length > 0) {\n\t\treturn roles.map(role => ({ role, variables: [] }))\n\t}\n\tif (hasJson) {\n\t\treturn parseMemberships(source.json ?? '', '--memberships')\n\t}\n\tif (source.fromStdin) {\n\t\treturn parseMemberships(await readStdin(), 'stdin')\n\t}\n\tthrow membershipInputError(\n\t\t`No memberships given. Pass --role <role> for a role without variables, or the full structure as --memberships '${MEMBERSHIPS_JSON_EXAMPLE}'.`,\n\t)\n}\n\n/** Creation operations must not create an identity with no project access. */\nexport const resolveNonEmptyMemberships = async (source: MembershipInputSource, readStdin: StdinReader): Promise<MembershipInput[]> => {\n\tconst memberships = await resolveMemberships(source, readStdin)\n\tif (memberships.length === 0) {\n\t\tthrow membershipInputError('At least one membership is required for this operation.')\n\t}\n\treturn memberships\n}\n\nconst membershipInputError = (message: string, details?: unknown): CliError =>\n\tnew CliError(message, { code: 'INVALID_MEMBERSHIPS', exitCode: ExitCode.InputError, details })\n\nconst parseMemberships = (json: string, origin: string): MembershipInput[] => {\n\tif (json.trim() === '') {\n\t\tthrow membershipInputError(`Empty memberships JSON read from ${origin}.`)\n\t}\n\tlet parsed: unknown\n\ttry {\n\t\tparsed = JSON.parse(json)\n\t} catch (e) {\n\t\tthrow membershipInputError(`Memberships read from ${origin} are not valid JSON: ${e instanceof Error ? e.message : String(e)}`)\n\t}\n\tif (!Array.isArray(parsed)) {\n\t\tthrow membershipInputError(`Memberships read from ${origin} must be a JSON array, got ${describeJson(parsed)}.`)\n\t}\n\treturn parsed.map((it, index) => parseMembership(it, `${origin}[${index}]`))\n}\n\nconst parseMembership = (value: unknown, path: string): MembershipInput => {\n\tconst record = asRecord(value, path)\n\tassertNoUnknownKeys(record, ['role', 'variables'], path)\n\tconst role = record.role\n\tif (typeof role !== 'string' || role === '') {\n\t\tthrow membershipInputError(`${path}.role must be a non-empty string.`)\n\t}\n\tconst variables = record.variables\n\tif (variables === undefined || variables === null) {\n\t\treturn { role, variables: [] }\n\t}\n\tif (!Array.isArray(variables)) {\n\t\tthrow membershipInputError(`${path}.variables must be an array, got ${describeJson(variables)}.`)\n\t}\n\treturn { role, variables: variables.map((it, index) => parseVariable(it, `${path}.variables[${index}]`)) }\n}\n\nconst parseVariable = (value: unknown, path: string): { name: string; values: string[] } => {\n\tconst record = asRecord(value, path)\n\tassertNoUnknownKeys(record, ['name', 'values'], path)\n\tconst name = record.name\n\tif (typeof name !== 'string' || name === '') {\n\t\tthrow membershipInputError(`${path}.name must be a non-empty string.`)\n\t}\n\tconst values = record.values\n\tif (!Array.isArray(values) || values.some(it => typeof it !== 'string')) {\n\t\tthrow membershipInputError(`${path}.values must be an array of strings.`)\n\t}\n\treturn { name, values: values.filter(it => typeof it === 'string') }\n}\n\nconst asRecord = (value: unknown, path: string): Record<string, unknown> => {\n\tif (typeof value !== 'object' || value === null || Array.isArray(value)) {\n\t\tthrow membershipInputError(`${path} must be an object, got ${describeJson(value)}.`)\n\t}\n\treturn { ...value }\n}\n\n// a typo'd key would otherwise be dropped without a word, which is the worst possible failure for a script\nconst assertNoUnknownKeys = (record: Record<string, unknown>, known: string[], path: string): void => {\n\tconst unknown = Object.keys(record).filter(it => !known.includes(it))\n\tif (unknown.length > 0) {\n\t\tthrow membershipInputError(`${path} has unknown ${unknown.length === 1 ? 'key' : 'keys'} ${unknown.join(', ')}. Allowed: ${known.join(', ')}.`)\n\t}\n}\n\nconst describeJson = (value: unknown): string => (value === null ? 'null' : Array.isArray(value) ? 'an array' : typeof value)\n"],"names":[],"mappings":";AA0BO,MAAM,2BAA2B;AAGjC,MAAM,6BAA6B,CACzC,eACA,EAAE,kBAAkB,+DAAA,IAAiG,CAAA,MAC3G;AACV,gBAAc,OAAO,MAAM,EAAE,WAAA,EAAa,YAAY,eAAe;AACrE,gBAAc,OAAO,aAAa,EAAE,cAAA,EAAgB;AAAA,IACnD,8BAA8B,wBAAwB;AAAA,EAAA;AAEvD,gBAAc,OAAO,mBAAmB,EAAE,UAAA,EAAY,YAAY,gEAAgE;AACnI;AASO,MAAM,4BAA4B,CAAC,WAIZ;AAAA,EAC7B,OAAO,MAAM,UAAU,MAAM;AAAA,EAC7B,MAAM,MAAM,UAAU,aAAa;AAAA,EACnC,WAAW,MAAM,UAAU,mBAAmB,MAAM;AACrD;AAEO,MAAM,qBAAqB,OAAO,QAA+B,cAAuD;AAC9H,QAAM,QAAQ,OAAO,SAAS,CAAA;AAC9B,QAAM,UAAU,OAAO,SAAS;AAChC,MAAI,WAAW,OAAO,WAAW;AAChC,UAAM,qBAAqB,mFAAmF;AAAA,EAC/G;AACA,MAAI,MAAM,SAAS,MAAM,WAAW,OAAO,YAAY;AACtD,UAAM,qBAAqB,mGAAmG;AAAA,EAC/H;AACA,MAAI,MAAM,SAAS,GAAG;AACrB,WAAO,MAAM,IAAI,CAAA,UAAS,EAAE,MAAM,WAAW,CAAA,IAAK;AAAA,EACnD;AACA,MAAI,SAAS;AACZ,WAAO,iBAAiB,OAAO,QAAQ,IAAI,eAAe;AAAA,EAC3D;AACA,MAAI,OAAO,WAAW;AACrB,WAAO,iBAAiB,MAAM,UAAA,GAAa,OAAO;AAAA,EACnD;AACA,QAAM;AAAA,IACL,kHAAkH,wBAAwB;AAAA,EAAA;AAE5I;AAGO,MAAM,6BAA6B,OAAO,QAA+B,cAAuD;AACtI,QAAM,cAAc,MAAM,mBAAmB,QAAQ,SAAS;AAC9D,MAAI,YAAY,WAAW,GAAG;AAC7B,UAAM,qBAAqB,yDAAyD;AAAA,EACrF;AACA,SAAO;AACR;AAEA,MAAM,uBAAuB,CAAC,SAAiB,YAC9C,IAAI,SAAS,SAAS,EAAE,MAAM,uBAAuB,UAAU,SAAS,YAAY,SAAS;AAE9F,MAAM,mBAAmB,CAAC,MAAc,WAAsC;AAC7E,MAAI,KAAK,KAAA,MAAW,IAAI;AACvB,UAAM,qBAAqB,oCAAoC,MAAM,GAAG;AAAA,EACzE;AACA,MAAI;AACJ,MAAI;AACH,aAAS,KAAK,MAAM,IAAI;AAAA,EACzB,SAAS,GAAG;AACX,UAAM,qBAAqB,yBAAyB,MAAM,wBAAwB,aAAa,QAAQ,EAAE,UAAU,OAAO,CAAC,CAAC,EAAE;AAAA,EAC/H;AACA,MAAI,CAAC,MAAM,QAAQ,MAAM,GAAG;AAC3B,UAAM,qBAAqB,yBAAyB,MAAM,8BAA8B,aAAa,MAAM,CAAC,GAAG;AAAA,EAChH;AACA,SAAO,OAAO,IAAI,CAAC,IAAI,UAAU,gBAAgB,IAAI,GAAG,MAAM,IAAI,KAAK,GAAG,CAAC;AAC5E;AAEA,MAAM,kBAAkB,CAAC,OAAgB,SAAkC;AAC1E,QAAM,SAAS,SAAS,OAAO,IAAI;AACnC,sBAAoB,QAAQ,CAAC,QAAQ,WAAW,GAAG,IAAI;AACvD,QAAM,OAAO,OAAO;AACpB,MAAI,OAAO,SAAS,YAAY,SAAS,IAAI;AAC5C,UAAM,qBAAqB,GAAG,IAAI,mCAAmC;AAAA,EACtE;AACA,QAAM,YAAY,OAAO;AACzB,MAAI,cAAc,UAAa,cAAc,MAAM;AAClD,WAAO,EAAE,MAAM,WAAW,GAAC;AAAA,EAC5B;AACA,MAAI,CAAC,MAAM,QAAQ,SAAS,GAAG;AAC9B,UAAM,qBAAqB,GAAG,IAAI,oCAAoC,aAAa,SAAS,CAAC,GAAG;AAAA,EACjG;AACA,SAAO,EAAE,MAAM,WAAW,UAAU,IAAI,CAAC,IAAI,UAAU,cAAc,IAAI,GAAG,IAAI,cAAc,KAAK,GAAG,CAAC,EAAA;AACxG;AAEA,MAAM,gBAAgB,CAAC,OAAgB,SAAqD;AAC3F,QAAM,SAAS,SAAS,OAAO,IAAI;AACnC,sBAAoB,QAAQ,CAAC,QAAQ,QAAQ,GAAG,IAAI;AACpD,QAAM,OAAO,OAAO;AACpB,MAAI,OAAO,SAAS,YAAY,SAAS,IAAI;AAC5C,UAAM,qBAAqB,GAAG,IAAI,mCAAmC;AAAA,EACtE;AACA,QAAM,SAAS,OAAO;AACtB,MAAI,CAAC,MAAM,QAAQ,MAAM,KAAK,OAAO,KAAK,CAAA,OAAM,OAAO,OAAO,QAAQ,GAAG;AACxE,UAAM,qBAAqB,GAAG,IAAI,sCAAsC;AAAA,EACzE;AACA,SAAO,EAAE,MAAM,QAAQ,OAAO,OAAO,CAAA,OAAM,OAAO,OAAO,QAAQ,EAAA;AAClE;AAEA,MAAM,WAAW,CAAC,OAAgB,SAA0C;AAC3E,MAAI,OAAO,UAAU,YAAY,UAAU,QAAQ,MAAM,QAAQ,KAAK,GAAG;AACxE,UAAM,qBAAqB,GAAG,IAAI,2BAA2B,aAAa,KAAK,CAAC,GAAG;AAAA,EACpF;AACA,SAAO,EAAE,GAAG,MAAA;AACb;AAGA,MAAM,sBAAsB,CAAC,QAAiC,OAAiB,SAAuB;AACrG,QAAM,UAAU,OAAO,KAAK,MAAM,EAAE,OAAO,CAAA,OAAM,CAAC,MAAM,SAAS,EAAE,CAAC;AACpE,MAAI,QAAQ,SAAS,GAAG;AACvB,UAAM,qBAAqB,GAAG,IAAI,gBAAgB,QAAQ,WAAW,IAAI,QAAQ,MAAM,IAAI,QAAQ,KAAK,IAAI,CAAC,cAAc,MAAM,KAAK,IAAI,CAAC,GAAG;AAAA,EAC/I;AACD;AAEA,MAAM,eAAe,CAAC,UAA4B,UAAU,OAAO,SAAS,MAAM,QAAQ,KAAK,IAAI,aAAa,OAAO;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const cliCommon = require("@contember/cli-common");
|
|
4
|
+
const tenantOutput = require("../tenantOutput.cjs");
|
|
5
|
+
class TenantIdentityRoleAddCommand extends cliCommon.Command {
|
|
6
|
+
constructor(tenantClientProvider) {
|
|
7
|
+
super();
|
|
8
|
+
this.tenantClientProvider = tenantClientProvider;
|
|
9
|
+
}
|
|
10
|
+
configure(configuration) {
|
|
11
|
+
configuration.description("Grant global (project-independent) roles to an identity.");
|
|
12
|
+
configuration.argument("identityId").description('Identity id, as listed by "tenant person list".');
|
|
13
|
+
configuration.argument("role").variadic().description("One or more global roles to grant.");
|
|
14
|
+
}
|
|
15
|
+
async execute(input, output) {
|
|
16
|
+
const identityId = input.getArgument("identityId");
|
|
17
|
+
const added = input.getArgument("role");
|
|
18
|
+
const roles = await this.tenantClientProvider.person().addGlobalIdentityRoles(identityId, added);
|
|
19
|
+
output.info(`Granted ${added.join(", ")} to identity ${identityId}.`);
|
|
20
|
+
output.data(
|
|
21
|
+
{ identityId, added, roles },
|
|
22
|
+
{ human: (it) => it.roles === null ? tenantOutput.humanText(it.identityId) : it.roles.map(tenantOutput.humanText).join(", "), quiet: (it) => it.identityId }
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.TenantIdentityRoleAddCommand = TenantIdentityRoleAddCommand;
|
|
27
|
+
//# sourceMappingURL=TenantIdentityRoleAddCommand.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantIdentityRoleAddCommand.cjs","sources":["../../../../../../../packages/cli/src/commands/tenant/person/TenantIdentityRoleAddCommand.ts"],"sourcesContent":["import { Command, CommandConfiguration, Input, Output } from '@contember/cli-common'\nimport { TenantClientProvider } from '../../../lib/TenantClientProvider.js'\nimport { humanText } from '../tenantOutput.js'\n\ntype Args = {\n\tidentityId: string\n\trole: string[]\n}\n\ntype Options = {}\n\ninterface IdentityRolesResult {\n\tidentityId: string\n\tadded: string[]\n\t/** All global roles of the identity after the change, or null when the token may not read them. */\n\troles: string[] | null\n}\n\nexport class TenantIdentityRoleAddCommand extends Command<Args, Options> {\n\tconstructor(\n\t\tprivate readonly tenantClientProvider: TenantClientProvider,\n\t) {\n\t\tsuper()\n\t}\n\n\tprotected configure(configuration: CommandConfiguration<Args, Options>): void {\n\t\tconfiguration.description('Grant global (project-independent) roles to an identity.')\n\t\tconfiguration.argument('identityId').description('Identity id, as listed by \"tenant person list\".')\n\t\tconfiguration.argument('role').variadic().description('One or more global roles to grant.')\n\t}\n\n\tprotected async execute(input: Input<Args, Options>, output: Output): Promise<void> {\n\t\tconst identityId = input.getArgument('identityId')\n\t\tconst added = input.getArgument('role')\n\n\t\tconst roles = await this.tenantClientProvider.person().addGlobalIdentityRoles(identityId, added)\n\n\t\toutput.info(`Granted ${added.join(', ')} to identity ${identityId}.`)\n\t\toutput.data<IdentityRolesResult>(\n\t\t\t{ identityId, added, roles },\n\t\t\t{ human: it => it.roles === null ? humanText(it.identityId) : it.roles.map(humanText).join(', '), quiet: it => it.identityId },\n\t\t)\n\t}\n}\n"],"names":["Command","humanText"],"mappings":";;;;AAkBO,MAAM,qCAAqCA,UAAAA,QAAuB;AAAA,EACxE,YACkB,sBAChB;AACD,UAAA;AAFiB,SAAA,uBAAA;AAAA,EAGlB;AAAA,EAEU,UAAU,eAA0D;AAC7E,kBAAc,YAAY,0DAA0D;AACpF,kBAAc,SAAS,YAAY,EAAE,YAAY,iDAAiD;AAClG,kBAAc,SAAS,MAAM,EAAE,SAAA,EAAW,YAAY,oCAAoC;AAAA,EAC3F;AAAA,EAEA,MAAgB,QAAQ,OAA6B,QAA+B;AACnF,UAAM,aAAa,MAAM,YAAY,YAAY;AACjD,UAAM,QAAQ,MAAM,YAAY,MAAM;AAEtC,UAAM,QAAQ,MAAM,KAAK,qBAAqB,SAAS,uBAAuB,YAAY,KAAK;AAE/F,WAAO,KAAK,WAAW,MAAM,KAAK,IAAI,CAAC,gBAAgB,UAAU,GAAG;AACpE,WAAO;AAAA,MACN,EAAE,YAAY,OAAO,MAAA;AAAA,MACrB,EAAE,OAAO,CAAA,OAAM,GAAG,UAAU,OAAOC,aAAAA,UAAU,GAAG,UAAU,IAAI,GAAG,MAAM,IAAIA,sBAAS,EAAE,KAAK,IAAI,GAAG,OAAO,CAAA,OAAM,GAAG,WAAA;AAAA,IAAW;AAAA,EAE/H;AACD;;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Command } from "@contember/cli-common";
|
|
2
|
+
import { humanText } from "../tenantOutput.js";
|
|
3
|
+
class TenantIdentityRoleAddCommand extends Command {
|
|
4
|
+
constructor(tenantClientProvider) {
|
|
5
|
+
super();
|
|
6
|
+
this.tenantClientProvider = tenantClientProvider;
|
|
7
|
+
}
|
|
8
|
+
configure(configuration) {
|
|
9
|
+
configuration.description("Grant global (project-independent) roles to an identity.");
|
|
10
|
+
configuration.argument("identityId").description('Identity id, as listed by "tenant person list".');
|
|
11
|
+
configuration.argument("role").variadic().description("One or more global roles to grant.");
|
|
12
|
+
}
|
|
13
|
+
async execute(input, output) {
|
|
14
|
+
const identityId = input.getArgument("identityId");
|
|
15
|
+
const added = input.getArgument("role");
|
|
16
|
+
const roles = await this.tenantClientProvider.person().addGlobalIdentityRoles(identityId, added);
|
|
17
|
+
output.info(`Granted ${added.join(", ")} to identity ${identityId}.`);
|
|
18
|
+
output.data(
|
|
19
|
+
{ identityId, added, roles },
|
|
20
|
+
{ human: (it) => it.roles === null ? humanText(it.identityId) : it.roles.map(humanText).join(", "), quiet: (it) => it.identityId }
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
export {
|
|
25
|
+
TenantIdentityRoleAddCommand
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=TenantIdentityRoleAddCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantIdentityRoleAddCommand.js","sources":["../../../../../../../packages/cli/src/commands/tenant/person/TenantIdentityRoleAddCommand.ts"],"sourcesContent":["import { Command, CommandConfiguration, Input, Output } from '@contember/cli-common'\nimport { TenantClientProvider } from '../../../lib/TenantClientProvider.js'\nimport { humanText } from '../tenantOutput.js'\n\ntype Args = {\n\tidentityId: string\n\trole: string[]\n}\n\ntype Options = {}\n\ninterface IdentityRolesResult {\n\tidentityId: string\n\tadded: string[]\n\t/** All global roles of the identity after the change, or null when the token may not read them. */\n\troles: string[] | null\n}\n\nexport class TenantIdentityRoleAddCommand extends Command<Args, Options> {\n\tconstructor(\n\t\tprivate readonly tenantClientProvider: TenantClientProvider,\n\t) {\n\t\tsuper()\n\t}\n\n\tprotected configure(configuration: CommandConfiguration<Args, Options>): void {\n\t\tconfiguration.description('Grant global (project-independent) roles to an identity.')\n\t\tconfiguration.argument('identityId').description('Identity id, as listed by \"tenant person list\".')\n\t\tconfiguration.argument('role').variadic().description('One or more global roles to grant.')\n\t}\n\n\tprotected async execute(input: Input<Args, Options>, output: Output): Promise<void> {\n\t\tconst identityId = input.getArgument('identityId')\n\t\tconst added = input.getArgument('role')\n\n\t\tconst roles = await this.tenantClientProvider.person().addGlobalIdentityRoles(identityId, added)\n\n\t\toutput.info(`Granted ${added.join(', ')} to identity ${identityId}.`)\n\t\toutput.data<IdentityRolesResult>(\n\t\t\t{ identityId, added, roles },\n\t\t\t{ human: it => it.roles === null ? humanText(it.identityId) : it.roles.map(humanText).join(', '), quiet: it => it.identityId },\n\t\t)\n\t}\n}\n"],"names":[],"mappings":";;AAkBO,MAAM,qCAAqC,QAAuB;AAAA,EACxE,YACkB,sBAChB;AACD,UAAA;AAFiB,SAAA,uBAAA;AAAA,EAGlB;AAAA,EAEU,UAAU,eAA0D;AAC7E,kBAAc,YAAY,0DAA0D;AACpF,kBAAc,SAAS,YAAY,EAAE,YAAY,iDAAiD;AAClG,kBAAc,SAAS,MAAM,EAAE,SAAA,EAAW,YAAY,oCAAoC;AAAA,EAC3F;AAAA,EAEA,MAAgB,QAAQ,OAA6B,QAA+B;AACnF,UAAM,aAAa,MAAM,YAAY,YAAY;AACjD,UAAM,QAAQ,MAAM,YAAY,MAAM;AAEtC,UAAM,QAAQ,MAAM,KAAK,qBAAqB,SAAS,uBAAuB,YAAY,KAAK;AAE/F,WAAO,KAAK,WAAW,MAAM,KAAK,IAAI,CAAC,gBAAgB,UAAU,GAAG;AACpE,WAAO;AAAA,MACN,EAAE,YAAY,OAAO,MAAA;AAAA,MACrB,EAAE,OAAO,CAAA,OAAM,GAAG,UAAU,OAAO,UAAU,GAAG,UAAU,IAAI,GAAG,MAAM,IAAI,SAAS,EAAE,KAAK,IAAI,GAAG,OAAO,CAAA,OAAM,GAAG,WAAA;AAAA,IAAW;AAAA,EAE/H;AACD;"}
|