@contember/engine-tenant-api 2.1.0-alpha.16 → 2.1.0-alpha.18
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/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/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/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 +89 -24
- package/dist/development/src/model/service/PasswordlessSignInManager.cjs.map +1 -1
- package/dist/development/src/model/service/PasswordlessSignInManager.js +81 -16
- 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/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/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/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 +89 -24
- package/dist/production/src/model/service/PasswordlessSignInManager.cjs.map +1 -1
- package/dist/production/src/model/service/PasswordlessSignInManager.js +81 -16
- 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/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/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/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/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/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 +95 -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
package/src/schema/index.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Interval } from './types'
|
|
2
|
+
import { OutputInterval } from './types'
|
|
1
3
|
import { GraphQLResolveInfo, GraphQLScalarType, GraphQLScalarTypeConfig } from 'graphql'
|
|
2
4
|
export type Maybe<T> = T | null
|
|
3
5
|
export type InputMaybe<T> = Maybe<T>
|
|
@@ -15,8 +17,9 @@ export type Scalars = {
|
|
|
15
17
|
Boolean: { input: boolean; output: boolean }
|
|
16
18
|
Int: { input: number; output: number }
|
|
17
19
|
Float: { input: number; output: number }
|
|
18
|
-
DateTime: { input:
|
|
19
|
-
|
|
20
|
+
DateTime: { input: Date; output: Date }
|
|
21
|
+
Interval: { input: Interval; output: OutputInterval }
|
|
22
|
+
Json: { input: unknown; output: unknown }
|
|
20
23
|
}
|
|
21
24
|
|
|
22
25
|
export type ActivatePasswordlessOtpError = {
|
|
@@ -139,6 +142,7 @@ export type ChangeMyPasswordError = {
|
|
|
139
142
|
readonly __typename?: 'ChangeMyPasswordError'
|
|
140
143
|
readonly code: ChangeMyPasswordErrorCode
|
|
141
144
|
readonly developerMessage: Scalars['String']['output']
|
|
145
|
+
readonly weakPasswordReasons?: Maybe<ReadonlyArray<WeakPasswordReason>>
|
|
142
146
|
}
|
|
143
147
|
|
|
144
148
|
export type ChangeMyPasswordErrorCode =
|
|
@@ -176,6 +180,7 @@ export type ChangePasswordError = {
|
|
|
176
180
|
readonly developerMessage: Scalars['String']['output']
|
|
177
181
|
/** @deprecated Field no longer supported */
|
|
178
182
|
readonly endUserMessage?: Maybe<Scalars['String']['output']>
|
|
183
|
+
readonly weakPasswordReasons?: Maybe<ReadonlyArray<WeakPasswordReason>>
|
|
179
184
|
}
|
|
180
185
|
|
|
181
186
|
export type ChangePasswordErrorCode =
|
|
@@ -226,23 +231,67 @@ export type CommonSignInResult = {
|
|
|
226
231
|
|
|
227
232
|
export type Config = {
|
|
228
233
|
readonly __typename?: 'Config'
|
|
234
|
+
readonly login: ConfigLogin
|
|
235
|
+
readonly password: ConfigPassword
|
|
229
236
|
readonly passwordless: ConfigPasswordless
|
|
230
237
|
}
|
|
231
238
|
|
|
232
239
|
export type ConfigInput = {
|
|
240
|
+
readonly login?: InputMaybe<ConfigLoginInput>
|
|
241
|
+
readonly password?: InputMaybe<ConfigPasswordInput>
|
|
233
242
|
readonly passwordless?: InputMaybe<ConfigPasswordlessInput>
|
|
234
243
|
}
|
|
235
244
|
|
|
245
|
+
export type ConfigLogin = {
|
|
246
|
+
readonly __typename?: 'ConfigLogin'
|
|
247
|
+
readonly attemptWindow: Scalars['Interval']['output']
|
|
248
|
+
readonly baseBackoff: Scalars['Interval']['output']
|
|
249
|
+
readonly defaultTokenExpiration: Scalars['Interval']['output']
|
|
250
|
+
readonly maxBackoff: Scalars['Interval']['output']
|
|
251
|
+
readonly maxTokenExpiration?: Maybe<Scalars['Interval']['output']>
|
|
252
|
+
readonly revealUserExists: Scalars['Boolean']['output']
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
export type ConfigLoginInput = {
|
|
256
|
+
readonly attemptWindow?: InputMaybe<Scalars['Interval']['input']>
|
|
257
|
+
readonly baseBackoff?: InputMaybe<Scalars['Interval']['input']>
|
|
258
|
+
readonly defaultTokenExpiration?: InputMaybe<Scalars['Interval']['input']>
|
|
259
|
+
readonly maxBackoff?: InputMaybe<Scalars['Interval']['input']>
|
|
260
|
+
readonly maxTokenExpiration?: InputMaybe<Scalars['Interval']['input']>
|
|
261
|
+
readonly revealUserExists?: InputMaybe<Scalars['Boolean']['input']>
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
export type ConfigPassword = {
|
|
265
|
+
readonly __typename?: 'ConfigPassword'
|
|
266
|
+
readonly checkBlacklist: Scalars['Boolean']['output']
|
|
267
|
+
readonly minLength: Scalars['Int']['output']
|
|
268
|
+
readonly pattern?: Maybe<Scalars['String']['output']>
|
|
269
|
+
readonly requireDigit: Scalars['Int']['output']
|
|
270
|
+
readonly requireLowercase: Scalars['Int']['output']
|
|
271
|
+
readonly requireSpecial: Scalars['Int']['output']
|
|
272
|
+
readonly requireUppercase: Scalars['Int']['output']
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
export type ConfigPasswordInput = {
|
|
276
|
+
readonly checkBlacklist?: InputMaybe<Scalars['Boolean']['input']>
|
|
277
|
+
readonly minLength?: InputMaybe<Scalars['Int']['input']>
|
|
278
|
+
readonly pattern?: InputMaybe<Scalars['String']['input']>
|
|
279
|
+
readonly requireDigit?: InputMaybe<Scalars['Int']['input']>
|
|
280
|
+
readonly requireLowercase?: InputMaybe<Scalars['Int']['input']>
|
|
281
|
+
readonly requireSpecial?: InputMaybe<Scalars['Int']['input']>
|
|
282
|
+
readonly requireUppercase?: InputMaybe<Scalars['Int']['input']>
|
|
283
|
+
}
|
|
284
|
+
|
|
236
285
|
export type ConfigPasswordless = {
|
|
237
286
|
readonly __typename?: 'ConfigPasswordless'
|
|
238
287
|
readonly enabled: ConfigPolicy
|
|
239
|
-
readonly
|
|
288
|
+
readonly expiration: Scalars['Interval']['output']
|
|
240
289
|
readonly url?: Maybe<Scalars['String']['output']>
|
|
241
290
|
}
|
|
242
291
|
|
|
243
292
|
export type ConfigPasswordlessInput = {
|
|
244
293
|
readonly enabled?: InputMaybe<ConfigPolicy>
|
|
245
|
-
readonly
|
|
294
|
+
readonly expiration?: InputMaybe<Scalars['Interval']['input']>
|
|
246
295
|
readonly url?: InputMaybe<Scalars['String']['input']>
|
|
247
296
|
}
|
|
248
297
|
|
|
@@ -1169,6 +1218,7 @@ export type ResetPasswordError = {
|
|
|
1169
1218
|
readonly developerMessage: Scalars['String']['output']
|
|
1170
1219
|
/** @deprecated Field no longer supported */
|
|
1171
1220
|
readonly endUserMessage?: Maybe<Scalars['String']['output']>
|
|
1221
|
+
readonly weakPasswordReasons?: Maybe<ReadonlyArray<WeakPasswordReason>>
|
|
1172
1222
|
}
|
|
1173
1223
|
|
|
1174
1224
|
export type ResetPasswordErrorCode =
|
|
@@ -1234,14 +1284,17 @@ export type SignInError = {
|
|
|
1234
1284
|
readonly developerMessage: Scalars['String']['output']
|
|
1235
1285
|
/** @deprecated Field no longer supported */
|
|
1236
1286
|
readonly endUserMessage?: Maybe<Scalars['String']['output']>
|
|
1287
|
+
readonly retryAfter?: Maybe<Scalars['Int']['output']>
|
|
1237
1288
|
}
|
|
1238
1289
|
|
|
1239
1290
|
export type SignInErrorCode =
|
|
1291
|
+
| 'INVALID_CREDENTIALS'
|
|
1240
1292
|
| 'INVALID_OTP_TOKEN'
|
|
1241
1293
|
| 'INVALID_PASSWORD'
|
|
1242
1294
|
| 'NO_PASSWORD_SET'
|
|
1243
1295
|
| 'OTP_REQUIRED'
|
|
1244
1296
|
| 'PERSON_DISABLED'
|
|
1297
|
+
| 'RATE_LIMIT_EXCEEDED'
|
|
1245
1298
|
| 'UNKNOWN_EMAIL'
|
|
1246
1299
|
|
|
1247
1300
|
export type SignInIdpError = {
|
|
@@ -1344,6 +1397,7 @@ export type SignUpError = {
|
|
|
1344
1397
|
readonly developerMessage: Scalars['String']['output']
|
|
1345
1398
|
/** @deprecated Field no longer supported */
|
|
1346
1399
|
readonly endPersonMessage?: Maybe<Scalars['String']['output']>
|
|
1400
|
+
readonly weakPasswordReasons?: Maybe<ReadonlyArray<WeakPasswordReason>>
|
|
1347
1401
|
}
|
|
1348
1402
|
|
|
1349
1403
|
export type SignUpErrorCode =
|
|
@@ -1453,6 +1507,15 @@ export type VariableEntryInput = {
|
|
|
1453
1507
|
readonly values: ReadonlyArray<Scalars['String']['input']>
|
|
1454
1508
|
}
|
|
1455
1509
|
|
|
1510
|
+
export type WeakPasswordReason =
|
|
1511
|
+
| 'BLACKLISTED'
|
|
1512
|
+
| 'INVALID_PATTERN'
|
|
1513
|
+
| 'MISSING_DIGIT'
|
|
1514
|
+
| 'MISSING_LOWERCASE'
|
|
1515
|
+
| 'MISSING_SPECIAL'
|
|
1516
|
+
| 'MISSING_UPPERCASE'
|
|
1517
|
+
| 'TOO_SHORT'
|
|
1518
|
+
|
|
1456
1519
|
|
|
1457
1520
|
|
|
1458
1521
|
export type ResolverTypeWrapper<T> = Promise<T> | T
|
|
@@ -1565,6 +1628,10 @@ export type ResolversTypes = {
|
|
|
1565
1628
|
CommonSignInResult: ResolverTypeWrapper<ResolversInterfaceTypes<ResolversTypes>['CommonSignInResult']>
|
|
1566
1629
|
Config: ResolverTypeWrapper<Config>
|
|
1567
1630
|
ConfigInput: ConfigInput
|
|
1631
|
+
ConfigLogin: ResolverTypeWrapper<ConfigLogin>
|
|
1632
|
+
ConfigLoginInput: ConfigLoginInput
|
|
1633
|
+
ConfigPassword: ResolverTypeWrapper<ConfigPassword>
|
|
1634
|
+
ConfigPasswordInput: ConfigPasswordInput
|
|
1568
1635
|
ConfigPasswordless: ResolverTypeWrapper<ConfigPasswordless>
|
|
1569
1636
|
ConfigPasswordlessInput: ConfigPasswordlessInput
|
|
1570
1637
|
ConfigPolicy: ConfigPolicy
|
|
@@ -1624,6 +1691,7 @@ export type ResolversTypes = {
|
|
|
1624
1691
|
InitSignInPasswordlessResponse: ResolverTypeWrapper<InitSignInPasswordlessResponse>
|
|
1625
1692
|
InitSignInPasswordlessResult: ResolverTypeWrapper<InitSignInPasswordlessResult>
|
|
1626
1693
|
Int: ResolverTypeWrapper<Scalars['Int']['output']>
|
|
1694
|
+
Interval: ResolverTypeWrapper<Scalars['Interval']['output']>
|
|
1627
1695
|
InviteError: ResolverTypeWrapper<InviteError>
|
|
1628
1696
|
InviteErrorCode: InviteErrorCode
|
|
1629
1697
|
InviteMethod: InviteMethod
|
|
@@ -1707,6 +1775,7 @@ export type ResolversTypes = {
|
|
|
1707
1775
|
UpdateProjectResponse: ResolverTypeWrapper<UpdateProjectResponse>
|
|
1708
1776
|
VariableEntry: ResolverTypeWrapper<VariableEntry>
|
|
1709
1777
|
VariableEntryInput: VariableEntryInput
|
|
1778
|
+
WeakPasswordReason: WeakPasswordReason
|
|
1710
1779
|
}
|
|
1711
1780
|
|
|
1712
1781
|
/** Mapping between all available schema types and the resolvers parents */
|
|
@@ -1737,6 +1806,10 @@ export type ResolversParentTypes = {
|
|
|
1737
1806
|
CommonSignInResult: ResolversInterfaceTypes<ResolversParentTypes>['CommonSignInResult']
|
|
1738
1807
|
Config: Config
|
|
1739
1808
|
ConfigInput: ConfigInput
|
|
1809
|
+
ConfigLogin: ConfigLogin
|
|
1810
|
+
ConfigLoginInput: ConfigLoginInput
|
|
1811
|
+
ConfigPassword: ConfigPassword
|
|
1812
|
+
ConfigPasswordInput: ConfigPasswordInput
|
|
1740
1813
|
ConfigPasswordless: ConfigPasswordless
|
|
1741
1814
|
ConfigPasswordlessInput: ConfigPasswordlessInput
|
|
1742
1815
|
ConfigureError: ConfigureError
|
|
@@ -1782,6 +1855,7 @@ export type ResolversParentTypes = {
|
|
|
1782
1855
|
InitSignInPasswordlessResponse: InitSignInPasswordlessResponse
|
|
1783
1856
|
InitSignInPasswordlessResult: InitSignInPasswordlessResult
|
|
1784
1857
|
Int: Scalars['Int']['output']
|
|
1858
|
+
Interval: Scalars['Interval']['output']
|
|
1785
1859
|
InviteError: InviteError
|
|
1786
1860
|
InviteOptions: InviteOptions
|
|
1787
1861
|
InviteResponse: InviteResponse
|
|
@@ -1934,6 +2008,7 @@ export type ApiKeyWithTokenResolvers<ContextType = any, ParentType extends Resol
|
|
|
1934
2008
|
export type ChangeMyPasswordErrorResolvers<ContextType = any, ParentType extends ResolversParentTypes['ChangeMyPasswordError'] = ResolversParentTypes['ChangeMyPasswordError']> = {
|
|
1935
2009
|
code?: Resolver<ResolversTypes['ChangeMyPasswordErrorCode'], ParentType, ContextType>
|
|
1936
2010
|
developerMessage?: Resolver<ResolversTypes['String'], ParentType, ContextType>
|
|
2011
|
+
weakPasswordReasons?: Resolver<Maybe<ReadonlyArray<ResolversTypes['WeakPasswordReason']>>, ParentType, ContextType>
|
|
1937
2012
|
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>
|
|
1938
2013
|
}
|
|
1939
2014
|
|
|
@@ -1959,6 +2034,7 @@ export type ChangePasswordErrorResolvers<ContextType = any, ParentType extends R
|
|
|
1959
2034
|
code?: Resolver<ResolversTypes['ChangePasswordErrorCode'], ParentType, ContextType>
|
|
1960
2035
|
developerMessage?: Resolver<ResolversTypes['String'], ParentType, ContextType>
|
|
1961
2036
|
endUserMessage?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>
|
|
2037
|
+
weakPasswordReasons?: Resolver<Maybe<ReadonlyArray<ResolversTypes['WeakPasswordReason']>>, ParentType, ContextType>
|
|
1962
2038
|
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>
|
|
1963
2039
|
}
|
|
1964
2040
|
|
|
@@ -1993,13 +2069,36 @@ export type CommonSignInResultResolvers<ContextType = any, ParentType extends Re
|
|
|
1993
2069
|
}
|
|
1994
2070
|
|
|
1995
2071
|
export type ConfigResolvers<ContextType = any, ParentType extends ResolversParentTypes['Config'] = ResolversParentTypes['Config']> = {
|
|
2072
|
+
login?: Resolver<ResolversTypes['ConfigLogin'], ParentType, ContextType>
|
|
2073
|
+
password?: Resolver<ResolversTypes['ConfigPassword'], ParentType, ContextType>
|
|
1996
2074
|
passwordless?: Resolver<ResolversTypes['ConfigPasswordless'], ParentType, ContextType>
|
|
1997
2075
|
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>
|
|
1998
2076
|
}
|
|
1999
2077
|
|
|
2078
|
+
export type ConfigLoginResolvers<ContextType = any, ParentType extends ResolversParentTypes['ConfigLogin'] = ResolversParentTypes['ConfigLogin']> = {
|
|
2079
|
+
attemptWindow?: Resolver<ResolversTypes['Interval'], ParentType, ContextType>
|
|
2080
|
+
baseBackoff?: Resolver<ResolversTypes['Interval'], ParentType, ContextType>
|
|
2081
|
+
defaultTokenExpiration?: Resolver<ResolversTypes['Interval'], ParentType, ContextType>
|
|
2082
|
+
maxBackoff?: Resolver<ResolversTypes['Interval'], ParentType, ContextType>
|
|
2083
|
+
maxTokenExpiration?: Resolver<Maybe<ResolversTypes['Interval']>, ParentType, ContextType>
|
|
2084
|
+
revealUserExists?: Resolver<ResolversTypes['Boolean'], ParentType, ContextType>
|
|
2085
|
+
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>
|
|
2086
|
+
}
|
|
2087
|
+
|
|
2088
|
+
export type ConfigPasswordResolvers<ContextType = any, ParentType extends ResolversParentTypes['ConfigPassword'] = ResolversParentTypes['ConfigPassword']> = {
|
|
2089
|
+
checkBlacklist?: Resolver<ResolversTypes['Boolean'], ParentType, ContextType>
|
|
2090
|
+
minLength?: Resolver<ResolversTypes['Int'], ParentType, ContextType>
|
|
2091
|
+
pattern?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>
|
|
2092
|
+
requireDigit?: Resolver<ResolversTypes['Int'], ParentType, ContextType>
|
|
2093
|
+
requireLowercase?: Resolver<ResolversTypes['Int'], ParentType, ContextType>
|
|
2094
|
+
requireSpecial?: Resolver<ResolversTypes['Int'], ParentType, ContextType>
|
|
2095
|
+
requireUppercase?: Resolver<ResolversTypes['Int'], ParentType, ContextType>
|
|
2096
|
+
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>
|
|
2097
|
+
}
|
|
2098
|
+
|
|
2000
2099
|
export type ConfigPasswordlessResolvers<ContextType = any, ParentType extends ResolversParentTypes['ConfigPasswordless'] = ResolversParentTypes['ConfigPasswordless']> = {
|
|
2001
2100
|
enabled?: Resolver<ResolversTypes['ConfigPolicy'], ParentType, ContextType>
|
|
2002
|
-
|
|
2101
|
+
expiration?: Resolver<ResolversTypes['Interval'], ParentType, ContextType>
|
|
2003
2102
|
url?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>
|
|
2004
2103
|
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>
|
|
2005
2104
|
}
|
|
@@ -2250,6 +2349,10 @@ export type InitSignInPasswordlessResultResolvers<ContextType = any, ParentType
|
|
|
2250
2349
|
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>
|
|
2251
2350
|
}
|
|
2252
2351
|
|
|
2352
|
+
export interface IntervalScalarConfig extends GraphQLScalarTypeConfig<ResolversTypes['Interval'], any> {
|
|
2353
|
+
name: 'Interval'
|
|
2354
|
+
}
|
|
2355
|
+
|
|
2253
2356
|
export type InviteErrorResolvers<ContextType = any, ParentType extends ResolversParentTypes['InviteError'] = ResolversParentTypes['InviteError']> = {
|
|
2254
2357
|
code?: Resolver<ResolversTypes['InviteErrorCode'], ParentType, ContextType>
|
|
2255
2358
|
developerMessage?: Resolver<ResolversTypes['String'], ParentType, ContextType>
|
|
@@ -2446,6 +2549,7 @@ export type ResetPasswordErrorResolvers<ContextType = any, ParentType extends Re
|
|
|
2446
2549
|
code?: Resolver<ResolversTypes['ResetPasswordErrorCode'], ParentType, ContextType>
|
|
2447
2550
|
developerMessage?: Resolver<ResolversTypes['String'], ParentType, ContextType>
|
|
2448
2551
|
endUserMessage?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>
|
|
2552
|
+
weakPasswordReasons?: Resolver<Maybe<ReadonlyArray<ResolversTypes['WeakPasswordReason']>>, ParentType, ContextType>
|
|
2449
2553
|
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>
|
|
2450
2554
|
}
|
|
2451
2555
|
|
|
@@ -2500,6 +2604,7 @@ export type SignInErrorResolvers<ContextType = any, ParentType extends Resolvers
|
|
|
2500
2604
|
code?: Resolver<ResolversTypes['SignInErrorCode'], ParentType, ContextType>
|
|
2501
2605
|
developerMessage?: Resolver<ResolversTypes['String'], ParentType, ContextType>
|
|
2502
2606
|
endUserMessage?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>
|
|
2607
|
+
retryAfter?: Resolver<Maybe<ResolversTypes['Int']>, ParentType, ContextType>
|
|
2503
2608
|
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>
|
|
2504
2609
|
}
|
|
2505
2610
|
|
|
@@ -2576,6 +2681,7 @@ export type SignUpErrorResolvers<ContextType = any, ParentType extends Resolvers
|
|
|
2576
2681
|
code?: Resolver<ResolversTypes['SignUpErrorCode'], ParentType, ContextType>
|
|
2577
2682
|
developerMessage?: Resolver<ResolversTypes['String'], ParentType, ContextType>
|
|
2578
2683
|
endPersonMessage?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>
|
|
2684
|
+
weakPasswordReasons?: Resolver<Maybe<ReadonlyArray<ResolversTypes['WeakPasswordReason']>>, ParentType, ContextType>
|
|
2579
2685
|
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>
|
|
2580
2686
|
}
|
|
2581
2687
|
|
|
@@ -2674,6 +2780,8 @@ export type Resolvers<ContextType = any> = {
|
|
|
2674
2780
|
CheckResetPasswordTokenResult?: CheckResetPasswordTokenResultResolvers<ContextType>
|
|
2675
2781
|
CommonSignInResult?: CommonSignInResultResolvers<ContextType>
|
|
2676
2782
|
Config?: ConfigResolvers<ContextType>
|
|
2783
|
+
ConfigLogin?: ConfigLoginResolvers<ContextType>
|
|
2784
|
+
ConfigPassword?: ConfigPasswordResolvers<ContextType>
|
|
2677
2785
|
ConfigPasswordless?: ConfigPasswordlessResolvers<ContextType>
|
|
2678
2786
|
ConfigureError?: ConfigureErrorResolvers<ContextType>
|
|
2679
2787
|
ConfigureResponse?: ConfigureResponseResolvers<ContextType>
|
|
@@ -2712,6 +2820,7 @@ export type Resolvers<ContextType = any> = {
|
|
|
2712
2820
|
InitSignInPasswordlessError?: InitSignInPasswordlessErrorResolvers<ContextType>
|
|
2713
2821
|
InitSignInPasswordlessResponse?: InitSignInPasswordlessResponseResolvers<ContextType>
|
|
2714
2822
|
InitSignInPasswordlessResult?: InitSignInPasswordlessResultResolvers<ContextType>
|
|
2823
|
+
Interval?: GraphQLScalarType
|
|
2715
2824
|
InviteError?: InviteErrorResolvers<ContextType>
|
|
2716
2825
|
InviteResponse?: InviteResponseResolvers<ContextType>
|
|
2717
2826
|
InviteResult?: InviteResultResolvers<ContextType>
|
|
@@ -4,6 +4,9 @@ import { DocumentNode } from 'graphql'
|
|
|
4
4
|
const schema: DocumentNode = gql`
|
|
5
5
|
scalar Json
|
|
6
6
|
scalar DateTime
|
|
7
|
+
|
|
8
|
+
""" Interval is a string in the format ISO 8601, e.g. "PT1H" for 1 hour """
|
|
9
|
+
scalar Interval
|
|
7
10
|
|
|
8
11
|
schema {
|
|
9
12
|
query: Query
|
|
@@ -120,16 +123,39 @@ const schema: DocumentNode = gql`
|
|
|
120
123
|
|
|
121
124
|
type Config {
|
|
122
125
|
passwordless: ConfigPasswordless!
|
|
126
|
+
password: ConfigPassword!
|
|
127
|
+
login: ConfigLogin!
|
|
123
128
|
}
|
|
124
129
|
|
|
125
130
|
type ConfigPasswordless {
|
|
126
131
|
enabled: ConfigPolicy!
|
|
127
132
|
url: String
|
|
128
|
-
|
|
133
|
+
expiration: Interval!
|
|
129
134
|
}
|
|
130
135
|
|
|
136
|
+
type ConfigPassword {
|
|
137
|
+
minLength: Int!
|
|
138
|
+
requireUppercase: Int!
|
|
139
|
+
requireLowercase: Int!
|
|
140
|
+
requireDigit: Int!
|
|
141
|
+
requireSpecial: Int!
|
|
142
|
+
pattern: String
|
|
143
|
+
checkBlacklist: Boolean!
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
type ConfigLogin {
|
|
147
|
+
baseBackoff: Interval!
|
|
148
|
+
maxBackoff: Interval!
|
|
149
|
+
attemptWindow: Interval!
|
|
150
|
+
revealUserExists: Boolean!
|
|
151
|
+
defaultTokenExpiration: Interval!
|
|
152
|
+
maxTokenExpiration: Interval
|
|
153
|
+
}
|
|
154
|
+
|
|
131
155
|
input ConfigInput {
|
|
132
156
|
passwordless: ConfigPasswordlessInput
|
|
157
|
+
password: ConfigPasswordInput
|
|
158
|
+
login: ConfigLoginInput
|
|
133
159
|
}
|
|
134
160
|
|
|
135
161
|
enum ConfigPolicy {
|
|
@@ -142,9 +168,28 @@ const schema: DocumentNode = gql`
|
|
|
142
168
|
input ConfigPasswordlessInput {
|
|
143
169
|
enabled: ConfigPolicy
|
|
144
170
|
url: String
|
|
145
|
-
|
|
171
|
+
expiration: Interval
|
|
146
172
|
}
|
|
147
173
|
|
|
174
|
+
input ConfigPasswordInput {
|
|
175
|
+
minLength: Int
|
|
176
|
+
requireUppercase: Int
|
|
177
|
+
requireLowercase: Int
|
|
178
|
+
requireDigit: Int
|
|
179
|
+
requireSpecial: Int
|
|
180
|
+
pattern: String
|
|
181
|
+
checkBlacklist: Boolean
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
input ConfigLoginInput {
|
|
185
|
+
baseBackoff: Interval
|
|
186
|
+
maxBackoff: Interval
|
|
187
|
+
attemptWindow: Interval
|
|
188
|
+
revealUserExists: Boolean
|
|
189
|
+
defaultTokenExpiration: Interval
|
|
190
|
+
maxTokenExpiration: Interval
|
|
191
|
+
}
|
|
192
|
+
|
|
148
193
|
type ConfigureResponse {
|
|
149
194
|
ok: Boolean!
|
|
150
195
|
error: ConfigureError
|
|
@@ -169,6 +214,7 @@ const schema: DocumentNode = gql`
|
|
|
169
214
|
|
|
170
215
|
type SignUpError {
|
|
171
216
|
code: SignUpErrorCode!
|
|
217
|
+
weakPasswordReasons: [WeakPasswordReason!]
|
|
172
218
|
developerMessage: String!
|
|
173
219
|
endPersonMessage: String @deprecated
|
|
174
220
|
}
|
|
@@ -202,15 +248,18 @@ const schema: DocumentNode = gql`
|
|
|
202
248
|
code: SignInErrorCode!
|
|
203
249
|
developerMessage: String!
|
|
204
250
|
endUserMessage: String @deprecated
|
|
251
|
+
retryAfter: Int
|
|
205
252
|
}
|
|
206
253
|
|
|
207
254
|
enum SignInErrorCode {
|
|
255
|
+
INVALID_CREDENTIALS
|
|
208
256
|
UNKNOWN_EMAIL
|
|
209
257
|
INVALID_PASSWORD
|
|
210
258
|
PERSON_DISABLED
|
|
211
259
|
NO_PASSWORD_SET
|
|
212
260
|
OTP_REQUIRED
|
|
213
261
|
INVALID_OTP_TOKEN
|
|
262
|
+
RATE_LIMIT_EXCEEDED
|
|
214
263
|
}
|
|
215
264
|
|
|
216
265
|
type SignInResult implements CommonSignInResult {
|
|
@@ -307,6 +356,7 @@ const schema: DocumentNode = gql`
|
|
|
307
356
|
|
|
308
357
|
type ChangePasswordError {
|
|
309
358
|
code: ChangePasswordErrorCode!
|
|
359
|
+
weakPasswordReasons: [WeakPasswordReason!]
|
|
310
360
|
developerMessage: String!
|
|
311
361
|
endUserMessage: String @deprecated
|
|
312
362
|
}
|
|
@@ -315,6 +365,16 @@ const schema: DocumentNode = gql`
|
|
|
315
365
|
PERSON_NOT_FOUND
|
|
316
366
|
TOO_WEAK
|
|
317
367
|
}
|
|
368
|
+
|
|
369
|
+
enum WeakPasswordReason {
|
|
370
|
+
TOO_SHORT
|
|
371
|
+
MISSING_UPPERCASE
|
|
372
|
+
MISSING_LOWERCASE
|
|
373
|
+
MISSING_DIGIT
|
|
374
|
+
MISSING_SPECIAL
|
|
375
|
+
INVALID_PATTERN
|
|
376
|
+
BLACKLISTED
|
|
377
|
+
}
|
|
318
378
|
|
|
319
379
|
|
|
320
380
|
# === changeMyPassword ===
|
|
@@ -326,6 +386,7 @@ const schema: DocumentNode = gql`
|
|
|
326
386
|
|
|
327
387
|
type ChangeMyPasswordError {
|
|
328
388
|
code: ChangeMyPasswordErrorCode!
|
|
389
|
+
weakPasswordReasons: [WeakPasswordReason!]
|
|
329
390
|
developerMessage: String!
|
|
330
391
|
}
|
|
331
392
|
|
|
@@ -1086,6 +1147,7 @@ const schema: DocumentNode = gql`
|
|
|
1086
1147
|
}
|
|
1087
1148
|
type ResetPasswordError {
|
|
1088
1149
|
code: ResetPasswordErrorCode!
|
|
1150
|
+
weakPasswordReasons: [WeakPasswordReason!]
|
|
1089
1151
|
developerMessage: String!
|
|
1090
1152
|
endUserMessage: String @deprecated
|
|
1091
1153
|
}
|
|
@@ -5,12 +5,13 @@ import { test } from 'bun:test'
|
|
|
5
5
|
import { changeMyPasswordMutation } from './gql/changeMyPassword'
|
|
6
6
|
import { getPersonByIdentity } from './sql/getPersonByIdentity'
|
|
7
7
|
import { authenticatedIdentityId } from '../../../src/testTenant'
|
|
8
|
+
import { getConfigSql } from './sql/getConfigSql'
|
|
8
9
|
|
|
9
10
|
test('changes my password', async () => {
|
|
10
11
|
const personId = testUuid(1)
|
|
11
12
|
const identityId = authenticatedIdentityId
|
|
12
13
|
const currentPassword = '123456'
|
|
13
|
-
const newPassword = '
|
|
14
|
+
const newPassword = 'ABcc123456'
|
|
14
15
|
await executeTenantTest({
|
|
15
16
|
query: changeMyPasswordMutation({ currentPassword, newPassword }),
|
|
16
17
|
executes: [
|
|
@@ -18,6 +19,7 @@ test('changes my password', async () => {
|
|
|
18
19
|
identityId,
|
|
19
20
|
response: { personId, email: 'john@doe.com', roles: [], password: '123456' },
|
|
20
21
|
}),
|
|
22
|
+
getConfigSql(),
|
|
21
23
|
updatePersonPasswordSql({ personId, password: newPassword }),
|
|
22
24
|
],
|
|
23
25
|
return: {
|
|
@@ -28,6 +30,42 @@ test('changes my password', async () => {
|
|
|
28
30
|
},
|
|
29
31
|
},
|
|
30
32
|
},
|
|
33
|
+
expectedAuthLog: { 'type': 'password_change', 'response': { 'result': null, 'ok': true }, 'personId': testUuid(1) },
|
|
34
|
+
})
|
|
35
|
+
})
|
|
36
|
+
|
|
37
|
+
test('changes my password - weak', async () => {
|
|
38
|
+
const personId = testUuid(1)
|
|
39
|
+
const identityId = authenticatedIdentityId
|
|
40
|
+
const currentPassword = '123456'
|
|
41
|
+
const newPassword = 'abcd123'
|
|
42
|
+
await executeTenantTest({
|
|
43
|
+
query: changeMyPasswordMutation({ currentPassword, newPassword }),
|
|
44
|
+
executes: [
|
|
45
|
+
getPersonByIdentity({
|
|
46
|
+
identityId,
|
|
47
|
+
response: { personId, email: 'john@doe.com', roles: [], password: '123456' },
|
|
48
|
+
}),
|
|
49
|
+
getConfigSql(),
|
|
50
|
+
],
|
|
51
|
+
return: {
|
|
52
|
+
data: {
|
|
53
|
+
changeMyPassword: {
|
|
54
|
+
ok: false,
|
|
55
|
+
error: {
|
|
56
|
+
code: 'TOO_WEAK',
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
expectedAuthLog: { 'type': 'password_change', 'response': { ok: false, error: 'TOO_WEAK',
|
|
62
|
+
errorMessage: 'Password must contain at least 1 uppercase letter. Password is blacklisted.',
|
|
63
|
+
metadata: {
|
|
64
|
+
weakPasswordReasons: [
|
|
65
|
+
'MISSING_UPPERCASE',
|
|
66
|
+
'BLACKLISTED',
|
|
67
|
+
],
|
|
68
|
+
} }, 'personId': testUuid(1) },
|
|
31
69
|
})
|
|
32
70
|
})
|
|
33
71
|
|
|
@@ -36,7 +74,7 @@ test('changes my password - invalid current password', async () => {
|
|
|
36
74
|
const personId = testUuid(1)
|
|
37
75
|
const identityId = authenticatedIdentityId
|
|
38
76
|
const currentPassword = 'xxxxxx'
|
|
39
|
-
const newPassword = '
|
|
77
|
+
const newPassword = 'ABcc123456'
|
|
40
78
|
await executeTenantTest({
|
|
41
79
|
query: changeMyPasswordMutation({ currentPassword, newPassword }),
|
|
42
80
|
executes: [
|
|
@@ -44,6 +82,7 @@ test('changes my password - invalid current password', async () => {
|
|
|
44
82
|
identityId,
|
|
45
83
|
response: { personId, email: 'john@doe.com', roles: [], password: '123456' },
|
|
46
84
|
}),
|
|
85
|
+
getConfigSql(),
|
|
47
86
|
],
|
|
48
87
|
return: {
|
|
49
88
|
data: {
|
|
@@ -55,6 +94,7 @@ test('changes my password - invalid current password', async () => {
|
|
|
55
94
|
},
|
|
56
95
|
},
|
|
57
96
|
},
|
|
97
|
+
expectedAuthLog: { 'type': 'password_change', 'response': { 'ok': false, 'error': 'INVALID_PASSWORD', 'errorMessage': 'Password does not match' }, 'personId': testUuid(1) },
|
|
58
98
|
})
|
|
59
99
|
})
|
|
60
100
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { executeTenantTest } from '../../../src/testTenant'
|
|
2
2
|
import { testUuid } from '../../../src/testUuid'
|
|
3
3
|
import { updatePersonProfileNameSql, updatePersonProfileEmailSql, updatePersonProfileNameAndEmailSql } from './sql/updatePesonNameSql'
|
|
4
|
-
import { test } from 'bun:test'
|
|
4
|
+
import { expect, test } from 'bun:test'
|
|
5
5
|
import { changeMyProfileMutation } from './gql/changeMyProfile'
|
|
6
6
|
import { getPersonByIdentity } from './sql/getPersonByIdentity'
|
|
7
7
|
import { authenticatedIdentityId } from '../../../src/testTenant'
|
|
@@ -78,6 +78,12 @@ test('changes my email', async () => {
|
|
|
78
78
|
},
|
|
79
79
|
},
|
|
80
80
|
},
|
|
81
|
+
expectedAuthLog: expect.objectContaining({
|
|
82
|
+
type: 'email_change',
|
|
83
|
+
response: expect.objectContaining({
|
|
84
|
+
ok: true,
|
|
85
|
+
}),
|
|
86
|
+
}),
|
|
81
87
|
})
|
|
82
88
|
})
|
|
83
89
|
|
|
@@ -92,7 +98,6 @@ test('changes my email - invalid', async () => {
|
|
|
92
98
|
identityId,
|
|
93
99
|
response: { personId, email: 'john.doe@example.com', name: 'John Doe', roles: [], password: '123456' },
|
|
94
100
|
}),
|
|
95
|
-
updatePersonProfileEmailSql({ personId, email }),
|
|
96
101
|
],
|
|
97
102
|
return: {
|
|
98
103
|
data: {
|
|
@@ -118,7 +123,6 @@ test('changes my email - invalid #2', async () => {
|
|
|
118
123
|
identityId,
|
|
119
124
|
response: { personId, email: 'john.doe@example.com', name: 'John Doe', roles: [], password: '123456' },
|
|
120
125
|
}),
|
|
121
|
-
updatePersonProfileEmailSql({ personId, email }),
|
|
122
126
|
],
|
|
123
127
|
return: {
|
|
124
128
|
data: {
|
|
@@ -130,6 +134,12 @@ test('changes my email - invalid #2', async () => {
|
|
|
130
134
|
},
|
|
131
135
|
},
|
|
132
136
|
},
|
|
137
|
+
expectedAuthLog: expect.objectContaining({
|
|
138
|
+
type: 'email_change',
|
|
139
|
+
response: expect.objectContaining({
|
|
140
|
+
ok: false,
|
|
141
|
+
}),
|
|
142
|
+
}),
|
|
133
143
|
})
|
|
134
144
|
})
|
|
135
145
|
|
|
@@ -145,7 +155,6 @@ test('changes my email - exists', async () => {
|
|
|
145
155
|
response: { personId, email: 'john.doe@example.com', name: 'John Doe', roles: [], password: '123456' },
|
|
146
156
|
}),
|
|
147
157
|
getPersonByEmailSql({ email, response: { personId: testUuid(4), identityId: testUuid(5), roles: [], password: '' } }),
|
|
148
|
-
updatePersonProfileEmailSql({ personId, email }),
|
|
149
158
|
],
|
|
150
159
|
return: {
|
|
151
160
|
data: {
|
|
@@ -157,6 +166,12 @@ test('changes my email - exists', async () => {
|
|
|
157
166
|
},
|
|
158
167
|
},
|
|
159
168
|
},
|
|
169
|
+
expectedAuthLog: expect.objectContaining({
|
|
170
|
+
type: 'email_change',
|
|
171
|
+
response: expect.objectContaining({
|
|
172
|
+
ok: false,
|
|
173
|
+
}),
|
|
174
|
+
}),
|
|
160
175
|
})
|
|
161
176
|
})
|
|
162
177
|
|
|
@@ -183,5 +198,11 @@ test('changes my name and email', async () => {
|
|
|
183
198
|
},
|
|
184
199
|
},
|
|
185
200
|
},
|
|
201
|
+
expectedAuthLog: expect.objectContaining({
|
|
202
|
+
type: 'email_change',
|
|
203
|
+
response: expect.objectContaining({
|
|
204
|
+
ok: true,
|
|
205
|
+
}),
|
|
206
|
+
}),
|
|
186
207
|
})
|
|
187
208
|
})
|
|
@@ -3,12 +3,13 @@ import { testUuid } from '../../../src/testUuid'
|
|
|
3
3
|
import { changePasswordMutation } from './gql/changePassword'
|
|
4
4
|
import { getPersonByIdSql } from './sql/getPersonByIdSql'
|
|
5
5
|
import { updatePersonPasswordSql } from './sql/updatePesonPasswordSql'
|
|
6
|
-
import { test } from 'bun:test'
|
|
6
|
+
import { expect, test } from 'bun:test'
|
|
7
|
+
import { getConfigSql } from './sql/getConfigSql'
|
|
7
8
|
|
|
8
9
|
test('changes a password', async () => {
|
|
9
10
|
const personId = testUuid(1)
|
|
10
11
|
const identityId = testUuid(2)
|
|
11
|
-
const password = '
|
|
12
|
+
const password = 'AbcDeg123'
|
|
12
13
|
await executeTenantTest({
|
|
13
14
|
query: changePasswordMutation({ personId, password }),
|
|
14
15
|
executes: [
|
|
@@ -16,6 +17,7 @@ test('changes a password', async () => {
|
|
|
16
17
|
personId,
|
|
17
18
|
response: { personId, email: 'john@doe.com', roles: [], password: '123', identityId },
|
|
18
19
|
}),
|
|
20
|
+
getConfigSql(),
|
|
19
21
|
updatePersonPasswordSql({ personId, password }),
|
|
20
22
|
],
|
|
21
23
|
return: {
|
|
@@ -25,6 +27,12 @@ test('changes a password', async () => {
|
|
|
25
27
|
},
|
|
26
28
|
},
|
|
27
29
|
},
|
|
30
|
+
expectedAuthLog: expect.objectContaining({
|
|
31
|
+
type: 'password_change',
|
|
32
|
+
response: expect.objectContaining({
|
|
33
|
+
ok: true,
|
|
34
|
+
}),
|
|
35
|
+
}),
|
|
28
36
|
})
|
|
29
37
|
})
|
|
30
38
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { executeTenantTest } from '../../../src/testTenant'
|
|
2
2
|
import { testUuid } from '../../../src/testUuid'
|
|
3
|
-
import { test } from 'bun:test'
|
|
3
|
+
import { expect, test } from 'bun:test'
|
|
4
4
|
import { changeProfileMutation } from './gql/changeProfile'
|
|
5
5
|
import { updatePersonProfileNameAndEmailSql } from './sql/updatePesonNameSql'
|
|
6
6
|
import { authenticatedIdentityId } from '../../../src/testTenant'
|
|
@@ -32,6 +32,12 @@ test('changes my name and email', async () => {
|
|
|
32
32
|
},
|
|
33
33
|
},
|
|
34
34
|
},
|
|
35
|
+
expectedAuthLog: expect.objectContaining({
|
|
36
|
+
type: 'email_change',
|
|
37
|
+
response: expect.objectContaining({
|
|
38
|
+
ok: true,
|
|
39
|
+
}),
|
|
40
|
+
}),
|
|
35
41
|
})
|
|
36
42
|
})
|
|
37
43
|
|