@contember/cli 2.2.0-alpha.3 → 2.2.0-alpha.4
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 -41
- package/dist/development/run.cjs +12 -4
- 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 +56 -29
- package/dist/development/src/commands/deploy/DeployCommand.cjs.map +1 -1
- package/dist/development/src/commands/deploy/DeployCommand.js +57 -30
- package/dist/development/src/commands/deploy/DeployCommand.js.map +1 -1
- package/dist/development/src/commands/migrations/MigrationAmendCommand.cjs +64 -24
- package/dist/development/src/commands/migrations/MigrationAmendCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationAmendCommand.js +65 -25
- 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 +73 -25
- package/dist/development/src/commands/migrations/MigrationDiffCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationDiffCommand.js +74 -26
- package/dist/development/src/commands/migrations/MigrationDiffCommand.js.map +1 -1
- package/dist/development/src/commands/migrations/MigrationExecuteCommand.cjs +7 -2
- package/dist/development/src/commands/migrations/MigrationExecuteCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationExecuteCommand.js +7 -2
- package/dist/development/src/commands/migrations/MigrationExecuteCommand.js.map +1 -1
- package/dist/development/src/commands/migrations/MigrationInitStateCommand.cjs +11 -4
- package/dist/development/src/commands/migrations/MigrationInitStateCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationInitStateCommand.js +11 -4
- package/dist/development/src/commands/migrations/MigrationInitStateCommand.js.map +1 -1
- 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 +39 -8
- package/dist/development/src/commands/migrations/MigrationSnapshotCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationSnapshotCommand.js +40 -9
- package/dist/development/src/commands/migrations/MigrationSnapshotCommand.js.map +1 -1
- 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 +6 -7
- package/dist/development/src/commands/migrations/MigrationVerifySnapshotCommand.cjs.map +1 -1
- package/dist/development/src/commands/migrations/MigrationVerifySnapshotCommand.js +6 -7
- package/dist/development/src/commands/migrations/MigrationVerifySnapshotCommand.js.map +1 -1
- 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 +12 -12
- 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 +31 -11
- package/dist/development/src/commands/tenant/TenantApplyCommand.cjs.map +1 -1
- package/dist/development/src/commands/tenant/TenantApplyCommand.js +32 -12
- package/dist/development/src/commands/tenant/TenantApplyCommand.js.map +1 -1
- 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/dic.cjs +152 -47
- package/dist/development/src/dic.cjs.map +1 -1
- package/dist/development/src/dic.js +152 -47
- 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/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/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 +97 -50
- package/dist/development/src/lib/migrations/MigrationExecutionFacade.cjs.map +1 -1
- package/dist/development/src/lib/migrations/MigrationExecutionFacade.js +97 -50
- 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 +2 -1
- package/dist/development/src/lib/migrations/MigrationRebaseFacade.cjs.map +1 -1
- package/dist/development/src/lib/migrations/MigrationRebaseFacade.js +2 -1
- package/dist/development/src/lib/migrations/MigrationRebaseFacade.js.map +1 -1
- package/dist/development/src/lib/migrations/MigrationSnapshotFacade.cjs +14 -10
- package/dist/development/src/lib/migrations/MigrationSnapshotFacade.cjs.map +1 -1
- package/dist/development/src/lib/migrations/MigrationSnapshotFacade.js +14 -10
- package/dist/development/src/lib/migrations/MigrationSnapshotFacade.js.map +1 -1
- 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/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/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 +152 -0
- package/dist/development/src/lib/tenant/TenantApiTransport.cjs.map +1 -0
- package/dist/development/src/lib/tenant/TenantApiTransport.js +152 -0
- package/dist/development/src/lib/tenant/TenantApiTransport.js.map +1 -0
- package/dist/development/src/lib/tenant/TenantConfigApplier.cjs +95 -26
- package/dist/development/src/lib/tenant/TenantConfigApplier.cjs.map +1 -1
- package/dist/development/src/lib/tenant/TenantConfigApplier.js +95 -26
- package/dist/development/src/lib/tenant/TenantConfigApplier.js.map +1 -1
- 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 +101 -0
- package/dist/development/src/lib/tenant/clients/TenantPolicyClient.cjs.map +1 -0
- package/dist/development/src/lib/tenant/clients/TenantPolicyClient.js +101 -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.map +1 -1
- package/dist/development/src/lib/tenant/tenantConfig.js.map +1 -1
- 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/production/run.cjs +12 -4
- 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 +56 -29
- package/dist/production/src/commands/deploy/DeployCommand.cjs.map +1 -1
- package/dist/production/src/commands/deploy/DeployCommand.js +57 -30
- package/dist/production/src/commands/deploy/DeployCommand.js.map +1 -1
- package/dist/production/src/commands/migrations/MigrationAmendCommand.cjs +64 -24
- package/dist/production/src/commands/migrations/MigrationAmendCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationAmendCommand.js +65 -25
- 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 +73 -25
- package/dist/production/src/commands/migrations/MigrationDiffCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationDiffCommand.js +74 -26
- package/dist/production/src/commands/migrations/MigrationDiffCommand.js.map +1 -1
- package/dist/production/src/commands/migrations/MigrationExecuteCommand.cjs +7 -2
- package/dist/production/src/commands/migrations/MigrationExecuteCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationExecuteCommand.js +7 -2
- package/dist/production/src/commands/migrations/MigrationExecuteCommand.js.map +1 -1
- package/dist/production/src/commands/migrations/MigrationInitStateCommand.cjs +11 -4
- package/dist/production/src/commands/migrations/MigrationInitStateCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationInitStateCommand.js +11 -4
- package/dist/production/src/commands/migrations/MigrationInitStateCommand.js.map +1 -1
- 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 +39 -8
- package/dist/production/src/commands/migrations/MigrationSnapshotCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationSnapshotCommand.js +40 -9
- package/dist/production/src/commands/migrations/MigrationSnapshotCommand.js.map +1 -1
- 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 +6 -7
- package/dist/production/src/commands/migrations/MigrationVerifySnapshotCommand.cjs.map +1 -1
- package/dist/production/src/commands/migrations/MigrationVerifySnapshotCommand.js +6 -7
- package/dist/production/src/commands/migrations/MigrationVerifySnapshotCommand.js.map +1 -1
- 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 +12 -12
- 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 +31 -11
- package/dist/production/src/commands/tenant/TenantApplyCommand.cjs.map +1 -1
- package/dist/production/src/commands/tenant/TenantApplyCommand.js +32 -12
- package/dist/production/src/commands/tenant/TenantApplyCommand.js.map +1 -1
- 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/dic.cjs +152 -47
- package/dist/production/src/dic.cjs.map +1 -1
- package/dist/production/src/dic.js +152 -47
- 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/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/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 +97 -50
- package/dist/production/src/lib/migrations/MigrationExecutionFacade.cjs.map +1 -1
- package/dist/production/src/lib/migrations/MigrationExecutionFacade.js +97 -50
- 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 +2 -1
- package/dist/production/src/lib/migrations/MigrationRebaseFacade.cjs.map +1 -1
- package/dist/production/src/lib/migrations/MigrationRebaseFacade.js +2 -1
- package/dist/production/src/lib/migrations/MigrationRebaseFacade.js.map +1 -1
- package/dist/production/src/lib/migrations/MigrationSnapshotFacade.cjs +14 -10
- package/dist/production/src/lib/migrations/MigrationSnapshotFacade.cjs.map +1 -1
- package/dist/production/src/lib/migrations/MigrationSnapshotFacade.js +14 -10
- package/dist/production/src/lib/migrations/MigrationSnapshotFacade.js.map +1 -1
- 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/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/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 +152 -0
- package/dist/production/src/lib/tenant/TenantApiTransport.cjs.map +1 -0
- package/dist/production/src/lib/tenant/TenantApiTransport.js +152 -0
- package/dist/production/src/lib/tenant/TenantApiTransport.js.map +1 -0
- package/dist/production/src/lib/tenant/TenantConfigApplier.cjs +95 -26
- package/dist/production/src/lib/tenant/TenantConfigApplier.cjs.map +1 -1
- package/dist/production/src/lib/tenant/TenantConfigApplier.js +95 -26
- package/dist/production/src/lib/tenant/TenantConfigApplier.js.map +1 -1
- 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 +101 -0
- package/dist/production/src/lib/tenant/clients/TenantPolicyClient.cjs.map +1 -0
- package/dist/production/src/lib/tenant/clients/TenantPolicyClient.js +101 -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.map +1 -1
- package/dist/production/src/lib/tenant/tenantConfig.js.map +1 -1
- 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/types/commands/actions/ActionsGetEventCommand.d.ts +6 -4
- package/dist/types/commands/actions/ActionsGetEventCommand.d.ts.map +1 -1
- package/dist/types/commands/actions/ActionsListFailedEventsCommand.d.ts +5 -4
- package/dist/types/commands/actions/ActionsListFailedEventsCommand.d.ts.map +1 -1
- package/dist/types/commands/actions/ActionsListVariablesCommand.d.ts +5 -3
- package/dist/types/commands/actions/ActionsListVariablesCommand.d.ts.map +1 -1
- package/dist/types/commands/actions/ActionsRetryEventCommand.d.ts +6 -4
- package/dist/types/commands/actions/ActionsRetryEventCommand.d.ts.map +1 -1
- package/dist/types/commands/actions/ActionsSetVariablesCommand.d.ts +5 -3
- package/dist/types/commands/actions/ActionsSetVariablesCommand.d.ts.map +1 -1
- package/dist/types/commands/actions/ActionsStopEventCommand.d.ts +6 -4
- package/dist/types/commands/actions/ActionsStopEventCommand.d.ts.map +1 -1
- package/dist/types/commands/deploy/DeployCommand.d.ts +11 -3
- package/dist/types/commands/deploy/DeployCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationAmendCommand.d.ts +3 -2
- 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 +2 -2
- package/dist/types/commands/migrations/MigrationDescribeCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationDiffCommand.d.ts +4 -3
- package/dist/types/commands/migrations/MigrationDiffCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationExecuteCommand.d.ts +4 -3
- package/dist/types/commands/migrations/MigrationExecuteCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationInitStateCommand.d.ts +2 -2
- package/dist/types/commands/migrations/MigrationInitStateCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationRebaseCommand.d.ts +4 -3
- package/dist/types/commands/migrations/MigrationRebaseCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationSnapshotCommand.d.ts +5 -3
- package/dist/types/commands/migrations/MigrationSnapshotCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationStatusCommand.d.ts +9 -3
- package/dist/types/commands/migrations/MigrationStatusCommand.d.ts.map +1 -1
- package/dist/types/commands/migrations/MigrationVerifySnapshotCommand.d.ts +2 -2
- package/dist/types/commands/migrations/MigrationVerifySnapshotCommand.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 +1 -0
- package/dist/types/commands/misc/index.d.ts.map +1 -1
- package/dist/types/commands/project/ProjectGenerateDocumentationCommand.d.ts +5 -3
- package/dist/types/commands/project/ProjectGenerateDocumentationCommand.d.ts.map +1 -1
- package/dist/types/commands/project/ProjectPrintSchemaCommand.d.ts +2 -2
- package/dist/types/commands/project/ProjectPrintSchemaCommand.d.ts.map +1 -1
- package/dist/types/commands/project/ProjectValidateCommand.d.ts +3 -3
- package/dist/types/commands/project/ProjectValidateCommand.d.ts.map +1 -1
- package/dist/types/commands/tenant/TenantApplyCommand.d.ts +10 -3
- package/dist/types/commands/tenant/TenantApplyCommand.d.ts.map +1 -1
- 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 +5 -0
- package/dist/types/commands/tenant/index.d.ts.map +1 -1
- 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 +8 -2
- package/dist/types/commands/transfer/ExportCommand.d.ts.map +1 -1
- package/dist/types/commands/transfer/ImportCommand.d.ts +15 -3
- package/dist/types/commands/transfer/ImportCommand.d.ts.map +1 -1
- package/dist/types/commands/transfer/TransferCommand.d.ts +14 -2
- package/dist/types/commands/transfer/TransferCommand.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/dic.d.ts +93 -6
- package/dist/types/dic.d.ts.map +1 -1
- package/dist/types/lib/SystemClientProvider.d.ts +4 -1
- 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.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 +1 -0
- package/dist/types/lib/admin/AdminClient.d.ts.map +1 -1
- package/dist/types/lib/admin/AdminDeployer.d.ts +3 -1
- 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.map +1 -1
- package/dist/types/lib/fs/FileSystem.d.ts.map +1 -1
- package/dist/types/lib/fs/YamlHandler.d.ts.map +1 -1
- package/dist/types/lib/js/EsBuildBuilder.d.ts.map +1 -1
- package/dist/types/lib/js/EvalExecutor.d.ts.map +1 -1
- 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 +8 -3
- 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.map +1 -1
- package/dist/types/lib/migrations/MigrationSnapshotFacade.d.ts +6 -3
- package/dist/types/lib/migrations/MigrationSnapshotFacade.d.ts.map +1 -1
- package/dist/types/lib/migrations/MigrationsStatusFacade.d.ts +13 -2
- 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.map +1 -1
- package/dist/types/lib/project/RemoteProjectResolver.d.ts.map +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.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.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 +47 -0
- package/dist/types/lib/tenant/TenantApiTransport.d.ts.map +1 -0
- package/dist/types/lib/tenant/TenantConfigApplier.d.ts +37 -3
- package/dist/types/lib/tenant/TenantConfigApplier.d.ts.map +1 -1
- package/dist/types/lib/tenant/TenantConfigLoader.d.ts.map +1 -1
- 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 +69 -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 +20 -22
- package/dist/types/lib/tenant/tenantConfig.d.ts.map +1 -1
- package/dist/types/lib/transfer/DataTransferClient.d.ts +8 -2
- 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.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +14 -14
- package/src/commands/actions/ActionsGetEventCommand.ts +38 -16
- package/src/commands/actions/ActionsListFailedEventsCommand.ts +24 -43
- package/src/commands/actions/ActionsListVariablesCommand.ts +15 -13
- package/src/commands/actions/ActionsRetryEventCommand.ts +36 -18
- package/src/commands/actions/ActionsSetVariablesCommand.ts +56 -28
- package/src/commands/actions/ActionsStopEventCommand.ts +36 -18
- package/src/commands/deploy/DeployCommand.ts +69 -30
- package/src/commands/migrations/MigrationAmendCommand.ts +69 -26
- package/src/commands/migrations/MigrationBlankCommand.ts +3 -3
- package/src/commands/migrations/MigrationDescribeCommand.ts +9 -4
- package/src/commands/migrations/MigrationDiffCommand.ts +83 -31
- package/src/commands/migrations/MigrationExecuteCommand.ts +11 -4
- package/src/commands/migrations/MigrationInitStateCommand.ts +18 -5
- package/src/commands/migrations/MigrationRebaseCommand.ts +28 -6
- package/src/commands/migrations/MigrationSnapshotCommand.ts +45 -10
- package/src/commands/migrations/MigrationStatusCommand.ts +20 -12
- package/src/commands/migrations/MigrationVerifySnapshotCommand.ts +7 -8
- package/src/commands/misc/CommandsCommand.ts +74 -0
- package/src/commands/misc/VersionCommand.ts +13 -6
- package/src/commands/misc/index.ts +1 -0
- package/src/commands/project/ProjectGenerateDocumentationCommand.ts +12 -13
- package/src/commands/project/ProjectPrintSchemaCommand.ts +19 -17
- package/src/commands/project/ProjectValidateCommand.ts +52 -18
- package/src/commands/tenant/TenantApplyCommand.ts +45 -13
- 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 +5 -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 +46 -29
- package/src/commands/transfer/ImportCommand.ts +87 -34
- package/src/commands/transfer/TransferCommand.ts +94 -34
- package/src/commands/transfer/utils.ts +12 -11
- package/src/commands/workspace/WorkspaceUpdateApiCommand.ts +135 -36
- package/src/dic.ts +198 -47
- package/src/lib/SystemClientProvider.ts +75 -1
- package/src/lib/TenantClientProvider.ts +44 -6
- 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 +39 -12
- package/src/lib/admin/AdminDeployer.ts +4 -2
- package/src/lib/errors/TransportError.ts +260 -0
- package/src/lib/errors/index.ts +1 -0
- package/src/lib/maskToken.ts +9 -1
- package/src/lib/migrations/MigrationExecutionFacade.ts +117 -59
- package/src/lib/migrations/MigrationPrinter.ts +100 -64
- package/src/lib/migrations/MigrationRebaseFacade.ts +2 -1
- package/src/lib/migrations/MigrationSnapshotFacade.ts +15 -10
- package/src/lib/migrations/MigrationsStatusFacade.ts +17 -3
- package/src/lib/migrations/MigrationsValidator.ts +4 -2
- package/src/lib/project/RemoteProjectProvider.ts +6 -1
- 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/SchemaValidationHelper.ts +8 -2
- package/src/lib/schema/SchemaValidationPrinter.ts +5 -4
- package/src/lib/tenant/TenantApiTransport.ts +200 -0
- package/src/lib/tenant/TenantConfigApplier.ts +172 -29
- 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 +192 -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 +23 -25
- package/src/lib/transfer/DataTransferClient.ts +354 -59
- package/src/lib/transfer/stdio.ts +5 -7
- package/src/run.ts +19 -3
- package/tests/cases/unit/MigrationAmendCommand.test.ts +17 -2
- 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 +341 -54
- package/tests/cases/unit/MigrationInitStateCommand.test.ts +72 -0
- package/tests/cases/unit/MigrationRebaseCommand.test.ts +59 -0
- package/tests/cases/unit/MigrationSnapshotFacade.test.ts +75 -13
- 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 +275 -38
- package/dist/development/src/lib/tenant/TenantClient.cjs +0 -104
- package/dist/development/src/lib/tenant/TenantClient.cjs.map +0 -1
- package/dist/development/src/lib/tenant/TenantClient.js +0 -104
- package/dist/development/src/lib/tenant/TenantClient.js.map +0 -1
- package/dist/production/src/lib/tenant/TenantClient.cjs +0 -104
- package/dist/production/src/lib/tenant/TenantClient.cjs.map +0 -1
- package/dist/production/src/lib/tenant/TenantClient.js +0 -104
- package/dist/production/src/lib/tenant/TenantClient.js.map +0 -1
- package/dist/types/lib/tenant/TenantClient.d.ts +0 -24
- package/dist/types/lib/tenant/TenantClient.d.ts.map +0 -1
- package/src/lib/tenant/TenantClient.ts +0 -149
|
@@ -1,55 +1,124 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const cliCommon = require("@contember/cli-common");
|
|
4
|
+
const authPolicy = require("./authPolicy.cjs");
|
|
3
5
|
class TenantConfigApplier {
|
|
4
|
-
|
|
6
|
+
constructor(output = new cliCommon.Output()) {
|
|
7
|
+
this.output = output;
|
|
8
|
+
}
|
|
9
|
+
async apply(clients, config, options = {}) {
|
|
5
10
|
const dryRun = options.dryRun === true;
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
+
const actions = [];
|
|
12
|
+
const warnings = [];
|
|
13
|
+
const warn = (code, target, message) => {
|
|
14
|
+
warnings.push({ code, target, message });
|
|
15
|
+
this.output.warn(message);
|
|
16
|
+
};
|
|
17
|
+
const run = async (action, target, execute) => {
|
|
18
|
+
actions.push({ action, target });
|
|
19
|
+
if (dryRun) {
|
|
20
|
+
return;
|
|
11
21
|
}
|
|
22
|
+
this.output.info(target === null ? action : `${action}: ${target}`);
|
|
23
|
+
await execute();
|
|
24
|
+
};
|
|
25
|
+
assertDistinctAuthPolicies(config.authPolicies);
|
|
26
|
+
const existingAuthPolicies = config.authPolicies === void 0 ? void 0 : await clients.policy.listAuthPolicies();
|
|
27
|
+
assertDistinctExistingAuthPolicies(existingAuthPolicies);
|
|
28
|
+
if (config.config && hasEffectiveConfigValue(config.config)) {
|
|
29
|
+
const globalConfig = config.config;
|
|
30
|
+
await run("configure", null, () => clients.project.configure(globalConfig));
|
|
12
31
|
}
|
|
13
32
|
if (config.identityProviders && Object.keys(config.identityProviders).length > 0) {
|
|
14
|
-
const existing = await
|
|
33
|
+
const existing = await clients.project.listIdentityProviders();
|
|
15
34
|
const existingBySlug = new Map(existing.map((it) => [it.slug, it]));
|
|
16
35
|
for (const [slug, idp] of Object.entries(config.identityProviders)) {
|
|
17
36
|
const current = existingBySlug.get(slug);
|
|
18
37
|
if (!current) {
|
|
19
|
-
|
|
20
|
-
if (!dryRun) {
|
|
21
|
-
await client.addIdp(slug, idp.type, idp.configuration, idp.options);
|
|
22
|
-
}
|
|
38
|
+
await run("addIdp", slug, () => clients.project.addIdp(slug, idp.type, idp.configuration, idp.options));
|
|
23
39
|
} else {
|
|
24
|
-
|
|
25
|
-
if (!dryRun) {
|
|
26
|
-
await client.updateIdp(slug, idp.type, idp.configuration, idp.options);
|
|
27
|
-
}
|
|
40
|
+
await run("updateIdp", slug, () => clients.project.updateIdp(slug, idp.type, idp.configuration, idp.options));
|
|
28
41
|
}
|
|
29
42
|
const wantDisabled = idp.disabled === true;
|
|
30
43
|
const isDisabled = current ? current.disabledAt !== null : false;
|
|
31
44
|
if (wantDisabled && !isDisabled) {
|
|
32
|
-
|
|
33
|
-
if (!dryRun) {
|
|
34
|
-
await client.disableIdp(slug);
|
|
35
|
-
}
|
|
45
|
+
await run("disableIdp", slug, () => clients.project.disableIdp(slug));
|
|
36
46
|
} else if (!wantDisabled && isDisabled) {
|
|
37
|
-
|
|
38
|
-
if (!dryRun) {
|
|
39
|
-
await client.enableIdp(slug);
|
|
40
|
-
}
|
|
47
|
+
await run("enableIdp", slug, () => clients.project.enableIdp(slug));
|
|
41
48
|
}
|
|
42
49
|
}
|
|
43
50
|
}
|
|
44
51
|
if (config.mailTemplates && config.mailTemplates.length > 0) {
|
|
45
52
|
for (const template of config.mailTemplates) {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
53
|
+
const target = `${template.type}${template.variant ? `/${template.variant}` : ""}`;
|
|
54
|
+
await run("addMailTemplate", target, () => clients.policy.addMailTemplate(template));
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
if (config.authPolicies) {
|
|
58
|
+
const existing = existingAuthPolicies ?? [];
|
|
59
|
+
const existingByKey = new Map(existing.map((it) => [authPolicy.authPolicyKey(it), it]));
|
|
60
|
+
const managedKeys = new Set(config.authPolicies.map(authPolicy.authPolicyKey));
|
|
61
|
+
for (const policy of config.authPolicies) {
|
|
62
|
+
const current = existingByKey.get(authPolicy.authPolicyKey(policy));
|
|
63
|
+
const target = authPolicy.describeAuthPolicy(policy);
|
|
64
|
+
if (!current) {
|
|
65
|
+
await run("createAuthPolicy", target, async () => {
|
|
66
|
+
await clients.policy.createAuthPolicy(policy);
|
|
67
|
+
});
|
|
68
|
+
} else {
|
|
69
|
+
await run("updateAuthPolicy", target, () => clients.policy.updateAuthPolicy(current.id, policy));
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
for (const policy of existing) {
|
|
73
|
+
if (!managedKeys.has(authPolicy.authPolicyKey(policy))) {
|
|
74
|
+
const target = authPolicy.describeAuthPolicy(policy);
|
|
75
|
+
warn("UNMANAGED_AUTH_POLICY", target, `Auth policy ${target} exists but is not in the config; it stays in effect.`);
|
|
49
76
|
}
|
|
50
77
|
}
|
|
51
78
|
}
|
|
79
|
+
return { actions, warnings };
|
|
52
80
|
}
|
|
53
81
|
}
|
|
82
|
+
const assertDistinctExistingAuthPolicies = (policies) => {
|
|
83
|
+
const seen = /* @__PURE__ */ new Set();
|
|
84
|
+
for (const policy of policies ?? []) {
|
|
85
|
+
const key = authPolicy.authPolicyKey(policy);
|
|
86
|
+
if (seen.has(key)) {
|
|
87
|
+
throw new Error(
|
|
88
|
+
`Duplicate existing auth policy: ${authPolicy.describeAuthPolicy(policy)}. Resolve duplicate rows before applying the tenant config.`
|
|
89
|
+
);
|
|
90
|
+
}
|
|
91
|
+
seen.add(key);
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
const assertDistinctAuthPolicies = (policies) => {
|
|
95
|
+
const seen = /* @__PURE__ */ new Set();
|
|
96
|
+
for (const policy of policies ?? []) {
|
|
97
|
+
const key = authPolicy.authPolicyKey(policy);
|
|
98
|
+
if (seen.has(key)) {
|
|
99
|
+
throw `Duplicate auth policy in the config: ${authPolicy.describeAuthPolicy(policy)}. Policies are identified by scope, project and role set.`;
|
|
100
|
+
}
|
|
101
|
+
seen.add(key);
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
const nullableConfigClearPaths = /* @__PURE__ */ new Set([
|
|
105
|
+
"passwordless.url",
|
|
106
|
+
"password.pattern",
|
|
107
|
+
"login.maxTokenExpiration",
|
|
108
|
+
"captcha.provider",
|
|
109
|
+
"captcha.threshold"
|
|
110
|
+
]);
|
|
111
|
+
const hasEffectiveConfigValue = (value, path = []) => {
|
|
112
|
+
if (value === void 0) {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
if (value === null) {
|
|
116
|
+
return nullableConfigClearPaths.has(path.join("."));
|
|
117
|
+
}
|
|
118
|
+
if (typeof value !== "object") {
|
|
119
|
+
return true;
|
|
120
|
+
}
|
|
121
|
+
return Object.entries(value).some(([key, item]) => hasEffectiveConfigValue(item, [...path, key]));
|
|
122
|
+
};
|
|
54
123
|
exports.TenantConfigApplier = TenantConfigApplier;
|
|
55
124
|
//# sourceMappingURL=TenantConfigApplier.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TenantConfigApplier.cjs","sources":["../../../../../../packages/cli/src/lib/tenant/TenantConfigApplier.ts"],"sourcesContent":["import { TenantClient } from './TenantClient.js'\nimport { TenantConfig } from './tenantConfig.js'\n\nexport interface TenantConfigApplyOptions {\n\tdryRun?: boolean\n}\n\n/**\n * Applies a {@link TenantConfig} to a tenant idempotently:\n * - `configure` is a partial merge, so it is always (re)sent.\n * - identity providers are added or updated based on the current state, then\n * enabled/disabled to match `disabled`.\n * - mail templates are upserted server-side by `addMailTemplate`.\n *\n * Nothing is ever removed — entries missing from the config are left untouched.\n */\nexport class TenantConfigApplier {\n\tpublic async apply(client: TenantClient, config: TenantConfig, options: TenantConfigApplyOptions = {}): Promise<void> {\n\t\tconst dryRun = options.dryRun === true\n\t\tconst log = (message: string) => console.log(`${dryRun ? '[dry-run] ' : ''}${message}`)\n\n\t\tif (config.config) {\n\t\t\tlog('configure: applying global tenant config')\n\t\t\tif (!dryRun) {\n\t\t\t\tawait client.configure(config.config)\n\t\t\t}\n\t\t}\n\n\t\tif (config.identityProviders && Object.keys(config.identityProviders).length > 0) {\n\t\t\tconst existing = await client.listIdentityProviders()\n\t\t\tconst existingBySlug = new Map(existing.map(it => [it.slug, it]))\n\n\t\t\tfor (const [slug, idp] of Object.entries(config.identityProviders)) {\n\t\t\t\tconst current = existingBySlug.get(slug)\n\t\t\t\tif (!current) {\n\t\t\t\t\tlog(`addIDP: ${slug} (${idp.type})`)\n\t\t\t\t\tif (!dryRun) {\n\t\t\t\t\t\tawait client.addIdp(slug, idp.type, idp.configuration, idp.options)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tlog(`updateIDP: ${slug} (${idp.type})`)\n\t\t\t\t\tif (!dryRun) {\n\t\t\t\t\t\tawait client.updateIdp(slug, idp.type, idp.configuration, idp.options)\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst wantDisabled = idp.disabled === true\n\t\t\t\tconst isDisabled = current ? current.disabledAt !== null : false\n\t\t\t\tif (wantDisabled && !isDisabled) {\n\t\t\t\t\tlog(`disableIDP: ${slug}`)\n\t\t\t\t\tif (!dryRun) {\n\t\t\t\t\t\tawait client.disableIdp(slug)\n\t\t\t\t\t}\n\t\t\t\t} else if (!wantDisabled && isDisabled) {\n\t\t\t\t\tlog(`enableIDP: ${slug}`)\n\t\t\t\t\tif (!dryRun) {\n\t\t\t\t\t\tawait client.enableIdp(slug)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (config.mailTemplates && config.mailTemplates.length > 0) {\n\t\t\tfor (const template of config.mailTemplates) {\n\t\t\t\tlog(`addMailTemplate: ${template.type}${template.variant ? `/${template.variant}` : ''}`)\n\t\t\t\tif (!dryRun) {\n\t\t\t\t\tawait client.addMailTemplate(template)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"],"names":[],"mappings":";;AAgBO,MAAM,oBAAoB;AAAA,EAChC,MAAa,MAAM,QAAsB,QAAsB,UAAoC,CAAA,GAAmB;AACrH,UAAM,SAAS,QAAQ,WAAW;AAClC,UAAM,MAAM,CAAC,YAAoB,QAAQ,IAAI,GAAG,SAAS,eAAe,EAAE,GAAG,OAAO,EAAE;AAEtF,QAAI,OAAO,QAAQ;AAClB,UAAI,0CAA0C;AAC9C,UAAI,CAAC,QAAQ;AACZ,cAAM,OAAO,UAAU,OAAO,MAAM;AAAA,MACrC;AAAA,IACD;AAEA,QAAI,OAAO,qBAAqB,OAAO,KAAK,OAAO,iBAAiB,EAAE,SAAS,GAAG;AACjF,YAAM,WAAW,MAAM,OAAO,sBAAA;AAC9B,YAAM,iBAAiB,IAAI,IAAI,SAAS,IAAI,CAAA,OAAM,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;AAEhE,iBAAW,CAAC,MAAM,GAAG,KAAK,OAAO,QAAQ,OAAO,iBAAiB,GAAG;AACnE,cAAM,UAAU,eAAe,IAAI,IAAI;AACvC,YAAI,CAAC,SAAS;AACb,cAAI,WAAW,IAAI,KAAK,IAAI,IAAI,GAAG;AACnC,cAAI,CAAC,QAAQ;AACZ,kBAAM,OAAO,OAAO,MAAM,IAAI,MAAM,IAAI,eAAe,IAAI,OAAO;AAAA,UACnE;AAAA,QACD,OAAO;AACN,cAAI,cAAc,IAAI,KAAK,IAAI,IAAI,GAAG;AACtC,cAAI,CAAC,QAAQ;AACZ,kBAAM,OAAO,UAAU,MAAM,IAAI,MAAM,IAAI,eAAe,IAAI,OAAO;AAAA,UACtE;AAAA,QACD;AAEA,cAAM,eAAe,IAAI,aAAa;AACtC,cAAM,aAAa,UAAU,QAAQ,eAAe,OAAO;AAC3D,YAAI,gBAAgB,CAAC,YAAY;AAChC,cAAI,eAAe,IAAI,EAAE;AACzB,cAAI,CAAC,QAAQ;AACZ,kBAAM,OAAO,WAAW,IAAI;AAAA,UAC7B;AAAA,QACD,WAAW,CAAC,gBAAgB,YAAY;AACvC,cAAI,cAAc,IAAI,EAAE;AACxB,cAAI,CAAC,QAAQ;AACZ,kBAAM,OAAO,UAAU,IAAI;AAAA,UAC5B;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAEA,QAAI,OAAO,iBAAiB,OAAO,cAAc,SAAS,GAAG;AAC5D,iBAAW,YAAY,OAAO,eAAe;AAC5C,YAAI,oBAAoB,SAAS,IAAI,GAAG,SAAS,UAAU,IAAI,SAAS,OAAO,KAAK,EAAE,EAAE;AACxF,YAAI,CAAC,QAAQ;AACZ,gBAAM,OAAO,gBAAgB,QAAQ;AAAA,QACtC;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD;;"}
|
|
1
|
+
{"version":3,"file":"TenantConfigApplier.cjs","sources":["../../../../../../packages/cli/src/lib/tenant/TenantConfigApplier.ts"],"sourcesContent":["import { Output } from '@contember/cli-common'\nimport { authPolicyKey, describeAuthPolicy } from './authPolicy.js'\nimport { type RemoteAuthPolicy, TenantPolicyClient, TenantProjectClient } from './clients/index.js'\nimport { TenantConfig } from './tenantConfig.js'\n\nexport interface TenantConfigApplyOptions {\n\tdryRun?: boolean\n}\n\n/** The slice of the domain clients the applier drives — structural, so a test can pass a fake. */\nexport interface TenantConfigApplierClients {\n\treadonly project: Pick<TenantProjectClient, 'configure' | 'listIdentityProviders' | 'addIdp' | 'updateIdp' | 'enableIdp' | 'disableIdp'>\n\treadonly policy: Pick<TenantPolicyClient, 'addMailTemplate' | 'listAuthPolicies' | 'createAuthPolicy' | 'updateAuthPolicy'>\n}\n\nexport type TenantConfigActionType =\n\t| 'configure'\n\t| 'addIdp'\n\t| 'updateIdp'\n\t| 'enableIdp'\n\t| 'disableIdp'\n\t| 'addMailTemplate'\n\t| 'createAuthPolicy'\n\t| 'updateAuthPolicy'\n\n/** One step of the apply plan. In a dry run it is what would be done, otherwise what was done. */\nexport interface TenantConfigAction {\n\taction: TenantConfigActionType\n\ttarget: string | null\n}\n\nexport type TenantConfigWarningCode = 'UNMANAGED_AUTH_POLICY'\n\n/** Server-side state the config does not cover. Nothing is pruned, so it stays in effect. */\nexport interface TenantConfigWarning {\n\tcode: TenantConfigWarningCode\n\ttarget: string\n\tmessage: string\n}\n\n/**\n * The outcome of an apply. Warnings are returned rather than only printed: `output.warn` is silent\n * outside human mode, and an unmanaged policy is exactly what an agent running `--json` needs to see.\n */\nexport interface TenantConfigPlan {\n\tactions: TenantConfigAction[]\n\twarnings: TenantConfigWarning[]\n}\n\n/**\n * Applies a {@link TenantConfig} to a tenant idempotently:\n * - `configure` is a partial merge and is sent only when the schema maps at least one value to a database change.\n * - identity providers are added or updated based on the current state, then\n * enabled/disabled to match `disabled`.\n * - mail templates are upserted server-side by `addMailTemplate`.\n * - auth policies are matched to existing rows by what they target (scope,\n * project, role set) and created or updated accordingly; every policy the\n * config does not cover is warned about, including when the config lists none.\n *\n * Nothing is ever removed — entries missing from the config are left untouched.\n *\n * Returns the plan as data; the caller prints it. The applier itself only reports each action on stderr.\n */\nexport class TenantConfigApplier {\n\tconstructor(\n\t\tprivate readonly output: Output = new Output(),\n\t) {\n\t}\n\n\tpublic async apply(\n\t\tclients: TenantConfigApplierClients,\n\t\tconfig: TenantConfig,\n\t\toptions: TenantConfigApplyOptions = {},\n\t): Promise<TenantConfigPlan> {\n\t\tconst dryRun = options.dryRun === true\n\t\tconst actions: TenantConfigAction[] = []\n\t\tconst warnings: TenantConfigWarning[] = []\n\t\tconst warn = (code: TenantConfigWarningCode, target: string, message: string) => {\n\t\t\twarnings.push({ code, target, message })\n\t\t\tthis.output.warn(message)\n\t\t}\n\t\tconst run = async (action: TenantConfigActionType, target: string | null, execute: () => Promise<void>) => {\n\t\t\tactions.push({ action, target })\n\t\t\tif (dryRun) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\t// info, not progress: `tenant apply` mostly runs in CI, where a non-TTY progress line would leave no record of what was touched\n\t\t\tthis.output.info(target === null ? action : `${action}: ${target}`)\n\t\t\tawait execute()\n\t\t}\n\n\t\t// Up front, before anything has been written: two entries targeting the same\n\t\t// scope/project/roles are one policy to the applier but two rows server-side.\n\t\tassertDistinctAuthPolicies(config.authPolicies)\n\t\tconst existingAuthPolicies = config.authPolicies === undefined ? undefined : await clients.policy.listAuthPolicies()\n\t\tassertDistinctExistingAuthPolicies(existingAuthPolicies)\n\n\t\tif (config.config && hasEffectiveConfigValue(config.config)) {\n\t\t\tconst globalConfig = config.config\n\t\t\tawait run('configure', null, () => clients.project.configure(globalConfig))\n\t\t}\n\n\t\tif (config.identityProviders && Object.keys(config.identityProviders).length > 0) {\n\t\t\tconst existing = await clients.project.listIdentityProviders()\n\t\t\tconst existingBySlug = new Map(existing.map(it => [it.slug, it]))\n\n\t\t\tfor (const [slug, idp] of Object.entries(config.identityProviders)) {\n\t\t\t\tconst current = existingBySlug.get(slug)\n\t\t\t\tif (!current) {\n\t\t\t\t\tawait run('addIdp', slug, () => clients.project.addIdp(slug, idp.type, idp.configuration, idp.options))\n\t\t\t\t} else {\n\t\t\t\t\tawait run('updateIdp', slug, () => clients.project.updateIdp(slug, idp.type, idp.configuration, idp.options))\n\t\t\t\t}\n\n\t\t\t\tconst wantDisabled = idp.disabled === true\n\t\t\t\tconst isDisabled = current ? current.disabledAt !== null : false\n\t\t\t\tif (wantDisabled && !isDisabled) {\n\t\t\t\t\tawait run('disableIdp', slug, () => clients.project.disableIdp(slug))\n\t\t\t\t} else if (!wantDisabled && isDisabled) {\n\t\t\t\t\tawait run('enableIdp', slug, () => clients.project.enableIdp(slug))\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (config.mailTemplates && config.mailTemplates.length > 0) {\n\t\t\tfor (const template of config.mailTemplates) {\n\t\t\t\tconst target = `${template.type}${template.variant ? `/${template.variant}` : ''}`\n\t\t\t\tawait run('addMailTemplate', target, () => clients.policy.addMailTemplate(template))\n\t\t\t}\n\t\t}\n\n\t\t// `[]` is meaningful here, unlike for the other sections: it says \"I manage\n\t\t// policies and there are none\", which is exactly when the warning below matters.\n\t\tif (config.authPolicies) {\n\t\t\tconst existing = existingAuthPolicies ?? []\n\t\t\tconst existingByKey = new Map(existing.map(it => [authPolicyKey(it), it]))\n\t\t\tconst managedKeys = new Set(config.authPolicies.map(authPolicyKey))\n\n\t\t\tfor (const policy of config.authPolicies) {\n\t\t\t\tconst current = existingByKey.get(authPolicyKey(policy))\n\t\t\t\tconst target = describeAuthPolicy(policy)\n\t\t\t\tif (!current) {\n\t\t\t\t\tawait run('createAuthPolicy', target, async () => {\n\t\t\t\t\t\tawait clients.policy.createAuthPolicy(policy)\n\t\t\t\t\t})\n\t\t\t\t} else {\n\t\t\t\t\tawait run('updateAuthPolicy', target, () => clients.policy.updateAuthPolicy(current.id, policy))\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Policies are aggregated strictest-wins, so one left behind by a config\n\t\t\t// edit keeps enforcing. Nothing is pruned, but silence would hide it.\n\t\t\tfor (const policy of existing) {\n\t\t\t\tif (!managedKeys.has(authPolicyKey(policy))) {\n\t\t\t\t\tconst target = describeAuthPolicy(policy)\n\t\t\t\t\twarn('UNMANAGED_AUTH_POLICY', target, `Auth policy ${target} exists but is not in the config; it stays in effect.`)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn { actions, warnings }\n\t}\n}\n\nconst assertDistinctExistingAuthPolicies = (policies: readonly RemoteAuthPolicy[] | undefined): void => {\n\tconst seen = new Set<string>()\n\tfor (const policy of policies ?? []) {\n\t\tconst key = authPolicyKey(policy)\n\t\tif (seen.has(key)) {\n\t\t\tthrow new Error(\n\t\t\t\t`Duplicate existing auth policy: ${describeAuthPolicy(policy)}. Resolve duplicate rows before applying the tenant config.`,\n\t\t\t)\n\t\t}\n\t\tseen.add(key)\n\t}\n}\n\n/**\n * A policy's identity is its target, so two config entries with the same\n * scope/project/roles are indistinguishable to the applier but produce two rows\n * server-side — the second of which would then be silently orphaned on the next\n * run. Cheaper to reject than to reconcile.\n */\nconst assertDistinctAuthPolicies = (policies: TenantConfig['authPolicies']): void => {\n\tconst seen = new Set<string>()\n\tfor (const policy of policies ?? []) {\n\t\tconst key = authPolicyKey(policy)\n\t\tif (seen.has(key)) {\n\t\t\tthrow `Duplicate auth policy in the config: ${describeAuthPolicy(policy)}. Policies are identified by scope, project and role set.`\n\t\t}\n\t\tseen.add(key)\n\t}\n}\n\n/** Null clears only the fields that the tenant update command maps to a nullable database column. */\nconst nullableConfigClearPaths = new Set([\n\t'passwordless.url',\n\t'password.pattern',\n\t'login.maxTokenExpiration',\n\t'captcha.provider',\n\t'captcha.threshold',\n])\n\nconst hasEffectiveConfigValue = (value: unknown, path: readonly string[] = []): boolean => {\n\tif (value === undefined) {\n\t\treturn false\n\t}\n\tif (value === null) {\n\t\treturn nullableConfigClearPaths.has(path.join('.'))\n\t}\n\tif (typeof value !== 'object') {\n\t\treturn true\n\t}\n\treturn Object.entries(value).some(([key, item]) => hasEffectiveConfigValue(item, [...path, key]))\n}\n"],"names":["Output","authPolicyKey","describeAuthPolicy"],"mappings":"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"}
|
|
@@ -1,54 +1,123 @@
|
|
|
1
|
+
import { Output } from "@contember/cli-common";
|
|
2
|
+
import { authPolicyKey, describeAuthPolicy } from "./authPolicy.js";
|
|
1
3
|
class TenantConfigApplier {
|
|
2
|
-
|
|
4
|
+
constructor(output = new Output()) {
|
|
5
|
+
this.output = output;
|
|
6
|
+
}
|
|
7
|
+
async apply(clients, config, options = {}) {
|
|
3
8
|
const dryRun = options.dryRun === true;
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
+
const actions = [];
|
|
10
|
+
const warnings = [];
|
|
11
|
+
const warn = (code, target, message) => {
|
|
12
|
+
warnings.push({ code, target, message });
|
|
13
|
+
this.output.warn(message);
|
|
14
|
+
};
|
|
15
|
+
const run = async (action, target, execute) => {
|
|
16
|
+
actions.push({ action, target });
|
|
17
|
+
if (dryRun) {
|
|
18
|
+
return;
|
|
9
19
|
}
|
|
20
|
+
this.output.info(target === null ? action : `${action}: ${target}`);
|
|
21
|
+
await execute();
|
|
22
|
+
};
|
|
23
|
+
assertDistinctAuthPolicies(config.authPolicies);
|
|
24
|
+
const existingAuthPolicies = config.authPolicies === void 0 ? void 0 : await clients.policy.listAuthPolicies();
|
|
25
|
+
assertDistinctExistingAuthPolicies(existingAuthPolicies);
|
|
26
|
+
if (config.config && hasEffectiveConfigValue(config.config)) {
|
|
27
|
+
const globalConfig = config.config;
|
|
28
|
+
await run("configure", null, () => clients.project.configure(globalConfig));
|
|
10
29
|
}
|
|
11
30
|
if (config.identityProviders && Object.keys(config.identityProviders).length > 0) {
|
|
12
|
-
const existing = await
|
|
31
|
+
const existing = await clients.project.listIdentityProviders();
|
|
13
32
|
const existingBySlug = new Map(existing.map((it) => [it.slug, it]));
|
|
14
33
|
for (const [slug, idp] of Object.entries(config.identityProviders)) {
|
|
15
34
|
const current = existingBySlug.get(slug);
|
|
16
35
|
if (!current) {
|
|
17
|
-
|
|
18
|
-
if (!dryRun) {
|
|
19
|
-
await client.addIdp(slug, idp.type, idp.configuration, idp.options);
|
|
20
|
-
}
|
|
36
|
+
await run("addIdp", slug, () => clients.project.addIdp(slug, idp.type, idp.configuration, idp.options));
|
|
21
37
|
} else {
|
|
22
|
-
|
|
23
|
-
if (!dryRun) {
|
|
24
|
-
await client.updateIdp(slug, idp.type, idp.configuration, idp.options);
|
|
25
|
-
}
|
|
38
|
+
await run("updateIdp", slug, () => clients.project.updateIdp(slug, idp.type, idp.configuration, idp.options));
|
|
26
39
|
}
|
|
27
40
|
const wantDisabled = idp.disabled === true;
|
|
28
41
|
const isDisabled = current ? current.disabledAt !== null : false;
|
|
29
42
|
if (wantDisabled && !isDisabled) {
|
|
30
|
-
|
|
31
|
-
if (!dryRun) {
|
|
32
|
-
await client.disableIdp(slug);
|
|
33
|
-
}
|
|
43
|
+
await run("disableIdp", slug, () => clients.project.disableIdp(slug));
|
|
34
44
|
} else if (!wantDisabled && isDisabled) {
|
|
35
|
-
|
|
36
|
-
if (!dryRun) {
|
|
37
|
-
await client.enableIdp(slug);
|
|
38
|
-
}
|
|
45
|
+
await run("enableIdp", slug, () => clients.project.enableIdp(slug));
|
|
39
46
|
}
|
|
40
47
|
}
|
|
41
48
|
}
|
|
42
49
|
if (config.mailTemplates && config.mailTemplates.length > 0) {
|
|
43
50
|
for (const template of config.mailTemplates) {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
51
|
+
const target = `${template.type}${template.variant ? `/${template.variant}` : ""}`;
|
|
52
|
+
await run("addMailTemplate", target, () => clients.policy.addMailTemplate(template));
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
if (config.authPolicies) {
|
|
56
|
+
const existing = existingAuthPolicies ?? [];
|
|
57
|
+
const existingByKey = new Map(existing.map((it) => [authPolicyKey(it), it]));
|
|
58
|
+
const managedKeys = new Set(config.authPolicies.map(authPolicyKey));
|
|
59
|
+
for (const policy of config.authPolicies) {
|
|
60
|
+
const current = existingByKey.get(authPolicyKey(policy));
|
|
61
|
+
const target = describeAuthPolicy(policy);
|
|
62
|
+
if (!current) {
|
|
63
|
+
await run("createAuthPolicy", target, async () => {
|
|
64
|
+
await clients.policy.createAuthPolicy(policy);
|
|
65
|
+
});
|
|
66
|
+
} else {
|
|
67
|
+
await run("updateAuthPolicy", target, () => clients.policy.updateAuthPolicy(current.id, policy));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
for (const policy of existing) {
|
|
71
|
+
if (!managedKeys.has(authPolicyKey(policy))) {
|
|
72
|
+
const target = describeAuthPolicy(policy);
|
|
73
|
+
warn("UNMANAGED_AUTH_POLICY", target, `Auth policy ${target} exists but is not in the config; it stays in effect.`);
|
|
47
74
|
}
|
|
48
75
|
}
|
|
49
76
|
}
|
|
77
|
+
return { actions, warnings };
|
|
50
78
|
}
|
|
51
79
|
}
|
|
80
|
+
const assertDistinctExistingAuthPolicies = (policies) => {
|
|
81
|
+
const seen = /* @__PURE__ */ new Set();
|
|
82
|
+
for (const policy of policies ?? []) {
|
|
83
|
+
const key = authPolicyKey(policy);
|
|
84
|
+
if (seen.has(key)) {
|
|
85
|
+
throw new Error(
|
|
86
|
+
`Duplicate existing auth policy: ${describeAuthPolicy(policy)}. Resolve duplicate rows before applying the tenant config.`
|
|
87
|
+
);
|
|
88
|
+
}
|
|
89
|
+
seen.add(key);
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
const assertDistinctAuthPolicies = (policies) => {
|
|
93
|
+
const seen = /* @__PURE__ */ new Set();
|
|
94
|
+
for (const policy of policies ?? []) {
|
|
95
|
+
const key = authPolicyKey(policy);
|
|
96
|
+
if (seen.has(key)) {
|
|
97
|
+
throw `Duplicate auth policy in the config: ${describeAuthPolicy(policy)}. Policies are identified by scope, project and role set.`;
|
|
98
|
+
}
|
|
99
|
+
seen.add(key);
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
const nullableConfigClearPaths = /* @__PURE__ */ new Set([
|
|
103
|
+
"passwordless.url",
|
|
104
|
+
"password.pattern",
|
|
105
|
+
"login.maxTokenExpiration",
|
|
106
|
+
"captcha.provider",
|
|
107
|
+
"captcha.threshold"
|
|
108
|
+
]);
|
|
109
|
+
const hasEffectiveConfigValue = (value, path = []) => {
|
|
110
|
+
if (value === void 0) {
|
|
111
|
+
return false;
|
|
112
|
+
}
|
|
113
|
+
if (value === null) {
|
|
114
|
+
return nullableConfigClearPaths.has(path.join("."));
|
|
115
|
+
}
|
|
116
|
+
if (typeof value !== "object") {
|
|
117
|
+
return true;
|
|
118
|
+
}
|
|
119
|
+
return Object.entries(value).some(([key, item]) => hasEffectiveConfigValue(item, [...path, key]));
|
|
120
|
+
};
|
|
52
121
|
export {
|
|
53
122
|
TenantConfigApplier
|
|
54
123
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TenantConfigApplier.js","sources":["../../../../../../packages/cli/src/lib/tenant/TenantConfigApplier.ts"],"sourcesContent":["import { TenantClient } from './TenantClient.js'\nimport { TenantConfig } from './tenantConfig.js'\n\nexport interface TenantConfigApplyOptions {\n\tdryRun?: boolean\n}\n\n/**\n * Applies a {@link TenantConfig} to a tenant idempotently:\n * - `configure` is a partial merge, so it is always (re)sent.\n * - identity providers are added or updated based on the current state, then\n * enabled/disabled to match `disabled`.\n * - mail templates are upserted server-side by `addMailTemplate`.\n *\n * Nothing is ever removed — entries missing from the config are left untouched.\n */\nexport class TenantConfigApplier {\n\tpublic async apply(client: TenantClient, config: TenantConfig, options: TenantConfigApplyOptions = {}): Promise<void> {\n\t\tconst dryRun = options.dryRun === true\n\t\tconst log = (message: string) => console.log(`${dryRun ? '[dry-run] ' : ''}${message}`)\n\n\t\tif (config.config) {\n\t\t\tlog('configure: applying global tenant config')\n\t\t\tif (!dryRun) {\n\t\t\t\tawait client.configure(config.config)\n\t\t\t}\n\t\t}\n\n\t\tif (config.identityProviders && Object.keys(config.identityProviders).length > 0) {\n\t\t\tconst existing = await client.listIdentityProviders()\n\t\t\tconst existingBySlug = new Map(existing.map(it => [it.slug, it]))\n\n\t\t\tfor (const [slug, idp] of Object.entries(config.identityProviders)) {\n\t\t\t\tconst current = existingBySlug.get(slug)\n\t\t\t\tif (!current) {\n\t\t\t\t\tlog(`addIDP: ${slug} (${idp.type})`)\n\t\t\t\t\tif (!dryRun) {\n\t\t\t\t\t\tawait client.addIdp(slug, idp.type, idp.configuration, idp.options)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tlog(`updateIDP: ${slug} (${idp.type})`)\n\t\t\t\t\tif (!dryRun) {\n\t\t\t\t\t\tawait client.updateIdp(slug, idp.type, idp.configuration, idp.options)\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst wantDisabled = idp.disabled === true\n\t\t\t\tconst isDisabled = current ? current.disabledAt !== null : false\n\t\t\t\tif (wantDisabled && !isDisabled) {\n\t\t\t\t\tlog(`disableIDP: ${slug}`)\n\t\t\t\t\tif (!dryRun) {\n\t\t\t\t\t\tawait client.disableIdp(slug)\n\t\t\t\t\t}\n\t\t\t\t} else if (!wantDisabled && isDisabled) {\n\t\t\t\t\tlog(`enableIDP: ${slug}`)\n\t\t\t\t\tif (!dryRun) {\n\t\t\t\t\t\tawait client.enableIdp(slug)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (config.mailTemplates && config.mailTemplates.length > 0) {\n\t\t\tfor (const template of config.mailTemplates) {\n\t\t\t\tlog(`addMailTemplate: ${template.type}${template.variant ? `/${template.variant}` : ''}`)\n\t\t\t\tif (!dryRun) {\n\t\t\t\t\tawait client.addMailTemplate(template)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"],"names":[],"mappings":"AAgBO,MAAM,oBAAoB;AAAA,EAChC,MAAa,MAAM,QAAsB,QAAsB,UAAoC,CAAA,GAAmB;AACrH,UAAM,SAAS,QAAQ,WAAW;AAClC,UAAM,MAAM,CAAC,YAAoB,QAAQ,IAAI,GAAG,SAAS,eAAe,EAAE,GAAG,OAAO,EAAE;AAEtF,QAAI,OAAO,QAAQ;AAClB,UAAI,0CAA0C;AAC9C,UAAI,CAAC,QAAQ;AACZ,cAAM,OAAO,UAAU,OAAO,MAAM;AAAA,MACrC;AAAA,IACD;AAEA,QAAI,OAAO,qBAAqB,OAAO,KAAK,OAAO,iBAAiB,EAAE,SAAS,GAAG;AACjF,YAAM,WAAW,MAAM,OAAO,sBAAA;AAC9B,YAAM,iBAAiB,IAAI,IAAI,SAAS,IAAI,CAAA,OAAM,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;AAEhE,iBAAW,CAAC,MAAM,GAAG,KAAK,OAAO,QAAQ,OAAO,iBAAiB,GAAG;AACnE,cAAM,UAAU,eAAe,IAAI,IAAI;AACvC,YAAI,CAAC,SAAS;AACb,cAAI,WAAW,IAAI,KAAK,IAAI,IAAI,GAAG;AACnC,cAAI,CAAC,QAAQ;AACZ,kBAAM,OAAO,OAAO,MAAM,IAAI,MAAM,IAAI,eAAe,IAAI,OAAO;AAAA,UACnE;AAAA,QACD,OAAO;AACN,cAAI,cAAc,IAAI,KAAK,IAAI,IAAI,GAAG;AACtC,cAAI,CAAC,QAAQ;AACZ,kBAAM,OAAO,UAAU,MAAM,IAAI,MAAM,IAAI,eAAe,IAAI,OAAO;AAAA,UACtE;AAAA,QACD;AAEA,cAAM,eAAe,IAAI,aAAa;AACtC,cAAM,aAAa,UAAU,QAAQ,eAAe,OAAO;AAC3D,YAAI,gBAAgB,CAAC,YAAY;AAChC,cAAI,eAAe,IAAI,EAAE;AACzB,cAAI,CAAC,QAAQ;AACZ,kBAAM,OAAO,WAAW,IAAI;AAAA,UAC7B;AAAA,QACD,WAAW,CAAC,gBAAgB,YAAY;AACvC,cAAI,cAAc,IAAI,EAAE;AACxB,cAAI,CAAC,QAAQ;AACZ,kBAAM,OAAO,UAAU,IAAI;AAAA,UAC5B;AAAA,QACD;AAAA,MACD;AAAA,IACD;AAEA,QAAI,OAAO,iBAAiB,OAAO,cAAc,SAAS,GAAG;AAC5D,iBAAW,YAAY,OAAO,eAAe;AAC5C,YAAI,oBAAoB,SAAS,IAAI,GAAG,SAAS,UAAU,IAAI,SAAS,OAAO,KAAK,EAAE,EAAE;AACxF,YAAI,CAAC,QAAQ;AACZ,gBAAM,OAAO,gBAAgB,QAAQ;AAAA,QACtC;AAAA,MACD;AAAA,IACD;AAAA,EACD;AACD;"}
|
|
1
|
+
{"version":3,"file":"TenantConfigApplier.js","sources":["../../../../../../packages/cli/src/lib/tenant/TenantConfigApplier.ts"],"sourcesContent":["import { Output } from '@contember/cli-common'\nimport { authPolicyKey, describeAuthPolicy } from './authPolicy.js'\nimport { type RemoteAuthPolicy, TenantPolicyClient, TenantProjectClient } from './clients/index.js'\nimport { TenantConfig } from './tenantConfig.js'\n\nexport interface TenantConfigApplyOptions {\n\tdryRun?: boolean\n}\n\n/** The slice of the domain clients the applier drives — structural, so a test can pass a fake. */\nexport interface TenantConfigApplierClients {\n\treadonly project: Pick<TenantProjectClient, 'configure' | 'listIdentityProviders' | 'addIdp' | 'updateIdp' | 'enableIdp' | 'disableIdp'>\n\treadonly policy: Pick<TenantPolicyClient, 'addMailTemplate' | 'listAuthPolicies' | 'createAuthPolicy' | 'updateAuthPolicy'>\n}\n\nexport type TenantConfigActionType =\n\t| 'configure'\n\t| 'addIdp'\n\t| 'updateIdp'\n\t| 'enableIdp'\n\t| 'disableIdp'\n\t| 'addMailTemplate'\n\t| 'createAuthPolicy'\n\t| 'updateAuthPolicy'\n\n/** One step of the apply plan. In a dry run it is what would be done, otherwise what was done. */\nexport interface TenantConfigAction {\n\taction: TenantConfigActionType\n\ttarget: string | null\n}\n\nexport type TenantConfigWarningCode = 'UNMANAGED_AUTH_POLICY'\n\n/** Server-side state the config does not cover. Nothing is pruned, so it stays in effect. */\nexport interface TenantConfigWarning {\n\tcode: TenantConfigWarningCode\n\ttarget: string\n\tmessage: string\n}\n\n/**\n * The outcome of an apply. Warnings are returned rather than only printed: `output.warn` is silent\n * outside human mode, and an unmanaged policy is exactly what an agent running `--json` needs to see.\n */\nexport interface TenantConfigPlan {\n\tactions: TenantConfigAction[]\n\twarnings: TenantConfigWarning[]\n}\n\n/**\n * Applies a {@link TenantConfig} to a tenant idempotently:\n * - `configure` is a partial merge and is sent only when the schema maps at least one value to a database change.\n * - identity providers are added or updated based on the current state, then\n * enabled/disabled to match `disabled`.\n * - mail templates are upserted server-side by `addMailTemplate`.\n * - auth policies are matched to existing rows by what they target (scope,\n * project, role set) and created or updated accordingly; every policy the\n * config does not cover is warned about, including when the config lists none.\n *\n * Nothing is ever removed — entries missing from the config are left untouched.\n *\n * Returns the plan as data; the caller prints it. The applier itself only reports each action on stderr.\n */\nexport class TenantConfigApplier {\n\tconstructor(\n\t\tprivate readonly output: Output = new Output(),\n\t) {\n\t}\n\n\tpublic async apply(\n\t\tclients: TenantConfigApplierClients,\n\t\tconfig: TenantConfig,\n\t\toptions: TenantConfigApplyOptions = {},\n\t): Promise<TenantConfigPlan> {\n\t\tconst dryRun = options.dryRun === true\n\t\tconst actions: TenantConfigAction[] = []\n\t\tconst warnings: TenantConfigWarning[] = []\n\t\tconst warn = (code: TenantConfigWarningCode, target: string, message: string) => {\n\t\t\twarnings.push({ code, target, message })\n\t\t\tthis.output.warn(message)\n\t\t}\n\t\tconst run = async (action: TenantConfigActionType, target: string | null, execute: () => Promise<void>) => {\n\t\t\tactions.push({ action, target })\n\t\t\tif (dryRun) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\t// info, not progress: `tenant apply` mostly runs in CI, where a non-TTY progress line would leave no record of what was touched\n\t\t\tthis.output.info(target === null ? action : `${action}: ${target}`)\n\t\t\tawait execute()\n\t\t}\n\n\t\t// Up front, before anything has been written: two entries targeting the same\n\t\t// scope/project/roles are one policy to the applier but two rows server-side.\n\t\tassertDistinctAuthPolicies(config.authPolicies)\n\t\tconst existingAuthPolicies = config.authPolicies === undefined ? undefined : await clients.policy.listAuthPolicies()\n\t\tassertDistinctExistingAuthPolicies(existingAuthPolicies)\n\n\t\tif (config.config && hasEffectiveConfigValue(config.config)) {\n\t\t\tconst globalConfig = config.config\n\t\t\tawait run('configure', null, () => clients.project.configure(globalConfig))\n\t\t}\n\n\t\tif (config.identityProviders && Object.keys(config.identityProviders).length > 0) {\n\t\t\tconst existing = await clients.project.listIdentityProviders()\n\t\t\tconst existingBySlug = new Map(existing.map(it => [it.slug, it]))\n\n\t\t\tfor (const [slug, idp] of Object.entries(config.identityProviders)) {\n\t\t\t\tconst current = existingBySlug.get(slug)\n\t\t\t\tif (!current) {\n\t\t\t\t\tawait run('addIdp', slug, () => clients.project.addIdp(slug, idp.type, idp.configuration, idp.options))\n\t\t\t\t} else {\n\t\t\t\t\tawait run('updateIdp', slug, () => clients.project.updateIdp(slug, idp.type, idp.configuration, idp.options))\n\t\t\t\t}\n\n\t\t\t\tconst wantDisabled = idp.disabled === true\n\t\t\t\tconst isDisabled = current ? current.disabledAt !== null : false\n\t\t\t\tif (wantDisabled && !isDisabled) {\n\t\t\t\t\tawait run('disableIdp', slug, () => clients.project.disableIdp(slug))\n\t\t\t\t} else if (!wantDisabled && isDisabled) {\n\t\t\t\t\tawait run('enableIdp', slug, () => clients.project.enableIdp(slug))\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (config.mailTemplates && config.mailTemplates.length > 0) {\n\t\t\tfor (const template of config.mailTemplates) {\n\t\t\t\tconst target = `${template.type}${template.variant ? `/${template.variant}` : ''}`\n\t\t\t\tawait run('addMailTemplate', target, () => clients.policy.addMailTemplate(template))\n\t\t\t}\n\t\t}\n\n\t\t// `[]` is meaningful here, unlike for the other sections: it says \"I manage\n\t\t// policies and there are none\", which is exactly when the warning below matters.\n\t\tif (config.authPolicies) {\n\t\t\tconst existing = existingAuthPolicies ?? []\n\t\t\tconst existingByKey = new Map(existing.map(it => [authPolicyKey(it), it]))\n\t\t\tconst managedKeys = new Set(config.authPolicies.map(authPolicyKey))\n\n\t\t\tfor (const policy of config.authPolicies) {\n\t\t\t\tconst current = existingByKey.get(authPolicyKey(policy))\n\t\t\t\tconst target = describeAuthPolicy(policy)\n\t\t\t\tif (!current) {\n\t\t\t\t\tawait run('createAuthPolicy', target, async () => {\n\t\t\t\t\t\tawait clients.policy.createAuthPolicy(policy)\n\t\t\t\t\t})\n\t\t\t\t} else {\n\t\t\t\t\tawait run('updateAuthPolicy', target, () => clients.policy.updateAuthPolicy(current.id, policy))\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Policies are aggregated strictest-wins, so one left behind by a config\n\t\t\t// edit keeps enforcing. Nothing is pruned, but silence would hide it.\n\t\t\tfor (const policy of existing) {\n\t\t\t\tif (!managedKeys.has(authPolicyKey(policy))) {\n\t\t\t\t\tconst target = describeAuthPolicy(policy)\n\t\t\t\t\twarn('UNMANAGED_AUTH_POLICY', target, `Auth policy ${target} exists but is not in the config; it stays in effect.`)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn { actions, warnings }\n\t}\n}\n\nconst assertDistinctExistingAuthPolicies = (policies: readonly RemoteAuthPolicy[] | undefined): void => {\n\tconst seen = new Set<string>()\n\tfor (const policy of policies ?? []) {\n\t\tconst key = authPolicyKey(policy)\n\t\tif (seen.has(key)) {\n\t\t\tthrow new Error(\n\t\t\t\t`Duplicate existing auth policy: ${describeAuthPolicy(policy)}. Resolve duplicate rows before applying the tenant config.`,\n\t\t\t)\n\t\t}\n\t\tseen.add(key)\n\t}\n}\n\n/**\n * A policy's identity is its target, so two config entries with the same\n * scope/project/roles are indistinguishable to the applier but produce two rows\n * server-side — the second of which would then be silently orphaned on the next\n * run. Cheaper to reject than to reconcile.\n */\nconst assertDistinctAuthPolicies = (policies: TenantConfig['authPolicies']): void => {\n\tconst seen = new Set<string>()\n\tfor (const policy of policies ?? []) {\n\t\tconst key = authPolicyKey(policy)\n\t\tif (seen.has(key)) {\n\t\t\tthrow `Duplicate auth policy in the config: ${describeAuthPolicy(policy)}. Policies are identified by scope, project and role set.`\n\t\t}\n\t\tseen.add(key)\n\t}\n}\n\n/** Null clears only the fields that the tenant update command maps to a nullable database column. */\nconst nullableConfigClearPaths = new Set([\n\t'passwordless.url',\n\t'password.pattern',\n\t'login.maxTokenExpiration',\n\t'captcha.provider',\n\t'captcha.threshold',\n])\n\nconst hasEffectiveConfigValue = (value: unknown, path: readonly string[] = []): boolean => {\n\tif (value === undefined) {\n\t\treturn false\n\t}\n\tif (value === null) {\n\t\treturn nullableConfigClearPaths.has(path.join('.'))\n\t}\n\tif (typeof value !== 'object') {\n\t\treturn true\n\t}\n\treturn Object.entries(value).some(([key, item]) => hasEffectiveConfigValue(item, [...path, key]))\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const cliCommon = require("@contember/cli-common");
|
|
4
|
+
class TenantConnectionProvider {
|
|
5
|
+
constructor(resolver) {
|
|
6
|
+
this.resolver = resolver;
|
|
7
|
+
}
|
|
8
|
+
get() {
|
|
9
|
+
const connection = this.resolver.resolve();
|
|
10
|
+
if (!connection) {
|
|
11
|
+
throw new cliCommon.CliError("Tenant connection not defined. Set CONTEMBER_DSN, or CONTEMBER_API_URL and CONTEMBER_API_TOKEN.", {
|
|
12
|
+
code: "TENANT_CONNECTION_NOT_DEFINED",
|
|
13
|
+
exitCode: cliCommon.ExitCode.InputError
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
return connection;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.TenantConnectionProvider = TenantConnectionProvider;
|
|
20
|
+
//# sourceMappingURL=TenantConnectionProvider.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantConnectionProvider.cjs","sources":["../../../../../../packages/cli/src/lib/tenant/TenantConnectionProvider.ts"],"sourcesContent":["import { CliError, ExitCode } from '@contember/cli-common'\nimport type { TenantConnection, TenantConnectionSource } from './TenantConnection.js'\nimport { TenantConnectionResolver } from './TenantConnectionResolver.js'\n\nexport class TenantConnectionProvider implements TenantConnectionSource {\n\tconstructor(\n\t\tprivate readonly resolver: TenantConnectionResolver,\n\t) {\n\t}\n\n\tpublic get(): TenantConnection {\n\t\tconst connection = this.resolver.resolve()\n\t\tif (!connection) {\n\t\t\tthrow new CliError('Tenant connection not defined. Set CONTEMBER_DSN, or CONTEMBER_API_URL and CONTEMBER_API_TOKEN.', {\n\t\t\t\tcode: 'TENANT_CONNECTION_NOT_DEFINED',\n\t\t\t\texitCode: ExitCode.InputError,\n\t\t\t})\n\t\t}\n\t\treturn connection\n\t}\n}\n"],"names":["CliError","ExitCode"],"mappings":";;;AAIO,MAAM,yBAA2D;AAAA,EACvE,YACkB,UAChB;AADgB,SAAA,WAAA;AAAA,EAElB;AAAA,EAEO,MAAwB;AAC9B,UAAM,aAAa,KAAK,SAAS,QAAA;AACjC,QAAI,CAAC,YAAY;AAChB,YAAM,IAAIA,UAAAA,SAAS,mGAAmG;AAAA,QACrH,MAAM;AAAA,QACN,UAAUC,UAAAA,SAAS;AAAA,MAAA,CACnB;AAAA,IACF;AACA,WAAO;AAAA,EACR;AACD;;"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { CliError, ExitCode } from "@contember/cli-common";
|
|
2
|
+
class TenantConnectionProvider {
|
|
3
|
+
constructor(resolver) {
|
|
4
|
+
this.resolver = resolver;
|
|
5
|
+
}
|
|
6
|
+
get() {
|
|
7
|
+
const connection = this.resolver.resolve();
|
|
8
|
+
if (!connection) {
|
|
9
|
+
throw new CliError("Tenant connection not defined. Set CONTEMBER_DSN, or CONTEMBER_API_URL and CONTEMBER_API_TOKEN.", {
|
|
10
|
+
code: "TENANT_CONNECTION_NOT_DEFINED",
|
|
11
|
+
exitCode: ExitCode.InputError
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
return connection;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
export {
|
|
18
|
+
TenantConnectionProvider
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=TenantConnectionProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantConnectionProvider.js","sources":["../../../../../../packages/cli/src/lib/tenant/TenantConnectionProvider.ts"],"sourcesContent":["import { CliError, ExitCode } from '@contember/cli-common'\nimport type { TenantConnection, TenantConnectionSource } from './TenantConnection.js'\nimport { TenantConnectionResolver } from './TenantConnectionResolver.js'\n\nexport class TenantConnectionProvider implements TenantConnectionSource {\n\tconstructor(\n\t\tprivate readonly resolver: TenantConnectionResolver,\n\t) {\n\t}\n\n\tpublic get(): TenantConnection {\n\t\tconst connection = this.resolver.resolve()\n\t\tif (!connection) {\n\t\t\tthrow new CliError('Tenant connection not defined. Set CONTEMBER_DSN, or CONTEMBER_API_URL and CONTEMBER_API_TOKEN.', {\n\t\t\t\tcode: 'TENANT_CONNECTION_NOT_DEFINED',\n\t\t\t\texitCode: ExitCode.InputError,\n\t\t\t})\n\t\t}\n\t\treturn connection\n\t}\n}\n"],"names":[],"mappings":";AAIO,MAAM,yBAA2D;AAAA,EACvE,YACkB,UAChB;AADgB,SAAA,WAAA;AAAA,EAElB;AAAA,EAEO,MAAwB;AAC9B,UAAM,aAAa,KAAK,SAAS,QAAA;AACjC,QAAI,CAAC,YAAY;AAChB,YAAM,IAAI,SAAS,mGAAmG;AAAA,QACrH,MAAM;AAAA,QACN,UAAU,SAAS;AAAA,MAAA,CACnB;AAAA,IACF;AACA,WAAO;AAAA,EACR;AACD;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const dsn = require("../dsn.cjs");
|
|
4
|
+
class TenantConnectionResolver {
|
|
5
|
+
constructor(cliEnv) {
|
|
6
|
+
this.cliEnv = cliEnv;
|
|
7
|
+
}
|
|
8
|
+
resolve() {
|
|
9
|
+
let endpoint;
|
|
10
|
+
let token;
|
|
11
|
+
if (this.cliEnv.dsn) {
|
|
12
|
+
({ endpoint, token } = dsn.parseDsn(this.cliEnv.dsn));
|
|
13
|
+
} else {
|
|
14
|
+
endpoint = this.cliEnv.apiUrl;
|
|
15
|
+
token = this.cliEnv.apiToken;
|
|
16
|
+
}
|
|
17
|
+
if (!endpoint || !token) {
|
|
18
|
+
return void 0;
|
|
19
|
+
}
|
|
20
|
+
if (endpoint.endsWith("/")) {
|
|
21
|
+
endpoint = endpoint.slice(0, -1);
|
|
22
|
+
}
|
|
23
|
+
if (endpoint.endsWith(".contember.cloud") && !endpoint.includes("://api-")) {
|
|
24
|
+
endpoint += "/_api";
|
|
25
|
+
}
|
|
26
|
+
return { endpoint, token };
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.TenantConnectionResolver = TenantConnectionResolver;
|
|
30
|
+
//# sourceMappingURL=TenantConnectionResolver.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantConnectionResolver.cjs","sources":["../../../../../../packages/cli/src/lib/tenant/TenantConnectionResolver.ts"],"sourcesContent":["import { parseDsn } from '../dsn.js'\nimport type { CliEnv } from '../env.js'\nimport type { TenantConnection } from './TenantConnection.js'\n\nexport class TenantConnectionResolver {\n\tconstructor(\n\t\tprivate readonly cliEnv: CliEnv,\n\t) {\n\t}\n\n\tpublic resolve(): TenantConnection | undefined {\n\t\tlet endpoint: string | undefined\n\t\tlet token: string | undefined\n\t\tif (this.cliEnv.dsn) {\n\t\t\t;({ endpoint, token } = parseDsn(this.cliEnv.dsn))\n\t\t} else {\n\t\t\tendpoint = this.cliEnv.apiUrl\n\t\t\ttoken = this.cliEnv.apiToken\n\t\t}\n\t\tif (!endpoint || !token) {\n\t\t\treturn undefined\n\t\t}\n\t\tif (endpoint.endsWith('/')) {\n\t\t\tendpoint = endpoint.slice(0, -1)\n\t\t}\n\t\tif (endpoint.endsWith('.contember.cloud') && !endpoint.includes('://api-')) {\n\t\t\tendpoint += '/_api'\n\t\t}\n\t\treturn { endpoint, token }\n\t}\n}\n"],"names":["parseDsn"],"mappings":";;;AAIO,MAAM,yBAAyB;AAAA,EACrC,YACkB,QAChB;AADgB,SAAA,SAAA;AAAA,EAElB;AAAA,EAEO,UAAwC;AAC9C,QAAI;AACJ,QAAI;AACJ,QAAI,KAAK,OAAO,KAAK;AACnB,OAAC,EAAE,UAAU,MAAA,IAAUA,IAAAA,SAAS,KAAK,OAAO,GAAG;AAAA,IACjD,OAAO;AACN,iBAAW,KAAK,OAAO;AACvB,cAAQ,KAAK,OAAO;AAAA,IACrB;AACA,QAAI,CAAC,YAAY,CAAC,OAAO;AACxB,aAAO;AAAA,IACR;AACA,QAAI,SAAS,SAAS,GAAG,GAAG;AAC3B,iBAAW,SAAS,MAAM,GAAG,EAAE;AAAA,IAChC;AACA,QAAI,SAAS,SAAS,kBAAkB,KAAK,CAAC,SAAS,SAAS,SAAS,GAAG;AAC3E,kBAAY;AAAA,IACb;AACA,WAAO,EAAE,UAAU,MAAA;AAAA,EACpB;AACD;;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { parseDsn } from "../dsn.js";
|
|
2
|
+
class TenantConnectionResolver {
|
|
3
|
+
constructor(cliEnv) {
|
|
4
|
+
this.cliEnv = cliEnv;
|
|
5
|
+
}
|
|
6
|
+
resolve() {
|
|
7
|
+
let endpoint;
|
|
8
|
+
let token;
|
|
9
|
+
if (this.cliEnv.dsn) {
|
|
10
|
+
({ endpoint, token } = parseDsn(this.cliEnv.dsn));
|
|
11
|
+
} else {
|
|
12
|
+
endpoint = this.cliEnv.apiUrl;
|
|
13
|
+
token = this.cliEnv.apiToken;
|
|
14
|
+
}
|
|
15
|
+
if (!endpoint || !token) {
|
|
16
|
+
return void 0;
|
|
17
|
+
}
|
|
18
|
+
if (endpoint.endsWith("/")) {
|
|
19
|
+
endpoint = endpoint.slice(0, -1);
|
|
20
|
+
}
|
|
21
|
+
if (endpoint.endsWith(".contember.cloud") && !endpoint.includes("://api-")) {
|
|
22
|
+
endpoint += "/_api";
|
|
23
|
+
}
|
|
24
|
+
return { endpoint, token };
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
export {
|
|
28
|
+
TenantConnectionResolver
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=TenantConnectionResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TenantConnectionResolver.js","sources":["../../../../../../packages/cli/src/lib/tenant/TenantConnectionResolver.ts"],"sourcesContent":["import { parseDsn } from '../dsn.js'\nimport type { CliEnv } from '../env.js'\nimport type { TenantConnection } from './TenantConnection.js'\n\nexport class TenantConnectionResolver {\n\tconstructor(\n\t\tprivate readonly cliEnv: CliEnv,\n\t) {\n\t}\n\n\tpublic resolve(): TenantConnection | undefined {\n\t\tlet endpoint: string | undefined\n\t\tlet token: string | undefined\n\t\tif (this.cliEnv.dsn) {\n\t\t\t;({ endpoint, token } = parseDsn(this.cliEnv.dsn))\n\t\t} else {\n\t\t\tendpoint = this.cliEnv.apiUrl\n\t\t\ttoken = this.cliEnv.apiToken\n\t\t}\n\t\tif (!endpoint || !token) {\n\t\t\treturn undefined\n\t\t}\n\t\tif (endpoint.endsWith('/')) {\n\t\t\tendpoint = endpoint.slice(0, -1)\n\t\t}\n\t\tif (endpoint.endsWith('.contember.cloud') && !endpoint.includes('://api-')) {\n\t\t\tendpoint += '/_api'\n\t\t}\n\t\treturn { endpoint, token }\n\t}\n}\n"],"names":[],"mappings":";AAIO,MAAM,yBAAyB;AAAA,EACrC,YACkB,QAChB;AADgB,SAAA,SAAA;AAAA,EAElB;AAAA,EAEO,UAAwC;AAC9C,QAAI;AACJ,QAAI;AACJ,QAAI,KAAK,OAAO,KAAK;AACnB,OAAC,EAAE,UAAU,MAAA,IAAU,SAAS,KAAK,OAAO,GAAG;AAAA,IACjD,OAAO;AACN,iBAAW,KAAK,OAAO;AACvB,cAAQ,KAAK,OAAO;AAAA,IACrB;AACA,QAAI,CAAC,YAAY,CAAC,OAAO;AACxB,aAAO;AAAA,IACR;AACA,QAAI,SAAS,SAAS,GAAG,GAAG;AAC3B,iBAAW,SAAS,MAAM,GAAG,EAAE;AAAA,IAChC;AACA,QAAI,SAAS,SAAS,kBAAkB,KAAK,CAAC,SAAS,SAAS,SAAS,GAAG;AAC3E,kBAAY;AAAA,IACb;AACA,WAAO,EAAE,UAAU,MAAA;AAAA,EACpB;AACD;"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const authPolicyKey = (policy) => JSON.stringify([policy.scope, policy.project ?? null, [...policy.roles].sort()]);
|
|
4
|
+
const describeAuthPolicy = (policy) => {
|
|
5
|
+
const target = policy.scope === "project" ? `project:${policy.project ?? "?"}` : "global";
|
|
6
|
+
return `${target} [${[...policy.roles].sort().join(", ")}]`;
|
|
7
|
+
};
|
|
8
|
+
exports.authPolicyKey = authPolicyKey;
|
|
9
|
+
exports.describeAuthPolicy = describeAuthPolicy;
|
|
10
|
+
//# sourceMappingURL=authPolicy.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authPolicy.cjs","sources":["../../../../../../packages/cli/src/lib/tenant/authPolicy.ts"],"sourcesContent":["interface AuthPolicyIdentity {\n\tscope: string\n\tproject?: string | null\n\troles: readonly string[]\n}\n\n/**\n * Identity of a policy for reconciliation purposes. `auth_policy` has no unique\n * constraint beyond its generated id, so the config is matched against existing\n * rows by what the policy actually *targets*: a scope, an optional project and a\n * set of roles. Roles are sorted because `AuthPolicyResolver` treats them as a\n * set (it matches with `roles.some(...)`), so ordering carries no meaning.\n */\nexport const authPolicyKey = (policy: AuthPolicyIdentity): string => JSON.stringify([policy.scope, policy.project ?? null, [...policy.roles].sort()])\n\n/** Human-readable label for logs and error messages. */\nexport const describeAuthPolicy = (policy: AuthPolicyIdentity): string => {\n\tconst target = policy.scope === 'project' ? `project:${policy.project ?? '?'}` : 'global'\n\treturn `${target} [${[...policy.roles].sort().join(', ')}]`\n}\n"],"names":[],"mappings":";;AAaO,MAAM,gBAAgB,CAAC,WAAuC,KAAK,UAAU,CAAC,OAAO,OAAO,OAAO,WAAW,MAAM,CAAC,GAAG,OAAO,KAAK,EAAE,MAAM,CAAC;AAG7I,MAAM,qBAAqB,CAAC,WAAuC;AACzE,QAAM,SAAS,OAAO,UAAU,YAAY,WAAW,OAAO,WAAW,GAAG,KAAK;AACjF,SAAO,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,KAAK,EAAE,KAAA,EAAO,KAAK,IAAI,CAAC;AACzD;;;"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
const authPolicyKey = (policy) => JSON.stringify([policy.scope, policy.project ?? null, [...policy.roles].sort()]);
|
|
2
|
+
const describeAuthPolicy = (policy) => {
|
|
3
|
+
const target = policy.scope === "project" ? `project:${policy.project ?? "?"}` : "global";
|
|
4
|
+
return `${target} [${[...policy.roles].sort().join(", ")}]`;
|
|
5
|
+
};
|
|
6
|
+
export {
|
|
7
|
+
authPolicyKey,
|
|
8
|
+
describeAuthPolicy
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=authPolicy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authPolicy.js","sources":["../../../../../../packages/cli/src/lib/tenant/authPolicy.ts"],"sourcesContent":["interface AuthPolicyIdentity {\n\tscope: string\n\tproject?: string | null\n\troles: readonly string[]\n}\n\n/**\n * Identity of a policy for reconciliation purposes. `auth_policy` has no unique\n * constraint beyond its generated id, so the config is matched against existing\n * rows by what the policy actually *targets*: a scope, an optional project and a\n * set of roles. Roles are sorted because `AuthPolicyResolver` treats them as a\n * set (it matches with `roles.some(...)`), so ordering carries no meaning.\n */\nexport const authPolicyKey = (policy: AuthPolicyIdentity): string => JSON.stringify([policy.scope, policy.project ?? null, [...policy.roles].sort()])\n\n/** Human-readable label for logs and error messages. */\nexport const describeAuthPolicy = (policy: AuthPolicyIdentity): string => {\n\tconst target = policy.scope === 'project' ? `project:${policy.project ?? '?'}` : 'global'\n\treturn `${target} [${[...policy.roles].sort().join(', ')}]`\n}\n"],"names":[],"mappings":"AAaO,MAAM,gBAAgB,CAAC,WAAuC,KAAK,UAAU,CAAC,OAAO,OAAO,OAAO,WAAW,MAAM,CAAC,GAAG,OAAO,KAAK,EAAE,MAAM,CAAC;AAG7I,MAAM,qBAAqB,CAAC,WAAuC;AACzE,QAAM,SAAS,OAAO,UAAU,YAAY,WAAW,OAAO,WAAW,GAAG,KAAK;AACjF,SAAO,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,KAAK,EAAE,KAAA,EAAO,KAAK,IAAI,CAAC;AACzD;"}
|