mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-12 01:37:31 +00:00
feat: passwordless registration (#2103)
* begin pw less registration * create pwless one time codes * send pwless link * separate send and add passwordless link * separate send and add passwordless link events * custom message text for passwordless registration * begin custom login texts for passwordless * i18n * i18n message * i18n message * custom message text * custom login text * org design and texts * create link in human import process * fix import human tests * begin passwordless init required step * passwordless init * passwordless init * do not return link in mgmt api * prompt * passwordless init only (no additional prompt) * cleanup * cleanup * add passwordless prompt to custom login text * increase init code complexity * fix grpc * cleanup * fix and add some cases for nextStep tests * fix tests * Update internal/notification/static/i18n/en.yaml * Update internal/notification/static/i18n/de.yaml * Update proto/zitadel/management.proto * Update internal/ui/login/static/i18n/de.yaml * Update internal/ui/login/static/i18n/de.yaml * Update internal/ui/login/static/i18n/de.yaml Co-authored-by: Fabi <38692350+fgerschwiler@users.noreply.github.com>
This commit is contained in:
@@ -32,36 +32,39 @@ func CustomLoginTextToPb(text *domain.CustomLoginText) *text_pb.LoginCustomText
|
||||
text.ChangeDate,
|
||||
text.AggregateID,
|
||||
),
|
||||
SelectAccountText: SelectAccountScreenToPb(text.SelectAccount),
|
||||
LoginText: LoginScreenTextToPb(text.Login),
|
||||
PasswordText: PasswordScreenTextToPb(text.Password),
|
||||
UsernameChangeText: UsernameChangeScreenTextToPb(text.UsernameChange),
|
||||
UsernameChangeDoneText: UsernameChangeDoneScreenTextToPb(text.UsernameChangeDone),
|
||||
InitPasswordText: InitPasswordScreenTextToPb(text.InitPassword),
|
||||
InitPasswordDoneText: InitPasswordDoneScreenTextToPb(text.InitPasswordDone),
|
||||
EmailVerificationText: EmailVerificationScreenTextToPb(text.EmailVerification),
|
||||
EmailVerificationDoneText: EmailVerificationDoneScreenTextToPb(text.EmailVerificationDone),
|
||||
InitializeUserText: InitializeUserScreenTextToPb(text.InitUser),
|
||||
InitializeDoneText: InitializeUserDoneScreenTextToPb(text.InitUserDone),
|
||||
InitMfaPromptText: InitMFAPromptScreenTextToPb(text.InitMFAPrompt),
|
||||
InitMfaOtpText: InitMFAOTPScreenTextToPb(text.InitMFAOTP),
|
||||
InitMfaU2FText: InitMFAU2FScreenTextToPb(text.InitMFAU2F),
|
||||
InitMfaDoneText: InitMFADoneScreenTextToPb(text.InitMFADone),
|
||||
MfaProvidersText: MFAProvidersTextToPb(text.MFAProvider),
|
||||
VerifyMfaOtpText: VerifyMFAOTPScreenTextToPb(text.VerifyMFAOTP),
|
||||
VerifyMfaU2FText: VerifyMFAU2FScreenTextToPb(text.VerifyMFAU2F),
|
||||
PasswordlessText: PasswordlessScreenTextToPb(text.Passwordless),
|
||||
PasswordChangeText: PasswordChangeScreenTextToPb(text.PasswordChange),
|
||||
PasswordChangeDoneText: PasswordChangeDoneScreenTextToPb(text.PasswordChangeDone),
|
||||
PasswordResetDoneText: PasswordResetDoneScreenTextToPb(text.PasswordResetDone),
|
||||
RegistrationOptionText: RegistrationOptionScreenTextToPb(text.RegisterOption),
|
||||
RegistrationUserText: RegistrationUserScreenTextToPb(text.RegistrationUser),
|
||||
RegistrationOrgText: RegistrationOrgScreenTextToPb(text.RegistrationOrg),
|
||||
LinkingUserDoneText: LinkingUserDoneScreenTextToPb(text.LinkingUsersDone),
|
||||
ExternalUserNotFoundText: ExternalUserNotFoundScreenTextToPb(text.ExternalNotFoundOption),
|
||||
SuccessLoginText: SuccessLoginScreenTextToPb(text.LoginSuccess),
|
||||
LogoutText: LogoutDoneScreenTextToPb(text.LogoutDone),
|
||||
FooterText: FooterTextToPb(text.Footer),
|
||||
SelectAccountText: SelectAccountScreenToPb(text.SelectAccount),
|
||||
LoginText: LoginScreenTextToPb(text.Login),
|
||||
PasswordText: PasswordScreenTextToPb(text.Password),
|
||||
UsernameChangeText: UsernameChangeScreenTextToPb(text.UsernameChange),
|
||||
UsernameChangeDoneText: UsernameChangeDoneScreenTextToPb(text.UsernameChangeDone),
|
||||
InitPasswordText: InitPasswordScreenTextToPb(text.InitPassword),
|
||||
InitPasswordDoneText: InitPasswordDoneScreenTextToPb(text.InitPasswordDone),
|
||||
EmailVerificationText: EmailVerificationScreenTextToPb(text.EmailVerification),
|
||||
EmailVerificationDoneText: EmailVerificationDoneScreenTextToPb(text.EmailVerificationDone),
|
||||
InitializeUserText: InitializeUserScreenTextToPb(text.InitUser),
|
||||
InitializeDoneText: InitializeUserDoneScreenTextToPb(text.InitUserDone),
|
||||
InitMfaPromptText: InitMFAPromptScreenTextToPb(text.InitMFAPrompt),
|
||||
InitMfaOtpText: InitMFAOTPScreenTextToPb(text.InitMFAOTP),
|
||||
InitMfaU2FText: InitMFAU2FScreenTextToPb(text.InitMFAU2F),
|
||||
InitMfaDoneText: InitMFADoneScreenTextToPb(text.InitMFADone),
|
||||
MfaProvidersText: MFAProvidersTextToPb(text.MFAProvider),
|
||||
VerifyMfaOtpText: VerifyMFAOTPScreenTextToPb(text.VerifyMFAOTP),
|
||||
VerifyMfaU2FText: VerifyMFAU2FScreenTextToPb(text.VerifyMFAU2F),
|
||||
PasswordlessText: PasswordlessScreenTextToPb(text.Passwordless),
|
||||
PasswordlessPromptText: PasswordlessPromptScreenTextToPb(text.PasswordlessPrompt),
|
||||
PasswordlessRegistrationText: PasswordlessRegistrationScreenTextToPb(text.PasswordlessRegistration),
|
||||
PasswordlessRegistrationDoneText: PasswordlessRegistrationDoneScreenTextToPb(text.PasswordlessRegistrationDone),
|
||||
PasswordChangeText: PasswordChangeScreenTextToPb(text.PasswordChange),
|
||||
PasswordChangeDoneText: PasswordChangeDoneScreenTextToPb(text.PasswordChangeDone),
|
||||
PasswordResetDoneText: PasswordResetDoneScreenTextToPb(text.PasswordResetDone),
|
||||
RegistrationOptionText: RegistrationOptionScreenTextToPb(text.RegisterOption),
|
||||
RegistrationUserText: RegistrationUserScreenTextToPb(text.RegistrationUser),
|
||||
RegistrationOrgText: RegistrationOrgScreenTextToPb(text.RegistrationOrg),
|
||||
LinkingUserDoneText: LinkingUserDoneScreenTextToPb(text.LinkingUsersDone),
|
||||
ExternalUserNotFoundText: ExternalUserNotFoundScreenTextToPb(text.ExternalNotFoundOption),
|
||||
SuccessLoginText: SuccessLoginScreenTextToPb(text.LoginSuccess),
|
||||
LogoutText: LogoutDoneScreenTextToPb(text.LogoutDone),
|
||||
FooterText: FooterTextToPb(text.Footer),
|
||||
}
|
||||
}
|
||||
|
||||
@@ -272,6 +275,36 @@ func PasswordlessScreenTextToPb(text domain.PasswordlessScreenText) *text_pb.Pas
|
||||
}
|
||||
}
|
||||
|
||||
func PasswordlessPromptScreenTextToPb(text domain.PasswordlessPromptScreenText) *text_pb.PasswordlessPromptScreenText {
|
||||
return &text_pb.PasswordlessPromptScreenText{
|
||||
Title: text.Title,
|
||||
Description: text.Description,
|
||||
DescriptionInit: text.DescriptionInit,
|
||||
PasswordlessButtonText: text.PasswordlessButtonText,
|
||||
NextButtonText: text.NextButtonText,
|
||||
SkipButtonText: text.SkipButtonText,
|
||||
}
|
||||
}
|
||||
|
||||
func PasswordlessRegistrationScreenTextToPb(text domain.PasswordlessRegistrationScreenText) *text_pb.PasswordlessRegistrationScreenText {
|
||||
return &text_pb.PasswordlessRegistrationScreenText{
|
||||
Title: text.Title,
|
||||
Description: text.Description,
|
||||
RegisterTokenButtonText: text.RegisterTokenButtonText,
|
||||
TokenNameLabel: text.TokenNameLabel,
|
||||
NotSupported: text.NotSupported,
|
||||
ErrorRetry: text.ErrorRetry,
|
||||
}
|
||||
}
|
||||
|
||||
func PasswordlessRegistrationDoneScreenTextToPb(text domain.PasswordlessRegistrationDoneScreenText) *text_pb.PasswordlessRegistrationDoneScreenText {
|
||||
return &text_pb.PasswordlessRegistrationDoneScreenText{
|
||||
Title: text.Title,
|
||||
Description: text.Description,
|
||||
NextButtonText: text.NextButtonText,
|
||||
}
|
||||
}
|
||||
|
||||
func PasswordChangeScreenTextToPb(text domain.PasswordChangeScreenText) *text_pb.PasswordChangeScreenText {
|
||||
return &text_pb.PasswordChangeScreenText{
|
||||
Title: text.Title,
|
||||
@@ -660,6 +693,45 @@ func PasswordlessScreenTextPbToDomain(text *text_pb.PasswordlessScreenText) doma
|
||||
}
|
||||
}
|
||||
|
||||
func PasswordlessPromptScreenTextPbToDomain(text *text_pb.PasswordlessPromptScreenText) domain.PasswordlessPromptScreenText {
|
||||
if text == nil {
|
||||
return domain.PasswordlessPromptScreenText{}
|
||||
}
|
||||
return domain.PasswordlessPromptScreenText{
|
||||
Title: text.Title,
|
||||
Description: text.Description,
|
||||
DescriptionInit: text.DescriptionInit,
|
||||
PasswordlessButtonText: text.PasswordlessButtonText,
|
||||
NextButtonText: text.NextButtonText,
|
||||
SkipButtonText: text.SkipButtonText,
|
||||
}
|
||||
}
|
||||
|
||||
func PasswordlessRegistrationScreenTextPbToDomain(text *text_pb.PasswordlessRegistrationScreenText) domain.PasswordlessRegistrationScreenText {
|
||||
if text == nil {
|
||||
return domain.PasswordlessRegistrationScreenText{}
|
||||
}
|
||||
return domain.PasswordlessRegistrationScreenText{
|
||||
Title: text.Title,
|
||||
Description: text.Description,
|
||||
RegisterTokenButtonText: text.RegisterTokenButtonText,
|
||||
TokenNameLabel: text.TokenNameLabel,
|
||||
NotSupported: text.NotSupported,
|
||||
ErrorRetry: text.ErrorRetry,
|
||||
}
|
||||
}
|
||||
|
||||
func PasswordlessRegistrationDoneScreenTextPbToDomain(text *text_pb.PasswordlessRegistrationDoneScreenText) domain.PasswordlessRegistrationDoneScreenText {
|
||||
if text == nil {
|
||||
return domain.PasswordlessRegistrationDoneScreenText{}
|
||||
}
|
||||
return domain.PasswordlessRegistrationDoneScreenText{
|
||||
Title: text.Title,
|
||||
Description: text.Description,
|
||||
NextButtonText: text.NextButtonText,
|
||||
}
|
||||
}
|
||||
|
||||
func PasswordChangeScreenTextPbToDomain(text *text_pb.PasswordChangeScreenText) domain.PasswordChangeScreenText {
|
||||
if text == nil {
|
||||
return domain.PasswordChangeScreenText{}
|
||||
|
Reference in New Issue
Block a user