mirror of
https://github.com/zitadel/zitadel.git
synced 2025-01-11 06:23:39 +00:00
ca8f82423a
# Which Problems Are Solved There were UX issue with the autolinking prompt page and users were not able to link their account or would not understand what to do. Since the trust to the IdP is already bound by the configuration, the user can directly be linked without any user input. # How the Problems Are Solved - remove the prompt page and directly link the user if possible - remove corresponding customization texts from the API and Console # Additional Changes None # Additional Context - relates to https://github.com/zitadel/zitadel/issues/7977 - discussed with customers - created as a `fix` to be able to backport --------- Co-authored-by: Max Peintner <max@caos.ch>
440 lines
22 KiB
Protocol Buffer
440 lines
22 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
import "zitadel/object.proto";
|
|
import "protoc-gen-openapiv2/options/annotations.proto";
|
|
import "validate/validate.proto";
|
|
|
|
package zitadel.text.v1;
|
|
|
|
option go_package ="github.com/zitadel/zitadel/pkg/grpc/text";
|
|
|
|
message MessageCustomText {
|
|
zitadel.v1.ObjectDetails details = 1;
|
|
string title = 2 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "custom text for email title";
|
|
example: "\"ZITADEL - Message Title\"";
|
|
}
|
|
];
|
|
string pre_header = 3 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "custom text for email pre-header";
|
|
example: "\"User Message\"";
|
|
}
|
|
];
|
|
string subject = 4 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "custom text for email subject";
|
|
example: "\"Message Subject\"";
|
|
}
|
|
];
|
|
string greeting = 5 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "custom text for email greeting"
|
|
example: "\"Hello {{.FirstName}} {{.LastName}},\"";
|
|
}
|
|
];
|
|
string text = 6 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "custom text for email text"
|
|
example: "\"This is my custom message Text. I can also include some fields, depending on the message type I want to send. {{.FirstName}} {{.LastName}},\"";
|
|
}
|
|
];
|
|
string button_text = 7 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "custom text for email button_text";
|
|
example: "\"Call to action\"";
|
|
}
|
|
];
|
|
string footer_text = 8 [
|
|
(grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = {
|
|
description: "custom text for email footer_text";
|
|
example: "\"\"";
|
|
}
|
|
];
|
|
bool is_default = 9;
|
|
}
|
|
|
|
message LoginCustomText {
|
|
zitadel.v1.ObjectDetails details = 1;
|
|
SelectAccountScreenText select_account_text = 2;
|
|
LoginScreenText login_text = 3;
|
|
PasswordScreenText password_text = 4;
|
|
UsernameChangeScreenText username_change_text = 5;
|
|
UsernameChangeDoneScreenText username_change_done_text = 6;
|
|
InitPasswordScreenText init_password_text = 7;
|
|
InitPasswordDoneScreenText init_password_done_text = 8;
|
|
EmailVerificationScreenText email_verification_text = 9;
|
|
EmailVerificationDoneScreenText email_verification_done_text = 10;
|
|
InitializeUserScreenText initialize_user_text = 11;
|
|
InitializeUserDoneScreenText initialize_done_text = 12;
|
|
InitMFAPromptScreenText init_mfa_prompt_text = 13;
|
|
InitMFAOTPScreenText init_mfa_otp_text = 14;
|
|
InitMFAU2FScreenText init_mfa_u2f_text = 15;
|
|
InitMFADoneScreenText init_mfa_done_text = 16;
|
|
MFAProvidersText mfa_providers_text = 17;
|
|
VerifyMFAOTPScreenText verify_mfa_otp_text = 18;
|
|
VerifyMFAU2FScreenText verify_mfa_u2f_text = 19;
|
|
PasswordlessScreenText passwordless_text = 20;
|
|
PasswordChangeScreenText password_change_text = 21;
|
|
PasswordChangeDoneScreenText password_change_done_text = 22;
|
|
PasswordResetDoneScreenText password_reset_done_text = 23;
|
|
RegistrationOptionScreenText registration_option_text = 24;
|
|
RegistrationUserScreenText registration_user_text = 25;
|
|
RegistrationOrgScreenText registration_org_text = 26;
|
|
LinkingUserDoneScreenText linking_user_done_text = 27;
|
|
ExternalUserNotFoundScreenText external_user_not_found_text = 28;
|
|
SuccessLoginScreenText success_login_text = 29;
|
|
LogoutDoneScreenText logout_text = 30;
|
|
FooterText footer_text = 31;
|
|
PasswordlessPromptScreenText passwordless_prompt_text = 32;
|
|
PasswordlessRegistrationScreenText passwordless_registration_text = 33;
|
|
PasswordlessRegistrationDoneScreenText passwordless_registration_done_text = 34;
|
|
ExternalRegistrationUserOverviewScreenText external_registration_user_overview_text = 35;
|
|
bool is_default = 36;
|
|
// Deprecated: the linking user prompt screen no longer exists
|
|
zitadel.text.v1.LinkingUserPromptScreenText linking_user_prompt_text = 37 [deprecated = true];
|
|
}
|
|
|
|
message SelectAccountScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string title_linking_process = 3 [(validate.rules).string = {max_len: 200}];
|
|
string description_linking_process = 4 [(validate.rules).string = {max_len: 500}];
|
|
string other_user = 5 [(validate.rules).string = {max_len: 500}];
|
|
string session_state_active = 6 [(validate.rules).string = {max_len: 100}];
|
|
string session_state_inactive = 7 [(validate.rules).string = {max_len: 100}];
|
|
string user_must_be_member_of_org = 8 [(validate.rules).string = {max_len: 500}];
|
|
}
|
|
|
|
message LoginScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string title_linking_process = 3 [(validate.rules).string = {max_len: 200}];
|
|
string description_linking_process = 4 [(validate.rules).string = {max_len: 500}];
|
|
string user_must_be_member_of_org = 5 [(validate.rules).string = {max_len: 500}];
|
|
string login_name_label = 6 [(validate.rules).string = {max_len: 200}];
|
|
string register_button_text = 7 [(validate.rules).string = {max_len: 100}];
|
|
string next_button_text = 8 [(validate.rules).string = {max_len: 100}];
|
|
string external_user_description = 9 [(validate.rules).string = {max_len: 500}];
|
|
string user_name_placeholder = 10 [(validate.rules).string = {max_len: 200}];
|
|
string login_name_placeholder = 11 [(validate.rules).string = {max_len: 200}];
|
|
}
|
|
|
|
message PasswordScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string password_label = 3 [(validate.rules).string = {max_len: 200}];
|
|
string reset_link_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
string back_button_text = 5 [(validate.rules).string = {max_len: 100}];
|
|
string next_button_text = 6 [(validate.rules).string = {max_len: 100}];
|
|
string min_length = 7 [(validate.rules).string = {max_len: 100}];
|
|
string has_uppercase = 8 [(validate.rules).string = {max_len: 100}];
|
|
string has_lowercase = 9 [(validate.rules).string = {max_len: 100}];
|
|
string has_number = 10 [(validate.rules).string = {max_len: 100}];
|
|
string has_symbol = 11 [(validate.rules).string = {max_len: 100}];
|
|
string confirmation = 12 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message UsernameChangeScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string username_label = 3 [(validate.rules).string = {max_len: 200}];
|
|
string cancel_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
string next_button_text = 5 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message UsernameChangeDoneScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string next_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message InitPasswordScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string code_label = 3 [(validate.rules).string = {max_len: 200}];
|
|
string new_password_label = 4 [(validate.rules).string = {max_len: 200}];
|
|
string new_password_confirm_label = 5 [(validate.rules).string = {max_len: 200}];
|
|
string next_button_text = 6 [(validate.rules).string = {max_len: 100}];
|
|
string resend_button_text = 7 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message InitPasswordDoneScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string next_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
string cancel_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message EmailVerificationScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string code_label = 3 [(validate.rules).string = {max_len: 200}];
|
|
string next_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
string resend_button_text = 5 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message EmailVerificationDoneScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string next_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
string cancel_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
string login_button_text = 5 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message InitializeUserScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string code_label = 3 [(validate.rules).string = {max_len: 200}];
|
|
string new_password_label = 4 [(validate.rules).string = {max_len: 200}];
|
|
string new_password_confirm_label = 5 [(validate.rules).string = {max_len: 200}];
|
|
string resend_button_text = 6 [(validate.rules).string = {max_len: 100}];
|
|
string next_button_text = 7 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message InitializeUserDoneScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string cancel_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
string next_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message InitMFAPromptScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string otp_option = 3 [(validate.rules).string = {max_len: 200}];
|
|
string u2f_option = 4 [(validate.rules).string = {max_len: 200}];
|
|
string skip_button_text = 5 [(validate.rules).string = {max_len: 100}];
|
|
string next_button_text = 6 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message InitMFAOTPScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string description_otp = 3 [(validate.rules).string = {max_len: 500}];
|
|
string secret_label = 4 [(validate.rules).string = {max_len: 200}];
|
|
string code_label = 5 [(validate.rules).string = {max_len: 200}];
|
|
string next_button_text = 6 [(validate.rules).string = {max_len: 100}];
|
|
string cancel_button_text = 7 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message InitMFAU2FScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string token_name_label = 3 [(validate.rules).string = {max_len: 200}];
|
|
string not_supported = 4 [(validate.rules).string = {max_len: 500}];
|
|
string register_token_button_text = 5 [(validate.rules).string = {max_len: 100}];
|
|
string error_retry = 6 [(validate.rules).string = {max_len: 500}];
|
|
}
|
|
|
|
message InitMFADoneScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string cancel_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
string next_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message MFAProvidersText {
|
|
string choose_other = 1 [(validate.rules).string = {max_len: 500}];
|
|
string otp = 2 [(validate.rules).string = {max_len: 200}];
|
|
string u2f = 3 [(validate.rules).string = {max_len: 200}];
|
|
}
|
|
|
|
message VerifyMFAOTPScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string code_label = 3 [(validate.rules).string = {max_len: 200}];
|
|
string next_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message VerifyMFAU2FScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string validate_token_text = 3 [(validate.rules).string = {max_len: 500}];
|
|
string not_supported = 4 [(validate.rules).string = {max_len: 500}];
|
|
string error_retry = 5 [(validate.rules).string = {max_len: 500}];
|
|
}
|
|
|
|
message PasswordlessScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string login_with_pw_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
string validate_token_button_text = 4 [(validate.rules).string = {max_len: 200}];
|
|
string not_supported = 5 [(validate.rules).string = {max_len: 500}];
|
|
string error_retry = 6 [(validate.rules).string = {max_len: 500}];
|
|
}
|
|
|
|
message PasswordChangeScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string old_password_label = 3 [(validate.rules).string = {max_len: 200}];
|
|
string new_password_label = 4 [(validate.rules).string = {max_len: 200}];
|
|
string new_password_confirm_label = 5 [(validate.rules).string = {max_len: 200}];
|
|
string cancel_button_text = 6 [(validate.rules).string = {max_len: 100}];
|
|
string next_button_text = 7 [(validate.rules).string = {max_len: 100}];
|
|
string expired_description = 8 [(validate.rules).string = {max_len: 500}];
|
|
}
|
|
|
|
message PasswordChangeDoneScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string next_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message PasswordResetDoneScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string next_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message RegistrationOptionScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string user_name_button_text = 3 [(validate.rules).string = {max_len: 200}];
|
|
string external_login_description = 4 [(validate.rules).string = {max_len: 500}];
|
|
string login_button_text = 5 [(validate.rules).string = {max_len: 200}];
|
|
}
|
|
|
|
message RegistrationUserScreenText {
|
|
reserved 14, 17, 19, 22;
|
|
reserved "tos_link", "privacy_link", "external_login_description", "tos_confirm_and";
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string description_org_register = 3 [(validate.rules).string = {max_len: 500}];
|
|
string firstname_label = 4 [(validate.rules).string = {max_len: 200}];
|
|
string lastname_label = 5 [(validate.rules).string = {max_len: 200}];
|
|
string email_label = 6 [(validate.rules).string = {max_len: 200}];
|
|
string username_label = 7 [(validate.rules).string = {max_len: 200}];
|
|
string language_label = 8 [(validate.rules).string = {max_len: 200}];
|
|
string gender_label = 9 [(validate.rules).string = {max_len: 200}];
|
|
string password_label = 10 [(validate.rules).string = {max_len: 200}];
|
|
string password_confirm_label = 11 [(validate.rules).string = {max_len: 200}];
|
|
string tos_and_privacy_label = 12 [(validate.rules).string = {max_len: 200}];
|
|
string tos_confirm = 13 [(validate.rules).string = {max_len: 200}];
|
|
string tos_link_text = 15 [(validate.rules).string = {max_len: 200}];
|
|
string privacy_confirm = 16 [(validate.rules).string = {max_len: 200}];
|
|
string privacy_link_text = 18 [(validate.rules).string = {max_len: 200}];
|
|
string next_button_text = 20 [(validate.rules).string = {max_len: 200}];
|
|
string back_button_text = 21 [(validate.rules).string = {max_len: 200}];
|
|
}
|
|
|
|
message ExternalRegistrationUserOverviewScreenText {
|
|
reserved 13;
|
|
reserved "tos_confirm_and";
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string email_label = 3 [(validate.rules).string = {max_len: 200}];
|
|
string username_label = 4 [(validate.rules).string = {max_len: 200}];
|
|
string firstname_label = 5 [(validate.rules).string = {max_len: 200}];
|
|
string lastname_label = 6 [(validate.rules).string = {max_len: 200}];
|
|
string nickname_label = 7 [(validate.rules).string = {max_len: 200}];
|
|
string language_label = 8 [(validate.rules).string = {max_len: 200}];
|
|
string phone_label = 9 [(validate.rules).string = {max_len: 200}];
|
|
string tos_and_privacy_label = 10 [(validate.rules).string = {max_len: 200}];
|
|
string tos_confirm = 11 [(validate.rules).string = {max_len: 200}];
|
|
string tos_link_text = 12 [(validate.rules).string = {max_len: 200}];
|
|
string privacy_link_text = 14 [(validate.rules).string = {max_len: 200}];
|
|
string back_button_text = 15 [(validate.rules).string = {max_len: 200}];
|
|
string next_button_text = 16 [(validate.rules).string = {max_len: 200}];
|
|
string privacy_confirm = 17 [(validate.rules).string = {max_len: 200}];
|
|
}
|
|
|
|
message RegistrationOrgScreenText {
|
|
reserved 13, 16, 18, 20;
|
|
reserved "tos_link", "privacy_link", "external_login_description", "tos_confirm_and";
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string orgname_label = 3 [(validate.rules).string = {max_len: 200}];
|
|
string firstname_label = 4 [(validate.rules).string = {max_len: 200}];
|
|
string lastname_label = 5 [(validate.rules).string = {max_len: 200}];
|
|
string username_label = 6 [(validate.rules).string = {max_len: 200}];
|
|
string email_label = 7 [(validate.rules).string = {max_len: 200}];
|
|
string password_label = 9 [(validate.rules).string = {max_len: 200}];
|
|
string password_confirm_label = 10 [(validate.rules).string = {max_len: 200}];
|
|
string tos_and_privacy_label = 11 [(validate.rules).string = {max_len: 200}];
|
|
string tos_confirm = 12 [(validate.rules).string = {max_len: 200}];
|
|
string tos_link_text = 14 [(validate.rules).string = {max_len: 200}];
|
|
string privacy_confirm = 15 [(validate.rules).string = {max_len: 200}];
|
|
string privacy_link_text = 17 [(validate.rules).string = {max_len: 200}];
|
|
string save_button_text = 19 [(validate.rules).string = {max_len: 200}];
|
|
}
|
|
|
|
message LinkingUserPromptScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string link_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
string other_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message LinkingUserDoneScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string cancel_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
string next_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message ExternalUserNotFoundScreenText {
|
|
reserved 9;
|
|
reserved "tos_confirm_and";
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string link_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
string auto_register_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
string tos_and_privacy_label = 5 [(validate.rules).string = {max_len: 200}];
|
|
string tos_confirm = 6 [(validate.rules).string = {max_len: 200}];
|
|
string tos_link_text = 7 [(validate.rules).string = {max_len: 200}];
|
|
string privacy_link_text = 8 [(validate.rules).string = {max_len: 200}];
|
|
string privacy_confirm = 10 [(validate.rules).string = {max_len: 200}];
|
|
}
|
|
|
|
message SuccessLoginScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
// Text to describe that auto-redirect should happen after successful login
|
|
string auto_redirect_description = 2 [(validate.rules).string = {max_len: 500}];
|
|
// Text to describe that the window can be closed after redirect
|
|
string redirected_description = 3 [(validate.rules).string = {max_len: 100}];
|
|
string next_button_text = 4 [(validate.rules).string = {max_len: 200}];
|
|
}
|
|
|
|
message LogoutDoneScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string login_button_text = 3 [(validate.rules).string = {max_len: 200}];
|
|
}
|
|
|
|
message FooterText {
|
|
reserved 2, 4, 6, 8;
|
|
reserved "tos_link", "privacy_policy_link", "help_link";
|
|
string tos = 1 [(validate.rules).string = {max_len: 200}];
|
|
string privacy_policy = 3 [(validate.rules).string = {max_len: 200}];
|
|
string help = 5 [(validate.rules).string = {max_len: 200}];
|
|
string support_email = 7 [(validate.rules).string = {max_len: 200}];
|
|
}
|
|
|
|
message PasswordlessPromptScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string description_init = 3 [(validate.rules).string = {max_len: 500}];
|
|
string passwordless_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
string next_button_text = 5 [(validate.rules).string = {max_len: 100}];
|
|
string skip_button_text = 6 [(validate.rules).string = {max_len: 100}];
|
|
}
|
|
|
|
message PasswordlessRegistrationScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string token_name_label = 3 [(validate.rules).string = {max_len: 200}];
|
|
string not_supported = 4 [(validate.rules).string = {max_len: 500}];
|
|
string register_token_button_text = 5 [(validate.rules).string = {max_len: 100}];
|
|
string error_retry = 6 [(validate.rules).string = {max_len: 500}];
|
|
}
|
|
|
|
message PasswordlessRegistrationDoneScreenText {
|
|
string title = 1 [(validate.rules).string = {max_len: 200}];
|
|
string description = 2 [(validate.rules).string = {max_len: 500}];
|
|
string next_button_text = 3 [(validate.rules).string = {max_len: 100}];
|
|
string cancel_button_text = 4 [(validate.rules).string = {max_len: 100}];
|
|
string description_close = 5 [(validate.rules).string = {max_len: 100}];
|
|
}
|