@contember/engine-tenant-api 2.1.0-alpha.3 → 2.1.0-alpha.30
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/dist/development/index.cjs +5 -6
- package/dist/development/index.cjs.map +1 -1
- package/dist/development/index.js +2 -3
- package/dist/development/src/TenantContainer.cjs +4 -2
- package/dist/development/src/TenantContainer.cjs.map +1 -1
- package/dist/development/src/TenantContainer.js +4 -2
- package/dist/development/src/TenantContainer.js.map +1 -1
- package/dist/development/src/bridges/system/IdentityFetcher.cjs +1 -0
- package/dist/development/src/bridges/system/IdentityFetcher.cjs.map +1 -1
- package/dist/development/src/bridges/system/IdentityFetcher.js +1 -0
- package/dist/development/src/bridges/system/IdentityFetcher.js.map +1 -1
- package/dist/development/src/migrations/2025-04-16-180000-config-up.cjs +39 -0
- package/dist/development/src/migrations/2025-04-16-180000-config-up.cjs.map +1 -0
- package/dist/development/src/migrations/2025-04-16-180000-config-up.js +40 -0
- package/dist/development/src/migrations/2025-04-16-180000-config-up.js.map +1 -0
- package/dist/development/src/migrations/2025-04-17-160000-auth-log.cjs +45 -0
- package/dist/development/src/migrations/2025-04-17-160000-auth-log.cjs.map +1 -0
- package/dist/development/src/migrations/2025-04-17-160000-auth-log.js +46 -0
- package/dist/development/src/migrations/2025-04-17-160000-auth-log.js.map +1 -0
- package/dist/development/src/migrations/runner.cjs +9 -4
- package/dist/development/src/migrations/runner.cjs.map +1 -1
- package/dist/development/src/migrations/runner.js +7 -2
- package/dist/development/src/migrations/runner.js.map +1 -1
- package/dist/development/src/migrations/snapshot.cjs +56 -1
- package/dist/development/src/migrations/snapshot.cjs.map +1 -1
- package/dist/development/src/migrations/snapshot.js +56 -1
- package/dist/development/src/migrations/snapshot.js.map +1 -1
- package/dist/development/src/model/authorization/MembershipMatcher.cjs +6 -0
- package/dist/development/src/model/authorization/MembershipMatcher.cjs.map +1 -1
- package/dist/development/src/model/authorization/MembershipMatcher.js +6 -0
- package/dist/development/src/model/authorization/MembershipMatcher.js.map +1 -1
- package/dist/development/src/model/authorization/PermissionsFactory.cjs +2 -0
- package/dist/development/src/model/authorization/PermissionsFactory.cjs.map +1 -1
- package/dist/development/src/model/authorization/PermissionsFactory.js +2 -0
- package/dist/development/src/model/authorization/PermissionsFactory.js.map +1 -1
- package/dist/development/src/model/commands/apiKey/CreateApiKeyCommand.cjs +7 -7
- package/dist/development/src/model/commands/apiKey/CreateApiKeyCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/apiKey/CreateApiKeyCommand.js +1 -1
- package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs +27 -0
- package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.js +27 -0
- package/dist/development/src/model/commands/authLog/CreateAuthLogEntryCommand.js.map +1 -0
- package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.cjs +15 -2
- package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.js +15 -2
- package/dist/development/src/model/commands/configuration/UpdateConfigurationCommand.js.map +1 -1
- package/dist/development/src/model/commands/personToken/CreatePersonTokenCommand.cjs +4 -4
- package/dist/development/src/model/commands/personToken/CreatePersonTokenCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/personToken/CreatePersonTokenCommand.js +1 -1
- package/dist/development/src/model/commands/personToken/ResetPasswordCommand.cjs +5 -5
- package/dist/development/src/model/commands/personToken/ResetPasswordCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/personToken/ResetPasswordCommand.js +1 -1
- package/dist/development/src/model/mailing/UserMailer.cjs.map +1 -1
- package/dist/development/src/model/mailing/UserMailer.js.map +1 -1
- package/dist/development/src/model/queries/apiKey/ApiKeyQuery.cjs +4 -4
- package/dist/development/src/model/queries/apiKey/ApiKeyQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/apiKey/ApiKeyQuery.js +1 -1
- package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.cjs +46 -0
- package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.js +46 -0
- package/dist/development/src/model/queries/authLog/NextLoginAttemptQuery.js.map +1 -0
- package/dist/development/src/model/queries/configuration/ConfigurationQuery.cjs +18 -1
- package/dist/development/src/model/queries/configuration/ConfigurationQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/configuration/ConfigurationQuery.js +18 -1
- package/dist/development/src/model/queries/configuration/ConfigurationQuery.js.map +1 -1
- package/dist/development/src/model/queries/personToken/PersonTokenQuery.cjs +3 -3
- package/dist/development/src/model/queries/personToken/PersonTokenQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/personToken/PersonTokenQuery.js +1 -1
- package/dist/development/src/model/service/AuthLogService.cjs +34 -0
- package/dist/development/src/model/service/AuthLogService.cjs.map +1 -0
- package/dist/development/src/model/service/AuthLogService.js +34 -0
- package/dist/development/src/model/service/AuthLogService.js.map +1 -0
- package/dist/development/src/model/service/ConfigurationManager.cjs +0 -10
- package/dist/development/src/model/service/ConfigurationManager.cjs.map +1 -1
- package/dist/development/src/model/service/ConfigurationManager.js +0 -10
- package/dist/development/src/model/service/ConfigurationManager.js.map +1 -1
- package/dist/development/src/model/service/IDPSignInManager.cjs +37 -5
- package/dist/development/src/model/service/IDPSignInManager.cjs.map +1 -1
- package/dist/development/src/model/service/IDPSignInManager.js +37 -5
- package/dist/development/src/model/service/IDPSignInManager.js.map +1 -1
- package/dist/development/src/model/service/MembershipValidator.cjs +1 -1
- package/dist/development/src/model/service/MembershipValidator.cjs.map +1 -1
- package/dist/development/src/model/service/MembershipValidator.js +1 -1
- package/dist/development/src/model/service/MembershipValidator.js.map +1 -1
- package/dist/development/src/model/service/PasswordChangeManager.cjs +21 -12
- package/dist/development/src/model/service/PasswordChangeManager.cjs.map +1 -1
- package/dist/development/src/model/service/PasswordChangeManager.js +20 -11
- package/dist/development/src/model/service/PasswordChangeManager.js.map +1 -1
- package/dist/development/src/model/service/PasswordResetManager.cjs +40 -8
- package/dist/development/src/model/service/PasswordResetManager.cjs.map +1 -1
- package/dist/development/src/model/service/PasswordResetManager.js +40 -8
- package/dist/development/src/model/service/PasswordResetManager.js.map +1 -1
- package/dist/development/src/model/service/PasswordStrengthValidator.cjs +63 -0
- package/dist/development/src/model/service/PasswordStrengthValidator.cjs.map +1 -0
- package/dist/development/src/model/service/PasswordStrengthValidator.js +63 -0
- package/dist/development/src/model/service/PasswordStrengthValidator.js.map +1 -0
- package/dist/development/src/model/service/PasswordlessSignInManager.cjs +91 -25
- package/dist/development/src/model/service/PasswordlessSignInManager.cjs.map +1 -1
- package/dist/development/src/model/service/PasswordlessSignInManager.js +83 -17
- package/dist/development/src/model/service/PasswordlessSignInManager.js.map +1 -1
- package/dist/development/src/model/service/PersonAccessManager.cjs +7 -29
- package/dist/development/src/model/service/PersonAccessManager.cjs.map +1 -1
- package/dist/development/src/model/service/PersonAccessManager.js +7 -29
- package/dist/development/src/model/service/PersonAccessManager.js.map +1 -1
- package/dist/development/src/model/service/SignInManager.cjs +56 -31
- package/dist/development/src/model/service/SignInManager.cjs.map +1 -1
- package/dist/development/src/model/service/SignInManager.js +57 -32
- package/dist/development/src/model/service/SignInManager.js.map +1 -1
- package/dist/development/src/model/service/SignUpManager.cjs +13 -8
- package/dist/development/src/model/service/SignUpManager.cjs.map +1 -1
- package/dist/development/src/model/service/SignUpManager.js +11 -6
- package/dist/development/src/model/service/SignUpManager.js.map +1 -1
- package/dist/development/src/model/service/apiKey/ApiKeyManager.cjs +6 -1
- package/dist/development/src/model/service/apiKey/ApiKeyManager.cjs.map +1 -1
- package/dist/development/src/model/service/apiKey/ApiKeyManager.js +6 -1
- package/dist/development/src/model/service/apiKey/ApiKeyManager.js.map +1 -1
- package/dist/development/src/model/utils/Response.cjs +2 -1
- package/dist/development/src/model/utils/Response.cjs.map +1 -1
- package/dist/development/src/model/utils/Response.js +2 -1
- package/dist/development/src/model/utils/Response.js.map +1 -1
- package/dist/development/src/model/utils/blacklist.cjs +10006 -0
- package/dist/development/src/model/utils/blacklist.cjs.map +1 -0
- package/dist/development/src/model/utils/blacklist.js +10006 -0
- package/dist/development/src/model/utils/blacklist.js.map +1 -0
- package/dist/{production/src/model/utils/typeUtils.cjs → development/src/model/utils/hex.cjs} +1 -1
- package/dist/development/src/model/utils/hex.cjs.map +1 -0
- package/dist/development/src/model/utils/{typeUtils.js → hex.js} +1 -1
- package/dist/development/src/model/utils/hex.js.map +1 -0
- package/dist/development/src/model/utils/interval.cjs +8 -0
- package/dist/development/src/model/utils/interval.cjs.map +1 -0
- package/dist/development/src/model/utils/interval.js +8 -0
- package/dist/development/src/model/utils/interval.js.map +1 -0
- package/dist/development/src/model/utils/{tokenUtils.cjs → token.cjs} +3 -3
- package/dist/development/src/model/utils/token.cjs.map +1 -0
- package/dist/development/src/model/utils/{tokenUtils.js → token.js} +2 -2
- package/dist/development/src/model/utils/token.js.map +1 -0
- package/dist/development/src/resolvers/ResolverFactory.cjs +1 -0
- package/dist/development/src/resolvers/ResolverFactory.cjs.map +1 -1
- package/dist/development/src/resolvers/ResolverFactory.js +2 -1
- package/dist/development/src/resolvers/ResolverFactory.js.map +1 -1
- package/dist/development/src/resolvers/TenantResolverContextFactory.cjs +10 -2
- package/dist/development/src/resolvers/TenantResolverContextFactory.cjs.map +1 -1
- package/dist/development/src/resolvers/TenantResolverContextFactory.js +10 -2
- package/dist/development/src/resolvers/TenantResolverContextFactory.js.map +1 -1
- package/dist/development/src/resolvers/errorUtils.cjs +15 -4
- package/dist/development/src/resolvers/errorUtils.cjs.map +1 -1
- package/dist/development/src/resolvers/errorUtils.js +15 -4
- package/dist/development/src/resolvers/errorUtils.js.map +1 -1
- package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs +4 -3
- package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js +2 -1
- package/dist/development/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/idp/AddIDPMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/idp/DisableIDPMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/idp/EnableIDPMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs +17 -6
- package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.js +17 -6
- package/dist/development/src/resolvers/mutation/person/ChangePasswordMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs +14 -0
- package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.js +14 -0
- package/dist/development/src/resolvers/mutation/person/ChangeProfileMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs +7 -1
- package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.js +7 -1
- package/dist/development/src/resolvers/mutation/person/DisablePersonMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.cjs +5 -0
- package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.js +5 -0
- package/dist/development/src/resolvers/mutation/person/IDPMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.cjs +3 -2
- package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.js +2 -1
- package/dist/development/src/resolvers/mutation/person/InviteMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.cjs +26 -1
- package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.js +26 -1
- package/dist/development/src/resolvers/mutation/person/OtpMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs +20 -0
- package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.js +20 -0
- package/dist/development/src/resolvers/mutation/person/PasswordlessMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs +25 -2
- package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.js +25 -2
- package/dist/development/src/resolvers/mutation/person/ResetPasswordMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.cjs +22 -0
- package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.js +22 -0
- package/dist/development/src/resolvers/mutation/person/SignInMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/person/SignOutMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.cjs +2 -1
- package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.js +2 -1
- package/dist/development/src/resolvers/mutation/person/SignUpMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs +3 -1
- package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js +3 -1
- package/dist/development/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs +3 -2
- package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.js +2 -1
- package/dist/development/src/resolvers/mutation/project/CreateProjectMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/project/UpdateProjectMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs +1 -0
- package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js +1 -0
- package/dist/development/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/ConfigurationQueryResolver.cjs +3 -1
- package/dist/development/src/resolvers/query/ConfigurationQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/ConfigurationQueryResolver.js +3 -1
- package/dist/development/src/resolvers/query/ConfigurationQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/IDPQueryResolver.cjs +1 -0
- package/dist/development/src/resolvers/query/IDPQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/IDPQueryResolver.js +1 -0
- package/dist/development/src/resolvers/query/IDPQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/MailTemplateQueryResolver.cjs +1 -0
- package/dist/development/src/resolvers/query/MailTemplateQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/MailTemplateQueryResolver.js +1 -0
- package/dist/development/src/resolvers/query/MailTemplateQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/PersonQueryResolver.cjs +1 -0
- package/dist/development/src/resolvers/query/PersonQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/PersonQueryResolver.js +1 -0
- package/dist/development/src/resolvers/query/PersonQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.cjs +1 -0
- package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.js +1 -0
- package/dist/development/src/resolvers/query/ProjectMembersQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/ProjectQueryResolver.cjs +1 -0
- package/dist/development/src/resolvers/query/ProjectQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/ProjectQueryResolver.js +1 -0
- package/dist/development/src/resolvers/query/ProjectQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.cjs +1 -0
- package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.cjs.map +1 -1
- package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.js +1 -0
- package/dist/development/src/resolvers/responseHelpers/SignInResponseFactory.js.map +1 -1
- package/dist/development/src/resolvers/types/IdentityTypeResolver.cjs +1 -0
- package/dist/development/src/resolvers/types/IdentityTypeResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/types/IdentityTypeResolver.js +1 -0
- package/dist/development/src/resolvers/types/IdentityTypeResolver.js.map +1 -1
- package/dist/development/src/resolvers/types/ProjectTypeResolver.cjs +1 -0
- package/dist/development/src/resolvers/types/ProjectTypeResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/types/ProjectTypeResolver.js +1 -0
- package/dist/development/src/resolvers/types/ProjectTypeResolver.js.map +1 -1
- package/dist/development/src/schema/tenant.graphql.cjs +64 -2
- package/dist/development/src/schema/tenant.graphql.cjs.map +1 -1
- package/dist/development/src/schema/tenant.graphql.js +64 -2
- package/dist/development/src/schema/tenant.graphql.js.map +1 -1
- package/dist/production/index.cjs +5 -6
- package/dist/production/index.cjs.map +1 -1
- package/dist/production/index.js +2 -3
- package/dist/production/src/TenantContainer.cjs +4 -2
- package/dist/production/src/TenantContainer.cjs.map +1 -1
- package/dist/production/src/TenantContainer.js +4 -2
- package/dist/production/src/TenantContainer.js.map +1 -1
- package/dist/production/src/bridges/system/IdentityFetcher.cjs +1 -0
- package/dist/production/src/bridges/system/IdentityFetcher.cjs.map +1 -1
- package/dist/production/src/bridges/system/IdentityFetcher.js +1 -0
- package/dist/production/src/bridges/system/IdentityFetcher.js.map +1 -1
- package/dist/production/src/migrations/2025-04-16-180000-config-up.cjs +39 -0
- package/dist/production/src/migrations/2025-04-16-180000-config-up.cjs.map +1 -0
- package/dist/production/src/migrations/2025-04-16-180000-config-up.js +40 -0
- package/dist/production/src/migrations/2025-04-16-180000-config-up.js.map +1 -0
- package/dist/production/src/migrations/2025-04-17-160000-auth-log.cjs +45 -0
- package/dist/production/src/migrations/2025-04-17-160000-auth-log.cjs.map +1 -0
- package/dist/production/src/migrations/2025-04-17-160000-auth-log.js +46 -0
- package/dist/production/src/migrations/2025-04-17-160000-auth-log.js.map +1 -0
- package/dist/production/src/migrations/runner.cjs +9 -4
- package/dist/production/src/migrations/runner.cjs.map +1 -1
- package/dist/production/src/migrations/runner.js +7 -2
- package/dist/production/src/migrations/runner.js.map +1 -1
- package/dist/production/src/migrations/snapshot.cjs +56 -1
- package/dist/production/src/migrations/snapshot.cjs.map +1 -1
- package/dist/production/src/migrations/snapshot.js +56 -1
- package/dist/production/src/migrations/snapshot.js.map +1 -1
- package/dist/production/src/model/authorization/MembershipMatcher.cjs +6 -0
- package/dist/production/src/model/authorization/MembershipMatcher.cjs.map +1 -1
- package/dist/production/src/model/authorization/MembershipMatcher.js +6 -0
- package/dist/production/src/model/authorization/MembershipMatcher.js.map +1 -1
- package/dist/production/src/model/authorization/PermissionsFactory.cjs +2 -0
- package/dist/production/src/model/authorization/PermissionsFactory.cjs.map +1 -1
- package/dist/production/src/model/authorization/PermissionsFactory.js +2 -0
- package/dist/production/src/model/authorization/PermissionsFactory.js.map +1 -1
- package/dist/production/src/model/commands/apiKey/CreateApiKeyCommand.cjs +7 -7
- package/dist/production/src/model/commands/apiKey/CreateApiKeyCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/apiKey/CreateApiKeyCommand.js +1 -1
- package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs +27 -0
- package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.js +27 -0
- package/dist/production/src/model/commands/authLog/CreateAuthLogEntryCommand.js.map +1 -0
- package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.cjs +15 -2
- package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.js +15 -2
- package/dist/production/src/model/commands/configuration/UpdateConfigurationCommand.js.map +1 -1
- package/dist/production/src/model/commands/personToken/CreatePersonTokenCommand.cjs +4 -4
- package/dist/production/src/model/commands/personToken/CreatePersonTokenCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/personToken/CreatePersonTokenCommand.js +1 -1
- package/dist/production/src/model/commands/personToken/ResetPasswordCommand.cjs +5 -5
- package/dist/production/src/model/commands/personToken/ResetPasswordCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/personToken/ResetPasswordCommand.js +1 -1
- package/dist/production/src/model/mailing/UserMailer.cjs.map +1 -1
- package/dist/production/src/model/mailing/UserMailer.js.map +1 -1
- package/dist/production/src/model/queries/apiKey/ApiKeyQuery.cjs +4 -4
- package/dist/production/src/model/queries/apiKey/ApiKeyQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/apiKey/ApiKeyQuery.js +1 -1
- package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.cjs +46 -0
- package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.js +46 -0
- package/dist/production/src/model/queries/authLog/NextLoginAttemptQuery.js.map +1 -0
- package/dist/production/src/model/queries/configuration/ConfigurationQuery.cjs +18 -1
- package/dist/production/src/model/queries/configuration/ConfigurationQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/configuration/ConfigurationQuery.js +18 -1
- package/dist/production/src/model/queries/configuration/ConfigurationQuery.js.map +1 -1
- package/dist/production/src/model/queries/personToken/PersonTokenQuery.cjs +3 -3
- package/dist/production/src/model/queries/personToken/PersonTokenQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/personToken/PersonTokenQuery.js +1 -1
- package/dist/production/src/model/service/AuthLogService.cjs +34 -0
- package/dist/production/src/model/service/AuthLogService.cjs.map +1 -0
- package/dist/production/src/model/service/AuthLogService.js +34 -0
- package/dist/production/src/model/service/AuthLogService.js.map +1 -0
- package/dist/production/src/model/service/ConfigurationManager.cjs +0 -10
- package/dist/production/src/model/service/ConfigurationManager.cjs.map +1 -1
- package/dist/production/src/model/service/ConfigurationManager.js +0 -10
- package/dist/production/src/model/service/ConfigurationManager.js.map +1 -1
- package/dist/production/src/model/service/IDPSignInManager.cjs +37 -5
- package/dist/production/src/model/service/IDPSignInManager.cjs.map +1 -1
- package/dist/production/src/model/service/IDPSignInManager.js +37 -5
- package/dist/production/src/model/service/IDPSignInManager.js.map +1 -1
- package/dist/production/src/model/service/MembershipValidator.cjs +1 -1
- package/dist/production/src/model/service/MembershipValidator.cjs.map +1 -1
- package/dist/production/src/model/service/MembershipValidator.js +1 -1
- package/dist/production/src/model/service/MembershipValidator.js.map +1 -1
- package/dist/production/src/model/service/PasswordChangeManager.cjs +21 -12
- package/dist/production/src/model/service/PasswordChangeManager.cjs.map +1 -1
- package/dist/production/src/model/service/PasswordChangeManager.js +20 -11
- package/dist/production/src/model/service/PasswordChangeManager.js.map +1 -1
- package/dist/production/src/model/service/PasswordResetManager.cjs +40 -8
- package/dist/production/src/model/service/PasswordResetManager.cjs.map +1 -1
- package/dist/production/src/model/service/PasswordResetManager.js +40 -8
- package/dist/production/src/model/service/PasswordResetManager.js.map +1 -1
- package/dist/production/src/model/service/PasswordStrengthValidator.cjs +63 -0
- package/dist/production/src/model/service/PasswordStrengthValidator.cjs.map +1 -0
- package/dist/production/src/model/service/PasswordStrengthValidator.js +63 -0
- package/dist/production/src/model/service/PasswordStrengthValidator.js.map +1 -0
- package/dist/production/src/model/service/PasswordlessSignInManager.cjs +91 -25
- package/dist/production/src/model/service/PasswordlessSignInManager.cjs.map +1 -1
- package/dist/production/src/model/service/PasswordlessSignInManager.js +83 -17
- package/dist/production/src/model/service/PasswordlessSignInManager.js.map +1 -1
- package/dist/production/src/model/service/PersonAccessManager.cjs +7 -29
- package/dist/production/src/model/service/PersonAccessManager.cjs.map +1 -1
- package/dist/production/src/model/service/PersonAccessManager.js +7 -29
- package/dist/production/src/model/service/PersonAccessManager.js.map +1 -1
- package/dist/production/src/model/service/SignInManager.cjs +56 -31
- package/dist/production/src/model/service/SignInManager.cjs.map +1 -1
- package/dist/production/src/model/service/SignInManager.js +57 -32
- package/dist/production/src/model/service/SignInManager.js.map +1 -1
- package/dist/production/src/model/service/SignUpManager.cjs +13 -8
- package/dist/production/src/model/service/SignUpManager.cjs.map +1 -1
- package/dist/production/src/model/service/SignUpManager.js +11 -6
- package/dist/production/src/model/service/SignUpManager.js.map +1 -1
- package/dist/production/src/model/service/apiKey/ApiKeyManager.cjs +6 -1
- package/dist/production/src/model/service/apiKey/ApiKeyManager.cjs.map +1 -1
- package/dist/production/src/model/service/apiKey/ApiKeyManager.js +6 -1
- package/dist/production/src/model/service/apiKey/ApiKeyManager.js.map +1 -1
- package/dist/production/src/model/utils/Response.cjs +2 -1
- package/dist/production/src/model/utils/Response.cjs.map +1 -1
- package/dist/production/src/model/utils/Response.js +2 -1
- package/dist/production/src/model/utils/Response.js.map +1 -1
- package/dist/production/src/model/utils/blacklist.cjs +10006 -0
- package/dist/production/src/model/utils/blacklist.cjs.map +1 -0
- package/dist/production/src/model/utils/blacklist.js +10006 -0
- package/dist/production/src/model/utils/blacklist.js.map +1 -0
- package/dist/{development/src/model/utils/typeUtils.cjs → production/src/model/utils/hex.cjs} +1 -1
- package/dist/production/src/model/utils/hex.cjs.map +1 -0
- package/dist/production/src/model/utils/{typeUtils.js → hex.js} +1 -1
- package/dist/production/src/model/utils/hex.js.map +1 -0
- package/dist/production/src/model/utils/interval.cjs +8 -0
- package/dist/production/src/model/utils/interval.cjs.map +1 -0
- package/dist/production/src/model/utils/interval.js +8 -0
- package/dist/production/src/model/utils/interval.js.map +1 -0
- package/dist/production/src/model/utils/{tokenUtils.cjs → token.cjs} +3 -3
- package/dist/production/src/model/utils/token.cjs.map +1 -0
- package/dist/production/src/model/utils/{tokenUtils.js → token.js} +2 -2
- package/dist/production/src/model/utils/token.js.map +1 -0
- package/dist/production/src/resolvers/ResolverFactory.cjs +1 -0
- package/dist/production/src/resolvers/ResolverFactory.cjs.map +1 -1
- package/dist/production/src/resolvers/ResolverFactory.js +2 -1
- package/dist/production/src/resolvers/ResolverFactory.js.map +1 -1
- package/dist/production/src/resolvers/TenantResolverContextFactory.cjs +10 -2
- package/dist/production/src/resolvers/TenantResolverContextFactory.cjs.map +1 -1
- package/dist/production/src/resolvers/TenantResolverContextFactory.js +10 -2
- package/dist/production/src/resolvers/TenantResolverContextFactory.js.map +1 -1
- package/dist/production/src/resolvers/errorUtils.cjs +15 -4
- package/dist/production/src/resolvers/errorUtils.cjs.map +1 -1
- package/dist/production/src/resolvers/errorUtils.js +15 -4
- package/dist/production/src/resolvers/errorUtils.js.map +1 -1
- package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs +4 -3
- package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js +2 -1
- package/dist/production/src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/configuration/ConfigurationMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/identity/GlobalRolesMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/idp/AddIDPMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/idp/DisableIDPMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/idp/EnableIDPMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/idp/UpdateIDPMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/mailTemplates/MailTemplateMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs +17 -6
- package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.js +17 -6
- package/dist/production/src/resolvers/mutation/person/ChangePasswordMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs +14 -0
- package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.js +14 -0
- package/dist/production/src/resolvers/mutation/person/ChangeProfileMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs +7 -1
- package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.js +7 -1
- package/dist/production/src/resolvers/mutation/person/DisablePersonMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.cjs +5 -0
- package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.js +5 -0
- package/dist/production/src/resolvers/mutation/person/IDPMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.cjs +3 -2
- package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.js +2 -1
- package/dist/production/src/resolvers/mutation/person/InviteMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.cjs +26 -1
- package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.js +26 -1
- package/dist/production/src/resolvers/mutation/person/OtpMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs +20 -0
- package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.js +20 -0
- package/dist/production/src/resolvers/mutation/person/PasswordlessMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs +25 -2
- package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.js +25 -2
- package/dist/production/src/resolvers/mutation/person/ResetPasswordMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.cjs +22 -0
- package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.js +22 -0
- package/dist/production/src/resolvers/mutation/person/SignInMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/person/SignOutMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.cjs +2 -1
- package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.js +2 -1
- package/dist/production/src/resolvers/mutation/person/SignUpMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs +3 -1
- package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js +3 -1
- package/dist/production/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs +3 -2
- package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.js +2 -1
- package/dist/production/src/resolvers/mutation/project/CreateProjectMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/project/SetProjectSecretMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/project/UpdateProjectMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/projectMember/AddProjectMemberMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/projectMember/RemoveProjectMemberMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs +1 -0
- package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js +1 -0
- package/dist/production/src/resolvers/mutation/projectMember/UpdateProjectMemberMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/ConfigurationQueryResolver.cjs +3 -1
- package/dist/production/src/resolvers/query/ConfigurationQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/ConfigurationQueryResolver.js +3 -1
- package/dist/production/src/resolvers/query/ConfigurationQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/IDPQueryResolver.cjs +1 -0
- package/dist/production/src/resolvers/query/IDPQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/IDPQueryResolver.js +1 -0
- package/dist/production/src/resolvers/query/IDPQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/MailTemplateQueryResolver.cjs +1 -0
- package/dist/production/src/resolvers/query/MailTemplateQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/MailTemplateQueryResolver.js +1 -0
- package/dist/production/src/resolvers/query/MailTemplateQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/PersonQueryResolver.cjs +1 -0
- package/dist/production/src/resolvers/query/PersonQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/PersonQueryResolver.js +1 -0
- package/dist/production/src/resolvers/query/PersonQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.cjs +1 -0
- package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.js +1 -0
- package/dist/production/src/resolvers/query/ProjectMembersQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/ProjectQueryResolver.cjs +1 -0
- package/dist/production/src/resolvers/query/ProjectQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/ProjectQueryResolver.js +1 -0
- package/dist/production/src/resolvers/query/ProjectQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.cjs +1 -0
- package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.cjs.map +1 -1
- package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.js +1 -0
- package/dist/production/src/resolvers/responseHelpers/SignInResponseFactory.js.map +1 -1
- package/dist/production/src/resolvers/types/IdentityTypeResolver.cjs +1 -0
- package/dist/production/src/resolvers/types/IdentityTypeResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/types/IdentityTypeResolver.js +1 -0
- package/dist/production/src/resolvers/types/IdentityTypeResolver.js.map +1 -1
- package/dist/production/src/resolvers/types/ProjectTypeResolver.cjs +1 -0
- package/dist/production/src/resolvers/types/ProjectTypeResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/types/ProjectTypeResolver.js +1 -0
- package/dist/production/src/resolvers/types/ProjectTypeResolver.js.map +1 -1
- package/dist/production/src/schema/tenant.graphql.cjs +64 -2
- package/dist/production/src/schema/tenant.graphql.cjs.map +1 -1
- package/dist/production/src/schema/tenant.graphql.js +64 -2
- package/dist/production/src/schema/tenant.graphql.js.map +1 -1
- package/dist/tests/cases/integration/mocked/sql/createSessionKeySql.d.ts +1 -1
- package/dist/tests/cases/integration/mocked/sql/getConfigSql.d.ts +3 -0
- package/dist/tests/cases/integration/mocked/sql/getConfigSql.d.ts.map +1 -0
- package/dist/tests/cases/integration/mocked/sql/getNextLoginAttemptSql.d.ts +3 -0
- package/dist/tests/cases/integration/mocked/sql/getNextLoginAttemptSql.d.ts.map +1 -0
- package/dist/tests/src/testTenant.d.ts +2 -0
- package/dist/tests/src/testTenant.d.ts.map +1 -1
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/dist/types/TenantContainer.d.ts +6 -0
- package/dist/types/TenantContainer.d.ts.map +1 -1
- package/dist/types/migrations/2025-04-16-180000-config-up.d.ts +3 -0
- package/dist/types/migrations/2025-04-16-180000-config-up.d.ts.map +1 -0
- package/dist/types/migrations/2025-04-17-160000-auth-log.d.ts +3 -0
- package/dist/types/migrations/2025-04-17-160000-auth-log.d.ts.map +1 -0
- package/dist/types/migrations/runner.d.ts.map +1 -1
- package/dist/types/migrations/snapshot.d.ts.map +1 -1
- package/dist/types/model/authorization/MembershipMatcher.d.ts.map +1 -1
- package/dist/types/model/authorization/PermissionsFactory.d.ts.map +1 -1
- package/dist/types/model/commands/authLog/CreateAuthLogEntryCommand.d.ts +26 -0
- package/dist/types/model/commands/authLog/CreateAuthLogEntryCommand.d.ts.map +1 -0
- package/dist/types/model/commands/configuration/UpdateConfigurationCommand.d.ts.map +1 -1
- package/dist/types/model/dtos/AuthLogBag.d.ts +3 -0
- package/dist/types/model/dtos/AuthLogBag.d.ts.map +1 -0
- package/dist/types/model/mailing/UserMailer.d.ts +1 -0
- package/dist/types/model/mailing/UserMailer.d.ts.map +1 -1
- package/dist/types/model/queries/authLog/NextLoginAttemptQuery.d.ts +7 -0
- package/dist/types/model/queries/authLog/NextLoginAttemptQuery.d.ts.map +1 -0
- package/dist/types/model/queries/configuration/ConfigurationQuery.d.ts +1 -1
- package/dist/types/model/queries/configuration/ConfigurationQuery.d.ts.map +1 -1
- package/dist/types/model/service/AuthLogService.d.ts +34 -0
- package/dist/types/model/service/AuthLogService.d.ts.map +1 -0
- package/dist/types/model/service/ConfigurationManager.d.ts +1 -2
- package/dist/types/model/service/ConfigurationManager.d.ts.map +1 -1
- package/dist/types/model/service/IDPSignInManager.d.ts +5 -1
- package/dist/types/model/service/IDPSignInManager.d.ts.map +1 -1
- package/dist/types/model/service/PasswordChangeManager.d.ts +8 -4
- package/dist/types/model/service/PasswordChangeManager.d.ts.map +1 -1
- package/dist/types/model/service/PasswordResetManager.d.ts +11 -4
- package/dist/types/model/service/PasswordResetManager.d.ts.map +1 -1
- package/dist/types/model/service/PasswordStrengthValidator.d.ts +11 -0
- package/dist/types/model/service/PasswordStrengthValidator.d.ts.map +1 -0
- package/dist/types/model/service/PasswordlessSignInManager.d.ts +16 -6
- package/dist/types/model/service/PasswordlessSignInManager.d.ts.map +1 -1
- package/dist/types/model/service/PersonAccessManager.d.ts +2 -1
- package/dist/types/model/service/PersonAccessManager.d.ts.map +1 -1
- package/dist/types/model/service/SignInManager.d.ts +9 -4
- package/dist/types/model/service/SignInManager.d.ts.map +1 -1
- package/dist/types/model/service/SignUpManager.d.ts +7 -3
- package/dist/types/model/service/SignUpManager.d.ts.map +1 -1
- package/dist/types/model/service/apiKey/ApiKeyManager.d.ts.map +1 -1
- package/dist/types/model/type/AuthLog.d.ts +2 -0
- package/dist/types/model/type/AuthLog.d.ts.map +1 -0
- package/dist/types/model/type/Config.d.ts +28 -0
- package/dist/types/model/type/Config.d.ts.map +1 -0
- package/dist/types/model/utils/Response.d.ts +4 -3
- package/dist/types/model/utils/Response.d.ts.map +1 -1
- package/dist/types/model/utils/blacklist.d.ts +2 -0
- package/dist/types/model/utils/blacklist.d.ts.map +1 -0
- package/dist/types/model/utils/{typeUtils.d.ts → hex.d.ts} +1 -1
- package/dist/types/model/utils/hex.d.ts.map +1 -0
- package/dist/types/model/utils/index.d.ts +1 -1
- package/dist/types/model/utils/index.d.ts.map +1 -1
- package/dist/types/model/utils/interval.d.ts +3 -0
- package/dist/types/model/utils/interval.d.ts.map +1 -0
- package/dist/types/model/utils/{tokenUtils.d.ts → token.d.ts} +2 -2
- package/dist/types/model/utils/token.d.ts.map +1 -0
- package/dist/types/resolvers/ResolverFactory.d.ts.map +1 -1
- package/dist/types/resolvers/TenantResolverContext.d.ts +2 -0
- package/dist/types/resolvers/TenantResolverContext.d.ts.map +1 -1
- package/dist/types/resolvers/TenantResolverContextFactory.d.ts +6 -1
- package/dist/types/resolvers/TenantResolverContextFactory.d.ts.map +1 -1
- package/dist/types/resolvers/errorUtils.d.ts +7 -5
- package/dist/types/resolvers/errorUtils.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/ChangePasswordMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/ChangeProfileMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/DisablePersonMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/IDPMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/OtpMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/PasswordlessMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/ResetPasswordMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/SignInMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/person/TogglePasswordlessMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/types/ProjectTypeResolver.d.ts +2 -2
- package/dist/types/resolvers/types/ProjectTypeResolver.d.ts.map +1 -1
- package/dist/types/schema/index.d.ts +103 -8
- 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 +8 -0
- package/dist/types/schema/types.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/graphql.codegen.yml +7 -3
- package/package.json +13 -12
- package/src/TenantContainer.ts +16 -10
- package/src/migrations/2025-04-16-180000-config-up.ts +39 -0
- package/src/migrations/2025-04-17-160000-auth-log.ts +45 -0
- package/src/migrations/runner.ts +4 -1
- package/src/migrations/snapshot.ts +56 -1
- package/src/model/authorization/MembershipMatcher.ts +6 -0
- package/src/model/authorization/PermissionsFactory.ts +3 -1
- package/src/model/commands/authLog/CreateAuthLogEntryCommand.ts +51 -0
- package/src/model/commands/configuration/UpdateConfigurationCommand.ts +20 -2
- package/src/model/dtos/AuthLogBag.ts +3 -0
- package/src/model/mailing/UserMailer.ts +1 -1
- package/src/model/queries/authLog/NextLoginAttemptQuery.ts +63 -0
- package/src/model/queries/configuration/ConfigurationQuery.ts +20 -8
- package/src/model/service/AuthLogService.ts +62 -0
- package/src/model/service/ConfigurationManager.ts +1 -6
- package/src/model/service/IDPSignInManager.ts +41 -6
- package/src/model/service/MembershipValidator.ts +1 -1
- package/src/model/service/PasswordChangeManager.ts +17 -12
- package/src/model/service/PasswordResetManager.ts +42 -11
- package/src/model/service/PasswordStrengthValidator.ts +85 -0
- package/src/model/service/PasswordlessSignInManager.ts +96 -28
- package/src/model/service/PersonAccessManager.ts +8 -27
- package/src/model/service/SignInManager.ts +68 -33
- package/src/model/service/SignUpManager.ts +16 -8
- package/src/model/service/apiKey/ApiKeyManager.ts +8 -2
- package/src/model/type/AuthLog.ts +14 -0
- package/src/model/type/Config.ts +29 -0
- package/src/model/utils/Response.ts +10 -3
- package/src/model/utils/blacklist.ts +4 -0
- package/src/model/utils/index.ts +1 -1
- package/src/model/utils/interval.ts +14 -0
- package/src/model/utils/{tokenUtils.ts → token.ts} +1 -1
- package/src/resolvers/ResolverFactory.ts +2 -1
- package/src/resolvers/TenantResolverContext.ts +2 -0
- package/src/resolvers/TenantResolverContextFactory.ts +10 -0
- package/src/resolvers/errorUtils.ts +23 -5
- package/src/resolvers/mutation/idp/AddIDPMutationResolver.ts +1 -1
- package/src/resolvers/mutation/idp/UpdateIDPMutationResolver.ts +1 -1
- package/src/resolvers/mutation/person/ChangePasswordMutationResolver.ts +17 -15
- package/src/resolvers/mutation/person/ChangeProfileMutationResolver.ts +13 -0
- package/src/resolvers/mutation/person/DisablePersonMutationResolver.ts +7 -7
- package/src/resolvers/mutation/person/IDPMutationResolver.ts +4 -0
- package/src/resolvers/mutation/person/OtpMutationResolver.ts +25 -1
- package/src/resolvers/mutation/person/PasswordlessMutationResolver.ts +21 -1
- package/src/resolvers/mutation/person/ResetPasswordMutationResolver.ts +27 -3
- package/src/resolvers/mutation/person/SignInMutationResolver.ts +26 -8
- package/src/resolvers/mutation/person/SignUpMutationResolver.ts +1 -1
- package/src/resolvers/mutation/person/TogglePasswordlessMutationResolver.ts +2 -2
- package/src/resolvers/mutation/project/CreateProjectMutationResolver.ts +1 -1
- package/src/resolvers/mutation/project/UpdateProjectMutationResolver.ts +1 -1
- package/src/resolvers/query/ConfigurationQueryResolver.ts +2 -2
- package/src/resolvers/types/ProjectTypeResolver.ts +2 -2
- package/src/schema/index.ts +114 -5
- package/src/schema/tenant.graphql.ts +64 -2
- package/src/schema/types.ts +4 -0
- package/tests/cases/integration/mocked/changeMyPasswordMutation.test.ts +42 -2
- package/tests/cases/integration/mocked/changeMyProfileMutation.test.ts +25 -4
- package/tests/cases/integration/mocked/changePasswordMutation.test.ts +10 -2
- package/tests/cases/integration/mocked/changeProfileMutation.test.ts +7 -1
- package/tests/cases/integration/mocked/confirmOtpMutation.test.ts +13 -8
- package/tests/cases/integration/mocked/createSessionKeyMutation.test.ts +9 -21
- package/tests/cases/integration/mocked/inviteMutations.test.ts +0 -24
- package/tests/cases/integration/mocked/signInIdpMutation.test.ts +16 -1
- package/tests/cases/integration/mocked/signInMutation.test.ts +54 -22
- package/tests/cases/integration/mocked/signOutMutation.test.ts +0 -5
- package/tests/cases/integration/mocked/signUpMutation.test.ts +3 -12
- package/tests/cases/integration/mocked/sql/createSessionKeySql.ts +1 -1
- package/tests/cases/integration/mocked/sql/getConfigSql.ts +29 -0
- package/tests/cases/integration/mocked/sql/getNextLoginAttemptSql.ts +20 -0
- package/tests/src/testTenant.ts +13 -0
- package/dist/development/src/model/utils/password.cjs +0 -12
- package/dist/development/src/model/utils/password.cjs.map +0 -1
- package/dist/development/src/model/utils/password.js +0 -12
- package/dist/development/src/model/utils/password.js.map +0 -1
- package/dist/development/src/model/utils/tokenUtils.cjs.map +0 -1
- package/dist/development/src/model/utils/tokenUtils.js.map +0 -1
- package/dist/development/src/model/utils/typeUtils.cjs.map +0 -1
- package/dist/development/src/model/utils/typeUtils.js.map +0 -1
- package/dist/production/src/model/utils/password.cjs +0 -12
- package/dist/production/src/model/utils/password.cjs.map +0 -1
- package/dist/production/src/model/utils/password.js +0 -12
- package/dist/production/src/model/utils/password.js.map +0 -1
- package/dist/production/src/model/utils/tokenUtils.cjs.map +0 -1
- package/dist/production/src/model/utils/tokenUtils.js.map +0 -1
- package/dist/production/src/model/utils/typeUtils.cjs.map +0 -1
- package/dist/production/src/model/utils/typeUtils.js.map +0 -1
- package/dist/types/model/utils/password.d.ts +0 -4
- package/dist/types/model/utils/password.d.ts.map +0 -1
- package/dist/types/model/utils/tokenUtils.d.ts.map +0 -1
- package/dist/types/model/utils/typeUtils.d.ts.map +0 -1
- package/src/model/utils/password.ts +0 -8
- /package/src/model/utils/{typeUtils.ts → hex.ts} +0 -0
|
@@ -96,7 +96,7 @@ const SignInManager = require("./src/model/service/SignInManager.cjs");
|
|
|
96
96
|
const SignUpManager = require("./src/model/service/SignUpManager.cjs");
|
|
97
97
|
const ApiKey = require("./src/model/type/ApiKey.cjs");
|
|
98
98
|
const DatabaseContext = require("./src/model/utils/DatabaseContext.cjs");
|
|
99
|
-
const
|
|
99
|
+
const token = require("./src/model/utils/token.cjs");
|
|
100
100
|
const TenantContainer = require("./src/TenantContainer.cjs");
|
|
101
101
|
const CreateApiKeyMutationResolver = require("./src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.cjs");
|
|
102
102
|
const DisableApiKeyMutationResolver = require("./src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.cjs");
|
|
@@ -244,7 +244,6 @@ exports.ProjectMemberManager = ProjectMemberManager.ProjectMemberManager;
|
|
|
244
244
|
exports.RolesManager = RolesManager.RolesManager;
|
|
245
245
|
exports.SecretsManager = SecretsManager.SecretsManager;
|
|
246
246
|
exports.SignInManager = SignInManager.SignInManager;
|
|
247
|
-
exports.SignInResult = SignInManager.SignInResult;
|
|
248
247
|
exports.SignUpManager = SignUpManager.SignUpManager;
|
|
249
248
|
exports.SignUpResult = SignUpManager.SignUpResult;
|
|
250
249
|
Object.defineProperty(exports, "ApiKey", {
|
|
@@ -252,10 +251,10 @@ Object.defineProperty(exports, "ApiKey", {
|
|
|
252
251
|
get: () => ApiKey.ApiKey
|
|
253
252
|
});
|
|
254
253
|
exports.DatabaseContext = DatabaseContext.DatabaseContext;
|
|
255
|
-
exports.computeTokenHash =
|
|
256
|
-
exports.generateToken =
|
|
257
|
-
exports.isTokenHash =
|
|
258
|
-
exports.validateToken =
|
|
254
|
+
exports.computeTokenHash = token.computeTokenHash;
|
|
255
|
+
exports.generateToken = token.generateToken;
|
|
256
|
+
exports.isTokenHash = token.isTokenHash;
|
|
257
|
+
exports.validateToken = token.validateToken;
|
|
259
258
|
exports.TenantContainerFactory = TenantContainer.TenantContainerFactory;
|
|
260
259
|
exports.CreateApiKeyMutationResolver = CreateApiKeyMutationResolver.CreateApiKeyMutationResolver;
|
|
261
260
|
exports.DisableApiKeyMutationResolver = DisableApiKeyMutationResolver.DisableApiKeyMutationResolver;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -90,11 +90,11 @@ import { CreateProjectResult, ProjectInitError, ProjectManager } from "./src/mod
|
|
|
90
90
|
import { ProjectMemberManager } from "./src/model/service/ProjectMemberManager.js";
|
|
91
91
|
import { RolesManager } from "./src/model/service/RolesManager.js";
|
|
92
92
|
import { SecretsManager } from "./src/model/service/SecretsManager.js";
|
|
93
|
-
import { SignInManager
|
|
93
|
+
import { SignInManager } from "./src/model/service/SignInManager.js";
|
|
94
94
|
import { SignUpManager, SignUpResult } from "./src/model/service/SignUpManager.js";
|
|
95
95
|
import { ApiKey } from "./src/model/type/ApiKey.js";
|
|
96
96
|
import { DatabaseContext } from "./src/model/utils/DatabaseContext.js";
|
|
97
|
-
import { computeTokenHash, generateToken, isTokenHash, validateToken } from "./src/model/utils/
|
|
97
|
+
import { computeTokenHash, generateToken, isTokenHash, validateToken } from "./src/model/utils/token.js";
|
|
98
98
|
import { TenantContainerFactory } from "./src/TenantContainer.js";
|
|
99
99
|
import { CreateApiKeyMutationResolver } from "./src/resolvers/mutation/apiKey/CreateApiKeyMutationResolver.js";
|
|
100
100
|
import { DisableApiKeyMutationResolver } from "./src/resolvers/mutation/apiKey/DisableApiKeyMutationResolver.js";
|
|
@@ -259,7 +259,6 @@ export {
|
|
|
259
259
|
SetProjectSecretMutationResolver,
|
|
260
260
|
SignInManager,
|
|
261
261
|
SignInMutationResolver,
|
|
262
|
-
SignInResult,
|
|
263
262
|
SignOutMutationResolver,
|
|
264
263
|
SignUpManager,
|
|
265
264
|
SignUpMutationResolver,
|
|
@@ -85,6 +85,8 @@ const ConfigurationQueryResolver = require("./resolvers/query/ConfigurationQuery
|
|
|
85
85
|
const PasswordlessMutationResolver = require("./resolvers/mutation/person/PasswordlessMutationResolver.cjs");
|
|
86
86
|
const PasswordlessSignInManager = require("./model/service/PasswordlessSignInManager.cjs");
|
|
87
87
|
const TogglePasswordlessMutationResolver = require("./resolvers/mutation/person/TogglePasswordlessMutationResolver.cjs");
|
|
88
|
+
const PasswordStrengthValidator = require("./model/service/PasswordStrengthValidator.cjs");
|
|
89
|
+
const AuthLogService = require("./model/service/AuthLogService.cjs");
|
|
88
90
|
class TenantContainerFactory {
|
|
89
91
|
constructor(providers) {
|
|
90
92
|
this.providers = providers;
|
|
@@ -107,13 +109,13 @@ class TenantContainerFactory {
|
|
|
107
109
|
);
|
|
108
110
|
}
|
|
109
111
|
createBuilder(args) {
|
|
110
|
-
return new dic.Builder({}).addService("providers", () => ({ ...this.providers, ...args.cryptoProviders })).addService("mailer", () => Mailer.createMailer(args.mailOptions)).addService("projectSchemaResolver", () => args.projectSchemaResolver).addService("templateRenderer", () => new TemplateRenderer.TemplateRenderer()).addService("accessEvaluator", ({}) => new authorization.AccessEvaluator.PermissionEvaluator(new PermissionsFactory.PermissionsFactory().create())).addService("authorizator", ({ accessEvaluator }) => new authorization.Authorizator.Default(accessEvaluator)).addService("userMailer", ({ mailer, templateRenderer }) => new UserMailer.UserMailer(mailer, templateRenderer)).addService("apiKeyService", () => new ApiKeyService.ApiKeyService()).addService("apiKeyManager", ({ apiKeyService }) => new ApiKeyManager.ApiKeyManager(apiKeyService)).addService("emailValidator", () => new EmailValidator.EmailValidator()).addService("signUpManager", ({ emailValidator }) => new SignUpManager.SignUpManager(emailValidator)).addService("passwordChangeManager", ({ providers }) => new PasswordChangeManager.PasswordChangeManager(providers)).addService("projectMemberManager", () => new ProjectMemberManager.ProjectMemberManager()).addService("identityFactory", ({ projectMemberManager }) => new IdentityFactory.IdentityFactory(projectMemberManager)).addService("projectScopeFactory", () => new ProjectScopeFactory.ProjectScopeFactory(new AclSchemaAccessNodeFactory.AclSchemaAccessNodeFactory())).addService("permissionContextFactory", ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) => new PermissionContextFactory.PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver)).addService("secretManager", ({ providers }) => new SecretsManager.SecretsManager(providers)).addService("projectManager", ({ secretManager, apiKeyService }) => new ProjectManager.ProjectManager(secretManager, args.projectInitializer, apiKeyService)).addService("personAccessManager", ({ apiKeyManager }) => new PersonAccessManager.PersonAccessManager(apiKeyManager)).addService("personManager", ({ emailValidator }) => new PersonManager.PersonManager(emailValidator)).addService("passwordResetManager", ({ userMailer, projectManager }) => new PasswordResetManager.PasswordResetManager(userMailer, projectManager)).addService("idpRegistry", () => {
|
|
112
|
+
return new dic.Builder({}).addService("providers", () => ({ ...this.providers, ...args.cryptoProviders })).addService("mailer", () => Mailer.createMailer(args.mailOptions)).addService("projectSchemaResolver", () => args.projectSchemaResolver).addService("templateRenderer", () => new TemplateRenderer.TemplateRenderer()).addService("accessEvaluator", ({}) => new authorization.AccessEvaluator.PermissionEvaluator(new PermissionsFactory.PermissionsFactory().create())).addService("authorizator", ({ accessEvaluator }) => new authorization.Authorizator.Default(accessEvaluator)).addService("userMailer", ({ mailer, templateRenderer }) => new UserMailer.UserMailer(mailer, templateRenderer)).addService("apiKeyService", () => new ApiKeyService.ApiKeyService()).addService("apiKeyManager", ({ apiKeyService }) => new ApiKeyManager.ApiKeyManager(apiKeyService)).addService("emailValidator", () => new EmailValidator.EmailValidator()).addService("passwordStrengthValidator", () => new PasswordStrengthValidator.PasswordStrengthValidator()).addService("signUpManager", ({ emailValidator, passwordStrengthValidator }) => new SignUpManager.SignUpManager(emailValidator, passwordStrengthValidator)).addService("passwordChangeManager", ({ providers, passwordStrengthValidator }) => new PasswordChangeManager.PasswordChangeManager(providers, passwordStrengthValidator)).addService("projectMemberManager", () => new ProjectMemberManager.ProjectMemberManager()).addService("identityFactory", ({ projectMemberManager }) => new IdentityFactory.IdentityFactory(projectMemberManager)).addService("projectScopeFactory", () => new ProjectScopeFactory.ProjectScopeFactory(new AclSchemaAccessNodeFactory.AclSchemaAccessNodeFactory())).addService("permissionContextFactory", ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) => new PermissionContextFactory.PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver)).addService("secretManager", ({ providers }) => new SecretsManager.SecretsManager(providers)).addService("projectManager", ({ secretManager, apiKeyService }) => new ProjectManager.ProjectManager(secretManager, args.projectInitializer, apiKeyService)).addService("personAccessManager", ({ apiKeyManager }) => new PersonAccessManager.PersonAccessManager(apiKeyManager)).addService("personManager", ({ emailValidator }) => new PersonManager.PersonManager(emailValidator)).addService("passwordResetManager", ({ userMailer, projectManager, passwordStrengthValidator }) => new PasswordResetManager.PasswordResetManager(userMailer, projectManager, passwordStrengthValidator)).addService("idpRegistry", () => {
|
|
111
113
|
const idpRegistry = new IDPHandlerRegistry.IDPHandlerRegistry();
|
|
112
114
|
idpRegistry.registerHandler("oidc", new OIDCProvider.OIDCProvider());
|
|
113
115
|
idpRegistry.registerHandler("facebook", new FacebookProvider.FacebookProvider());
|
|
114
116
|
idpRegistry.registerHandler("apple", new AppleProvider.AppleProvider());
|
|
115
117
|
return idpRegistry;
|
|
116
|
-
}).addService("idpSignInManager", ({ apiKeyManager, idpRegistry }) => new IDPSignInManager.IDPSignInManager(apiKeyManager, idpRegistry)).addService("idpManager", ({ idpRegistry }) => new IDPManager.IDPManager(idpRegistry)).addService("otpAuthenticator", ({ providers }) => new OtpAuthenticator.OtpAuthenticator(providers)).addService("signInManager", ({ apiKeyManager, providers, otpAuthenticator }) => new SignInManager.SignInManager(apiKeyManager, providers, otpAuthenticator)).addService("membershipValidator", ({ projectSchemaResolver }) => new MembershipValidator.MembershipValidator(projectSchemaResolver)).addService("inviteManager", ({ providers, userMailer, projectSchemaResolver }) => new InviteManager.InviteManager(providers, userMailer, projectSchemaResolver)).addService("otpManager", ({ otpAuthenticator }) => new OtpManager.OtpManager(otpAuthenticator)).addService("mailTemplateManager", () => new MailTemplateManager.MailTemplateManager()).addService("rolesManager", () => new RolesManager.RolesManager()).addService("configurationManager", () => new ConfigurationManager.ConfigurationManager()).addService("passwordlessSignInManager", ({ apiKeyManager,
|
|
118
|
+
}).addService("idpSignInManager", ({ apiKeyManager, idpRegistry }) => new IDPSignInManager.IDPSignInManager(apiKeyManager, idpRegistry)).addService("idpManager", ({ idpRegistry }) => new IDPManager.IDPManager(idpRegistry)).addService("otpAuthenticator", ({ providers }) => new OtpAuthenticator.OtpAuthenticator(providers)).addService("signInManager", ({ apiKeyManager, providers, otpAuthenticator }) => new SignInManager.SignInManager(apiKeyManager, providers, otpAuthenticator)).addService("membershipValidator", ({ projectSchemaResolver }) => new MembershipValidator.MembershipValidator(projectSchemaResolver)).addService("inviteManager", ({ providers, userMailer, projectSchemaResolver }) => new InviteManager.InviteManager(providers, userMailer, projectSchemaResolver)).addService("otpManager", ({ otpAuthenticator }) => new OtpManager.OtpManager(otpAuthenticator)).addService("mailTemplateManager", () => new MailTemplateManager.MailTemplateManager()).addService("rolesManager", () => new RolesManager.RolesManager()).addService("configurationManager", () => new ConfigurationManager.ConfigurationManager()).addService("passwordlessSignInManager", ({ apiKeyManager, userMailer, projectManager, otpAuthenticator }) => new PasswordlessSignInManager.PasswordlessSignInManager(apiKeyManager, userMailer, projectManager, otpAuthenticator)).addService("identityTypeResolver", ({ projectMemberManager, projectManager, permissionContextFactory }) => new IdentityTypeResolver.IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory)).addService("projectTypeResolver", ({ projectMemberManager, projectSchemaResolver }) => new ProjectTypeResolver.ProjectTypeResolver(projectMemberManager, projectSchemaResolver)).addService("signInResponseFactory", ({ permissionContextFactory, identityTypeResolver }) => new SignInResponseFactory.SignInResponseFactory(permissionContextFactory, identityTypeResolver)).addService("meQueryResolver", () => new MeQueryResolver.MeQueryResolver()).addService("personQueryResolver", ({ personManager }) => new PersonQueryResolver.PersonQueryResolver(personManager)).addService("idpQueryResolver", ({ idpManager }) => new IDPQueryResolver.IDPQueryResolver(idpManager)).addService("projectQueryResolver", ({ projectManager }) => new ProjectQueryResolver.ProjectQueryResolver(projectManager)).addService("projectMembersQueryResolver", ({ projectManager, projectMemberManager }) => new ProjectMembersQueryResolver.ProjectMembersQueryResolver(projectManager, projectMemberManager)).addService("mailTemplateQueryResolver", () => new MailTemplateQueryResolver.MailTemplateQueryResolver()).addService("signUpMutationResolver", ({ signUpManager, apiKeyManager }) => new SignUpMutationResolver.SignUpMutationResolver(signUpManager, apiKeyManager)).addService("signInMutationResolver", ({ signInManager, signInResponseFactory }) => new SignInMutationResolver.SignInMutationResolver(signInManager, signInResponseFactory)).addService("signOutMutationResolver", ({ apiKeyManager }) => new SignOutMutationResolver.SignOutMutationResolver(apiKeyManager)).addService("changeProfileMutationResolver", ({ personManager }) => new ChangeProfileMutationResolver.ChangeProfileMutationResolver(personManager)).addService("changePasswordMutationResolver", ({ passwordChangeManager }) => new ChangePasswordMutationResolver.ChangePasswordMutationResolver(passwordChangeManager)).addService("resetPasswordMutationResolver", ({ passwordResetManager, permissionContextFactory }) => new ResetPasswordMutationResolver.ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory)).addService("inviteMutationResolver", ({ inviteManager, projectManager, membershipValidator }) => new InviteMutationResolver.InviteMutationResolver(inviteManager, projectManager, membershipValidator)).addService("addProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new AddProjectMemberMutationResolver.AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("updateProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new UpdateProjectMemberMutationResolver.UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("removeProjectMemberMutationResolver", ({ projectMemberManager, projectManager }) => new RemoveProjectMemberMutationResolver.RemoveProjectMemberMutationResolver(projectMemberManager, projectManager)).addService("createApiKeyMutationResolver", ({ apiKeyManager, projectManager, membershipValidator }) => new CreateApiKeyMutationResolver.CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator)).addService("disableApiKeyMutationResolver", ({ apiKeyManager }) => new DisableApiKeyMutationResolver.DisableApiKeyMutationResolver(apiKeyManager)).addService("otpMutationResolver", ({ otpManager }) => new OtpMutationResolver.OtpMutationResolver(otpManager)).addService("mailTemplateMutationResolver", ({ projectManager, mailTemplateManager }) => new MailTemplateMutationResolver.MailTemplateMutationResolver(projectManager, mailTemplateManager)).addService("idpMutationResolver", ({ idpSignInManager, signInResponseFactory }) => new IDPMutationResolver.IDPMutationResolver(idpSignInManager, signInResponseFactory)).addService("registerIdpMutationResolver", ({ idpManager }) => new AddIDPMutationResolver.AddIDPMutationResolver(idpManager)).addService("updateIdpMutationResolver", ({ idpManager }) => new UpdateIDPMutationResolver.UpdateIDPMutationResolver(idpManager)).addService("disableIdpMutationResolver", ({ idpManager }) => new DisableIDPMutationResolver.DisableIDPMutationResolver(idpManager)).addService("enableIdpMutationResolver", ({ idpManager }) => new EnableIDPMutationResolver.EnableIDPMutationResolver(idpManager)).addService("createProjectMutationResolver", ({ projectManager }) => new CreateProjectMutationResolver.CreateProjectMutationResolver(projectManager)).addService("disablePersonMutationResolver", ({ personAccessManager, personManager }) => new DisablePersonMutationResolver.DisablePersonMutationResolver(personAccessManager, personManager)).addService("updateProjectMutationResolver", ({ projectManager }) => new UpdateProjectMutationResolver.UpdateProjectMutationResolver(projectManager)).addService("setProjectSecretMutationResolver", ({ projectManager, secretManager }) => new SetProjectSecretMutationResolver.SetProjectSecretMutationResolver(projectManager, secretManager)).addService("identityGlobalRolesMutationResolver", ({ rolesManager }) => new GlobalRolesMutationResolver.IdentityGlobalRolesMutationResolver(rolesManager)).addService("configurationMutationResolver", ({ configurationManager }) => new ConfigurationMutationResolver.ConfigurationMutationResolver(configurationManager)).addService("configurationQueryResolver", ({ configurationManager }) => new ConfigurationQueryResolver.ConfigurationQueryResolver(configurationManager)).addService("passwordlessMutationResolver", ({ passwordlessSignInManager, signInResponseFactory }) => new PasswordlessMutationResolver.PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory)).addService("togglePasswordlessMutationResolver", ({ configurationManager, personManager }) => new TogglePasswordlessMutationResolver.TogglePasswordlessMutationResolver(configurationManager, personManager)).addService("authLogService", () => new AuthLogService.AuthLogService()).addService("resolverContextFactory", ({ permissionContextFactory, authLogService }) => new TenantResolverContextFactory.TenantResolverContextFactory(permissionContextFactory, authLogService)).addService("resolvers", (container) => new ResolverFactory.ResolverFactory(container).create()).addService("connection", () => args.connection).addService("readConnection", () => args.readConnection).addService("databaseContext", ({ connection, providers }) => new DatabaseContext.DatabaseContext(connection.createClient("tenant", { module: "tenant" }), providers)).addService("readDatabaseContext", ({ readConnection, providers }) => new DatabaseContext.DatabaseContext(readConnection.createClient("tenant", { module: "tenant" }), providers)).addService("identityFetcher", ({ databaseContext }) => new IdentityFetcher.IdentityFetcher(databaseContext.client)).addService("migrationsRunner", ({ providers }) => new runner.TenantMigrationsRunner(args.dbCredentials, "tenant", args.tenantCredentials, providers));
|
|
117
119
|
}
|
|
118
120
|
}
|
|
119
121
|
exports.TenantContainerFactory = TenantContainerFactory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TenantContainer.cjs","sources":["../../../../packages/engine-tenant-api/src/TenantContainer.ts"],"sourcesContent":["import { AccessEvaluator, Authorizator } from '@contember/authorization'\nimport { Connection, DatabaseConfig } from '@contember/database'\nimport { Builder } from '@contember/dic'\nimport {\n\tAclSchemaAccessNodeFactory,\n\tApiKeyManager,\n\tApiKeyService,\n\tAppleProvider,\n\tDatabaseContext,\n\tEmailValidator,\n\tFacebookProvider,\n\tIdentity,\n\tIdentityFactory,\n\tIDPHandlerRegistry,\n\tIDPManager,\n\tIDPSignInManager,\n\tInviteManager,\n\tMailTemplateManager,\n\tMembershipValidator,\n\tOIDCProvider,\n\tOtpAuthenticator,\n\tOtpManager,\n\tPasswordChangeManager,\n\tPasswordResetManager,\n\tPermissionContextFactory,\n\tPermissionsFactory,\n\tPersonAccessManager,\n\tPersonManager,\n\tProjectInitializer,\n\tProjectManager,\n\tProjectMemberManager,\n\tProjectSchemaResolver,\n\tProjectScopeFactory,\n\tProviders,\n\tRolesManager,\n\tSecretsManager,\n\tSignInManager,\n\tSignUpManager,\n\tUserMailer,\n} from './model'\nimport {\n\tAddIDPMutationResolver,\n\tAddProjectMemberMutationResolver,\n\tChangePasswordMutationResolver,\n\tChangeProfileMutationResolver,\n\tCreateApiKeyMutationResolver,\n\tCreateProjectMutationResolver,\n\tDisableApiKeyMutationResolver,\n\tDisableIDPMutationResolver,\n\tEnableIDPMutationResolver,\n\tIdentityGlobalRolesMutationResolver,\n\tIdentityTypeResolver,\n\tIDPMutationResolver,\n\tInviteMutationResolver,\n\tMailTemplateMutationResolver,\n\tMeQueryResolver,\n\tOtpMutationResolver,\n\tPersonQueryResolver,\n\tProjectMembersQueryResolver,\n\tProjectQueryResolver,\n\tProjectTypeResolver,\n\tRemoveProjectMemberMutationResolver,\n\tResetPasswordMutationResolver,\n\tResolverFactory,\n\tSetProjectSecretMutationResolver,\n\tSignInMutationResolver,\n\tSignOutMutationResolver,\n\tSignUpMutationResolver,\n\tTenantResolverContextFactory,\n\tUpdateProjectMemberMutationResolver,\n\tUpdateProjectMutationResolver,\n} from './resolvers'\nimport * as Schema from './schema'\nimport { createMailer, MailerOptions, TemplateRenderer } from './utils'\nimport { IdentityFetcher } from './bridges/system/IdentityFetcher'\nimport { SignInResponseFactory } from './resolvers/responseHelpers/SignInResponseFactory'\nimport { IDPQueryResolver } from './resolvers/query/IDPQueryResolver'\nimport { UpdateIDPMutationResolver } from './resolvers/mutation/idp/UpdateIDPMutationResolver'\nimport { TenantCredentials, TenantMigrationsRunner } from './migrations'\nimport { DisablePersonMutationResolver } from './resolvers/mutation/person/DisablePersonMutationResolver'\nimport { MailTemplateQueryResolver } from './resolvers/query/MailTemplateQueryResolver'\nimport { ConfigurationManager } from './model/service/ConfigurationManager'\nimport { ConfigurationMutationResolver } from './resolvers/mutation/configuration/ConfigurationMutationResolver'\nimport { ConfigurationQueryResolver } from './resolvers/query/ConfigurationQueryResolver'\nimport { PasswordlessMutationResolver } from './resolvers/mutation/person/PasswordlessMutationResolver'\nimport { PasswordlessSignInManager } from './model/service/PasswordlessSignInManager'\nimport { TogglePasswordlessMutationResolver } from './resolvers/mutation/person/TogglePasswordlessMutationResolver'\n\nexport interface TenantContainer {\n\tprojectMemberManager: ProjectMemberManager\n\tapiKeyManager: ApiKeyManager\n\tsignUpManager: SignUpManager\n\tprojectManager: ProjectManager\n\tresolvers: Schema.Resolvers\n\tresolverContextFactory: TenantResolverContextFactory\n\tauthorizator: Authorizator<Identity>\n\tidentityFetcher: IdentityFetcher\n\tdatabaseContext: DatabaseContext\n\treadDatabaseContext: DatabaseContext\n\tmigrationsRunner: TenantMigrationsRunner\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n}\n\nexport interface TenantContainerArgs {\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n\tdbCredentials: DatabaseConfig\n\tmailOptions: MailerOptions\n\tprojectSchemaResolver: ProjectSchemaResolver\n\tprojectInitializer: ProjectInitializer\n\ttenantCredentials: TenantCredentials\n\tcryptoProviders: Pick<Providers, 'encrypt' | 'decrypt'>\n}\n\nexport class TenantContainerFactory {\n\tconstructor(\n\t\tprivate readonly providers: Omit<Providers, 'encrypt' | 'decrypt'>,\n\t) { }\n\n\tcreate(args: TenantContainerArgs): TenantContainer {\n\t\treturn this.createBuilder(args)\n\t\t\t.build()\n\t\t\t.pick(\n\t\t\t\t'apiKeyManager',\n\t\t\t\t'projectMemberManager',\n\t\t\t\t'projectManager',\n\t\t\t\t'signUpManager',\n\t\t\t\t'resolvers',\n\t\t\t\t'authorizator',\n\t\t\t\t'resolverContextFactory',\n\t\t\t\t'identityFetcher',\n\t\t\t\t'databaseContext',\n\t\t\t\t'readDatabaseContext',\n\t\t\t\t'migrationsRunner',\n\t\t\t\t'connection',\n\t\t\t\t'readConnection',\n\t\t\t)\n\t}\n\n\tcreateBuilder(args: TenantContainerArgs) {\n\t\treturn new Builder({})\n\t\t\t.addService('providers', () =>\n\t\t\t\t({ ...this.providers, ...args.cryptoProviders }))\n\t\t\t.addService('mailer', () =>\n\t\t\t\tcreateMailer(args.mailOptions))\n\t\t\t.addService('projectSchemaResolver', () =>\n\t\t\t\targs.projectSchemaResolver)\n\t\t\t.addService('templateRenderer', () =>\n\t\t\t\tnew TemplateRenderer())\n\t\t\t.addService('accessEvaluator', ({ }) =>\n\t\t\t\tnew AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create()))\n\t\t\t.addService('authorizator', ({ accessEvaluator }) =>\n\t\t\t\tnew Authorizator.Default(accessEvaluator))\n\t\t\t.addService('userMailer', ({ mailer, templateRenderer }) =>\n\t\t\t\tnew UserMailer(mailer, templateRenderer))\n\t\t\t.addService('apiKeyService', () =>\n\t\t\t\tnew ApiKeyService())\n\t\t\t.addService('apiKeyManager', ({ apiKeyService }) =>\n\t\t\t\tnew ApiKeyManager(apiKeyService))\n\t\t\t.addService('emailValidator', () =>\n\t\t\t\tnew EmailValidator())\n\t\t\t.addService('signUpManager', ({ emailValidator }) =>\n\t\t\t\tnew SignUpManager(emailValidator))\n\t\t\t.addService('passwordChangeManager', ({ providers }) =>\n\t\t\t\tnew PasswordChangeManager(providers))\n\t\t\t.addService('projectMemberManager', () =>\n\t\t\t\tnew ProjectMemberManager())\n\t\t\t.addService('identityFactory', ({ projectMemberManager }) =>\n\t\t\t\tnew IdentityFactory(projectMemberManager))\n\t\t\t.addService('projectScopeFactory', () =>\n\t\t\t\tnew ProjectScopeFactory(new AclSchemaAccessNodeFactory()))\n\t\t\t.addService('permissionContextFactory', ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) =>\n\t\t\t\tnew PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver))\n\t\t\t.addService('secretManager', ({ providers }) =>\n\t\t\t\tnew SecretsManager(providers))\n\t\t\t.addService('projectManager', ({ secretManager, apiKeyService }) =>\n\t\t\t\tnew ProjectManager(secretManager, args.projectInitializer, apiKeyService))\n\t\t\t.addService('personAccessManager', ({ apiKeyManager }) =>\n\t\t\t\tnew PersonAccessManager(apiKeyManager))\n\t\t\t.addService('personManager', ({ emailValidator }) =>\n\t\t\t\tnew PersonManager(emailValidator))\n\t\t\t.addService('passwordResetManager', ({ userMailer, projectManager }) =>\n\t\t\t\tnew PasswordResetManager(userMailer, projectManager))\n\t\t\t.addService('idpRegistry', () => {\n\t\t\t\tconst idpRegistry = new IDPHandlerRegistry()\n\t\t\t\tidpRegistry.registerHandler('oidc', new OIDCProvider())\n\t\t\t\tidpRegistry.registerHandler('facebook', new FacebookProvider())\n\t\t\t\tidpRegistry.registerHandler('apple', new AppleProvider())\n\t\t\t\treturn idpRegistry\n\t\t\t})\n\t\t\t.addService('idpSignInManager', ({ apiKeyManager, idpRegistry }) =>\n\t\t\t\tnew IDPSignInManager(apiKeyManager, idpRegistry))\n\t\t\t.addService('idpManager', ({ idpRegistry }) =>\n\t\t\t\tnew IDPManager(idpRegistry))\n\t\t\t.addService('otpAuthenticator', ({ providers }) =>\n\t\t\t\tnew OtpAuthenticator(providers))\n\t\t\t.addService('signInManager', ({ apiKeyManager, providers, otpAuthenticator }) =>\n\t\t\t\tnew SignInManager(apiKeyManager, providers, otpAuthenticator))\n\t\t\t.addService('membershipValidator', ({ projectSchemaResolver }) =>\n\t\t\t\tnew MembershipValidator(projectSchemaResolver))\n\t\t\t.addService('inviteManager', ({ providers, userMailer, projectSchemaResolver }) =>\n\t\t\t\tnew InviteManager(providers, userMailer, projectSchemaResolver))\n\t\t\t.addService('otpManager', ({ otpAuthenticator }) =>\n\t\t\t\tnew OtpManager(otpAuthenticator))\n\t\t\t.addService('mailTemplateManager', () =>\n\t\t\t\tnew MailTemplateManager())\n\t\t\t.addService('rolesManager', () =>\n\t\t\t\tnew RolesManager())\n\t\t\t.addService('configurationManager', () =>\n\t\t\t\tnew ConfigurationManager())\n\t\t\t.addService('passwordlessSignInManager', ({ apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator }) =>\n\t\t\t\tnew PasswordlessSignInManager(apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator))\n\n\t\t\t.addService('identityTypeResolver', ({ projectMemberManager, projectManager, permissionContextFactory }) =>\n\t\t\t\tnew IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory))\n\t\t\t.addService('projectTypeResolver', ({ projectMemberManager, projectSchemaResolver }) =>\n\t\t\t\tnew ProjectTypeResolver(projectMemberManager, projectSchemaResolver))\n\t\t\t.addService('signInResponseFactory', ({ permissionContextFactory, identityTypeResolver }) =>\n\t\t\t\tnew SignInResponseFactory(permissionContextFactory, identityTypeResolver))\n\t\t\t.addService('meQueryResolver', () =>\n\t\t\t\tnew MeQueryResolver())\n\t\t\t.addService('personQueryResolver', ({ personManager }) =>\n\t\t\t\tnew PersonQueryResolver(personManager))\n\t\t\t.addService('idpQueryResolver', ({ idpManager }) =>\n\t\t\t\tnew IDPQueryResolver(idpManager))\n\t\t\t.addService('projectQueryResolver', ({ projectManager }) =>\n\t\t\t\tnew ProjectQueryResolver(projectManager))\n\t\t\t.addService('projectMembersQueryResolver', ({ projectManager, projectMemberManager }) =>\n\t\t\t\tnew ProjectMembersQueryResolver(projectManager, projectMemberManager))\n\t\t\t.addService('mailTemplateQueryResolver', () =>\n\t\t\t\tnew MailTemplateQueryResolver())\n\t\t\t.addService('signUpMutationResolver', ({ signUpManager, apiKeyManager }) =>\n\t\t\t\tnew SignUpMutationResolver(signUpManager, apiKeyManager))\n\t\t\t.addService('signInMutationResolver', ({ signInManager, signInResponseFactory }) =>\n\t\t\t\tnew SignInMutationResolver(signInManager, signInResponseFactory))\n\t\t\t.addService('signOutMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew SignOutMutationResolver(apiKeyManager))\n\t\t\t.addService('changeProfileMutationResolver', ({ personManager }) =>\n\t\t\t\tnew ChangeProfileMutationResolver(personManager))\n\t\t\t.addService('changePasswordMutationResolver', ({ passwordChangeManager }) =>\n\t\t\t\tnew ChangePasswordMutationResolver(passwordChangeManager))\n\t\t\t.addService('resetPasswordMutationResolver', ({ passwordResetManager, permissionContextFactory }) =>\n\t\t\t\tnew ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory))\n\t\t\t.addService('inviteMutationResolver', ({ inviteManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew InviteMutationResolver(inviteManager, projectManager, membershipValidator))\n\t\t\t.addService('addProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('updateProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('removeProjectMemberMutationResolver', ({ projectMemberManager, projectManager }) =>\n\t\t\t\tnew RemoveProjectMemberMutationResolver(projectMemberManager, projectManager))\n\t\t\t.addService('createApiKeyMutationResolver', ({ apiKeyManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator))\n\t\t\t.addService('disableApiKeyMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew DisableApiKeyMutationResolver(apiKeyManager))\n\t\t\t.addService('otpMutationResolver', ({ otpManager }) =>\n\t\t\t\tnew OtpMutationResolver(otpManager))\n\t\t\t.addService('mailTemplateMutationResolver', ({ projectManager, mailTemplateManager }) =>\n\t\t\t\tnew MailTemplateMutationResolver(projectManager, mailTemplateManager))\n\t\t\t.addService('idpMutationResolver', ({ idpSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew IDPMutationResolver(idpSignInManager, signInResponseFactory))\n\t\t\t.addService('registerIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew AddIDPMutationResolver(idpManager))\n\t\t\t.addService('updateIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew UpdateIDPMutationResolver(idpManager))\n\t\t\t.addService('disableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew DisableIDPMutationResolver(idpManager))\n\t\t\t.addService('enableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew EnableIDPMutationResolver(idpManager))\n\t\t\t.addService('createProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew CreateProjectMutationResolver(projectManager))\n\t\t\t.addService('disablePersonMutationResolver', ({ personAccessManager, personManager }) =>\n\t\t\t\tnew DisablePersonMutationResolver(personAccessManager, personManager))\n\t\t\t.addService('updateProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew UpdateProjectMutationResolver(projectManager))\n\t\t\t.addService('setProjectSecretMutationResolver', ({ projectManager, secretManager }) =>\n\t\t\t\tnew SetProjectSecretMutationResolver(projectManager, secretManager))\n\t\t\t.addService('identityGlobalRolesMutationResolver', ({ rolesManager }) =>\n\t\t\t\tnew IdentityGlobalRolesMutationResolver(rolesManager))\n\t\t\t.addService('configurationMutationResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationMutationResolver(configurationManager))\n\t\t\t.addService('configurationQueryResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationQueryResolver(configurationManager))\n\t\t\t.addService('passwordlessMutationResolver', ({ passwordlessSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory))\n\t\t\t.addService('togglePasswordlessMutationResolver', ({ configurationManager, personManager }) =>\n\t\t\t\tnew TogglePasswordlessMutationResolver(configurationManager, personManager))\n\t\t\t.addService('resolverContextFactory', ({ permissionContextFactory }) =>\n\t\t\t\tnew TenantResolverContextFactory(permissionContextFactory))\n\t\t\t.addService('resolvers', container =>\n\t\t\t\tnew ResolverFactory(container).create())\n\t\t\t.addService('connection', () =>\n\t\t\t\targs.connection)\n\t\t\t.addService('readConnection', () =>\n\t\t\t\targs.readConnection)\n\t\t\t.addService('databaseContext', ({ connection, providers }) =>\n\t\t\t\tnew DatabaseContext(connection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('readDatabaseContext', ({ readConnection, providers }) =>\n\t\t\t\tnew DatabaseContext(readConnection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('identityFetcher', ({ databaseContext }) =>\n\t\t\t\tnew IdentityFetcher(databaseContext.client))\n\t\t\t.addService('migrationsRunner', ({ providers }) =>\n\t\t\t\tnew TenantMigrationsRunner(args.dbCredentials, 'tenant', args.tenantCredentials, providers))\n\t}\n}\n"],"names":["Builder","createMailer","TemplateRenderer","AccessEvaluator","PermissionsFactory","Authorizator","UserMailer","ApiKeyService","ApiKeyManager","EmailValidator","SignUpManager","PasswordChangeManager","ProjectMemberManager","IdentityFactory","ProjectScopeFactory","AclSchemaAccessNodeFactory","PermissionContextFactory","SecretsManager","ProjectManager","PersonAccessManager","PersonManager","PasswordResetManager","IDPHandlerRegistry","OIDCProvider","FacebookProvider","AppleProvider","IDPSignInManager","IDPManager","OtpAuthenticator","SignInManager","MembershipValidator","InviteManager","OtpManager","MailTemplateManager","RolesManager","ConfigurationManager","PasswordlessSignInManager","IdentityTypeResolver","ProjectTypeResolver","SignInResponseFactory","MeQueryResolver","PersonQueryResolver","IDPQueryResolver","ProjectQueryResolver","ProjectMembersQueryResolver","MailTemplateQueryResolver","SignUpMutationResolver","SignInMutationResolver","SignOutMutationResolver","ChangeProfileMutationResolver","ChangePasswordMutationResolver","ResetPasswordMutationResolver","InviteMutationResolver","AddProjectMemberMutationResolver","UpdateProjectMemberMutationResolver","RemoveProjectMemberMutationResolver","CreateApiKeyMutationResolver","DisableApiKeyMutationResolver","OtpMutationResolver","MailTemplateMutationResolver","IDPMutationResolver","AddIDPMutationResolver","UpdateIDPMutationResolver","DisableIDPMutationResolver","EnableIDPMutationResolver","CreateProjectMutationResolver","DisablePersonMutationResolver","UpdateProjectMutationResolver","SetProjectSecretMutationResolver","IdentityGlobalRolesMutationResolver","ConfigurationMutationResolver","ConfigurationQueryResolver","PasswordlessMutationResolver","TogglePasswordlessMutationResolver","TenantResolverContextFactory","ResolverFactory","DatabaseContext","IdentityFetcher","TenantMigrationsRunner"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TenantContainer.cjs","sources":["../../../../packages/engine-tenant-api/src/TenantContainer.ts"],"sourcesContent":["import { AccessEvaluator, Authorizator } from '@contember/authorization'\nimport { Connection, DatabaseConfig } from '@contember/database'\nimport { Builder } from '@contember/dic'\nimport {\n\tAclSchemaAccessNodeFactory,\n\tApiKeyManager,\n\tApiKeyService,\n\tAppleProvider,\n\tDatabaseContext,\n\tEmailValidator,\n\tFacebookProvider,\n\tIdentity,\n\tIdentityFactory,\n\tIDPHandlerRegistry,\n\tIDPManager,\n\tIDPSignInManager,\n\tInviteManager,\n\tMailTemplateManager,\n\tMembershipValidator,\n\tOIDCProvider,\n\tOtpAuthenticator,\n\tOtpManager,\n\tPasswordChangeManager,\n\tPasswordResetManager,\n\tPermissionContextFactory,\n\tPermissionsFactory,\n\tPersonAccessManager,\n\tPersonManager,\n\tProjectInitializer,\n\tProjectManager,\n\tProjectMemberManager,\n\tProjectSchemaResolver,\n\tProjectScopeFactory,\n\tProviders,\n\tRolesManager,\n\tSecretsManager,\n\tSignInManager,\n\tSignUpManager,\n\tUserMailer,\n} from './model'\nimport {\n\tAddIDPMutationResolver,\n\tAddProjectMemberMutationResolver,\n\tChangePasswordMutationResolver,\n\tChangeProfileMutationResolver,\n\tCreateApiKeyMutationResolver,\n\tCreateProjectMutationResolver,\n\tDisableApiKeyMutationResolver,\n\tDisableIDPMutationResolver,\n\tEnableIDPMutationResolver,\n\tIdentityGlobalRolesMutationResolver,\n\tIdentityTypeResolver,\n\tIDPMutationResolver,\n\tInviteMutationResolver,\n\tMailTemplateMutationResolver,\n\tMeQueryResolver,\n\tOtpMutationResolver,\n\tPersonQueryResolver,\n\tProjectMembersQueryResolver,\n\tProjectQueryResolver,\n\tProjectTypeResolver,\n\tRemoveProjectMemberMutationResolver,\n\tResetPasswordMutationResolver,\n\tResolverFactory,\n\tSetProjectSecretMutationResolver,\n\tSignInMutationResolver,\n\tSignOutMutationResolver,\n\tSignUpMutationResolver,\n\tTenantResolverContextFactory,\n\tUpdateProjectMemberMutationResolver,\n\tUpdateProjectMutationResolver,\n} from './resolvers'\nimport * as Schema from './schema'\nimport { createMailer, MailerOptions, TemplateRenderer } from './utils'\nimport { IdentityFetcher } from './bridges/system/IdentityFetcher'\nimport { SignInResponseFactory } from './resolvers/responseHelpers/SignInResponseFactory'\nimport { IDPQueryResolver } from './resolvers/query/IDPQueryResolver'\nimport { UpdateIDPMutationResolver } from './resolvers/mutation/idp/UpdateIDPMutationResolver'\nimport { TenantCredentials, TenantMigrationsRunner } from './migrations'\nimport { DisablePersonMutationResolver } from './resolvers/mutation/person/DisablePersonMutationResolver'\nimport { MailTemplateQueryResolver } from './resolvers/query/MailTemplateQueryResolver'\nimport { ConfigurationManager } from './model/service/ConfigurationManager'\nimport { ConfigurationMutationResolver } from './resolvers/mutation/configuration/ConfigurationMutationResolver'\nimport { ConfigurationQueryResolver } from './resolvers/query/ConfigurationQueryResolver'\nimport { PasswordlessMutationResolver } from './resolvers/mutation/person/PasswordlessMutationResolver'\nimport { PasswordlessSignInManager } from './model/service/PasswordlessSignInManager'\nimport { TogglePasswordlessMutationResolver } from './resolvers/mutation/person/TogglePasswordlessMutationResolver'\nimport { PasswordStrengthValidator } from './model/service/PasswordStrengthValidator'\nimport { AuthLogService } from './model/service/AuthLogService'\n\nexport interface TenantContainer {\n\tprojectMemberManager: ProjectMemberManager\n\tapiKeyManager: ApiKeyManager\n\tsignUpManager: SignUpManager\n\tprojectManager: ProjectManager\n\tresolvers: Schema.Resolvers\n\tresolverContextFactory: TenantResolverContextFactory\n\tauthorizator: Authorizator<Identity>\n\tidentityFetcher: IdentityFetcher\n\tdatabaseContext: DatabaseContext\n\treadDatabaseContext: DatabaseContext\n\tmigrationsRunner: TenantMigrationsRunner\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n}\n\nexport interface TenantContainerArgs {\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n\tdbCredentials: DatabaseConfig\n\tmailOptions: MailerOptions\n\tprojectSchemaResolver: ProjectSchemaResolver\n\tprojectInitializer: ProjectInitializer\n\ttenantCredentials: TenantCredentials\n\tcryptoProviders: Pick<Providers, 'encrypt' | 'decrypt'>\n}\n\nexport class TenantContainerFactory {\n\tconstructor(\n\t\tprivate readonly providers: Omit<Providers, 'encrypt' | 'decrypt'>,\n\t) { }\n\n\tcreate(args: TenantContainerArgs): TenantContainer {\n\t\treturn this.createBuilder(args)\n\t\t\t.build()\n\t\t\t.pick(\n\t\t\t\t'apiKeyManager',\n\t\t\t\t'projectMemberManager',\n\t\t\t\t'projectManager',\n\t\t\t\t'signUpManager',\n\t\t\t\t'resolvers',\n\t\t\t\t'authorizator',\n\t\t\t\t'resolverContextFactory',\n\t\t\t\t'identityFetcher',\n\t\t\t\t'databaseContext',\n\t\t\t\t'readDatabaseContext',\n\t\t\t\t'migrationsRunner',\n\t\t\t\t'connection',\n\t\t\t\t'readConnection',\n\t\t\t)\n\t}\n\n\tcreateBuilder(args: TenantContainerArgs) {\n\t\treturn new Builder({})\n\t\t\t.addService('providers', () =>\n\t\t\t\t({ ...this.providers, ...args.cryptoProviders }))\n\t\t\t.addService('mailer', () =>\n\t\t\t\tcreateMailer(args.mailOptions))\n\t\t\t.addService('projectSchemaResolver', () =>\n\t\t\t\targs.projectSchemaResolver)\n\t\t\t.addService('templateRenderer', () =>\n\t\t\t\tnew TemplateRenderer())\n\t\t\t.addService('accessEvaluator', ({ }) =>\n\t\t\t\tnew AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create()))\n\t\t\t.addService('authorizator', ({ accessEvaluator }) =>\n\t\t\t\tnew Authorizator.Default(accessEvaluator))\n\t\t\t.addService('userMailer', ({ mailer, templateRenderer }) =>\n\t\t\t\tnew UserMailer(mailer, templateRenderer))\n\t\t\t.addService('apiKeyService', () =>\n\t\t\t\tnew ApiKeyService())\n\t\t\t.addService('apiKeyManager', ({ apiKeyService }) =>\n\t\t\t\tnew ApiKeyManager(apiKeyService))\n\t\t\t.addService('emailValidator', () =>\n\t\t\t\tnew EmailValidator())\n\t\t\t.addService('passwordStrengthValidator', () =>\n\t\t\t\tnew PasswordStrengthValidator())\n\t\t\t.addService('signUpManager', ({ emailValidator, passwordStrengthValidator }) =>\n\t\t\t\tnew SignUpManager(emailValidator, passwordStrengthValidator))\n\t\t\t.addService('passwordChangeManager', ({ providers, passwordStrengthValidator }) =>\n\t\t\t\tnew PasswordChangeManager(providers, passwordStrengthValidator))\n\t\t\t.addService('projectMemberManager', () =>\n\t\t\t\tnew ProjectMemberManager())\n\t\t\t.addService('identityFactory', ({ projectMemberManager }) =>\n\t\t\t\tnew IdentityFactory(projectMemberManager))\n\t\t\t.addService('projectScopeFactory', () =>\n\t\t\t\tnew ProjectScopeFactory(new AclSchemaAccessNodeFactory()))\n\t\t\t.addService('permissionContextFactory', ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) =>\n\t\t\t\tnew PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver))\n\t\t\t.addService('secretManager', ({ providers }) =>\n\t\t\t\tnew SecretsManager(providers))\n\t\t\t.addService('projectManager', ({ secretManager, apiKeyService }) =>\n\t\t\t\tnew ProjectManager(secretManager, args.projectInitializer, apiKeyService))\n\t\t\t.addService('personAccessManager', ({ apiKeyManager }) =>\n\t\t\t\tnew PersonAccessManager(apiKeyManager))\n\t\t\t.addService('personManager', ({ emailValidator }) =>\n\t\t\t\tnew PersonManager(emailValidator))\n\t\t\t.addService('passwordResetManager', ({ userMailer, projectManager, passwordStrengthValidator }) =>\n\t\t\t\tnew PasswordResetManager(userMailer, projectManager, passwordStrengthValidator))\n\t\t\t.addService('idpRegistry', () => {\n\t\t\t\tconst idpRegistry = new IDPHandlerRegistry()\n\t\t\t\tidpRegistry.registerHandler('oidc', new OIDCProvider())\n\t\t\t\tidpRegistry.registerHandler('facebook', new FacebookProvider())\n\t\t\t\tidpRegistry.registerHandler('apple', new AppleProvider())\n\t\t\t\treturn idpRegistry\n\t\t\t})\n\t\t\t.addService('idpSignInManager', ({ apiKeyManager, idpRegistry }) =>\n\t\t\t\tnew IDPSignInManager(apiKeyManager, idpRegistry))\n\t\t\t.addService('idpManager', ({ idpRegistry }) =>\n\t\t\t\tnew IDPManager(idpRegistry))\n\t\t\t.addService('otpAuthenticator', ({ providers }) =>\n\t\t\t\tnew OtpAuthenticator(providers))\n\t\t\t.addService('signInManager', ({ apiKeyManager, providers, otpAuthenticator }) =>\n\t\t\t\tnew SignInManager(apiKeyManager, providers, otpAuthenticator))\n\t\t\t.addService('membershipValidator', ({ projectSchemaResolver }) =>\n\t\t\t\tnew MembershipValidator(projectSchemaResolver))\n\t\t\t.addService('inviteManager', ({ providers, userMailer, projectSchemaResolver }) =>\n\t\t\t\tnew InviteManager(providers, userMailer, projectSchemaResolver))\n\t\t\t.addService('otpManager', ({ otpAuthenticator }) =>\n\t\t\t\tnew OtpManager(otpAuthenticator))\n\t\t\t.addService('mailTemplateManager', () =>\n\t\t\t\tnew MailTemplateManager())\n\t\t\t.addService('rolesManager', () =>\n\t\t\t\tnew RolesManager())\n\t\t\t.addService('configurationManager', () =>\n\t\t\t\tnew ConfigurationManager())\n\t\t\t.addService('passwordlessSignInManager', ({ apiKeyManager, userMailer, projectManager, otpAuthenticator }) =>\n\t\t\t\tnew PasswordlessSignInManager(apiKeyManager, userMailer, projectManager, otpAuthenticator))\n\n\t\t\t.addService('identityTypeResolver', ({ projectMemberManager, projectManager, permissionContextFactory }) =>\n\t\t\t\tnew IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory))\n\t\t\t.addService('projectTypeResolver', ({ projectMemberManager, projectSchemaResolver }) =>\n\t\t\t\tnew ProjectTypeResolver(projectMemberManager, projectSchemaResolver))\n\t\t\t.addService('signInResponseFactory', ({ permissionContextFactory, identityTypeResolver }) =>\n\t\t\t\tnew SignInResponseFactory(permissionContextFactory, identityTypeResolver))\n\t\t\t.addService('meQueryResolver', () =>\n\t\t\t\tnew MeQueryResolver())\n\t\t\t.addService('personQueryResolver', ({ personManager }) =>\n\t\t\t\tnew PersonQueryResolver(personManager))\n\t\t\t.addService('idpQueryResolver', ({ idpManager }) =>\n\t\t\t\tnew IDPQueryResolver(idpManager))\n\t\t\t.addService('projectQueryResolver', ({ projectManager }) =>\n\t\t\t\tnew ProjectQueryResolver(projectManager))\n\t\t\t.addService('projectMembersQueryResolver', ({ projectManager, projectMemberManager }) =>\n\t\t\t\tnew ProjectMembersQueryResolver(projectManager, projectMemberManager))\n\t\t\t.addService('mailTemplateQueryResolver', () =>\n\t\t\t\tnew MailTemplateQueryResolver())\n\t\t\t.addService('signUpMutationResolver', ({ signUpManager, apiKeyManager }) =>\n\t\t\t\tnew SignUpMutationResolver(signUpManager, apiKeyManager))\n\t\t\t.addService('signInMutationResolver', ({ signInManager, signInResponseFactory }) =>\n\t\t\t\tnew SignInMutationResolver(signInManager, signInResponseFactory))\n\t\t\t.addService('signOutMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew SignOutMutationResolver(apiKeyManager))\n\t\t\t.addService('changeProfileMutationResolver', ({ personManager }) =>\n\t\t\t\tnew ChangeProfileMutationResolver(personManager))\n\t\t\t.addService('changePasswordMutationResolver', ({ passwordChangeManager }) =>\n\t\t\t\tnew ChangePasswordMutationResolver(passwordChangeManager))\n\t\t\t.addService('resetPasswordMutationResolver', ({ passwordResetManager, permissionContextFactory }) =>\n\t\t\t\tnew ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory))\n\t\t\t.addService('inviteMutationResolver', ({ inviteManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew InviteMutationResolver(inviteManager, projectManager, membershipValidator))\n\t\t\t.addService('addProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('updateProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('removeProjectMemberMutationResolver', ({ projectMemberManager, projectManager }) =>\n\t\t\t\tnew RemoveProjectMemberMutationResolver(projectMemberManager, projectManager))\n\t\t\t.addService('createApiKeyMutationResolver', ({ apiKeyManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator))\n\t\t\t.addService('disableApiKeyMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew DisableApiKeyMutationResolver(apiKeyManager))\n\t\t\t.addService('otpMutationResolver', ({ otpManager }) =>\n\t\t\t\tnew OtpMutationResolver(otpManager))\n\t\t\t.addService('mailTemplateMutationResolver', ({ projectManager, mailTemplateManager }) =>\n\t\t\t\tnew MailTemplateMutationResolver(projectManager, mailTemplateManager))\n\t\t\t.addService('idpMutationResolver', ({ idpSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew IDPMutationResolver(idpSignInManager, signInResponseFactory))\n\t\t\t.addService('registerIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew AddIDPMutationResolver(idpManager))\n\t\t\t.addService('updateIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew UpdateIDPMutationResolver(idpManager))\n\t\t\t.addService('disableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew DisableIDPMutationResolver(idpManager))\n\t\t\t.addService('enableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew EnableIDPMutationResolver(idpManager))\n\t\t\t.addService('createProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew CreateProjectMutationResolver(projectManager))\n\t\t\t.addService('disablePersonMutationResolver', ({ personAccessManager, personManager }) =>\n\t\t\t\tnew DisablePersonMutationResolver(personAccessManager, personManager))\n\t\t\t.addService('updateProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew UpdateProjectMutationResolver(projectManager))\n\t\t\t.addService('setProjectSecretMutationResolver', ({ projectManager, secretManager }) =>\n\t\t\t\tnew SetProjectSecretMutationResolver(projectManager, secretManager))\n\t\t\t.addService('identityGlobalRolesMutationResolver', ({ rolesManager }) =>\n\t\t\t\tnew IdentityGlobalRolesMutationResolver(rolesManager))\n\t\t\t.addService('configurationMutationResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationMutationResolver(configurationManager))\n\t\t\t.addService('configurationQueryResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationQueryResolver(configurationManager))\n\t\t\t.addService('passwordlessMutationResolver', ({ passwordlessSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory))\n\t\t\t.addService('togglePasswordlessMutationResolver', ({ configurationManager, personManager }) =>\n\t\t\t\tnew TogglePasswordlessMutationResolver(configurationManager, personManager))\n\t\t\t.addService('authLogService', () =>\n\t\t\t\tnew AuthLogService())\n\t\t\t.addService('resolverContextFactory', ({ permissionContextFactory, authLogService }) =>\n\t\t\t\tnew TenantResolverContextFactory(permissionContextFactory, authLogService))\n\t\t\t.addService('resolvers', container =>\n\t\t\t\tnew ResolverFactory(container).create())\n\t\t\t.addService('connection', () =>\n\t\t\t\targs.connection)\n\t\t\t.addService('readConnection', () =>\n\t\t\t\targs.readConnection)\n\t\t\t.addService('databaseContext', ({ connection, providers }) =>\n\t\t\t\tnew DatabaseContext(connection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('readDatabaseContext', ({ readConnection, providers }) =>\n\t\t\t\tnew DatabaseContext(readConnection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('identityFetcher', ({ databaseContext }) =>\n\t\t\t\tnew IdentityFetcher(databaseContext.client))\n\t\t\t.addService('migrationsRunner', ({ providers }) =>\n\t\t\t\tnew TenantMigrationsRunner(args.dbCredentials, 'tenant', args.tenantCredentials, providers))\n\t}\n}\n"],"names":["Builder","createMailer","TemplateRenderer","AccessEvaluator","PermissionsFactory","Authorizator","UserMailer","ApiKeyService","ApiKeyManager","EmailValidator","PasswordStrengthValidator","SignUpManager","PasswordChangeManager","ProjectMemberManager","IdentityFactory","ProjectScopeFactory","AclSchemaAccessNodeFactory","PermissionContextFactory","SecretsManager","ProjectManager","PersonAccessManager","PersonManager","PasswordResetManager","IDPHandlerRegistry","OIDCProvider","FacebookProvider","AppleProvider","IDPSignInManager","IDPManager","OtpAuthenticator","SignInManager","MembershipValidator","InviteManager","OtpManager","MailTemplateManager","RolesManager","ConfigurationManager","PasswordlessSignInManager","IdentityTypeResolver","ProjectTypeResolver","SignInResponseFactory","MeQueryResolver","PersonQueryResolver","IDPQueryResolver","ProjectQueryResolver","ProjectMembersQueryResolver","MailTemplateQueryResolver","SignUpMutationResolver","SignInMutationResolver","SignOutMutationResolver","ChangeProfileMutationResolver","ChangePasswordMutationResolver","ResetPasswordMutationResolver","InviteMutationResolver","AddProjectMemberMutationResolver","UpdateProjectMemberMutationResolver","RemoveProjectMemberMutationResolver","CreateApiKeyMutationResolver","DisableApiKeyMutationResolver","OtpMutationResolver","MailTemplateMutationResolver","IDPMutationResolver","AddIDPMutationResolver","UpdateIDPMutationResolver","DisableIDPMutationResolver","EnableIDPMutationResolver","CreateProjectMutationResolver","DisablePersonMutationResolver","UpdateProjectMutationResolver","SetProjectSecretMutationResolver","IdentityGlobalRolesMutationResolver","ConfigurationMutationResolver","ConfigurationQueryResolver","PasswordlessMutationResolver","TogglePasswordlessMutationResolver","AuthLogService","TenantResolverContextFactory","ResolverFactory","DatabaseContext","IdentityFetcher","TenantMigrationsRunner"],"mappings":"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"}
|
|
@@ -83,6 +83,8 @@ import { ConfigurationQueryResolver } from "./resolvers/query/ConfigurationQuery
|
|
|
83
83
|
import { PasswordlessMutationResolver } from "./resolvers/mutation/person/PasswordlessMutationResolver.js";
|
|
84
84
|
import { PasswordlessSignInManager } from "./model/service/PasswordlessSignInManager.js";
|
|
85
85
|
import { TogglePasswordlessMutationResolver } from "./resolvers/mutation/person/TogglePasswordlessMutationResolver.js";
|
|
86
|
+
import { PasswordStrengthValidator } from "./model/service/PasswordStrengthValidator.js";
|
|
87
|
+
import { AuthLogService } from "./model/service/AuthLogService.js";
|
|
86
88
|
class TenantContainerFactory {
|
|
87
89
|
constructor(providers) {
|
|
88
90
|
this.providers = providers;
|
|
@@ -105,13 +107,13 @@ class TenantContainerFactory {
|
|
|
105
107
|
);
|
|
106
108
|
}
|
|
107
109
|
createBuilder(args) {
|
|
108
|
-
return new Builder({}).addService("providers", () => ({ ...this.providers, ...args.cryptoProviders })).addService("mailer", () => createMailer(args.mailOptions)).addService("projectSchemaResolver", () => args.projectSchemaResolver).addService("templateRenderer", () => new TemplateRenderer()).addService("accessEvaluator", ({}) => new AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create())).addService("authorizator", ({ accessEvaluator }) => new Authorizator.Default(accessEvaluator)).addService("userMailer", ({ mailer, templateRenderer }) => new UserMailer(mailer, templateRenderer)).addService("apiKeyService", () => new ApiKeyService()).addService("apiKeyManager", ({ apiKeyService }) => new ApiKeyManager(apiKeyService)).addService("emailValidator", () => new EmailValidator()).addService("signUpManager", ({ emailValidator }) => new SignUpManager(emailValidator)).addService("passwordChangeManager", ({ providers }) => new PasswordChangeManager(providers)).addService("projectMemberManager", () => new ProjectMemberManager()).addService("identityFactory", ({ projectMemberManager }) => new IdentityFactory(projectMemberManager)).addService("projectScopeFactory", () => new ProjectScopeFactory(new AclSchemaAccessNodeFactory())).addService("permissionContextFactory", ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) => new PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver)).addService("secretManager", ({ providers }) => new SecretsManager(providers)).addService("projectManager", ({ secretManager, apiKeyService }) => new ProjectManager(secretManager, args.projectInitializer, apiKeyService)).addService("personAccessManager", ({ apiKeyManager }) => new PersonAccessManager(apiKeyManager)).addService("personManager", ({ emailValidator }) => new PersonManager(emailValidator)).addService("passwordResetManager", ({ userMailer, projectManager }) => new PasswordResetManager(userMailer, projectManager)).addService("idpRegistry", () => {
|
|
110
|
+
return new Builder({}).addService("providers", () => ({ ...this.providers, ...args.cryptoProviders })).addService("mailer", () => createMailer(args.mailOptions)).addService("projectSchemaResolver", () => args.projectSchemaResolver).addService("templateRenderer", () => new TemplateRenderer()).addService("accessEvaluator", ({}) => new AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create())).addService("authorizator", ({ accessEvaluator }) => new Authorizator.Default(accessEvaluator)).addService("userMailer", ({ mailer, templateRenderer }) => new UserMailer(mailer, templateRenderer)).addService("apiKeyService", () => new ApiKeyService()).addService("apiKeyManager", ({ apiKeyService }) => new ApiKeyManager(apiKeyService)).addService("emailValidator", () => new EmailValidator()).addService("passwordStrengthValidator", () => new PasswordStrengthValidator()).addService("signUpManager", ({ emailValidator, passwordStrengthValidator }) => new SignUpManager(emailValidator, passwordStrengthValidator)).addService("passwordChangeManager", ({ providers, passwordStrengthValidator }) => new PasswordChangeManager(providers, passwordStrengthValidator)).addService("projectMemberManager", () => new ProjectMemberManager()).addService("identityFactory", ({ projectMemberManager }) => new IdentityFactory(projectMemberManager)).addService("projectScopeFactory", () => new ProjectScopeFactory(new AclSchemaAccessNodeFactory())).addService("permissionContextFactory", ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) => new PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver)).addService("secretManager", ({ providers }) => new SecretsManager(providers)).addService("projectManager", ({ secretManager, apiKeyService }) => new ProjectManager(secretManager, args.projectInitializer, apiKeyService)).addService("personAccessManager", ({ apiKeyManager }) => new PersonAccessManager(apiKeyManager)).addService("personManager", ({ emailValidator }) => new PersonManager(emailValidator)).addService("passwordResetManager", ({ userMailer, projectManager, passwordStrengthValidator }) => new PasswordResetManager(userMailer, projectManager, passwordStrengthValidator)).addService("idpRegistry", () => {
|
|
109
111
|
const idpRegistry = new IDPHandlerRegistry();
|
|
110
112
|
idpRegistry.registerHandler("oidc", new OIDCProvider());
|
|
111
113
|
idpRegistry.registerHandler("facebook", new FacebookProvider());
|
|
112
114
|
idpRegistry.registerHandler("apple", new AppleProvider());
|
|
113
115
|
return idpRegistry;
|
|
114
|
-
}).addService("idpSignInManager", ({ apiKeyManager, idpRegistry }) => new IDPSignInManager(apiKeyManager, idpRegistry)).addService("idpManager", ({ idpRegistry }) => new IDPManager(idpRegistry)).addService("otpAuthenticator", ({ providers }) => new OtpAuthenticator(providers)).addService("signInManager", ({ apiKeyManager, providers, otpAuthenticator }) => new SignInManager(apiKeyManager, providers, otpAuthenticator)).addService("membershipValidator", ({ projectSchemaResolver }) => new MembershipValidator(projectSchemaResolver)).addService("inviteManager", ({ providers, userMailer, projectSchemaResolver }) => new InviteManager(providers, userMailer, projectSchemaResolver)).addService("otpManager", ({ otpAuthenticator }) => new OtpManager(otpAuthenticator)).addService("mailTemplateManager", () => new MailTemplateManager()).addService("rolesManager", () => new RolesManager()).addService("configurationManager", () => new ConfigurationManager()).addService("passwordlessSignInManager", ({ apiKeyManager,
|
|
116
|
+
}).addService("idpSignInManager", ({ apiKeyManager, idpRegistry }) => new IDPSignInManager(apiKeyManager, idpRegistry)).addService("idpManager", ({ idpRegistry }) => new IDPManager(idpRegistry)).addService("otpAuthenticator", ({ providers }) => new OtpAuthenticator(providers)).addService("signInManager", ({ apiKeyManager, providers, otpAuthenticator }) => new SignInManager(apiKeyManager, providers, otpAuthenticator)).addService("membershipValidator", ({ projectSchemaResolver }) => new MembershipValidator(projectSchemaResolver)).addService("inviteManager", ({ providers, userMailer, projectSchemaResolver }) => new InviteManager(providers, userMailer, projectSchemaResolver)).addService("otpManager", ({ otpAuthenticator }) => new OtpManager(otpAuthenticator)).addService("mailTemplateManager", () => new MailTemplateManager()).addService("rolesManager", () => new RolesManager()).addService("configurationManager", () => new ConfigurationManager()).addService("passwordlessSignInManager", ({ apiKeyManager, userMailer, projectManager, otpAuthenticator }) => new PasswordlessSignInManager(apiKeyManager, userMailer, projectManager, otpAuthenticator)).addService("identityTypeResolver", ({ projectMemberManager, projectManager, permissionContextFactory }) => new IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory)).addService("projectTypeResolver", ({ projectMemberManager, projectSchemaResolver }) => new ProjectTypeResolver(projectMemberManager, projectSchemaResolver)).addService("signInResponseFactory", ({ permissionContextFactory, identityTypeResolver }) => new SignInResponseFactory(permissionContextFactory, identityTypeResolver)).addService("meQueryResolver", () => new MeQueryResolver()).addService("personQueryResolver", ({ personManager }) => new PersonQueryResolver(personManager)).addService("idpQueryResolver", ({ idpManager }) => new IDPQueryResolver(idpManager)).addService("projectQueryResolver", ({ projectManager }) => new ProjectQueryResolver(projectManager)).addService("projectMembersQueryResolver", ({ projectManager, projectMemberManager }) => new ProjectMembersQueryResolver(projectManager, projectMemberManager)).addService("mailTemplateQueryResolver", () => new MailTemplateQueryResolver()).addService("signUpMutationResolver", ({ signUpManager, apiKeyManager }) => new SignUpMutationResolver(signUpManager, apiKeyManager)).addService("signInMutationResolver", ({ signInManager, signInResponseFactory }) => new SignInMutationResolver(signInManager, signInResponseFactory)).addService("signOutMutationResolver", ({ apiKeyManager }) => new SignOutMutationResolver(apiKeyManager)).addService("changeProfileMutationResolver", ({ personManager }) => new ChangeProfileMutationResolver(personManager)).addService("changePasswordMutationResolver", ({ passwordChangeManager }) => new ChangePasswordMutationResolver(passwordChangeManager)).addService("resetPasswordMutationResolver", ({ passwordResetManager, permissionContextFactory }) => new ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory)).addService("inviteMutationResolver", ({ inviteManager, projectManager, membershipValidator }) => new InviteMutationResolver(inviteManager, projectManager, membershipValidator)).addService("addProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("updateProjectMemberMutationResolver", ({ projectMemberManager, projectManager, membershipValidator }) => new UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator)).addService("removeProjectMemberMutationResolver", ({ projectMemberManager, projectManager }) => new RemoveProjectMemberMutationResolver(projectMemberManager, projectManager)).addService("createApiKeyMutationResolver", ({ apiKeyManager, projectManager, membershipValidator }) => new CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator)).addService("disableApiKeyMutationResolver", ({ apiKeyManager }) => new DisableApiKeyMutationResolver(apiKeyManager)).addService("otpMutationResolver", ({ otpManager }) => new OtpMutationResolver(otpManager)).addService("mailTemplateMutationResolver", ({ projectManager, mailTemplateManager }) => new MailTemplateMutationResolver(projectManager, mailTemplateManager)).addService("idpMutationResolver", ({ idpSignInManager, signInResponseFactory }) => new IDPMutationResolver(idpSignInManager, signInResponseFactory)).addService("registerIdpMutationResolver", ({ idpManager }) => new AddIDPMutationResolver(idpManager)).addService("updateIdpMutationResolver", ({ idpManager }) => new UpdateIDPMutationResolver(idpManager)).addService("disableIdpMutationResolver", ({ idpManager }) => new DisableIDPMutationResolver(idpManager)).addService("enableIdpMutationResolver", ({ idpManager }) => new EnableIDPMutationResolver(idpManager)).addService("createProjectMutationResolver", ({ projectManager }) => new CreateProjectMutationResolver(projectManager)).addService("disablePersonMutationResolver", ({ personAccessManager, personManager }) => new DisablePersonMutationResolver(personAccessManager, personManager)).addService("updateProjectMutationResolver", ({ projectManager }) => new UpdateProjectMutationResolver(projectManager)).addService("setProjectSecretMutationResolver", ({ projectManager, secretManager }) => new SetProjectSecretMutationResolver(projectManager, secretManager)).addService("identityGlobalRolesMutationResolver", ({ rolesManager }) => new IdentityGlobalRolesMutationResolver(rolesManager)).addService("configurationMutationResolver", ({ configurationManager }) => new ConfigurationMutationResolver(configurationManager)).addService("configurationQueryResolver", ({ configurationManager }) => new ConfigurationQueryResolver(configurationManager)).addService("passwordlessMutationResolver", ({ passwordlessSignInManager, signInResponseFactory }) => new PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory)).addService("togglePasswordlessMutationResolver", ({ configurationManager, personManager }) => new TogglePasswordlessMutationResolver(configurationManager, personManager)).addService("authLogService", () => new AuthLogService()).addService("resolverContextFactory", ({ permissionContextFactory, authLogService }) => new TenantResolverContextFactory(permissionContextFactory, authLogService)).addService("resolvers", (container) => new ResolverFactory(container).create()).addService("connection", () => args.connection).addService("readConnection", () => args.readConnection).addService("databaseContext", ({ connection, providers }) => new DatabaseContext(connection.createClient("tenant", { module: "tenant" }), providers)).addService("readDatabaseContext", ({ readConnection, providers }) => new DatabaseContext(readConnection.createClient("tenant", { module: "tenant" }), providers)).addService("identityFetcher", ({ databaseContext }) => new IdentityFetcher(databaseContext.client)).addService("migrationsRunner", ({ providers }) => new TenantMigrationsRunner(args.dbCredentials, "tenant", args.tenantCredentials, providers));
|
|
115
117
|
}
|
|
116
118
|
}
|
|
117
119
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TenantContainer.js","sources":["../../../../packages/engine-tenant-api/src/TenantContainer.ts"],"sourcesContent":["import { AccessEvaluator, Authorizator } from '@contember/authorization'\nimport { Connection, DatabaseConfig } from '@contember/database'\nimport { Builder } from '@contember/dic'\nimport {\n\tAclSchemaAccessNodeFactory,\n\tApiKeyManager,\n\tApiKeyService,\n\tAppleProvider,\n\tDatabaseContext,\n\tEmailValidator,\n\tFacebookProvider,\n\tIdentity,\n\tIdentityFactory,\n\tIDPHandlerRegistry,\n\tIDPManager,\n\tIDPSignInManager,\n\tInviteManager,\n\tMailTemplateManager,\n\tMembershipValidator,\n\tOIDCProvider,\n\tOtpAuthenticator,\n\tOtpManager,\n\tPasswordChangeManager,\n\tPasswordResetManager,\n\tPermissionContextFactory,\n\tPermissionsFactory,\n\tPersonAccessManager,\n\tPersonManager,\n\tProjectInitializer,\n\tProjectManager,\n\tProjectMemberManager,\n\tProjectSchemaResolver,\n\tProjectScopeFactory,\n\tProviders,\n\tRolesManager,\n\tSecretsManager,\n\tSignInManager,\n\tSignUpManager,\n\tUserMailer,\n} from './model'\nimport {\n\tAddIDPMutationResolver,\n\tAddProjectMemberMutationResolver,\n\tChangePasswordMutationResolver,\n\tChangeProfileMutationResolver,\n\tCreateApiKeyMutationResolver,\n\tCreateProjectMutationResolver,\n\tDisableApiKeyMutationResolver,\n\tDisableIDPMutationResolver,\n\tEnableIDPMutationResolver,\n\tIdentityGlobalRolesMutationResolver,\n\tIdentityTypeResolver,\n\tIDPMutationResolver,\n\tInviteMutationResolver,\n\tMailTemplateMutationResolver,\n\tMeQueryResolver,\n\tOtpMutationResolver,\n\tPersonQueryResolver,\n\tProjectMembersQueryResolver,\n\tProjectQueryResolver,\n\tProjectTypeResolver,\n\tRemoveProjectMemberMutationResolver,\n\tResetPasswordMutationResolver,\n\tResolverFactory,\n\tSetProjectSecretMutationResolver,\n\tSignInMutationResolver,\n\tSignOutMutationResolver,\n\tSignUpMutationResolver,\n\tTenantResolverContextFactory,\n\tUpdateProjectMemberMutationResolver,\n\tUpdateProjectMutationResolver,\n} from './resolvers'\nimport * as Schema from './schema'\nimport { createMailer, MailerOptions, TemplateRenderer } from './utils'\nimport { IdentityFetcher } from './bridges/system/IdentityFetcher'\nimport { SignInResponseFactory } from './resolvers/responseHelpers/SignInResponseFactory'\nimport { IDPQueryResolver } from './resolvers/query/IDPQueryResolver'\nimport { UpdateIDPMutationResolver } from './resolvers/mutation/idp/UpdateIDPMutationResolver'\nimport { TenantCredentials, TenantMigrationsRunner } from './migrations'\nimport { DisablePersonMutationResolver } from './resolvers/mutation/person/DisablePersonMutationResolver'\nimport { MailTemplateQueryResolver } from './resolvers/query/MailTemplateQueryResolver'\nimport { ConfigurationManager } from './model/service/ConfigurationManager'\nimport { ConfigurationMutationResolver } from './resolvers/mutation/configuration/ConfigurationMutationResolver'\nimport { ConfigurationQueryResolver } from './resolvers/query/ConfigurationQueryResolver'\nimport { PasswordlessMutationResolver } from './resolvers/mutation/person/PasswordlessMutationResolver'\nimport { PasswordlessSignInManager } from './model/service/PasswordlessSignInManager'\nimport { TogglePasswordlessMutationResolver } from './resolvers/mutation/person/TogglePasswordlessMutationResolver'\n\nexport interface TenantContainer {\n\tprojectMemberManager: ProjectMemberManager\n\tapiKeyManager: ApiKeyManager\n\tsignUpManager: SignUpManager\n\tprojectManager: ProjectManager\n\tresolvers: Schema.Resolvers\n\tresolverContextFactory: TenantResolverContextFactory\n\tauthorizator: Authorizator<Identity>\n\tidentityFetcher: IdentityFetcher\n\tdatabaseContext: DatabaseContext\n\treadDatabaseContext: DatabaseContext\n\tmigrationsRunner: TenantMigrationsRunner\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n}\n\nexport interface TenantContainerArgs {\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n\tdbCredentials: DatabaseConfig\n\tmailOptions: MailerOptions\n\tprojectSchemaResolver: ProjectSchemaResolver\n\tprojectInitializer: ProjectInitializer\n\ttenantCredentials: TenantCredentials\n\tcryptoProviders: Pick<Providers, 'encrypt' | 'decrypt'>\n}\n\nexport class TenantContainerFactory {\n\tconstructor(\n\t\tprivate readonly providers: Omit<Providers, 'encrypt' | 'decrypt'>,\n\t) { }\n\n\tcreate(args: TenantContainerArgs): TenantContainer {\n\t\treturn this.createBuilder(args)\n\t\t\t.build()\n\t\t\t.pick(\n\t\t\t\t'apiKeyManager',\n\t\t\t\t'projectMemberManager',\n\t\t\t\t'projectManager',\n\t\t\t\t'signUpManager',\n\t\t\t\t'resolvers',\n\t\t\t\t'authorizator',\n\t\t\t\t'resolverContextFactory',\n\t\t\t\t'identityFetcher',\n\t\t\t\t'databaseContext',\n\t\t\t\t'readDatabaseContext',\n\t\t\t\t'migrationsRunner',\n\t\t\t\t'connection',\n\t\t\t\t'readConnection',\n\t\t\t)\n\t}\n\n\tcreateBuilder(args: TenantContainerArgs) {\n\t\treturn new Builder({})\n\t\t\t.addService('providers', () =>\n\t\t\t\t({ ...this.providers, ...args.cryptoProviders }))\n\t\t\t.addService('mailer', () =>\n\t\t\t\tcreateMailer(args.mailOptions))\n\t\t\t.addService('projectSchemaResolver', () =>\n\t\t\t\targs.projectSchemaResolver)\n\t\t\t.addService('templateRenderer', () =>\n\t\t\t\tnew TemplateRenderer())\n\t\t\t.addService('accessEvaluator', ({ }) =>\n\t\t\t\tnew AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create()))\n\t\t\t.addService('authorizator', ({ accessEvaluator }) =>\n\t\t\t\tnew Authorizator.Default(accessEvaluator))\n\t\t\t.addService('userMailer', ({ mailer, templateRenderer }) =>\n\t\t\t\tnew UserMailer(mailer, templateRenderer))\n\t\t\t.addService('apiKeyService', () =>\n\t\t\t\tnew ApiKeyService())\n\t\t\t.addService('apiKeyManager', ({ apiKeyService }) =>\n\t\t\t\tnew ApiKeyManager(apiKeyService))\n\t\t\t.addService('emailValidator', () =>\n\t\t\t\tnew EmailValidator())\n\t\t\t.addService('signUpManager', ({ emailValidator }) =>\n\t\t\t\tnew SignUpManager(emailValidator))\n\t\t\t.addService('passwordChangeManager', ({ providers }) =>\n\t\t\t\tnew PasswordChangeManager(providers))\n\t\t\t.addService('projectMemberManager', () =>\n\t\t\t\tnew ProjectMemberManager())\n\t\t\t.addService('identityFactory', ({ projectMemberManager }) =>\n\t\t\t\tnew IdentityFactory(projectMemberManager))\n\t\t\t.addService('projectScopeFactory', () =>\n\t\t\t\tnew ProjectScopeFactory(new AclSchemaAccessNodeFactory()))\n\t\t\t.addService('permissionContextFactory', ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) =>\n\t\t\t\tnew PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver))\n\t\t\t.addService('secretManager', ({ providers }) =>\n\t\t\t\tnew SecretsManager(providers))\n\t\t\t.addService('projectManager', ({ secretManager, apiKeyService }) =>\n\t\t\t\tnew ProjectManager(secretManager, args.projectInitializer, apiKeyService))\n\t\t\t.addService('personAccessManager', ({ apiKeyManager }) =>\n\t\t\t\tnew PersonAccessManager(apiKeyManager))\n\t\t\t.addService('personManager', ({ emailValidator }) =>\n\t\t\t\tnew PersonManager(emailValidator))\n\t\t\t.addService('passwordResetManager', ({ userMailer, projectManager }) =>\n\t\t\t\tnew PasswordResetManager(userMailer, projectManager))\n\t\t\t.addService('idpRegistry', () => {\n\t\t\t\tconst idpRegistry = new IDPHandlerRegistry()\n\t\t\t\tidpRegistry.registerHandler('oidc', new OIDCProvider())\n\t\t\t\tidpRegistry.registerHandler('facebook', new FacebookProvider())\n\t\t\t\tidpRegistry.registerHandler('apple', new AppleProvider())\n\t\t\t\treturn idpRegistry\n\t\t\t})\n\t\t\t.addService('idpSignInManager', ({ apiKeyManager, idpRegistry }) =>\n\t\t\t\tnew IDPSignInManager(apiKeyManager, idpRegistry))\n\t\t\t.addService('idpManager', ({ idpRegistry }) =>\n\t\t\t\tnew IDPManager(idpRegistry))\n\t\t\t.addService('otpAuthenticator', ({ providers }) =>\n\t\t\t\tnew OtpAuthenticator(providers))\n\t\t\t.addService('signInManager', ({ apiKeyManager, providers, otpAuthenticator }) =>\n\t\t\t\tnew SignInManager(apiKeyManager, providers, otpAuthenticator))\n\t\t\t.addService('membershipValidator', ({ projectSchemaResolver }) =>\n\t\t\t\tnew MembershipValidator(projectSchemaResolver))\n\t\t\t.addService('inviteManager', ({ providers, userMailer, projectSchemaResolver }) =>\n\t\t\t\tnew InviteManager(providers, userMailer, projectSchemaResolver))\n\t\t\t.addService('otpManager', ({ otpAuthenticator }) =>\n\t\t\t\tnew OtpManager(otpAuthenticator))\n\t\t\t.addService('mailTemplateManager', () =>\n\t\t\t\tnew MailTemplateManager())\n\t\t\t.addService('rolesManager', () =>\n\t\t\t\tnew RolesManager())\n\t\t\t.addService('configurationManager', () =>\n\t\t\t\tnew ConfigurationManager())\n\t\t\t.addService('passwordlessSignInManager', ({ apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator }) =>\n\t\t\t\tnew PasswordlessSignInManager(apiKeyManager, configurationManager, userMailer, projectManager, otpAuthenticator))\n\n\t\t\t.addService('identityTypeResolver', ({ projectMemberManager, projectManager, permissionContextFactory }) =>\n\t\t\t\tnew IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory))\n\t\t\t.addService('projectTypeResolver', ({ projectMemberManager, projectSchemaResolver }) =>\n\t\t\t\tnew ProjectTypeResolver(projectMemberManager, projectSchemaResolver))\n\t\t\t.addService('signInResponseFactory', ({ permissionContextFactory, identityTypeResolver }) =>\n\t\t\t\tnew SignInResponseFactory(permissionContextFactory, identityTypeResolver))\n\t\t\t.addService('meQueryResolver', () =>\n\t\t\t\tnew MeQueryResolver())\n\t\t\t.addService('personQueryResolver', ({ personManager }) =>\n\t\t\t\tnew PersonQueryResolver(personManager))\n\t\t\t.addService('idpQueryResolver', ({ idpManager }) =>\n\t\t\t\tnew IDPQueryResolver(idpManager))\n\t\t\t.addService('projectQueryResolver', ({ projectManager }) =>\n\t\t\t\tnew ProjectQueryResolver(projectManager))\n\t\t\t.addService('projectMembersQueryResolver', ({ projectManager, projectMemberManager }) =>\n\t\t\t\tnew ProjectMembersQueryResolver(projectManager, projectMemberManager))\n\t\t\t.addService('mailTemplateQueryResolver', () =>\n\t\t\t\tnew MailTemplateQueryResolver())\n\t\t\t.addService('signUpMutationResolver', ({ signUpManager, apiKeyManager }) =>\n\t\t\t\tnew SignUpMutationResolver(signUpManager, apiKeyManager))\n\t\t\t.addService('signInMutationResolver', ({ signInManager, signInResponseFactory }) =>\n\t\t\t\tnew SignInMutationResolver(signInManager, signInResponseFactory))\n\t\t\t.addService('signOutMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew SignOutMutationResolver(apiKeyManager))\n\t\t\t.addService('changeProfileMutationResolver', ({ personManager }) =>\n\t\t\t\tnew ChangeProfileMutationResolver(personManager))\n\t\t\t.addService('changePasswordMutationResolver', ({ passwordChangeManager }) =>\n\t\t\t\tnew ChangePasswordMutationResolver(passwordChangeManager))\n\t\t\t.addService('resetPasswordMutationResolver', ({ passwordResetManager, permissionContextFactory }) =>\n\t\t\t\tnew ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory))\n\t\t\t.addService('inviteMutationResolver', ({ inviteManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew InviteMutationResolver(inviteManager, projectManager, membershipValidator))\n\t\t\t.addService('addProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('updateProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('removeProjectMemberMutationResolver', ({ projectMemberManager, projectManager }) =>\n\t\t\t\tnew RemoveProjectMemberMutationResolver(projectMemberManager, projectManager))\n\t\t\t.addService('createApiKeyMutationResolver', ({ apiKeyManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator))\n\t\t\t.addService('disableApiKeyMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew DisableApiKeyMutationResolver(apiKeyManager))\n\t\t\t.addService('otpMutationResolver', ({ otpManager }) =>\n\t\t\t\tnew OtpMutationResolver(otpManager))\n\t\t\t.addService('mailTemplateMutationResolver', ({ projectManager, mailTemplateManager }) =>\n\t\t\t\tnew MailTemplateMutationResolver(projectManager, mailTemplateManager))\n\t\t\t.addService('idpMutationResolver', ({ idpSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew IDPMutationResolver(idpSignInManager, signInResponseFactory))\n\t\t\t.addService('registerIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew AddIDPMutationResolver(idpManager))\n\t\t\t.addService('updateIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew UpdateIDPMutationResolver(idpManager))\n\t\t\t.addService('disableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew DisableIDPMutationResolver(idpManager))\n\t\t\t.addService('enableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew EnableIDPMutationResolver(idpManager))\n\t\t\t.addService('createProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew CreateProjectMutationResolver(projectManager))\n\t\t\t.addService('disablePersonMutationResolver', ({ personAccessManager, personManager }) =>\n\t\t\t\tnew DisablePersonMutationResolver(personAccessManager, personManager))\n\t\t\t.addService('updateProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew UpdateProjectMutationResolver(projectManager))\n\t\t\t.addService('setProjectSecretMutationResolver', ({ projectManager, secretManager }) =>\n\t\t\t\tnew SetProjectSecretMutationResolver(projectManager, secretManager))\n\t\t\t.addService('identityGlobalRolesMutationResolver', ({ rolesManager }) =>\n\t\t\t\tnew IdentityGlobalRolesMutationResolver(rolesManager))\n\t\t\t.addService('configurationMutationResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationMutationResolver(configurationManager))\n\t\t\t.addService('configurationQueryResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationQueryResolver(configurationManager))\n\t\t\t.addService('passwordlessMutationResolver', ({ passwordlessSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory))\n\t\t\t.addService('togglePasswordlessMutationResolver', ({ configurationManager, personManager }) =>\n\t\t\t\tnew TogglePasswordlessMutationResolver(configurationManager, personManager))\n\t\t\t.addService('resolverContextFactory', ({ permissionContextFactory }) =>\n\t\t\t\tnew TenantResolverContextFactory(permissionContextFactory))\n\t\t\t.addService('resolvers', container =>\n\t\t\t\tnew ResolverFactory(container).create())\n\t\t\t.addService('connection', () =>\n\t\t\t\targs.connection)\n\t\t\t.addService('readConnection', () =>\n\t\t\t\targs.readConnection)\n\t\t\t.addService('databaseContext', ({ connection, providers }) =>\n\t\t\t\tnew DatabaseContext(connection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('readDatabaseContext', ({ readConnection, providers }) =>\n\t\t\t\tnew DatabaseContext(readConnection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('identityFetcher', ({ databaseContext }) =>\n\t\t\t\tnew IdentityFetcher(databaseContext.client))\n\t\t\t.addService('migrationsRunner', ({ providers }) =>\n\t\t\t\tnew TenantMigrationsRunner(args.dbCredentials, 'tenant', args.tenantCredentials, providers))\n\t}\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TenantContainer.js","sources":["../../../../packages/engine-tenant-api/src/TenantContainer.ts"],"sourcesContent":["import { AccessEvaluator, Authorizator } from '@contember/authorization'\nimport { Connection, DatabaseConfig } from '@contember/database'\nimport { Builder } from '@contember/dic'\nimport {\n\tAclSchemaAccessNodeFactory,\n\tApiKeyManager,\n\tApiKeyService,\n\tAppleProvider,\n\tDatabaseContext,\n\tEmailValidator,\n\tFacebookProvider,\n\tIdentity,\n\tIdentityFactory,\n\tIDPHandlerRegistry,\n\tIDPManager,\n\tIDPSignInManager,\n\tInviteManager,\n\tMailTemplateManager,\n\tMembershipValidator,\n\tOIDCProvider,\n\tOtpAuthenticator,\n\tOtpManager,\n\tPasswordChangeManager,\n\tPasswordResetManager,\n\tPermissionContextFactory,\n\tPermissionsFactory,\n\tPersonAccessManager,\n\tPersonManager,\n\tProjectInitializer,\n\tProjectManager,\n\tProjectMemberManager,\n\tProjectSchemaResolver,\n\tProjectScopeFactory,\n\tProviders,\n\tRolesManager,\n\tSecretsManager,\n\tSignInManager,\n\tSignUpManager,\n\tUserMailer,\n} from './model'\nimport {\n\tAddIDPMutationResolver,\n\tAddProjectMemberMutationResolver,\n\tChangePasswordMutationResolver,\n\tChangeProfileMutationResolver,\n\tCreateApiKeyMutationResolver,\n\tCreateProjectMutationResolver,\n\tDisableApiKeyMutationResolver,\n\tDisableIDPMutationResolver,\n\tEnableIDPMutationResolver,\n\tIdentityGlobalRolesMutationResolver,\n\tIdentityTypeResolver,\n\tIDPMutationResolver,\n\tInviteMutationResolver,\n\tMailTemplateMutationResolver,\n\tMeQueryResolver,\n\tOtpMutationResolver,\n\tPersonQueryResolver,\n\tProjectMembersQueryResolver,\n\tProjectQueryResolver,\n\tProjectTypeResolver,\n\tRemoveProjectMemberMutationResolver,\n\tResetPasswordMutationResolver,\n\tResolverFactory,\n\tSetProjectSecretMutationResolver,\n\tSignInMutationResolver,\n\tSignOutMutationResolver,\n\tSignUpMutationResolver,\n\tTenantResolverContextFactory,\n\tUpdateProjectMemberMutationResolver,\n\tUpdateProjectMutationResolver,\n} from './resolvers'\nimport * as Schema from './schema'\nimport { createMailer, MailerOptions, TemplateRenderer } from './utils'\nimport { IdentityFetcher } from './bridges/system/IdentityFetcher'\nimport { SignInResponseFactory } from './resolvers/responseHelpers/SignInResponseFactory'\nimport { IDPQueryResolver } from './resolvers/query/IDPQueryResolver'\nimport { UpdateIDPMutationResolver } from './resolvers/mutation/idp/UpdateIDPMutationResolver'\nimport { TenantCredentials, TenantMigrationsRunner } from './migrations'\nimport { DisablePersonMutationResolver } from './resolvers/mutation/person/DisablePersonMutationResolver'\nimport { MailTemplateQueryResolver } from './resolvers/query/MailTemplateQueryResolver'\nimport { ConfigurationManager } from './model/service/ConfigurationManager'\nimport { ConfigurationMutationResolver } from './resolvers/mutation/configuration/ConfigurationMutationResolver'\nimport { ConfigurationQueryResolver } from './resolvers/query/ConfigurationQueryResolver'\nimport { PasswordlessMutationResolver } from './resolvers/mutation/person/PasswordlessMutationResolver'\nimport { PasswordlessSignInManager } from './model/service/PasswordlessSignInManager'\nimport { TogglePasswordlessMutationResolver } from './resolvers/mutation/person/TogglePasswordlessMutationResolver'\nimport { PasswordStrengthValidator } from './model/service/PasswordStrengthValidator'\nimport { AuthLogService } from './model/service/AuthLogService'\n\nexport interface TenantContainer {\n\tprojectMemberManager: ProjectMemberManager\n\tapiKeyManager: ApiKeyManager\n\tsignUpManager: SignUpManager\n\tprojectManager: ProjectManager\n\tresolvers: Schema.Resolvers\n\tresolverContextFactory: TenantResolverContextFactory\n\tauthorizator: Authorizator<Identity>\n\tidentityFetcher: IdentityFetcher\n\tdatabaseContext: DatabaseContext\n\treadDatabaseContext: DatabaseContext\n\tmigrationsRunner: TenantMigrationsRunner\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n}\n\nexport interface TenantContainerArgs {\n\tconnection: Connection.ConnectionType\n\treadConnection: Connection.ConnectionType\n\tdbCredentials: DatabaseConfig\n\tmailOptions: MailerOptions\n\tprojectSchemaResolver: ProjectSchemaResolver\n\tprojectInitializer: ProjectInitializer\n\ttenantCredentials: TenantCredentials\n\tcryptoProviders: Pick<Providers, 'encrypt' | 'decrypt'>\n}\n\nexport class TenantContainerFactory {\n\tconstructor(\n\t\tprivate readonly providers: Omit<Providers, 'encrypt' | 'decrypt'>,\n\t) { }\n\n\tcreate(args: TenantContainerArgs): TenantContainer {\n\t\treturn this.createBuilder(args)\n\t\t\t.build()\n\t\t\t.pick(\n\t\t\t\t'apiKeyManager',\n\t\t\t\t'projectMemberManager',\n\t\t\t\t'projectManager',\n\t\t\t\t'signUpManager',\n\t\t\t\t'resolvers',\n\t\t\t\t'authorizator',\n\t\t\t\t'resolverContextFactory',\n\t\t\t\t'identityFetcher',\n\t\t\t\t'databaseContext',\n\t\t\t\t'readDatabaseContext',\n\t\t\t\t'migrationsRunner',\n\t\t\t\t'connection',\n\t\t\t\t'readConnection',\n\t\t\t)\n\t}\n\n\tcreateBuilder(args: TenantContainerArgs) {\n\t\treturn new Builder({})\n\t\t\t.addService('providers', () =>\n\t\t\t\t({ ...this.providers, ...args.cryptoProviders }))\n\t\t\t.addService('mailer', () =>\n\t\t\t\tcreateMailer(args.mailOptions))\n\t\t\t.addService('projectSchemaResolver', () =>\n\t\t\t\targs.projectSchemaResolver)\n\t\t\t.addService('templateRenderer', () =>\n\t\t\t\tnew TemplateRenderer())\n\t\t\t.addService('accessEvaluator', ({ }) =>\n\t\t\t\tnew AccessEvaluator.PermissionEvaluator(new PermissionsFactory().create()))\n\t\t\t.addService('authorizator', ({ accessEvaluator }) =>\n\t\t\t\tnew Authorizator.Default(accessEvaluator))\n\t\t\t.addService('userMailer', ({ mailer, templateRenderer }) =>\n\t\t\t\tnew UserMailer(mailer, templateRenderer))\n\t\t\t.addService('apiKeyService', () =>\n\t\t\t\tnew ApiKeyService())\n\t\t\t.addService('apiKeyManager', ({ apiKeyService }) =>\n\t\t\t\tnew ApiKeyManager(apiKeyService))\n\t\t\t.addService('emailValidator', () =>\n\t\t\t\tnew EmailValidator())\n\t\t\t.addService('passwordStrengthValidator', () =>\n\t\t\t\tnew PasswordStrengthValidator())\n\t\t\t.addService('signUpManager', ({ emailValidator, passwordStrengthValidator }) =>\n\t\t\t\tnew SignUpManager(emailValidator, passwordStrengthValidator))\n\t\t\t.addService('passwordChangeManager', ({ providers, passwordStrengthValidator }) =>\n\t\t\t\tnew PasswordChangeManager(providers, passwordStrengthValidator))\n\t\t\t.addService('projectMemberManager', () =>\n\t\t\t\tnew ProjectMemberManager())\n\t\t\t.addService('identityFactory', ({ projectMemberManager }) =>\n\t\t\t\tnew IdentityFactory(projectMemberManager))\n\t\t\t.addService('projectScopeFactory', () =>\n\t\t\t\tnew ProjectScopeFactory(new AclSchemaAccessNodeFactory()))\n\t\t\t.addService('permissionContextFactory', ({ authorizator, identityFactory, projectScopeFactory, projectSchemaResolver }) =>\n\t\t\t\tnew PermissionContextFactory(authorizator, identityFactory, projectScopeFactory, projectSchemaResolver))\n\t\t\t.addService('secretManager', ({ providers }) =>\n\t\t\t\tnew SecretsManager(providers))\n\t\t\t.addService('projectManager', ({ secretManager, apiKeyService }) =>\n\t\t\t\tnew ProjectManager(secretManager, args.projectInitializer, apiKeyService))\n\t\t\t.addService('personAccessManager', ({ apiKeyManager }) =>\n\t\t\t\tnew PersonAccessManager(apiKeyManager))\n\t\t\t.addService('personManager', ({ emailValidator }) =>\n\t\t\t\tnew PersonManager(emailValidator))\n\t\t\t.addService('passwordResetManager', ({ userMailer, projectManager, passwordStrengthValidator }) =>\n\t\t\t\tnew PasswordResetManager(userMailer, projectManager, passwordStrengthValidator))\n\t\t\t.addService('idpRegistry', () => {\n\t\t\t\tconst idpRegistry = new IDPHandlerRegistry()\n\t\t\t\tidpRegistry.registerHandler('oidc', new OIDCProvider())\n\t\t\t\tidpRegistry.registerHandler('facebook', new FacebookProvider())\n\t\t\t\tidpRegistry.registerHandler('apple', new AppleProvider())\n\t\t\t\treturn idpRegistry\n\t\t\t})\n\t\t\t.addService('idpSignInManager', ({ apiKeyManager, idpRegistry }) =>\n\t\t\t\tnew IDPSignInManager(apiKeyManager, idpRegistry))\n\t\t\t.addService('idpManager', ({ idpRegistry }) =>\n\t\t\t\tnew IDPManager(idpRegistry))\n\t\t\t.addService('otpAuthenticator', ({ providers }) =>\n\t\t\t\tnew OtpAuthenticator(providers))\n\t\t\t.addService('signInManager', ({ apiKeyManager, providers, otpAuthenticator }) =>\n\t\t\t\tnew SignInManager(apiKeyManager, providers, otpAuthenticator))\n\t\t\t.addService('membershipValidator', ({ projectSchemaResolver }) =>\n\t\t\t\tnew MembershipValidator(projectSchemaResolver))\n\t\t\t.addService('inviteManager', ({ providers, userMailer, projectSchemaResolver }) =>\n\t\t\t\tnew InviteManager(providers, userMailer, projectSchemaResolver))\n\t\t\t.addService('otpManager', ({ otpAuthenticator }) =>\n\t\t\t\tnew OtpManager(otpAuthenticator))\n\t\t\t.addService('mailTemplateManager', () =>\n\t\t\t\tnew MailTemplateManager())\n\t\t\t.addService('rolesManager', () =>\n\t\t\t\tnew RolesManager())\n\t\t\t.addService('configurationManager', () =>\n\t\t\t\tnew ConfigurationManager())\n\t\t\t.addService('passwordlessSignInManager', ({ apiKeyManager, userMailer, projectManager, otpAuthenticator }) =>\n\t\t\t\tnew PasswordlessSignInManager(apiKeyManager, userMailer, projectManager, otpAuthenticator))\n\n\t\t\t.addService('identityTypeResolver', ({ projectMemberManager, projectManager, permissionContextFactory }) =>\n\t\t\t\tnew IdentityTypeResolver(projectMemberManager, projectManager, permissionContextFactory))\n\t\t\t.addService('projectTypeResolver', ({ projectMemberManager, projectSchemaResolver }) =>\n\t\t\t\tnew ProjectTypeResolver(projectMemberManager, projectSchemaResolver))\n\t\t\t.addService('signInResponseFactory', ({ permissionContextFactory, identityTypeResolver }) =>\n\t\t\t\tnew SignInResponseFactory(permissionContextFactory, identityTypeResolver))\n\t\t\t.addService('meQueryResolver', () =>\n\t\t\t\tnew MeQueryResolver())\n\t\t\t.addService('personQueryResolver', ({ personManager }) =>\n\t\t\t\tnew PersonQueryResolver(personManager))\n\t\t\t.addService('idpQueryResolver', ({ idpManager }) =>\n\t\t\t\tnew IDPQueryResolver(idpManager))\n\t\t\t.addService('projectQueryResolver', ({ projectManager }) =>\n\t\t\t\tnew ProjectQueryResolver(projectManager))\n\t\t\t.addService('projectMembersQueryResolver', ({ projectManager, projectMemberManager }) =>\n\t\t\t\tnew ProjectMembersQueryResolver(projectManager, projectMemberManager))\n\t\t\t.addService('mailTemplateQueryResolver', () =>\n\t\t\t\tnew MailTemplateQueryResolver())\n\t\t\t.addService('signUpMutationResolver', ({ signUpManager, apiKeyManager }) =>\n\t\t\t\tnew SignUpMutationResolver(signUpManager, apiKeyManager))\n\t\t\t.addService('signInMutationResolver', ({ signInManager, signInResponseFactory }) =>\n\t\t\t\tnew SignInMutationResolver(signInManager, signInResponseFactory))\n\t\t\t.addService('signOutMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew SignOutMutationResolver(apiKeyManager))\n\t\t\t.addService('changeProfileMutationResolver', ({ personManager }) =>\n\t\t\t\tnew ChangeProfileMutationResolver(personManager))\n\t\t\t.addService('changePasswordMutationResolver', ({ passwordChangeManager }) =>\n\t\t\t\tnew ChangePasswordMutationResolver(passwordChangeManager))\n\t\t\t.addService('resetPasswordMutationResolver', ({ passwordResetManager, permissionContextFactory }) =>\n\t\t\t\tnew ResetPasswordMutationResolver(passwordResetManager, permissionContextFactory))\n\t\t\t.addService('inviteMutationResolver', ({ inviteManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew InviteMutationResolver(inviteManager, projectManager, membershipValidator))\n\t\t\t.addService('addProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew AddProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('updateProjectMemberMutationResolver', ({ projectMemberManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew UpdateProjectMemberMutationResolver(projectMemberManager, projectManager, membershipValidator))\n\t\t\t.addService('removeProjectMemberMutationResolver', ({ projectMemberManager, projectManager }) =>\n\t\t\t\tnew RemoveProjectMemberMutationResolver(projectMemberManager, projectManager))\n\t\t\t.addService('createApiKeyMutationResolver', ({ apiKeyManager, projectManager, membershipValidator }) =>\n\t\t\t\tnew CreateApiKeyMutationResolver(apiKeyManager, projectManager, membershipValidator))\n\t\t\t.addService('disableApiKeyMutationResolver', ({ apiKeyManager }) =>\n\t\t\t\tnew DisableApiKeyMutationResolver(apiKeyManager))\n\t\t\t.addService('otpMutationResolver', ({ otpManager }) =>\n\t\t\t\tnew OtpMutationResolver(otpManager))\n\t\t\t.addService('mailTemplateMutationResolver', ({ projectManager, mailTemplateManager }) =>\n\t\t\t\tnew MailTemplateMutationResolver(projectManager, mailTemplateManager))\n\t\t\t.addService('idpMutationResolver', ({ idpSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew IDPMutationResolver(idpSignInManager, signInResponseFactory))\n\t\t\t.addService('registerIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew AddIDPMutationResolver(idpManager))\n\t\t\t.addService('updateIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew UpdateIDPMutationResolver(idpManager))\n\t\t\t.addService('disableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew DisableIDPMutationResolver(idpManager))\n\t\t\t.addService('enableIdpMutationResolver', ({ idpManager }) =>\n\t\t\t\tnew EnableIDPMutationResolver(idpManager))\n\t\t\t.addService('createProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew CreateProjectMutationResolver(projectManager))\n\t\t\t.addService('disablePersonMutationResolver', ({ personAccessManager, personManager }) =>\n\t\t\t\tnew DisablePersonMutationResolver(personAccessManager, personManager))\n\t\t\t.addService('updateProjectMutationResolver', ({ projectManager }) =>\n\t\t\t\tnew UpdateProjectMutationResolver(projectManager))\n\t\t\t.addService('setProjectSecretMutationResolver', ({ projectManager, secretManager }) =>\n\t\t\t\tnew SetProjectSecretMutationResolver(projectManager, secretManager))\n\t\t\t.addService('identityGlobalRolesMutationResolver', ({ rolesManager }) =>\n\t\t\t\tnew IdentityGlobalRolesMutationResolver(rolesManager))\n\t\t\t.addService('configurationMutationResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationMutationResolver(configurationManager))\n\t\t\t.addService('configurationQueryResolver', ({ configurationManager }) =>\n\t\t\t\tnew ConfigurationQueryResolver(configurationManager))\n\t\t\t.addService('passwordlessMutationResolver', ({ passwordlessSignInManager, signInResponseFactory }) =>\n\t\t\t\tnew PasswordlessMutationResolver(passwordlessSignInManager, signInResponseFactory))\n\t\t\t.addService('togglePasswordlessMutationResolver', ({ configurationManager, personManager }) =>\n\t\t\t\tnew TogglePasswordlessMutationResolver(configurationManager, personManager))\n\t\t\t.addService('authLogService', () =>\n\t\t\t\tnew AuthLogService())\n\t\t\t.addService('resolverContextFactory', ({ permissionContextFactory, authLogService }) =>\n\t\t\t\tnew TenantResolverContextFactory(permissionContextFactory, authLogService))\n\t\t\t.addService('resolvers', container =>\n\t\t\t\tnew ResolverFactory(container).create())\n\t\t\t.addService('connection', () =>\n\t\t\t\targs.connection)\n\t\t\t.addService('readConnection', () =>\n\t\t\t\targs.readConnection)\n\t\t\t.addService('databaseContext', ({ connection, providers }) =>\n\t\t\t\tnew DatabaseContext(connection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('readDatabaseContext', ({ readConnection, providers }) =>\n\t\t\t\tnew DatabaseContext(readConnection.createClient('tenant', { module: 'tenant' }), providers))\n\t\t\t.addService('identityFetcher', ({ databaseContext }) =>\n\t\t\t\tnew IdentityFetcher(databaseContext.client))\n\t\t\t.addService('migrationsRunner', ({ providers }) =>\n\t\t\t\tnew TenantMigrationsRunner(args.dbCredentials, 'tenant', args.tenantCredentials, providers))\n\t}\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,7 @@ require("openid-client");
|
|
|
17
17
|
require("@contember/typesafe");
|
|
18
18
|
require("../../model/service/idp/providers/OIDCTypes.cjs");
|
|
19
19
|
require("../../model/service/idp/providers/FacebookProvider.cjs");
|
|
20
|
+
require("../../model/service/AuthLogService.cjs");
|
|
20
21
|
require("@contember/schema-utils");
|
|
21
22
|
require("otpauth");
|
|
22
23
|
var __defProp = Object.defineProperty;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdentityFetcher.cjs","sources":["../../../../../../packages/engine-tenant-api/src/bridges/system/IdentityFetcher.ts"],"sourcesContent":["import { Client } from '@contember/database'\nimport { IdentityQuery, PersonByIdentityBatchQuery } from '../../model'\n\nexport class IdentityFetcher {\n\tconstructor(\n\t\tprivate client: Client,\n\t) {\n\t}\n\n\tpublic async fetchIdentities(ids: string[]): Promise<Identity[]> {\n\t\tconst queryHandler = this.client.createQueryHandler()\n\t\tconst persons = await queryHandler.fetch(new PersonByIdentityBatchQuery(ids))\n\t\tconst personIds = new Set(persons.map(it => it.identity_id))\n\t\tconst otherIdentityIds = ids.filter(it => !personIds.has(it))\n\t\tconst otherIdentities = await queryHandler.fetch(new IdentityQuery(otherIdentityIds))\n\n\t\treturn [\n\t\t\t...persons.map(\n\t\t\t\tit =>\n\t\t\t\t\tnew PersonIdentity(it.identity_id, {\n\t\t\t\t\t\tid: it.id,\n\t\t\t\t\t\tname: it.name ?? 'unnamed',\n\t\t\t\t\t}),\n\t\t\t),\n\t\t\t...otherIdentities.map(it => new ApiKeyIdentity(it.id, it.description)),\n\t\t]\n\t}\n}\n\nexport type Identity = PersonIdentity | ApiKeyIdentity\n\nexport class PersonIdentity {\n\tpublic readonly type = 'person' as const\n\n\tconstructor(\n\t\tpublic readonly identityId: string,\n\t\tpublic readonly person: {\n\t\t\tid: string\n\t\t\tname: string\n\t\t},\n\t) {}\n}\n\nexport class ApiKeyIdentity {\n\tpublic readonly type = 'apiKey' as const\n\n\tconstructor(public readonly identityId: string, public readonly description: string) {}\n}\n"],"names":["PersonByIdentityBatchQuery","IdentityQuery"],"mappings":"
|
|
1
|
+
{"version":3,"file":"IdentityFetcher.cjs","sources":["../../../../../../packages/engine-tenant-api/src/bridges/system/IdentityFetcher.ts"],"sourcesContent":["import { Client } from '@contember/database'\nimport { IdentityQuery, PersonByIdentityBatchQuery } from '../../model'\n\nexport class IdentityFetcher {\n\tconstructor(\n\t\tprivate client: Client,\n\t) {\n\t}\n\n\tpublic async fetchIdentities(ids: string[]): Promise<Identity[]> {\n\t\tconst queryHandler = this.client.createQueryHandler()\n\t\tconst persons = await queryHandler.fetch(new PersonByIdentityBatchQuery(ids))\n\t\tconst personIds = new Set(persons.map(it => it.identity_id))\n\t\tconst otherIdentityIds = ids.filter(it => !personIds.has(it))\n\t\tconst otherIdentities = await queryHandler.fetch(new IdentityQuery(otherIdentityIds))\n\n\t\treturn [\n\t\t\t...persons.map(\n\t\t\t\tit =>\n\t\t\t\t\tnew PersonIdentity(it.identity_id, {\n\t\t\t\t\t\tid: it.id,\n\t\t\t\t\t\tname: it.name ?? 'unnamed',\n\t\t\t\t\t}),\n\t\t\t),\n\t\t\t...otherIdentities.map(it => new ApiKeyIdentity(it.id, it.description)),\n\t\t]\n\t}\n}\n\nexport type Identity = PersonIdentity | ApiKeyIdentity\n\nexport class PersonIdentity {\n\tpublic readonly type = 'person' as const\n\n\tconstructor(\n\t\tpublic readonly identityId: string,\n\t\tpublic readonly person: {\n\t\t\tid: string\n\t\t\tname: string\n\t\t},\n\t) {}\n}\n\nexport class ApiKeyIdentity {\n\tpublic readonly type = 'apiKey' as const\n\n\tconstructor(public readonly identityId: string, public readonly description: string) {}\n}\n"],"names":["PersonByIdentityBatchQuery","IdentityQuery"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAGO,MAAM,gBAAgB;AAAA,EAC5B,YACS,QACP;AADO,SAAA,SAAA;AAAA,EAAA;AAAA,EAIT,MAAa,gBAAgB,KAAoC;AAC1D,UAAA,eAAe,KAAK,OAAO,mBAAmB;AACpD,UAAM,UAAU,MAAM,aAAa,MAAM,IAAIA,2BAAAA,2BAA2B,GAAG,CAAC;AACtE,UAAA,YAAY,IAAI,IAAI,QAAQ,IAAI,CAAM,OAAA,GAAG,WAAW,CAAC;AACrD,UAAA,mBAAmB,IAAI,OAAO,CAAA,OAAM,CAAC,UAAU,IAAI,EAAE,CAAC;AAC5D,UAAM,kBAAkB,MAAM,aAAa,MAAM,IAAIC,cAAAA,cAAc,gBAAgB,CAAC;AAE7E,WAAA;AAAA,MACN,GAAG,QAAQ;AAAA,QACV,CACC,OAAA,IAAI,eAAe,GAAG,aAAa;AAAA,UAClC,IAAI,GAAG;AAAA,UACP,MAAM,GAAG,QAAQ;AAAA,QACjB,CAAA;AAAA,MACH;AAAA,MACA,GAAG,gBAAgB,IAAI,CAAM,OAAA,IAAI,eAAe,GAAG,IAAI,GAAG,WAAW,CAAC;AAAA,IACvE;AAAA,EAAA;AAEF;AAIO,MAAM,eAAe;AAAA,EAG3B,YACiB,YACA,QAIf;AALe,SAAA,aAAA;AACA,SAAA,SAAA;AAJjB,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AASxB;AAEO,MAAM,eAAe;AAAA,EAG3B,YAA4B,YAAoC,aAAqB;AAAzD,SAAA,aAAA;AAAoC,SAAA,cAAA;AAFhE,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AAGxB;;;;"}
|
|
@@ -15,6 +15,7 @@ import "openid-client";
|
|
|
15
15
|
import "@contember/typesafe";
|
|
16
16
|
import "../../model/service/idp/providers/OIDCTypes.js";
|
|
17
17
|
import "../../model/service/idp/providers/FacebookProvider.js";
|
|
18
|
+
import "../../model/service/AuthLogService.js";
|
|
18
19
|
import "@contember/schema-utils";
|
|
19
20
|
import "otpauth";
|
|
20
21
|
var __defProp = Object.defineProperty;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdentityFetcher.js","sources":["../../../../../../packages/engine-tenant-api/src/bridges/system/IdentityFetcher.ts"],"sourcesContent":["import { Client } from '@contember/database'\nimport { IdentityQuery, PersonByIdentityBatchQuery } from '../../model'\n\nexport class IdentityFetcher {\n\tconstructor(\n\t\tprivate client: Client,\n\t) {\n\t}\n\n\tpublic async fetchIdentities(ids: string[]): Promise<Identity[]> {\n\t\tconst queryHandler = this.client.createQueryHandler()\n\t\tconst persons = await queryHandler.fetch(new PersonByIdentityBatchQuery(ids))\n\t\tconst personIds = new Set(persons.map(it => it.identity_id))\n\t\tconst otherIdentityIds = ids.filter(it => !personIds.has(it))\n\t\tconst otherIdentities = await queryHandler.fetch(new IdentityQuery(otherIdentityIds))\n\n\t\treturn [\n\t\t\t...persons.map(\n\t\t\t\tit =>\n\t\t\t\t\tnew PersonIdentity(it.identity_id, {\n\t\t\t\t\t\tid: it.id,\n\t\t\t\t\t\tname: it.name ?? 'unnamed',\n\t\t\t\t\t}),\n\t\t\t),\n\t\t\t...otherIdentities.map(it => new ApiKeyIdentity(it.id, it.description)),\n\t\t]\n\t}\n}\n\nexport type Identity = PersonIdentity | ApiKeyIdentity\n\nexport class PersonIdentity {\n\tpublic readonly type = 'person' as const\n\n\tconstructor(\n\t\tpublic readonly identityId: string,\n\t\tpublic readonly person: {\n\t\t\tid: string\n\t\t\tname: string\n\t\t},\n\t) {}\n}\n\nexport class ApiKeyIdentity {\n\tpublic readonly type = 'apiKey' as const\n\n\tconstructor(public readonly identityId: string, public readonly description: string) {}\n}\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"IdentityFetcher.js","sources":["../../../../../../packages/engine-tenant-api/src/bridges/system/IdentityFetcher.ts"],"sourcesContent":["import { Client } from '@contember/database'\nimport { IdentityQuery, PersonByIdentityBatchQuery } from '../../model'\n\nexport class IdentityFetcher {\n\tconstructor(\n\t\tprivate client: Client,\n\t) {\n\t}\n\n\tpublic async fetchIdentities(ids: string[]): Promise<Identity[]> {\n\t\tconst queryHandler = this.client.createQueryHandler()\n\t\tconst persons = await queryHandler.fetch(new PersonByIdentityBatchQuery(ids))\n\t\tconst personIds = new Set(persons.map(it => it.identity_id))\n\t\tconst otherIdentityIds = ids.filter(it => !personIds.has(it))\n\t\tconst otherIdentities = await queryHandler.fetch(new IdentityQuery(otherIdentityIds))\n\n\t\treturn [\n\t\t\t...persons.map(\n\t\t\t\tit =>\n\t\t\t\t\tnew PersonIdentity(it.identity_id, {\n\t\t\t\t\t\tid: it.id,\n\t\t\t\t\t\tname: it.name ?? 'unnamed',\n\t\t\t\t\t}),\n\t\t\t),\n\t\t\t...otherIdentities.map(it => new ApiKeyIdentity(it.id, it.description)),\n\t\t]\n\t}\n}\n\nexport type Identity = PersonIdentity | ApiKeyIdentity\n\nexport class PersonIdentity {\n\tpublic readonly type = 'person' as const\n\n\tconstructor(\n\t\tpublic readonly identityId: string,\n\t\tpublic readonly person: {\n\t\t\tid: string\n\t\t\tname: string\n\t\t},\n\t) {}\n}\n\nexport class ApiKeyIdentity {\n\tpublic readonly type = 'apiKey' as const\n\n\tconstructor(public readonly identityId: string, public readonly description: string) {}\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAGO,MAAM,gBAAgB;AAAA,EAC5B,YACS,QACP;AADO,SAAA,SAAA;AAAA,EAAA;AAAA,EAIT,MAAa,gBAAgB,KAAoC;AAC1D,UAAA,eAAe,KAAK,OAAO,mBAAmB;AACpD,UAAM,UAAU,MAAM,aAAa,MAAM,IAAI,2BAA2B,GAAG,CAAC;AACtE,UAAA,YAAY,IAAI,IAAI,QAAQ,IAAI,CAAM,OAAA,GAAG,WAAW,CAAC;AACrD,UAAA,mBAAmB,IAAI,OAAO,CAAA,OAAM,CAAC,UAAU,IAAI,EAAE,CAAC;AAC5D,UAAM,kBAAkB,MAAM,aAAa,MAAM,IAAI,cAAc,gBAAgB,CAAC;AAE7E,WAAA;AAAA,MACN,GAAG,QAAQ;AAAA,QACV,CACC,OAAA,IAAI,eAAe,GAAG,aAAa;AAAA,UAClC,IAAI,GAAG;AAAA,UACP,MAAM,GAAG,QAAQ;AAAA,QACjB,CAAA;AAAA,MACH;AAAA,MACA,GAAG,gBAAgB,IAAI,CAAM,OAAA,IAAI,eAAe,GAAG,IAAI,GAAG,WAAW,CAAC;AAAA,IACvE;AAAA,EAAA;AAEF;AAIO,MAAM,eAAe;AAAA,EAG3B,YACiB,YACA,QAIf;AALe,SAAA,aAAA;AACA,SAAA,SAAA;AAJjB,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AASxB;AAEO,MAAM,eAAe;AAAA,EAG3B,YAA4B,YAAoC,aAAqB;AAAzD,SAAA,aAAA;AAAoC,SAAA,cAAA;AAFhE,kBAAA,MAAgB,QAAO,QAAA;AAAA,EAAA;AAGxB;"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const sql = `
|
|
3
|
+
ALTER TABLE "config"
|
|
4
|
+
ADD COLUMN "password_min_length" INTEGER NOT NULL DEFAULT 8,
|
|
5
|
+
ADD COLUMN "password_require_uppercase" INTEGER NOT NULL DEFAULT 1,
|
|
6
|
+
ADD COLUMN "password_require_lowercase" INTEGER NOT NULL DEFAULT 1,
|
|
7
|
+
ADD COLUMN "password_require_digit" INTEGER NOT NULL DEFAULT 1,
|
|
8
|
+
ADD COLUMN "password_require_special" INTEGER NOT NULL DEFAULT 0,
|
|
9
|
+
ADD COLUMN "password_pattern" TEXT DEFAULT NULL,
|
|
10
|
+
ADD COLUMN "password_check_blacklist" BOOLEAN NOT NULL DEFAULT TRUE,
|
|
11
|
+
ADD COLUMN "login_base_backoff" INTERVAL NOT NULL DEFAULT '1 second',
|
|
12
|
+
ADD COLUMN "login_max_backoff" INTERVAL NOT NULL DEFAULT '60 second',
|
|
13
|
+
ADD COLUMN "login_attempt_window" INTERVAL NOT NULL DEFAULT '5 minute',
|
|
14
|
+
ADD COLUMN "login_reveal_user_exits" BOOLEAN NOT NULL DEFAULT TRUE,
|
|
15
|
+
ADD COLUMN "login_default_token_expiration" INTERVAL NOT NULL DEFAULT '30 minute',
|
|
16
|
+
ADD COLUMN "login_max_token_expiration" INTERVAL DEFAULT '6 month';
|
|
17
|
+
ALTER TABLE "config"
|
|
18
|
+
RENAME passwordless_expiration_minutes TO passwordless_expiration;
|
|
19
|
+
|
|
20
|
+
ALTER TABLE "config"
|
|
21
|
+
ALTER COLUMN passwordless_expiration DROP DEFAULT,
|
|
22
|
+
ALTER COLUMN passwordless_expiration TYPE INTERVAL USING passwordless_expiration * INTERVAL '1 minute',
|
|
23
|
+
ALTER COLUMN passwordless_expiration SET DEFAULT INTERVAL '5 minute';
|
|
24
|
+
|
|
25
|
+
-- revert defaults for existing projects
|
|
26
|
+
UPDATE "config"
|
|
27
|
+
SET password_min_length = 6,
|
|
28
|
+
password_require_uppercase = 0,
|
|
29
|
+
password_require_lowercase = 0,
|
|
30
|
+
password_require_digit = 0,
|
|
31
|
+
password_check_blacklist = FALSE,
|
|
32
|
+
login_max_token_expiration = NULL;
|
|
33
|
+
|
|
34
|
+
`;
|
|
35
|
+
async function _20250416180000configup(builder) {
|
|
36
|
+
builder.sql(sql);
|
|
37
|
+
}
|
|
38
|
+
module.exports = _20250416180000configup;
|
|
39
|
+
//# sourceMappingURL=2025-04-16-180000-config-up.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"2025-04-16-180000-config-up.cjs","sources":["../../../../../packages/engine-tenant-api/src/migrations/2025-04-16-180000-config-up.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\n\nconst sql = `\n ALTER TABLE \"config\"\n ADD COLUMN \"password_min_length\" INTEGER NOT NULL DEFAULT 8,\n ADD COLUMN \"password_require_uppercase\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_lowercase\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_digit\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_special\" INTEGER NOT NULL DEFAULT 0,\n ADD COLUMN \"password_pattern\" TEXT DEFAULT NULL,\n ADD COLUMN \"password_check_blacklist\" BOOLEAN NOT NULL DEFAULT TRUE,\n ADD COLUMN \"login_base_backoff\" INTERVAL NOT NULL DEFAULT '1 second',\n ADD COLUMN \"login_max_backoff\" INTERVAL NOT NULL DEFAULT '60 second',\n ADD COLUMN \"login_attempt_window\" INTERVAL NOT NULL DEFAULT '5 minute',\n ADD COLUMN \"login_reveal_user_exits\" BOOLEAN NOT NULL DEFAULT TRUE,\n ADD COLUMN \"login_default_token_expiration\" INTERVAL NOT NULL DEFAULT '30 minute',\n ADD COLUMN \"login_max_token_expiration\" INTERVAL DEFAULT '6 month';\n ALTER TABLE \"config\"\n RENAME passwordless_expiration_minutes TO passwordless_expiration;\n\n ALTER TABLE \"config\"\n ALTER COLUMN passwordless_expiration DROP DEFAULT,\n ALTER COLUMN passwordless_expiration TYPE INTERVAL USING passwordless_expiration * INTERVAL '1 minute',\n ALTER COLUMN passwordless_expiration SET DEFAULT INTERVAL '5 minute';\n\n-- revert defaults for existing projects\n UPDATE \"config\"\n SET password_min_length = 6,\n password_require_uppercase = 0,\n password_require_lowercase = 0,\n password_require_digit = 0,\n password_check_blacklist = FALSE,\n login_max_token_expiration = NULL;\n\n`\n\nexport default async function (builder: MigrationBuilder) {\n\tbuilder.sql(sql)\n}\n"],"names":[],"mappings":";AAEA,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkCZ,eAAA,wBAA+B,SAA2B;AACzD,UAAQ,IAAI,GAAG;AAChB;;"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
const sql = `
|
|
2
|
+
ALTER TABLE "config"
|
|
3
|
+
ADD COLUMN "password_min_length" INTEGER NOT NULL DEFAULT 8,
|
|
4
|
+
ADD COLUMN "password_require_uppercase" INTEGER NOT NULL DEFAULT 1,
|
|
5
|
+
ADD COLUMN "password_require_lowercase" INTEGER NOT NULL DEFAULT 1,
|
|
6
|
+
ADD COLUMN "password_require_digit" INTEGER NOT NULL DEFAULT 1,
|
|
7
|
+
ADD COLUMN "password_require_special" INTEGER NOT NULL DEFAULT 0,
|
|
8
|
+
ADD COLUMN "password_pattern" TEXT DEFAULT NULL,
|
|
9
|
+
ADD COLUMN "password_check_blacklist" BOOLEAN NOT NULL DEFAULT TRUE,
|
|
10
|
+
ADD COLUMN "login_base_backoff" INTERVAL NOT NULL DEFAULT '1 second',
|
|
11
|
+
ADD COLUMN "login_max_backoff" INTERVAL NOT NULL DEFAULT '60 second',
|
|
12
|
+
ADD COLUMN "login_attempt_window" INTERVAL NOT NULL DEFAULT '5 minute',
|
|
13
|
+
ADD COLUMN "login_reveal_user_exits" BOOLEAN NOT NULL DEFAULT TRUE,
|
|
14
|
+
ADD COLUMN "login_default_token_expiration" INTERVAL NOT NULL DEFAULT '30 minute',
|
|
15
|
+
ADD COLUMN "login_max_token_expiration" INTERVAL DEFAULT '6 month';
|
|
16
|
+
ALTER TABLE "config"
|
|
17
|
+
RENAME passwordless_expiration_minutes TO passwordless_expiration;
|
|
18
|
+
|
|
19
|
+
ALTER TABLE "config"
|
|
20
|
+
ALTER COLUMN passwordless_expiration DROP DEFAULT,
|
|
21
|
+
ALTER COLUMN passwordless_expiration TYPE INTERVAL USING passwordless_expiration * INTERVAL '1 minute',
|
|
22
|
+
ALTER COLUMN passwordless_expiration SET DEFAULT INTERVAL '5 minute';
|
|
23
|
+
|
|
24
|
+
-- revert defaults for existing projects
|
|
25
|
+
UPDATE "config"
|
|
26
|
+
SET password_min_length = 6,
|
|
27
|
+
password_require_uppercase = 0,
|
|
28
|
+
password_require_lowercase = 0,
|
|
29
|
+
password_require_digit = 0,
|
|
30
|
+
password_check_blacklist = FALSE,
|
|
31
|
+
login_max_token_expiration = NULL;
|
|
32
|
+
|
|
33
|
+
`;
|
|
34
|
+
async function _20250416180000configup(builder) {
|
|
35
|
+
builder.sql(sql);
|
|
36
|
+
}
|
|
37
|
+
export {
|
|
38
|
+
_20250416180000configup as default
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=2025-04-16-180000-config-up.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"2025-04-16-180000-config-up.js","sources":["../../../../../packages/engine-tenant-api/src/migrations/2025-04-16-180000-config-up.ts"],"sourcesContent":["import { MigrationBuilder } from '@contember/database-migrations'\n\nconst sql = `\n ALTER TABLE \"config\"\n ADD COLUMN \"password_min_length\" INTEGER NOT NULL DEFAULT 8,\n ADD COLUMN \"password_require_uppercase\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_lowercase\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_digit\" INTEGER NOT NULL DEFAULT 1,\n ADD COLUMN \"password_require_special\" INTEGER NOT NULL DEFAULT 0,\n ADD COLUMN \"password_pattern\" TEXT DEFAULT NULL,\n ADD COLUMN \"password_check_blacklist\" BOOLEAN NOT NULL DEFAULT TRUE,\n ADD COLUMN \"login_base_backoff\" INTERVAL NOT NULL DEFAULT '1 second',\n ADD COLUMN \"login_max_backoff\" INTERVAL NOT NULL DEFAULT '60 second',\n ADD COLUMN \"login_attempt_window\" INTERVAL NOT NULL DEFAULT '5 minute',\n ADD COLUMN \"login_reveal_user_exits\" BOOLEAN NOT NULL DEFAULT TRUE,\n ADD COLUMN \"login_default_token_expiration\" INTERVAL NOT NULL DEFAULT '30 minute',\n ADD COLUMN \"login_max_token_expiration\" INTERVAL DEFAULT '6 month';\n ALTER TABLE \"config\"\n RENAME passwordless_expiration_minutes TO passwordless_expiration;\n\n ALTER TABLE \"config\"\n ALTER COLUMN passwordless_expiration DROP DEFAULT,\n ALTER COLUMN passwordless_expiration TYPE INTERVAL USING passwordless_expiration * INTERVAL '1 minute',\n ALTER COLUMN passwordless_expiration SET DEFAULT INTERVAL '5 minute';\n\n-- revert defaults for existing projects\n UPDATE \"config\"\n SET password_min_length = 6,\n password_require_uppercase = 0,\n password_require_lowercase = 0,\n password_require_digit = 0,\n password_check_blacklist = FALSE,\n login_max_token_expiration = NULL;\n\n`\n\nexport default async function (builder: MigrationBuilder) {\n\tbuilder.sql(sql)\n}\n"],"names":[],"mappings":"AAEA,MAAM,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkCZ,eAAA,wBAA+B,SAA2B;AACzD,UAAQ,IAAI,GAAG;AAChB;"}
|