@contember/engine-tenant-api 2.1.0-rc.3 → 2.2.0-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +124 -9
- package/dist/development/index.cjs +187 -0
- package/dist/development/index.cjs.map +1 -1
- package/dist/development/index.js +187 -3
- package/dist/development/index.js.map +1 -1
- package/dist/development/src/TenantContainer.cjs +151 -26
- package/dist/development/src/TenantContainer.cjs.map +1 -1
- package/dist/development/src/TenantContainer.js +151 -26
- package/dist/development/src/TenantContainer.js.map +1 -1
- package/dist/development/src/bridges/system/IdentityFetcher.cjs +11 -7
- package/dist/development/src/bridges/system/IdentityFetcher.cjs.map +1 -1
- package/dist/development/src/bridges/system/IdentityFetcher.js +11 -7
- package/dist/development/src/bridges/system/IdentityFetcher.js.map +1 -1
- package/dist/development/src/migrations/2020-06-08-134000-tenant-credentials.cjs.map +1 -1
- package/dist/development/src/migrations/2020-06-08-134000-tenant-credentials.js.map +1 -1
- package/dist/development/src/migrations/2026-05-12-120000-api-key-session-tracking.cjs +23 -0
- package/dist/development/src/migrations/2026-05-12-120000-api-key-session-tracking.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-12-120000-api-key-session-tracking.js +24 -0
- package/dist/development/src/migrations/2026-05-12-120000-api-key-session-tracking.js.map +1 -0
- package/dist/development/src/migrations/2026-05-12-130000-api-key-trust-forwarded-info.cjs +10 -0
- package/dist/development/src/migrations/2026-05-12-130000-api-key-trust-forwarded-info.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-12-130000-api-key-trust-forwarded-info.js +11 -0
- package/dist/development/src/migrations/2026-05-12-130000-api-key-trust-forwarded-info.js.map +1 -0
- package/dist/development/src/migrations/2026-05-13-120000-auth-log-event-data.cjs +16 -0
- package/dist/development/src/migrations/2026-05-13-120000-auth-log-event-data.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-13-120000-auth-log-event-data.js +17 -0
- package/dist/development/src/migrations/2026-05-13-120000-auth-log-event-data.js.map +1 -0
- package/dist/development/src/migrations/2026-05-13-130000-anti-abuse.cjs +44 -0
- package/dist/development/src/migrations/2026-05-13-130000-anti-abuse.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-13-130000-anti-abuse.js +45 -0
- package/dist/development/src/migrations/2026-05-13-130000-anti-abuse.js.map +1 -0
- package/dist/development/src/migrations/2026-05-14-100000-auth-log-admin-actions.cjs +20 -0
- package/dist/development/src/migrations/2026-05-14-100000-auth-log-admin-actions.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-14-100000-auth-log-admin-actions.js +21 -0
- package/dist/development/src/migrations/2026-05-14-100000-auth-log-admin-actions.js.map +1 -0
- package/dist/development/src/migrations/2026-05-15-120000-config-reveal-login-method.cjs +10 -0
- package/dist/development/src/migrations/2026-05-15-120000-config-reveal-login-method.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-15-120000-config-reveal-login-method.js +11 -0
- package/dist/development/src/migrations/2026-05-15-120000-config-reveal-login-method.js.map +1 -0
- package/dist/development/src/migrations/2026-05-21-100000-person-mfa.cjs +26 -0
- package/dist/development/src/migrations/2026-05-21-100000-person-mfa.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-21-100000-person-mfa.js +27 -0
- package/dist/development/src/migrations/2026-05-21-100000-person-mfa.js.map +1 -0
- package/dist/development/src/migrations/2026-05-21-110000-mfa-foundation.cjs +43 -0
- package/dist/development/src/migrations/2026-05-21-110000-mfa-foundation.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-21-110000-mfa-foundation.js +44 -0
- package/dist/development/src/migrations/2026-05-21-110000-mfa-foundation.js.map +1 -0
- package/dist/development/src/migrations/2026-05-21-120000-email-otp.cjs +9 -0
- package/dist/development/src/migrations/2026-05-21-120000-email-otp.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-21-120000-email-otp.js +10 -0
- package/dist/development/src/migrations/2026-05-21-120000-email-otp.js.map +1 -0
- package/dist/development/src/migrations/2026-05-21-130000-api-key-session-policy.cjs +11 -0
- package/dist/development/src/migrations/2026-05-21-130000-api-key-session-policy.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-21-130000-api-key-session-policy.js +12 -0
- package/dist/development/src/migrations/2026-05-21-130000-api-key-session-policy.js.map +1 -0
- package/dist/development/src/migrations/2026-05-21-140000-mfa-grace-duration.cjs +10 -0
- package/dist/development/src/migrations/2026-05-21-140000-mfa-grace-duration.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-21-140000-mfa-grace-duration.js +11 -0
- package/dist/development/src/migrations/2026-05-21-140000-mfa-grace-duration.js.map +1 -0
- package/dist/development/src/migrations/2026-05-21-150000-email-otp-rate-limit.cjs +18 -0
- package/dist/development/src/migrations/2026-05-21-150000-email-otp-rate-limit.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-21-150000-email-otp-rate-limit.js +19 -0
- package/dist/development/src/migrations/2026-05-21-150000-email-otp-rate-limit.js.map +1 -0
- package/dist/development/src/migrations/2026-05-26-120000-email-verification-types.cjs +15 -0
- package/dist/development/src/migrations/2026-05-26-120000-email-verification-types.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-26-120000-email-verification-types.js +16 -0
- package/dist/development/src/migrations/2026-05-26-120000-email-verification-types.js.map +1 -0
- package/dist/development/src/migrations/2026-05-26-120010-email-verification.cjs +28 -0
- package/dist/development/src/migrations/2026-05-26-120010-email-verification.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-26-120010-email-verification.js +29 -0
- package/dist/development/src/migrations/2026-05-26-120010-email-verification.js.map +1 -0
- package/dist/development/src/migrations/2026-05-26-130000-email-change-verification-config.cjs +19 -0
- package/dist/development/src/migrations/2026-05-26-130000-email-change-verification-config.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-26-130000-email-change-verification-config.js +20 -0
- package/dist/development/src/migrations/2026-05-26-130000-email-change-verification-config.js.map +1 -0
- package/dist/development/src/migrations/2026-05-26-130010-idp-require-verified-email.cjs +15 -0
- package/dist/development/src/migrations/2026-05-26-130010-idp-require-verified-email.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-26-130010-idp-require-verified-email.js +16 -0
- package/dist/development/src/migrations/2026-05-26-130010-idp-require-verified-email.js.map +1 -0
- package/dist/development/src/migrations/2026-05-26-130020-email-verification-rate-limit.cjs +17 -0
- package/dist/development/src/migrations/2026-05-26-130020-email-verification-rate-limit.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-26-130020-email-verification-rate-limit.js +18 -0
- package/dist/development/src/migrations/2026-05-26-130020-email-verification-rate-limit.js.map +1 -0
- package/dist/development/src/migrations/2026-05-26-130030-captcha-protect-flows.cjs +22 -0
- package/dist/development/src/migrations/2026-05-26-130030-captcha-protect-flows.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-26-130030-captcha-protect-flows.js +23 -0
- package/dist/development/src/migrations/2026-05-26-130030-captcha-protect-flows.js.map +1 -0
- package/dist/development/src/migrations/2026-05-26-140000-idp-session.cjs +31 -0
- package/dist/development/src/migrations/2026-05-26-140000-idp-session.cjs.map +1 -0
- package/dist/development/src/migrations/2026-05-26-140000-idp-session.js +32 -0
- package/dist/development/src/migrations/2026-05-26-140000-idp-session.js.map +1 -0
- package/dist/development/src/migrations/2026-06-08-100000-idp-assume-email-verified.cjs +15 -0
- package/dist/development/src/migrations/2026-06-08-100000-idp-assume-email-verified.cjs.map +1 -0
- package/dist/development/src/migrations/2026-06-08-100000-idp-assume-email-verified.js +16 -0
- package/dist/development/src/migrations/2026-06-08-100000-idp-assume-email-verified.js.map +1 -0
- package/dist/development/src/migrations/2026-06-16-120000-login-anomaly-detection.cjs +30 -0
- package/dist/development/src/migrations/2026-06-16-120000-login-anomaly-detection.cjs.map +1 -0
- package/dist/development/src/migrations/2026-06-16-120000-login-anomaly-detection.js +31 -0
- package/dist/development/src/migrations/2026-06-16-120000-login-anomaly-detection.js.map +1 -0
- package/dist/development/src/migrations/2026-06-16-130000-idp-logout.cjs +10 -0
- package/dist/development/src/migrations/2026-06-16-130000-idp-logout.cjs.map +1 -0
- package/dist/development/src/migrations/2026-06-16-130000-idp-logout.js +11 -0
- package/dist/development/src/migrations/2026-06-16-130000-idp-logout.js.map +1 -0
- package/dist/development/src/migrations/2026-06-18-120000-idp-claim-mapping.cjs +10 -0
- package/dist/development/src/migrations/2026-06-18-120000-idp-claim-mapping.cjs.map +1 -0
- package/dist/development/src/migrations/2026-06-18-120000-idp-claim-mapping.js +11 -0
- package/dist/development/src/migrations/2026-06-18-120000-idp-claim-mapping.js.map +1 -0
- package/dist/development/src/migrations/2026-08-03-120000-person-enable-auth-log.cjs +9 -0
- package/dist/development/src/migrations/2026-08-03-120000-person-enable-auth-log.cjs.map +1 -0
- package/dist/development/src/migrations/2026-08-03-120000-person-enable-auth-log.js +10 -0
- package/dist/development/src/migrations/2026-08-03-120000-person-enable-auth-log.js.map +1 -0
- package/dist/development/src/migrations/2026-08-04-120000-config-panel.cjs +11 -0
- package/dist/development/src/migrations/2026-08-04-120000-config-panel.cjs.map +1 -0
- package/dist/development/src/migrations/2026-08-04-120000-config-panel.js +12 -0
- package/dist/development/src/migrations/2026-08-04-120000-config-panel.js.map +1 -0
- package/dist/development/src/migrations/2026-09-04-120000-idp-disable-local-authentication.cjs +18 -0
- package/dist/development/src/migrations/2026-09-04-120000-idp-disable-local-authentication.cjs.map +1 -0
- package/dist/development/src/migrations/2026-09-04-120000-idp-disable-local-authentication.js +19 -0
- package/dist/development/src/migrations/2026-09-04-120000-idp-disable-local-authentication.js.map +1 -0
- package/dist/development/src/migrations/2026-09-11-120000-custom-role.cjs +18 -0
- package/dist/development/src/migrations/2026-09-11-120000-custom-role.cjs.map +1 -0
- package/dist/development/src/migrations/2026-09-11-120000-custom-role.js +19 -0
- package/dist/development/src/migrations/2026-09-11-120000-custom-role.js.map +1 -0
- package/dist/development/src/migrations/runner.cjs +63 -5
- package/dist/development/src/migrations/runner.cjs.map +1 -1
- package/dist/development/src/migrations/runner.js +63 -5
- package/dist/development/src/migrations/runner.js.map +1 -1
- package/dist/development/src/migrations/snapshot.cjs +198 -10
- package/dist/development/src/migrations/snapshot.cjs.map +1 -1
- package/dist/development/src/migrations/snapshot.js +198 -10
- package/dist/development/src/migrations/snapshot.js.map +1 -1
- package/dist/development/src/migrations/tenantCredentials.cjs.map +1 -1
- package/dist/development/src/migrations/tenantCredentials.js.map +1 -1
- package/dist/development/src/model/authorization/AclSchemaAccessNodeFactory.cjs.map +1 -1
- package/dist/development/src/model/authorization/AclSchemaAccessNodeFactory.js.map +1 -1
- package/dist/development/src/model/authorization/CustomRoleAuthorizator.cjs +65 -0
- package/dist/development/src/model/authorization/CustomRoleAuthorizator.cjs.map +1 -0
- package/dist/development/src/model/authorization/CustomRoleAuthorizator.js +65 -0
- package/dist/development/src/model/authorization/CustomRoleAuthorizator.js.map +1 -0
- package/dist/development/src/model/authorization/CustomRolePermissions.cjs +404 -0
- package/dist/development/src/model/authorization/CustomRolePermissions.cjs.map +1 -0
- package/dist/development/src/model/authorization/CustomRolePermissions.js +387 -0
- package/dist/development/src/model/authorization/CustomRolePermissions.js.map +1 -0
- package/dist/development/src/model/authorization/Identity.cjs.map +1 -1
- package/dist/development/src/model/authorization/Identity.js.map +1 -1
- package/dist/development/src/model/authorization/IdentityFactory.cjs.map +1 -1
- package/dist/development/src/model/authorization/IdentityFactory.js.map +1 -1
- package/dist/development/src/model/authorization/IdentityScope.cjs.map +1 -1
- package/dist/development/src/model/authorization/IdentityScope.js.map +1 -1
- package/dist/development/src/model/authorization/PermissionActions.cjs +25 -12
- package/dist/development/src/model/authorization/PermissionActions.cjs.map +1 -1
- package/dist/development/src/model/authorization/PermissionActions.js +25 -12
- package/dist/development/src/model/authorization/PermissionActions.js.map +1 -1
- package/dist/development/src/model/authorization/PermissionContext.cjs.map +1 -1
- package/dist/development/src/model/authorization/PermissionContext.js.map +1 -1
- package/dist/development/src/model/authorization/PermissionContextFactory.cjs +20 -2
- package/dist/development/src/model/authorization/PermissionContextFactory.cjs.map +1 -1
- package/dist/development/src/model/authorization/PermissionContextFactory.js +20 -2
- package/dist/development/src/model/authorization/PermissionContextFactory.js.map +1 -1
- package/dist/development/src/model/authorization/PermissionsFactory.cjs +35 -20
- package/dist/development/src/model/authorization/PermissionsFactory.cjs.map +1 -1
- package/dist/development/src/model/authorization/PermissionsFactory.js +36 -21
- package/dist/development/src/model/authorization/PermissionsFactory.js.map +1 -1
- package/dist/development/src/model/authorization/ProjectScope.cjs.map +1 -1
- package/dist/development/src/model/authorization/ProjectScope.js.map +1 -1
- package/dist/development/src/model/authorization/ProjectScopeFactory.cjs.map +1 -1
- package/dist/development/src/model/authorization/ProjectScopeFactory.js.map +1 -1
- package/dist/development/src/model/authorization/Roles.cjs +8 -0
- package/dist/development/src/model/authorization/Roles.cjs.map +1 -1
- package/dist/development/src/model/authorization/Roles.js +8 -0
- package/dist/development/src/model/authorization/Roles.js.map +1 -1
- package/dist/development/src/model/authorization/TargetIdentityPermission.cjs +35 -0
- package/dist/development/src/model/authorization/TargetIdentityPermission.cjs.map +1 -0
- package/dist/development/src/model/authorization/TargetIdentityPermission.js +35 -0
- package/dist/development/src/model/authorization/TargetIdentityPermission.js.map +1 -0
- package/dist/development/src/model/commands/CommandBus.cjs.map +1 -1
- package/dist/development/src/model/commands/CommandBus.js.map +1 -1
- package/dist/development/src/model/commands/apiKey/ApiKeyHelper.cjs +19 -0
- package/dist/development/src/model/commands/apiKey/ApiKeyHelper.cjs.map +1 -1
- package/dist/development/src/model/commands/apiKey/ApiKeyHelper.js +19 -0
- package/dist/development/src/model/commands/apiKey/ApiKeyHelper.js.map +1 -1
- package/dist/development/src/model/commands/apiKey/CreateApiKeyCommand.cjs +17 -3
- package/dist/development/src/model/commands/apiKey/CreateApiKeyCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/apiKey/CreateApiKeyCommand.js +18 -4
- package/dist/development/src/model/commands/apiKey/CreateApiKeyCommand.js.map +1 -1
- package/dist/development/src/model/commands/apiKey/DisableApiKeyCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/apiKey/DisableApiKeyCommand.js.map +1 -1
- package/dist/development/src/model/commands/apiKey/DisableIdentityApiKeysCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/apiKey/DisableIdentityApiKeysCommand.js.map +1 -1
- package/dist/development/src/model/commands/apiKey/DisableOneOffApiKeyCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/apiKey/DisableOneOffApiKeyCommand.js.map +1 -1
- package/dist/development/src/model/commands/apiKey/ProlongApiKeyCommand.cjs +40 -9
- package/dist/development/src/model/commands/apiKey/ProlongApiKeyCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/apiKey/ProlongApiKeyCommand.js +41 -10
- package/dist/development/src/model/commands/apiKey/ProlongApiKeyCommand.js.map +1 -1
- package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs +5 -1
- package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.js +5 -1
- package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.js.map +1 -1
- package/dist/development/src/model/commands/authPolicy/CreateAuthPolicyCommand.cjs +28 -0
- package/dist/development/src/model/commands/authPolicy/CreateAuthPolicyCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/authPolicy/CreateAuthPolicyCommand.js +28 -0
- package/dist/development/src/model/commands/authPolicy/CreateAuthPolicyCommand.js.map +1 -0
- package/dist/development/src/model/commands/authPolicy/DeleteAuthPolicyCommand.cjs +14 -0
- package/dist/development/src/model/commands/authPolicy/DeleteAuthPolicyCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/authPolicy/DeleteAuthPolicyCommand.js +14 -0
- package/dist/development/src/model/commands/authPolicy/DeleteAuthPolicyCommand.js.map +1 -0
- package/dist/development/src/model/commands/authPolicy/UpdateAuthPolicyCommand.cjs +25 -0
- package/dist/development/src/model/commands/authPolicy/UpdateAuthPolicyCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/authPolicy/UpdateAuthPolicyCommand.js +25 -0
- package/dist/development/src/model/commands/authPolicy/UpdateAuthPolicyCommand.js.map +1 -0
- package/dist/development/src/model/commands/backupCode/ConsumeBackupCodeCommand.cjs +20 -0
- package/dist/development/src/model/commands/backupCode/ConsumeBackupCodeCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/backupCode/ConsumeBackupCodeCommand.js +20 -0
- package/dist/development/src/model/commands/backupCode/ConsumeBackupCodeCommand.js.map +1 -0
- package/dist/development/src/model/commands/backupCode/CreateBackupCodeCommand.cjs +19 -0
- package/dist/development/src/model/commands/backupCode/CreateBackupCodeCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/backupCode/CreateBackupCodeCommand.js +19 -0
- package/dist/development/src/model/commands/backupCode/CreateBackupCodeCommand.js.map +1 -0
- package/dist/development/src/model/commands/backupCode/DeleteBackupCodesCommand.cjs +13 -0
- package/dist/development/src/model/commands/backupCode/DeleteBackupCodesCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/backupCode/DeleteBackupCodesCommand.js +13 -0
- package/dist/development/src/model/commands/backupCode/DeleteBackupCodesCommand.js.map +1 -0
- package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.cjs +47 -2
- package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.js +47 -2
- package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.js.map +1 -1
- package/dist/development/src/model/commands/customRole/CreateCustomRoleCommand.cjs +23 -0
- package/dist/development/src/model/commands/customRole/CreateCustomRoleCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/customRole/CreateCustomRoleCommand.js +23 -0
- package/dist/development/src/model/commands/customRole/CreateCustomRoleCommand.js.map +1 -0
- package/dist/development/src/model/commands/customRole/DeleteCustomRoleCommand.cjs +14 -0
- package/dist/development/src/model/commands/customRole/DeleteCustomRoleCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/customRole/DeleteCustomRoleCommand.js +14 -0
- package/dist/development/src/model/commands/customRole/DeleteCustomRoleCommand.js.map +1 -0
- package/dist/development/src/model/commands/customRole/RemoveCustomRoleAssignmentsCommand.cjs +16 -0
- package/dist/development/src/model/commands/customRole/RemoveCustomRoleAssignmentsCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/customRole/RemoveCustomRoleAssignmentsCommand.js +16 -0
- package/dist/development/src/model/commands/customRole/RemoveCustomRoleAssignmentsCommand.js.map +1 -0
- package/dist/development/src/model/commands/customRole/UpdateCustomRoleCommand.cjs +19 -0
- package/dist/development/src/model/commands/customRole/UpdateCustomRoleCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/customRole/UpdateCustomRoleCommand.js +19 -0
- package/dist/development/src/model/commands/customRole/UpdateCustomRoleCommand.js.map +1 -0
- package/dist/development/src/model/commands/identity/CreateIdentityCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/identity/CreateIdentityCommand.js.map +1 -1
- package/dist/development/src/model/commands/identity/PatchIdentityGlobalRoles.cjs +1 -1
- package/dist/development/src/model/commands/identity/PatchIdentityGlobalRoles.cjs.map +1 -1
- package/dist/development/src/model/commands/identity/PatchIdentityGlobalRoles.js +1 -1
- package/dist/development/src/model/commands/identity/PatchIdentityGlobalRoles.js.map +1 -1
- package/dist/development/src/model/commands/idp/ClaimIdpRevalidationCommand.cjs +15 -0
- package/dist/development/src/model/commands/idp/ClaimIdpRevalidationCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/idp/ClaimIdpRevalidationCommand.js +15 -0
- package/dist/development/src/model/commands/idp/ClaimIdpRevalidationCommand.js.map +1 -0
- package/dist/development/src/model/commands/idp/CreateIdpCommand.cjs +10 -2
- package/dist/development/src/model/commands/idp/CreateIdpCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/idp/CreateIdpCommand.js +10 -2
- package/dist/development/src/model/commands/idp/CreateIdpCommand.js.map +1 -1
- package/dist/development/src/model/commands/idp/CreateIdpSessionCommand.cjs +30 -0
- package/dist/development/src/model/commands/idp/CreateIdpSessionCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/idp/CreateIdpSessionCommand.js +30 -0
- package/dist/development/src/model/commands/idp/CreateIdpSessionCommand.js.map +1 -0
- package/dist/development/src/model/commands/idp/DisableIdpCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/idp/DisableIdpCommand.js.map +1 -1
- package/dist/development/src/model/commands/idp/DisconnectPersonIdentityProviderCommand.cjs +17 -0
- package/dist/development/src/model/commands/idp/DisconnectPersonIdentityProviderCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/idp/DisconnectPersonIdentityProviderCommand.js +17 -0
- package/dist/development/src/model/commands/idp/DisconnectPersonIdentityProviderCommand.js.map +1 -0
- package/dist/development/src/model/commands/idp/EnableIdpCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/idp/EnableIdpCommand.js.map +1 -1
- package/dist/development/src/model/commands/idp/UpdateIdpCommand.cjs +8 -2
- package/dist/development/src/model/commands/idp/UpdateIdpCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/idp/UpdateIdpCommand.js +8 -2
- package/dist/development/src/model/commands/idp/UpdateIdpCommand.js.map +1 -1
- package/dist/development/src/model/commands/idp/UpdateIdpSessionCommand.cjs +32 -0
- package/dist/development/src/model/commands/idp/UpdateIdpSessionCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/idp/UpdateIdpSessionCommand.js +32 -0
- package/dist/development/src/model/commands/idp/UpdateIdpSessionCommand.js.map +1 -0
- package/dist/development/src/model/commands/mailTemplate/AddMailTemplateCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/mailTemplate/AddMailTemplateCommand.js.map +1 -1
- package/dist/development/src/model/commands/mailTemplate/RemoveMailTemplateCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/mailTemplate/RemoveMailTemplateCommand.js.map +1 -1
- package/dist/development/src/model/commands/membership/AddProjectMemberCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/membership/AddProjectMemberCommand.js.map +1 -1
- package/dist/development/src/model/commands/membership/CreateOrUpdateProjectMembershipCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/membership/CreateOrUpdateProjectMembershipCommand.js.map +1 -1
- package/dist/development/src/model/commands/membership/RemoveProjectMemberCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/membership/RemoveProjectMemberCommand.js.map +1 -1
- package/dist/development/src/model/commands/membership/{RemoveProjectMembershipsCommand.cjs → RemoveProjectMembershipCommand.cjs} +1 -1
- package/dist/development/src/model/commands/membership/RemoveProjectMembershipCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/membership/{RemoveProjectMembershipsCommand.js → RemoveProjectMembershipCommand.js} +1 -1
- package/dist/development/src/model/commands/membership/RemoveProjectMembershipCommand.js.map +1 -0
- package/dist/development/src/model/commands/membership/UpdateProjectMemberCommand.cjs +2 -2
- package/dist/development/src/model/commands/membership/UpdateProjectMemberCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/membership/UpdateProjectMemberCommand.js +1 -1
- package/dist/development/src/model/commands/membership/UpdateProjectMemberCommand.js.map +1 -1
- package/dist/development/src/model/commands/membership/variables/PatchProjectMembershipVariableValuesCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/membership/variables/PatchProjectMembershipVariableValuesCommand.js.map +1 -1
- package/dist/development/src/model/commands/membership/variables/PatchProjectMembershipVariablesCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/membership/variables/PatchProjectMembershipVariablesCommand.js.map +1 -1
- package/dist/development/src/model/commands/membership/variables/SetProjectMembershipVariableValuesCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/membership/variables/SetProjectMembershipVariableValuesCommand.js.map +1 -1
- package/dist/development/src/model/commands/otp/ConfirmOtpCommand.cjs +10 -4
- package/dist/development/src/model/commands/otp/ConfirmOtpCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/otp/ConfirmOtpCommand.js +11 -5
- package/dist/development/src/model/commands/otp/ConfirmOtpCommand.js.map +1 -1
- package/dist/development/src/model/commands/otp/DisableOtpCommand.cjs +9 -5
- package/dist/development/src/model/commands/otp/DisableOtpCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/otp/DisableOtpCommand.js +9 -5
- package/dist/development/src/model/commands/otp/DisableOtpCommand.js.map +1 -1
- package/dist/development/src/model/commands/otp/PrepareOtpCommand.cjs +14 -8
- package/dist/development/src/model/commands/otp/PrepareOtpCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/otp/PrepareOtpCommand.js +15 -9
- package/dist/development/src/model/commands/otp/PrepareOtpCommand.js.map +1 -1
- package/dist/development/src/model/commands/otp/ReEncryptOtpSecretCommand.cjs +22 -0
- package/dist/development/src/model/commands/otp/ReEncryptOtpSecretCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/otp/ReEncryptOtpSecretCommand.js +22 -0
- package/dist/development/src/model/commands/otp/ReEncryptOtpSecretCommand.js.map +1 -0
- package/dist/development/src/model/commands/otp/SetEmailOtpEnabledCommand.cjs +19 -0
- package/dist/development/src/model/commands/otp/SetEmailOtpEnabledCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/otp/SetEmailOtpEnabledCommand.js +19 -0
- package/dist/development/src/model/commands/otp/SetEmailOtpEnabledCommand.js.map +1 -0
- package/dist/development/src/model/commands/person/ChangePasswordCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/person/ChangePasswordCommand.js.map +1 -1
- package/dist/development/src/model/commands/person/ChangeProfileCommand.cjs +8 -2
- package/dist/development/src/model/commands/person/ChangeProfileCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/person/ChangeProfileCommand.js +8 -2
- package/dist/development/src/model/commands/person/ChangeProfileCommand.js.map +1 -1
- package/dist/development/src/model/commands/person/CreatePersonCommand.cjs +14 -3
- package/dist/development/src/model/commands/person/CreatePersonCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/person/CreatePersonCommand.js +14 -3
- package/dist/development/src/model/commands/person/CreatePersonCommand.js.map +1 -1
- package/dist/development/src/model/commands/person/CreatePersonIdentityProviderIdentifierCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/person/CreatePersonIdentityProviderIdentifierCommand.js.map +1 -1
- package/dist/development/src/model/commands/person/DisablePersonCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/person/DisablePersonCommand.js.map +1 -1
- package/dist/development/src/model/commands/person/EnablePersonCommand.cjs +17 -0
- package/dist/development/src/model/commands/person/EnablePersonCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/person/EnablePersonCommand.js +17 -0
- package/dist/development/src/model/commands/person/EnablePersonCommand.js.map +1 -0
- package/dist/development/src/model/commands/person/MarkEmailVerifiedCommand.cjs +21 -0
- package/dist/development/src/model/commands/person/MarkEmailVerifiedCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/person/MarkEmailVerifiedCommand.js +21 -0
- package/dist/development/src/model/commands/person/MarkEmailVerifiedCommand.js.map +1 -0
- package/dist/development/src/model/commands/person/ResetPersonMfaCommand.cjs +24 -0
- package/dist/development/src/model/commands/person/ResetPersonMfaCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/person/ResetPersonMfaCommand.js +24 -0
- package/dist/development/src/model/commands/person/ResetPersonMfaCommand.js.map +1 -0
- package/dist/development/src/model/commands/person/SetMfaGraceUntilCommand.cjs +16 -0
- package/dist/development/src/model/commands/person/SetMfaGraceUntilCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/person/SetMfaGraceUntilCommand.js +16 -0
- package/dist/development/src/model/commands/person/SetMfaGraceUntilCommand.js.map +1 -0
- package/dist/development/src/model/commands/person/TogglePersonPasswordlessCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/person/TogglePersonPasswordlessCommand.js.map +1 -1
- package/dist/development/src/model/commands/personToken/ActivateOtpCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/personToken/ActivateOtpCommand.js.map +1 -1
- package/dist/development/src/model/commands/personToken/ClaimOtpAttemptCommand.cjs +17 -0
- package/dist/development/src/model/commands/personToken/ClaimOtpAttemptCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/personToken/ClaimOtpAttemptCommand.js +17 -0
- package/dist/development/src/model/commands/personToken/ClaimOtpAttemptCommand.js.map +1 -0
- package/dist/development/src/model/commands/personToken/CreatePersonTokenCommand.cjs +10 -2
- package/dist/development/src/model/commands/personToken/CreatePersonTokenCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/personToken/CreatePersonTokenCommand.js +11 -3
- package/dist/development/src/model/commands/personToken/CreatePersonTokenCommand.js.map +1 -1
- package/dist/development/src/model/commands/personToken/IncreaseOtpAttemptCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/personToken/IncreaseOtpAttemptCommand.js.map +1 -1
- package/dist/development/src/model/commands/personToken/InvalidateEmailOtpTokensCommand.cjs +15 -0
- package/dist/development/src/model/commands/personToken/InvalidateEmailOtpTokensCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/personToken/InvalidateEmailOtpTokensCommand.js +15 -0
- package/dist/development/src/model/commands/personToken/InvalidateEmailOtpTokensCommand.js.map +1 -0
- package/dist/development/src/model/commands/personToken/InvalidateTokenCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/personToken/InvalidateTokenCommand.js.map +1 -1
- package/dist/development/src/model/commands/personToken/ResetPasswordCommand.cjs +2 -3
- package/dist/development/src/model/commands/personToken/ResetPasswordCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/personToken/ResetPasswordCommand.js +2 -3
- package/dist/development/src/model/commands/personToken/ResetPasswordCommand.js.map +1 -1
- package/dist/development/src/model/commands/personToken/SaveEmailOtpTokenCommand.cjs +32 -0
- package/dist/development/src/model/commands/personToken/SaveEmailOtpTokenCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/personToken/SaveEmailOtpTokenCommand.js +32 -0
- package/dist/development/src/model/commands/personToken/SaveEmailOtpTokenCommand.js.map +1 -0
- package/dist/development/src/model/commands/personToken/SavePersonTokenCommand.cjs +16 -8
- package/dist/development/src/model/commands/personToken/SavePersonTokenCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/personToken/SavePersonTokenCommand.js +17 -9
- package/dist/development/src/model/commands/personToken/SavePersonTokenCommand.js.map +1 -1
- package/dist/development/src/model/commands/project/CreateProjectCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/project/CreateProjectCommand.js.map +1 -1
- package/dist/development/src/model/commands/project/SetProjectSecretCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/project/SetProjectSecretCommand.js.map +1 -1
- package/dist/development/src/model/commands/project/UpdateProjectCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/project/UpdateProjectCommand.js.map +1 -1
- package/dist/development/src/model/commands/rateLimit/RecordRateLimitEventCommand.cjs +18 -0
- package/dist/development/src/model/commands/rateLimit/RecordRateLimitEventCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/rateLimit/RecordRateLimitEventCommand.js +18 -0
- package/dist/development/src/model/commands/rateLimit/RecordRateLimitEventCommand.js.map +1 -0
- package/dist/development/src/model/consts/expirations.cjs +4 -0
- package/dist/development/src/model/consts/expirations.cjs.map +1 -1
- package/dist/development/src/model/consts/expirations.js +4 -0
- package/dist/development/src/model/consts/expirations.js.map +1 -1
- package/dist/development/src/model/dtos/Password.cjs.map +1 -1
- package/dist/development/src/model/dtos/Password.js.map +1 -1
- package/dist/development/src/model/mailing/UserMailer.cjs +73 -1
- package/dist/development/src/model/mailing/UserMailer.cjs.map +1 -1
- package/dist/development/src/model/mailing/UserMailer.js +73 -1
- package/dist/development/src/model/mailing/UserMailer.js.map +1 -1
- package/dist/development/src/model/mailing/templates/BackupCodesExhausted.mustache.cjs +15 -0
- package/dist/development/src/model/mailing/templates/BackupCodesExhausted.mustache.cjs.map +1 -0
- package/dist/development/src/model/mailing/templates/BackupCodesExhausted.mustache.js +16 -0
- package/dist/development/src/model/mailing/templates/BackupCodesExhausted.mustache.js.map +1 -0
- package/dist/development/src/model/mailing/templates/EmailChangeNotify.mustache.cjs +12 -0
- package/dist/development/src/model/mailing/templates/EmailChangeNotify.mustache.cjs.map +1 -0
- package/dist/development/src/model/mailing/templates/EmailChangeNotify.mustache.js +13 -0
- package/dist/development/src/model/mailing/templates/EmailChangeNotify.mustache.js.map +1 -0
- package/dist/development/src/model/mailing/templates/EmailChangeVerify.mustache.cjs +14 -0
- package/dist/development/src/model/mailing/templates/EmailChangeVerify.mustache.cjs.map +1 -0
- package/dist/development/src/model/mailing/templates/EmailChangeVerify.mustache.js +15 -0
- package/dist/development/src/model/mailing/templates/EmailChangeVerify.mustache.js.map +1 -0
- package/dist/development/src/model/mailing/templates/EmailOtp.mustache.cjs +15 -0
- package/dist/development/src/model/mailing/templates/EmailOtp.mustache.cjs.map +1 -0
- package/dist/development/src/model/mailing/templates/EmailOtp.mustache.js +16 -0
- package/dist/development/src/model/mailing/templates/EmailOtp.mustache.js.map +1 -0
- package/dist/development/src/model/mailing/templates/EmailVerification.mustache.cjs +12 -0
- package/dist/development/src/model/mailing/templates/EmailVerification.mustache.cjs.map +1 -0
- package/dist/development/src/model/mailing/templates/EmailVerification.mustache.js +13 -0
- package/dist/development/src/model/mailing/templates/EmailVerification.mustache.js.map +1 -0
- package/dist/development/src/model/mailing/templates/ExistingUserInvited.mustache.cjs.map +1 -1
- package/dist/development/src/model/mailing/templates/ExistingUserInvited.mustache.js.map +1 -1
- package/dist/development/src/model/mailing/templates/ForcedSignOut.mustache.cjs +12 -0
- package/dist/development/src/model/mailing/templates/ForcedSignOut.mustache.cjs.map +1 -0
- package/dist/development/src/model/mailing/templates/ForcedSignOut.mustache.js +13 -0
- package/dist/development/src/model/mailing/templates/ForcedSignOut.mustache.js.map +1 -0
- package/dist/development/src/model/mailing/templates/NewUserInvited.mustache.cjs.map +1 -1
- package/dist/development/src/model/mailing/templates/NewUserInvited.mustache.js.map +1 -1
- package/dist/development/src/model/mailing/templates/PasswordReset.mustache.cjs.map +1 -1
- package/dist/development/src/model/mailing/templates/PasswordReset.mustache.js.map +1 -1
- package/dist/development/src/model/mailing/templates/PasswordlessSignIn.mustache.cjs.map +1 -1
- package/dist/development/src/model/mailing/templates/PasswordlessSignIn.mustache.js.map +1 -1
- package/dist/development/src/model/mailing/templates/UnusualLogin.mustache.cjs +19 -0
- package/dist/development/src/model/mailing/templates/UnusualLogin.mustache.cjs.map +1 -0
- package/dist/development/src/model/mailing/templates/UnusualLogin.mustache.js +20 -0
- package/dist/development/src/model/mailing/templates/UnusualLogin.mustache.js.map +1 -0
- package/dist/development/src/model/mailing/type.cjs +45 -3
- package/dist/development/src/model/mailing/type.cjs.map +1 -1
- package/dist/development/src/model/mailing/type.js +45 -3
- package/dist/development/src/model/mailing/type.js.map +1 -1
- package/dist/development/src/model/queries/apiKey/ApiKeyListQuery.cjs +32 -0
- package/dist/development/src/model/queries/apiKey/ApiKeyListQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/apiKey/ApiKeyListQuery.js +32 -0
- package/dist/development/src/model/queries/apiKey/ApiKeyListQuery.js.map +1 -0
- package/dist/development/src/model/queries/apiKey/ApiKeyQuery.cjs +8 -1
- package/dist/development/src/model/queries/apiKey/ApiKeyQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/apiKey/ApiKeyQuery.js +9 -2
- package/dist/development/src/model/queries/apiKey/ApiKeyQuery.js.map +1 -1
- package/dist/development/src/model/queries/apiKey/ApiKeySessionsQuery.cjs +20 -0
- package/dist/development/src/model/queries/apiKey/ApiKeySessionsQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/apiKey/ApiKeySessionsQuery.js +20 -0
- package/dist/development/src/model/queries/apiKey/ApiKeySessionsQuery.js.map +1 -0
- package/dist/development/src/model/queries/authLog/AuthLogQuery.cjs +51 -0
- package/dist/development/src/model/queries/authLog/AuthLogQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/authLog/AuthLogQuery.js +51 -0
- package/dist/development/src/model/queries/authLog/AuthLogQuery.js.map +1 -0
- package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.cjs +12 -10
- package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.js +12 -10
- package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.js.map +1 -1
- package/dist/development/src/model/queries/authLog/NextMailAttemptQuery.cjs +47 -0
- package/dist/development/src/model/queries/authLog/NextMailAttemptQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/authLog/NextMailAttemptQuery.js +47 -0
- package/dist/development/src/model/queries/authLog/NextMailAttemptQuery.js.map +1 -0
- package/dist/development/src/model/queries/authPolicy/AuthPoliciesQuery.cjs +19 -0
- package/dist/development/src/model/queries/authPolicy/AuthPoliciesQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/authPolicy/AuthPoliciesQuery.js +19 -0
- package/dist/development/src/model/queries/authPolicy/AuthPoliciesQuery.js.map +1 -0
- package/dist/development/src/model/queries/configuration/ConfigurationQuery.cjs +63 -2
- package/dist/development/src/model/queries/configuration/ConfigurationQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/configuration/ConfigurationQuery.js +63 -2
- package/dist/development/src/model/queries/configuration/ConfigurationQuery.js.map +1 -1
- package/dist/development/src/model/queries/customRole/CustomRolesQuery.cjs +23 -0
- package/dist/development/src/model/queries/customRole/CustomRolesQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/customRole/CustomRolesQuery.js +23 -0
- package/dist/development/src/model/queries/customRole/CustomRolesQuery.js.map +1 -0
- package/dist/development/src/model/queries/identity/IdentitiesHoldingRoleCountQuery.cjs +15 -0
- package/dist/development/src/model/queries/identity/IdentitiesHoldingRoleCountQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/identity/IdentitiesHoldingRoleCountQuery.js +15 -0
- package/dist/development/src/model/queries/identity/IdentitiesHoldingRoleCountQuery.js.map +1 -0
- package/dist/development/src/model/queries/identity/IdentityQuery.cjs +7 -2
- package/dist/development/src/model/queries/identity/IdentityQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/identity/IdentityQuery.js +7 -2
- package/dist/development/src/model/queries/identity/IdentityQuery.js.map +1 -1
- package/dist/development/src/model/queries/idp/IdentityProviderBySlugQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/idp/IdentityProviderBySlugQuery.js.map +1 -1
- package/dist/development/src/model/queries/idp/IdentityProvidersQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/idp/IdentityProvidersQuery.js.map +1 -1
- package/dist/development/src/model/queries/idp/IdpSessionByApiKeyQuery.cjs +38 -0
- package/dist/development/src/model/queries/idp/IdpSessionByApiKeyQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/idp/IdpSessionByApiKeyQuery.js +38 -0
- package/dist/development/src/model/queries/idp/IdpSessionByApiKeyQuery.js.map +1 -0
- package/dist/development/src/model/queries/idp/IdpSessionsBySidQuery.cjs +19 -0
- package/dist/development/src/model/queries/idp/IdpSessionsBySidQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/idp/IdpSessionsBySidQuery.js +19 -0
- package/dist/development/src/model/queries/idp/IdpSessionsBySidQuery.js.map +1 -0
- package/dist/development/src/model/queries/idp/IdpSessionsBySubQuery.cjs +18 -0
- package/dist/development/src/model/queries/idp/IdpSessionsBySubQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/idp/IdpSessionsBySubQuery.js +18 -0
- package/dist/development/src/model/queries/idp/IdpSessionsBySubQuery.js.map +1 -0
- package/dist/development/src/model/queries/idp/LocalAuthDisablingIdpsQuery.cjs +21 -0
- package/dist/development/src/model/queries/idp/LocalAuthDisablingIdpsQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/idp/LocalAuthDisablingIdpsQuery.js +21 -0
- package/dist/development/src/model/queries/idp/LocalAuthDisablingIdpsQuery.js.map +1 -0
- package/dist/development/src/model/queries/idp/PersonIdentityProvidersQuery.cjs +18 -0
- package/dist/development/src/model/queries/idp/PersonIdentityProvidersQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/idp/PersonIdentityProvidersQuery.js +18 -0
- package/dist/development/src/model/queries/idp/PersonIdentityProvidersQuery.js.map +1 -0
- package/dist/development/src/model/queries/idp/helpers.cjs +3 -3
- package/dist/development/src/model/queries/idp/helpers.cjs.map +1 -1
- package/dist/development/src/model/queries/idp/helpers.js +3 -3
- package/dist/development/src/model/queries/idp/helpers.js.map +1 -1
- package/dist/development/src/model/queries/mailTemplate/MailTemplateListQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/mailTemplate/MailTemplateListQuery.js.map +1 -1
- package/dist/development/src/model/queries/mailTemplate/MailTemplateQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/mailTemplate/MailTemplateQuery.js.map +1 -1
- package/dist/development/src/model/queries/mailTemplate/helpers.cjs.map +1 -1
- package/dist/development/src/model/queries/mailTemplate/helpers.js.map +1 -1
- package/dist/development/src/model/queries/membership/AllProjectRolesByIdentityQuery.cjs +17 -0
- package/dist/development/src/model/queries/membership/AllProjectRolesByIdentityQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/membership/AllProjectRolesByIdentityQuery.js +17 -0
- package/dist/development/src/model/queries/membership/AllProjectRolesByIdentityQuery.js.map +1 -0
- package/dist/development/src/model/queries/membership/IdentityHasProjectMembershipsQuery.cjs +15 -0
- package/dist/development/src/model/queries/membership/IdentityHasProjectMembershipsQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/membership/IdentityHasProjectMembershipsQuery.js +15 -0
- package/dist/development/src/model/queries/membership/IdentityHasProjectMembershipsQuery.js.map +1 -0
- package/dist/development/src/model/queries/membership/ProjectMembersQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/membership/ProjectMembersQuery.js.map +1 -1
- package/dist/development/src/model/queries/membership/ProjectMembershipByIdentityQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/membership/ProjectMembershipByIdentityQuery.js.map +1 -1
- package/dist/development/src/model/queries/membership/ProjectRolesByIdentityQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/membership/ProjectRolesByIdentityQuery.js.map +1 -1
- package/dist/development/src/model/queries/person/PersonByIdPQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/person/PersonByIdPQuery.js.map +1 -1
- package/dist/development/src/model/queries/person/PersonByIdentityBatchQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/person/PersonByIdentityBatchQuery.js.map +1 -1
- package/dist/development/src/model/queries/person/PersonQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/person/PersonQuery.js.map +1 -1
- package/dist/development/src/model/queries/person/PersonQueryBuilderFactory.cjs +9 -1
- package/dist/development/src/model/queries/person/PersonQueryBuilderFactory.cjs.map +1 -1
- package/dist/development/src/model/queries/person/PersonQueryBuilderFactory.js +9 -1
- package/dist/development/src/model/queries/person/PersonQueryBuilderFactory.js.map +1 -1
- package/dist/development/src/model/queries/person/PersonsQuery.cjs +28 -0
- package/dist/development/src/model/queries/person/PersonsQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/person/PersonsQuery.js +28 -0
- package/dist/development/src/model/queries/person/PersonsQuery.js.map +1 -0
- package/dist/development/src/model/queries/personToken/PersonTokenQuery.cjs +12 -3
- package/dist/development/src/model/queries/personToken/PersonTokenQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/personToken/PersonTokenQuery.js +12 -3
- package/dist/development/src/model/queries/personToken/PersonTokenQuery.js.map +1 -1
- package/dist/development/src/model/queries/project/ProjectBySlugQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/project/ProjectBySlugQuery.js.map +1 -1
- package/dist/development/src/model/queries/project/ProjectSecretKeysQuery.cjs +14 -0
- package/dist/development/src/model/queries/project/ProjectSecretKeysQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/project/ProjectSecretKeysQuery.js +14 -0
- package/dist/development/src/model/queries/project/ProjectSecretKeysQuery.js.map +1 -0
- package/dist/development/src/model/queries/project/ProjectSecretsQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/project/ProjectSecretsQuery.js.map +1 -1
- package/dist/development/src/model/queries/project/ProjectsByIdentityQuery.cjs +4 -1
- package/dist/development/src/model/queries/project/ProjectsByIdentityQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/project/ProjectsByIdentityQuery.js +4 -1
- package/dist/development/src/model/queries/project/ProjectsByIdentityQuery.js.map +1 -1
- package/dist/development/src/model/queries/project/ProjectsQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/project/ProjectsQuery.js.map +1 -1
- package/dist/development/src/model/queries/rateLimit/RateLimitCountQuery.cjs +17 -0
- package/dist/development/src/model/queries/rateLimit/RateLimitCountQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/rateLimit/RateLimitCountQuery.js +17 -0
- package/dist/development/src/model/queries/rateLimit/RateLimitCountQuery.js.map +1 -0
- package/dist/development/src/model/service/AuthLogService.cjs +38 -2
- package/dist/development/src/model/service/AuthLogService.cjs.map +1 -1
- package/dist/development/src/model/service/AuthLogService.js +38 -2
- package/dist/development/src/model/service/AuthLogService.js.map +1 -1
- package/dist/development/src/model/service/AuthPolicyManager.cjs +96 -0
- package/dist/development/src/model/service/AuthPolicyManager.cjs.map +1 -0
- package/dist/development/src/model/service/AuthPolicyManager.js +96 -0
- package/dist/development/src/model/service/AuthPolicyManager.js.map +1 -0
- package/dist/development/src/model/service/AuthPolicyResolver.cjs +84 -0
- package/dist/development/src/model/service/AuthPolicyResolver.cjs.map +1 -0
- package/dist/development/src/model/service/AuthPolicyResolver.js +84 -0
- package/dist/development/src/model/service/AuthPolicyResolver.js.map +1 -0
- package/dist/development/src/model/service/BackupCodeManager.cjs +80 -0
- package/dist/development/src/model/service/BackupCodeManager.cjs.map +1 -0
- package/dist/development/src/model/service/BackupCodeManager.js +80 -0
- package/dist/development/src/model/service/BackupCodeManager.js.map +1 -0
- package/dist/development/src/model/service/ConfigurationManager.cjs.map +1 -1
- package/dist/development/src/model/service/ConfigurationManager.js.map +1 -1
- package/dist/development/src/model/service/CustomRoleManager.cjs +170 -0
- package/dist/development/src/model/service/CustomRoleManager.cjs.map +1 -0
- package/dist/development/src/model/service/CustomRoleManager.js +170 -0
- package/dist/development/src/model/service/CustomRoleManager.js.map +1 -0
- package/dist/development/src/model/service/EmailChangeManager.cjs +136 -0
- package/dist/development/src/model/service/EmailChangeManager.cjs.map +1 -0
- package/dist/development/src/model/service/EmailChangeManager.js +136 -0
- package/dist/development/src/model/service/EmailChangeManager.js.map +1 -0
- package/dist/development/src/model/service/EmailOtpManager.cjs +89 -0
- package/dist/development/src/model/service/EmailOtpManager.cjs.map +1 -0
- package/dist/development/src/model/service/EmailOtpManager.js +89 -0
- package/dist/development/src/model/service/EmailOtpManager.js.map +1 -0
- package/dist/development/src/model/service/EmailValidator.cjs +6 -5
- package/dist/development/src/model/service/EmailValidator.cjs.map +1 -1
- package/dist/development/src/model/service/EmailValidator.js +6 -5
- package/dist/development/src/model/service/EmailValidator.js.map +1 -1
- package/dist/development/src/model/service/EmailVerificationManager.cjs +95 -0
- package/dist/development/src/model/service/EmailVerificationManager.cjs.map +1 -0
- package/dist/development/src/model/service/EmailVerificationManager.js +95 -0
- package/dist/development/src/model/service/EmailVerificationManager.js.map +1 -0
- package/dist/development/src/model/service/GlobalRoleValidator.cjs +35 -0
- package/dist/development/src/model/service/GlobalRoleValidator.cjs.map +1 -0
- package/dist/development/src/model/service/GlobalRoleValidator.js +35 -0
- package/dist/development/src/model/service/GlobalRoleValidator.js.map +1 -0
- package/dist/development/src/model/service/HibpChecker.cjs +46 -0
- package/dist/development/src/model/service/HibpChecker.cjs.map +1 -0
- package/dist/development/src/model/service/HibpChecker.js +46 -0
- package/dist/development/src/model/service/HibpChecker.js.map +1 -0
- package/dist/development/src/model/service/IDPSignInManager.cjs +89 -17
- package/dist/development/src/model/service/IDPSignInManager.cjs.map +1 -1
- package/dist/development/src/model/service/IDPSignInManager.js +89 -17
- package/dist/development/src/model/service/IDPSignInManager.js.map +1 -1
- package/dist/development/src/model/service/InviteManager.cjs +2 -1
- package/dist/development/src/model/service/InviteManager.cjs.map +1 -1
- package/dist/development/src/model/service/InviteManager.js +2 -1
- package/dist/development/src/model/service/InviteManager.js.map +1 -1
- package/dist/development/src/model/service/LoginRiskAnalyzer.cjs +160 -0
- package/dist/development/src/model/service/LoginRiskAnalyzer.cjs.map +1 -0
- package/dist/development/src/model/service/LoginRiskAnalyzer.js +160 -0
- package/dist/development/src/model/service/LoginRiskAnalyzer.js.map +1 -0
- package/dist/development/src/model/service/MailTemplateManager.cjs.map +1 -1
- package/dist/development/src/model/service/MailTemplateManager.js.map +1 -1
- package/dist/development/src/model/service/MembershipValidator.cjs.map +1 -1
- package/dist/development/src/model/service/MembershipValidator.js.map +1 -1
- package/dist/development/src/model/service/OtpAuthenticator.cjs.map +1 -1
- package/dist/development/src/model/service/OtpAuthenticator.js.map +1 -1
- package/dist/development/src/model/service/OtpManager.cjs +56 -6
- package/dist/development/src/model/service/OtpManager.cjs.map +1 -1
- package/dist/development/src/model/service/OtpManager.js +56 -6
- package/dist/development/src/model/service/OtpManager.js.map +1 -1
- package/dist/development/src/model/service/PanelAccessResolver.cjs +32 -0
- package/dist/development/src/model/service/PanelAccessResolver.cjs.map +1 -0
- package/dist/development/src/model/service/PanelAccessResolver.js +32 -0
- package/dist/development/src/model/service/PanelAccessResolver.js.map +1 -0
- package/dist/development/src/model/service/PasswordChangeManager.cjs +4 -3
- package/dist/development/src/model/service/PasswordChangeManager.cjs.map +1 -1
- package/dist/development/src/model/service/PasswordChangeManager.js +4 -3
- package/dist/development/src/model/service/PasswordChangeManager.js.map +1 -1
- package/dist/development/src/model/service/PasswordResetManager.cjs +21 -6
- package/dist/development/src/model/service/PasswordResetManager.cjs.map +1 -1
- package/dist/development/src/model/service/PasswordResetManager.js +21 -6
- package/dist/development/src/model/service/PasswordResetManager.js.map +1 -1
- package/dist/development/src/model/service/PasswordStrengthValidator.cjs +8 -0
- package/dist/development/src/model/service/PasswordStrengthValidator.cjs.map +1 -1
- package/dist/development/src/model/service/PasswordStrengthValidator.js +8 -0
- package/dist/development/src/model/service/PasswordStrengthValidator.js.map +1 -1
- package/dist/development/src/model/service/PasswordlessSignInManager.cjs +80 -34
- package/dist/development/src/model/service/PasswordlessSignInManager.cjs.map +1 -1
- package/dist/development/src/model/service/PasswordlessSignInManager.js +80 -34
- package/dist/development/src/model/service/PasswordlessSignInManager.js.map +1 -1
- package/dist/development/src/model/service/PersonAccessManager.cjs +8 -0
- package/dist/development/src/model/service/PersonAccessManager.cjs.map +1 -1
- package/dist/development/src/model/service/PersonAccessManager.js +8 -0
- package/dist/development/src/model/service/PersonAccessManager.js.map +1 -1
- package/dist/development/src/model/service/PersonManager.cjs +11 -4
- package/dist/development/src/model/service/PersonManager.cjs.map +1 -1
- package/dist/development/src/model/service/PersonManager.js +11 -4
- package/dist/development/src/model/service/PersonManager.js.map +1 -1
- package/dist/development/src/model/service/ProjectManager.cjs.map +1 -1
- package/dist/development/src/model/service/ProjectManager.js.map +1 -1
- package/dist/development/src/model/service/ProjectMemberManager.cjs +2 -1
- package/dist/development/src/model/service/ProjectMemberManager.cjs.map +1 -1
- package/dist/development/src/model/service/ProjectMemberManager.js +2 -1
- package/dist/development/src/model/service/ProjectMemberManager.js.map +1 -1
- package/dist/development/src/model/service/RateLimiter.cjs +68 -0
- package/dist/development/src/model/service/RateLimiter.cjs.map +1 -0
- package/dist/development/src/model/service/RateLimiter.js +68 -0
- package/dist/development/src/model/service/RateLimiter.js.map +1 -0
- package/dist/development/src/model/service/RolesManager.cjs +17 -18
- package/dist/development/src/model/service/RolesManager.cjs.map +1 -1
- package/dist/development/src/model/service/RolesManager.js +18 -19
- package/dist/development/src/model/service/RolesManager.js.map +1 -1
- package/dist/development/src/model/service/SecretsManager.cjs +7 -1
- package/dist/development/src/model/service/SecretsManager.cjs.map +1 -1
- package/dist/development/src/model/service/SecretsManager.js +7 -1
- package/dist/development/src/model/service/SecretsManager.js.map +1 -1
- package/dist/development/src/model/service/SignInManager.cjs +228 -11
- package/dist/development/src/model/service/SignInManager.cjs.map +1 -1
- package/dist/development/src/model/service/SignInManager.js +228 -11
- package/dist/development/src/model/service/SignInManager.js.map +1 -1
- package/dist/development/src/model/service/SignOutManager.cjs +71 -0
- package/dist/development/src/model/service/SignOutManager.cjs.map +1 -0
- package/dist/development/src/model/service/SignOutManager.js +71 -0
- package/dist/development/src/model/service/SignOutManager.js.map +1 -0
- package/dist/development/src/model/service/SignUpManager.cjs +32 -14
- package/dist/development/src/model/service/SignUpManager.cjs.map +1 -1
- package/dist/development/src/model/service/SignUpManager.js +33 -15
- package/dist/development/src/model/service/SignUpManager.js.map +1 -1
- package/dist/development/src/model/service/apiKey/ApiKeyManager.cjs +151 -23
- package/dist/development/src/model/service/apiKey/ApiKeyManager.cjs.map +1 -1
- package/dist/development/src/model/service/apiKey/ApiKeyManager.js +153 -25
- package/dist/development/src/model/service/apiKey/ApiKeyManager.js.map +1 -1
- package/dist/development/src/model/service/apiKey/ApiKeyService.cjs +14 -6
- package/dist/development/src/model/service/apiKey/ApiKeyService.cjs.map +1 -1
- package/dist/development/src/model/service/apiKey/ApiKeyService.js +14 -6
- package/dist/development/src/model/service/apiKey/ApiKeyService.js.map +1 -1
- package/dist/development/src/model/service/apiKey/UnpersistedApiKeyManager.cjs +91 -0
- package/dist/development/src/model/service/apiKey/UnpersistedApiKeyManager.cjs.map +1 -0
- package/dist/development/src/model/service/apiKey/UnpersistedApiKeyManager.js +91 -0
- package/dist/development/src/model/service/apiKey/UnpersistedApiKeyManager.js.map +1 -0
- package/dist/development/src/model/service/captcha/CaptchaValidator.cjs +56 -0
- package/dist/development/src/model/service/captcha/CaptchaValidator.cjs.map +1 -0
- package/dist/development/src/model/service/captcha/CaptchaValidator.js +56 -0
- package/dist/development/src/model/service/captcha/CaptchaValidator.js.map +1 -0
- package/dist/development/src/model/service/captcha/HCaptchaProvider.cjs +31 -0
- package/dist/development/src/model/service/captcha/HCaptchaProvider.cjs.map +1 -0
- package/dist/development/src/model/service/captcha/HCaptchaProvider.js +31 -0
- package/dist/development/src/model/service/captcha/HCaptchaProvider.js.map +1 -0
- package/dist/development/src/model/service/captcha/RecaptchaV3Provider.cjs +37 -0
- package/dist/development/src/model/service/captcha/RecaptchaV3Provider.cjs.map +1 -0
- package/dist/development/src/model/service/captcha/RecaptchaV3Provider.js +37 -0
- package/dist/development/src/model/service/captcha/RecaptchaV3Provider.js.map +1 -0
- package/dist/development/src/model/service/captcha/TurnstileProvider.cjs +35 -0
- package/dist/development/src/model/service/captcha/TurnstileProvider.cjs.map +1 -0
- package/dist/development/src/model/service/captcha/TurnstileProvider.js +35 -0
- package/dist/development/src/model/service/captcha/TurnstileProvider.js.map +1 -0
- package/dist/development/src/model/service/helpers/getPreferredProject.cjs.map +1 -1
- package/dist/development/src/model/service/helpers/getPreferredProject.js.map +1 -1
- package/dist/development/src/model/service/helpers/isPasswordlessEnabled.cjs +16 -0
- package/dist/development/src/model/service/helpers/isPasswordlessEnabled.cjs.map +1 -0
- package/dist/development/src/model/service/helpers/isPasswordlessEnabled.js +16 -0
- package/dist/development/src/model/service/helpers/isPasswordlessEnabled.js.map +1 -0
- package/dist/development/src/model/service/idp/BackchannelLogoutManager.cjs +84 -0
- package/dist/development/src/model/service/idp/BackchannelLogoutManager.cjs.map +1 -0
- package/dist/development/src/model/service/idp/BackchannelLogoutManager.js +84 -0
- package/dist/development/src/model/service/idp/BackchannelLogoutManager.js.map +1 -0
- package/dist/development/src/model/service/idp/ClaimMapping.cjs +187 -0
- package/dist/development/src/model/service/idp/ClaimMapping.cjs.map +1 -0
- package/dist/development/src/model/service/idp/ClaimMapping.js +170 -0
- package/dist/development/src/model/service/idp/ClaimMapping.js.map +1 -0
- package/dist/development/src/model/service/idp/ClaimMappingEvaluator.cjs +155 -0
- package/dist/development/src/model/service/idp/ClaimMappingEvaluator.cjs.map +1 -0
- package/dist/development/src/model/service/idp/ClaimMappingEvaluator.js +155 -0
- package/dist/development/src/model/service/idp/ClaimMappingEvaluator.js.map +1 -0
- package/dist/development/src/model/service/idp/ClaimMappingValidation.cjs +83 -0
- package/dist/development/src/model/service/idp/ClaimMappingValidation.cjs.map +1 -0
- package/dist/development/src/model/service/idp/ClaimMappingValidation.js +83 -0
- package/dist/development/src/model/service/idp/ClaimMappingValidation.js.map +1 -0
- package/dist/development/src/model/service/idp/IDPClaimSyncService.cjs +261 -0
- package/dist/development/src/model/service/idp/IDPClaimSyncService.cjs.map +1 -0
- package/dist/development/src/model/service/idp/IDPClaimSyncService.js +261 -0
- package/dist/development/src/model/service/idp/IDPClaimSyncService.js.map +1 -0
- package/dist/development/src/model/service/idp/IDPHandlerRegistry.cjs.map +1 -1
- package/dist/development/src/model/service/idp/IDPHandlerRegistry.js.map +1 -1
- package/dist/development/src/model/service/idp/IDPManager.cjs +74 -22
- package/dist/development/src/model/service/idp/IDPManager.cjs.map +1 -1
- package/dist/development/src/model/service/idp/IDPManager.js +74 -22
- package/dist/development/src/model/service/idp/IDPManager.js.map +1 -1
- package/dist/development/src/model/service/idp/IDPRevalidation.cjs +54 -0
- package/dist/development/src/model/service/idp/IDPRevalidation.cjs.map +1 -0
- package/dist/development/src/model/service/idp/IDPRevalidation.js +37 -0
- package/dist/development/src/model/service/idp/IDPRevalidation.js.map +1 -0
- package/dist/development/src/model/service/idp/IdpSessionRevalidator.cjs +241 -0
- package/dist/development/src/model/service/idp/IdpSessionRevalidator.cjs.map +1 -0
- package/dist/development/src/model/service/idp/IdpSessionRevalidator.js +241 -0
- package/dist/development/src/model/service/idp/IdpSessionRevalidator.js.map +1 -0
- package/dist/development/src/model/service/idp/PersonIdentityProviderManager.cjs +51 -0
- package/dist/development/src/model/service/idp/PersonIdentityProviderManager.cjs.map +1 -0
- package/dist/development/src/model/service/idp/PersonIdentityProviderManager.js +51 -0
- package/dist/development/src/model/service/idp/PersonIdentityProviderManager.js.map +1 -0
- package/dist/development/src/model/service/idp/providers/AppleProvider.cjs.map +1 -1
- package/dist/development/src/model/service/idp/providers/AppleProvider.js.map +1 -1
- package/dist/development/src/model/service/idp/providers/FacebookProvider.cjs.map +1 -1
- package/dist/development/src/model/service/idp/providers/FacebookProvider.js.map +1 -1
- package/dist/development/src/model/service/idp/providers/OIDCHelpers.cjs +207 -4
- package/dist/development/src/model/service/idp/providers/OIDCHelpers.cjs.map +1 -1
- package/dist/development/src/model/service/idp/providers/OIDCHelpers.js +208 -5
- package/dist/development/src/model/service/idp/providers/OIDCHelpers.js.map +1 -1
- package/dist/development/src/model/service/idp/providers/OIDCProvider.cjs +37 -4
- package/dist/development/src/model/service/idp/providers/OIDCProvider.cjs.map +1 -1
- package/dist/development/src/model/service/idp/providers/OIDCProvider.js +38 -5
- package/dist/development/src/model/service/idp/providers/OIDCProvider.js.map +1 -1
- package/dist/development/src/model/service/idp/providers/OIDCTypes.cjs +51 -1
- package/dist/development/src/model/service/idp/providers/OIDCTypes.cjs.map +1 -1
- package/dist/development/src/model/service/idp/providers/OIDCTypes.js +52 -2
- package/dist/development/src/model/service/idp/providers/OIDCTypes.js.map +1 -1
- package/dist/development/src/model/service/membershipUtils.cjs.map +1 -1
- package/dist/development/src/model/service/membershipUtils.js.map +1 -1
- package/dist/development/src/model/type/RateLimit.cjs +7 -0
- package/dist/development/src/model/type/RateLimit.cjs.map +1 -0
- package/dist/development/src/model/type/RateLimit.js +7 -0
- package/dist/development/src/model/type/RateLimit.js.map +1 -0
- package/dist/development/src/model/utils/DatabaseContext.cjs +3 -1
- package/dist/development/src/model/utils/DatabaseContext.cjs.map +1 -1
- package/dist/development/src/model/utils/DatabaseContext.js +3 -1
- package/dist/development/src/model/utils/DatabaseContext.js.map +1 -1
- package/dist/development/src/model/utils/interval.cjs +7 -0
- package/dist/development/src/model/utils/interval.cjs.map +1 -1
- package/dist/development/src/model/utils/interval.js +7 -0
- package/dist/development/src/model/utils/interval.js.map +1 -1
- package/dist/development/src/model/utils/token.cjs +12 -2
- package/dist/development/src/model/utils/token.cjs.map +1 -1
- package/dist/development/src/model/utils/token.js +12 -2
- package/dist/development/src/model/utils/token.js.map +1 -1
- package/dist/development/src/resolvers/ResolverFactory.cjs +42 -3
- package/dist/development/src/resolvers/ResolverFactory.cjs.map +1 -1
- package/dist/development/src/resolvers/ResolverFactory.js +42 -3
- package/dist/development/src/resolvers/ResolverFactory.js.map +1 -1
- package/dist/development/src/resolvers/TenantResolverContextFactory.cjs +22 -9
- package/dist/development/src/resolvers/TenantResolverContextFactory.cjs.map +1 -1
- package/dist/development/src/resolvers/TenantResolverContextFactory.js +22 -9
- package/dist/development/src/resolvers/TenantResolverContextFactory.js.map +1 -1
- package/dist/development/src/resolvers/errorUtils.cjs.map +1 -1
- package/dist/development/src/resolvers/errorUtils.js.map +1 -1
- package/dist/development/src/resolvers/membershipUtils.cjs.map +1 -1
- package/dist/development/src/resolvers/membershipUtils.js.map +1 -1
- package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs +64 -11
- package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js +65 -12
- package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs +15 -5
- package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js +15 -5
- package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/configuration/AuthPolicyMutationResolver.cjs +114 -0
- package/dist/development/src/resolvers/mutation/configuration/AuthPolicyMutationResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/configuration/AuthPolicyMutationResolver.js +114 -0
- package/dist/development/src/resolvers/mutation/configuration/AuthPolicyMutationResolver.js.map +1 -0
- package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs +27 -5
- package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js +27 -5
- package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/customRole/CustomRoleMutationResolver.cjs +124 -0
- package/dist/development/src/resolvers/mutation/customRole/CustomRoleMutationResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/customRole/CustomRoleMutationResolver.js +124 -0
- package/dist/development/src/resolvers/mutation/customRole/CustomRoleMutationResolver.js.map +1 -0
- package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs +55 -9
- package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js +55 -9
- package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs +26 -6
- package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.js +26 -6
- package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs +15 -5
- package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.js +15 -5
- package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/DisconnectMyIdentityProviderMutationResolver.cjs +55 -0
- package/dist/development/src/resolvers/mutation/idp/DisconnectMyIdentityProviderMutationResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/idp/DisconnectMyIdentityProviderMutationResolver.js +55 -0
- package/dist/development/src/resolvers/mutation/idp/DisconnectMyIdentityProviderMutationResolver.js.map +1 -0
- package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs +15 -5
- package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.js +15 -5
- package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs +27 -6
- package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js +27 -6
- package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/audit.cjs +21 -0
- package/dist/development/src/resolvers/mutation/idp/audit.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/idp/audit.js +21 -0
- package/dist/development/src/resolvers/mutation/idp/audit.js.map +1 -0
- package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs +61 -18
- package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js +61 -18
- package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs +12 -8
- package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.js +12 -8
- package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs +68 -9
- package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.js +68 -9
- package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs +11 -7
- package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.js +11 -7
- package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/EmailOtpMutationResolver.cjs +113 -0
- package/dist/development/src/resolvers/mutation/person/EmailOtpMutationResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/person/EmailOtpMutationResolver.js +113 -0
- package/dist/development/src/resolvers/mutation/person/EmailOtpMutationResolver.js.map +1 -0
- package/dist/development/src/resolvers/mutation/person/EmailVerificationMutationResolver.cjs +95 -0
- package/dist/development/src/resolvers/mutation/person/EmailVerificationMutationResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/person/EmailVerificationMutationResolver.js +95 -0
- package/dist/development/src/resolvers/mutation/person/EmailVerificationMutationResolver.js.map +1 -0
- package/dist/development/src/resolvers/mutation/person/EnablePersonMutationResolver.cjs +61 -0
- package/dist/development/src/resolvers/mutation/person/EnablePersonMutationResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/person/EnablePersonMutationResolver.js +61 -0
- package/dist/development/src/resolvers/mutation/person/EnablePersonMutationResolver.js.map +1 -0
- package/dist/development/src/resolvers/mutation/person/ForceSignOutMutationResolver.cjs +71 -0
- package/dist/development/src/resolvers/mutation/person/ForceSignOutMutationResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/person/ForceSignOutMutationResolver.js +71 -0
- package/dist/development/src/resolvers/mutation/person/ForceSignOutMutationResolver.js.map +1 -0
- package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.cjs +37 -6
- package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.js +37 -6
- package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.cjs +32 -11
- package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.js +32 -11
- package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.cjs +35 -19
- package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.js +36 -20
- package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs +46 -13
- package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.js +46 -13
- package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/RegenerateBackupCodesMutationResolver.cjs +64 -0
- package/dist/development/src/resolvers/mutation/person/RegenerateBackupCodesMutationResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/person/RegenerateBackupCodesMutationResolver.js +64 -0
- package/dist/development/src/resolvers/mutation/person/RegenerateBackupCodesMutationResolver.js.map +1 -0
- package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs +31 -10
- package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.js +31 -10
- package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ResetPersonMfaMutationResolver.cjs +59 -0
- package/dist/development/src/resolvers/mutation/person/ResetPersonMfaMutationResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/person/ResetPersonMfaMutationResolver.js +59 -0
- package/dist/development/src/resolvers/mutation/person/ResetPersonMfaMutationResolver.js.map +1 -0
- package/dist/development/src/resolvers/mutation/person/RevokeSessionMutationResolver.cjs +66 -0
- package/dist/development/src/resolvers/mutation/person/RevokeSessionMutationResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/person/RevokeSessionMutationResolver.js +66 -0
- package/dist/development/src/resolvers/mutation/person/RevokeSessionMutationResolver.js.map +1 -0
- package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.cjs +92 -16
- package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.js +92 -16
- package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.cjs +29 -24
- package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.js +29 -24
- package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.cjs +55 -7
- package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.js +55 -7
- package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs +12 -8
- package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js +12 -8
- package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs +19 -5
- package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.js +19 -5
- package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs +18 -5
- package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js +18 -5
- package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs +21 -5
- package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.js +21 -5
- package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs +11 -5
- package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js +11 -5
- package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs +13 -5
- package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js +13 -5
- package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs +13 -5
- package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js +13 -5
- package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/audit.cjs +35 -0
- package/dist/development/src/resolvers/mutation/projectMember/audit.cjs.map +1 -0
- package/dist/development/src/resolvers/mutation/projectMember/audit.js +35 -0
- package/dist/development/src/resolvers/mutation/projectMember/audit.js.map +1 -0
- package/dist/development/src/resolvers/query/ApiKeyQueryResolver.cjs +37 -0
- package/dist/development/src/resolvers/query/ApiKeyQueryResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/query/ApiKeyQueryResolver.js +37 -0
- package/dist/development/src/resolvers/query/ApiKeyQueryResolver.js.map +1 -0
- package/dist/development/src/resolvers/query/AuthLogQueryResolver.cjs +76 -0
- package/dist/development/src/resolvers/query/AuthLogQueryResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/query/AuthLogQueryResolver.js +76 -0
- package/dist/development/src/resolvers/query/AuthLogQueryResolver.js.map +1 -0
- package/dist/development/src/resolvers/query/AuthPolicyQueryResolver.cjs +55 -0
- package/dist/development/src/resolvers/query/AuthPolicyQueryResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/query/AuthPolicyQueryResolver.js +55 -0
- package/dist/development/src/resolvers/query/AuthPolicyQueryResolver.js.map +1 -0
- package/dist/development/src/resolvers/query/ConfigurationQueryResolver.cjs +11 -7
- package/dist/development/src/resolvers/query/ConfigurationQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/ConfigurationQueryResolver.js +11 -7
- package/dist/development/src/resolvers/query/ConfigurationQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/CustomRoleQueryResolver.cjs +55 -0
- package/dist/development/src/resolvers/query/CustomRoleQueryResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/query/CustomRoleQueryResolver.js +55 -0
- package/dist/development/src/resolvers/query/CustomRoleQueryResolver.js.map +1 -0
- package/dist/development/src/resolvers/query/IDPQueryResolver.cjs +9 -5
- package/dist/development/src/resolvers/query/IDPQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/IDPQueryResolver.js +9 -5
- package/dist/development/src/resolvers/query/IDPQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/MailTemplateQueryResolver.cjs +23 -14
- package/dist/development/src/resolvers/query/MailTemplateQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/MailTemplateQueryResolver.js +23 -14
- package/dist/development/src/resolvers/query/MailTemplateQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/MeQueryResolver.cjs +1 -0
- package/dist/development/src/resolvers/query/MeQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/MeQueryResolver.js +1 -0
- package/dist/development/src/resolvers/query/MeQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/PersonQueryResolver.cjs +46 -6
- package/dist/development/src/resolvers/query/PersonQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/PersonQueryResolver.js +46 -6
- package/dist/development/src/resolvers/query/PersonQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.cjs +9 -5
- package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.js +9 -5
- package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/ProjectQueryResolver.cjs +12 -7
- package/dist/development/src/resolvers/query/ProjectQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/ProjectQueryResolver.js +12 -7
- package/dist/development/src/resolvers/query/ProjectQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/responseHelpers/ApiKeyResponseFactory.cjs +57 -0
- package/dist/development/src/resolvers/responseHelpers/ApiKeyResponseFactory.cjs.map +1 -0
- package/dist/development/src/resolvers/responseHelpers/ApiKeyResponseFactory.js +57 -0
- package/dist/development/src/resolvers/responseHelpers/ApiKeyResponseFactory.js.map +1 -0
- package/dist/development/src/resolvers/responseHelpers/PersonResponseFactory.cjs +15 -2
- package/dist/development/src/resolvers/responseHelpers/PersonResponseFactory.cjs.map +1 -1
- package/dist/development/src/resolvers/responseHelpers/PersonResponseFactory.js +15 -2
- package/dist/development/src/resolvers/responseHelpers/PersonResponseFactory.js.map +1 -1
- package/dist/development/src/resolvers/responseHelpers/ProjectResponseFactory.cjs +23 -0
- package/dist/development/src/resolvers/responseHelpers/ProjectResponseFactory.cjs.map +1 -0
- package/dist/development/src/resolvers/responseHelpers/ProjectResponseFactory.js +23 -0
- package/dist/development/src/resolvers/responseHelpers/ProjectResponseFactory.js.map +1 -0
- package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.cjs +13 -7
- package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.cjs.map +1 -1
- package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.js +13 -7
- package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.js.map +1 -1
- package/dist/development/src/resolvers/types/IdentityTypeResolver.cjs +75 -11
- package/dist/development/src/resolvers/types/IdentityTypeResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/types/IdentityTypeResolver.js +75 -11
- package/dist/development/src/resolvers/types/IdentityTypeResolver.js.map +1 -1
- package/dist/development/src/resolvers/types/PersonTypeResolver.cjs +82 -0
- package/dist/development/src/resolvers/types/PersonTypeResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/types/PersonTypeResolver.js +82 -0
- package/dist/development/src/resolvers/types/PersonTypeResolver.js.map +1 -0
- package/dist/development/src/resolvers/types/ProjectTypeResolver.cjs +53 -7
- package/dist/development/src/resolvers/types/ProjectTypeResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/types/ProjectTypeResolver.js +53 -7
- package/dist/development/src/resolvers/types/ProjectTypeResolver.js.map +1 -1
- package/dist/development/src/schema/tenant.graphql.cjs +1088 -22
- package/dist/development/src/schema/tenant.graphql.cjs.map +1 -1
- package/dist/development/src/schema/tenant.graphql.js +1088 -22
- package/dist/development/src/schema/tenant.graphql.js.map +1 -1
- package/dist/development/src/utils/Mailer.cjs.map +1 -1
- package/dist/development/src/utils/Mailer.js.map +1 -1
- package/dist/development/src/utils/batchQuery.cjs.map +1 -1
- package/dist/development/src/utils/batchQuery.js.map +1 -1
- package/dist/production/index.cjs +187 -0
- package/dist/production/index.cjs.map +1 -1
- package/dist/production/index.js +187 -3
- package/dist/production/index.js.map +1 -1
- package/dist/production/src/TenantContainer.cjs +151 -26
- package/dist/production/src/TenantContainer.cjs.map +1 -1
- package/dist/production/src/TenantContainer.js +151 -26
- package/dist/production/src/TenantContainer.js.map +1 -1
- package/dist/production/src/bridges/system/IdentityFetcher.cjs +11 -7
- package/dist/production/src/bridges/system/IdentityFetcher.cjs.map +1 -1
- package/dist/production/src/bridges/system/IdentityFetcher.js +11 -7
- package/dist/production/src/bridges/system/IdentityFetcher.js.map +1 -1
- package/dist/production/src/migrations/2020-06-08-134000-tenant-credentials.cjs.map +1 -1
- package/dist/production/src/migrations/2020-06-08-134000-tenant-credentials.js.map +1 -1
- package/dist/production/src/migrations/2026-05-12-120000-api-key-session-tracking.cjs +23 -0
- package/dist/production/src/migrations/2026-05-12-120000-api-key-session-tracking.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-12-120000-api-key-session-tracking.js +24 -0
- package/dist/production/src/migrations/2026-05-12-120000-api-key-session-tracking.js.map +1 -0
- package/dist/production/src/migrations/2026-05-12-130000-api-key-trust-forwarded-info.cjs +10 -0
- package/dist/production/src/migrations/2026-05-12-130000-api-key-trust-forwarded-info.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-12-130000-api-key-trust-forwarded-info.js +11 -0
- package/dist/production/src/migrations/2026-05-12-130000-api-key-trust-forwarded-info.js.map +1 -0
- package/dist/production/src/migrations/2026-05-13-120000-auth-log-event-data.cjs +16 -0
- package/dist/production/src/migrations/2026-05-13-120000-auth-log-event-data.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-13-120000-auth-log-event-data.js +17 -0
- package/dist/production/src/migrations/2026-05-13-120000-auth-log-event-data.js.map +1 -0
- package/dist/production/src/migrations/2026-05-13-130000-anti-abuse.cjs +44 -0
- package/dist/production/src/migrations/2026-05-13-130000-anti-abuse.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-13-130000-anti-abuse.js +45 -0
- package/dist/production/src/migrations/2026-05-13-130000-anti-abuse.js.map +1 -0
- package/dist/production/src/migrations/2026-05-14-100000-auth-log-admin-actions.cjs +20 -0
- package/dist/production/src/migrations/2026-05-14-100000-auth-log-admin-actions.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-14-100000-auth-log-admin-actions.js +21 -0
- package/dist/production/src/migrations/2026-05-14-100000-auth-log-admin-actions.js.map +1 -0
- package/dist/production/src/migrations/2026-05-15-120000-config-reveal-login-method.cjs +10 -0
- package/dist/production/src/migrations/2026-05-15-120000-config-reveal-login-method.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-15-120000-config-reveal-login-method.js +11 -0
- package/dist/production/src/migrations/2026-05-15-120000-config-reveal-login-method.js.map +1 -0
- package/dist/production/src/migrations/2026-05-21-100000-person-mfa.cjs +26 -0
- package/dist/production/src/migrations/2026-05-21-100000-person-mfa.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-21-100000-person-mfa.js +27 -0
- package/dist/production/src/migrations/2026-05-21-100000-person-mfa.js.map +1 -0
- package/dist/production/src/migrations/2026-05-21-110000-mfa-foundation.cjs +43 -0
- package/dist/production/src/migrations/2026-05-21-110000-mfa-foundation.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-21-110000-mfa-foundation.js +44 -0
- package/dist/production/src/migrations/2026-05-21-110000-mfa-foundation.js.map +1 -0
- package/dist/production/src/migrations/2026-05-21-120000-email-otp.cjs +9 -0
- package/dist/production/src/migrations/2026-05-21-120000-email-otp.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-21-120000-email-otp.js +10 -0
- package/dist/production/src/migrations/2026-05-21-120000-email-otp.js.map +1 -0
- package/dist/production/src/migrations/2026-05-21-130000-api-key-session-policy.cjs +11 -0
- package/dist/production/src/migrations/2026-05-21-130000-api-key-session-policy.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-21-130000-api-key-session-policy.js +12 -0
- package/dist/production/src/migrations/2026-05-21-130000-api-key-session-policy.js.map +1 -0
- package/dist/production/src/migrations/2026-05-21-140000-mfa-grace-duration.cjs +10 -0
- package/dist/production/src/migrations/2026-05-21-140000-mfa-grace-duration.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-21-140000-mfa-grace-duration.js +11 -0
- package/dist/production/src/migrations/2026-05-21-140000-mfa-grace-duration.js.map +1 -0
- package/dist/production/src/migrations/2026-05-21-150000-email-otp-rate-limit.cjs +18 -0
- package/dist/production/src/migrations/2026-05-21-150000-email-otp-rate-limit.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-21-150000-email-otp-rate-limit.js +19 -0
- package/dist/production/src/migrations/2026-05-21-150000-email-otp-rate-limit.js.map +1 -0
- package/dist/production/src/migrations/2026-05-26-120000-email-verification-types.cjs +15 -0
- package/dist/production/src/migrations/2026-05-26-120000-email-verification-types.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-26-120000-email-verification-types.js +16 -0
- package/dist/production/src/migrations/2026-05-26-120000-email-verification-types.js.map +1 -0
- package/dist/production/src/migrations/2026-05-26-120010-email-verification.cjs +28 -0
- package/dist/production/src/migrations/2026-05-26-120010-email-verification.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-26-120010-email-verification.js +29 -0
- package/dist/production/src/migrations/2026-05-26-120010-email-verification.js.map +1 -0
- package/dist/production/src/migrations/2026-05-26-130000-email-change-verification-config.cjs +19 -0
- package/dist/production/src/migrations/2026-05-26-130000-email-change-verification-config.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-26-130000-email-change-verification-config.js +20 -0
- package/dist/production/src/migrations/2026-05-26-130000-email-change-verification-config.js.map +1 -0
- package/dist/production/src/migrations/2026-05-26-130010-idp-require-verified-email.cjs +15 -0
- package/dist/production/src/migrations/2026-05-26-130010-idp-require-verified-email.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-26-130010-idp-require-verified-email.js +16 -0
- package/dist/production/src/migrations/2026-05-26-130010-idp-require-verified-email.js.map +1 -0
- package/dist/production/src/migrations/2026-05-26-130020-email-verification-rate-limit.cjs +17 -0
- package/dist/production/src/migrations/2026-05-26-130020-email-verification-rate-limit.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-26-130020-email-verification-rate-limit.js +18 -0
- package/dist/production/src/migrations/2026-05-26-130020-email-verification-rate-limit.js.map +1 -0
- package/dist/production/src/migrations/2026-05-26-130030-captcha-protect-flows.cjs +22 -0
- package/dist/production/src/migrations/2026-05-26-130030-captcha-protect-flows.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-26-130030-captcha-protect-flows.js +23 -0
- package/dist/production/src/migrations/2026-05-26-130030-captcha-protect-flows.js.map +1 -0
- package/dist/production/src/migrations/2026-05-26-140000-idp-session.cjs +31 -0
- package/dist/production/src/migrations/2026-05-26-140000-idp-session.cjs.map +1 -0
- package/dist/production/src/migrations/2026-05-26-140000-idp-session.js +32 -0
- package/dist/production/src/migrations/2026-05-26-140000-idp-session.js.map +1 -0
- package/dist/production/src/migrations/2026-06-08-100000-idp-assume-email-verified.cjs +15 -0
- package/dist/production/src/migrations/2026-06-08-100000-idp-assume-email-verified.cjs.map +1 -0
- package/dist/production/src/migrations/2026-06-08-100000-idp-assume-email-verified.js +16 -0
- package/dist/production/src/migrations/2026-06-08-100000-idp-assume-email-verified.js.map +1 -0
- package/dist/production/src/migrations/2026-06-16-120000-login-anomaly-detection.cjs +30 -0
- package/dist/production/src/migrations/2026-06-16-120000-login-anomaly-detection.cjs.map +1 -0
- package/dist/production/src/migrations/2026-06-16-120000-login-anomaly-detection.js +31 -0
- package/dist/production/src/migrations/2026-06-16-120000-login-anomaly-detection.js.map +1 -0
- package/dist/production/src/migrations/2026-06-16-130000-idp-logout.cjs +10 -0
- package/dist/production/src/migrations/2026-06-16-130000-idp-logout.cjs.map +1 -0
- package/dist/production/src/migrations/2026-06-16-130000-idp-logout.js +11 -0
- package/dist/production/src/migrations/2026-06-16-130000-idp-logout.js.map +1 -0
- package/dist/production/src/migrations/2026-06-18-120000-idp-claim-mapping.cjs +10 -0
- package/dist/production/src/migrations/2026-06-18-120000-idp-claim-mapping.cjs.map +1 -0
- package/dist/production/src/migrations/2026-06-18-120000-idp-claim-mapping.js +11 -0
- package/dist/production/src/migrations/2026-06-18-120000-idp-claim-mapping.js.map +1 -0
- package/dist/production/src/migrations/2026-08-03-120000-person-enable-auth-log.cjs +9 -0
- package/dist/production/src/migrations/2026-08-03-120000-person-enable-auth-log.cjs.map +1 -0
- package/dist/production/src/migrations/2026-08-03-120000-person-enable-auth-log.js +10 -0
- package/dist/production/src/migrations/2026-08-03-120000-person-enable-auth-log.js.map +1 -0
- package/dist/production/src/migrations/2026-08-04-120000-config-panel.cjs +11 -0
- package/dist/production/src/migrations/2026-08-04-120000-config-panel.cjs.map +1 -0
- package/dist/production/src/migrations/2026-08-04-120000-config-panel.js +12 -0
- package/dist/production/src/migrations/2026-08-04-120000-config-panel.js.map +1 -0
- package/dist/production/src/migrations/2026-09-04-120000-idp-disable-local-authentication.cjs +18 -0
- package/dist/production/src/migrations/2026-09-04-120000-idp-disable-local-authentication.cjs.map +1 -0
- package/dist/production/src/migrations/2026-09-04-120000-idp-disable-local-authentication.js +19 -0
- package/dist/production/src/migrations/2026-09-04-120000-idp-disable-local-authentication.js.map +1 -0
- package/dist/production/src/migrations/2026-09-11-120000-custom-role.cjs +18 -0
- package/dist/production/src/migrations/2026-09-11-120000-custom-role.cjs.map +1 -0
- package/dist/production/src/migrations/2026-09-11-120000-custom-role.js +19 -0
- package/dist/production/src/migrations/2026-09-11-120000-custom-role.js.map +1 -0
- package/dist/production/src/migrations/runner.cjs +63 -5
- package/dist/production/src/migrations/runner.cjs.map +1 -1
- package/dist/production/src/migrations/runner.js +63 -5
- package/dist/production/src/migrations/runner.js.map +1 -1
- package/dist/production/src/migrations/snapshot.cjs +198 -10
- package/dist/production/src/migrations/snapshot.cjs.map +1 -1
- package/dist/production/src/migrations/snapshot.js +198 -10
- package/dist/production/src/migrations/snapshot.js.map +1 -1
- package/dist/production/src/migrations/tenantCredentials.cjs.map +1 -1
- package/dist/production/src/migrations/tenantCredentials.js.map +1 -1
- package/dist/production/src/model/authorization/AclSchemaAccessNodeFactory.cjs.map +1 -1
- package/dist/production/src/model/authorization/AclSchemaAccessNodeFactory.js.map +1 -1
- package/dist/production/src/model/authorization/CustomRoleAuthorizator.cjs +65 -0
- package/dist/production/src/model/authorization/CustomRoleAuthorizator.cjs.map +1 -0
- package/dist/production/src/model/authorization/CustomRoleAuthorizator.js +65 -0
- package/dist/production/src/model/authorization/CustomRoleAuthorizator.js.map +1 -0
- package/dist/production/src/model/authorization/CustomRolePermissions.cjs +404 -0
- package/dist/production/src/model/authorization/CustomRolePermissions.cjs.map +1 -0
- package/dist/production/src/model/authorization/CustomRolePermissions.js +387 -0
- package/dist/production/src/model/authorization/CustomRolePermissions.js.map +1 -0
- package/dist/production/src/model/authorization/Identity.cjs.map +1 -1
- package/dist/production/src/model/authorization/Identity.js.map +1 -1
- package/dist/production/src/model/authorization/IdentityFactory.cjs.map +1 -1
- package/dist/production/src/model/authorization/IdentityFactory.js.map +1 -1
- package/dist/production/src/model/authorization/IdentityScope.cjs.map +1 -1
- package/dist/production/src/model/authorization/IdentityScope.js.map +1 -1
- package/dist/production/src/model/authorization/PermissionActions.cjs +25 -12
- package/dist/production/src/model/authorization/PermissionActions.cjs.map +1 -1
- package/dist/production/src/model/authorization/PermissionActions.js +25 -12
- package/dist/production/src/model/authorization/PermissionActions.js.map +1 -1
- package/dist/production/src/model/authorization/PermissionContext.cjs.map +1 -1
- package/dist/production/src/model/authorization/PermissionContext.js.map +1 -1
- package/dist/production/src/model/authorization/PermissionContextFactory.cjs +20 -2
- package/dist/production/src/model/authorization/PermissionContextFactory.cjs.map +1 -1
- package/dist/production/src/model/authorization/PermissionContextFactory.js +20 -2
- package/dist/production/src/model/authorization/PermissionContextFactory.js.map +1 -1
- package/dist/production/src/model/authorization/PermissionsFactory.cjs +35 -20
- package/dist/production/src/model/authorization/PermissionsFactory.cjs.map +1 -1
- package/dist/production/src/model/authorization/PermissionsFactory.js +36 -21
- package/dist/production/src/model/authorization/PermissionsFactory.js.map +1 -1
- package/dist/production/src/model/authorization/ProjectScope.cjs.map +1 -1
- package/dist/production/src/model/authorization/ProjectScope.js.map +1 -1
- package/dist/production/src/model/authorization/ProjectScopeFactory.cjs.map +1 -1
- package/dist/production/src/model/authorization/ProjectScopeFactory.js.map +1 -1
- package/dist/production/src/model/authorization/Roles.cjs +8 -0
- package/dist/production/src/model/authorization/Roles.cjs.map +1 -1
- package/dist/production/src/model/authorization/Roles.js +8 -0
- package/dist/production/src/model/authorization/Roles.js.map +1 -1
- package/dist/production/src/model/authorization/TargetIdentityPermission.cjs +35 -0
- package/dist/production/src/model/authorization/TargetIdentityPermission.cjs.map +1 -0
- package/dist/production/src/model/authorization/TargetIdentityPermission.js +35 -0
- package/dist/production/src/model/authorization/TargetIdentityPermission.js.map +1 -0
- package/dist/production/src/model/commands/CommandBus.cjs.map +1 -1
- package/dist/production/src/model/commands/CommandBus.js.map +1 -1
- package/dist/production/src/model/commands/apiKey/ApiKeyHelper.cjs +19 -0
- package/dist/production/src/model/commands/apiKey/ApiKeyHelper.cjs.map +1 -1
- package/dist/production/src/model/commands/apiKey/ApiKeyHelper.js +19 -0
- package/dist/production/src/model/commands/apiKey/ApiKeyHelper.js.map +1 -1
- package/dist/production/src/model/commands/apiKey/CreateApiKeyCommand.cjs +17 -3
- package/dist/production/src/model/commands/apiKey/CreateApiKeyCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/apiKey/CreateApiKeyCommand.js +18 -4
- package/dist/production/src/model/commands/apiKey/CreateApiKeyCommand.js.map +1 -1
- package/dist/production/src/model/commands/apiKey/DisableApiKeyCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/apiKey/DisableApiKeyCommand.js.map +1 -1
- package/dist/production/src/model/commands/apiKey/DisableIdentityApiKeysCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/apiKey/DisableIdentityApiKeysCommand.js.map +1 -1
- package/dist/production/src/model/commands/apiKey/DisableOneOffApiKeyCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/apiKey/DisableOneOffApiKeyCommand.js.map +1 -1
- package/dist/production/src/model/commands/apiKey/ProlongApiKeyCommand.cjs +40 -9
- package/dist/production/src/model/commands/apiKey/ProlongApiKeyCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/apiKey/ProlongApiKeyCommand.js +41 -10
- package/dist/production/src/model/commands/apiKey/ProlongApiKeyCommand.js.map +1 -1
- package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs +5 -1
- package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.js +5 -1
- package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.js.map +1 -1
- package/dist/production/src/model/commands/authPolicy/CreateAuthPolicyCommand.cjs +28 -0
- package/dist/production/src/model/commands/authPolicy/CreateAuthPolicyCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/authPolicy/CreateAuthPolicyCommand.js +28 -0
- package/dist/production/src/model/commands/authPolicy/CreateAuthPolicyCommand.js.map +1 -0
- package/dist/production/src/model/commands/authPolicy/DeleteAuthPolicyCommand.cjs +14 -0
- package/dist/production/src/model/commands/authPolicy/DeleteAuthPolicyCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/authPolicy/DeleteAuthPolicyCommand.js +14 -0
- package/dist/production/src/model/commands/authPolicy/DeleteAuthPolicyCommand.js.map +1 -0
- package/dist/production/src/model/commands/authPolicy/UpdateAuthPolicyCommand.cjs +25 -0
- package/dist/production/src/model/commands/authPolicy/UpdateAuthPolicyCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/authPolicy/UpdateAuthPolicyCommand.js +25 -0
- package/dist/production/src/model/commands/authPolicy/UpdateAuthPolicyCommand.js.map +1 -0
- package/dist/production/src/model/commands/backupCode/ConsumeBackupCodeCommand.cjs +20 -0
- package/dist/production/src/model/commands/backupCode/ConsumeBackupCodeCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/backupCode/ConsumeBackupCodeCommand.js +20 -0
- package/dist/production/src/model/commands/backupCode/ConsumeBackupCodeCommand.js.map +1 -0
- package/dist/production/src/model/commands/backupCode/CreateBackupCodeCommand.cjs +19 -0
- package/dist/production/src/model/commands/backupCode/CreateBackupCodeCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/backupCode/CreateBackupCodeCommand.js +19 -0
- package/dist/production/src/model/commands/backupCode/CreateBackupCodeCommand.js.map +1 -0
- package/dist/production/src/model/commands/backupCode/DeleteBackupCodesCommand.cjs +13 -0
- package/dist/production/src/model/commands/backupCode/DeleteBackupCodesCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/backupCode/DeleteBackupCodesCommand.js +13 -0
- package/dist/production/src/model/commands/backupCode/DeleteBackupCodesCommand.js.map +1 -0
- package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.cjs +47 -2
- package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.js +47 -2
- package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.js.map +1 -1
- package/dist/production/src/model/commands/customRole/CreateCustomRoleCommand.cjs +23 -0
- package/dist/production/src/model/commands/customRole/CreateCustomRoleCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/customRole/CreateCustomRoleCommand.js +23 -0
- package/dist/production/src/model/commands/customRole/CreateCustomRoleCommand.js.map +1 -0
- package/dist/production/src/model/commands/customRole/DeleteCustomRoleCommand.cjs +14 -0
- package/dist/production/src/model/commands/customRole/DeleteCustomRoleCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/customRole/DeleteCustomRoleCommand.js +14 -0
- package/dist/production/src/model/commands/customRole/DeleteCustomRoleCommand.js.map +1 -0
- package/dist/production/src/model/commands/customRole/RemoveCustomRoleAssignmentsCommand.cjs +16 -0
- package/dist/production/src/model/commands/customRole/RemoveCustomRoleAssignmentsCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/customRole/RemoveCustomRoleAssignmentsCommand.js +16 -0
- package/dist/production/src/model/commands/customRole/RemoveCustomRoleAssignmentsCommand.js.map +1 -0
- package/dist/production/src/model/commands/customRole/UpdateCustomRoleCommand.cjs +19 -0
- package/dist/production/src/model/commands/customRole/UpdateCustomRoleCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/customRole/UpdateCustomRoleCommand.js +19 -0
- package/dist/production/src/model/commands/customRole/UpdateCustomRoleCommand.js.map +1 -0
- package/dist/production/src/model/commands/identity/CreateIdentityCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/identity/CreateIdentityCommand.js.map +1 -1
- package/dist/production/src/model/commands/identity/PatchIdentityGlobalRoles.cjs +1 -1
- package/dist/production/src/model/commands/identity/PatchIdentityGlobalRoles.cjs.map +1 -1
- package/dist/production/src/model/commands/identity/PatchIdentityGlobalRoles.js +1 -1
- package/dist/production/src/model/commands/identity/PatchIdentityGlobalRoles.js.map +1 -1
- package/dist/production/src/model/commands/idp/ClaimIdpRevalidationCommand.cjs +15 -0
- package/dist/production/src/model/commands/idp/ClaimIdpRevalidationCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/idp/ClaimIdpRevalidationCommand.js +15 -0
- package/dist/production/src/model/commands/idp/ClaimIdpRevalidationCommand.js.map +1 -0
- package/dist/production/src/model/commands/idp/CreateIdpCommand.cjs +10 -2
- package/dist/production/src/model/commands/idp/CreateIdpCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/idp/CreateIdpCommand.js +10 -2
- package/dist/production/src/model/commands/idp/CreateIdpCommand.js.map +1 -1
- package/dist/production/src/model/commands/idp/CreateIdpSessionCommand.cjs +30 -0
- package/dist/production/src/model/commands/idp/CreateIdpSessionCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/idp/CreateIdpSessionCommand.js +30 -0
- package/dist/production/src/model/commands/idp/CreateIdpSessionCommand.js.map +1 -0
- package/dist/production/src/model/commands/idp/DisableIdpCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/idp/DisableIdpCommand.js.map +1 -1
- package/dist/production/src/model/commands/idp/DisconnectPersonIdentityProviderCommand.cjs +17 -0
- package/dist/production/src/model/commands/idp/DisconnectPersonIdentityProviderCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/idp/DisconnectPersonIdentityProviderCommand.js +17 -0
- package/dist/production/src/model/commands/idp/DisconnectPersonIdentityProviderCommand.js.map +1 -0
- package/dist/production/src/model/commands/idp/EnableIdpCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/idp/EnableIdpCommand.js.map +1 -1
- package/dist/production/src/model/commands/idp/UpdateIdpCommand.cjs +8 -2
- package/dist/production/src/model/commands/idp/UpdateIdpCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/idp/UpdateIdpCommand.js +8 -2
- package/dist/production/src/model/commands/idp/UpdateIdpCommand.js.map +1 -1
- package/dist/production/src/model/commands/idp/UpdateIdpSessionCommand.cjs +32 -0
- package/dist/production/src/model/commands/idp/UpdateIdpSessionCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/idp/UpdateIdpSessionCommand.js +32 -0
- package/dist/production/src/model/commands/idp/UpdateIdpSessionCommand.js.map +1 -0
- package/dist/production/src/model/commands/mailTemplate/AddMailTemplateCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/mailTemplate/AddMailTemplateCommand.js.map +1 -1
- package/dist/production/src/model/commands/mailTemplate/RemoveMailTemplateCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/mailTemplate/RemoveMailTemplateCommand.js.map +1 -1
- package/dist/production/src/model/commands/membership/AddProjectMemberCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/membership/AddProjectMemberCommand.js.map +1 -1
- package/dist/production/src/model/commands/membership/CreateOrUpdateProjectMembershipCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/membership/CreateOrUpdateProjectMembershipCommand.js.map +1 -1
- package/dist/production/src/model/commands/membership/RemoveProjectMemberCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/membership/RemoveProjectMemberCommand.js.map +1 -1
- package/dist/production/src/model/commands/membership/{RemoveProjectMembershipsCommand.cjs → RemoveProjectMembershipCommand.cjs} +1 -1
- package/dist/production/src/model/commands/membership/RemoveProjectMembershipCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/membership/{RemoveProjectMembershipsCommand.js → RemoveProjectMembershipCommand.js} +1 -1
- package/dist/production/src/model/commands/membership/RemoveProjectMembershipCommand.js.map +1 -0
- package/dist/production/src/model/commands/membership/UpdateProjectMemberCommand.cjs +2 -2
- package/dist/production/src/model/commands/membership/UpdateProjectMemberCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/membership/UpdateProjectMemberCommand.js +1 -1
- package/dist/production/src/model/commands/membership/UpdateProjectMemberCommand.js.map +1 -1
- package/dist/production/src/model/commands/membership/variables/PatchProjectMembershipVariableValuesCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/membership/variables/PatchProjectMembershipVariableValuesCommand.js.map +1 -1
- package/dist/production/src/model/commands/membership/variables/PatchProjectMembershipVariablesCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/membership/variables/PatchProjectMembershipVariablesCommand.js.map +1 -1
- package/dist/production/src/model/commands/membership/variables/SetProjectMembershipVariableValuesCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/membership/variables/SetProjectMembershipVariableValuesCommand.js.map +1 -1
- package/dist/production/src/model/commands/otp/ConfirmOtpCommand.cjs +10 -4
- package/dist/production/src/model/commands/otp/ConfirmOtpCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/otp/ConfirmOtpCommand.js +11 -5
- package/dist/production/src/model/commands/otp/ConfirmOtpCommand.js.map +1 -1
- package/dist/production/src/model/commands/otp/DisableOtpCommand.cjs +9 -5
- package/dist/production/src/model/commands/otp/DisableOtpCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/otp/DisableOtpCommand.js +9 -5
- package/dist/production/src/model/commands/otp/DisableOtpCommand.js.map +1 -1
- package/dist/production/src/model/commands/otp/PrepareOtpCommand.cjs +14 -8
- package/dist/production/src/model/commands/otp/PrepareOtpCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/otp/PrepareOtpCommand.js +15 -9
- package/dist/production/src/model/commands/otp/PrepareOtpCommand.js.map +1 -1
- package/dist/production/src/model/commands/otp/ReEncryptOtpSecretCommand.cjs +22 -0
- package/dist/production/src/model/commands/otp/ReEncryptOtpSecretCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/otp/ReEncryptOtpSecretCommand.js +22 -0
- package/dist/production/src/model/commands/otp/ReEncryptOtpSecretCommand.js.map +1 -0
- package/dist/production/src/model/commands/otp/SetEmailOtpEnabledCommand.cjs +19 -0
- package/dist/production/src/model/commands/otp/SetEmailOtpEnabledCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/otp/SetEmailOtpEnabledCommand.js +19 -0
- package/dist/production/src/model/commands/otp/SetEmailOtpEnabledCommand.js.map +1 -0
- package/dist/production/src/model/commands/person/ChangePasswordCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/person/ChangePasswordCommand.js.map +1 -1
- package/dist/production/src/model/commands/person/ChangeProfileCommand.cjs +8 -2
- package/dist/production/src/model/commands/person/ChangeProfileCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/person/ChangeProfileCommand.js +8 -2
- package/dist/production/src/model/commands/person/ChangeProfileCommand.js.map +1 -1
- package/dist/production/src/model/commands/person/CreatePersonCommand.cjs +14 -3
- package/dist/production/src/model/commands/person/CreatePersonCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/person/CreatePersonCommand.js +14 -3
- package/dist/production/src/model/commands/person/CreatePersonCommand.js.map +1 -1
- package/dist/production/src/model/commands/person/CreatePersonIdentityProviderIdentifierCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/person/CreatePersonIdentityProviderIdentifierCommand.js.map +1 -1
- package/dist/production/src/model/commands/person/DisablePersonCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/person/DisablePersonCommand.js.map +1 -1
- package/dist/production/src/model/commands/person/EnablePersonCommand.cjs +17 -0
- package/dist/production/src/model/commands/person/EnablePersonCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/person/EnablePersonCommand.js +17 -0
- package/dist/production/src/model/commands/person/EnablePersonCommand.js.map +1 -0
- package/dist/production/src/model/commands/person/MarkEmailVerifiedCommand.cjs +21 -0
- package/dist/production/src/model/commands/person/MarkEmailVerifiedCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/person/MarkEmailVerifiedCommand.js +21 -0
- package/dist/production/src/model/commands/person/MarkEmailVerifiedCommand.js.map +1 -0
- package/dist/production/src/model/commands/person/ResetPersonMfaCommand.cjs +24 -0
- package/dist/production/src/model/commands/person/ResetPersonMfaCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/person/ResetPersonMfaCommand.js +24 -0
- package/dist/production/src/model/commands/person/ResetPersonMfaCommand.js.map +1 -0
- package/dist/production/src/model/commands/person/SetMfaGraceUntilCommand.cjs +16 -0
- package/dist/production/src/model/commands/person/SetMfaGraceUntilCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/person/SetMfaGraceUntilCommand.js +16 -0
- package/dist/production/src/model/commands/person/SetMfaGraceUntilCommand.js.map +1 -0
- package/dist/production/src/model/commands/person/TogglePersonPasswordlessCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/person/TogglePersonPasswordlessCommand.js.map +1 -1
- package/dist/production/src/model/commands/personToken/ActivateOtpCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/personToken/ActivateOtpCommand.js.map +1 -1
- package/dist/production/src/model/commands/personToken/ClaimOtpAttemptCommand.cjs +17 -0
- package/dist/production/src/model/commands/personToken/ClaimOtpAttemptCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/personToken/ClaimOtpAttemptCommand.js +17 -0
- package/dist/production/src/model/commands/personToken/ClaimOtpAttemptCommand.js.map +1 -0
- package/dist/production/src/model/commands/personToken/CreatePersonTokenCommand.cjs +10 -2
- package/dist/production/src/model/commands/personToken/CreatePersonTokenCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/personToken/CreatePersonTokenCommand.js +11 -3
- package/dist/production/src/model/commands/personToken/CreatePersonTokenCommand.js.map +1 -1
- package/dist/production/src/model/commands/personToken/IncreaseOtpAttemptCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/personToken/IncreaseOtpAttemptCommand.js.map +1 -1
- package/dist/production/src/model/commands/personToken/InvalidateEmailOtpTokensCommand.cjs +15 -0
- package/dist/production/src/model/commands/personToken/InvalidateEmailOtpTokensCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/personToken/InvalidateEmailOtpTokensCommand.js +15 -0
- package/dist/production/src/model/commands/personToken/InvalidateEmailOtpTokensCommand.js.map +1 -0
- package/dist/production/src/model/commands/personToken/InvalidateTokenCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/personToken/InvalidateTokenCommand.js.map +1 -1
- package/dist/production/src/model/commands/personToken/ResetPasswordCommand.cjs +2 -3
- package/dist/production/src/model/commands/personToken/ResetPasswordCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/personToken/ResetPasswordCommand.js +2 -3
- package/dist/production/src/model/commands/personToken/ResetPasswordCommand.js.map +1 -1
- package/dist/production/src/model/commands/personToken/SaveEmailOtpTokenCommand.cjs +32 -0
- package/dist/production/src/model/commands/personToken/SaveEmailOtpTokenCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/personToken/SaveEmailOtpTokenCommand.js +32 -0
- package/dist/production/src/model/commands/personToken/SaveEmailOtpTokenCommand.js.map +1 -0
- package/dist/production/src/model/commands/personToken/SavePersonTokenCommand.cjs +16 -8
- package/dist/production/src/model/commands/personToken/SavePersonTokenCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/personToken/SavePersonTokenCommand.js +17 -9
- package/dist/production/src/model/commands/personToken/SavePersonTokenCommand.js.map +1 -1
- package/dist/production/src/model/commands/project/CreateProjectCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/project/CreateProjectCommand.js.map +1 -1
- package/dist/production/src/model/commands/project/SetProjectSecretCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/project/SetProjectSecretCommand.js.map +1 -1
- package/dist/production/src/model/commands/project/UpdateProjectCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/project/UpdateProjectCommand.js.map +1 -1
- package/dist/production/src/model/commands/rateLimit/RecordRateLimitEventCommand.cjs +18 -0
- package/dist/production/src/model/commands/rateLimit/RecordRateLimitEventCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/rateLimit/RecordRateLimitEventCommand.js +18 -0
- package/dist/production/src/model/commands/rateLimit/RecordRateLimitEventCommand.js.map +1 -0
- package/dist/production/src/model/consts/expirations.cjs +4 -0
- package/dist/production/src/model/consts/expirations.cjs.map +1 -1
- package/dist/production/src/model/consts/expirations.js +4 -0
- package/dist/production/src/model/consts/expirations.js.map +1 -1
- package/dist/production/src/model/dtos/Password.cjs.map +1 -1
- package/dist/production/src/model/dtos/Password.js.map +1 -1
- package/dist/production/src/model/mailing/UserMailer.cjs +73 -1
- package/dist/production/src/model/mailing/UserMailer.cjs.map +1 -1
- package/dist/production/src/model/mailing/UserMailer.js +73 -1
- package/dist/production/src/model/mailing/UserMailer.js.map +1 -1
- package/dist/production/src/model/mailing/templates/BackupCodesExhausted.mustache.cjs +15 -0
- package/dist/production/src/model/mailing/templates/BackupCodesExhausted.mustache.cjs.map +1 -0
- package/dist/production/src/model/mailing/templates/BackupCodesExhausted.mustache.js +16 -0
- package/dist/production/src/model/mailing/templates/BackupCodesExhausted.mustache.js.map +1 -0
- package/dist/production/src/model/mailing/templates/EmailChangeNotify.mustache.cjs +12 -0
- package/dist/production/src/model/mailing/templates/EmailChangeNotify.mustache.cjs.map +1 -0
- package/dist/production/src/model/mailing/templates/EmailChangeNotify.mustache.js +13 -0
- package/dist/production/src/model/mailing/templates/EmailChangeNotify.mustache.js.map +1 -0
- package/dist/production/src/model/mailing/templates/EmailChangeVerify.mustache.cjs +14 -0
- package/dist/production/src/model/mailing/templates/EmailChangeVerify.mustache.cjs.map +1 -0
- package/dist/production/src/model/mailing/templates/EmailChangeVerify.mustache.js +15 -0
- package/dist/production/src/model/mailing/templates/EmailChangeVerify.mustache.js.map +1 -0
- package/dist/production/src/model/mailing/templates/EmailOtp.mustache.cjs +15 -0
- package/dist/production/src/model/mailing/templates/EmailOtp.mustache.cjs.map +1 -0
- package/dist/production/src/model/mailing/templates/EmailOtp.mustache.js +16 -0
- package/dist/production/src/model/mailing/templates/EmailOtp.mustache.js.map +1 -0
- package/dist/production/src/model/mailing/templates/EmailVerification.mustache.cjs +12 -0
- package/dist/production/src/model/mailing/templates/EmailVerification.mustache.cjs.map +1 -0
- package/dist/production/src/model/mailing/templates/EmailVerification.mustache.js +13 -0
- package/dist/production/src/model/mailing/templates/EmailVerification.mustache.js.map +1 -0
- package/dist/production/src/model/mailing/templates/ExistingUserInvited.mustache.cjs.map +1 -1
- package/dist/production/src/model/mailing/templates/ExistingUserInvited.mustache.js.map +1 -1
- package/dist/production/src/model/mailing/templates/ForcedSignOut.mustache.cjs +12 -0
- package/dist/production/src/model/mailing/templates/ForcedSignOut.mustache.cjs.map +1 -0
- package/dist/production/src/model/mailing/templates/ForcedSignOut.mustache.js +13 -0
- package/dist/production/src/model/mailing/templates/ForcedSignOut.mustache.js.map +1 -0
- package/dist/production/src/model/mailing/templates/NewUserInvited.mustache.cjs.map +1 -1
- package/dist/production/src/model/mailing/templates/NewUserInvited.mustache.js.map +1 -1
- package/dist/production/src/model/mailing/templates/PasswordReset.mustache.cjs.map +1 -1
- package/dist/production/src/model/mailing/templates/PasswordReset.mustache.js.map +1 -1
- package/dist/production/src/model/mailing/templates/PasswordlessSignIn.mustache.cjs.map +1 -1
- package/dist/production/src/model/mailing/templates/PasswordlessSignIn.mustache.js.map +1 -1
- package/dist/production/src/model/mailing/templates/UnusualLogin.mustache.cjs +19 -0
- package/dist/production/src/model/mailing/templates/UnusualLogin.mustache.cjs.map +1 -0
- package/dist/production/src/model/mailing/templates/UnusualLogin.mustache.js +20 -0
- package/dist/production/src/model/mailing/templates/UnusualLogin.mustache.js.map +1 -0
- package/dist/production/src/model/mailing/type.cjs +45 -3
- package/dist/production/src/model/mailing/type.cjs.map +1 -1
- package/dist/production/src/model/mailing/type.js +45 -3
- package/dist/production/src/model/mailing/type.js.map +1 -1
- package/dist/production/src/model/queries/apiKey/ApiKeyListQuery.cjs +32 -0
- package/dist/production/src/model/queries/apiKey/ApiKeyListQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/apiKey/ApiKeyListQuery.js +32 -0
- package/dist/production/src/model/queries/apiKey/ApiKeyListQuery.js.map +1 -0
- package/dist/production/src/model/queries/apiKey/ApiKeyQuery.cjs +8 -1
- package/dist/production/src/model/queries/apiKey/ApiKeyQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/apiKey/ApiKeyQuery.js +9 -2
- package/dist/production/src/model/queries/apiKey/ApiKeyQuery.js.map +1 -1
- package/dist/production/src/model/queries/apiKey/ApiKeySessionsQuery.cjs +20 -0
- package/dist/production/src/model/queries/apiKey/ApiKeySessionsQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/apiKey/ApiKeySessionsQuery.js +20 -0
- package/dist/production/src/model/queries/apiKey/ApiKeySessionsQuery.js.map +1 -0
- package/dist/production/src/model/queries/authLog/AuthLogQuery.cjs +51 -0
- package/dist/production/src/model/queries/authLog/AuthLogQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/authLog/AuthLogQuery.js +51 -0
- package/dist/production/src/model/queries/authLog/AuthLogQuery.js.map +1 -0
- package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.cjs +12 -10
- package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.js +12 -10
- package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.js.map +1 -1
- package/dist/production/src/model/queries/authLog/NextMailAttemptQuery.cjs +47 -0
- package/dist/production/src/model/queries/authLog/NextMailAttemptQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/authLog/NextMailAttemptQuery.js +47 -0
- package/dist/production/src/model/queries/authLog/NextMailAttemptQuery.js.map +1 -0
- package/dist/production/src/model/queries/authPolicy/AuthPoliciesQuery.cjs +19 -0
- package/dist/production/src/model/queries/authPolicy/AuthPoliciesQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/authPolicy/AuthPoliciesQuery.js +19 -0
- package/dist/production/src/model/queries/authPolicy/AuthPoliciesQuery.js.map +1 -0
- package/dist/production/src/model/queries/configuration/ConfigurationQuery.cjs +63 -2
- package/dist/production/src/model/queries/configuration/ConfigurationQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/configuration/ConfigurationQuery.js +63 -2
- package/dist/production/src/model/queries/configuration/ConfigurationQuery.js.map +1 -1
- package/dist/production/src/model/queries/customRole/CustomRolesQuery.cjs +23 -0
- package/dist/production/src/model/queries/customRole/CustomRolesQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/customRole/CustomRolesQuery.js +23 -0
- package/dist/production/src/model/queries/customRole/CustomRolesQuery.js.map +1 -0
- package/dist/production/src/model/queries/identity/IdentitiesHoldingRoleCountQuery.cjs +15 -0
- package/dist/production/src/model/queries/identity/IdentitiesHoldingRoleCountQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/identity/IdentitiesHoldingRoleCountQuery.js +15 -0
- package/dist/production/src/model/queries/identity/IdentitiesHoldingRoleCountQuery.js.map +1 -0
- package/dist/production/src/model/queries/identity/IdentityQuery.cjs +7 -2
- package/dist/production/src/model/queries/identity/IdentityQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/identity/IdentityQuery.js +7 -2
- package/dist/production/src/model/queries/identity/IdentityQuery.js.map +1 -1
- package/dist/production/src/model/queries/idp/IdentityProviderBySlugQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/idp/IdentityProviderBySlugQuery.js.map +1 -1
- package/dist/production/src/model/queries/idp/IdentityProvidersQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/idp/IdentityProvidersQuery.js.map +1 -1
- package/dist/production/src/model/queries/idp/IdpSessionByApiKeyQuery.cjs +38 -0
- package/dist/production/src/model/queries/idp/IdpSessionByApiKeyQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/idp/IdpSessionByApiKeyQuery.js +38 -0
- package/dist/production/src/model/queries/idp/IdpSessionByApiKeyQuery.js.map +1 -0
- package/dist/production/src/model/queries/idp/IdpSessionsBySidQuery.cjs +19 -0
- package/dist/production/src/model/queries/idp/IdpSessionsBySidQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/idp/IdpSessionsBySidQuery.js +19 -0
- package/dist/production/src/model/queries/idp/IdpSessionsBySidQuery.js.map +1 -0
- package/dist/production/src/model/queries/idp/IdpSessionsBySubQuery.cjs +18 -0
- package/dist/production/src/model/queries/idp/IdpSessionsBySubQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/idp/IdpSessionsBySubQuery.js +18 -0
- package/dist/production/src/model/queries/idp/IdpSessionsBySubQuery.js.map +1 -0
- package/dist/production/src/model/queries/idp/LocalAuthDisablingIdpsQuery.cjs +21 -0
- package/dist/production/src/model/queries/idp/LocalAuthDisablingIdpsQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/idp/LocalAuthDisablingIdpsQuery.js +21 -0
- package/dist/production/src/model/queries/idp/LocalAuthDisablingIdpsQuery.js.map +1 -0
- package/dist/production/src/model/queries/idp/PersonIdentityProvidersQuery.cjs +18 -0
- package/dist/production/src/model/queries/idp/PersonIdentityProvidersQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/idp/PersonIdentityProvidersQuery.js +18 -0
- package/dist/production/src/model/queries/idp/PersonIdentityProvidersQuery.js.map +1 -0
- package/dist/production/src/model/queries/idp/helpers.cjs +3 -3
- package/dist/production/src/model/queries/idp/helpers.cjs.map +1 -1
- package/dist/production/src/model/queries/idp/helpers.js +3 -3
- package/dist/production/src/model/queries/idp/helpers.js.map +1 -1
- package/dist/production/src/model/queries/mailTemplate/MailTemplateListQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/mailTemplate/MailTemplateListQuery.js.map +1 -1
- package/dist/production/src/model/queries/mailTemplate/MailTemplateQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/mailTemplate/MailTemplateQuery.js.map +1 -1
- package/dist/production/src/model/queries/mailTemplate/helpers.cjs.map +1 -1
- package/dist/production/src/model/queries/mailTemplate/helpers.js.map +1 -1
- package/dist/production/src/model/queries/membership/AllProjectRolesByIdentityQuery.cjs +17 -0
- package/dist/production/src/model/queries/membership/AllProjectRolesByIdentityQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/membership/AllProjectRolesByIdentityQuery.js +17 -0
- package/dist/production/src/model/queries/membership/AllProjectRolesByIdentityQuery.js.map +1 -0
- package/dist/production/src/model/queries/membership/IdentityHasProjectMembershipsQuery.cjs +15 -0
- package/dist/production/src/model/queries/membership/IdentityHasProjectMembershipsQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/membership/IdentityHasProjectMembershipsQuery.js +15 -0
- package/dist/production/src/model/queries/membership/IdentityHasProjectMembershipsQuery.js.map +1 -0
- package/dist/production/src/model/queries/membership/ProjectMembersQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/membership/ProjectMembersQuery.js.map +1 -1
- package/dist/production/src/model/queries/membership/ProjectMembershipByIdentityQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/membership/ProjectMembershipByIdentityQuery.js.map +1 -1
- package/dist/production/src/model/queries/membership/ProjectRolesByIdentityQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/membership/ProjectRolesByIdentityQuery.js.map +1 -1
- package/dist/production/src/model/queries/person/PersonByIdPQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/person/PersonByIdPQuery.js.map +1 -1
- package/dist/production/src/model/queries/person/PersonByIdentityBatchQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/person/PersonByIdentityBatchQuery.js.map +1 -1
- package/dist/production/src/model/queries/person/PersonQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/person/PersonQuery.js.map +1 -1
- package/dist/production/src/model/queries/person/PersonQueryBuilderFactory.cjs +9 -1
- package/dist/production/src/model/queries/person/PersonQueryBuilderFactory.cjs.map +1 -1
- package/dist/production/src/model/queries/person/PersonQueryBuilderFactory.js +9 -1
- package/dist/production/src/model/queries/person/PersonQueryBuilderFactory.js.map +1 -1
- package/dist/production/src/model/queries/person/PersonsQuery.cjs +28 -0
- package/dist/production/src/model/queries/person/PersonsQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/person/PersonsQuery.js +28 -0
- package/dist/production/src/model/queries/person/PersonsQuery.js.map +1 -0
- package/dist/production/src/model/queries/personToken/PersonTokenQuery.cjs +12 -3
- package/dist/production/src/model/queries/personToken/PersonTokenQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/personToken/PersonTokenQuery.js +12 -3
- package/dist/production/src/model/queries/personToken/PersonTokenQuery.js.map +1 -1
- package/dist/production/src/model/queries/project/ProjectBySlugQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/project/ProjectBySlugQuery.js.map +1 -1
- package/dist/production/src/model/queries/project/ProjectSecretKeysQuery.cjs +14 -0
- package/dist/production/src/model/queries/project/ProjectSecretKeysQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/project/ProjectSecretKeysQuery.js +14 -0
- package/dist/production/src/model/queries/project/ProjectSecretKeysQuery.js.map +1 -0
- package/dist/production/src/model/queries/project/ProjectSecretsQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/project/ProjectSecretsQuery.js.map +1 -1
- package/dist/production/src/model/queries/project/ProjectsByIdentityQuery.cjs +4 -1
- package/dist/production/src/model/queries/project/ProjectsByIdentityQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/project/ProjectsByIdentityQuery.js +4 -1
- package/dist/production/src/model/queries/project/ProjectsByIdentityQuery.js.map +1 -1
- package/dist/production/src/model/queries/project/ProjectsQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/project/ProjectsQuery.js.map +1 -1
- package/dist/production/src/model/queries/rateLimit/RateLimitCountQuery.cjs +17 -0
- package/dist/production/src/model/queries/rateLimit/RateLimitCountQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/rateLimit/RateLimitCountQuery.js +17 -0
- package/dist/production/src/model/queries/rateLimit/RateLimitCountQuery.js.map +1 -0
- package/dist/production/src/model/service/AuthLogService.cjs +38 -2
- package/dist/production/src/model/service/AuthLogService.cjs.map +1 -1
- package/dist/production/src/model/service/AuthLogService.js +38 -2
- package/dist/production/src/model/service/AuthLogService.js.map +1 -1
- package/dist/production/src/model/service/AuthPolicyManager.cjs +96 -0
- package/dist/production/src/model/service/AuthPolicyManager.cjs.map +1 -0
- package/dist/production/src/model/service/AuthPolicyManager.js +96 -0
- package/dist/production/src/model/service/AuthPolicyManager.js.map +1 -0
- package/dist/production/src/model/service/AuthPolicyResolver.cjs +84 -0
- package/dist/production/src/model/service/AuthPolicyResolver.cjs.map +1 -0
- package/dist/production/src/model/service/AuthPolicyResolver.js +84 -0
- package/dist/production/src/model/service/AuthPolicyResolver.js.map +1 -0
- package/dist/production/src/model/service/BackupCodeManager.cjs +80 -0
- package/dist/production/src/model/service/BackupCodeManager.cjs.map +1 -0
- package/dist/production/src/model/service/BackupCodeManager.js +80 -0
- package/dist/production/src/model/service/BackupCodeManager.js.map +1 -0
- package/dist/production/src/model/service/ConfigurationManager.cjs.map +1 -1
- package/dist/production/src/model/service/ConfigurationManager.js.map +1 -1
- package/dist/production/src/model/service/CustomRoleManager.cjs +170 -0
- package/dist/production/src/model/service/CustomRoleManager.cjs.map +1 -0
- package/dist/production/src/model/service/CustomRoleManager.js +170 -0
- package/dist/production/src/model/service/CustomRoleManager.js.map +1 -0
- package/dist/production/src/model/service/EmailChangeManager.cjs +136 -0
- package/dist/production/src/model/service/EmailChangeManager.cjs.map +1 -0
- package/dist/production/src/model/service/EmailChangeManager.js +136 -0
- package/dist/production/src/model/service/EmailChangeManager.js.map +1 -0
- package/dist/production/src/model/service/EmailOtpManager.cjs +89 -0
- package/dist/production/src/model/service/EmailOtpManager.cjs.map +1 -0
- package/dist/production/src/model/service/EmailOtpManager.js +89 -0
- package/dist/production/src/model/service/EmailOtpManager.js.map +1 -0
- package/dist/production/src/model/service/EmailValidator.cjs +6 -5
- package/dist/production/src/model/service/EmailValidator.cjs.map +1 -1
- package/dist/production/src/model/service/EmailValidator.js +6 -5
- package/dist/production/src/model/service/EmailValidator.js.map +1 -1
- package/dist/production/src/model/service/EmailVerificationManager.cjs +95 -0
- package/dist/production/src/model/service/EmailVerificationManager.cjs.map +1 -0
- package/dist/production/src/model/service/EmailVerificationManager.js +95 -0
- package/dist/production/src/model/service/EmailVerificationManager.js.map +1 -0
- package/dist/production/src/model/service/GlobalRoleValidator.cjs +35 -0
- package/dist/production/src/model/service/GlobalRoleValidator.cjs.map +1 -0
- package/dist/production/src/model/service/GlobalRoleValidator.js +35 -0
- package/dist/production/src/model/service/GlobalRoleValidator.js.map +1 -0
- package/dist/production/src/model/service/HibpChecker.cjs +46 -0
- package/dist/production/src/model/service/HibpChecker.cjs.map +1 -0
- package/dist/production/src/model/service/HibpChecker.js +46 -0
- package/dist/production/src/model/service/HibpChecker.js.map +1 -0
- package/dist/production/src/model/service/IDPSignInManager.cjs +89 -17
- package/dist/production/src/model/service/IDPSignInManager.cjs.map +1 -1
- package/dist/production/src/model/service/IDPSignInManager.js +89 -17
- package/dist/production/src/model/service/IDPSignInManager.js.map +1 -1
- package/dist/production/src/model/service/InviteManager.cjs +2 -1
- package/dist/production/src/model/service/InviteManager.cjs.map +1 -1
- package/dist/production/src/model/service/InviteManager.js +2 -1
- package/dist/production/src/model/service/InviteManager.js.map +1 -1
- package/dist/production/src/model/service/LoginRiskAnalyzer.cjs +160 -0
- package/dist/production/src/model/service/LoginRiskAnalyzer.cjs.map +1 -0
- package/dist/production/src/model/service/LoginRiskAnalyzer.js +160 -0
- package/dist/production/src/model/service/LoginRiskAnalyzer.js.map +1 -0
- package/dist/production/src/model/service/MailTemplateManager.cjs.map +1 -1
- package/dist/production/src/model/service/MailTemplateManager.js.map +1 -1
- package/dist/production/src/model/service/MembershipValidator.cjs.map +1 -1
- package/dist/production/src/model/service/MembershipValidator.js.map +1 -1
- package/dist/production/src/model/service/OtpAuthenticator.cjs.map +1 -1
- package/dist/production/src/model/service/OtpAuthenticator.js.map +1 -1
- package/dist/production/src/model/service/OtpManager.cjs +56 -6
- package/dist/production/src/model/service/OtpManager.cjs.map +1 -1
- package/dist/production/src/model/service/OtpManager.js +56 -6
- package/dist/production/src/model/service/OtpManager.js.map +1 -1
- package/dist/production/src/model/service/PanelAccessResolver.cjs +32 -0
- package/dist/production/src/model/service/PanelAccessResolver.cjs.map +1 -0
- package/dist/production/src/model/service/PanelAccessResolver.js +32 -0
- package/dist/production/src/model/service/PanelAccessResolver.js.map +1 -0
- package/dist/production/src/model/service/PasswordChangeManager.cjs +4 -3
- package/dist/production/src/model/service/PasswordChangeManager.cjs.map +1 -1
- package/dist/production/src/model/service/PasswordChangeManager.js +4 -3
- package/dist/production/src/model/service/PasswordChangeManager.js.map +1 -1
- package/dist/production/src/model/service/PasswordResetManager.cjs +21 -6
- package/dist/production/src/model/service/PasswordResetManager.cjs.map +1 -1
- package/dist/production/src/model/service/PasswordResetManager.js +21 -6
- package/dist/production/src/model/service/PasswordResetManager.js.map +1 -1
- package/dist/production/src/model/service/PasswordStrengthValidator.cjs +8 -0
- package/dist/production/src/model/service/PasswordStrengthValidator.cjs.map +1 -1
- package/dist/production/src/model/service/PasswordStrengthValidator.js +8 -0
- package/dist/production/src/model/service/PasswordStrengthValidator.js.map +1 -1
- package/dist/production/src/model/service/PasswordlessSignInManager.cjs +80 -34
- package/dist/production/src/model/service/PasswordlessSignInManager.cjs.map +1 -1
- package/dist/production/src/model/service/PasswordlessSignInManager.js +80 -34
- package/dist/production/src/model/service/PasswordlessSignInManager.js.map +1 -1
- package/dist/production/src/model/service/PersonAccessManager.cjs +8 -0
- package/dist/production/src/model/service/PersonAccessManager.cjs.map +1 -1
- package/dist/production/src/model/service/PersonAccessManager.js +8 -0
- package/dist/production/src/model/service/PersonAccessManager.js.map +1 -1
- package/dist/production/src/model/service/PersonManager.cjs +11 -4
- package/dist/production/src/model/service/PersonManager.cjs.map +1 -1
- package/dist/production/src/model/service/PersonManager.js +11 -4
- package/dist/production/src/model/service/PersonManager.js.map +1 -1
- package/dist/production/src/model/service/ProjectManager.cjs.map +1 -1
- package/dist/production/src/model/service/ProjectManager.js.map +1 -1
- package/dist/production/src/model/service/ProjectMemberManager.cjs +2 -1
- package/dist/production/src/model/service/ProjectMemberManager.cjs.map +1 -1
- package/dist/production/src/model/service/ProjectMemberManager.js +2 -1
- package/dist/production/src/model/service/ProjectMemberManager.js.map +1 -1
- package/dist/production/src/model/service/RateLimiter.cjs +68 -0
- package/dist/production/src/model/service/RateLimiter.cjs.map +1 -0
- package/dist/production/src/model/service/RateLimiter.js +68 -0
- package/dist/production/src/model/service/RateLimiter.js.map +1 -0
- package/dist/production/src/model/service/RolesManager.cjs +17 -18
- package/dist/production/src/model/service/RolesManager.cjs.map +1 -1
- package/dist/production/src/model/service/RolesManager.js +18 -19
- package/dist/production/src/model/service/RolesManager.js.map +1 -1
- package/dist/production/src/model/service/SecretsManager.cjs +7 -1
- package/dist/production/src/model/service/SecretsManager.cjs.map +1 -1
- package/dist/production/src/model/service/SecretsManager.js +7 -1
- package/dist/production/src/model/service/SecretsManager.js.map +1 -1
- package/dist/production/src/model/service/SignInManager.cjs +228 -11
- package/dist/production/src/model/service/SignInManager.cjs.map +1 -1
- package/dist/production/src/model/service/SignInManager.js +228 -11
- package/dist/production/src/model/service/SignInManager.js.map +1 -1
- package/dist/production/src/model/service/SignOutManager.cjs +71 -0
- package/dist/production/src/model/service/SignOutManager.cjs.map +1 -0
- package/dist/production/src/model/service/SignOutManager.js +71 -0
- package/dist/production/src/model/service/SignOutManager.js.map +1 -0
- package/dist/production/src/model/service/SignUpManager.cjs +32 -14
- package/dist/production/src/model/service/SignUpManager.cjs.map +1 -1
- package/dist/production/src/model/service/SignUpManager.js +33 -15
- package/dist/production/src/model/service/SignUpManager.js.map +1 -1
- package/dist/production/src/model/service/apiKey/ApiKeyManager.cjs +151 -23
- package/dist/production/src/model/service/apiKey/ApiKeyManager.cjs.map +1 -1
- package/dist/production/src/model/service/apiKey/ApiKeyManager.js +153 -25
- package/dist/production/src/model/service/apiKey/ApiKeyManager.js.map +1 -1
- package/dist/production/src/model/service/apiKey/ApiKeyService.cjs +14 -6
- package/dist/production/src/model/service/apiKey/ApiKeyService.cjs.map +1 -1
- package/dist/production/src/model/service/apiKey/ApiKeyService.js +14 -6
- package/dist/production/src/model/service/apiKey/ApiKeyService.js.map +1 -1
- package/dist/production/src/model/service/apiKey/UnpersistedApiKeyManager.cjs +91 -0
- package/dist/production/src/model/service/apiKey/UnpersistedApiKeyManager.cjs.map +1 -0
- package/dist/production/src/model/service/apiKey/UnpersistedApiKeyManager.js +91 -0
- package/dist/production/src/model/service/apiKey/UnpersistedApiKeyManager.js.map +1 -0
- package/dist/production/src/model/service/captcha/CaptchaValidator.cjs +56 -0
- package/dist/production/src/model/service/captcha/CaptchaValidator.cjs.map +1 -0
- package/dist/production/src/model/service/captcha/CaptchaValidator.js +56 -0
- package/dist/production/src/model/service/captcha/CaptchaValidator.js.map +1 -0
- package/dist/production/src/model/service/captcha/HCaptchaProvider.cjs +31 -0
- package/dist/production/src/model/service/captcha/HCaptchaProvider.cjs.map +1 -0
- package/dist/production/src/model/service/captcha/HCaptchaProvider.js +31 -0
- package/dist/production/src/model/service/captcha/HCaptchaProvider.js.map +1 -0
- package/dist/production/src/model/service/captcha/RecaptchaV3Provider.cjs +37 -0
- package/dist/production/src/model/service/captcha/RecaptchaV3Provider.cjs.map +1 -0
- package/dist/production/src/model/service/captcha/RecaptchaV3Provider.js +37 -0
- package/dist/production/src/model/service/captcha/RecaptchaV3Provider.js.map +1 -0
- package/dist/production/src/model/service/captcha/TurnstileProvider.cjs +35 -0
- package/dist/production/src/model/service/captcha/TurnstileProvider.cjs.map +1 -0
- package/dist/production/src/model/service/captcha/TurnstileProvider.js +35 -0
- package/dist/production/src/model/service/captcha/TurnstileProvider.js.map +1 -0
- package/dist/production/src/model/service/helpers/getPreferredProject.cjs.map +1 -1
- package/dist/production/src/model/service/helpers/getPreferredProject.js.map +1 -1
- package/dist/production/src/model/service/helpers/isPasswordlessEnabled.cjs +16 -0
- package/dist/production/src/model/service/helpers/isPasswordlessEnabled.cjs.map +1 -0
- package/dist/production/src/model/service/helpers/isPasswordlessEnabled.js +16 -0
- package/dist/production/src/model/service/helpers/isPasswordlessEnabled.js.map +1 -0
- package/dist/production/src/model/service/idp/BackchannelLogoutManager.cjs +84 -0
- package/dist/production/src/model/service/idp/BackchannelLogoutManager.cjs.map +1 -0
- package/dist/production/src/model/service/idp/BackchannelLogoutManager.js +84 -0
- package/dist/production/src/model/service/idp/BackchannelLogoutManager.js.map +1 -0
- package/dist/production/src/model/service/idp/ClaimMapping.cjs +187 -0
- package/dist/production/src/model/service/idp/ClaimMapping.cjs.map +1 -0
- package/dist/production/src/model/service/idp/ClaimMapping.js +170 -0
- package/dist/production/src/model/service/idp/ClaimMapping.js.map +1 -0
- package/dist/production/src/model/service/idp/ClaimMappingEvaluator.cjs +155 -0
- package/dist/production/src/model/service/idp/ClaimMappingEvaluator.cjs.map +1 -0
- package/dist/production/src/model/service/idp/ClaimMappingEvaluator.js +155 -0
- package/dist/production/src/model/service/idp/ClaimMappingEvaluator.js.map +1 -0
- package/dist/production/src/model/service/idp/ClaimMappingValidation.cjs +83 -0
- package/dist/production/src/model/service/idp/ClaimMappingValidation.cjs.map +1 -0
- package/dist/production/src/model/service/idp/ClaimMappingValidation.js +83 -0
- package/dist/production/src/model/service/idp/ClaimMappingValidation.js.map +1 -0
- package/dist/production/src/model/service/idp/IDPClaimSyncService.cjs +261 -0
- package/dist/production/src/model/service/idp/IDPClaimSyncService.cjs.map +1 -0
- package/dist/production/src/model/service/idp/IDPClaimSyncService.js +261 -0
- package/dist/production/src/model/service/idp/IDPClaimSyncService.js.map +1 -0
- package/dist/production/src/model/service/idp/IDPHandlerRegistry.cjs.map +1 -1
- package/dist/production/src/model/service/idp/IDPHandlerRegistry.js.map +1 -1
- package/dist/production/src/model/service/idp/IDPManager.cjs +74 -22
- package/dist/production/src/model/service/idp/IDPManager.cjs.map +1 -1
- package/dist/production/src/model/service/idp/IDPManager.js +74 -22
- package/dist/production/src/model/service/idp/IDPManager.js.map +1 -1
- package/dist/production/src/model/service/idp/IDPRevalidation.cjs +54 -0
- package/dist/production/src/model/service/idp/IDPRevalidation.cjs.map +1 -0
- package/dist/production/src/model/service/idp/IDPRevalidation.js +37 -0
- package/dist/production/src/model/service/idp/IDPRevalidation.js.map +1 -0
- package/dist/production/src/model/service/idp/IdpSessionRevalidator.cjs +241 -0
- package/dist/production/src/model/service/idp/IdpSessionRevalidator.cjs.map +1 -0
- package/dist/production/src/model/service/idp/IdpSessionRevalidator.js +241 -0
- package/dist/production/src/model/service/idp/IdpSessionRevalidator.js.map +1 -0
- package/dist/production/src/model/service/idp/PersonIdentityProviderManager.cjs +51 -0
- package/dist/production/src/model/service/idp/PersonIdentityProviderManager.cjs.map +1 -0
- package/dist/production/src/model/service/idp/PersonIdentityProviderManager.js +51 -0
- package/dist/production/src/model/service/idp/PersonIdentityProviderManager.js.map +1 -0
- package/dist/production/src/model/service/idp/providers/AppleProvider.cjs.map +1 -1
- package/dist/production/src/model/service/idp/providers/AppleProvider.js.map +1 -1
- package/dist/production/src/model/service/idp/providers/FacebookProvider.cjs.map +1 -1
- package/dist/production/src/model/service/idp/providers/FacebookProvider.js.map +1 -1
- package/dist/production/src/model/service/idp/providers/OIDCHelpers.cjs +207 -4
- package/dist/production/src/model/service/idp/providers/OIDCHelpers.cjs.map +1 -1
- package/dist/production/src/model/service/idp/providers/OIDCHelpers.js +208 -5
- package/dist/production/src/model/service/idp/providers/OIDCHelpers.js.map +1 -1
- package/dist/production/src/model/service/idp/providers/OIDCProvider.cjs +37 -4
- package/dist/production/src/model/service/idp/providers/OIDCProvider.cjs.map +1 -1
- package/dist/production/src/model/service/idp/providers/OIDCProvider.js +38 -5
- package/dist/production/src/model/service/idp/providers/OIDCProvider.js.map +1 -1
- package/dist/production/src/model/service/idp/providers/OIDCTypes.cjs +51 -1
- package/dist/production/src/model/service/idp/providers/OIDCTypes.cjs.map +1 -1
- package/dist/production/src/model/service/idp/providers/OIDCTypes.js +52 -2
- package/dist/production/src/model/service/idp/providers/OIDCTypes.js.map +1 -1
- package/dist/production/src/model/service/membershipUtils.cjs.map +1 -1
- package/dist/production/src/model/service/membershipUtils.js.map +1 -1
- package/dist/production/src/model/type/RateLimit.cjs +7 -0
- package/dist/production/src/model/type/RateLimit.cjs.map +1 -0
- package/dist/production/src/model/type/RateLimit.js +7 -0
- package/dist/production/src/model/type/RateLimit.js.map +1 -0
- package/dist/production/src/model/utils/DatabaseContext.cjs +3 -1
- package/dist/production/src/model/utils/DatabaseContext.cjs.map +1 -1
- package/dist/production/src/model/utils/DatabaseContext.js +3 -1
- package/dist/production/src/model/utils/DatabaseContext.js.map +1 -1
- package/dist/production/src/model/utils/interval.cjs +7 -0
- package/dist/production/src/model/utils/interval.cjs.map +1 -1
- package/dist/production/src/model/utils/interval.js +7 -0
- package/dist/production/src/model/utils/interval.js.map +1 -1
- package/dist/production/src/model/utils/token.cjs +12 -2
- package/dist/production/src/model/utils/token.cjs.map +1 -1
- package/dist/production/src/model/utils/token.js +12 -2
- package/dist/production/src/model/utils/token.js.map +1 -1
- package/dist/production/src/resolvers/ResolverFactory.cjs +42 -3
- package/dist/production/src/resolvers/ResolverFactory.cjs.map +1 -1
- package/dist/production/src/resolvers/ResolverFactory.js +42 -3
- package/dist/production/src/resolvers/ResolverFactory.js.map +1 -1
- package/dist/production/src/resolvers/TenantResolverContextFactory.cjs +22 -9
- package/dist/production/src/resolvers/TenantResolverContextFactory.cjs.map +1 -1
- package/dist/production/src/resolvers/TenantResolverContextFactory.js +22 -9
- package/dist/production/src/resolvers/TenantResolverContextFactory.js.map +1 -1
- package/dist/production/src/resolvers/errorUtils.cjs.map +1 -1
- package/dist/production/src/resolvers/errorUtils.js.map +1 -1
- package/dist/production/src/resolvers/membershipUtils.cjs.map +1 -1
- package/dist/production/src/resolvers/membershipUtils.js.map +1 -1
- package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs +64 -11
- package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js +65 -12
- package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs +15 -5
- package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js +15 -5
- package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/configuration/AuthPolicyMutationResolver.cjs +114 -0
- package/dist/production/src/resolvers/mutation/configuration/AuthPolicyMutationResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/configuration/AuthPolicyMutationResolver.js +114 -0
- package/dist/production/src/resolvers/mutation/configuration/AuthPolicyMutationResolver.js.map +1 -0
- package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs +27 -5
- package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js +27 -5
- package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/customRole/CustomRoleMutationResolver.cjs +124 -0
- package/dist/production/src/resolvers/mutation/customRole/CustomRoleMutationResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/customRole/CustomRoleMutationResolver.js +124 -0
- package/dist/production/src/resolvers/mutation/customRole/CustomRoleMutationResolver.js.map +1 -0
- package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs +55 -9
- package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js +55 -9
- package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs +26 -6
- package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.js +26 -6
- package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs +15 -5
- package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.js +15 -5
- package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/DisconnectMyIdentityProviderMutationResolver.cjs +55 -0
- package/dist/production/src/resolvers/mutation/idp/DisconnectMyIdentityProviderMutationResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/idp/DisconnectMyIdentityProviderMutationResolver.js +55 -0
- package/dist/production/src/resolvers/mutation/idp/DisconnectMyIdentityProviderMutationResolver.js.map +1 -0
- package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs +15 -5
- package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.js +15 -5
- package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs +27 -6
- package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js +27 -6
- package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/audit.cjs +21 -0
- package/dist/production/src/resolvers/mutation/idp/audit.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/idp/audit.js +21 -0
- package/dist/production/src/resolvers/mutation/idp/audit.js.map +1 -0
- package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs +61 -18
- package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js +61 -18
- package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs +12 -8
- package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.js +12 -8
- package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs +68 -9
- package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.js +68 -9
- package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs +11 -7
- package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.js +11 -7
- package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/EmailOtpMutationResolver.cjs +113 -0
- package/dist/production/src/resolvers/mutation/person/EmailOtpMutationResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/person/EmailOtpMutationResolver.js +113 -0
- package/dist/production/src/resolvers/mutation/person/EmailOtpMutationResolver.js.map +1 -0
- package/dist/production/src/resolvers/mutation/person/EmailVerificationMutationResolver.cjs +95 -0
- package/dist/production/src/resolvers/mutation/person/EmailVerificationMutationResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/person/EmailVerificationMutationResolver.js +95 -0
- package/dist/production/src/resolvers/mutation/person/EmailVerificationMutationResolver.js.map +1 -0
- package/dist/production/src/resolvers/mutation/person/EnablePersonMutationResolver.cjs +61 -0
- package/dist/production/src/resolvers/mutation/person/EnablePersonMutationResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/person/EnablePersonMutationResolver.js +61 -0
- package/dist/production/src/resolvers/mutation/person/EnablePersonMutationResolver.js.map +1 -0
- package/dist/production/src/resolvers/mutation/person/ForceSignOutMutationResolver.cjs +71 -0
- package/dist/production/src/resolvers/mutation/person/ForceSignOutMutationResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/person/ForceSignOutMutationResolver.js +71 -0
- package/dist/production/src/resolvers/mutation/person/ForceSignOutMutationResolver.js.map +1 -0
- package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.cjs +37 -6
- package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.js +37 -6
- package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.cjs +32 -11
- package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.js +32 -11
- package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.cjs +35 -19
- package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.js +36 -20
- package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs +46 -13
- package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.js +46 -13
- package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/RegenerateBackupCodesMutationResolver.cjs +64 -0
- package/dist/production/src/resolvers/mutation/person/RegenerateBackupCodesMutationResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/person/RegenerateBackupCodesMutationResolver.js +64 -0
- package/dist/production/src/resolvers/mutation/person/RegenerateBackupCodesMutationResolver.js.map +1 -0
- package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs +31 -10
- package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.js +31 -10
- package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ResetPersonMfaMutationResolver.cjs +59 -0
- package/dist/production/src/resolvers/mutation/person/ResetPersonMfaMutationResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/person/ResetPersonMfaMutationResolver.js +59 -0
- package/dist/production/src/resolvers/mutation/person/ResetPersonMfaMutationResolver.js.map +1 -0
- package/dist/production/src/resolvers/mutation/person/RevokeSessionMutationResolver.cjs +66 -0
- package/dist/production/src/resolvers/mutation/person/RevokeSessionMutationResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/person/RevokeSessionMutationResolver.js +66 -0
- package/dist/production/src/resolvers/mutation/person/RevokeSessionMutationResolver.js.map +1 -0
- package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.cjs +92 -16
- package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.js +92 -16
- package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.cjs +29 -24
- package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.js +29 -24
- package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.cjs +55 -7
- package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.js +55 -7
- package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs +12 -8
- package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js +12 -8
- package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs +19 -5
- package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.js +19 -5
- package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs +18 -5
- package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js +18 -5
- package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs +21 -5
- package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.js +21 -5
- package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs +11 -5
- package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js +11 -5
- package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs +13 -5
- package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js +13 -5
- package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs +13 -5
- package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js +13 -5
- package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/audit.cjs +35 -0
- package/dist/production/src/resolvers/mutation/projectMember/audit.cjs.map +1 -0
- package/dist/production/src/resolvers/mutation/projectMember/audit.js +35 -0
- package/dist/production/src/resolvers/mutation/projectMember/audit.js.map +1 -0
- package/dist/production/src/resolvers/query/ApiKeyQueryResolver.cjs +37 -0
- package/dist/production/src/resolvers/query/ApiKeyQueryResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/query/ApiKeyQueryResolver.js +37 -0
- package/dist/production/src/resolvers/query/ApiKeyQueryResolver.js.map +1 -0
- package/dist/production/src/resolvers/query/AuthLogQueryResolver.cjs +76 -0
- package/dist/production/src/resolvers/query/AuthLogQueryResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/query/AuthLogQueryResolver.js +76 -0
- package/dist/production/src/resolvers/query/AuthLogQueryResolver.js.map +1 -0
- package/dist/production/src/resolvers/query/AuthPolicyQueryResolver.cjs +55 -0
- package/dist/production/src/resolvers/query/AuthPolicyQueryResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/query/AuthPolicyQueryResolver.js +55 -0
- package/dist/production/src/resolvers/query/AuthPolicyQueryResolver.js.map +1 -0
- package/dist/production/src/resolvers/query/ConfigurationQueryResolver.cjs +11 -7
- package/dist/production/src/resolvers/query/ConfigurationQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/ConfigurationQueryResolver.js +11 -7
- package/dist/production/src/resolvers/query/ConfigurationQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/CustomRoleQueryResolver.cjs +55 -0
- package/dist/production/src/resolvers/query/CustomRoleQueryResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/query/CustomRoleQueryResolver.js +55 -0
- package/dist/production/src/resolvers/query/CustomRoleQueryResolver.js.map +1 -0
- package/dist/production/src/resolvers/query/IDPQueryResolver.cjs +9 -5
- package/dist/production/src/resolvers/query/IDPQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/IDPQueryResolver.js +9 -5
- package/dist/production/src/resolvers/query/IDPQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/MailTemplateQueryResolver.cjs +23 -14
- package/dist/production/src/resolvers/query/MailTemplateQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/MailTemplateQueryResolver.js +23 -14
- package/dist/production/src/resolvers/query/MailTemplateQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/MeQueryResolver.cjs +1 -0
- package/dist/production/src/resolvers/query/MeQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/MeQueryResolver.js +1 -0
- package/dist/production/src/resolvers/query/MeQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/PersonQueryResolver.cjs +46 -6
- package/dist/production/src/resolvers/query/PersonQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/PersonQueryResolver.js +46 -6
- package/dist/production/src/resolvers/query/PersonQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.cjs +9 -5
- package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.js +9 -5
- package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/ProjectQueryResolver.cjs +12 -7
- package/dist/production/src/resolvers/query/ProjectQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/ProjectQueryResolver.js +12 -7
- package/dist/production/src/resolvers/query/ProjectQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/responseHelpers/ApiKeyResponseFactory.cjs +57 -0
- package/dist/production/src/resolvers/responseHelpers/ApiKeyResponseFactory.cjs.map +1 -0
- package/dist/production/src/resolvers/responseHelpers/ApiKeyResponseFactory.js +57 -0
- package/dist/production/src/resolvers/responseHelpers/ApiKeyResponseFactory.js.map +1 -0
- package/dist/production/src/resolvers/responseHelpers/PersonResponseFactory.cjs +15 -2
- package/dist/production/src/resolvers/responseHelpers/PersonResponseFactory.cjs.map +1 -1
- package/dist/production/src/resolvers/responseHelpers/PersonResponseFactory.js +15 -2
- package/dist/production/src/resolvers/responseHelpers/PersonResponseFactory.js.map +1 -1
- package/dist/production/src/resolvers/responseHelpers/ProjectResponseFactory.cjs +23 -0
- package/dist/production/src/resolvers/responseHelpers/ProjectResponseFactory.cjs.map +1 -0
- package/dist/production/src/resolvers/responseHelpers/ProjectResponseFactory.js +23 -0
- package/dist/production/src/resolvers/responseHelpers/ProjectResponseFactory.js.map +1 -0
- package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.cjs +13 -7
- package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.cjs.map +1 -1
- package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.js +13 -7
- package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.js.map +1 -1
- package/dist/production/src/resolvers/types/IdentityTypeResolver.cjs +75 -11
- package/dist/production/src/resolvers/types/IdentityTypeResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/types/IdentityTypeResolver.js +75 -11
- package/dist/production/src/resolvers/types/IdentityTypeResolver.js.map +1 -1
- package/dist/production/src/resolvers/types/PersonTypeResolver.cjs +82 -0
- package/dist/production/src/resolvers/types/PersonTypeResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/types/PersonTypeResolver.js +82 -0
- package/dist/production/src/resolvers/types/PersonTypeResolver.js.map +1 -0
- package/dist/production/src/resolvers/types/ProjectTypeResolver.cjs +53 -7
- package/dist/production/src/resolvers/types/ProjectTypeResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/types/ProjectTypeResolver.js +53 -7
- package/dist/production/src/resolvers/types/ProjectTypeResolver.js.map +1 -1
- package/dist/production/src/schema/tenant.graphql.cjs +1088 -22
- package/dist/production/src/schema/tenant.graphql.cjs.map +1 -1
- package/dist/production/src/schema/tenant.graphql.js +1088 -22
- package/dist/production/src/schema/tenant.graphql.js.map +1 -1
- package/dist/production/src/utils/Mailer.cjs.map +1 -1
- package/dist/production/src/utils/Mailer.js.map +1 -1
- package/dist/production/src/utils/batchQuery.cjs.map +1 -1
- package/dist/production/src/utils/batchQuery.js.map +1 -1
- package/dist/tests/cases/integration/database/dbClock.test.d.ts +2 -0
- package/dist/tests/cases/integration/database/dbClock.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/antiAbuseSignUp.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/antiAbuseSignUp.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/authLogQuery.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/authLogQuery.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/authPolicyCrud.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/authPolicyCrud.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/changeMyProfileEmailVerificationMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/changeMyProfileEmailVerificationMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/configurationPanel.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/configurationPanel.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/confirmEmailChangeMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/confirmEmailChangeMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/customRoleCrud.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/customRoleCrud.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/disableOtpMfaRequired.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/disableOtpMfaRequired.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/disablePersonMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/disablePersonMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/emailOtpMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/emailOtpMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/enablePersonMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/enablePersonMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/forceSignOutPersonMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/forceSignOutPersonMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/globalApiKeysQuery.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/globalApiKeysQuery.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/globalIdentityRolesMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/globalIdentityRolesMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/gql/addProjectMember.d.ts +2 -2
- package/dist/tests/cases/integration/mocked/gql/addProjectMember.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/changeMyPassword.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/gql/changeMyPassword.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/changeMyProfile.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/gql/changeMyProfile.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/changePassword.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/gql/changePassword.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/changeProfile.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/gql/changeProfile.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/confirmOtp.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/gql/confirmOtp.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/createApiKey.d.ts +2 -2
- package/dist/tests/cases/integration/mocked/gql/createApiKey.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/createResetPasswordRequest.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/gql/createResetPasswordRequest.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/createSessionToken.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/gql/createSessionToken.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/emailOtp.d.ts +6 -0
- package/dist/tests/cases/integration/mocked/gql/emailOtp.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/gql/emailVerification.d.ts +12 -0
- package/dist/tests/cases/integration/mocked/gql/emailVerification.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/gql/invite.d.ts +2 -2
- package/dist/tests/cases/integration/mocked/gql/invite.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/myIdentityProviders.d.ts +6 -0
- package/dist/tests/cases/integration/mocked/gql/myIdentityProviders.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/gql/passwordless.d.ts +12 -0
- package/dist/tests/cases/integration/mocked/gql/passwordless.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/gql/prepareOtp.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/gql/prepareOtp.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/resetPassword.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/gql/resetPassword.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/signIn.d.ts +5 -1
- package/dist/tests/cases/integration/mocked/gql/signIn.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/signInIdp.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/gql/signInIdp.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/signUp.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/gql/signUp.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/unmanagedInvite.d.ts +2 -2
- package/dist/tests/cases/integration/mocked/gql/unmanagedInvite.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/gql/updateProjectMember.d.ts +2 -2
- package/dist/tests/cases/integration/mocked/gql/updateProjectMember.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/idpClaimMappingConfig.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/idpClaimMappingConfig.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/localAuthenticationDisabled.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/localAuthenticationDisabled.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/mailTemplateScope.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/mailTemplateScope.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/mySessionsQuery.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/mySessionsQuery.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/permissionsQuery.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/permissionsQuery.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/personIdentityProviders.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/personIdentityProviders.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/personsQuery.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/personsQuery.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/projectApiKeysQuery.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/projectApiKeysQuery.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/projectSecretsQuery.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/projectSecretsQuery.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/requestEmailVerificationMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/requestEmailVerificationMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/resetPersonMfaMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/resetPersonMfaMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/revokeSessionMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/revokeSessionMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/signInAnomalyDetection.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/signInAnomalyDetection.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/signInIdpClaimMapping.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/signInIdpClaimMapping.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/signInIdpClaimMappingFixes.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/signInIdpClaimMappingFixes.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/signInIdpClaimMappingSafety.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/signInIdpClaimMappingSafety.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/signInMfaEnforcement.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/signInMfaEnforcement.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/signInPasswordlessMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/signInPasswordlessMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/authLogSql.d.ts +32 -0
- package/dist/tests/cases/integration/mocked/sql/authLogSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/authPolicySql.d.ts +23 -0
- package/dist/tests/cases/integration/mocked/sql/authPolicySql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/consumeBackupCodeSql.d.ts +20 -0
- package/dist/tests/cases/integration/mocked/sql/consumeBackupCodeSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/createApiKeySql.d.ts +1 -0
- package/dist/tests/cases/integration/mocked/sql/createApiKeySql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/createIdentitySql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/createMembershipSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/createMembershipVariableSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/createPersonSql.d.ts +1 -0
- package/dist/tests/cases/integration/mocked/sql/createPersonSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/createPersonTokenSql.d.ts +1 -0
- package/dist/tests/cases/integration/mocked/sql/createPersonTokenSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/createSessionKeySql.d.ts +5 -2
- package/dist/tests/cases/integration/mocked/sql/createSessionKeySql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/disableApiKeySql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/disableOneOffKeySql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/emailOtpSql.d.ts +32 -0
- package/dist/tests/cases/integration/mocked/sql/emailOtpSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/generateBackupCodesSql.d.ts +7 -0
- package/dist/tests/cases/integration/mocked/sql/generateBackupCodesSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/getApiKeySql.d.ts +2 -1
- package/dist/tests/cases/integration/mocked/sql/getApiKeySql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/getConfigSql.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/sql/getConfigSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/getCustomRolesSql.d.ts +18 -0
- package/dist/tests/cases/integration/mocked/sql/getCustomRolesSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/getIdentityByIdSql.d.ts +10 -0
- package/dist/tests/cases/integration/mocked/sql/getIdentityByIdSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/getIdentityProjectMembershipPresenceSql.d.ts +3 -0
- package/dist/tests/cases/integration/mocked/sql/getIdentityProjectMembershipPresenceSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/getIdentityProjectsSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/getIdpBySlugSql.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/sql/getIdpBySlugSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/getIdpSessionByApiKeySql.d.ts +20 -0
- package/dist/tests/cases/integration/mocked/sql/getIdpSessionByApiKeySql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/getMailTemplateSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/getNextLoginAttemptSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/getNextMailAttemptSql.d.ts +8 -0
- package/dist/tests/cases/integration/mocked/sql/getNextMailAttemptSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/getPersonByEmailSql.d.ts +6 -0
- package/dist/tests/cases/integration/mocked/sql/getPersonByEmailSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/getPersonByIdSql.d.ts +6 -0
- package/dist/tests/cases/integration/mocked/sql/getPersonByIdSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/getPersonByIdentity.d.ts +4 -0
- package/dist/tests/cases/integration/mocked/sql/getPersonByIdentity.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/getPersonByIdpSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/getPersonsByIdentitySql.d.ts +12 -0
- package/dist/tests/cases/integration/mocked/sql/getPersonsByIdentitySql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/getProjectBySlugSql.d.ts +2 -2
- package/dist/tests/cases/integration/mocked/sql/getProjectBySlugSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/getProjectMembershipSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/listApiKeysSql.d.ts +18 -0
- package/dist/tests/cases/integration/mocked/sql/listApiKeysSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/listPersonsSql.d.ts +21 -0
- package/dist/tests/cases/integration/mocked/sql/listPersonsSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/listProjectSecretsSql.d.ts +11 -0
- package/dist/tests/cases/integration/mocked/sql/listProjectSecretsSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/listSessionsSql.d.ts +18 -0
- package/dist/tests/cases/integration/mocked/sql/listSessionsSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/localAuthDisablingIdpsSql.d.ts +10 -0
- package/dist/tests/cases/integration/mocked/sql/localAuthDisablingIdpsSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/loginHistorySql.d.ts +17 -0
- package/dist/tests/cases/integration/mocked/sql/loginHistorySql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/patchVariablesSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/personIdentityProvidersSql.d.ts +32 -0
- package/dist/tests/cases/integration/mocked/sql/personIdentityProvidersSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/removeMembershipSql.d.ts +8 -0
- package/dist/tests/cases/integration/mocked/sql/removeMembershipSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/selectMembershipsSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/setEmailOtpEnabledSql.d.ts +7 -0
- package/dist/tests/cases/integration/mocked/sql/setEmailOtpEnabledSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/sqlTransaction.d.ts +6 -0
- package/dist/tests/cases/integration/mocked/sql/sqlTransaction.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/updatePesonNameSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/updatePesonPasswordSql.d.ts.map +1 -1
- package/dist/tests/cases/integration/mocked/trustForwardedClientInfo.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/trustForwardedClientInfo.test.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/verifyEmailMutation.test.d.ts +2 -0
- package/dist/tests/cases/integration/mocked/verifyEmailMutation.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/apiKey/createSessionApiKeyPolicy.test.d.ts +2 -0
- package/dist/tests/cases/unit/apiKey/createSessionApiKeyPolicy.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/apiKey/prolongApiKeyCommand.test.d.ts +2 -0
- package/dist/tests/cases/unit/apiKey/prolongApiKeyCommand.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/apiKey/unpersistedApiKeyManager.test.d.ts +2 -0
- package/dist/tests/cases/unit/apiKey/unpersistedApiKeyManager.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/apiKey/verifyAndProlongIdle.test.d.ts +2 -0
- package/dist/tests/cases/unit/apiKey/verifyAndProlongIdle.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/apiKey/verifyAndProlongReplica.test.d.ts +2 -0
- package/dist/tests/cases/unit/apiKey/verifyAndProlongReplica.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/authLogBaselineWrite.test.d.ts +2 -0
- package/dist/tests/cases/unit/authLogBaselineWrite.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/authPolicyResolver.test.d.ts +2 -0
- package/dist/tests/cases/unit/authPolicyResolver.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/backupCodeManager.test.d.ts +2 -0
- package/dist/tests/cases/unit/backupCodeManager.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/captchaProviders.test.d.ts +2 -0
- package/dist/tests/cases/unit/captchaProviders.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/captchaValidator.test.d.ts +2 -0
- package/dist/tests/cases/unit/captchaValidator.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/customRoleAuthorizator.test.d.ts +2 -0
- package/dist/tests/cases/unit/customRoleAuthorizator.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/customRolePermissions.test.d.ts +2 -0
- package/dist/tests/cases/unit/customRolePermissions.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/emailOtpManager.test.d.ts +2 -0
- package/dist/tests/cases/unit/emailOtpManager.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/hibpChecker.test.d.ts +2 -0
- package/dist/tests/cases/unit/hibpChecker.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/idp/backchannelLogoutManager.test.d.ts +2 -0
- package/dist/tests/cases/unit/idp/backchannelLogoutManager.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/idp/claimIdpRevalidation.test.d.ts +2 -0
- package/dist/tests/cases/unit/idp/claimIdpRevalidation.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/idp/claimMappingEvaluator.test.d.ts +2 -0
- package/dist/tests/cases/unit/idp/claimMappingEvaluator.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/idp/claimMappingValidation.test.d.ts +2 -0
- package/dist/tests/cases/unit/idp/claimMappingValidation.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/idp/idpManagerConfigMerge.test.d.ts +2 -0
- package/dist/tests/cases/unit/idp/idpManagerConfigMerge.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/idp/idpSessionRevalidator.test.d.ts +2 -0
- package/dist/tests/cases/unit/idp/idpSessionRevalidator.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/idp/oidcClaims.test.d.ts +2 -0
- package/dist/tests/cases/unit/idp/oidcClaims.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/idp/oidcLogout.test.d.ts +2 -0
- package/dist/tests/cases/unit/idp/oidcLogout.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/idp/oidcProvider.test.d.ts +2 -0
- package/dist/tests/cases/unit/idp/oidcProvider.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/idp/oidcResponse.test.d.ts +2 -0
- package/dist/tests/cases/unit/idp/oidcResponse.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/idp/oidcRevalidate.test.d.ts +2 -0
- package/dist/tests/cases/unit/idp/oidcRevalidate.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/loginRiskAnalyzer.test.d.ts +2 -0
- package/dist/tests/cases/unit/loginRiskAnalyzer.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/otpManager.test.d.ts +2 -0
- package/dist/tests/cases/unit/otpManager.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/panelAccessResolver.test.d.ts +2 -0
- package/dist/tests/cases/unit/panelAccessResolver.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/passwordStrengthValidator.test.d.ts +2 -0
- package/dist/tests/cases/unit/passwordStrengthValidator.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/rateLimiter.test.d.ts +2 -0
- package/dist/tests/cases/unit/rateLimiter.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/savePersonTokenCommand.test.d.ts +2 -0
- package/dist/tests/cases/unit/savePersonTokenCommand.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/updateConfigurationCommand.test.d.ts +2 -0
- package/dist/tests/cases/unit/updateConfigurationCommand.test.d.ts.map +1 -0
- package/dist/tests/src/IdPMock.d.ts +11 -1
- package/dist/tests/src/IdPMock.d.ts.map +1 -1
- package/dist/tests/src/dbUtils.d.ts.map +1 -1
- package/dist/tests/src/mailer.d.ts +1 -1
- package/dist/tests/src/mailer.d.ts.map +1 -1
- package/dist/tests/src/tags.d.ts.map +1 -1
- package/dist/tests/src/testGraphql.d.ts.map +1 -1
- package/dist/tests/src/testTenant.d.ts +34 -4
- package/dist/tests/src/testTenant.d.ts.map +1 -1
- package/dist/tests/src/testUuid.d.ts.map +1 -1
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/dist/types/TenantContainer.d.ts +128 -39
- package/dist/types/TenantContainer.d.ts.map +1 -1
- package/dist/types/bridges/system/IdentityFetcher.d.ts +2 -2
- package/dist/types/bridges/system/IdentityFetcher.d.ts.map +1 -1
- package/dist/types/exceptions.d.ts.map +1 -1
- package/dist/types/index.d.ts +6 -6
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/migrations/2020-06-08-134000-tenant-credentials.d.ts +1 -1
- package/dist/types/migrations/2020-06-08-134000-tenant-credentials.d.ts.map +1 -1
- package/dist/types/migrations/2026-05-12-120000-api-key-session-tracking.d.ts +3 -0
- package/dist/types/migrations/2026-05-12-120000-api-key-session-tracking.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-12-130000-api-key-trust-forwarded-info.d.ts +3 -0
- package/dist/types/migrations/2026-05-12-130000-api-key-trust-forwarded-info.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-13-120000-auth-log-event-data.d.ts +3 -0
- package/dist/types/migrations/2026-05-13-120000-auth-log-event-data.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-13-130000-anti-abuse.d.ts +3 -0
- package/dist/types/migrations/2026-05-13-130000-anti-abuse.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-14-100000-auth-log-admin-actions.d.ts +3 -0
- package/dist/types/migrations/2026-05-14-100000-auth-log-admin-actions.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-15-120000-config-reveal-login-method.d.ts +3 -0
- package/dist/types/migrations/2026-05-15-120000-config-reveal-login-method.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-21-100000-person-mfa.d.ts +3 -0
- package/dist/types/migrations/2026-05-21-100000-person-mfa.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-21-110000-mfa-foundation.d.ts +3 -0
- package/dist/types/migrations/2026-05-21-110000-mfa-foundation.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-21-120000-email-otp.d.ts +3 -0
- package/dist/types/migrations/2026-05-21-120000-email-otp.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-21-130000-api-key-session-policy.d.ts +3 -0
- package/dist/types/migrations/2026-05-21-130000-api-key-session-policy.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-21-140000-mfa-grace-duration.d.ts +3 -0
- package/dist/types/migrations/2026-05-21-140000-mfa-grace-duration.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-21-150000-email-otp-rate-limit.d.ts +3 -0
- package/dist/types/migrations/2026-05-21-150000-email-otp-rate-limit.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-26-120000-email-verification-types.d.ts +3 -0
- package/dist/types/migrations/2026-05-26-120000-email-verification-types.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-26-120010-email-verification.d.ts +3 -0
- package/dist/types/migrations/2026-05-26-120010-email-verification.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-26-130000-email-change-verification-config.d.ts +3 -0
- package/dist/types/migrations/2026-05-26-130000-email-change-verification-config.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-26-130010-idp-require-verified-email.d.ts +3 -0
- package/dist/types/migrations/2026-05-26-130010-idp-require-verified-email.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-26-130020-email-verification-rate-limit.d.ts +3 -0
- package/dist/types/migrations/2026-05-26-130020-email-verification-rate-limit.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-26-130030-captcha-protect-flows.d.ts +3 -0
- package/dist/types/migrations/2026-05-26-130030-captcha-protect-flows.d.ts.map +1 -0
- package/dist/types/migrations/2026-05-26-140000-idp-session.d.ts +3 -0
- package/dist/types/migrations/2026-05-26-140000-idp-session.d.ts.map +1 -0
- package/dist/types/migrations/2026-06-08-100000-idp-assume-email-verified.d.ts +3 -0
- package/dist/types/migrations/2026-06-08-100000-idp-assume-email-verified.d.ts.map +1 -0
- package/dist/types/migrations/2026-06-16-120000-login-anomaly-detection.d.ts +3 -0
- package/dist/types/migrations/2026-06-16-120000-login-anomaly-detection.d.ts.map +1 -0
- package/dist/types/migrations/2026-06-16-130000-idp-logout.d.ts +3 -0
- package/dist/types/migrations/2026-06-16-130000-idp-logout.d.ts.map +1 -0
- package/dist/types/migrations/2026-06-18-120000-idp-claim-mapping.d.ts +3 -0
- package/dist/types/migrations/2026-06-18-120000-idp-claim-mapping.d.ts.map +1 -0
- package/dist/types/migrations/2026-08-03-120000-person-enable-auth-log.d.ts +3 -0
- package/dist/types/migrations/2026-08-03-120000-person-enable-auth-log.d.ts.map +1 -0
- package/dist/types/migrations/2026-08-04-120000-config-panel.d.ts +3 -0
- package/dist/types/migrations/2026-08-04-120000-config-panel.d.ts.map +1 -0
- package/dist/types/migrations/2026-09-04-120000-idp-disable-local-authentication.d.ts +3 -0
- package/dist/types/migrations/2026-09-04-120000-idp-disable-local-authentication.d.ts.map +1 -0
- package/dist/types/migrations/2026-09-11-120000-custom-role.d.ts +3 -0
- package/dist/types/migrations/2026-09-11-120000-custom-role.d.ts.map +1 -0
- package/dist/types/migrations/index.d.ts +2 -2
- package/dist/types/migrations/index.d.ts.map +1 -1
- package/dist/types/migrations/runner.d.ts +12 -1
- package/dist/types/migrations/runner.d.ts.map +1 -1
- package/dist/types/migrations/snapshot-factory.d.ts +1 -1
- package/dist/types/migrations/snapshot-factory.d.ts.map +1 -1
- package/dist/types/migrations/snapshot.d.ts +1 -1
- package/dist/types/migrations/snapshot.d.ts.map +1 -1
- package/dist/types/migrations/tenantCredentials.d.ts +1 -1
- package/dist/types/migrations/tenantCredentials.d.ts.map +1 -1
- package/dist/types/migrations/types.d.ts +1 -1
- package/dist/types/migrations/types.d.ts.map +1 -1
- package/dist/types/model/authorization/AclSchemaAccessNodeFactory.d.ts.map +1 -1
- package/dist/types/model/authorization/CustomRoleAuthorizator.d.ts +29 -0
- package/dist/types/model/authorization/CustomRoleAuthorizator.d.ts.map +1 -0
- package/dist/types/model/authorization/CustomRolePermissions.d.ts +45 -0
- package/dist/types/model/authorization/CustomRolePermissions.d.ts.map +1 -0
- package/dist/types/model/authorization/DirectPermissionsAccessNode.d.ts.map +1 -1
- package/dist/types/model/authorization/Identity.d.ts +2 -2
- package/dist/types/model/authorization/Identity.d.ts.map +1 -1
- package/dist/types/model/authorization/IdentityFactory.d.ts +3 -3
- package/dist/types/model/authorization/IdentityFactory.d.ts.map +1 -1
- package/dist/types/model/authorization/IdentityScope.d.ts +1 -1
- package/dist/types/model/authorization/IdentityScope.d.ts.map +1 -1
- package/dist/types/model/authorization/MembershipMatcher.d.ts.map +1 -1
- package/dist/types/model/authorization/PermissionActions.d.ts +150 -25
- package/dist/types/model/authorization/PermissionActions.d.ts.map +1 -1
- package/dist/types/model/authorization/PermissionContext.d.ts +3 -3
- package/dist/types/model/authorization/PermissionContext.d.ts.map +1 -1
- package/dist/types/model/authorization/PermissionContextFactory.d.ts +18 -7
- package/dist/types/model/authorization/PermissionContextFactory.d.ts.map +1 -1
- package/dist/types/model/authorization/PermissionsFactory.d.ts.map +1 -1
- package/dist/types/model/authorization/ProjectScope.d.ts +3 -3
- package/dist/types/model/authorization/ProjectScope.d.ts.map +1 -1
- package/dist/types/model/authorization/ProjectScopeFactory.d.ts +3 -3
- package/dist/types/model/authorization/ProjectScopeFactory.d.ts.map +1 -1
- package/dist/types/model/authorization/Roles.d.ts +8 -0
- package/dist/types/model/authorization/Roles.d.ts.map +1 -1
- package/dist/types/model/authorization/TargetIdentityPermission.d.ts +15 -0
- package/dist/types/model/authorization/TargetIdentityPermission.d.ts.map +1 -0
- package/dist/types/model/authorization/index.d.ts +15 -12
- package/dist/types/model/authorization/index.d.ts.map +1 -1
- package/dist/types/model/commands/Command.d.ts +2 -2
- package/dist/types/model/commands/Command.d.ts.map +1 -1
- package/dist/types/model/commands/CommandBus.d.ts +2 -2
- package/dist/types/model/commands/CommandBus.d.ts.map +1 -1
- package/dist/types/model/commands/apiKey/ApiKeyHelper.d.ts +17 -2
- package/dist/types/model/commands/apiKey/ApiKeyHelper.d.ts.map +1 -1
- package/dist/types/model/commands/apiKey/CreateApiKeyCommand.d.ts +19 -3
- package/dist/types/model/commands/apiKey/CreateApiKeyCommand.d.ts.map +1 -1
- package/dist/types/model/commands/apiKey/DisableApiKeyCommand.d.ts +1 -1
- package/dist/types/model/commands/apiKey/DisableApiKeyCommand.d.ts.map +1 -1
- package/dist/types/model/commands/apiKey/DisableIdentityApiKeysCommand.d.ts +1 -1
- package/dist/types/model/commands/apiKey/DisableIdentityApiKeysCommand.d.ts.map +1 -1
- package/dist/types/model/commands/apiKey/DisableOneOffApiKeyCommand.d.ts +1 -1
- package/dist/types/model/commands/apiKey/DisableOneOffApiKeyCommand.d.ts.map +1 -1
- package/dist/types/model/commands/apiKey/ProlongApiKeyCommand.d.ts +24 -3
- package/dist/types/model/commands/apiKey/ProlongApiKeyCommand.d.ts.map +1 -1
- package/dist/types/model/commands/apiKey/index.d.ts +5 -5
- package/dist/types/model/commands/apiKey/index.d.ts.map +1 -1
- package/dist/types/model/commands/authLog/CreateAuthLogEntryCommand.d.ts +11 -3
- package/dist/types/model/commands/authLog/CreateAuthLogEntryCommand.d.ts.map +1 -1
- package/dist/types/model/commands/authPolicy/CreateAuthPolicyCommand.d.ts +19 -0
- package/dist/types/model/commands/authPolicy/CreateAuthPolicyCommand.d.ts.map +1 -0
- package/dist/types/model/commands/authPolicy/DeleteAuthPolicyCommand.d.ts +8 -0
- package/dist/types/model/commands/authPolicy/DeleteAuthPolicyCommand.d.ts.map +1 -0
- package/dist/types/model/commands/authPolicy/UpdateAuthPolicyCommand.d.ts +23 -0
- package/dist/types/model/commands/authPolicy/UpdateAuthPolicyCommand.d.ts.map +1 -0
- package/dist/types/model/commands/authPolicy/index.d.ts +4 -0
- package/dist/types/model/commands/authPolicy/index.d.ts.map +1 -0
- package/dist/types/model/commands/backupCode/ConsumeBackupCodeCommand.d.ts +15 -0
- package/dist/types/model/commands/backupCode/ConsumeBackupCodeCommand.d.ts.map +1 -0
- package/dist/types/model/commands/backupCode/CreateBackupCodeCommand.d.ts +11 -0
- package/dist/types/model/commands/backupCode/CreateBackupCodeCommand.d.ts.map +1 -0
- package/dist/types/model/commands/backupCode/DeleteBackupCodesCommand.d.ts +10 -0
- package/dist/types/model/commands/backupCode/DeleteBackupCodesCommand.d.ts.map +1 -0
- package/dist/types/model/commands/backupCode/index.d.ts +4 -0
- package/dist/types/model/commands/backupCode/index.d.ts.map +1 -0
- package/dist/types/model/commands/configuration/UpdateConfigurationCommand.d.ts +3 -3
- package/dist/types/model/commands/configuration/UpdateConfigurationCommand.d.ts.map +1 -1
- package/dist/types/model/commands/configuration/index.d.ts +1 -1
- package/dist/types/model/commands/configuration/index.d.ts.map +1 -1
- package/dist/types/model/commands/customRole/CreateCustomRoleCommand.d.ts +12 -0
- package/dist/types/model/commands/customRole/CreateCustomRoleCommand.d.ts.map +1 -0
- package/dist/types/model/commands/customRole/DeleteCustomRoleCommand.d.ts +13 -0
- package/dist/types/model/commands/customRole/DeleteCustomRoleCommand.d.ts.map +1 -0
- package/dist/types/model/commands/customRole/RemoveCustomRoleAssignmentsCommand.d.ts +8 -0
- package/dist/types/model/commands/customRole/RemoveCustomRoleAssignmentsCommand.d.ts.map +1 -0
- package/dist/types/model/commands/customRole/UpdateCustomRoleCommand.d.ts +16 -0
- package/dist/types/model/commands/customRole/UpdateCustomRoleCommand.d.ts.map +1 -0
- package/dist/types/model/commands/customRole/index.d.ts +5 -0
- package/dist/types/model/commands/customRole/index.d.ts.map +1 -0
- package/dist/types/model/commands/identity/CreateIdentityCommand.d.ts +1 -1
- package/dist/types/model/commands/identity/CreateIdentityCommand.d.ts.map +1 -1
- package/dist/types/model/commands/identity/PatchIdentityGlobalRoles.d.ts +1 -1
- package/dist/types/model/commands/identity/PatchIdentityGlobalRoles.d.ts.map +1 -1
- package/dist/types/model/commands/identity/index.d.ts +2 -2
- package/dist/types/model/commands/identity/index.d.ts.map +1 -1
- package/dist/types/model/commands/idp/ClaimIdpRevalidationCommand.d.ts +17 -0
- package/dist/types/model/commands/idp/ClaimIdpRevalidationCommand.d.ts.map +1 -0
- package/dist/types/model/commands/idp/CreateIdpCommand.d.ts +2 -2
- package/dist/types/model/commands/idp/CreateIdpCommand.d.ts.map +1 -1
- package/dist/types/model/commands/idp/CreateIdpSessionCommand.d.ts +15 -0
- package/dist/types/model/commands/idp/CreateIdpSessionCommand.d.ts.map +1 -0
- package/dist/types/model/commands/idp/DisableIdpCommand.d.ts +1 -1
- package/dist/types/model/commands/idp/DisableIdpCommand.d.ts.map +1 -1
- package/dist/types/model/commands/idp/DisconnectPersonIdentityProviderCommand.d.ts +13 -0
- package/dist/types/model/commands/idp/DisconnectPersonIdentityProviderCommand.d.ts.map +1 -0
- package/dist/types/model/commands/idp/EnableIdpCommand.d.ts +1 -1
- package/dist/types/model/commands/idp/EnableIdpCommand.d.ts.map +1 -1
- package/dist/types/model/commands/idp/UpdateIdpCommand.d.ts +2 -2
- package/dist/types/model/commands/idp/UpdateIdpCommand.d.ts.map +1 -1
- package/dist/types/model/commands/idp/UpdateIdpSessionCommand.d.ts +14 -0
- package/dist/types/model/commands/idp/UpdateIdpSessionCommand.d.ts.map +1 -0
- package/dist/types/model/commands/index.d.ts +15 -11
- package/dist/types/model/commands/index.d.ts.map +1 -1
- package/dist/types/model/commands/mailTemplate/AddMailTemplateCommand.d.ts +2 -2
- package/dist/types/model/commands/mailTemplate/AddMailTemplateCommand.d.ts.map +1 -1
- package/dist/types/model/commands/mailTemplate/RemoveMailTemplateCommand.d.ts +2 -2
- package/dist/types/model/commands/mailTemplate/RemoveMailTemplateCommand.d.ts.map +1 -1
- package/dist/types/model/commands/mailTemplate/index.d.ts +2 -2
- package/dist/types/model/commands/mailTemplate/index.d.ts.map +1 -1
- package/dist/types/model/commands/membership/AddProjectMemberCommand.d.ts +3 -3
- package/dist/types/model/commands/membership/AddProjectMemberCommand.d.ts.map +1 -1
- package/dist/types/model/commands/membership/CreateOrUpdateProjectMembershipCommand.d.ts +2 -2
- package/dist/types/model/commands/membership/CreateOrUpdateProjectMembershipCommand.d.ts.map +1 -1
- package/dist/types/model/commands/membership/RemoveProjectMemberCommand.d.ts +3 -3
- package/dist/types/model/commands/membership/RemoveProjectMemberCommand.d.ts.map +1 -1
- package/dist/types/model/commands/membership/{RemoveProjectMembershipsCommand.d.ts → RemoveProjectMembershipCommand.d.ts} +2 -2
- package/dist/types/model/commands/membership/RemoveProjectMembershipCommand.d.ts.map +1 -0
- package/dist/types/model/commands/membership/UpdateProjectMemberCommand.d.ts +4 -4
- package/dist/types/model/commands/membership/UpdateProjectMemberCommand.d.ts.map +1 -1
- package/dist/types/model/commands/membership/index.d.ts +7 -6
- package/dist/types/model/commands/membership/index.d.ts.map +1 -1
- package/dist/types/model/commands/membership/variables/PatchProjectMembershipVariableValuesCommand.d.ts +1 -1
- package/dist/types/model/commands/membership/variables/PatchProjectMembershipVariableValuesCommand.d.ts.map +1 -1
- package/dist/types/model/commands/membership/variables/PatchProjectMembershipVariablesCommand.d.ts +2 -2
- package/dist/types/model/commands/membership/variables/PatchProjectMembershipVariablesCommand.d.ts.map +1 -1
- package/dist/types/model/commands/membership/variables/SetProjectMembershipVariableValuesCommand.d.ts +1 -1
- package/dist/types/model/commands/membership/variables/SetProjectMembershipVariableValuesCommand.d.ts.map +1 -1
- package/dist/types/model/commands/membership/variables/index.d.ts +2 -1
- package/dist/types/model/commands/membership/variables/index.d.ts.map +1 -1
- package/dist/types/model/commands/otp/ConfirmOtpCommand.d.ts +12 -3
- package/dist/types/model/commands/otp/ConfirmOtpCommand.d.ts.map +1 -1
- package/dist/types/model/commands/otp/DisableOtpCommand.d.ts +6 -2
- package/dist/types/model/commands/otp/DisableOtpCommand.d.ts.map +1 -1
- package/dist/types/model/commands/otp/PrepareOtpCommand.d.ts +12 -4
- package/dist/types/model/commands/otp/PrepareOtpCommand.d.ts.map +1 -1
- package/dist/types/model/commands/otp/ReEncryptOtpSecretCommand.d.ts +18 -0
- package/dist/types/model/commands/otp/ReEncryptOtpSecretCommand.d.ts.map +1 -0
- package/dist/types/model/commands/otp/SetEmailOtpEnabledCommand.d.ts +12 -0
- package/dist/types/model/commands/otp/SetEmailOtpEnabledCommand.d.ts.map +1 -0
- package/dist/types/model/commands/otp/index.d.ts +5 -3
- package/dist/types/model/commands/otp/index.d.ts.map +1 -1
- package/dist/types/model/commands/person/ChangePasswordCommand.d.ts +1 -1
- package/dist/types/model/commands/person/ChangePasswordCommand.d.ts.map +1 -1
- package/dist/types/model/commands/person/ChangeProfileCommand.d.ts +3 -2
- package/dist/types/model/commands/person/ChangeProfileCommand.d.ts.map +1 -1
- package/dist/types/model/commands/person/CreatePersonCommand.d.ts +4 -3
- package/dist/types/model/commands/person/CreatePersonCommand.d.ts.map +1 -1
- package/dist/types/model/commands/person/CreatePersonIdentityProviderIdentifierCommand.d.ts +1 -1
- package/dist/types/model/commands/person/CreatePersonIdentityProviderIdentifierCommand.d.ts.map +1 -1
- package/dist/types/model/commands/person/DisablePersonCommand.d.ts +1 -1
- package/dist/types/model/commands/person/DisablePersonCommand.d.ts.map +1 -1
- package/dist/types/model/commands/person/EnablePersonCommand.d.ts +7 -0
- package/dist/types/model/commands/person/EnablePersonCommand.d.ts.map +1 -0
- package/dist/types/model/commands/person/MarkEmailVerifiedCommand.d.ts +13 -0
- package/dist/types/model/commands/person/MarkEmailVerifiedCommand.d.ts.map +1 -0
- package/dist/types/model/commands/person/ResetPersonMfaCommand.d.ts +13 -0
- package/dist/types/model/commands/person/ResetPersonMfaCommand.d.ts.map +1 -0
- package/dist/types/model/commands/person/SetMfaGraceUntilCommand.d.ts +14 -0
- package/dist/types/model/commands/person/SetMfaGraceUntilCommand.d.ts.map +1 -0
- package/dist/types/model/commands/person/TogglePersonPasswordlessCommand.d.ts +1 -1
- package/dist/types/model/commands/person/TogglePersonPasswordlessCommand.d.ts.map +1 -1
- package/dist/types/model/commands/person/index.d.ts +7 -4
- package/dist/types/model/commands/person/index.d.ts.map +1 -1
- package/dist/types/model/commands/personToken/ActivateOtpCommand.d.ts +1 -1
- package/dist/types/model/commands/personToken/ActivateOtpCommand.d.ts.map +1 -1
- package/dist/types/model/commands/personToken/ClaimOtpAttemptCommand.d.ts +18 -0
- package/dist/types/model/commands/personToken/ClaimOtpAttemptCommand.d.ts.map +1 -0
- package/dist/types/model/commands/personToken/CreatePersonTokenCommand.d.ts +4 -1
- package/dist/types/model/commands/personToken/CreatePersonTokenCommand.d.ts.map +1 -1
- package/dist/types/model/commands/personToken/IncreaseOtpAttemptCommand.d.ts +1 -1
- package/dist/types/model/commands/personToken/IncreaseOtpAttemptCommand.d.ts.map +1 -1
- package/dist/types/model/commands/personToken/InvalidateEmailOtpTokensCommand.d.ts +11 -0
- package/dist/types/model/commands/personToken/InvalidateEmailOtpTokensCommand.d.ts.map +1 -0
- package/dist/types/model/commands/personToken/InvalidateTokenCommand.d.ts +1 -1
- package/dist/types/model/commands/personToken/InvalidateTokenCommand.d.ts.map +1 -1
- package/dist/types/model/commands/personToken/ResetPasswordCommand.d.ts +4 -4
- package/dist/types/model/commands/personToken/ResetPasswordCommand.d.ts.map +1 -1
- package/dist/types/model/commands/personToken/SaveEmailOtpTokenCommand.d.ts +24 -0
- package/dist/types/model/commands/personToken/SaveEmailOtpTokenCommand.d.ts.map +1 -0
- package/dist/types/model/commands/personToken/SavePersonTokenCommand.d.ts +6 -4
- package/dist/types/model/commands/personToken/SavePersonTokenCommand.d.ts.map +1 -1
- package/dist/types/model/commands/personToken/index.d.ts +9 -6
- package/dist/types/model/commands/personToken/index.d.ts.map +1 -1
- package/dist/types/model/commands/project/CreateProjectCommand.d.ts +2 -2
- package/dist/types/model/commands/project/CreateProjectCommand.d.ts.map +1 -1
- package/dist/types/model/commands/project/SetProjectSecretCommand.d.ts +1 -1
- package/dist/types/model/commands/project/SetProjectSecretCommand.d.ts.map +1 -1
- package/dist/types/model/commands/project/UpdateProjectCommand.d.ts +2 -2
- package/dist/types/model/commands/project/UpdateProjectCommand.d.ts.map +1 -1
- package/dist/types/model/commands/project/index.d.ts +3 -3
- package/dist/types/model/commands/project/index.d.ts.map +1 -1
- package/dist/types/model/commands/rateLimit/RecordRateLimitEventCommand.d.ts +9 -0
- package/dist/types/model/commands/rateLimit/RecordRateLimitEventCommand.d.ts.map +1 -0
- package/dist/types/model/commands/rateLimit/index.d.ts +2 -0
- package/dist/types/model/commands/rateLimit/index.d.ts.map +1 -0
- package/dist/types/model/consts/expirations.d.ts +2 -0
- package/dist/types/model/consts/expirations.d.ts.map +1 -1
- package/dist/types/model/dtos/Password.d.ts +1 -1
- package/dist/types/model/dtos/Password.d.ts.map +1 -1
- package/dist/types/model/dtos/index.d.ts +1 -1
- package/dist/types/model/dtos/index.d.ts.map +1 -1
- package/dist/types/model/index.d.ts +9 -9
- package/dist/types/model/index.d.ts.map +1 -1
- package/dist/types/model/mailing/UserMailer.d.ts +59 -2
- package/dist/types/model/mailing/UserMailer.d.ts.map +1 -1
- package/dist/types/model/mailing/index.d.ts +2 -2
- package/dist/types/model/mailing/index.d.ts.map +1 -1
- package/dist/types/model/mailing/templates/BackupCodesExhausted.mustache.d.ts +3 -0
- package/dist/types/model/mailing/templates/BackupCodesExhausted.mustache.d.ts.map +1 -0
- package/dist/types/model/mailing/templates/EmailChangeNotify.mustache.d.ts +3 -0
- package/dist/types/model/mailing/templates/EmailChangeNotify.mustache.d.ts.map +1 -0
- package/dist/types/model/mailing/templates/EmailChangeVerify.mustache.d.ts +3 -0
- package/dist/types/model/mailing/templates/EmailChangeVerify.mustache.d.ts.map +1 -0
- package/dist/types/model/mailing/templates/EmailOtp.mustache.d.ts +3 -0
- package/dist/types/model/mailing/templates/EmailOtp.mustache.d.ts.map +1 -0
- package/dist/types/model/mailing/templates/EmailVerification.mustache.d.ts +3 -0
- package/dist/types/model/mailing/templates/EmailVerification.mustache.d.ts.map +1 -0
- package/dist/types/model/mailing/templates/ExistingUserInvited.mustache.d.ts.map +1 -1
- package/dist/types/model/mailing/templates/ForcedSignOut.mustache.d.ts +3 -0
- package/dist/types/model/mailing/templates/ForcedSignOut.mustache.d.ts.map +1 -0
- package/dist/types/model/mailing/templates/Layout.mustache.d.ts.map +1 -1
- package/dist/types/model/mailing/templates/NewUserInvited.mustache.d.ts.map +1 -1
- package/dist/types/model/mailing/templates/PasswordReset.mustache.d.ts.map +1 -1
- package/dist/types/model/mailing/templates/PasswordlessSignIn.mustache.d.ts.map +1 -1
- package/dist/types/model/mailing/templates/UnusualLogin.mustache.d.ts +3 -0
- package/dist/types/model/mailing/templates/UnusualLogin.mustache.d.ts.map +1 -0
- package/dist/types/model/mailing/type.d.ts +9 -2
- package/dist/types/model/mailing/type.d.ts.map +1 -1
- package/dist/types/model/providers.d.ts +8 -0
- package/dist/types/model/providers.d.ts.map +1 -1
- package/dist/types/model/queries/apiKey/ApiKeyListQuery.d.ts +23 -0
- package/dist/types/model/queries/apiKey/ApiKeyListQuery.d.ts.map +1 -0
- package/dist/types/model/queries/apiKey/ApiKeyQuery.d.ts +13 -1
- package/dist/types/model/queries/apiKey/ApiKeyQuery.d.ts.map +1 -1
- package/dist/types/model/queries/apiKey/ApiKeySessionsQuery.d.ts +18 -0
- package/dist/types/model/queries/apiKey/ApiKeySessionsQuery.d.ts.map +1 -0
- package/dist/types/model/queries/apiKey/index.d.ts +3 -1
- package/dist/types/model/queries/apiKey/index.d.ts.map +1 -1
- package/dist/types/model/queries/authLog/AuthLogQuery.d.ts +48 -0
- package/dist/types/model/queries/authLog/AuthLogQuery.d.ts.map +1 -0
- package/dist/types/model/queries/authLog/NextLoginAttemptQuery.d.ts +2 -2
- package/dist/types/model/queries/authLog/NextLoginAttemptQuery.d.ts.map +1 -1
- package/dist/types/model/queries/authLog/NextMailAttemptQuery.d.ts +21 -0
- package/dist/types/model/queries/authLog/NextMailAttemptQuery.d.ts.map +1 -0
- package/dist/types/model/queries/authPolicy/AuthPoliciesQuery.d.ts +15 -0
- package/dist/types/model/queries/authPolicy/AuthPoliciesQuery.d.ts.map +1 -0
- package/dist/types/model/queries/authPolicy/index.d.ts +2 -0
- package/dist/types/model/queries/authPolicy/index.d.ts.map +1 -0
- package/dist/types/model/queries/configuration/ConfigurationQuery.d.ts +4 -1
- package/dist/types/model/queries/configuration/ConfigurationQuery.d.ts.map +1 -1
- package/dist/types/model/queries/configuration/index.d.ts +1 -1
- package/dist/types/model/queries/configuration/index.d.ts.map +1 -1
- package/dist/types/model/queries/customRole/CustomRolesQuery.d.ts +12 -0
- package/dist/types/model/queries/customRole/CustomRolesQuery.d.ts.map +1 -0
- package/dist/types/model/queries/customRole/index.d.ts +2 -0
- package/dist/types/model/queries/customRole/index.d.ts.map +1 -0
- package/dist/types/model/queries/identity/IdentitiesHoldingRoleCountQuery.d.ts +8 -0
- package/dist/types/model/queries/identity/IdentitiesHoldingRoleCountQuery.d.ts.map +1 -0
- package/dist/types/model/queries/identity/IdentityQuery.d.ts +3 -2
- package/dist/types/model/queries/identity/IdentityQuery.d.ts.map +1 -1
- package/dist/types/model/queries/identity/index.d.ts +2 -1
- package/dist/types/model/queries/identity/index.d.ts.map +1 -1
- package/dist/types/model/queries/idp/IdentityProviderBySlugQuery.d.ts +1 -1
- package/dist/types/model/queries/idp/IdentityProviderBySlugQuery.d.ts.map +1 -1
- package/dist/types/model/queries/idp/IdentityProvidersQuery.d.ts +1 -1
- package/dist/types/model/queries/idp/IdentityProvidersQuery.d.ts.map +1 -1
- package/dist/types/model/queries/idp/IdpSessionByApiKeyQuery.d.ts +28 -0
- package/dist/types/model/queries/idp/IdpSessionByApiKeyQuery.d.ts.map +1 -0
- package/dist/types/model/queries/idp/IdpSessionsBySidQuery.d.ts +18 -0
- package/dist/types/model/queries/idp/IdpSessionsBySidQuery.d.ts.map +1 -0
- package/dist/types/model/queries/idp/IdpSessionsBySubQuery.d.ts +24 -0
- package/dist/types/model/queries/idp/IdpSessionsBySubQuery.d.ts.map +1 -0
- package/dist/types/model/queries/idp/LocalAuthDisablingIdpsQuery.d.ts +18 -0
- package/dist/types/model/queries/idp/LocalAuthDisablingIdpsQuery.d.ts.map +1 -0
- package/dist/types/model/queries/idp/PersonIdentityProvidersQuery.d.ts +21 -0
- package/dist/types/model/queries/idp/PersonIdentityProvidersQuery.d.ts.map +1 -0
- package/dist/types/model/queries/idp/helpers.d.ts +2 -2
- package/dist/types/model/queries/idp/helpers.d.ts.map +1 -1
- package/dist/types/model/queries/idp/index.d.ts +7 -2
- package/dist/types/model/queries/idp/index.d.ts.map +1 -1
- package/dist/types/model/queries/idp/types.d.ts +4 -1
- package/dist/types/model/queries/idp/types.d.ts.map +1 -1
- package/dist/types/model/queries/index.d.ts +11 -8
- package/dist/types/model/queries/index.d.ts.map +1 -1
- package/dist/types/model/queries/mailTemplate/MailTemplateListQuery.d.ts +1 -1
- package/dist/types/model/queries/mailTemplate/MailTemplateListQuery.d.ts.map +1 -1
- package/dist/types/model/queries/mailTemplate/MailTemplateQuery.d.ts +2 -2
- package/dist/types/model/queries/mailTemplate/MailTemplateQuery.d.ts.map +1 -1
- package/dist/types/model/queries/mailTemplate/helpers.d.ts +1 -1
- package/dist/types/model/queries/mailTemplate/helpers.d.ts.map +1 -1
- package/dist/types/model/queries/mailTemplate/index.d.ts +2 -2
- package/dist/types/model/queries/mailTemplate/index.d.ts.map +1 -1
- package/dist/types/model/queries/membership/AllProjectRolesByIdentityQuery.d.ts +24 -0
- package/dist/types/model/queries/membership/AllProjectRolesByIdentityQuery.d.ts.map +1 -0
- package/dist/types/model/queries/membership/IdentityHasProjectMembershipsQuery.d.ts +7 -0
- package/dist/types/model/queries/membership/IdentityHasProjectMembershipsQuery.d.ts.map +1 -0
- package/dist/types/model/queries/membership/ProjectMembersQuery.d.ts +1 -1
- package/dist/types/model/queries/membership/ProjectMembersQuery.d.ts.map +1 -1
- package/dist/types/model/queries/membership/ProjectMembershipByIdentityQuery.d.ts.map +1 -1
- package/dist/types/model/queries/membership/ProjectRolesByIdentityQuery.d.ts.map +1 -1
- package/dist/types/model/queries/membership/ProjectSlugSpecification.d.ts.map +1 -1
- package/dist/types/model/queries/membership/index.d.ts +5 -3
- package/dist/types/model/queries/membership/index.d.ts.map +1 -1
- package/dist/types/model/queries/person/PersonByIdPQuery.d.ts +1 -1
- package/dist/types/model/queries/person/PersonByIdPQuery.d.ts.map +1 -1
- package/dist/types/model/queries/person/PersonByIdentityBatchQuery.d.ts +1 -1
- package/dist/types/model/queries/person/PersonByIdentityBatchQuery.d.ts.map +1 -1
- package/dist/types/model/queries/person/PersonQuery.d.ts +1 -1
- package/dist/types/model/queries/person/PersonQuery.d.ts.map +1 -1
- package/dist/types/model/queries/person/PersonQueryBuilderFactory.d.ts +7 -1
- package/dist/types/model/queries/person/PersonQueryBuilderFactory.d.ts.map +1 -1
- package/dist/types/model/queries/person/PersonsQuery.d.ts +25 -0
- package/dist/types/model/queries/person/PersonsQuery.d.ts.map +1 -0
- package/dist/types/model/queries/person/index.d.ts +5 -4
- package/dist/types/model/queries/person/index.d.ts.map +1 -1
- package/dist/types/model/queries/person/types.d.ts +28 -1
- package/dist/types/model/queries/person/types.d.ts.map +1 -1
- package/dist/types/model/queries/personToken/PersonTokenQuery.d.ts +4 -1
- package/dist/types/model/queries/personToken/PersonTokenQuery.d.ts.map +1 -1
- package/dist/types/model/queries/project/ProjectBySlugQuery.d.ts +1 -1
- package/dist/types/model/queries/project/ProjectBySlugQuery.d.ts.map +1 -1
- package/dist/types/model/queries/project/ProjectSecretKeysQuery.d.ts +17 -0
- package/dist/types/model/queries/project/ProjectSecretKeysQuery.d.ts.map +1 -0
- package/dist/types/model/queries/project/ProjectSecretsQuery.d.ts +1 -1
- package/dist/types/model/queries/project/ProjectSecretsQuery.d.ts.map +1 -1
- package/dist/types/model/queries/project/ProjectUpdateTimestampQuery.d.ts.map +1 -1
- package/dist/types/model/queries/project/ProjectsByIdentityQuery.d.ts +2 -2
- package/dist/types/model/queries/project/ProjectsByIdentityQuery.d.ts.map +1 -1
- package/dist/types/model/queries/project/ProjectsQuery.d.ts +1 -1
- package/dist/types/model/queries/project/ProjectsQuery.d.ts.map +1 -1
- package/dist/types/model/queries/project/index.d.ts +6 -5
- package/dist/types/model/queries/project/index.d.ts.map +1 -1
- package/dist/types/model/queries/rateLimit/RateLimitCountQuery.d.ts +10 -0
- package/dist/types/model/queries/rateLimit/RateLimitCountQuery.d.ts.map +1 -0
- package/dist/types/model/queries/rateLimit/index.d.ts +2 -0
- package/dist/types/model/queries/rateLimit/index.d.ts.map +1 -0
- package/dist/types/model/service/AuthLogService.d.ts +27 -3
- package/dist/types/model/service/AuthLogService.d.ts.map +1 -1
- package/dist/types/model/service/AuthPolicyManager.d.ts +37 -0
- package/dist/types/model/service/AuthPolicyManager.d.ts.map +1 -0
- package/dist/types/model/service/AuthPolicyResolver.d.ts +25 -0
- package/dist/types/model/service/AuthPolicyResolver.d.ts.map +1 -0
- package/dist/types/model/service/BackupCodeManager.d.ts +36 -0
- package/dist/types/model/service/BackupCodeManager.d.ts.map +1 -0
- package/dist/types/model/service/ConfigurationManager.d.ts +3 -3
- package/dist/types/model/service/ConfigurationManager.d.ts.map +1 -1
- package/dist/types/model/service/CustomRoleManager.d.ts +46 -0
- package/dist/types/model/service/CustomRoleManager.d.ts.map +1 -0
- package/dist/types/model/service/EmailChangeManager.d.ts +41 -0
- package/dist/types/model/service/EmailChangeManager.d.ts.map +1 -0
- package/dist/types/model/service/EmailOtpManager.d.ts +45 -0
- package/dist/types/model/service/EmailOtpManager.d.ts.map +1 -0
- package/dist/types/model/service/EmailValidator.d.ts +4 -3
- package/dist/types/model/service/EmailValidator.d.ts.map +1 -1
- package/dist/types/model/service/EmailVerificationManager.d.ts +33 -0
- package/dist/types/model/service/EmailVerificationManager.d.ts.map +1 -0
- package/dist/types/model/service/GlobalRoleValidator.d.ts +5 -0
- package/dist/types/model/service/GlobalRoleValidator.d.ts.map +1 -0
- package/dist/types/model/service/HibpChecker.d.ts +25 -0
- package/dist/types/model/service/HibpChecker.d.ts.map +1 -0
- package/dist/types/model/service/IDPSignInManager.d.ts +27 -9
- package/dist/types/model/service/IDPSignInManager.d.ts.map +1 -1
- package/dist/types/model/service/InviteManager.d.ts +7 -7
- package/dist/types/model/service/InviteManager.d.ts.map +1 -1
- package/dist/types/model/service/LoginRiskAnalyzer.d.ts +97 -0
- package/dist/types/model/service/LoginRiskAnalyzer.d.ts.map +1 -0
- package/dist/types/model/service/MailTemplateManager.d.ts +2 -2
- package/dist/types/model/service/MailTemplateManager.d.ts.map +1 -1
- package/dist/types/model/service/MembershipValidator.d.ts +1 -1
- package/dist/types/model/service/MembershipValidator.d.ts.map +1 -1
- package/dist/types/model/service/OtpAuthenticator.d.ts +1 -1
- package/dist/types/model/service/OtpAuthenticator.d.ts.map +1 -1
- package/dist/types/model/service/OtpManager.d.ts +21 -6
- package/dist/types/model/service/OtpManager.d.ts.map +1 -1
- package/dist/types/model/service/PanelAccessResolver.d.ts +19 -0
- package/dist/types/model/service/PanelAccessResolver.d.ts.map +1 -0
- package/dist/types/model/service/PasswordChangeManager.d.ts +6 -6
- package/dist/types/model/service/PasswordChangeManager.d.ts.map +1 -1
- package/dist/types/model/service/PasswordResetManager.d.ts +9 -9
- package/dist/types/model/service/PasswordResetManager.d.ts.map +1 -1
- package/dist/types/model/service/PasswordStrengthValidator.d.ts +6 -3
- package/dist/types/model/service/PasswordStrengthValidator.d.ts.map +1 -1
- package/dist/types/model/service/PasswordlessSignInManager.d.ts +22 -15
- package/dist/types/model/service/PasswordlessSignInManager.d.ts.map +1 -1
- package/dist/types/model/service/PersonAccessManager.d.ts +7 -5
- package/dist/types/model/service/PersonAccessManager.d.ts.map +1 -1
- package/dist/types/model/service/PersonManager.d.ts +6 -5
- package/dist/types/model/service/PersonManager.d.ts.map +1 -1
- package/dist/types/model/service/ProjectManager.d.ts +7 -7
- package/dist/types/model/service/ProjectManager.d.ts.map +1 -1
- package/dist/types/model/service/ProjectMemberManager.d.ts +5 -5
- package/dist/types/model/service/ProjectMemberManager.d.ts.map +1 -1
- package/dist/types/model/service/RateLimiter.d.ts +46 -0
- package/dist/types/model/service/RateLimiter.d.ts.map +1 -0
- package/dist/types/model/service/RolesManager.d.ts +8 -3
- package/dist/types/model/service/RolesManager.d.ts.map +1 -1
- package/dist/types/model/service/SecretsManager.d.ts +5 -2
- package/dist/types/model/service/SecretsManager.d.ts.map +1 -1
- package/dist/types/model/service/SignInManager.d.ts +72 -11
- package/dist/types/model/service/SignInManager.d.ts.map +1 -1
- package/dist/types/model/service/SignOutManager.d.ts +31 -0
- package/dist/types/model/service/SignOutManager.d.ts.map +1 -0
- package/dist/types/model/service/SignUpManager.d.ts +16 -10
- package/dist/types/model/service/SignUpManager.d.ts.map +1 -1
- package/dist/types/model/service/apiKey/ApiKeyManager.d.ts +32 -10
- package/dist/types/model/service/apiKey/ApiKeyManager.d.ts.map +1 -1
- package/dist/types/model/service/apiKey/ApiKeyService.d.ts +6 -6
- package/dist/types/model/service/apiKey/ApiKeyService.d.ts.map +1 -1
- package/dist/types/model/service/apiKey/UnpersistedApiKeyManager.d.ts +56 -0
- package/dist/types/model/service/apiKey/UnpersistedApiKeyManager.d.ts.map +1 -0
- package/dist/types/model/service/apiKey/index.d.ts +3 -2
- package/dist/types/model/service/apiKey/index.d.ts.map +1 -1
- package/dist/types/model/service/captcha/CaptchaProvider.d.ts +24 -0
- package/dist/types/model/service/captcha/CaptchaProvider.d.ts.map +1 -0
- package/dist/types/model/service/captcha/CaptchaValidator.d.ts +37 -0
- package/dist/types/model/service/captcha/CaptchaValidator.d.ts.map +1 -0
- package/dist/types/model/service/captcha/HCaptchaProvider.d.ts +9 -0
- package/dist/types/model/service/captcha/HCaptchaProvider.d.ts.map +1 -0
- package/dist/types/model/service/captcha/RecaptchaV3Provider.d.ts +12 -0
- package/dist/types/model/service/captcha/RecaptchaV3Provider.d.ts.map +1 -0
- package/dist/types/model/service/captcha/TurnstileProvider.d.ts +12 -0
- package/dist/types/model/service/captcha/TurnstileProvider.d.ts.map +1 -0
- package/dist/types/model/service/captcha/index.d.ts +6 -0
- package/dist/types/model/service/captcha/index.d.ts.map +1 -0
- package/dist/types/model/service/helpers/getPreferredProject.d.ts +1 -1
- package/dist/types/model/service/helpers/getPreferredProject.d.ts.map +1 -1
- package/dist/types/model/service/helpers/isPasswordlessEnabled.d.ts +10 -0
- package/dist/types/model/service/helpers/isPasswordlessEnabled.d.ts.map +1 -0
- package/dist/types/model/service/idp/BackchannelLogoutManager.d.ts +34 -0
- package/dist/types/model/service/idp/BackchannelLogoutManager.d.ts.map +1 -0
- package/dist/types/model/service/idp/ClaimMapping.d.ts +330 -0
- package/dist/types/model/service/idp/ClaimMapping.d.ts.map +1 -0
- package/dist/types/model/service/idp/ClaimMappingEvaluator.d.ts +30 -0
- package/dist/types/model/service/idp/ClaimMappingEvaluator.d.ts.map +1 -0
- package/dist/types/model/service/idp/ClaimMappingValidation.d.ts +55 -0
- package/dist/types/model/service/idp/ClaimMappingValidation.d.ts.map +1 -0
- package/dist/types/model/service/idp/IDPClaimSyncService.d.ts +113 -0
- package/dist/types/model/service/idp/IDPClaimSyncService.d.ts.map +1 -0
- package/dist/types/model/service/idp/IDPHandlerRegistry.d.ts +1 -1
- package/dist/types/model/service/idp/IDPHandlerRegistry.d.ts.map +1 -1
- package/dist/types/model/service/idp/IDPManager.d.ts +23 -11
- package/dist/types/model/service/idp/IDPManager.d.ts.map +1 -1
- package/dist/types/model/service/idp/IDPRevalidation.d.ts +54 -0
- package/dist/types/model/service/idp/IDPRevalidation.d.ts.map +1 -0
- package/dist/types/model/service/idp/IdentityProviderHandler.d.ts +73 -0
- package/dist/types/model/service/idp/IdentityProviderHandler.d.ts.map +1 -1
- package/dist/types/model/service/idp/IdpSessionRevalidator.d.ts +55 -0
- package/dist/types/model/service/idp/IdpSessionRevalidator.d.ts.map +1 -0
- package/dist/types/model/service/idp/PersonIdentityProviderManager.d.ts +24 -0
- package/dist/types/model/service/idp/PersonIdentityProviderManager.d.ts.map +1 -0
- package/dist/types/model/service/idp/index.d.ts +18 -10
- package/dist/types/model/service/idp/index.d.ts.map +1 -1
- package/dist/types/model/service/idp/providers/AppleProvider.d.ts +37 -1
- package/dist/types/model/service/idp/providers/AppleProvider.d.ts.map +1 -1
- package/dist/types/model/service/idp/providers/FacebookProvider.d.ts +37 -1
- package/dist/types/model/service/idp/providers/FacebookProvider.d.ts.map +1 -1
- package/dist/types/model/service/idp/providers/OIDCHelpers.d.ts +60 -4
- package/dist/types/model/service/idp/providers/OIDCHelpers.d.ts.map +1 -1
- package/dist/types/model/service/idp/providers/OIDCProvider.d.ts +28 -2
- package/dist/types/model/service/idp/providers/OIDCProvider.d.ts.map +1 -1
- package/dist/types/model/service/idp/providers/OIDCTypes.d.ts +147 -0
- package/dist/types/model/service/idp/providers/OIDCTypes.d.ts.map +1 -1
- package/dist/types/model/service/idp/providers/helpers.d.ts.map +1 -1
- package/dist/types/model/service/index.d.ts +33 -19
- package/dist/types/model/service/index.d.ts.map +1 -1
- package/dist/types/model/service/membershipUtils.d.ts +1 -1
- package/dist/types/model/service/membershipUtils.d.ts.map +1 -1
- package/dist/types/model/type/AuthLog.d.ts +1 -1
- package/dist/types/model/type/AuthLog.d.ts.map +1 -1
- package/dist/types/model/type/AuthPolicy.d.ts +30 -0
- package/dist/types/model/type/AuthPolicy.d.ts.map +1 -0
- package/dist/types/model/type/Config.d.ts +41 -4
- package/dist/types/model/type/Config.d.ts.map +1 -1
- package/dist/types/model/type/CustomRole.d.ts +9 -0
- package/dist/types/model/type/CustomRole.d.ts.map +1 -0
- package/dist/types/model/type/IdentityProvider.d.ts +4 -0
- package/dist/types/model/type/IdentityProvider.d.ts.map +1 -1
- package/dist/types/model/type/PersonToken.d.ts +12 -1
- package/dist/types/model/type/PersonToken.d.ts.map +1 -1
- package/dist/types/model/type/RateLimit.d.ts +10 -0
- package/dist/types/model/type/RateLimit.d.ts.map +1 -0
- package/dist/types/model/type/index.d.ts +8 -5
- package/dist/types/model/type/index.d.ts.map +1 -1
- package/dist/types/model/utils/DatabaseContext.d.ts +4 -3
- package/dist/types/model/utils/DatabaseContext.d.ts.map +1 -1
- package/dist/types/model/utils/Response.d.ts.map +1 -1
- package/dist/types/model/utils/email.d.ts.map +1 -1
- package/dist/types/model/utils/hex.d.ts.map +1 -1
- package/dist/types/model/utils/index.d.ts +2 -2
- package/dist/types/model/utils/index.d.ts.map +1 -1
- package/dist/types/model/utils/interval.d.ts +6 -0
- package/dist/types/model/utils/interval.d.ts.map +1 -1
- package/dist/types/model/utils/time.d.ts.map +1 -1
- package/dist/types/model/utils/token.d.ts +11 -5
- package/dist/types/model/utils/token.d.ts.map +1 -1
- package/dist/types/resolvers/Resolver.d.ts +1 -1
- package/dist/types/resolvers/Resolver.d.ts.map +1 -1
- package/dist/types/resolvers/ResolverFactory.d.ts +37 -12
- package/dist/types/resolvers/ResolverFactory.d.ts.map +1 -1
- package/dist/types/resolvers/TenantResolverContext.d.ts +11 -3
- package/dist/types/resolvers/TenantResolverContext.d.ts.map +1 -1
- package/dist/types/resolvers/TenantResolverContextFactory.d.ts +18 -9
- package/dist/types/resolvers/TenantResolverContextFactory.d.ts.map +1 -1
- package/dist/types/resolvers/errorUtils.d.ts +1 -1
- package/dist/types/resolvers/errorUtils.d.ts.map +1 -1
- package/dist/types/resolvers/index.d.ts +6 -6
- package/dist/types/resolvers/index.d.ts.map +1 -1
- package/dist/types/resolvers/membershipUtils.d.ts +2 -2
- package/dist/types/resolvers/membershipUtils.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.d.ts +5 -5
- package/dist/types/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/apiKey/index.d.ts +2 -2
- package/dist/types/resolvers/mutation/apiKey/index.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/configuration/AuthPolicyMutationResolver.d.ts +17 -0
- package/dist/types/resolvers/mutation/configuration/AuthPolicyMutationResolver.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/configuration/ConfigurationMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/configuration/ConfigurationMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/customRole/CustomRoleMutationResolver.d.ts +16 -0
- package/dist/types/resolvers/mutation/customRole/CustomRoleMutationResolver.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/identity/GlobalRolesMutationResolver.d.ts +4 -3
- package/dist/types/resolvers/mutation/identity/GlobalRolesMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/identity/index.d.ts +1 -1
- package/dist/types/resolvers/mutation/identity/index.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/idp/AddIDPMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/idp/AddIDPMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/idp/DisableIDPMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/idp/DisableIDPMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/idp/DisconnectMyIdentityProviderMutationResolver.d.ts +9 -0
- package/dist/types/resolvers/mutation/idp/DisconnectMyIdentityProviderMutationResolver.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/idp/EnableIDPMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/idp/EnableIDPMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/idp/UpdateIDPMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/idp/UpdateIDPMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/idp/audit.d.ts +4 -0
- package/dist/types/resolvers/mutation/idp/audit.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/idp/index.d.ts +4 -3
- package/dist/types/resolvers/mutation/idp/index.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/index.d.ts +7 -7
- package/dist/types/resolvers/mutation/index.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.d.ts +5 -3
- package/dist/types/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/mailTemplates/index.d.ts +1 -1
- package/dist/types/resolvers/mutation/mailTemplates/index.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/ChangePasswordMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/person/ChangePasswordMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/ChangeProfileMutationResolver.d.ts +8 -5
- package/dist/types/resolvers/mutation/person/ChangeProfileMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/DisablePersonMutationResolver.d.ts +5 -5
- package/dist/types/resolvers/mutation/person/DisablePersonMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/EmailOtpMutationResolver.d.ts +14 -0
- package/dist/types/resolvers/mutation/person/EmailOtpMutationResolver.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/person/EmailVerificationMutationResolver.d.ts +14 -0
- package/dist/types/resolvers/mutation/person/EmailVerificationMutationResolver.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/person/EnablePersonMutationResolver.d.ts +11 -0
- package/dist/types/resolvers/mutation/person/EnablePersonMutationResolver.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/person/ForceSignOutMutationResolver.d.ts +13 -0
- package/dist/types/resolvers/mutation/person/ForceSignOutMutationResolver.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/person/IDPMutationResolver.d.ts +4 -4
- package/dist/types/resolvers/mutation/person/IDPMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/InviteMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/person/InviteMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/OtpMutationResolver.d.ts +6 -4
- package/dist/types/resolvers/mutation/person/OtpMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/PasswordlessMutationResolver.d.ts +8 -5
- package/dist/types/resolvers/mutation/person/PasswordlessMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/RegenerateBackupCodesMutationResolver.d.ts +10 -0
- package/dist/types/resolvers/mutation/person/RegenerateBackupCodesMutationResolver.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/person/ResetPasswordMutationResolver.d.ts +6 -4
- package/dist/types/resolvers/mutation/person/ResetPasswordMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/ResetPersonMfaMutationResolver.d.ts +18 -0
- package/dist/types/resolvers/mutation/person/ResetPersonMfaMutationResolver.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/person/RevokeSessionMutationResolver.d.ts +9 -0
- package/dist/types/resolvers/mutation/person/RevokeSessionMutationResolver.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/person/SignInMutationResolver.d.ts +6 -5
- package/dist/types/resolvers/mutation/person/SignInMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/SignOutMutationResolver.d.ts +5 -5
- package/dist/types/resolvers/mutation/person/SignOutMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/SignUpMutationResolver.d.ts +8 -4
- package/dist/types/resolvers/mutation/person/SignUpMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/TogglePasswordlessMutationResolver.d.ts +4 -4
- package/dist/types/resolvers/mutation/person/TogglePasswordlessMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/index.d.ts +12 -9
- package/dist/types/resolvers/mutation/person/index.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/project/CreateProjectMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/project/CreateProjectMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/project/SetProjectSecretMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/project/SetProjectSecretMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/project/UpdateProjectMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/project/UpdateProjectMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/project/index.d.ts +3 -3
- package/dist/types/resolvers/mutation/project/index.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.d.ts +3 -3
- package/dist/types/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/projectMember/audit.d.ts +5 -0
- package/dist/types/resolvers/mutation/projectMember/audit.d.ts.map +1 -0
- package/dist/types/resolvers/mutation/projectMember/index.d.ts +3 -3
- package/dist/types/resolvers/mutation/projectMember/index.d.ts.map +1 -1
- package/dist/types/resolvers/query/ApiKeyQueryResolver.d.ts +6 -0
- package/dist/types/resolvers/query/ApiKeyQueryResolver.d.ts.map +1 -0
- package/dist/types/resolvers/query/AuthLogQueryResolver.d.ts +6 -0
- package/dist/types/resolvers/query/AuthLogQueryResolver.d.ts.map +1 -0
- package/dist/types/resolvers/query/AuthPolicyQueryResolver.d.ts +14 -0
- package/dist/types/resolvers/query/AuthPolicyQueryResolver.d.ts.map +1 -0
- package/dist/types/resolvers/query/ConfigurationQueryResolver.d.ts +3 -3
- package/dist/types/resolvers/query/ConfigurationQueryResolver.d.ts.map +1 -1
- package/dist/types/resolvers/query/CustomRoleQueryResolver.d.ts +11 -0
- package/dist/types/resolvers/query/CustomRoleQueryResolver.d.ts.map +1 -0
- package/dist/types/resolvers/query/IDPQueryResolver.d.ts +3 -3
- package/dist/types/resolvers/query/IDPQueryResolver.d.ts.map +1 -1
- package/dist/types/resolvers/query/MailTemplateQueryResolver.d.ts +3 -2
- package/dist/types/resolvers/query/MailTemplateQueryResolver.d.ts.map +1 -1
- package/dist/types/resolvers/query/MeQueryResolver.d.ts +2 -2
- package/dist/types/resolvers/query/MeQueryResolver.d.ts.map +1 -1
- package/dist/types/resolvers/query/PersonQueryResolver.d.ts +7 -4
- package/dist/types/resolvers/query/PersonQueryResolver.d.ts.map +1 -1
- package/dist/types/resolvers/query/ProjectMembersQueryResolver.d.ts +3 -3
- package/dist/types/resolvers/query/ProjectMembersQueryResolver.d.ts.map +1 -1
- package/dist/types/resolvers/query/ProjectQueryResolver.d.ts +3 -3
- package/dist/types/resolvers/query/ProjectQueryResolver.d.ts.map +1 -1
- package/dist/types/resolvers/query/index.d.ts +6 -4
- package/dist/types/resolvers/query/index.d.ts.map +1 -1
- package/dist/types/resolvers/responseHelpers/ApiKeyResponseFactory.d.ts +6 -0
- package/dist/types/resolvers/responseHelpers/ApiKeyResponseFactory.d.ts.map +1 -0
- package/dist/types/resolvers/responseHelpers/PersonResponseFactory.d.ts +3 -3
- package/dist/types/resolvers/responseHelpers/PersonResponseFactory.d.ts.map +1 -1
- package/dist/types/resolvers/responseHelpers/ProjectResponseFactory.d.ts +10 -0
- package/dist/types/resolvers/responseHelpers/ProjectResponseFactory.d.ts.map +1 -0
- package/dist/types/resolvers/responseHelpers/SignInResponseFactory.d.ts +6 -4
- package/dist/types/resolvers/responseHelpers/SignInResponseFactory.d.ts.map +1 -1
- package/dist/types/resolvers/types/IdentityTypeResolver.d.ts +7 -3
- package/dist/types/resolvers/types/IdentityTypeResolver.d.ts.map +1 -1
- package/dist/types/resolvers/types/PersonTypeResolver.d.ts +23 -0
- package/dist/types/resolvers/types/PersonTypeResolver.d.ts.map +1 -0
- package/dist/types/resolvers/types/ProjectTypeResolver.d.ts +21 -9
- package/dist/types/resolvers/types/ProjectTypeResolver.d.ts.map +1 -1
- package/dist/types/resolvers/types/index.d.ts +3 -2
- package/dist/types/resolvers/types/index.d.ts.map +1 -1
- package/dist/types/schema/index.d.ts +1577 -150
- package/dist/types/schema/index.d.ts.map +1 -1
- package/dist/types/schema/tenant.graphql.d.ts.map +1 -1
- package/dist/types/schema/types.d.ts +2 -2
- package/dist/types/schema/types.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/dist/types/utils/Mailer.d.ts +1 -1
- package/dist/types/utils/Mailer.d.ts.map +1 -1
- package/dist/types/utils/TemplateRenderer.d.ts.map +1 -1
- package/dist/types/utils/array.d.ts.map +1 -1
- package/dist/types/utils/batchQuery.d.ts +1 -1
- package/dist/types/utils/batchQuery.d.ts.map +1 -1
- package/dist/types/utils/index.d.ts +2 -2
- package/dist/types/utils/index.d.ts.map +1 -1
- package/package.json +12 -12
- package/readme.md +56 -0
- package/src/TenantContainer.ts +225 -50
- package/src/bin/runMigrations.ts +1 -1
- package/src/bridges/system/IdentityFetcher.ts +1 -1
- package/src/index.ts +7 -6
- package/src/migrations/2020-06-08-134000-tenant-credentials.ts +2 -2
- package/src/migrations/2026-05-12-120000-api-key-session-tracking.ts +23 -0
- package/src/migrations/2026-05-12-130000-api-key-trust-forwarded-info.ts +10 -0
- package/src/migrations/2026-05-13-120000-auth-log-event-data.ts +16 -0
- package/src/migrations/2026-05-13-130000-anti-abuse.ts +44 -0
- package/src/migrations/2026-05-14-100000-auth-log-admin-actions.ts +20 -0
- package/src/migrations/2026-05-15-120000-config-reveal-login-method.ts +10 -0
- package/src/migrations/2026-05-21-100000-person-mfa.ts +26 -0
- package/src/migrations/2026-05-21-110000-mfa-foundation.ts +43 -0
- package/src/migrations/2026-05-21-120000-email-otp.ts +9 -0
- package/src/migrations/2026-05-21-130000-api-key-session-policy.ts +11 -0
- package/src/migrations/2026-05-21-140000-mfa-grace-duration.ts +10 -0
- package/src/migrations/2026-05-21-150000-email-otp-rate-limit.ts +18 -0
- package/src/migrations/2026-05-26-120000-email-verification-types.ts +18 -0
- package/src/migrations/2026-05-26-120010-email-verification.ts +28 -0
- package/src/migrations/2026-05-26-130000-email-change-verification-config.ts +19 -0
- package/src/migrations/2026-05-26-130010-idp-require-verified-email.ts +15 -0
- package/src/migrations/2026-05-26-130020-email-verification-rate-limit.ts +17 -0
- package/src/migrations/2026-05-26-130030-captcha-protect-flows.ts +22 -0
- package/src/migrations/2026-05-26-140000-idp-session.ts +31 -0
- package/src/migrations/2026-06-08-100000-idp-assume-email-verified.ts +15 -0
- package/src/migrations/2026-06-16-120000-login-anomaly-detection.ts +34 -0
- package/src/migrations/2026-06-16-130000-idp-logout.ts +10 -0
- package/src/migrations/2026-06-18-120000-idp-claim-mapping.ts +15 -0
- package/src/migrations/2026-08-03-120000-person-enable-auth-log.ts +12 -0
- package/src/migrations/2026-08-04-120000-config-panel.ts +13 -0
- package/src/migrations/2026-09-04-120000-idp-disable-local-authentication.ts +18 -0
- package/src/migrations/2026-09-11-120000-custom-role.ts +19 -0
- package/src/migrations/index.ts +2 -2
- package/src/migrations/runner.ts +107 -42
- package/src/migrations/snapshot-factory.ts +2 -2
- package/src/migrations/snapshot-template-start.txt +2 -2
- package/src/migrations/snapshot.ts +200 -12
- package/src/migrations/tenantCredentials.ts +1 -1
- package/src/migrations/types.ts +1 -1
- package/src/model/authorization/AclSchemaAccessNodeFactory.ts +3 -3
- package/src/model/authorization/CustomRoleAuthorizator.ts +72 -0
- package/src/model/authorization/CustomRolePermissions.ts +558 -0
- package/src/model/authorization/Identity.ts +2 -2
- package/src/model/authorization/IdentityFactory.ts +3 -3
- package/src/model/authorization/IdentityScope.ts +2 -2
- package/src/model/authorization/PermissionActions.ts +80 -13
- package/src/model/authorization/PermissionContext.ts +3 -3
- package/src/model/authorization/PermissionContextFactory.ts +44 -8
- package/src/model/authorization/PermissionsFactory.ts +68 -27
- package/src/model/authorization/ProjectScope.ts +4 -4
- package/src/model/authorization/ProjectScopeFactory.ts +4 -4
- package/src/model/authorization/Roles.ts +13 -0
- package/src/model/authorization/TargetIdentityPermission.ts +37 -0
- package/src/model/authorization/index.ts +15 -12
- package/src/model/commands/Command.ts +2 -2
- package/src/model/commands/CommandBus.ts +2 -2
- package/src/model/commands/apiKey/ApiKeyHelper.ts +26 -3
- package/src/model/commands/apiKey/CreateApiKeyCommand.ts +41 -6
- package/src/model/commands/apiKey/DisableApiKeyCommand.ts +1 -1
- package/src/model/commands/apiKey/DisableIdentityApiKeysCommand.ts +1 -1
- package/src/model/commands/apiKey/DisableOneOffApiKeyCommand.ts +2 -2
- package/src/model/commands/apiKey/ProlongApiKeyCommand.ts +74 -13
- package/src/model/commands/apiKey/index.ts +5 -5
- package/src/model/commands/authLog/CreateAuthLogEntryCommand.ts +15 -3
- package/src/model/commands/authPolicy/CreateAuthPolicyCommand.ts +41 -0
- package/src/model/commands/authPolicy/DeleteAuthPolicyCommand.ts +15 -0
- package/src/model/commands/authPolicy/UpdateAuthPolicyCommand.ts +43 -0
- package/src/model/commands/authPolicy/index.ts +3 -0
- package/src/model/commands/backupCode/ConsumeBackupCodeCommand.ts +32 -0
- package/src/model/commands/backupCode/CreateBackupCodeCommand.ts +24 -0
- package/src/model/commands/backupCode/DeleteBackupCodesCommand.ts +16 -0
- package/src/model/commands/backupCode/index.ts +3 -0
- package/src/model/commands/configuration/UpdateConfigurationCommand.ts +52 -4
- package/src/model/commands/configuration/index.ts +1 -1
- package/src/model/commands/customRole/CreateCustomRoleCommand.ts +30 -0
- package/src/model/commands/customRole/DeleteCustomRoleCommand.ts +20 -0
- package/src/model/commands/customRole/RemoveCustomRoleAssignmentsCommand.ts +20 -0
- package/src/model/commands/customRole/UpdateCustomRoleCommand.ts +30 -0
- package/src/model/commands/customRole/index.ts +4 -0
- package/src/model/commands/identity/CreateIdentityCommand.ts +1 -1
- package/src/model/commands/identity/PatchIdentityGlobalRoles.ts +2 -2
- package/src/model/commands/identity/index.ts +2 -2
- package/src/model/commands/idp/ClaimIdpRevalidationCommand.ts +29 -0
- package/src/model/commands/idp/CreateIdpCommand.ts +11 -3
- package/src/model/commands/idp/CreateIdpSessionCommand.ts +42 -0
- package/src/model/commands/idp/DisableIdpCommand.ts +1 -1
- package/src/model/commands/idp/DisconnectPersonIdentityProviderCommand.ts +25 -0
- package/src/model/commands/idp/EnableIdpCommand.ts +1 -1
- package/src/model/commands/idp/UpdateIdpCommand.ts +9 -3
- package/src/model/commands/idp/UpdateIdpSessionCommand.ts +45 -0
- package/src/model/commands/index.ts +15 -11
- package/src/model/commands/mailTemplate/AddMailTemplateCommand.ts +2 -2
- package/src/model/commands/mailTemplate/RemoveMailTemplateCommand.ts +2 -2
- package/src/model/commands/mailTemplate/index.ts +2 -2
- package/src/model/commands/membership/AddProjectMemberCommand.ts +4 -4
- package/src/model/commands/membership/CreateOrUpdateProjectMembershipCommand.ts +4 -4
- package/src/model/commands/membership/RemoveProjectMemberCommand.ts +3 -3
- package/src/model/commands/membership/{RemoveProjectMembershipsCommand.ts → RemoveProjectMembershipCommand.ts} +1 -1
- package/src/model/commands/membership/UpdateProjectMemberCommand.ts +6 -6
- package/src/model/commands/membership/index.ts +7 -6
- package/src/model/commands/membership/variables/PatchProjectMembershipVariableValuesCommand.ts +1 -1
- package/src/model/commands/membership/variables/PatchProjectMembershipVariablesCommand.ts +4 -4
- package/src/model/commands/membership/variables/SetProjectMembershipVariableValuesCommand.ts +1 -1
- package/src/model/commands/membership/variables/index.ts +2 -1
- package/src/model/commands/otp/ConfirmOtpCommand.ts +25 -8
- package/src/model/commands/otp/DisableOtpCommand.ts +14 -6
- package/src/model/commands/otp/PrepareOtpCommand.ts +26 -10
- package/src/model/commands/otp/ReEncryptOtpSecretCommand.ts +33 -0
- package/src/model/commands/otp/SetEmailOtpEnabledCommand.ts +23 -0
- package/src/model/commands/otp/index.ts +5 -3
- package/src/model/commands/person/ChangePasswordCommand.ts +1 -1
- package/src/model/commands/person/ChangeProfileCommand.ts +19 -3
- package/src/model/commands/person/CreatePersonCommand.ts +17 -5
- package/src/model/commands/person/CreatePersonIdentityProviderIdentifierCommand.ts +1 -1
- package/src/model/commands/person/DisablePersonCommand.ts +1 -1
- package/src/model/commands/person/EnablePersonCommand.ts +18 -0
- package/src/model/commands/person/MarkEmailVerifiedCommand.ts +30 -0
- package/src/model/commands/person/ResetPersonMfaCommand.ts +36 -0
- package/src/model/commands/person/SetMfaGraceUntilCommand.ts +22 -0
- package/src/model/commands/person/TogglePersonPasswordlessCommand.ts +1 -1
- package/src/model/commands/person/index.ts +7 -4
- package/src/model/commands/personToken/ActivateOtpCommand.ts +2 -2
- package/src/model/commands/personToken/ClaimOtpAttemptCommand.ts +33 -0
- package/src/model/commands/personToken/CreatePersonTokenCommand.ts +31 -5
- package/src/model/commands/personToken/IncreaseOtpAttemptCommand.ts +2 -2
- package/src/model/commands/personToken/InvalidateEmailOtpTokensCommand.ts +21 -0
- package/src/model/commands/personToken/InvalidateTokenCommand.ts +2 -2
- package/src/model/commands/personToken/ResetPasswordCommand.ts +9 -10
- package/src/model/commands/personToken/SaveEmailOtpTokenCommand.ts +50 -0
- package/src/model/commands/personToken/SavePersonTokenCommand.ts +19 -10
- package/src/model/commands/personToken/index.ts +9 -6
- package/src/model/commands/project/CreateProjectCommand.ts +2 -2
- package/src/model/commands/project/SetProjectSecretCommand.ts +1 -1
- package/src/model/commands/project/UpdateProjectCommand.ts +2 -2
- package/src/model/commands/project/index.ts +3 -3
- package/src/model/commands/rateLimit/RecordRateLimitEventCommand.ts +24 -0
- package/src/model/commands/rateLimit/index.ts +1 -0
- package/src/model/consts/expirations.ts +2 -0
- package/src/model/dtos/Password.ts +1 -1
- package/src/model/dtos/index.ts +1 -1
- package/src/model/index.ts +9 -9
- package/src/model/mailing/UserMailer.ts +114 -9
- package/src/model/mailing/index.ts +2 -2
- package/src/model/mailing/templates/BackupCodesExhausted.mustache.ts +13 -0
- package/src/model/mailing/templates/EmailChangeNotify.mustache.ts +10 -0
- package/src/model/mailing/templates/EmailChangeVerify.mustache.ts +12 -0
- package/src/model/mailing/templates/EmailOtp.mustache.ts +13 -0
- package/src/model/mailing/templates/EmailVerification.mustache.ts +10 -0
- package/src/model/mailing/templates/ExistingUserInvited.mustache.ts +1 -1
- package/src/model/mailing/templates/ForcedSignOut.mustache.ts +10 -0
- package/src/model/mailing/templates/NewUserInvited.mustache.ts +1 -1
- package/src/model/mailing/templates/PasswordReset.mustache.ts +1 -1
- package/src/model/mailing/templates/PasswordlessSignIn.mustache.ts +1 -1
- package/src/model/mailing/templates/UnusualLogin.mustache.ts +17 -0
- package/src/model/mailing/type.ts +22 -1
- package/src/model/providers.ts +8 -0
- package/src/model/queries/apiKey/ApiKeyListQuery.ts +67 -0
- package/src/model/queries/apiKey/ApiKeyQuery.ts +34 -3
- package/src/model/queries/apiKey/ApiKeySessionsQuery.ts +50 -0
- package/src/model/queries/apiKey/index.ts +3 -1
- package/src/model/queries/authLog/AuthLogQuery.ts +112 -0
- package/src/model/queries/authLog/NextLoginAttemptQuery.ts +14 -12
- package/src/model/queries/authLog/NextMailAttemptQuery.ts +82 -0
- package/src/model/queries/authPolicy/AuthPoliciesQuery.ts +24 -0
- package/src/model/queries/authPolicy/index.ts +1 -0
- package/src/model/queries/configuration/ConfigurationQuery.ts +66 -1
- package/src/model/queries/configuration/index.ts +1 -1
- package/src/model/queries/customRole/CustomRolesQuery.ts +30 -0
- package/src/model/queries/customRole/index.ts +1 -0
- package/src/model/queries/identity/IdentitiesHoldingRoleCountQuery.ts +17 -0
- package/src/model/queries/identity/IdentityQuery.ts +10 -4
- package/src/model/queries/identity/index.ts +2 -1
- package/src/model/queries/idp/IdentityProviderBySlugQuery.ts +2 -2
- package/src/model/queries/idp/IdentityProvidersQuery.ts +2 -2
- package/src/model/queries/idp/IdpSessionByApiKeyQuery.ts +92 -0
- package/src/model/queries/idp/IdpSessionsBySidQuery.ts +35 -0
- package/src/model/queries/idp/IdpSessionsBySubQuery.ts +45 -0
- package/src/model/queries/idp/LocalAuthDisablingIdpsQuery.ts +41 -0
- package/src/model/queries/idp/PersonIdentityProvidersQuery.ts +45 -0
- package/src/model/queries/idp/helpers.ts +8 -3
- package/src/model/queries/idp/index.ts +7 -2
- package/src/model/queries/idp/types.ts +4 -1
- package/src/model/queries/index.ts +11 -8
- package/src/model/queries/mailTemplate/MailTemplateListQuery.ts +1 -1
- package/src/model/queries/mailTemplate/MailTemplateQuery.ts +2 -2
- package/src/model/queries/mailTemplate/helpers.ts +1 -1
- package/src/model/queries/mailTemplate/index.ts +2 -2
- package/src/model/queries/membership/AllProjectRolesByIdentityQuery.ts +36 -0
- package/src/model/queries/membership/IdentityHasProjectMembershipsQuery.ts +17 -0
- package/src/model/queries/membership/ProjectMembersQuery.ts +2 -2
- package/src/model/queries/membership/ProjectMembershipByIdentityQuery.ts +1 -1
- package/src/model/queries/membership/ProjectRolesByIdentityQuery.ts +1 -1
- package/src/model/queries/membership/index.ts +5 -3
- package/src/model/queries/person/PersonByIdPQuery.ts +2 -2
- package/src/model/queries/person/PersonByIdentityBatchQuery.ts +2 -2
- package/src/model/queries/person/PersonQuery.ts +3 -3
- package/src/model/queries/person/PersonQueryBuilderFactory.ts +35 -3
- package/src/model/queries/person/PersonsQuery.ts +54 -0
- package/src/model/queries/person/index.ts +5 -4
- package/src/model/queries/person/types.ts +29 -1
- package/src/model/queries/personToken/PersonTokenQuery.ts +21 -5
- package/src/model/queries/project/ProjectBySlugQuery.ts +1 -1
- package/src/model/queries/project/ProjectSecretKeysQuery.ts +29 -0
- package/src/model/queries/project/ProjectSecretsQuery.ts +1 -1
- package/src/model/queries/project/ProjectsByIdentityQuery.ts +3 -3
- package/src/model/queries/project/ProjectsQuery.ts +1 -1
- package/src/model/queries/project/index.ts +6 -5
- package/src/model/queries/rateLimit/RateLimitCountQuery.ts +25 -0
- package/src/model/queries/rateLimit/index.ts +1 -0
- package/src/model/service/AuthLogService.ts +82 -7
- package/src/model/service/AuthPolicyManager.ts +117 -0
- package/src/model/service/AuthPolicyResolver.ts +101 -0
- package/src/model/service/BackupCodeManager.ts +112 -0
- package/src/model/service/ConfigurationManager.ts +4 -4
- package/src/model/service/CustomRoleManager.ts +221 -0
- package/src/model/service/EmailChangeManager.ts +181 -0
- package/src/model/service/EmailOtpManager.ts +105 -0
- package/src/model/service/EmailValidator.ts +7 -8
- package/src/model/service/EmailVerificationManager.ts +118 -0
- package/src/model/service/GlobalRoleValidator.ts +30 -0
- package/src/model/service/HibpChecker.ts +59 -0
- package/src/model/service/IDPSignInManager.ts +146 -20
- package/src/model/service/InviteManager.ts +13 -13
- package/src/model/service/LoginRiskAnalyzer.ts +274 -0
- package/src/model/service/MailTemplateManager.ts +3 -3
- package/src/model/service/MembershipValidator.ts +1 -1
- package/src/model/service/OtpAuthenticator.ts +1 -1
- package/src/model/service/OtpManager.ts +82 -10
- package/src/model/service/PanelAccessResolver.ts +32 -0
- package/src/model/service/PasswordChangeManager.ts +9 -9
- package/src/model/service/PasswordResetManager.ts +37 -17
- package/src/model/service/PasswordStrengthValidator.ts +14 -4
- package/src/model/service/PasswordlessSignInManager.ts +119 -48
- package/src/model/service/PersonAccessManager.ts +19 -6
- package/src/model/service/PersonManager.ts +27 -9
- package/src/model/service/ProjectManager.ts +11 -11
- package/src/model/service/ProjectMemberManager.ts +8 -8
- package/src/model/service/RateLimiter.ts +96 -0
- package/src/model/service/RolesManager.ts +31 -17
- package/src/model/service/SecretsManager.ts +9 -4
- package/src/model/service/SignInManager.ts +388 -17
- package/src/model/service/SignOutManager.ts +110 -0
- package/src/model/service/SignUpManager.ts +54 -19
- package/src/model/service/apiKey/ApiKeyManager.ts +231 -26
- package/src/model/service/apiKey/ApiKeyService.ts +20 -10
- package/src/model/service/apiKey/UnpersistedApiKeyManager.ts +123 -0
- package/src/model/service/apiKey/index.ts +3 -2
- package/src/model/service/captcha/CaptchaProvider.ts +20 -0
- package/src/model/service/captcha/CaptchaValidator.ts +74 -0
- package/src/model/service/captcha/HCaptchaProvider.ts +31 -0
- package/src/model/service/captcha/RecaptchaV3Provider.ts +41 -0
- package/src/model/service/captcha/TurnstileProvider.ts +38 -0
- package/src/model/service/captcha/index.ts +5 -0
- package/src/model/service/helpers/getPreferredProject.ts +1 -1
- package/src/model/service/helpers/isPasswordlessEnabled.ts +21 -0
- package/src/model/service/idp/BackchannelLogoutManager.ts +125 -0
- package/src/model/service/idp/ClaimMapping.ts +283 -0
- package/src/model/service/idp/ClaimMappingEvaluator.ts +226 -0
- package/src/model/service/idp/ClaimMappingValidation.ts +158 -0
- package/src/model/service/idp/IDPClaimSyncService.ts +401 -0
- package/src/model/service/idp/IDPHandlerRegistry.ts +2 -2
- package/src/model/service/idp/IDPManager.ts +112 -35
- package/src/model/service/idp/IDPRevalidation.ts +46 -0
- package/src/model/service/idp/IdentityProviderHandler.ts +82 -0
- package/src/model/service/idp/IdpSessionRevalidator.ts +386 -0
- package/src/model/service/idp/PersonIdentityProviderManager.ts +62 -0
- package/src/model/service/idp/index.ts +18 -10
- package/src/model/service/idp/providers/AppleProvider.ts +6 -6
- package/src/model/service/idp/providers/FacebookProvider.ts +7 -7
- package/src/model/service/idp/providers/OIDCHelpers.ts +401 -10
- package/src/model/service/idp/providers/OIDCProvider.ts +55 -9
- package/src/model/service/idp/providers/OIDCTypes.ts +61 -1
- package/src/model/service/index.ts +33 -19
- package/src/model/service/membershipUtils.ts +1 -1
- package/src/model/type/AuthLog.ts +44 -0
- package/src/model/type/AuthPolicy.ts +32 -0
- package/src/model/type/Config.ts +51 -11
- package/src/model/type/CustomRole.ts +8 -0
- package/src/model/type/IdentityProvider.ts +4 -0
- package/src/model/type/PersonToken.ts +13 -1
- package/src/model/type/RateLimit.ts +10 -0
- package/src/model/type/index.ts +8 -5
- package/src/model/utils/DatabaseContext.ts +7 -4
- package/src/model/utils/index.ts +2 -2
- package/src/model/utils/interval.ts +12 -0
- package/src/model/utils/token.ts +21 -8
- package/src/resolvers/Resolver.ts +1 -1
- package/src/resolvers/ResolverFactory.ts +92 -12
- package/src/resolvers/TenantResolverContext.ts +12 -3
- package/src/resolvers/TenantResolverContextFactory.ts +27 -12
- package/src/resolvers/errorUtils.ts +1 -1
- package/src/resolvers/index.ts +6 -6
- package/src/resolvers/membershipUtils.ts +2 -2
- package/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.ts +65 -11
- package/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.ts +11 -4
- package/src/resolvers/mutation/apiKey/index.ts +2 -2
- package/src/resolvers/mutation/configuration/AuthPolicyMutationResolver.ts +125 -0
- package/src/resolvers/mutation/configuration/ConfigurationMutationResolver.ts +33 -5
- package/src/resolvers/mutation/customRole/CustomRoleMutationResolver.ts +125 -0
- package/src/resolvers/mutation/identity/GlobalRolesMutationResolver.ts +61 -11
- package/src/resolvers/mutation/identity/index.ts +1 -1
- package/src/resolvers/mutation/idp/AddIDPMutationResolver.ts +22 -5
- package/src/resolvers/mutation/idp/DisableIDPMutationResolver.ts +12 -5
- package/src/resolvers/mutation/idp/DisconnectMyIdentityProviderMutationResolver.ts +42 -0
- package/src/resolvers/mutation/idp/EnableIDPMutationResolver.ts +12 -5
- package/src/resolvers/mutation/idp/UpdateIDPMutationResolver.ts +23 -5
- package/src/resolvers/mutation/idp/audit.ts +20 -0
- package/src/resolvers/mutation/idp/index.ts +4 -3
- package/src/resolvers/mutation/index.ts +7 -7
- package/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.ts +75 -18
- package/src/resolvers/mutation/mailTemplates/index.ts +1 -1
- package/src/resolvers/mutation/person/ChangePasswordMutationResolver.ts +5 -5
- package/src/resolvers/mutation/person/ChangeProfileMutationResolver.ts +99 -6
- package/src/resolvers/mutation/person/DisablePersonMutationResolver.ts +8 -8
- package/src/resolvers/mutation/person/EmailOtpMutationResolver.ts +112 -0
- package/src/resolvers/mutation/person/EmailVerificationMutationResolver.ts +108 -0
- package/src/resolvers/mutation/person/EnablePersonMutationResolver.ts +50 -0
- package/src/resolvers/mutation/person/ForceSignOutMutationResolver.ts +62 -0
- package/src/resolvers/mutation/person/IDPMutationResolver.ts +44 -5
- package/src/resolvers/mutation/person/InviteMutationResolver.ts +33 -12
- package/src/resolvers/mutation/person/OtpMutationResolver.ts +34 -17
- package/src/resolvers/mutation/person/PasswordlessMutationResolver.ts +48 -12
- package/src/resolvers/mutation/person/RegenerateBackupCodesMutationResolver.ts +43 -0
- package/src/resolvers/mutation/person/ResetPasswordMutationResolver.ts +36 -7
- package/src/resolvers/mutation/person/ResetPersonMfaMutationResolver.ts +51 -0
- package/src/resolvers/mutation/person/RevokeSessionMutationResolver.ts +46 -0
- package/src/resolvers/mutation/person/SignInMutationResolver.ts +108 -18
- package/src/resolvers/mutation/person/SignOutMutationResolver.ts +28 -25
- package/src/resolvers/mutation/person/SignUpMutationResolver.ts +71 -6
- package/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.ts +6 -6
- package/src/resolvers/mutation/person/index.ts +12 -9
- package/src/resolvers/mutation/project/CreateProjectMutationResolver.ts +16 -4
- package/src/resolvers/mutation/project/SetProjectSecretMutationResolver.ts +15 -4
- package/src/resolvers/mutation/project/UpdateProjectMutationResolver.ts +18 -4
- package/src/resolvers/mutation/project/index.ts +3 -3
- package/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.ts +8 -5
- package/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.ts +14 -4
- package/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.ts +16 -6
- package/src/resolvers/mutation/projectMember/audit.ts +35 -0
- package/src/resolvers/mutation/projectMember/index.ts +3 -3
- package/src/resolvers/query/ApiKeyQueryResolver.ts +15 -0
- package/src/resolvers/query/AuthLogQueryResolver.ts +63 -0
- package/src/resolvers/query/AuthPolicyQueryResolver.ts +41 -0
- package/src/resolvers/query/ConfigurationQueryResolver.ts +5 -5
- package/src/resolvers/query/CustomRoleQueryResolver.ts +41 -0
- package/src/resolvers/query/IDPQueryResolver.ts +4 -4
- package/src/resolvers/query/MailTemplateQueryResolver.ts +16 -11
- package/src/resolvers/query/MeQueryResolver.ts +3 -2
- package/src/resolvers/query/PersonQueryResolver.ts +60 -5
- package/src/resolvers/query/ProjectMembersQueryResolver.ts +3 -3
- package/src/resolvers/query/ProjectQueryResolver.ts +6 -5
- package/src/resolvers/query/index.ts +6 -4
- package/src/resolvers/responseHelpers/ApiKeyResponseFactory.ts +36 -0
- package/src/resolvers/responseHelpers/PersonResponseFactory.ts +16 -3
- package/src/resolvers/responseHelpers/ProjectResponseFactory.ts +24 -0
- package/src/resolvers/responseHelpers/SignInResponseFactory.ts +11 -6
- package/src/resolvers/types/IdentityTypeResolver.ts +86 -10
- package/src/resolvers/types/PersonTypeResolver.ts +79 -0
- package/src/resolvers/types/ProjectTypeResolver.ts +64 -4
- package/src/resolvers/types/index.ts +3 -2
- package/src/schema/index.ts +2078 -137
- package/src/schema/tenant.graphql.ts +1088 -22
- package/src/utils/Mailer.ts +1 -1
- package/src/utils/batchQuery.ts +2 -2
- package/src/utils/index.ts +2 -2
- package/tests/cases/integration/database/dbClock.test.ts +171 -0
- package/tests/cases/integration/mocked/addProjectMemberMutation.test.ts +31 -8
- package/tests/cases/integration/mocked/antiAbuseSignUp.test.ts +67 -0
- package/tests/cases/integration/mocked/authLogQuery.test.ts +167 -0
- package/tests/cases/integration/mocked/authPolicyCrud.test.ts +117 -0
- package/tests/cases/integration/mocked/changeMyPasswordMutation.test.ts +7 -7
- package/tests/cases/integration/mocked/changeMyProfileEmailVerificationMutation.test.ts +249 -0
- package/tests/cases/integration/mocked/changeMyProfileMutation.test.ts +14 -7
- package/tests/cases/integration/mocked/changePasswordMutation.test.ts +49 -6
- package/tests/cases/integration/mocked/changeProfileMutation.test.ts +10 -8
- package/tests/cases/integration/mocked/configurationPanel.test.ts +105 -0
- package/tests/cases/integration/mocked/confirmEmailChangeMutation.test.ts +157 -0
- package/tests/cases/integration/mocked/confirmOtpMutation.test.ts +41 -15
- package/tests/cases/integration/mocked/createApiKeyMutation.test.ts +29 -12
- package/tests/cases/integration/mocked/createSessionKeyMutation.test.ts +46 -9
- package/tests/cases/integration/mocked/customRoleCrud.test.ts +442 -0
- package/tests/cases/integration/mocked/disableApiKeyMutation.ts +4 -4
- package/tests/cases/integration/mocked/disableOtpMfaRequired.test.ts +62 -0
- package/tests/cases/integration/mocked/disablePersonMutation.test.ts +92 -0
- package/tests/cases/integration/mocked/emailOtpMutation.test.ts +112 -0
- package/tests/cases/integration/mocked/enablePersonMutation.test.ts +137 -0
- package/tests/cases/integration/mocked/forceSignOutPersonMutation.test.ts +94 -0
- package/tests/cases/integration/mocked/globalApiKeysQuery.test.ts +79 -0
- package/tests/cases/integration/mocked/globalIdentityRolesMutation.test.ts +274 -0
- package/tests/cases/integration/mocked/gql/addProjectMember.ts +3 -3
- package/tests/cases/integration/mocked/gql/changeMyPassword.ts +2 -2
- package/tests/cases/integration/mocked/gql/changeMyProfile.ts +2 -2
- package/tests/cases/integration/mocked/gql/changePassword.ts +2 -2
- package/tests/cases/integration/mocked/gql/changeProfile.ts +2 -2
- package/tests/cases/integration/mocked/gql/confirmOtp.ts +6 -3
- package/tests/cases/integration/mocked/gql/createApiKey.ts +3 -3
- package/tests/cases/integration/mocked/gql/createResetPasswordRequest.ts +2 -2
- package/tests/cases/integration/mocked/gql/createSessionToken.ts +2 -2
- package/tests/cases/integration/mocked/gql/emailOtp.ts +23 -0
- package/tests/cases/integration/mocked/gql/emailVerification.ts +32 -0
- package/tests/cases/integration/mocked/gql/invite.ts +3 -3
- package/tests/cases/integration/mocked/gql/myIdentityProviders.ts +34 -0
- package/tests/cases/integration/mocked/gql/passwordless.ts +33 -0
- package/tests/cases/integration/mocked/gql/prepareOtp.ts +3 -3
- package/tests/cases/integration/mocked/gql/resetPassword.ts +2 -2
- package/tests/cases/integration/mocked/gql/signIn.ts +6 -4
- package/tests/cases/integration/mocked/gql/signInIdp.ts +2 -2
- package/tests/cases/integration/mocked/gql/signUp.ts +2 -2
- package/tests/cases/integration/mocked/gql/unmanagedInvite.ts +3 -3
- package/tests/cases/integration/mocked/gql/updateProjectMember.ts +3 -3
- package/tests/cases/integration/mocked/idpClaimMappingConfig.test.ts +332 -0
- package/tests/cases/integration/mocked/inviteMutations.test.ts +48 -14
- package/tests/cases/integration/mocked/listProjectMembersQuery.test.ts +4 -4
- package/tests/cases/integration/mocked/localAuthenticationDisabled.test.ts +182 -0
- package/tests/cases/integration/mocked/mailTemplateScope.test.ts +95 -0
- package/tests/cases/integration/mocked/mySessionsQuery.test.ts +82 -0
- package/tests/cases/integration/mocked/permissionsQuery.test.ts +153 -0
- package/tests/cases/integration/mocked/personByIdQuery.test.ts +97 -4
- package/tests/cases/integration/mocked/personIdentityProviders.test.ts +394 -0
- package/tests/cases/integration/mocked/personsQuery.test.ts +233 -0
- package/tests/cases/integration/mocked/prepareOtpMutation.test.ts +109 -6
- package/tests/cases/integration/mocked/projectApiKeysQuery.test.ts +142 -0
- package/tests/cases/integration/mocked/projectSecretsQuery.test.ts +86 -0
- package/tests/cases/integration/mocked/removeProjectMemberMutation.test.ts +31 -7
- package/tests/cases/integration/mocked/requestEmailVerificationMutation.test.ts +191 -0
- package/tests/cases/integration/mocked/resetPersonMfaMutation.test.ts +87 -0
- package/tests/cases/integration/mocked/revokeSessionMutation.test.ts +114 -0
- package/tests/cases/integration/mocked/signInAnomalyDetection.test.ts +486 -0
- package/tests/cases/integration/mocked/signInIdpClaimMapping.test.ts +1258 -0
- package/tests/cases/integration/mocked/signInIdpClaimMappingFixes.test.ts +344 -0
- package/tests/cases/integration/mocked/signInIdpClaimMappingSafety.test.ts +531 -0
- package/tests/cases/integration/mocked/signInIdpMutation.test.ts +379 -12
- package/tests/cases/integration/mocked/signInMfaEnforcement.test.ts +338 -0
- package/tests/cases/integration/mocked/signInMutation.test.ts +334 -15
- package/tests/cases/integration/mocked/signInPasswordlessMutation.test.ts +183 -0
- package/tests/cases/integration/mocked/signOutMutation.test.ts +170 -8
- package/tests/cases/integration/mocked/signUpMutation.test.ts +74 -14
- package/tests/cases/integration/mocked/sql/authLogSql.ts +78 -0
- package/tests/cases/integration/mocked/sql/authPolicySql.ts +48 -0
- package/tests/cases/integration/mocked/sql/consumeBackupCodeSql.ts +31 -0
- package/tests/cases/integration/mocked/sql/createApiKeySql.ts +12 -4
- package/tests/cases/integration/mocked/sql/createIdentitySql.ts +2 -2
- package/tests/cases/integration/mocked/sql/createMembershipSql.ts +1 -1
- package/tests/cases/integration/mocked/sql/createMembershipVariableSql.ts +1 -1
- package/tests/cases/integration/mocked/sql/createPersonSql.ts +5 -3
- package/tests/cases/integration/mocked/sql/createPersonTokenSql.ts +8 -5
- package/tests/cases/integration/mocked/sql/createSessionKeySql.ts +19 -5
- package/tests/cases/integration/mocked/sql/disableApiKeySql.ts +1 -1
- package/tests/cases/integration/mocked/sql/disableOneOffKeySql.ts +1 -1
- package/tests/cases/integration/mocked/sql/emailOtpSql.ts +95 -0
- package/tests/cases/integration/mocked/sql/generateBackupCodesSql.ts +35 -0
- package/tests/cases/integration/mocked/sql/getApiKeySql.ts +12 -5
- package/tests/cases/integration/mocked/sql/getConfigSql.ts +41 -1
- package/tests/cases/integration/mocked/sql/getCustomRolesSql.ts +25 -0
- package/tests/cases/integration/mocked/sql/getIdentityByIdSql.ts +14 -0
- package/tests/cases/integration/mocked/sql/getIdentityProjectMembershipPresenceSql.ts +11 -0
- package/tests/cases/integration/mocked/sql/getIdentityProjectsSql.ts +1 -1
- package/tests/cases/integration/mocked/sql/getIdpBySlugSql.ts +3 -3
- package/tests/cases/integration/mocked/sql/getIdpSessionByApiKeySql.ts +54 -0
- package/tests/cases/integration/mocked/sql/getNextLoginAttemptSql.ts +15 -11
- package/tests/cases/integration/mocked/sql/getNextMailAttemptSql.ts +29 -0
- package/tests/cases/integration/mocked/sql/getPersonByEmailSql.ts +30 -5
- package/tests/cases/integration/mocked/sql/getPersonByIdSql.ts +24 -3
- package/tests/cases/integration/mocked/sql/getPersonByIdentity.ts +26 -4
- package/tests/cases/integration/mocked/sql/getPersonByIdpSql.ts +7 -3
- package/tests/cases/integration/mocked/sql/getPersonsByIdentitySql.ts +24 -0
- package/tests/cases/integration/mocked/sql/getProjectBySlugSql.ts +3 -3
- package/tests/cases/integration/mocked/sql/getProjectMembershipSql.ts +2 -2
- package/tests/cases/integration/mocked/sql/listApiKeysSql.ts +45 -0
- package/tests/cases/integration/mocked/sql/listPersonsSql.ts +58 -0
- package/tests/cases/integration/mocked/sql/listProjectSecretsSql.ts +23 -0
- package/tests/cases/integration/mocked/sql/listSessionsSql.ts +38 -0
- package/tests/cases/integration/mocked/sql/localAuthDisablingIdpsSql.ts +21 -0
- package/tests/cases/integration/mocked/sql/loginHistorySql.ts +29 -0
- package/tests/cases/integration/mocked/sql/patchVariablesSql.ts +1 -1
- package/tests/cases/integration/mocked/sql/personIdentityProvidersSql.ts +89 -0
- package/tests/cases/integration/mocked/sql/removeMembershipSql.ts +14 -0
- package/tests/cases/integration/mocked/sql/selectMembershipsSql.ts +1 -1
- package/tests/cases/integration/mocked/sql/setEmailOtpEnabledSql.ts +10 -0
- package/tests/cases/integration/mocked/sql/sqlTransaction.ts +29 -1
- package/tests/cases/integration/mocked/sql/updatePesonNameSql.ts +7 -5
- package/tests/cases/integration/mocked/sql/updatePesonPasswordSql.ts +1 -1
- package/tests/cases/integration/mocked/trustForwardedClientInfo.test.ts +185 -0
- package/tests/cases/integration/mocked/updateProjectMemberMutation.test.ts +36 -9
- package/tests/cases/integration/mocked/verifyEmailMutation.test.ts +231 -0
- package/tests/cases/migrations/2020-06-08-134000-tenant-credentials.test.ts +1 -1
- package/tests/cases/unit/apiKey/createSessionApiKeyPolicy.test.ts +233 -0
- package/tests/cases/unit/apiKey/prolongApiKeyCommand.test.ts +190 -0
- package/tests/cases/unit/apiKey/unpersistedApiKeyManager.test.ts +136 -0
- package/tests/cases/unit/apiKey/verifyAndProlongIdle.test.ts +207 -0
- package/tests/cases/unit/apiKey/verifyAndProlongReplica.test.ts +173 -0
- package/tests/cases/unit/authLogBaselineWrite.test.ts +142 -0
- package/tests/cases/unit/authPolicyResolver.test.ts +162 -0
- package/tests/cases/unit/authorization/membershipAwareAccessNode.test.ts +2 -2
- package/tests/cases/unit/authorization/membershipMatcher.test.ts +2 -2
- package/tests/cases/unit/backupCodeManager.test.ts +225 -0
- package/tests/cases/unit/captchaProviders.test.ts +150 -0
- package/tests/cases/unit/captchaValidator.test.ts +83 -0
- package/tests/cases/unit/customRoleAuthorizator.test.ts +149 -0
- package/tests/cases/unit/customRolePermissions.test.ts +583 -0
- package/tests/cases/unit/databaseContextRetry.test.ts +3 -2
- package/tests/cases/unit/emailOtpManager.test.ts +279 -0
- package/tests/cases/unit/hibpChecker.test.ts +41 -0
- package/tests/cases/unit/idp/backchannelLogoutManager.test.ts +144 -0
- package/tests/cases/unit/idp/claimIdpRevalidation.test.ts +50 -0
- package/tests/cases/unit/idp/claimMappingEvaluator.test.ts +554 -0
- package/tests/cases/unit/idp/claimMappingValidation.test.ts +134 -0
- package/tests/cases/unit/idp/idpManagerConfigMerge.test.ts +97 -0
- package/tests/cases/unit/idp/idpManagerUnknownConfigKeys.test.ts +14 -7
- package/tests/cases/unit/idp/idpSessionRevalidator.test.ts +622 -0
- package/tests/cases/unit/idp/oidcClaims.test.ts +29 -0
- package/tests/cases/unit/idp/oidcLogout.test.ts +190 -0
- package/tests/cases/unit/idp/oidcProvider.test.ts +31 -0
- package/tests/cases/unit/idp/oidcResponse.test.ts +198 -0
- package/tests/cases/unit/idp/oidcRevalidate.test.ts +269 -0
- package/tests/cases/unit/loginRiskAnalyzer.test.ts +206 -0
- package/tests/cases/unit/otpManager.test.ts +187 -0
- package/tests/cases/unit/panelAccessResolver.test.ts +57 -0
- package/tests/cases/unit/passwordStrengthValidator.test.ts +51 -0
- package/tests/cases/unit/rateLimiter.test.ts +134 -0
- package/tests/cases/unit/savePersonTokenCommand.test.ts +40 -0
- package/tests/cases/unit/updateConfigurationCommand.test.ts +63 -0
- package/tests/src/IdPMock.ts +41 -1
- package/tests/src/mailer.ts +1 -1
- package/tests/src/testTenant.ts +95 -22
- package/dist/development/src/model/commands/membership/RemoveProjectMembershipsCommand.cjs.map +0 -1
- package/dist/development/src/model/commands/membership/RemoveProjectMembershipsCommand.js.map +0 -1
- package/dist/production/src/model/commands/membership/RemoveProjectMembershipsCommand.cjs.map +0 -1
- package/dist/production/src/model/commands/membership/RemoveProjectMembershipsCommand.js.map +0 -1
- package/dist/types/model/commands/membership/RemoveProjectMembershipsCommand.d.ts.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDPClaimSyncService.js","sources":["../../../../../../../packages/engine-tenant-api/src/model/service/idp/IDPClaimSyncService.ts"],"sourcesContent":["import { DatabaseContext } from '../../utils/index.js'\nimport { ClaimMapping, ClaimMappingRule, DEFAULT_SYNC_POLICY, DEFAULT_UNMATCHED } from './ClaimMapping.js'\nimport { evaluateClaimMapping, MappedMembership } from './ClaimMappingEvaluator.js'\nimport { validateClaimMappingMembership } from './ClaimMappingValidation.js'\nimport { ProjectSchemaResolver } from '../../type/index.js'\nimport { Acl, ProjectRole } from '@contember/schema'\nimport { MembershipResolver } from '@contember/schema-utils'\nimport { ProjectBySlugQuery, ProjectMembershipByIdentityQuery } from '../../queries/index.js'\nimport { CreateOrUpdateProjectMembershipCommand, RemoveProjectMembershipCommand } from '../../commands/index.js'\n\nexport type ClaimMappingSnapshot = {\n\treadonly memberships: readonly MappedMembership[]\n}\n\nexport type ClaimMappingAudit = {\n\treadonly before: ClaimMappingSnapshot\n\treadonly after: ClaimMappingSnapshot\n\treadonly syncPolicy: NonNullable<ClaimMapping['syncPolicy']>\n\treadonly unmatched: NonNullable<ClaimMapping['unmatched']>\n}\n\nexport type ClaimMappingSyncResult = {\n\t/** Membership before/after delta — present only when the apply actually changed grants. */\n\treadonly audit: ClaimMappingAudit | null\n\t/** True when the apply-time safety backstop dropped one or more configured rules (a fail-open marker for the caller's audit). */\n\treadonly droppedUnsafeRules: boolean\n}\n\n/**\n * Applies an IdP's `claimMapping` (A09) after a person has been resolved: evaluates the declarative\n * rules against the IdP claims and grants the resulting project memberships, honouring the per-IdP\n * `syncPolicy` (`always` vs `sticky`) and `unmatched` (`keep` vs `remove`) settings. The mapping\n * grants project memberships only — never global/tenant roles (see {@link ClaimMapping}).\n *\n * Runs at sign-in (inside the sign-in transaction) and, for `always` mappings, again on each OIDC\n * session refresh (see `IdpSessionRevalidator`). Returns a {@link ClaimMappingSyncResult}: an\n * `{ before, after }` audit delta (`null` when nothing changed) plus `droppedUnsafeRules` (true when the\n * apply-time safety backstop dropped a configured rule). The caller emits the `idp_role_mapped` audit\n * from the delta and the `idp_role_mapping_failed` fail-open marker from `droppedUnsafeRules` — audit\n * lives at the caller layer, never here.\n *\n * The caller parses the mapping (via {@link parseClaimMapping}) and decides the fail-open policy: a\n * malformed config is caught by the caller before this runs, while a DB error raised here propagates\n * so the surrounding transaction rolls back the partial apply (no half-applied grants).\n */\nexport class IDPClaimSyncService {\n\tconstructor(\n\t\tprivate readonly projectSchemaResolver: ProjectSchemaResolver,\n\t) {\n\t}\n\n\tasync sync(\n\t\tdb: DatabaseContext,\n\t\tmapping: ClaimMapping,\n\t\tclaims: Record<string, unknown>,\n\t\tidentity: { id: string },\n\t\tisNewPerson: boolean,\n\t\toptions: { allowRemoval?: boolean } = {},\n\t): Promise<ClaimMappingSyncResult> {\n\t\tif (mapping.rules.length === 0) {\n\t\t\treturn { audit: null, droppedUnsafeRules: false }\n\t\t}\n\n\t\tconst syncPolicy = mapping.syncPolicy ?? DEFAULT_SYNC_POLICY\n\t\t// `unmatched: 'remove'` reconciliation is only safe when the claim surface is COMPLETE: a rule that\n\t\t// matched at sign-in but is missing from a partial surface would strip a legitimate membership with no\n\t\t// IdP change. At sign-in the surface is always complete, so the caller leaves removal enabled. On the\n\t\t// OIDC refresh path the caller passes `allowRemoval` per surface completeness (see IdpSessionRevalidator):\n\t\t// a `method: 'refresh'` that rebuilt sign-in's id-token + userinfo surface enables removal (refresh then\n\t\t// reconciles exactly like sign-in); a partial surface (userinfo-only probe, or a failed userinfo fetch)\n\t\t// disables it so refresh stays additive-only. The audit below reflects this effective value.\n\t\tconst unmatched = options.allowRemoval === false ? 'keep' : (mapping.unmatched ?? DEFAULT_UNMATCHED)\n\n\t\t// `sticky`: only apply at account creation; an existing account keeps whatever it has. This is\n\t\t// also what bounds refresh-sync to `always` mappings — a refresh passes `isNewPerson: false`.\n\t\tif (syncPolicy === 'sticky' && !isNewPerson) {\n\t\t\treturn { audit: null, droppedUnsafeRules: false }\n\t\t}\n\n\t\t// Apply-time safety backstop (A09): re-validate each granted membership against the project's LIVE\n\t\t// ACL schema and drop any that fails (fail-closed) — condition-injection above all, but ANY error\n\t\t// (unknown role/variable, a malformed condition value, an unsafe predefined). Config-time validation\n\t\t// (`IDPManager.assertValidClaimMapping`) is the primary guard, but it is skipped when the target\n\t\t// project does not exist yet, is never re-run when it is later created, and a variable's ACL type can\n\t\t// drift (e.g. entity → condition) after the mapping was authored. A dropped rule is removed from BOTH\n\t\t// the granted set and the removal vocabulary below (both derived from `rules`), so an unsafe rule\n\t\t// neither grants nor drives reconciliation. The caller is told a drop happened (`droppedUnsafeRules`)\n\t\t// so it can emit the `idp_role_mapping_failed` fail-open marker.\n\t\tconst { safe: rules, dropped, aclByProject } = await this.dropUnsafeRules(db, mapping.rules)\n\n\t\t// Apply-time safety backstop, part 2 (A09): RUNTIME re-validation of the EVALUATED memberships.\n\t\t// `dropUnsafeRules` above only sees each rule's static CONFIG shape, so — like config-time validation —\n\t\t// it tolerates a missing membership variable (an A09 grant may set only some of a role's variables).\n\t\t// Once the claims are evaluated we know each membership EXACTLY as it would be written, and can\n\t\t// fail-close on the one case that tolerance makes unsafe: an `admin` grant whose claim-derived scoping\n\t\t// variable resolved empty, which would otherwise persist a bare, UNSCOPED `admin` membership (see\n\t\t// {@link dropUnsafeEvaluatedMemberships}). Both drop sets feed the `droppedUnsafeRules` fail-open marker.\n\t\tconst evaluated = evaluateClaimMapping({ ...mapping, rules }, claims)\n\t\tconst { safe: memberships, dropped: droppedMemberships } = this.dropUnsafeEvaluatedMemberships(evaluated, aclByProject)\n\t\tconst droppedUnsafeRules = dropped.length > 0 || droppedMemberships.length > 0\n\n\t\t// The mapping's membership \"vocabulary\": every (project, role) any rule could grant a membership\n\t\t// for. Removal is strictly bounded to this set so memberships and variable names managed outside\n\t\t// the mapping are never stripped, even under `unmatched: 'remove'`.\n\t\tconst vocabularyMemberships = new Map<string, Set<string>>()\n\t\tfor (const rule of rules) {\n\t\t\tif (rule.grantMembership) {\n\t\t\t\tconst roles = vocabularyMemberships.get(rule.grantMembership.project) ?? new Set<string>()\n\t\t\t\troles.add(rule.grantMembership.role)\n\t\t\t\tvocabularyMemberships.set(rule.grantMembership.project, roles)\n\t\t\t}\n\t\t}\n\t\tconst before = await this.snapshot(db, identity.id, vocabularyMemberships)\n\n\t\tawait this.applyMemberships(db, identity.id, memberships, vocabularyMemberships, unmatched)\n\n\t\tconst after = await this.snapshot(db, identity.id, vocabularyMemberships)\n\n\t\tif (snapshotEquals(before, after)) {\n\t\t\treturn { audit: null, droppedUnsafeRules }\n\t\t}\n\n\t\treturn { audit: { before, after, syncPolicy, unmatched }, droppedUnsafeRules }\n\t}\n\n\t/**\n\t * Partition rules into those safe to apply and those dropped by the apply-time safety backstop. A rule\n\t * is dropped when its granted membership produces ANY validation error against the project's CURRENT ACL\n\t * schema (fail-closed) — condition-injection above all, but also an unknown role/variable, a malformed\n\t * condition value, or a forbidden predefined variable. A validation throw is treated as unsafe (we cannot\n\t * prove the grant safe). Schemas (and, when needed, project existence) are resolved at most once per\n\t * project. The dropped set is returned so the caller can emit a fail-open audit marker.\n\t *\n\t * When `getSchema` returns no ACL it does NOT mean \"the project does not exist\": it returns undefined both\n\t * for a project that has no row yet AND for one whose row exists but whose container / content schema is\n\t * momentarily unresolvable (mid-provisioning, transient). The two need OPPOSITE handling, so we\n\t * disambiguate via the tenant `project` table:\n\t * - no project row → the grant is genuinely inert (`applyMemberships` resolves the same slug and skips\n\t * it, so nothing is written). KEEP the rule for when the project is created later.\n\t * - project row EXISTS but the ACL is unresolvable → `applyMemberships` WOULD still write the membership\n\t * (it resolves the slug from the tenant `project` table, independent of the content schema), so an\n\t * UNVALIDATED grant — including a claim-derived value targeting a `condition` ACL variable — could\n\t * land. Fail closed: DROP the rule (it re-applies on a later sign-in once the schema resolves). This\n\t * matches the direct add-member path, which refuses a membership whose project schema can't be resolved.\n\t *\n\t * Returns the per-project ACL map it built (`aclByProject`) so the runtime backstop\n\t * ({@link dropUnsafeEvaluatedMemberships}) can re-use it without re-resolving any schema.\n\t */\n\tprivate async dropUnsafeRules(\n\t\tdb: DatabaseContext,\n\t\trules: readonly ClaimMappingRule[],\n\t): Promise<{ safe: ClaimMappingRule[]; dropped: ClaimMappingRule[]; aclByProject: Map<string, Acl.Schema | null> }> {\n\t\tconst aclByProject = new Map<string, Acl.Schema | null>()\n\t\tconst projectExistsBySlug = new Map<string, boolean>()\n\t\tconst safe: ClaimMappingRule[] = []\n\t\tconst dropped: ClaimMappingRule[] = []\n\t\tfor (const rule of rules) {\n\t\t\tconst membership = rule.grantMembership\n\t\t\tif (!membership) {\n\t\t\t\tsafe.push(rule)\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tif (!aclByProject.has(membership.project)) {\n\t\t\t\tconst schema = await this.projectSchemaResolver.getSchema(membership.project)\n\t\t\t\taclByProject.set(membership.project, schema?.acl ?? null)\n\t\t\t}\n\t\t\tconst acl = aclByProject.get(membership.project) ?? null\n\t\t\tif (acl === null) {\n\t\t\t\tif (!projectExistsBySlug.has(membership.project)) {\n\t\t\t\t\tconst project = await db.queryHandler.fetch(new ProjectBySlugQuery(membership.project))\n\t\t\t\t\tprojectExistsBySlug.set(membership.project, project != null)\n\t\t\t\t}\n\t\t\t\t// project row exists but its ACL is unresolvable → can't prove the grant safe → drop (fail-closed);\n\t\t\t\t// no row yet → genuinely inert, keep for a project created later.\n\t\t\t\tif (projectExistsBySlug.get(membership.project)) {\n\t\t\t\t\tdropped.push(rule)\n\t\t\t\t} else {\n\t\t\t\t\tsafe.push(rule)\n\t\t\t\t}\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tlet unsafe: boolean\n\t\t\ttry {\n\t\t\t\tunsafe = validateClaimMappingMembership(acl, membership).length > 0\n\t\t\t} catch {\n\t\t\t\tunsafe = true\n\t\t\t}\n\t\t\tif (unsafe) {\n\t\t\t\tdropped.push(rule)\n\t\t\t} else {\n\t\t\t\tsafe.push(rule)\n\t\t\t}\n\t\t}\n\t\treturn { safe, dropped, aclByProject }\n\t}\n\n\t/**\n\t * RUNTIME companion to {@link dropUnsafeRules} (A09 apply-time backstop, part 2). `dropUnsafeRules`\n\t * validates each rule's static CONFIG shape and — like config-time validation — TOLERATES a missing\n\t * membership variable (`VARIABLE_EMPTY`): an A09 grant may legitimately set only some of a role's\n\t * variables. For an ordinary role that tolerance is safe: a variable that resolves to no value just\n\t * narrows CONTENT access (the membership resolver maps it to `{ never: true }` — strictly LESS access,\n\t * never more), and a role's tenant permissions are matched against that role's OWN tenant rule (a\n\t * missing variable there denies, never escalates).\n\t *\n\t * The ONE role that breaks the assumption is the project `admin` role: {@link ProjectScope} grants the\n\t * PROJECT_ADMIN tenant role (project secrets, member management, IdP config, deploy, …) to ANY identity\n\t * holding an `admin` membership in the project — keyed on the role NAME alone, independent of the\n\t * membership's variables. So when a claim-derived variable meant to SCOPE an `admin` grant resolves\n\t * empty, `applyMemberships` drops the empty variable before the write and persists a BARE `admin`\n\t * membership — i.e. UNSCOPED project-admin, even though the operator intended a scoped grant, and a\n\t * membership the direct add-member path ({@link MembershipResolver}, via `MembershipValidator`) would\n\t * REJECT as `VARIABLE_EMPTY`. (`admin` is the only role-name-based grant in the whole authorization\n\t * layer; every other privilege is gated by ACL variables/predicates, so it cannot be widened this way.)\n\t *\n\t * So, fail-closed, we re-validate every evaluated `admin` grant EXACTLY as it would be written (empty\n\t * variables filtered out, as `applyMemberships` does) against the live ACL and DROP it if the resolver\n\t * reports any error — i.e. if a required (non-fallback) `admin` variable would be absent. Under `keep`\n\t * the bare grant is then never written; under `remove` it is absent from the granted set, so\n\t * reconciliation revokes any pre-existing one. Non-`admin` grants are left untouched (their partial\n\t * grants stay valid). The drop folds into `droppedUnsafeRules`, so the caller still emits the\n\t * `idp_role_mapping_failed` fail-open marker.\n\t */\n\tprivate dropUnsafeEvaluatedMemberships(\n\t\tmemberships: readonly MappedMembership[],\n\t\taclByProject: ReadonlyMap<string, Acl.Schema | null>,\n\t): { safe: MappedMembership[]; dropped: MappedMembership[] } {\n\t\tconst resolver = new MembershipResolver()\n\t\tconst safe: MappedMembership[] = []\n\t\tconst dropped: MappedMembership[] = []\n\t\tfor (const membership of memberships) {\n\t\t\tconst acl = aclByProject.get(membership.project) ?? null\n\t\t\t// Only `admin` is privileged by role name independent of its variables (see above). A null ACL means\n\t\t\t// the project has no row yet — an existing-but-unresolvable project had its rule dropped upstream, so\n\t\t\t// it never reaches here — so the grant is inert (`applyMemberships` skips the missing project): keep it.\n\t\t\tif (membership.role !== ProjectRole.ADMIN || acl === null) {\n\t\t\t\tsafe.push(membership)\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\t// Validate the membership as it will be persisted: `applyMemberships` filters out empty-valued\n\t\t\t// variables before the write, so an unset required (non-fallback) variable surfaces here as\n\t\t\t// `VARIABLE_EMPTY`, exactly as the direct add-member path reports and rejects it. Any error ⇒ unsafe.\n\t\t\tconst written: Acl.Membership = {\n\t\t\t\trole: membership.role,\n\t\t\t\tvariables: membership.variables.filter(it => it.values.length > 0).map(it => ({ name: it.name, values: [...it.values] })),\n\t\t\t}\n\t\t\tlet unsafe: boolean\n\t\t\ttry {\n\t\t\t\tunsafe = resolver.resolve(acl, [written], MembershipResolver.UnknownIdentity, false).errors.length > 0\n\t\t\t} catch {\n\t\t\t\tunsafe = true\n\t\t\t}\n\t\t\tif (unsafe) {\n\t\t\t\tdropped.push(membership)\n\t\t\t} else {\n\t\t\t\tsafe.push(membership)\n\t\t\t}\n\t\t}\n\t\treturn { safe, dropped }\n\t}\n\n\t// Membership writes are driven through the low-level commands directly (as InviteManager also does),\n\t// not via ProjectMemberManager (the \"normal\" add/update-member path): A09 needs semantics that path does\n\t// not offer — empty-value hard-delete avoidance under `keep`, and vocabulary-bounded removal under `remove`.\n\tprivate async applyMemberships(\n\t\tdb: DatabaseContext,\n\t\tidentityId: string,\n\t\tgrantedMemberships: readonly MappedMembership[],\n\t\tvocabularyMemberships: ReadonlyMap<string, ReadonlySet<string>>,\n\t\tunmatched: NonNullable<ClaimMapping['unmatched']>,\n\t): Promise<void> {\n\t\t// Group granted memberships by project so each project is resolved (slug -> id) only once.\n\t\tconst byProject = new Map<string, MappedMembership[]>()\n\t\tfor (const membership of grantedMemberships) {\n\t\t\tconst list = byProject.get(membership.project) ?? []\n\t\t\tlist.push(membership)\n\t\t\tbyProject.set(membership.project, list)\n\t\t}\n\n\t\t// Under `remove`, reconcile every project in the mapping's membership vocabulary — not only the\n\t\t// projects granted this sign-in — so a membership whose claim disappeared entirely (its project is\n\t\t// then absent from `byProject`) is still revoked. `keep` only ever touches the projects it grants.\n\t\tconst projectSlugs = unmatched === 'remove'\n\t\t\t? new Set([...vocabularyMemberships.keys(), ...byProject.keys()])\n\t\t\t: new Set(byProject.keys())\n\n\t\tfor (const projectSlug of projectSlugs) {\n\t\t\tconst project = await db.queryHandler.fetch(new ProjectBySlugQuery(projectSlug))\n\t\t\tif (!project) {\n\t\t\t\t// Mapping references a project that does not exist (or was deleted) — skip it rather\n\t\t\t\t// than fail the whole sign-in. The audit's before/after won't reflect it.\n\t\t\t\tcontinue\n\t\t\t}\n\n\t\t\tconst memberships = byProject.get(projectSlug) ?? []\n\t\t\tconst grantedRoles = new Set(memberships.map(it => it.role))\n\n\t\t\tif (unmatched === 'remove') {\n\t\t\t\t// Removal is bounded to the mapping's own membership vocabulary (project::role named by some\n\t\t\t\t// rule): a role the mapping could grant but doesn't this sign-in is stripped, while a\n\t\t\t\t// membership role no rule names (managed outside the mapping) is left untouched.\n\t\t\t\tconst vocabularyRoles = vocabularyMemberships.get(projectSlug) ?? new Set<string>()\n\t\t\t\tconst existing = await db.queryHandler.fetch(new ProjectMembershipByIdentityQuery({ id: project.id }, [identityId]))\n\t\t\t\tfor (const membership of existing) {\n\t\t\t\t\tif (vocabularyRoles.has(membership.role) && !grantedRoles.has(membership.role)) {\n\t\t\t\t\t\tawait db.commandBus.execute(new RemoveProjectMembershipCommand(project.id, identityId, membership.role))\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfor (const membership of memberships) {\n\t\t\t\t// Under `remove` the IdP is the source of truth, and the system does NOT allow an empty membership\n\t\t\t\t// variable — the direct add-member path hard-deletes a membership whose variable resolves to no\n\t\t\t\t// values (`CreateOrUpdateProjectMembershipCommand` deletes such a row), and the membership\n\t\t\t\t// resolver reports a missing/empty variable as VARIABLE_EMPTY. So a DECLARED variable that resolves\n\t\t\t\t// to no values means the grant is empty-scoped and meaningless: REVOKE the whole membership,\n\t\t\t\t// consistently with that invariant, rather than leaving a role with a missing/empty variable. (CORR-1:\n\t\t\t\t// clearing the variable to `[]` instead would, for a `condition` variable, parse to `{ or: [] }` =\n\t\t\t\t// allow-all — the opposite of revoking.) Under `keep` we never revoke, so an empty variable is simply\n\t\t\t\t// not applied below and the grant stays.\n\t\t\t\tif (unmatched === 'remove' && membership.variables.some(it => it.values.length === 0)) {\n\t\t\t\t\tawait db.commandBus.execute(new RemoveProjectMembershipCommand(project.id, identityId, membership.role))\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\n\t\t\t\tawait db.commandBus.execute(\n\t\t\t\t\tnew CreateOrUpdateProjectMembershipCommand(\n\t\t\t\t\t\tproject.id,\n\t\t\t\t\t\tidentityId,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\trole: membership.role,\n\t\t\t\t\t\t\t// Drop variables with no values: an unset variable simply isn't applied (a role with no\n\t\t\t\t\t\t\t// variables is fine — it sends none). Under `keep` this is the only empty-handling; under\n\t\t\t\t\t\t\t// `remove` an empty DECLARED variable already revoked the whole membership above. Because the\n\t\t\t\t\t\t\t// filtered list never carries an empty `set`, the command's hard-delete-on-empty never fires\n\t\t\t\t\t\t\t// here — so `keep` never revokes a grant, and `remove`'s revocation stays explicit above.\n\t\t\t\t\t\t\tvariables: membership.variables\n\t\t\t\t\t\t\t\t.filter(it => it.values.length > 0)\n\t\t\t\t\t\t\t\t.map(it => ({ name: it.name, set: [...it.values] })),\n\t\t\t\t\t\t},\n\t\t\t\t\t),\n\t\t\t\t)\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Snapshot the identity's mapping-relevant memberships for the audit delta: its memberships (with\n\t * variable values) for exactly the (project, role) pairs in the mapping's vocabulary. Bounding is by\n\t * (project, role) — a membership whose ROLE no rule names is excluded entirely — which keeps the audit\n\t * consistent with the (also vocabulary-bounded) reconciliation. NOTE the bound is per-(project, role),\n\t * NOT per-variable-name: for an in-vocabulary membership ALL its variables are snapshotted, including any\n\t * variable managed OUTSIDE the mapping on that same role (e.g. an admin-set `condition` filter), and a\n\t * `passthrough` variable's value IS the verbatim external claim value. So the idp_role_mapped event_data\n\t * can disclose claim-derived / admin-managed variable values for a mapped role to system:viewAuthLog\n\t * readers — by design (the recorded value is the ACL grant being audited). Variable values are included\n\t * so a sign-in that only changes a claim-derived membership variable — itself a row-level ACL grant — is\n\t * still detected as a change and audited.\n\t */\n\tprivate async snapshot(\n\t\tdb: DatabaseContext,\n\t\tidentityId: string,\n\t\tvocabularyMemberships: ReadonlyMap<string, ReadonlySet<string>>,\n\t): Promise<ClaimMappingSnapshot> {\n\t\tconst memberships: MappedMembership[] = []\n\t\tfor (const [slug, roles] of vocabularyMemberships) {\n\t\t\tconst project = await db.queryHandler.fetch(new ProjectBySlugQuery(slug))\n\t\t\tif (!project) {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tconst rows = await db.queryHandler.fetch(new ProjectMembershipByIdentityQuery({ id: project.id }, [identityId]))\n\t\t\tfor (const row of rows) {\n\t\t\t\t// Only the roles the mapping itself could grant: a membership role no rule names (managed outside\n\t\t\t\t// the mapping) is neither reconciled nor disclosed in the audit delta.\n\t\t\t\tif (roles.has(row.role)) {\n\t\t\t\t\tmemberships.push({ project: slug, role: row.role, variables: row.variables })\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn { memberships: sortMemberships(memberships) }\n\t}\n}\n\n// Stable ordering (memberships by project+role, variables by name, values sorted) so `snapshotEquals`\n// compares by content, not by the DB's row/array order. Assumes variable `values` are always JSON\n// string arrays (which they are — the membership commands only ever store `string[]`); a non-string\n// element would make the default sort order-unstable and the JSON.stringify comparison spurious, so\n// keep variable values string-typed.\nconst sortMemberships = (memberships: readonly MappedMembership[]): readonly MappedMembership[] =>\n\t[...memberships]\n\t\t.map(membership => ({\n\t\t\tproject: membership.project,\n\t\t\trole: membership.role,\n\t\t\tvariables: [...membership.variables]\n\t\t\t\t.map(variable => ({ name: variable.name, values: [...variable.values].sort() }))\n\t\t\t\t.sort((a, b) => a.name.localeCompare(b.name)),\n\t\t}))\n\t\t.sort((a, b) => a.project.localeCompare(b.project) || a.role.localeCompare(b.role))\n\nconst snapshotEquals = (a: ClaimMappingSnapshot, b: ClaimMappingSnapshot): boolean => JSON.stringify(a) === JSON.stringify(b)\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDPHandlerRegistry.cjs","sources":["../../../../../../../packages/engine-tenant-api/src/model/service/idp/IDPHandlerRegistry.ts"],"sourcesContent":["import { IdentityProviderHandler } from './IdentityProviderHandler'\nimport { IdentityProviderNotFoundError } from './IdentityProviderNotFoundError'\n\nexport class IDPHandlerRegistry {\n\tprivate providers: Record<string, IdentityProviderHandler<any>> = {}\n\n\tpublic registerHandler(type: string, provider: IdentityProviderHandler<any>): void {\n\t\tthis.providers[type] = provider\n\t}\n\n\tpublic getHandlerOrNull(type: string): IdentityProviderHandler<{}> | null {\n\t\treturn this.providers[type] ?? null\n\t}\n\n\tpublic getHandler(type: string): IdentityProviderHandler<{}> {\n\t\tconst provider = this.providers[type]\n\t\tif (!provider) {\n\t\t\tthrow new IdentityProviderNotFoundError(`Identity provider handler ${type} not found`)\n\t\t}\n\t\treturn provider\n\t}\n}\n"],"names":["IdentityProviderNotFoundError"],"mappings":";;;;;;AAGO,MAAM,mBAAmB;AAAA,EAAzB,cAAA;AACN,kBAAA,MAAQ,aAA0D,EAAC;AAAA,EAAA;AAAA,EAE5D,gBAAgB,MAAc,UAA8C;AAClF,SAAK,UAAU,IAAI,IAAI;AAAA,EACxB;AAAA,EAEO,iBAAiB,MAAkD;AACzE,WAAO,KAAK,UAAU,IAAI,KAAK;AAAA,EAChC;AAAA,EAEO,WAAW,MAA2C;AAC5D,UAAM,WAAW,KAAK,UAAU,IAAI;AACpC,QAAI,CAAC,UAAU;AACd,YAAM,IAAIA,8BAAAA,8BAA8B,6BAA6B,IAAI,YAAY;AAAA,IACtF;AACA,WAAO;AAAA,EACR;AACD;;"}
|
|
1
|
+
{"version":3,"file":"IDPHandlerRegistry.cjs","sources":["../../../../../../../packages/engine-tenant-api/src/model/service/idp/IDPHandlerRegistry.ts"],"sourcesContent":["import { IdentityProviderHandler } from './IdentityProviderHandler.js'\nimport { IdentityProviderNotFoundError } from './IdentityProviderNotFoundError.js'\n\nexport class IDPHandlerRegistry {\n\tprivate providers: Record<string, IdentityProviderHandler<any>> = {}\n\n\tpublic registerHandler(type: string, provider: IdentityProviderHandler<any>): void {\n\t\tthis.providers[type] = provider\n\t}\n\n\tpublic getHandlerOrNull(type: string): IdentityProviderHandler<{}> | null {\n\t\treturn this.providers[type] ?? null\n\t}\n\n\tpublic getHandler(type: string): IdentityProviderHandler<{}> {\n\t\tconst provider = this.providers[type]\n\t\tif (!provider) {\n\t\t\tthrow new IdentityProviderNotFoundError(`Identity provider handler ${type} not found`)\n\t\t}\n\t\treturn provider\n\t}\n}\n"],"names":["IdentityProviderNotFoundError"],"mappings":";;;;;;AAGO,MAAM,mBAAmB;AAAA,EAAzB,cAAA;AACN,kBAAA,MAAQ,aAA0D,EAAC;AAAA,EAAA;AAAA,EAE5D,gBAAgB,MAAc,UAA8C;AAClF,SAAK,UAAU,IAAI,IAAI;AAAA,EACxB;AAAA,EAEO,iBAAiB,MAAkD;AACzE,WAAO,KAAK,UAAU,IAAI,KAAK;AAAA,EAChC;AAAA,EAEO,WAAW,MAA2C;AAC5D,UAAM,WAAW,KAAK,UAAU,IAAI;AACpC,QAAI,CAAC,UAAU;AACd,YAAM,IAAIA,8BAAAA,8BAA8B,6BAA6B,IAAI,YAAY;AAAA,IACtF;AACA,WAAO;AAAA,EACR;AACD;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDPHandlerRegistry.js","sources":["../../../../../../../packages/engine-tenant-api/src/model/service/idp/IDPHandlerRegistry.ts"],"sourcesContent":["import { IdentityProviderHandler } from './IdentityProviderHandler'\nimport { IdentityProviderNotFoundError } from './IdentityProviderNotFoundError'\n\nexport class IDPHandlerRegistry {\n\tprivate providers: Record<string, IdentityProviderHandler<any>> = {}\n\n\tpublic registerHandler(type: string, provider: IdentityProviderHandler<any>): void {\n\t\tthis.providers[type] = provider\n\t}\n\n\tpublic getHandlerOrNull(type: string): IdentityProviderHandler<{}> | null {\n\t\treturn this.providers[type] ?? null\n\t}\n\n\tpublic getHandler(type: string): IdentityProviderHandler<{}> {\n\t\tconst provider = this.providers[type]\n\t\tif (!provider) {\n\t\t\tthrow new IdentityProviderNotFoundError(`Identity provider handler ${type} not found`)\n\t\t}\n\t\treturn provider\n\t}\n}\n"],"names":[],"mappings":";;;;AAGO,MAAM,mBAAmB;AAAA,EAAzB,cAAA;AACN,kBAAA,MAAQ,aAA0D,EAAC;AAAA,EAAA;AAAA,EAE5D,gBAAgB,MAAc,UAA8C;AAClF,SAAK,UAAU,IAAI,IAAI;AAAA,EACxB;AAAA,EAEO,iBAAiB,MAAkD;AACzE,WAAO,KAAK,UAAU,IAAI,KAAK;AAAA,EAChC;AAAA,EAEO,WAAW,MAA2C;AAC5D,UAAM,WAAW,KAAK,UAAU,IAAI;AACpC,QAAI,CAAC,UAAU;AACd,YAAM,IAAI,8BAA8B,6BAA6B,IAAI,YAAY;AAAA,IACtF;AACA,WAAO;AAAA,EACR;AACD;"}
|
|
1
|
+
{"version":3,"file":"IDPHandlerRegistry.js","sources":["../../../../../../../packages/engine-tenant-api/src/model/service/idp/IDPHandlerRegistry.ts"],"sourcesContent":["import { IdentityProviderHandler } from './IdentityProviderHandler.js'\nimport { IdentityProviderNotFoundError } from './IdentityProviderNotFoundError.js'\n\nexport class IDPHandlerRegistry {\n\tprivate providers: Record<string, IdentityProviderHandler<any>> = {}\n\n\tpublic registerHandler(type: string, provider: IdentityProviderHandler<any>): void {\n\t\tthis.providers[type] = provider\n\t}\n\n\tpublic getHandlerOrNull(type: string): IdentityProviderHandler<{}> | null {\n\t\treturn this.providers[type] ?? null\n\t}\n\n\tpublic getHandler(type: string): IdentityProviderHandler<{}> {\n\t\tconst provider = this.providers[type]\n\t\tif (!provider) {\n\t\t\tthrow new IdentityProviderNotFoundError(`Identity provider handler ${type} not found`)\n\t\t}\n\t\treturn provider\n\t}\n}\n"],"names":[],"mappings":";;;;AAGO,MAAM,mBAAmB;AAAA,EAAzB,cAAA;AACN,kBAAA,MAAQ,aAA0D,EAAC;AAAA,EAAA;AAAA,EAE5D,gBAAgB,MAAc,UAA8C;AAClF,SAAK,UAAU,IAAI,IAAI;AAAA,EACxB;AAAA,EAEO,iBAAiB,MAAkD;AACzE,WAAO,KAAK,UAAU,IAAI,KAAK;AAAA,EAChC;AAAA,EAEO,WAAW,MAA2C;AAC5D,UAAM,WAAW,KAAK,UAAU,IAAI;AACpC,QAAI,CAAC,UAAU;AACd,YAAM,IAAI,8BAA8B,6BAA6B,IAAI,YAAY;AAAA,IACtF;AACA,WAAO;AAAA,EACR;AACD;"}
|
|
@@ -3,28 +3,34 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
const Response = require("../../utils/Response.cjs");
|
|
4
4
|
require("../../queries/apiKey/ApiKeyQuery.cjs");
|
|
5
5
|
require("@contember/database");
|
|
6
|
+
require("../../type/ApiKey.cjs");
|
|
6
7
|
const IdentityProviderBySlugQuery = require("../../queries/idp/IdentityProviderBySlugQuery.cjs");
|
|
7
8
|
const IdentityProvidersQuery = require("../../queries/idp/IdentityProvidersQuery.cjs");
|
|
8
9
|
require("../../authorization/PermissionActions.cjs");
|
|
9
10
|
require("@contember/authorization");
|
|
11
|
+
require("../../authorization/CustomRolePermissions.cjs");
|
|
10
12
|
require("../../authorization/PermissionContext.cjs");
|
|
11
|
-
require("../../authorization/
|
|
13
|
+
require("../../authorization/TargetIdentityPermission.cjs");
|
|
12
14
|
require("@contember/schema");
|
|
13
15
|
const CreateIdpCommand = require("../../commands/idp/CreateIdpCommand.cjs");
|
|
14
16
|
const IdentityProviderNotFoundError = require("./IdentityProviderNotFoundError.cjs");
|
|
15
17
|
const InvalidIDPConfigurationError = require("./InvalidIDPConfigurationError.cjs");
|
|
18
|
+
const ClaimMapping = require("./ClaimMapping.cjs");
|
|
19
|
+
const ClaimMappingValidation = require("./ClaimMappingValidation.cjs");
|
|
16
20
|
const DisableIdpCommand = require("../../commands/idp/DisableIdpCommand.cjs");
|
|
17
21
|
const EnableIdpCommand = require("../../commands/idp/EnableIdpCommand.cjs");
|
|
18
22
|
const UpdateIdpCommand = require("../../commands/idp/UpdateIdpCommand.cjs");
|
|
19
23
|
class IDPManager {
|
|
20
|
-
constructor(idpRegistry) {
|
|
24
|
+
constructor(idpRegistry, projectSchemaResolver) {
|
|
21
25
|
this.idpRegistry = idpRegistry;
|
|
26
|
+
this.projectSchemaResolver = projectSchemaResolver;
|
|
22
27
|
}
|
|
23
28
|
async addIDP(db, idp) {
|
|
24
29
|
return await db.transaction(async (db2) => {
|
|
25
30
|
try {
|
|
26
31
|
const providerService = this.idpRegistry.getHandler(idp.type);
|
|
27
32
|
this.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(idp.configuration), idp.configuration);
|
|
33
|
+
await this.assertValidClaimMapping(idp.configuration);
|
|
28
34
|
} catch (e) {
|
|
29
35
|
if (e instanceof IdentityProviderNotFoundError.IdentityProviderNotFoundError) {
|
|
30
36
|
return new Response.ResponseError("UNKNOWN_TYPE", `IDP type ${idp.type} not found`);
|
|
@@ -72,28 +78,13 @@ class IDPManager {
|
|
|
72
78
|
if (!existing) {
|
|
73
79
|
return new Response.ResponseError("NOT_FOUND", `IDP ${slug} not found`);
|
|
74
80
|
}
|
|
75
|
-
const newConfiguration = (
|
|
76
|
-
if (!data.configuration) {
|
|
77
|
-
return existing.configuration;
|
|
78
|
-
}
|
|
79
|
-
if (!mergeConfiguration) {
|
|
80
|
-
return data.configuration;
|
|
81
|
-
}
|
|
82
|
-
const newConfiguration2 = { ...existing.configuration };
|
|
83
|
-
for (const [key, value] of Object.entries(data.configuration)) {
|
|
84
|
-
if (value === null) {
|
|
85
|
-
delete newConfiguration2[key];
|
|
86
|
-
} else {
|
|
87
|
-
newConfiguration2[key] = value;
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
return newConfiguration2;
|
|
91
|
-
})();
|
|
81
|
+
const newConfiguration = !data.configuration ? existing.configuration : mergeConfiguration ? deepMergeConfiguration(existing.configuration, data.configuration) : data.configuration;
|
|
92
82
|
try {
|
|
93
83
|
const type = data.type ?? existing.type;
|
|
94
84
|
const providerService = this.idpRegistry.getHandler(type);
|
|
95
85
|
if (data.configuration !== void 0 || type !== existing.type) {
|
|
96
86
|
this.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(newConfiguration), newConfiguration);
|
|
87
|
+
await this.assertValidClaimMapping(newConfiguration);
|
|
97
88
|
}
|
|
98
89
|
} catch (e) {
|
|
99
90
|
if (e instanceof InvalidIDPConfigurationError.InvalidIDPConfigurationError) {
|
|
@@ -122,10 +113,12 @@ class IDPManager {
|
|
|
122
113
|
* The parsed result carries exactly the keys the provider understood, so the difference against
|
|
123
114
|
* the submitted object is the set of ignored keys. All of them are reported at once (rather than
|
|
124
115
|
* the first, as `Typesafe.noExtraProps` would) so a configuration with several typos takes one
|
|
125
|
-
* round trip to fix.
|
|
116
|
+
* round trip to fix, matching {@link findRemovedRuleKeys}.
|
|
126
117
|
*
|
|
127
|
-
*
|
|
128
|
-
*
|
|
118
|
+
* Only the top level is checked: nested shapes that need strictness validate themselves
|
|
119
|
+
* (`claimMapping` via {@link parseClaimMapping}). Reading a stored configuration is deliberately
|
|
120
|
+
* left untouched — this runs at write time only, so a row written before this check keeps
|
|
121
|
+
* authenticating instead of locking its users out.
|
|
129
122
|
*/
|
|
130
123
|
assertNoUnknownConfigurationKeys(parsed, submitted) {
|
|
131
124
|
const known = new Set(Object.keys(parsed));
|
|
@@ -136,6 +129,48 @@ class IDPManager {
|
|
|
136
129
|
);
|
|
137
130
|
}
|
|
138
131
|
}
|
|
132
|
+
/**
|
|
133
|
+
* Validate the optional A09 `claimMapping` embedded in an IdP `configuration`: reject a removed
|
|
134
|
+
* `grantRoles` (global-role mapping was dropped — see {@link parseClaimMapping}), reject a
|
|
135
|
+
* malformed shape, and validate each granted membership's role against the target project's ACL
|
|
136
|
+
* schema (mirroring the direct add-member path). Throws {@link InvalidIDPConfigurationError},
|
|
137
|
+
* surfaced as `INVALID_CONFIGURATION`.
|
|
138
|
+
*/
|
|
139
|
+
async assertValidClaimMapping(configuration) {
|
|
140
|
+
const removed = ClaimMapping.findRemovedRuleKeys(configuration);
|
|
141
|
+
if (removed.length > 0) {
|
|
142
|
+
throw new InvalidIDPConfigurationError.InvalidIDPConfigurationError(
|
|
143
|
+
`claimMapping no longer supports ${removed.join(", ")} (global-role mapping was removed); grant a project membership via grantMembership instead`
|
|
144
|
+
);
|
|
145
|
+
}
|
|
146
|
+
let mapping;
|
|
147
|
+
try {
|
|
148
|
+
mapping = ClaimMapping.parseClaimMapping(configuration);
|
|
149
|
+
} catch (e) {
|
|
150
|
+
throw new InvalidIDPConfigurationError.InvalidIDPConfigurationError(`Invalid claimMapping: ${e instanceof Error ? e.message : String(e)}`);
|
|
151
|
+
}
|
|
152
|
+
if (!mapping) {
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
const shapeErrors = ClaimMapping.findClaimMappingShapeErrors(mapping);
|
|
156
|
+
if (shapeErrors.length > 0) {
|
|
157
|
+
throw new InvalidIDPConfigurationError.InvalidIDPConfigurationError(shapeErrors[0]);
|
|
158
|
+
}
|
|
159
|
+
for (const rule of mapping.rules) {
|
|
160
|
+
const membership = rule.grantMembership;
|
|
161
|
+
if (!membership) {
|
|
162
|
+
continue;
|
|
163
|
+
}
|
|
164
|
+
const schema = await this.projectSchemaResolver.getSchema(membership.project);
|
|
165
|
+
if (!schema) {
|
|
166
|
+
continue;
|
|
167
|
+
}
|
|
168
|
+
const errors = ClaimMappingValidation.validateClaimMappingMembership(schema.acl, membership);
|
|
169
|
+
if (errors.length > 0) {
|
|
170
|
+
throw new InvalidIDPConfigurationError.InvalidIDPConfigurationError(errors[0].message);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
139
174
|
async listIDP(db) {
|
|
140
175
|
const result = await db.queryHandler.fetch(new IdentityProvidersQuery.IdentityProvidersQuery());
|
|
141
176
|
return result.map((it) => {
|
|
@@ -145,5 +180,22 @@ class IDPManager {
|
|
|
145
180
|
});
|
|
146
181
|
}
|
|
147
182
|
}
|
|
183
|
+
const deepMergeConfiguration = (base, updates) => {
|
|
184
|
+
const result = { ...base };
|
|
185
|
+
for (const [key, value] of Object.entries(updates)) {
|
|
186
|
+
if (key === "__proto__" || key === "constructor" || key === "prototype") {
|
|
187
|
+
continue;
|
|
188
|
+
}
|
|
189
|
+
if (value === null) {
|
|
190
|
+
delete result[key];
|
|
191
|
+
} else if (ClaimMapping.isRecord(value)) {
|
|
192
|
+
const existingChild = result[key];
|
|
193
|
+
result[key] = deepMergeConfiguration(ClaimMapping.isRecord(existingChild) ? existingChild : {}, value);
|
|
194
|
+
} else {
|
|
195
|
+
result[key] = value;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
return result;
|
|
199
|
+
};
|
|
148
200
|
exports.IDPManager = IDPManager;
|
|
149
201
|
//# sourceMappingURL=IDPManager.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDPManager.cjs","sources":["../../../../../../../packages/engine-tenant-api/src/model/service/idp/IDPManager.ts"],"sourcesContent":["import { Response, ResponseError, ResponseOk } from '../../utils/Response'\nimport { AddIdpErrorCode, DisableIdpErrorCode, EnableIdpErrorCode, UpdateIdpErrorCode } from '../../../schema'\nimport { DatabaseContext } from '../../utils'\nimport { IdentityProviderData } from '../../type'\nimport { IdentityProviderBySlugQuery, IdentityProvidersQuery } from '../../queries'\nimport { CreateIdpCommand } from '../../commands/idp/CreateIdpCommand'\nimport { IDPHandlerRegistry } from './IDPHandlerRegistry'\nimport { IdentityProviderNotFoundError } from './IdentityProviderNotFoundError'\nimport { InvalidIDPConfigurationError } from './InvalidIDPConfigurationError'\nimport { DisableIdpCommand } from '../../commands/idp/DisableIdpCommand'\nimport { EnableIdpCommand } from '../../commands/idp/EnableIdpCommand'\nimport { UpdateIdpCommand, UpdateIdpData } from '../../commands/idp/UpdateIdpCommand'\nimport { IdentityProviderDto } from '../../queries/idp/types'\n\nexport class IDPManager {\n\tconstructor(\n\t\tprivate readonly idpRegistry: IDPHandlerRegistry,\n\t) {\n\t}\n\n\tpublic async addIDP(db: DatabaseContext, idp: IdentityProviderData): Promise<RegisterIDPResponse> {\n\t\treturn await db.transaction(async (db): Promise<RegisterIDPResponse> => {\n\t\t\ttry {\n\t\t\t\tconst providerService = this.idpRegistry.getHandler(idp.type)\n\t\t\t\tthis.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(idp.configuration), idp.configuration)\n\t\t\t} catch (e) {\n\t\t\t\tif (e instanceof IdentityProviderNotFoundError) {\n\t\t\t\t\treturn new ResponseError('UNKNOWN_TYPE', `IDP type ${idp.type} not found`)\n\t\t\t\t}\n\t\t\t\tif (e instanceof InvalidIDPConfigurationError) {\n\t\t\t\t\treturn new ResponseError('INVALID_CONFIGURATION', `Invalid IDP configuration: ${e.message}`)\n\t\t\t\t}\n\t\t\t\tthrow e\n\t\t\t}\n\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(idp.slug))\n\t\t\tif (existing) {\n\t\t\t\treturn new ResponseError('ALREADY_EXISTS', `IDP with slug ${idp.slug} already exists`)\n\t\t\t}\n\t\t\tawait db.commandBus.execute(new CreateIdpCommand(idp))\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async disableIDP(db: DatabaseContext, slug: string): Promise<DisableIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\t\t\tif (!existing.disabledAt) {\n\t\t\t\tawait db.commandBus.execute(new DisableIdpCommand(existing.id))\n\t\t\t}\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async enableIDP(db: DatabaseContext, slug: string): Promise<EnableIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\t\t\tif (existing.disabledAt) {\n\t\t\t\tawait db.commandBus.execute(new EnableIdpCommand(existing.id))\n\t\t\t}\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async updateIDP(db: DatabaseContext, slug: string, data: UpdateIdpData, mergeConfiguration: boolean): Promise<UpdateIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\n\t\t\tconst newConfiguration = (() => {\n\t\t\t\tif (!data.configuration) {\n\t\t\t\t\treturn existing.configuration\n\t\t\t\t}\n\t\t\t\tif (!mergeConfiguration) {\n\t\t\t\t\treturn data.configuration\n\t\t\t\t}\n\n\t\t\t\tconst newConfiguration = { ...existing.configuration }\n\t\t\t\tfor (const [key, value] of Object.entries(data.configuration)) {\n\t\t\t\t\tif (value === null) {\n\t\t\t\t\t\tdelete newConfiguration[key]\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnewConfiguration[key] = value\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn newConfiguration\n\t\t\t})()\n\n\t\t\ttry {\n\t\t\t\tconst type = data.type ?? existing.type\n\t\t\t\tconst providerService = this.idpRegistry.getHandler(type)\n\t\t\t\tif (data.configuration !== undefined || type !== existing.type) {\n\t\t\t\t\tthis.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(newConfiguration), newConfiguration)\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tif (e instanceof InvalidIDPConfigurationError) {\n\t\t\t\t\treturn new ResponseError('INVALID_CONFIGURATION', `Invalid IDP configuration: ${e.message}`)\n\t\t\t\t}\n\t\t\t\tthrow e\n\t\t\t}\n\n\t\t\tawait db.commandBus.execute(\n\t\t\t\tnew UpdateIdpCommand(existing.id, {\n\t\t\t\t\t...data,\n\t\t\t\t\tconfiguration: data.configuration ? newConfiguration : undefined,\n\t\t\t\t}),\n\t\t\t)\n\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\t/**\n\t * Reject top-level `configuration` keys the provider does not recognise.\n\t *\n\t * Every provider configuration is parsed with `Typesafe.partial`, which silently DROPS unknown\n\t * properties. Without this check `addIDP` / `updateIDP` answer `ok` to a configuration the\n\t * provider will never act on — a typo like `fetchUserinfo` (lowercase i) reads as a successfully\n\t * applied setting while the option stays off, and an option that a given engine version does not\n\t * support yet looks indistinguishable from one that works.\n\t *\n\t * The parsed result carries exactly the keys the provider understood, so the difference against\n\t * the submitted object is the set of ignored keys. All of them are reported at once (rather than\n\t * the first, as `Typesafe.noExtraProps` would) so a configuration with several typos takes one\n\t * round trip to fix.\n\t *\n\t * Write time only: reading a stored configuration is deliberately left untouched, so a row written\n\t * before this check keeps authenticating instead of locking its users out.\n\t */\n\tprivate assertNoUnknownConfigurationKeys(parsed: {}, submitted: Record<string, unknown>): void {\n\t\tconst known = new Set(Object.keys(parsed))\n\t\tconst unknown = Object.keys(submitted).filter(key => !known.has(key))\n\t\tif (unknown.length > 0) {\n\t\t\tthrow new InvalidIDPConfigurationError(\n\t\t\t\t`unknown configuration ${unknown.length === 1 ? 'property' : 'properties'} ${unknown.join(', ')}; `\n\t\t\t\t\t+ `remove ${unknown.length === 1 ? 'it' : 'them'} or check the spelling — the provider would ignore ${unknown.length === 1 ? 'it' : 'them'}`,\n\t\t\t)\n\t\t}\n\t}\n\n\tpublic async listIDP(db: DatabaseContext): Promise<IdentityProviderDto[]> {\n\t\tconst result = await db.queryHandler.fetch(new IdentityProvidersQuery())\n\t\treturn result.map(it => {\n\t\t\tconst providerService = this.idpRegistry.getHandlerOrNull(it.type)\n\t\t\tconst configuration = providerService?.getPublicConfiguration\n\t\t\t\t? providerService.getPublicConfiguration(it.configuration)\n\t\t\t\t: it.configuration\n\n\t\t\treturn { ...it, configuration }\n\t\t})\n\t}\n}\n\nexport type RegisterIDPResponse = Response<null, AddIdpErrorCode>\nexport type DisableIDPResponse = Response<null, DisableIdpErrorCode>\nexport type EnableIDPResponse = Response<null, EnableIdpErrorCode>\nexport type UpdateIDPResponse = Response<null, UpdateIdpErrorCode>\n"],"names":["db","IdentityProviderNotFoundError","ResponseError","InvalidIDPConfigurationError","IdentityProviderBySlugQuery","CreateIdpCommand","ResponseOk","DisableIdpCommand","EnableIdpCommand","newConfiguration","UpdateIdpCommand","IdentityProvidersQuery"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IDPManager.cjs","sources":["../../../../../../../packages/engine-tenant-api/src/model/service/idp/IDPManager.ts"],"sourcesContent":["import { Response, ResponseError, ResponseOk } from '../../utils/Response.js'\nimport { AddIdpErrorCode, DisableIdpErrorCode, EnableIdpErrorCode, UpdateIdpErrorCode } from '../../../schema/index.js'\nimport { DatabaseContext } from '../../utils/index.js'\nimport { IdentityProviderData } from '../../type/index.js'\nimport { IdentityProviderBySlugQuery, IdentityProvidersQuery } from '../../queries/index.js'\nimport { CreateIdpCommand } from '../../commands/idp/CreateIdpCommand.js'\nimport { IDPHandlerRegistry } from './IDPHandlerRegistry.js'\nimport { IdentityProviderNotFoundError } from './IdentityProviderNotFoundError.js'\nimport { InvalidIDPConfigurationError } from './InvalidIDPConfigurationError.js'\nimport { findClaimMappingShapeErrors, findRemovedRuleKeys, isRecord, parseClaimMapping } from './ClaimMapping.js'\nimport { validateClaimMappingMembership } from './ClaimMappingValidation.js'\nimport { ProjectSchemaResolver } from '../../type/index.js'\nimport { DisableIdpCommand } from '../../commands/idp/DisableIdpCommand.js'\nimport { EnableIdpCommand } from '../../commands/idp/EnableIdpCommand.js'\nimport { UpdateIdpCommand, UpdateIdpData } from '../../commands/idp/UpdateIdpCommand.js'\nimport { IdentityProviderDto } from '../../queries/idp/types.js'\n\nexport class IDPManager {\n\tconstructor(\n\t\tprivate readonly idpRegistry: IDPHandlerRegistry,\n\t\tprivate readonly projectSchemaResolver: ProjectSchemaResolver,\n\t) {\n\t}\n\n\tpublic async addIDP(db: DatabaseContext, idp: IdentityProviderData): Promise<RegisterIDPResponse> {\n\t\treturn await db.transaction(async (db): Promise<RegisterIDPResponse> => {\n\t\t\ttry {\n\t\t\t\tconst providerService = this.idpRegistry.getHandler(idp.type)\n\t\t\t\tthis.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(idp.configuration), idp.configuration)\n\t\t\t\tawait this.assertValidClaimMapping(idp.configuration)\n\t\t\t} catch (e) {\n\t\t\t\tif (e instanceof IdentityProviderNotFoundError) {\n\t\t\t\t\treturn new ResponseError('UNKNOWN_TYPE', `IDP type ${idp.type} not found`)\n\t\t\t\t}\n\t\t\t\tif (e instanceof InvalidIDPConfigurationError) {\n\t\t\t\t\treturn new ResponseError('INVALID_CONFIGURATION', `Invalid IDP configuration: ${e.message}`)\n\t\t\t\t}\n\t\t\t\tthrow e\n\t\t\t}\n\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(idp.slug))\n\t\t\tif (existing) {\n\t\t\t\treturn new ResponseError('ALREADY_EXISTS', `IDP with slug ${idp.slug} already exists`)\n\t\t\t}\n\t\t\tawait db.commandBus.execute(new CreateIdpCommand(idp))\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async disableIDP(db: DatabaseContext, slug: string): Promise<DisableIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\t\t\tif (!existing.disabledAt) {\n\t\t\t\tawait db.commandBus.execute(new DisableIdpCommand(existing.id))\n\t\t\t}\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async enableIDP(db: DatabaseContext, slug: string): Promise<EnableIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\t\t\tif (existing.disabledAt) {\n\t\t\t\tawait db.commandBus.execute(new EnableIdpCommand(existing.id))\n\t\t\t}\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async updateIDP(db: DatabaseContext, slug: string, data: UpdateIdpData, mergeConfiguration: boolean): Promise<UpdateIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\n\t\t\tconst newConfiguration = !data.configuration\n\t\t\t\t? existing.configuration\n\t\t\t\t: (mergeConfiguration ? deepMergeConfiguration(existing.configuration, data.configuration) : data.configuration)\n\n\t\t\ttry {\n\t\t\t\tconst type = data.type ?? existing.type\n\t\t\t\tconst providerService = this.idpRegistry.getHandler(type)\n\t\t\t\tif (data.configuration !== undefined || type !== existing.type) {\n\t\t\t\t\tthis.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(newConfiguration), newConfiguration)\n\t\t\t\t\tawait this.assertValidClaimMapping(newConfiguration)\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tif (e instanceof InvalidIDPConfigurationError) {\n\t\t\t\t\treturn new ResponseError('INVALID_CONFIGURATION', `Invalid IDP configuration: ${e.message}`)\n\t\t\t\t}\n\t\t\t\tthrow e\n\t\t\t}\n\n\t\t\tawait db.commandBus.execute(\n\t\t\t\tnew UpdateIdpCommand(existing.id, {\n\t\t\t\t\t...data,\n\t\t\t\t\tconfiguration: data.configuration ? newConfiguration : undefined,\n\t\t\t\t}),\n\t\t\t)\n\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\t/**\n\t * Reject top-level `configuration` keys the provider does not recognise.\n\t *\n\t * Every provider configuration is parsed with `Typesafe.partial`, which silently DROPS unknown\n\t * properties. Without this check `addIDP` / `updateIDP` answer `ok` to a configuration the\n\t * provider will never act on — a typo like `fetchUserinfo` (lowercase i) reads as a successfully\n\t * applied setting while the option stays off, and an option that a given engine version does not\n\t * support yet looks indistinguishable from one that works.\n\t *\n\t * The parsed result carries exactly the keys the provider understood, so the difference against\n\t * the submitted object is the set of ignored keys. All of them are reported at once (rather than\n\t * the first, as `Typesafe.noExtraProps` would) so a configuration with several typos takes one\n\t * round trip to fix, matching {@link findRemovedRuleKeys}.\n\t *\n\t * Only the top level is checked: nested shapes that need strictness validate themselves\n\t * (`claimMapping` via {@link parseClaimMapping}). Reading a stored configuration is deliberately\n\t * left untouched — this runs at write time only, so a row written before this check keeps\n\t * authenticating instead of locking its users out.\n\t */\n\tprivate assertNoUnknownConfigurationKeys(parsed: {}, submitted: Record<string, unknown>): void {\n\t\tconst known = new Set(Object.keys(parsed))\n\t\tconst unknown = Object.keys(submitted).filter(key => !known.has(key))\n\t\tif (unknown.length > 0) {\n\t\t\tthrow new InvalidIDPConfigurationError(\n\t\t\t\t`unknown configuration ${unknown.length === 1 ? 'property' : 'properties'} ${unknown.join(', ')}; `\n\t\t\t\t\t+ `remove ${unknown.length === 1 ? 'it' : 'them'} or check the spelling — the provider would ignore ${unknown.length === 1 ? 'it' : 'them'}`,\n\t\t\t)\n\t\t}\n\t}\n\n\t/**\n\t * Validate the optional A09 `claimMapping` embedded in an IdP `configuration`: reject a removed\n\t * `grantRoles` (global-role mapping was dropped — see {@link parseClaimMapping}), reject a\n\t * malformed shape, and validate each granted membership's role against the target project's ACL\n\t * schema (mirroring the direct add-member path). Throws {@link InvalidIDPConfigurationError},\n\t * surfaced as `INVALID_CONFIGURATION`.\n\t */\n\tprivate async assertValidClaimMapping(configuration: Record<string, unknown>): Promise<void> {\n\t\tconst removed = findRemovedRuleKeys(configuration)\n\t\tif (removed.length > 0) {\n\t\t\tthrow new InvalidIDPConfigurationError(\n\t\t\t\t`claimMapping no longer supports ${removed.join(', ')} (global-role mapping was removed); grant a project membership via grantMembership instead`,\n\t\t\t)\n\t\t}\n\t\tlet mapping\n\t\ttry {\n\t\t\tmapping = parseClaimMapping(configuration)\n\t\t} catch (e) {\n\t\t\tthrow new InvalidIDPConfigurationError(`Invalid claimMapping: ${e instanceof Error ? e.message : String(e)}`)\n\t\t}\n\t\tif (!mapping) {\n\t\t\treturn\n\t\t}\n\t\t// Reject contradictory / empty-by-construction rule shapes (a rule setting both equals+contains; a\n\t\t// variable's `from.where` without `from.pick`) before the per-project ACL checks, so a\n\t\t// misconfiguration is caught even when the target project does not exist yet (ACL loop skipped).\n\t\tconst shapeErrors = findClaimMappingShapeErrors(mapping)\n\t\tif (shapeErrors.length > 0) {\n\t\t\tthrow new InvalidIDPConfigurationError(shapeErrors[0])\n\t\t}\n\t\t// Validate each granted membership's role AND its variables against the target project's ACL schema,\n\t\t// via the shared {@link validateClaimMappingMembership} (the same checks `IDPClaimSyncService`\n\t\t// re-runs at apply time, so the two enforcement points can't drift). A project that does not (yet)\n\t\t// exist is skipped — it may be created later, and a sign-in referencing a missing project is\n\t\t// harmless (the grant is skipped). NOTE: this validation runs only here at add/update time and is\n\t\t// NOT re-checked when the project/role appears later; the unsafe-condition-variable case is caught\n\t\t// again at apply time by `IDPClaimSyncService`, but other drift (unknown role/variable) is not.\n\t\tfor (const rule of mapping.rules) {\n\t\t\tconst membership = rule.grantMembership\n\t\t\tif (!membership) {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tconst schema = await this.projectSchemaResolver.getSchema(membership.project)\n\t\t\tif (!schema) {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tconst errors = validateClaimMappingMembership(schema.acl, membership)\n\t\t\tif (errors.length > 0) {\n\t\t\t\tthrow new InvalidIDPConfigurationError(errors[0].message)\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic async listIDP(db: DatabaseContext): Promise<IdentityProviderDto[]> {\n\t\tconst result = await db.queryHandler.fetch(new IdentityProvidersQuery())\n\t\treturn result.map(it => {\n\t\t\tconst providerService = this.idpRegistry.getHandlerOrNull(it.type)\n\t\t\tconst configuration = providerService?.getPublicConfiguration\n\t\t\t\t? providerService.getPublicConfiguration(it.configuration)\n\t\t\t\t: it.configuration\n\n\t\t\treturn { ...it, configuration }\n\t\t})\n\t}\n}\n\n/**\n * Recursively merge configurer-supplied `updates` into the stored `base` configuration (the\n * `mergeConfiguration: true` path of {@link IDPManager.updateIDP}), returning a new object:\n * - a plain-object value is merged INTO an existing plain-object value at the same key, so updating one\n * field of a nested config object preserves its siblings. This matters for `configuration.claimMapping`,\n * which holds two independent concerns in one object — the OIDC identity-remap (`email` / `name` /\n * `externalIdentifier` / `attributesKey`) and the A09 `rules` — so a shallow replace of `claimMapping`\n * while updating one would silently wipe the other.\n * - any non-object value (including ARRAYS, e.g. the A09 `rules` list) REPLACES wholesale — arrays are\n * never merged element-wise.\n * - a `null` value DELETES the key (the established \"send null to unset\" convention).\n * - `__proto__` / `constructor` / `prototype` keys are skipped at EVERY level: they are never a legitimate\n * config field and writing one through could pollute the object's prototype.\n */\nconst deepMergeConfiguration = (base: Record<string, unknown>, updates: Record<string, unknown>): Record<string, unknown> => {\n\tconst result: Record<string, unknown> = { ...base }\n\tfor (const [key, value] of Object.entries(updates)) {\n\t\tif (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n\t\t\tcontinue\n\t\t}\n\t\tif (value === null) {\n\t\t\tdelete result[key]\n\t\t} else if (isRecord(value)) {\n\t\t\tconst existingChild = result[key]\n\t\t\tresult[key] = deepMergeConfiguration(isRecord(existingChild) ? existingChild : {}, value)\n\t\t} else {\n\t\t\tresult[key] = value\n\t\t}\n\t}\n\treturn result\n}\n\nexport type RegisterIDPResponse = Response<null, AddIdpErrorCode>\nexport type DisableIDPResponse = Response<null, DisableIdpErrorCode>\nexport type EnableIDPResponse = Response<null, EnableIdpErrorCode>\nexport type UpdateIDPResponse = Response<null, UpdateIdpErrorCode>\n"],"names":["db","IdentityProviderNotFoundError","ResponseError","InvalidIDPConfigurationError","IdentityProviderBySlugQuery","CreateIdpCommand","ResponseOk","DisableIdpCommand","EnableIdpCommand","UpdateIdpCommand","findRemovedRuleKeys","parseClaimMapping","findClaimMappingShapeErrors","validateClaimMappingMembership","IdentityProvidersQuery","isRecord"],"mappings":"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"}
|
|
@@ -1,28 +1,34 @@
|
|
|
1
1
|
import { ResponseError, ResponseOk } from "../../utils/Response.js";
|
|
2
2
|
import "../../queries/apiKey/ApiKeyQuery.js";
|
|
3
3
|
import "@contember/database";
|
|
4
|
+
import "../../type/ApiKey.js";
|
|
4
5
|
import { IdentityProviderBySlugQuery } from "../../queries/idp/IdentityProviderBySlugQuery.js";
|
|
5
6
|
import { IdentityProvidersQuery } from "../../queries/idp/IdentityProvidersQuery.js";
|
|
6
7
|
import "../../authorization/PermissionActions.js";
|
|
7
8
|
import "@contember/authorization";
|
|
9
|
+
import "../../authorization/CustomRolePermissions.js";
|
|
8
10
|
import "../../authorization/PermissionContext.js";
|
|
9
|
-
import "../../authorization/
|
|
11
|
+
import "../../authorization/TargetIdentityPermission.js";
|
|
10
12
|
import "@contember/schema";
|
|
11
13
|
import { CreateIdpCommand } from "../../commands/idp/CreateIdpCommand.js";
|
|
12
14
|
import { IdentityProviderNotFoundError } from "./IdentityProviderNotFoundError.js";
|
|
13
15
|
import { InvalidIDPConfigurationError } from "./InvalidIDPConfigurationError.js";
|
|
16
|
+
import { findRemovedRuleKeys, parseClaimMapping, findClaimMappingShapeErrors, isRecord } from "./ClaimMapping.js";
|
|
17
|
+
import { validateClaimMappingMembership } from "./ClaimMappingValidation.js";
|
|
14
18
|
import { DisableIdpCommand } from "../../commands/idp/DisableIdpCommand.js";
|
|
15
19
|
import { EnableIdpCommand } from "../../commands/idp/EnableIdpCommand.js";
|
|
16
20
|
import { UpdateIdpCommand } from "../../commands/idp/UpdateIdpCommand.js";
|
|
17
21
|
class IDPManager {
|
|
18
|
-
constructor(idpRegistry) {
|
|
22
|
+
constructor(idpRegistry, projectSchemaResolver) {
|
|
19
23
|
this.idpRegistry = idpRegistry;
|
|
24
|
+
this.projectSchemaResolver = projectSchemaResolver;
|
|
20
25
|
}
|
|
21
26
|
async addIDP(db, idp) {
|
|
22
27
|
return await db.transaction(async (db2) => {
|
|
23
28
|
try {
|
|
24
29
|
const providerService = this.idpRegistry.getHandler(idp.type);
|
|
25
30
|
this.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(idp.configuration), idp.configuration);
|
|
31
|
+
await this.assertValidClaimMapping(idp.configuration);
|
|
26
32
|
} catch (e) {
|
|
27
33
|
if (e instanceof IdentityProviderNotFoundError) {
|
|
28
34
|
return new ResponseError("UNKNOWN_TYPE", `IDP type ${idp.type} not found`);
|
|
@@ -70,28 +76,13 @@ class IDPManager {
|
|
|
70
76
|
if (!existing) {
|
|
71
77
|
return new ResponseError("NOT_FOUND", `IDP ${slug} not found`);
|
|
72
78
|
}
|
|
73
|
-
const newConfiguration = (
|
|
74
|
-
if (!data.configuration) {
|
|
75
|
-
return existing.configuration;
|
|
76
|
-
}
|
|
77
|
-
if (!mergeConfiguration) {
|
|
78
|
-
return data.configuration;
|
|
79
|
-
}
|
|
80
|
-
const newConfiguration2 = { ...existing.configuration };
|
|
81
|
-
for (const [key, value] of Object.entries(data.configuration)) {
|
|
82
|
-
if (value === null) {
|
|
83
|
-
delete newConfiguration2[key];
|
|
84
|
-
} else {
|
|
85
|
-
newConfiguration2[key] = value;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
return newConfiguration2;
|
|
89
|
-
})();
|
|
79
|
+
const newConfiguration = !data.configuration ? existing.configuration : mergeConfiguration ? deepMergeConfiguration(existing.configuration, data.configuration) : data.configuration;
|
|
90
80
|
try {
|
|
91
81
|
const type = data.type ?? existing.type;
|
|
92
82
|
const providerService = this.idpRegistry.getHandler(type);
|
|
93
83
|
if (data.configuration !== void 0 || type !== existing.type) {
|
|
94
84
|
this.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(newConfiguration), newConfiguration);
|
|
85
|
+
await this.assertValidClaimMapping(newConfiguration);
|
|
95
86
|
}
|
|
96
87
|
} catch (e) {
|
|
97
88
|
if (e instanceof InvalidIDPConfigurationError) {
|
|
@@ -120,10 +111,12 @@ class IDPManager {
|
|
|
120
111
|
* The parsed result carries exactly the keys the provider understood, so the difference against
|
|
121
112
|
* the submitted object is the set of ignored keys. All of them are reported at once (rather than
|
|
122
113
|
* the first, as `Typesafe.noExtraProps` would) so a configuration with several typos takes one
|
|
123
|
-
* round trip to fix.
|
|
114
|
+
* round trip to fix, matching {@link findRemovedRuleKeys}.
|
|
124
115
|
*
|
|
125
|
-
*
|
|
126
|
-
*
|
|
116
|
+
* Only the top level is checked: nested shapes that need strictness validate themselves
|
|
117
|
+
* (`claimMapping` via {@link parseClaimMapping}). Reading a stored configuration is deliberately
|
|
118
|
+
* left untouched — this runs at write time only, so a row written before this check keeps
|
|
119
|
+
* authenticating instead of locking its users out.
|
|
127
120
|
*/
|
|
128
121
|
assertNoUnknownConfigurationKeys(parsed, submitted) {
|
|
129
122
|
const known = new Set(Object.keys(parsed));
|
|
@@ -134,6 +127,48 @@ class IDPManager {
|
|
|
134
127
|
);
|
|
135
128
|
}
|
|
136
129
|
}
|
|
130
|
+
/**
|
|
131
|
+
* Validate the optional A09 `claimMapping` embedded in an IdP `configuration`: reject a removed
|
|
132
|
+
* `grantRoles` (global-role mapping was dropped — see {@link parseClaimMapping}), reject a
|
|
133
|
+
* malformed shape, and validate each granted membership's role against the target project's ACL
|
|
134
|
+
* schema (mirroring the direct add-member path). Throws {@link InvalidIDPConfigurationError},
|
|
135
|
+
* surfaced as `INVALID_CONFIGURATION`.
|
|
136
|
+
*/
|
|
137
|
+
async assertValidClaimMapping(configuration) {
|
|
138
|
+
const removed = findRemovedRuleKeys(configuration);
|
|
139
|
+
if (removed.length > 0) {
|
|
140
|
+
throw new InvalidIDPConfigurationError(
|
|
141
|
+
`claimMapping no longer supports ${removed.join(", ")} (global-role mapping was removed); grant a project membership via grantMembership instead`
|
|
142
|
+
);
|
|
143
|
+
}
|
|
144
|
+
let mapping;
|
|
145
|
+
try {
|
|
146
|
+
mapping = parseClaimMapping(configuration);
|
|
147
|
+
} catch (e) {
|
|
148
|
+
throw new InvalidIDPConfigurationError(`Invalid claimMapping: ${e instanceof Error ? e.message : String(e)}`);
|
|
149
|
+
}
|
|
150
|
+
if (!mapping) {
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
const shapeErrors = findClaimMappingShapeErrors(mapping);
|
|
154
|
+
if (shapeErrors.length > 0) {
|
|
155
|
+
throw new InvalidIDPConfigurationError(shapeErrors[0]);
|
|
156
|
+
}
|
|
157
|
+
for (const rule of mapping.rules) {
|
|
158
|
+
const membership = rule.grantMembership;
|
|
159
|
+
if (!membership) {
|
|
160
|
+
continue;
|
|
161
|
+
}
|
|
162
|
+
const schema = await this.projectSchemaResolver.getSchema(membership.project);
|
|
163
|
+
if (!schema) {
|
|
164
|
+
continue;
|
|
165
|
+
}
|
|
166
|
+
const errors = validateClaimMappingMembership(schema.acl, membership);
|
|
167
|
+
if (errors.length > 0) {
|
|
168
|
+
throw new InvalidIDPConfigurationError(errors[0].message);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
137
172
|
async listIDP(db) {
|
|
138
173
|
const result = await db.queryHandler.fetch(new IdentityProvidersQuery());
|
|
139
174
|
return result.map((it) => {
|
|
@@ -143,6 +178,23 @@ class IDPManager {
|
|
|
143
178
|
});
|
|
144
179
|
}
|
|
145
180
|
}
|
|
181
|
+
const deepMergeConfiguration = (base, updates) => {
|
|
182
|
+
const result = { ...base };
|
|
183
|
+
for (const [key, value] of Object.entries(updates)) {
|
|
184
|
+
if (key === "__proto__" || key === "constructor" || key === "prototype") {
|
|
185
|
+
continue;
|
|
186
|
+
}
|
|
187
|
+
if (value === null) {
|
|
188
|
+
delete result[key];
|
|
189
|
+
} else if (isRecord(value)) {
|
|
190
|
+
const existingChild = result[key];
|
|
191
|
+
result[key] = deepMergeConfiguration(isRecord(existingChild) ? existingChild : {}, value);
|
|
192
|
+
} else {
|
|
193
|
+
result[key] = value;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
return result;
|
|
197
|
+
};
|
|
146
198
|
export {
|
|
147
199
|
IDPManager
|
|
148
200
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IDPManager.js","sources":["../../../../../../../packages/engine-tenant-api/src/model/service/idp/IDPManager.ts"],"sourcesContent":["import { Response, ResponseError, ResponseOk } from '../../utils/Response'\nimport { AddIdpErrorCode, DisableIdpErrorCode, EnableIdpErrorCode, UpdateIdpErrorCode } from '../../../schema'\nimport { DatabaseContext } from '../../utils'\nimport { IdentityProviderData } from '../../type'\nimport { IdentityProviderBySlugQuery, IdentityProvidersQuery } from '../../queries'\nimport { CreateIdpCommand } from '../../commands/idp/CreateIdpCommand'\nimport { IDPHandlerRegistry } from './IDPHandlerRegistry'\nimport { IdentityProviderNotFoundError } from './IdentityProviderNotFoundError'\nimport { InvalidIDPConfigurationError } from './InvalidIDPConfigurationError'\nimport { DisableIdpCommand } from '../../commands/idp/DisableIdpCommand'\nimport { EnableIdpCommand } from '../../commands/idp/EnableIdpCommand'\nimport { UpdateIdpCommand, UpdateIdpData } from '../../commands/idp/UpdateIdpCommand'\nimport { IdentityProviderDto } from '../../queries/idp/types'\n\nexport class IDPManager {\n\tconstructor(\n\t\tprivate readonly idpRegistry: IDPHandlerRegistry,\n\t) {\n\t}\n\n\tpublic async addIDP(db: DatabaseContext, idp: IdentityProviderData): Promise<RegisterIDPResponse> {\n\t\treturn await db.transaction(async (db): Promise<RegisterIDPResponse> => {\n\t\t\ttry {\n\t\t\t\tconst providerService = this.idpRegistry.getHandler(idp.type)\n\t\t\t\tthis.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(idp.configuration), idp.configuration)\n\t\t\t} catch (e) {\n\t\t\t\tif (e instanceof IdentityProviderNotFoundError) {\n\t\t\t\t\treturn new ResponseError('UNKNOWN_TYPE', `IDP type ${idp.type} not found`)\n\t\t\t\t}\n\t\t\t\tif (e instanceof InvalidIDPConfigurationError) {\n\t\t\t\t\treturn new ResponseError('INVALID_CONFIGURATION', `Invalid IDP configuration: ${e.message}`)\n\t\t\t\t}\n\t\t\t\tthrow e\n\t\t\t}\n\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(idp.slug))\n\t\t\tif (existing) {\n\t\t\t\treturn new ResponseError('ALREADY_EXISTS', `IDP with slug ${idp.slug} already exists`)\n\t\t\t}\n\t\t\tawait db.commandBus.execute(new CreateIdpCommand(idp))\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async disableIDP(db: DatabaseContext, slug: string): Promise<DisableIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\t\t\tif (!existing.disabledAt) {\n\t\t\t\tawait db.commandBus.execute(new DisableIdpCommand(existing.id))\n\t\t\t}\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async enableIDP(db: DatabaseContext, slug: string): Promise<EnableIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\t\t\tif (existing.disabledAt) {\n\t\t\t\tawait db.commandBus.execute(new EnableIdpCommand(existing.id))\n\t\t\t}\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async updateIDP(db: DatabaseContext, slug: string, data: UpdateIdpData, mergeConfiguration: boolean): Promise<UpdateIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\n\t\t\tconst newConfiguration = (() => {\n\t\t\t\tif (!data.configuration) {\n\t\t\t\t\treturn existing.configuration\n\t\t\t\t}\n\t\t\t\tif (!mergeConfiguration) {\n\t\t\t\t\treturn data.configuration\n\t\t\t\t}\n\n\t\t\t\tconst newConfiguration = { ...existing.configuration }\n\t\t\t\tfor (const [key, value] of Object.entries(data.configuration)) {\n\t\t\t\t\tif (value === null) {\n\t\t\t\t\t\tdelete newConfiguration[key]\n\t\t\t\t\t} else {\n\t\t\t\t\t\tnewConfiguration[key] = value\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn newConfiguration\n\t\t\t})()\n\n\t\t\ttry {\n\t\t\t\tconst type = data.type ?? existing.type\n\t\t\t\tconst providerService = this.idpRegistry.getHandler(type)\n\t\t\t\tif (data.configuration !== undefined || type !== existing.type) {\n\t\t\t\t\tthis.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(newConfiguration), newConfiguration)\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tif (e instanceof InvalidIDPConfigurationError) {\n\t\t\t\t\treturn new ResponseError('INVALID_CONFIGURATION', `Invalid IDP configuration: ${e.message}`)\n\t\t\t\t}\n\t\t\t\tthrow e\n\t\t\t}\n\n\t\t\tawait db.commandBus.execute(\n\t\t\t\tnew UpdateIdpCommand(existing.id, {\n\t\t\t\t\t...data,\n\t\t\t\t\tconfiguration: data.configuration ? newConfiguration : undefined,\n\t\t\t\t}),\n\t\t\t)\n\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\t/**\n\t * Reject top-level `configuration` keys the provider does not recognise.\n\t *\n\t * Every provider configuration is parsed with `Typesafe.partial`, which silently DROPS unknown\n\t * properties. Without this check `addIDP` / `updateIDP` answer `ok` to a configuration the\n\t * provider will never act on — a typo like `fetchUserinfo` (lowercase i) reads as a successfully\n\t * applied setting while the option stays off, and an option that a given engine version does not\n\t * support yet looks indistinguishable from one that works.\n\t *\n\t * The parsed result carries exactly the keys the provider understood, so the difference against\n\t * the submitted object is the set of ignored keys. All of them are reported at once (rather than\n\t * the first, as `Typesafe.noExtraProps` would) so a configuration with several typos takes one\n\t * round trip to fix.\n\t *\n\t * Write time only: reading a stored configuration is deliberately left untouched, so a row written\n\t * before this check keeps authenticating instead of locking its users out.\n\t */\n\tprivate assertNoUnknownConfigurationKeys(parsed: {}, submitted: Record<string, unknown>): void {\n\t\tconst known = new Set(Object.keys(parsed))\n\t\tconst unknown = Object.keys(submitted).filter(key => !known.has(key))\n\t\tif (unknown.length > 0) {\n\t\t\tthrow new InvalidIDPConfigurationError(\n\t\t\t\t`unknown configuration ${unknown.length === 1 ? 'property' : 'properties'} ${unknown.join(', ')}; `\n\t\t\t\t\t+ `remove ${unknown.length === 1 ? 'it' : 'them'} or check the spelling — the provider would ignore ${unknown.length === 1 ? 'it' : 'them'}`,\n\t\t\t)\n\t\t}\n\t}\n\n\tpublic async listIDP(db: DatabaseContext): Promise<IdentityProviderDto[]> {\n\t\tconst result = await db.queryHandler.fetch(new IdentityProvidersQuery())\n\t\treturn result.map(it => {\n\t\t\tconst providerService = this.idpRegistry.getHandlerOrNull(it.type)\n\t\t\tconst configuration = providerService?.getPublicConfiguration\n\t\t\t\t? providerService.getPublicConfiguration(it.configuration)\n\t\t\t\t: it.configuration\n\n\t\t\treturn { ...it, configuration }\n\t\t})\n\t}\n}\n\nexport type RegisterIDPResponse = Response<null, AddIdpErrorCode>\nexport type DisableIDPResponse = Response<null, DisableIdpErrorCode>\nexport type EnableIDPResponse = Response<null, EnableIdpErrorCode>\nexport type UpdateIDPResponse = Response<null, UpdateIdpErrorCode>\n"],"names":["db","newConfiguration"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IDPManager.js","sources":["../../../../../../../packages/engine-tenant-api/src/model/service/idp/IDPManager.ts"],"sourcesContent":["import { Response, ResponseError, ResponseOk } from '../../utils/Response.js'\nimport { AddIdpErrorCode, DisableIdpErrorCode, EnableIdpErrorCode, UpdateIdpErrorCode } from '../../../schema/index.js'\nimport { DatabaseContext } from '../../utils/index.js'\nimport { IdentityProviderData } from '../../type/index.js'\nimport { IdentityProviderBySlugQuery, IdentityProvidersQuery } from '../../queries/index.js'\nimport { CreateIdpCommand } from '../../commands/idp/CreateIdpCommand.js'\nimport { IDPHandlerRegistry } from './IDPHandlerRegistry.js'\nimport { IdentityProviderNotFoundError } from './IdentityProviderNotFoundError.js'\nimport { InvalidIDPConfigurationError } from './InvalidIDPConfigurationError.js'\nimport { findClaimMappingShapeErrors, findRemovedRuleKeys, isRecord, parseClaimMapping } from './ClaimMapping.js'\nimport { validateClaimMappingMembership } from './ClaimMappingValidation.js'\nimport { ProjectSchemaResolver } from '../../type/index.js'\nimport { DisableIdpCommand } from '../../commands/idp/DisableIdpCommand.js'\nimport { EnableIdpCommand } from '../../commands/idp/EnableIdpCommand.js'\nimport { UpdateIdpCommand, UpdateIdpData } from '../../commands/idp/UpdateIdpCommand.js'\nimport { IdentityProviderDto } from '../../queries/idp/types.js'\n\nexport class IDPManager {\n\tconstructor(\n\t\tprivate readonly idpRegistry: IDPHandlerRegistry,\n\t\tprivate readonly projectSchemaResolver: ProjectSchemaResolver,\n\t) {\n\t}\n\n\tpublic async addIDP(db: DatabaseContext, idp: IdentityProviderData): Promise<RegisterIDPResponse> {\n\t\treturn await db.transaction(async (db): Promise<RegisterIDPResponse> => {\n\t\t\ttry {\n\t\t\t\tconst providerService = this.idpRegistry.getHandler(idp.type)\n\t\t\t\tthis.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(idp.configuration), idp.configuration)\n\t\t\t\tawait this.assertValidClaimMapping(idp.configuration)\n\t\t\t} catch (e) {\n\t\t\t\tif (e instanceof IdentityProviderNotFoundError) {\n\t\t\t\t\treturn new ResponseError('UNKNOWN_TYPE', `IDP type ${idp.type} not found`)\n\t\t\t\t}\n\t\t\t\tif (e instanceof InvalidIDPConfigurationError) {\n\t\t\t\t\treturn new ResponseError('INVALID_CONFIGURATION', `Invalid IDP configuration: ${e.message}`)\n\t\t\t\t}\n\t\t\t\tthrow e\n\t\t\t}\n\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(idp.slug))\n\t\t\tif (existing) {\n\t\t\t\treturn new ResponseError('ALREADY_EXISTS', `IDP with slug ${idp.slug} already exists`)\n\t\t\t}\n\t\t\tawait db.commandBus.execute(new CreateIdpCommand(idp))\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async disableIDP(db: DatabaseContext, slug: string): Promise<DisableIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\t\t\tif (!existing.disabledAt) {\n\t\t\t\tawait db.commandBus.execute(new DisableIdpCommand(existing.id))\n\t\t\t}\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async enableIDP(db: DatabaseContext, slug: string): Promise<EnableIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\t\t\tif (existing.disabledAt) {\n\t\t\t\tawait db.commandBus.execute(new EnableIdpCommand(existing.id))\n\t\t\t}\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\tpublic async updateIDP(db: DatabaseContext, slug: string, data: UpdateIdpData, mergeConfiguration: boolean): Promise<UpdateIDPResponse> {\n\t\treturn await db.transaction(async db => {\n\t\t\tconst existing = await db.queryHandler.fetch(new IdentityProviderBySlugQuery(slug))\n\t\t\tif (!existing) {\n\t\t\t\treturn new ResponseError('NOT_FOUND', `IDP ${slug} not found`)\n\t\t\t}\n\n\t\t\tconst newConfiguration = !data.configuration\n\t\t\t\t? existing.configuration\n\t\t\t\t: (mergeConfiguration ? deepMergeConfiguration(existing.configuration, data.configuration) : data.configuration)\n\n\t\t\ttry {\n\t\t\t\tconst type = data.type ?? existing.type\n\t\t\t\tconst providerService = this.idpRegistry.getHandler(type)\n\t\t\t\tif (data.configuration !== undefined || type !== existing.type) {\n\t\t\t\t\tthis.assertNoUnknownConfigurationKeys(providerService.validateConfiguration(newConfiguration), newConfiguration)\n\t\t\t\t\tawait this.assertValidClaimMapping(newConfiguration)\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tif (e instanceof InvalidIDPConfigurationError) {\n\t\t\t\t\treturn new ResponseError('INVALID_CONFIGURATION', `Invalid IDP configuration: ${e.message}`)\n\t\t\t\t}\n\t\t\t\tthrow e\n\t\t\t}\n\n\t\t\tawait db.commandBus.execute(\n\t\t\t\tnew UpdateIdpCommand(existing.id, {\n\t\t\t\t\t...data,\n\t\t\t\t\tconfiguration: data.configuration ? newConfiguration : undefined,\n\t\t\t\t}),\n\t\t\t)\n\n\t\t\treturn new ResponseOk(null)\n\t\t})\n\t}\n\n\t/**\n\t * Reject top-level `configuration` keys the provider does not recognise.\n\t *\n\t * Every provider configuration is parsed with `Typesafe.partial`, which silently DROPS unknown\n\t * properties. Without this check `addIDP` / `updateIDP` answer `ok` to a configuration the\n\t * provider will never act on — a typo like `fetchUserinfo` (lowercase i) reads as a successfully\n\t * applied setting while the option stays off, and an option that a given engine version does not\n\t * support yet looks indistinguishable from one that works.\n\t *\n\t * The parsed result carries exactly the keys the provider understood, so the difference against\n\t * the submitted object is the set of ignored keys. All of them are reported at once (rather than\n\t * the first, as `Typesafe.noExtraProps` would) so a configuration with several typos takes one\n\t * round trip to fix, matching {@link findRemovedRuleKeys}.\n\t *\n\t * Only the top level is checked: nested shapes that need strictness validate themselves\n\t * (`claimMapping` via {@link parseClaimMapping}). Reading a stored configuration is deliberately\n\t * left untouched — this runs at write time only, so a row written before this check keeps\n\t * authenticating instead of locking its users out.\n\t */\n\tprivate assertNoUnknownConfigurationKeys(parsed: {}, submitted: Record<string, unknown>): void {\n\t\tconst known = new Set(Object.keys(parsed))\n\t\tconst unknown = Object.keys(submitted).filter(key => !known.has(key))\n\t\tif (unknown.length > 0) {\n\t\t\tthrow new InvalidIDPConfigurationError(\n\t\t\t\t`unknown configuration ${unknown.length === 1 ? 'property' : 'properties'} ${unknown.join(', ')}; `\n\t\t\t\t\t+ `remove ${unknown.length === 1 ? 'it' : 'them'} or check the spelling — the provider would ignore ${unknown.length === 1 ? 'it' : 'them'}`,\n\t\t\t)\n\t\t}\n\t}\n\n\t/**\n\t * Validate the optional A09 `claimMapping` embedded in an IdP `configuration`: reject a removed\n\t * `grantRoles` (global-role mapping was dropped — see {@link parseClaimMapping}), reject a\n\t * malformed shape, and validate each granted membership's role against the target project's ACL\n\t * schema (mirroring the direct add-member path). Throws {@link InvalidIDPConfigurationError},\n\t * surfaced as `INVALID_CONFIGURATION`.\n\t */\n\tprivate async assertValidClaimMapping(configuration: Record<string, unknown>): Promise<void> {\n\t\tconst removed = findRemovedRuleKeys(configuration)\n\t\tif (removed.length > 0) {\n\t\t\tthrow new InvalidIDPConfigurationError(\n\t\t\t\t`claimMapping no longer supports ${removed.join(', ')} (global-role mapping was removed); grant a project membership via grantMembership instead`,\n\t\t\t)\n\t\t}\n\t\tlet mapping\n\t\ttry {\n\t\t\tmapping = parseClaimMapping(configuration)\n\t\t} catch (e) {\n\t\t\tthrow new InvalidIDPConfigurationError(`Invalid claimMapping: ${e instanceof Error ? e.message : String(e)}`)\n\t\t}\n\t\tif (!mapping) {\n\t\t\treturn\n\t\t}\n\t\t// Reject contradictory / empty-by-construction rule shapes (a rule setting both equals+contains; a\n\t\t// variable's `from.where` without `from.pick`) before the per-project ACL checks, so a\n\t\t// misconfiguration is caught even when the target project does not exist yet (ACL loop skipped).\n\t\tconst shapeErrors = findClaimMappingShapeErrors(mapping)\n\t\tif (shapeErrors.length > 0) {\n\t\t\tthrow new InvalidIDPConfigurationError(shapeErrors[0])\n\t\t}\n\t\t// Validate each granted membership's role AND its variables against the target project's ACL schema,\n\t\t// via the shared {@link validateClaimMappingMembership} (the same checks `IDPClaimSyncService`\n\t\t// re-runs at apply time, so the two enforcement points can't drift). A project that does not (yet)\n\t\t// exist is skipped — it may be created later, and a sign-in referencing a missing project is\n\t\t// harmless (the grant is skipped). NOTE: this validation runs only here at add/update time and is\n\t\t// NOT re-checked when the project/role appears later; the unsafe-condition-variable case is caught\n\t\t// again at apply time by `IDPClaimSyncService`, but other drift (unknown role/variable) is not.\n\t\tfor (const rule of mapping.rules) {\n\t\t\tconst membership = rule.grantMembership\n\t\t\tif (!membership) {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tconst schema = await this.projectSchemaResolver.getSchema(membership.project)\n\t\t\tif (!schema) {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tconst errors = validateClaimMappingMembership(schema.acl, membership)\n\t\t\tif (errors.length > 0) {\n\t\t\t\tthrow new InvalidIDPConfigurationError(errors[0].message)\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic async listIDP(db: DatabaseContext): Promise<IdentityProviderDto[]> {\n\t\tconst result = await db.queryHandler.fetch(new IdentityProvidersQuery())\n\t\treturn result.map(it => {\n\t\t\tconst providerService = this.idpRegistry.getHandlerOrNull(it.type)\n\t\t\tconst configuration = providerService?.getPublicConfiguration\n\t\t\t\t? providerService.getPublicConfiguration(it.configuration)\n\t\t\t\t: it.configuration\n\n\t\t\treturn { ...it, configuration }\n\t\t})\n\t}\n}\n\n/**\n * Recursively merge configurer-supplied `updates` into the stored `base` configuration (the\n * `mergeConfiguration: true` path of {@link IDPManager.updateIDP}), returning a new object:\n * - a plain-object value is merged INTO an existing plain-object value at the same key, so updating one\n * field of a nested config object preserves its siblings. This matters for `configuration.claimMapping`,\n * which holds two independent concerns in one object — the OIDC identity-remap (`email` / `name` /\n * `externalIdentifier` / `attributesKey`) and the A09 `rules` — so a shallow replace of `claimMapping`\n * while updating one would silently wipe the other.\n * - any non-object value (including ARRAYS, e.g. the A09 `rules` list) REPLACES wholesale — arrays are\n * never merged element-wise.\n * - a `null` value DELETES the key (the established \"send null to unset\" convention).\n * - `__proto__` / `constructor` / `prototype` keys are skipped at EVERY level: they are never a legitimate\n * config field and writing one through could pollute the object's prototype.\n */\nconst deepMergeConfiguration = (base: Record<string, unknown>, updates: Record<string, unknown>): Record<string, unknown> => {\n\tconst result: Record<string, unknown> = { ...base }\n\tfor (const [key, value] of Object.entries(updates)) {\n\t\tif (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n\t\t\tcontinue\n\t\t}\n\t\tif (value === null) {\n\t\t\tdelete result[key]\n\t\t} else if (isRecord(value)) {\n\t\t\tconst existingChild = result[key]\n\t\t\tresult[key] = deepMergeConfiguration(isRecord(existingChild) ? existingChild : {}, value)\n\t\t} else {\n\t\t\tresult[key] = value\n\t\t}\n\t}\n\treturn result\n}\n\nexport type RegisterIDPResponse = Response<null, AddIdpErrorCode>\nexport type DisableIDPResponse = Response<null, DisableIdpErrorCode>\nexport type EnableIDPResponse = Response<null, EnableIdpErrorCode>\nexport type UpdateIDPResponse = Response<null, UpdateIdpErrorCode>\n"],"names":["db"],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const Typesafe = require("@contember/typesafe");
|
|
4
|
+
function _interopNamespaceDefault(e) {
|
|
5
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
6
|
+
if (e) {
|
|
7
|
+
for (const k in e) {
|
|
8
|
+
if (k !== "default") {
|
|
9
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
10
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: () => e[k]
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
n.default = e;
|
|
18
|
+
return Object.freeze(n);
|
|
19
|
+
}
|
|
20
|
+
const Typesafe__namespace = /* @__PURE__ */ _interopNamespaceDefault(Typesafe);
|
|
21
|
+
const IDPRevalidationConfig = Typesafe__namespace.partial({
|
|
22
|
+
enabled: Typesafe__namespace.boolean,
|
|
23
|
+
/**
|
|
24
|
+
* Fraction (0–1) of the access-token lifetime after which a proactive background (SWR)
|
|
25
|
+
* refresh starts — e.g. 0.5 = refresh once the token is half-expired. Default 0.5.
|
|
26
|
+
*/
|
|
27
|
+
softRefreshThreshold: Typesafe__namespace.number,
|
|
28
|
+
/**
|
|
29
|
+
* Single-flight floor as a Postgres interval string: the minimum gap between revalidation
|
|
30
|
+
* attempts, so a burst of requests past the threshold triggers only one refresh.
|
|
31
|
+
* Default "10 seconds".
|
|
32
|
+
*/
|
|
33
|
+
minInterval: Typesafe__namespace.string,
|
|
34
|
+
/**
|
|
35
|
+
* Throttle used when the IdP returns no token expiry (so the lifetime-based cadence can't
|
|
36
|
+
* apply), as a Postgres interval string. Default "5 minutes".
|
|
37
|
+
*/
|
|
38
|
+
fallbackInterval: Typesafe__namespace.string,
|
|
39
|
+
/**
|
|
40
|
+
* `auto` (default): SWR/background before expiry, blocking once expired. `blocking`: always
|
|
41
|
+
* synchronous (zero revocation lag, at the cost of latency on the revalidation tick).
|
|
42
|
+
*/
|
|
43
|
+
mode: Typesafe__namespace.enumeration("auto", "blocking"),
|
|
44
|
+
/** What to do when the IdP reports the session as gone. Currently only `revoke`. */
|
|
45
|
+
onFailure: Typesafe__namespace.enumeration("revoke")
|
|
46
|
+
});
|
|
47
|
+
const REVALIDATION_DEFAULT_SOFT_THRESHOLD = 0.5;
|
|
48
|
+
const REVALIDATION_DEFAULT_MIN_INTERVAL = "10 seconds";
|
|
49
|
+
const REVALIDATION_DEFAULT_FALLBACK_INTERVAL = "5 minutes";
|
|
50
|
+
exports.IDPRevalidationConfig = IDPRevalidationConfig;
|
|
51
|
+
exports.REVALIDATION_DEFAULT_FALLBACK_INTERVAL = REVALIDATION_DEFAULT_FALLBACK_INTERVAL;
|
|
52
|
+
exports.REVALIDATION_DEFAULT_MIN_INTERVAL = REVALIDATION_DEFAULT_MIN_INTERVAL;
|
|
53
|
+
exports.REVALIDATION_DEFAULT_SOFT_THRESHOLD = REVALIDATION_DEFAULT_SOFT_THRESHOLD;
|
|
54
|
+
//# sourceMappingURL=IDPRevalidation.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IDPRevalidation.cjs","sources":["../../../../../../../packages/engine-tenant-api/src/model/service/idp/IDPRevalidation.ts"],"sourcesContent":["import * as Typesafe from '@contember/typesafe'\n\n/**\n * Provider-agnostic re-validation settings, stored on an IdP's `configuration.revalidation`.\n * Read both by the provider (to decide whether to capture session state at sign-in) and by\n * the generic verify hook (`ApiKeyManager.verifyAndProlong`) to drive re-validation.\n *\n * The cadence is driven by the **access-token lifetime**, not a fixed interval: while the\n * token is fresh the session is vouched-for and nothing happens; past `softRefreshThreshold`\n * of its lifetime a proactive background (SWR) refresh kicks in; once the token has actually\n * expired the refresh becomes blocking. See {@link IdpSessionRevalidator}.\n *\n * All fields optional; absent / `enabled: false` reproduces the pre-A24 behaviour exactly.\n */\nexport const IDPRevalidationConfig = Typesafe.partial({\n\tenabled: Typesafe.boolean,\n\t/**\n\t * Fraction (0–1) of the access-token lifetime after which a proactive background (SWR)\n\t * refresh starts — e.g. 0.5 = refresh once the token is half-expired. Default 0.5.\n\t */\n\tsoftRefreshThreshold: Typesafe.number,\n\t/**\n\t * Single-flight floor as a Postgres interval string: the minimum gap between revalidation\n\t * attempts, so a burst of requests past the threshold triggers only one refresh.\n\t * Default \"10 seconds\".\n\t */\n\tminInterval: Typesafe.string,\n\t/**\n\t * Throttle used when the IdP returns no token expiry (so the lifetime-based cadence can't\n\t * apply), as a Postgres interval string. Default \"5 minutes\".\n\t */\n\tfallbackInterval: Typesafe.string,\n\t/**\n\t * `auto` (default): SWR/background before expiry, blocking once expired. `blocking`: always\n\t * synchronous (zero revocation lag, at the cost of latency on the revalidation tick).\n\t */\n\tmode: Typesafe.enumeration('auto', 'blocking'),\n\t/** What to do when the IdP reports the session as gone. Currently only `revoke`. */\n\tonFailure: Typesafe.enumeration('revoke'),\n})\n\nexport type IDPRevalidationConfig = ReturnType<typeof IDPRevalidationConfig>\n\nexport const REVALIDATION_DEFAULT_SOFT_THRESHOLD = 0.5\nexport const REVALIDATION_DEFAULT_MIN_INTERVAL = '10 seconds'\nexport const REVALIDATION_DEFAULT_FALLBACK_INTERVAL = '5 minutes'\n"],"names":["Typesafe"],"mappings":";;;;;;;;;;;;;;;;;;;;AAcO,MAAM,wBAAwBA,oBAAS,QAAQ;AAAA,EACrD,SAASA,oBAAS;AAAA;AAAA;AAAA;AAAA;AAAA,EAKlB,sBAAsBA,oBAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAM/B,aAAaA,oBAAS;AAAA;AAAA;AAAA;AAAA;AAAA,EAKtB,kBAAkBA,oBAAS;AAAA;AAAA;AAAA;AAAA;AAAA,EAK3B,MAAMA,oBAAS,YAAY,QAAQ,UAAU;AAAA;AAAA,EAE7C,WAAWA,oBAAS,YAAY,QAAQ;AACzC,CAAC;AAIM,MAAM,sCAAsC;AAC5C,MAAM,oCAAoC;AAC1C,MAAM,yCAAyC;;;;;"}
|