Locallazy: Convert even more strings (#11679)
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
This commit is contained in:
parent
8d289544b3
commit
9a76d6b9a3
82 changed files with 6216 additions and 5101 deletions
|
@ -48,7 +48,9 @@ export default class AudioPlayer extends AudioPlayerBase {
|
|||
ref={this.playPauseRef}
|
||||
/>
|
||||
<div className="mx_AudioPlayer_mediaInfo">
|
||||
<span className="mx_AudioPlayer_mediaName">{this.props.mediaName || _t("Unnamed audio")}</span>
|
||||
<span className="mx_AudioPlayer_mediaName">
|
||||
{this.props.mediaName || _t("timeline|m.audio|unnamed_audio")}
|
||||
</span>
|
||||
<div className="mx_AudioPlayer_byline">
|
||||
<DurationClock playback={this.props.playback} />
|
||||
{/* easiest way to introduce a gap between the components */}
|
||||
|
|
|
@ -98,7 +98,9 @@ export default abstract class AudioPlayerBase<T extends IProps = IProps> extends
|
|||
return (
|
||||
<>
|
||||
{this.renderComponent()}
|
||||
{this.state.error && <div className="text-warning">{_t("Error downloading audio")}</div>}
|
||||
{this.state.error && (
|
||||
<div className="text-warning">{_t("timeline|m.audio|error_downloading_audio")}</div>
|
||||
)}
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
|
|
@ -130,7 +130,7 @@ export default class CaptchaForm extends React.Component<ICaptchaFormProps, ICap
|
|||
|
||||
return (
|
||||
<div ref={this.recaptchaContainer}>
|
||||
<p>{_t("This homeserver would like to make sure you are not a robot.")}</p>
|
||||
<p>{_t("auth|captcha_description")}</p>
|
||||
<div id={DIV_ID} />
|
||||
{error}
|
||||
</div>
|
||||
|
|
|
@ -174,7 +174,7 @@ export default class CountryDropdown extends React.Component<IProps, IState> {
|
|||
value={value}
|
||||
searchEnabled={true}
|
||||
disabled={this.props.disabled}
|
||||
label={_t("Country Dropdown")}
|
||||
label={_t("auth|country_dropdown")}
|
||||
autoComplete="tel-country-code"
|
||||
>
|
||||
{options}
|
||||
|
|
|
@ -679,7 +679,7 @@ export class MsisdnAuthEntry extends React.Component<IMsisdnAuthEntryProps, IMsi
|
|||
className="mx_InteractiveAuthEntryComponents_msisdnEntry"
|
||||
value={this.state.token}
|
||||
onChange={this.onTokenChange}
|
||||
aria-label={_t("Code")}
|
||||
aria-label={_t("auth|uia|code")}
|
||||
/>
|
||||
<br />
|
||||
<input
|
||||
|
|
|
@ -126,7 +126,7 @@ export default class LoginWithQR extends React.Component<IProps, IState> {
|
|||
|
||||
const { login_token: loginToken } = await wrapRequestWithDialog(this.props.client.requestLoginToken, {
|
||||
matrixClient: this.props.client,
|
||||
title: _t("Sign in new device"),
|
||||
title: _t("auth|qr_code_login|sign_in_new_device"),
|
||||
})();
|
||||
|
||||
this.setState({ phase: Phase.WaitingForDevice });
|
||||
|
|
|
@ -82,34 +82,34 @@ export default class LoginWithQRFlow extends React.Component<IProps> {
|
|||
case Phase.Error:
|
||||
switch (this.props.failureReason) {
|
||||
case RendezvousFailureReason.Expired:
|
||||
cancellationMessage = _t("The linking wasn't completed in the required time.");
|
||||
cancellationMessage = _t("auth|qr_code_login|error_linking_incomplete");
|
||||
break;
|
||||
case RendezvousFailureReason.InvalidCode:
|
||||
cancellationMessage = _t("The scanned code is invalid.");
|
||||
cancellationMessage = _t("auth|qr_code_login|error_invalid_scanned_code");
|
||||
break;
|
||||
case RendezvousFailureReason.UnsupportedAlgorithm:
|
||||
cancellationMessage = _t("Linking with this device is not supported.");
|
||||
cancellationMessage = _t("auth|qr_code_login|error_device_unsupported");
|
||||
break;
|
||||
case RendezvousFailureReason.UserDeclined:
|
||||
cancellationMessage = _t("The request was declined on the other device.");
|
||||
cancellationMessage = _t("auth|qr_code_login|error_request_declined");
|
||||
break;
|
||||
case RendezvousFailureReason.OtherDeviceAlreadySignedIn:
|
||||
cancellationMessage = _t("The other device is already signed in.");
|
||||
cancellationMessage = _t("auth|qr_code_login|error_device_already_signed_in");
|
||||
break;
|
||||
case RendezvousFailureReason.OtherDeviceNotSignedIn:
|
||||
cancellationMessage = _t("The other device isn't signed in.");
|
||||
cancellationMessage = _t("auth|qr_code_login|error_device_not_signed_in");
|
||||
break;
|
||||
case RendezvousFailureReason.UserCancelled:
|
||||
cancellationMessage = _t("The request was cancelled.");
|
||||
cancellationMessage = _t("auth|qr_code_login|error_request_cancelled");
|
||||
break;
|
||||
case RendezvousFailureReason.Unknown:
|
||||
cancellationMessage = _t("An unexpected error occurred.");
|
||||
cancellationMessage = _t("auth|qr_code_login|error_unexpected");
|
||||
break;
|
||||
case RendezvousFailureReason.HomeserverLacksSupport:
|
||||
cancellationMessage = _t("The homeserver doesn't support signing in another device.");
|
||||
cancellationMessage = _t("auth|qr_code_login|error_homeserver_lacks_support");
|
||||
break;
|
||||
default:
|
||||
cancellationMessage = _t("The request was cancelled.");
|
||||
cancellationMessage = _t("auth|qr_code_login|error_request_cancelled");
|
||||
break;
|
||||
}
|
||||
title = _t("Connection failed");
|
||||
|
@ -131,20 +131,18 @@ export default class LoginWithQRFlow extends React.Component<IProps> {
|
|||
);
|
||||
break;
|
||||
case Phase.Connected:
|
||||
title = _t("Devices connected");
|
||||
title = _t("auth|qr_code_login|devices_connected");
|
||||
titleIcon = <DevicesIcon className="normal" />;
|
||||
backButton = false;
|
||||
main = (
|
||||
<>
|
||||
<p>{_t("Check that the code below matches with your other device:")}</p>
|
||||
<p>{_t("auth|qr_code_login|confirm_code_match")}</p>
|
||||
<div className="mx_LoginWithQR_confirmationDigits">{this.props.confirmationDigits}</div>
|
||||
<div className="mx_LoginWithQR_confirmationAlert">
|
||||
<div>
|
||||
<InfoIcon />
|
||||
</div>
|
||||
<div>
|
||||
{_t("By approving access for this device, it will have full access to your account.")}
|
||||
</div>
|
||||
<div>{_t("auth|qr_code_login|approve_access_warning")}</div>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
|
@ -181,15 +179,15 @@ export default class LoginWithQRFlow extends React.Component<IProps> {
|
|||
);
|
||||
main = (
|
||||
<>
|
||||
<p>{_t("Scan the QR code below with your device that's signed out.")}</p>
|
||||
<p>{_t("auth|qr_code_login|scan_code_instruction")}</p>
|
||||
<ol>
|
||||
<li>{_t("Start at the sign in screen")}</li>
|
||||
<li>{_t("auth|qr_code_login|start_at_sign_in_screen")}</li>
|
||||
<li>
|
||||
{_t("Select '%(scanQRCode)s'", {
|
||||
scanQRCode: _t("Scan QR code"),
|
||||
{_t("auth|qr_code_login|select_qr_code", {
|
||||
scanQRCode: _t("auth|qr_code_login|scan_qr_code"),
|
||||
})}
|
||||
</li>
|
||||
<li>{_t("Review and approve the sign in")}</li>
|
||||
<li>{_t("auth|qr_code_login|review_and_approve")}</li>
|
||||
</ol>
|
||||
{code}
|
||||
</>
|
||||
|
@ -203,17 +201,17 @@ export default class LoginWithQRFlow extends React.Component<IProps> {
|
|||
main = this.simpleSpinner();
|
||||
break;
|
||||
case Phase.Connecting:
|
||||
main = this.simpleSpinner(_t("Connecting…"));
|
||||
main = this.simpleSpinner(_t("auth|qr_code_login|connecting"));
|
||||
buttons = this.cancelButton();
|
||||
break;
|
||||
case Phase.WaitingForDevice:
|
||||
main = this.simpleSpinner(_t("Waiting for device to sign in"));
|
||||
main = this.simpleSpinner(_t("auth|qr_code_login|waiting_for_device"));
|
||||
buttons = this.cancelButton();
|
||||
break;
|
||||
case Phase.Verifying:
|
||||
title = _t("common|success");
|
||||
centreTitle = true;
|
||||
main = this.simpleSpinner(_t("Completing set up of your new device"));
|
||||
main = this.simpleSpinner(_t("auth|qr_code_login|completing_setup"));
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -107,7 +107,7 @@ const BaseAvatar: React.FC<IProps> = (props) => {
|
|||
inputRef,
|
||||
className,
|
||||
type = "round",
|
||||
altText = _t("Avatar"),
|
||||
altText = _t("common|avatar"),
|
||||
...otherProps
|
||||
} = props;
|
||||
|
||||
|
|
|
@ -61,7 +61,7 @@ enum Icon {
|
|||
function tooltipText(variant: Icon): string | undefined {
|
||||
switch (variant) {
|
||||
case Icon.Globe:
|
||||
return _t("This room is public");
|
||||
return _t("room|header|room_is_public");
|
||||
case Icon.PresenceOnline:
|
||||
return _t("presence|online");
|
||||
case Icon.PresenceAway:
|
||||
|
|
|
@ -116,7 +116,7 @@ const RoomLiveShareWarningInner: React.FC<RoomLiveShareWarningInnerProps> = ({ l
|
|||
{hasLocationPublishError && (
|
||||
<AccessibleButton
|
||||
data-testid="room-live-share-wire-error-close-button"
|
||||
title={_t("Stop and close")}
|
||||
title={_t("location_sharing|stop_and_close")}
|
||||
element="button"
|
||||
className="mx_RoomLiveShareWarning_closeButton"
|
||||
onClick={stopPropagationWrapper(onStopSharing)}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue