Skip to content

Commit

Permalink
login: Translations
Browse files Browse the repository at this point in the history
  • Loading branch information
sirpengi committed Sep 29, 2023
1 parent 47144e6 commit 4a87936
Show file tree
Hide file tree
Showing 3 changed files with 330 additions and 76 deletions.
238 changes: 230 additions & 8 deletions assets/l10n/app_en.arb
Original file line number Diff line number Diff line change
Expand Up @@ -27,18 +27,26 @@
"@profileButtonSendDirectMessage": {
"description": "Label for button in profile screen to navigate to DMs with the shown user."
},
"cameraAccessDeniedTitle": "Permissions needed",
"@cameraAccessDeniedTitle": {
"description": "Title for dialog when the user needs to grant permissions for camera access."
"permissionsNeededError": "Error",
"@permissionsNeededError": {
"description": "General title for access dialog when we encounter an unknown error."
},
"cameraAccessDeniedMessage": "To upload an image, please grant Zulip additional permissions in Settings.",
"@cameraAccessDeniedMessage": {
"description": "Message for dialog when the user needs to grant permissions for camera access."
"permissionsNeededTitle": "Permissions needed",
"@permissionsNeededTitle": {
"description": "Title for dialog when the user needs to grant additional permissions."
},
"permissionsNeededOpenSettings": "Open settings",
"@permissionsNeededOpenSettings": {
"description": "Button label for permissions dialog button that opens the system settings screen."
},
"cameraAccessDeniedButtonText": "Open settings",
"@cameraAccessDeniedButtonText": {
"permissionsDeniedCameraAccess": "To upload an image, please grant Zulip additional permissions in Settings.",
"@permissionsDeniedCameraAccess": {
"description": "Message for dialog when the user needs to grant permissions for camera access."
},
"permissionsDeniedReadExternalStorage": "To upload files, please grant Zulip additional permissions in Settings.",
"@permissionsDeniedReadExternalStorage": {
"description": "Message for dialog when the user needs to grant permissions for external storage read access."
},
"actionSheetOptionCopy": "Copy message text",
"@actionSheetOptionCopy": {
"description": "Label for copy message text button on action sheet."
Expand All @@ -59,6 +67,63 @@
"@errorCopyingFailed": {
"description": "Dialog message when copying the text of a message to the users system clipboard failed."
},
"errorFailedToUploadFile": "Failed to upload file: {filename}",
"@errorFailedToUploadFile": {
"description": "Label in compose box showing the specified file failed to upload.",
"placeholders": {
"filename": {"type": "String", "example": "file.txt"}
}
},
"errorFilesTooLarge": "{num, plural, =1{File is} other{{num} files are}} larger than the server's limit of {maxFileUploadSizeMib} MiB and will not be uploaded:\n\n{listMessage}",
"@errorFilesTooLarge": {
"description": "Error message when attached files are too large in size.",
"placeholders": {
"num": {"type": "int", "example": "2"},
"maxFileUploadSizeMib": {"type": "int", "example": "15"},
"listMessage": {"type": "String", "example": "foo.txt\nbar.txt"}
}
},
"errorFilesTooLargeTitle": "{num, plural, =1{File} other{Files}} too large",
"@errorFilesTooLargeTitle": {
"description": "Error title when attached files are too large in size.",
"placeholders": {
"num": {"type": "int", "example": "4"}
}
},
"errorLoginInvalidInputTitle": "Invalid input",
"@errorLoginInvalidInputTitle": {
"description": "Error dialog title for login dialog when input is invalid."
},
"errorLoginFailed": "Login failed",
"@errorLoginFailed": {
"description": "Error dialog title when login for a Zulip server fails."
},
"errorMessageNotSent": "Message not sent",
"@errorMessageNotSent": {
"description": "Message for compose box when a message could not be sent."
},
"errorMessageDoesNotSeemToExist": "That message does not seem to exist.",
"@errorMessageDoesNotSeemToExist": {
"description": "Error message when loading a message that does not exist."
},
"errorServerErrorMessage": "The server said:\n\n{message}",
"@errorServerErrorMessage": {
"description": "Error message that quotes an error from the server.",
"placeholders": {
"message": {"type": "String", "example": "Invalid format"}
}
},
"errorLoginCouldNotConnect": "Failed to connect to server:\n{url}",
"@errorLoginCouldNotConnect": {
"description": "Error message when the app could not connect to the server.",
"placeholders": {
"url": {"type": "String", "example": "http://example.com/"}
}
},
"errorLoginCouldNotConnectTitle": "Could not connect",
"@errorLoginCouldNotConnectTitle": {
"description": "Error title when the app could not connect to the server."
},
"errorMessageDoesNotSeemToExist": "That message does not seem to exist.",
"@errorMessageDoesNotSeemToExist": {
"description": "Error message when loading a message that does not exist."
Expand All @@ -67,6 +132,13 @@
"@errorQuotationFailed": {
"description": "Error dialog message when quoting a message failed."
},
"errorServerMessage": "The server said:\n\n{message}",
"@errorServerMessage": {
"description": "Error message that quotes an error from the server.",
"placeholders": {
"message": {"type": "String", "example": "Invalid format"}
}
},
"successLinkCopied": "Link copied",
"@successLinkCopied": {
"description": "Success message after copy link action completed."
Expand All @@ -75,6 +147,80 @@
"@successMessageCopied": {
"description": "Dialog message when content of a message was copied to the users system clipboard."
},
"composeBoxAttachFilesTooltip": "Attach files",
"@composeBoxAttachFilesTooltip": {
"description": "Tooltip for compose box icon to attach a file to the message."
},
"composeBoxAttachMediaTooltip": "Attach images or videos",
"@composeBoxAttachMediaTooltip": {
"description": "Tooltip for compose box icon to attach media to the message."
},
"composeBoxAttachFromCameraTooltip": "Take a photo",
"@composeBoxAttachFromCameraTooltip": {
"description": "Tooltip for compose box icon to attach an image from the camera to the message."
},
"composeBoxSelfDmHint": "Jot down something",
"@composeBoxSelfDmHint": {
"description": "Hint text for content input when sending a message to yourself."
},
"composeBoxDmHintNoName": "Type a message",
"@composeBoxDmHintNoName": {
"description": "Hint text for content input when sending a message to one other person but we cannot determine their name."
},
"composeBoxDmHint": "Message @{user}",
"@composeBoxDmHint": {
"description": "Hint text for content input when sending a message to one other person.",
"placeholders": {
"user": {"type": "String", "example": "stream name"}
}
},
"composeBoxGroupDmHint": "Message group",
"@composeBoxGroupDmHint": {
"description": "Hint text for content input when sending a message to a group."
},
"composeBoxStreamContentHint": "Message #{stream} > ${topic}",
"@composeBoxStreamContentHint": {
"description": "Hint text for content input when sending a message to a stream",
"placeholders": {
"stream": {"type": "String", "example": "stream name"},
"topic": {"type": "String", "example": "topic name"}
}
},
"composeBoxSendTooltip": "Send",
"@composeBoxSendTooltip": {
"description": "Tooltip for send button in compose box."
},
"composeBoxUnknownStreamName": "(unknown stream)",
"@composeBoxUnknownStreamName": {
"description": "Replacement name for stream when it cannot be found in the store."
},
"composeBoxTopicHintText": "Topic",
"@composeBoxTopicHintText": {
"description": "Hint text for topic input widget in compose box."
},
"composeBoxUploadingFilename": "Uploading {filename}...",
"@composeBoxUploadingFilename": {
"description": "Label in compose box showing the specified file is currently uploading.",
"placeholders": {
"filename": {"type": "String", "example": "file.txt"}
}
},
"contentValidationErrorTooLong": "Message length shouldn't be greater than 10000 characters.",
"@contentValidationErrorTooLong": {
"description": "Content validation error message when the message is too long."
},
"contentValidationErrorEmpty": "You have nothing to send!",
"@contentValidationErrorEmpty": {
"description": "Content validation error message when the message is empty."
},
"contentValidationErrorQuoteAndReplyInProgress": "Please wait for the quotation to complete.",
"@contentValidationErrorQuoteAndReplyInProgress": {
"description": "Content validation error message when a quotation has not completed yet."
},
"contentValidationErrorUploadInProgress": "Please wait for the upload to complete.",
"@contentValidationErrorUploadInProgress": {
"description": "Content validation error message when attachments have not finished uploading."
},
"suggestedActionDialogCancel": "Cancel",
"@suggestedActionDialogCancel": {
"description": "Button label to cancel a suggested action."
Expand All @@ -87,10 +233,70 @@
"@errorDialogContinue": {
"description": "Button label in error dialogs to acknowledge error."
},
"errorDialogTitle": "Error",
"@errorDialogTitle": {
"description": "Generic title for error dialog."
},
"lightboxCopyLinkTooltip": "Copy link",
"@lightboxCopyLinkTooltip": {
"description": "Tooltip in lightbox for the copy link action."
},
"loginPageTitle": "Log in",
"@loginPageTitle": {
"description": "Page title for login page."
},
"loginFormSubmitLabel": "Log in",
"@loginFormSubmitLabel": {
"description": "Button text to submit login credentials."
},
"loginAddAnAccount": "Add an account",
"@loginAddAnAccount": {
"description": "Page title for screen to add a zulip account."
},
"loginAddAnAccountConfirm": "Continue",
"@loginAddAnAccountConfirm": {
"description": "Button label to submit form for adding an account."
},
"loginServerUrlInputLabel": "Your Zulip server URL",
"@loginServerUrlInputLabel": {
"description": "Input label in login page for Zulip server URL entry."
},
"loginHidePassword": "Hide password",
"@loginHidePassword": {
"description": "Icon label for button to hide password in input form."
},
"loginEmailLabel": "Email",
"@loginEmailLabel": {
"description": "Label for input when an email is required to login."
},
"loginErrorMissingEmail": "Please enter your email",
"@loginErrorMissingEmail": {
"description": "Error when an empty email was provided."
},
"loginPasswordLabel": "Password",
"@loginPasswordLabel": {
"description": "Label for input for password field."
},
"loginErrorMissingPassword": "Please enter your password",
"@loginErrorMissingPassword": {
"description": "Error when an empty password was provided."
},
"loginUsernameLabel": "Username",
"@loginUsernameLabel": {
"description": "Label for input when a username is required to login."
},
"loginErrorMissingUsername": "Please enter your username",
"@loginErrorMissingUsername": {
"description": "Error when an empty username was provided."
},
"topicValidationErrorTooLong": "Topic length shouldn't be greater than 60 characters.",
"@topicValidationErrorTooLong": {
"description": "Topic validation error when topic is too long."
},
"topicValidationErrorMandatoryButEmpty": "Topics are required in this organization.",
"@topicValidationErrorMandatoryButEmpty": {
"description": "Topic validation error when topic is required but was empty."
},
"subscribedToNStreams": "Subscribed to {num, plural, =0{no streams} =1{1 stream} other{{num} streams}}",
"@subscribedToNStreams": {
"description": "Test page label showing number of streams user is subscribed to.",
Expand All @@ -116,6 +322,22 @@
"httpStatus": {"type": "int", "example": "500"}
}
},
"serverUrlValidationErrorEmpty": "Please enter a URL.",
"@serverUrlValidationErrorEmpty": {
"description": "Server validation error message when URL is empty"
},
"serverUrlValidationErrorInvalidUrl": "Please enter a valid URL.",
"@serverUrlValidationErrorInvalidUrl": {
"description": "Server validation error message when URL is not in a valid format."
},
"serverUrlValidationErrorNoUseEmail": "Please enter the server URL, not your email.",
"@serverUrlValidationErrorNoUseEmail": {
"description": "Server validation error message when URL provided looks like an email"
},
"serverUrlValidationErrorUnsupportedScheme": "The server URL must start with http:// or https://.",
"@serverUrlValidationErrorUnsupportedScheme": {
"description": "Server validation error message when URL does not have a scheme defined."
},
"userRoleOwner": "Owner",
"@userRoleOwner": {
"description": "Label for UserRole.owner"
Expand Down
Loading

0 comments on commit 4a87936

Please sign in to comment.