Fix 'Failed check: Ellipsis' on Weblate (#10144)

* Fix 'Failed check: Ellipsis' on Weblate

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Fix tests

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Remove white space characters before the horizontal ellipsis from RoomPreviewBar

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* yarn run i18n

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Additional change

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

---------

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>
This commit is contained in:
Suguru Hirahara 2023-02-14 09:05:01 +00:00 committed by GitHub
parent aded28ed25
commit ea4000cf1e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
48 changed files with 117 additions and 120 deletions

View file

@ -654,7 +654,7 @@ const ManageButtons: React.FC<IManageButtonsProps> = ({ hierarchy, selected, set
};
}
let buttonText = _t("Saving...");
let buttonText = _t("Saving");
if (!saving) {
buttonText = selectionAllSuggested ? _t("Mark as not suggested") : _t("Mark as suggested");
}
@ -694,7 +694,7 @@ const ManageButtons: React.FC<IManageButtonsProps> = ({ hierarchy, selected, set
kind="danger_outline"
disabled={disabled}
>
{removing ? _t("Removing...") : _t("Remove")}
{removing ? _t("Removing") : _t("Remove")}
</Button>
<Button
{...props}

View file

@ -366,7 +366,7 @@ const SpaceSetupFirstRooms: React.FC<{
let buttonLabel = _t("Skip for now");
if (roomNames.some((name) => name.trim())) {
onClick = onNextClick;
buttonLabel = busy ? _t("Creating rooms...") : _t("Continue");
buttonLabel = busy ? _t("Creating rooms") : _t("Continue");
}
return (
@ -575,7 +575,7 @@ const SpaceSetupPrivateInvite: React.FC<{
let buttonLabel = _t("Skip for now");
if (emailAddresses.some((name) => name.trim())) {
onClick = onNextClick;
buttonLabel = busy ? _t("Inviting...") : _t("Continue");
buttonLabel = busy ? _t("Inviting") : _t("Continue");
}
return (

View file

@ -594,7 +594,7 @@ export default class LoginComponent extends React.PureComponent<IProps, IState>
<div className="mx_AuthBody_paddedFooter">
<div className="mx_AuthBody_paddedFooter_title">
<InlineSpinner w={20} h={20} />
{this.props.isSyncing ? _t("Syncing...") : _t("Signing In...")}
{this.props.isSyncing ? _t("Syncing…") : _t("Signing In…")}
</div>
{this.props.isSyncing && (
<div className="mx_AuthBody_paddedFooter_subtitle">

View file

@ -203,7 +203,7 @@ export default class LoginWithQRFlow extends React.Component<IProps> {
main = this.simpleSpinner();
break;
case Phase.Connecting:
main = this.simpleSpinner(_t("Connecting..."));
main = this.simpleSpinner(_t("Connecting"));
buttons = this.cancelButton();
break;
case Phase.WaitingForDevice:

View file

@ -88,7 +88,7 @@ class PassphraseField extends PureComponent<IProps> {
return null;
}
const { feedback } = complexity;
return feedback.warning || feedback.suggestions[0] || _t("Keep going...");
return feedback.warning || feedback.suggestions[0] || _t("Keep going");
},
},
],

View file

@ -61,7 +61,7 @@ const BeaconStatus: React.FC<Props & HTMLProps<HTMLDivElement>> = ({
)}
<div className="mx_BeaconStatus_description">
{displayStatus === BeaconDisplayStatus.Loading && (
<span className="mx_BeaconStatus_description_status">{_t("Loading live location...")}</span>
<span className="mx_BeaconStatus_description_status">{_t("Loading live location")}</span>
)}
{displayStatus === BeaconDisplayStatus.Stopped && (
<span className="mx_BeaconStatus_description_status">{_t("Live location ended")}</span>

View file

@ -179,7 +179,7 @@ const CreateSubspaceDialog: React.FC<IProps> = ({ space, onAddExistingSpaceClick
{_t("Cancel")}
</AccessibleButton>
<AccessibleButton kind="primary" disabled={busy} onClick={onCreateSubspaceClick}>
{busy ? _t("Adding...") : _t("Add")}
{busy ? _t("Adding") : _t("Add")}
</AccessibleButton>
</div>
</MatrixClientContext.Provider>

View file

@ -188,7 +188,7 @@ export default class DeactivateAccountDialog extends React.Component<IProps, ISt
error = <div className="error">{this.state.errStr}</div>;
}
let auth = <div>{_t("Loading...")}</div>;
let auth = <div>{_t("Loading")}</div>;
if (this.state.authData && this.state.authEnabled) {
auth = (
<div>

View file

@ -106,7 +106,7 @@ const ExportDialog: React.FC<IProps> = ({ room, onFinished }) => {
const [isExporting, setExporting] = useState(false);
const sizeLimitRef = useRef<Field>();
const messageCountRef = useRef<Field>();
const [exportProgressText, setExportProgressText] = useState(_t("Processing..."));
const [exportProgressText, setExportProgressText] = useState(_t("Processing"));
const [displayCancel, setCancelWarning] = useState(false);
const [exportCancelled, setExportCancelled] = useState(false);
const [exportSuccessful, setExportSuccessful] = useState(false);

View file

@ -243,7 +243,7 @@ export default class IncomingSasDialog extends React.Component<IProps, IState> {
return (
<div>
<Spinner />
<p>{_t("Waiting for partner to confirm...")}</p>
<p>{_t("Waiting for partner to confirm")}</p>
</div>
);
}

View file

@ -78,7 +78,7 @@ export const SlidingSyncOptionsDialog: React.FC<IDialogProps> = ({ onFinished })
let nativeSupport: string;
if (hasNativeSupport === null) {
nativeSupport = _t("Checking...");
nativeSupport = _t("Checking");
} else {
nativeSupport = hasNativeSupport
? _t("Your server has native support")

View file

@ -49,7 +49,7 @@ export default class TextInputDialog extends React.Component<IProps, IState> {
title: "",
value: "",
description: "",
busyMessage: _td("Loading..."),
busyMessage: _td("Loading"),
focus: true,
hasCancel: true,
};

View file

@ -321,12 +321,12 @@ export default class RestoreKeyBackupDialog extends React.PureComponent<IProps,
title = _t("Restoring keys from backup");
let details;
if (this.state.progress.stage === ProgressState.Fetch) {
details = _t("Fetching keys from server...");
details = _t("Fetching keys from server");
} else if (this.state.progress.stage === ProgressState.LoadKeys) {
const { total, successes, failures } = this.state.progress;
details = _t("%(completed)s of %(total)s keys restored", { total, completed: successes + failures });
} else if (this.state.progress.stage === ProgressState.PreFetch) {
details = _t("Fetching keys from server...");
details = _t("Fetching keys from server");
}
content = (
<div>

View file

@ -569,7 +569,7 @@ export default class AppTile extends React.Component<IProps, IState> {
const loadingElement = (
<div className="mx_AppLoading_spinner_fadeIn">
<Spinner message={_t("Loading...")} />
<Spinner message={_t("Loading")} />
</div>
);

View file

@ -36,7 +36,7 @@ export default class InlineSpinner extends React.PureComponent<IProps> {
<div
className="mx_InlineSpinner_icon mx_Spinner_icon"
style={{ width: this.props.w, height: this.props.h }}
aria-label={_t("Loading...")}
aria-label={_t("Loading")}
>
{this.props.children}
</div>

View file

@ -208,7 +208,7 @@ export default class PollCreateDialog extends ScrollableBaseModal<IProps, IState
value={this.state.question}
maxLength={MAX_QUESTION_LENGTH}
label={_t("Question or topic")}
placeholder={_t("Write something...")}
placeholder={_t("Write something")}
onChange={this.onQuestionChange}
usePlaceholderAsHint={true}
disabled={this.state.busy}

View file

@ -42,7 +42,7 @@ export default class Spinner extends React.PureComponent<IProps> {
<div
className="mx_Spinner_icon"
style={{ width: w, height: h }}
aria-label={_t("Loading...")}
aria-label={_t("Loading")}
role="progressbar"
data-testid="spinner"
/>

View file

@ -151,7 +151,7 @@ export const DecryptionFailureBar: React.FC<IProps> = ({ failures }) => {
let body: JSX.Element;
let button = <React.Fragment />;
if (waiting) {
headline = <React.Fragment>{_t("Decrypting messages...")}</React.Fragment>;
headline = <React.Fragment>{_t("Decrypting messages")}</React.Fragment>;
body = (
<React.Fragment>
{_t("Please wait as we try to decrypt your messages. This may take a few moments.")}

View file

@ -1520,9 +1520,9 @@ function SentReceipt({ messageState }: ISentReceiptProps): JSX.Element {
nonCssBadge = <NotificationBadge notification={StaticNotificationState.RED_EXCLAMATION} />;
}
let label = _t("Sending your message...");
let label = _t("Sending your message");
if (messageState === "encrypting") {
label = _t("Encrypting your message...");
label = _t("Encrypting your message");
} else if (isSent) {
label = _t("Your message was sent");
} else if (isFailed) {

View file

@ -290,21 +290,21 @@ export default class RoomPreviewBar extends React.Component<IProps, IState> {
switch (messageCase) {
case MessageCase.Joining: {
if (this.props.oobData?.roomType || isSpace) {
title = isSpace ? _t("Joining space …") : _t("Joining room …");
title = isSpace ? _t("Joining space…") : _t("Joining room…");
} else {
title = _t("Joining …");
title = _t("Joining…");
}
showSpinner = true;
break;
}
case MessageCase.Loading: {
title = _t("Loading …");
title = _t("Loading…");
showSpinner = true;
break;
}
case MessageCase.Rejecting: {
title = _t("Rejecting invite …");
title = _t("Rejecting invite…");
showSpinner = true;
break;
}

View file

@ -89,7 +89,7 @@ export default class IntegrationManager extends React.Component<IProps, IState>
if (this.props.loading) {
return (
<div className="mx_IntegrationManager_loading">
<Heading size="h3">{_t("Connecting to integration manager...")}</Heading>
<Heading size="h3">{_t("Connecting to integration manager")}</Heading>
<Spinner />
</div>
);

View file

@ -273,7 +273,7 @@ export default class SecureBackupPanel extends React.PureComponent<{}, IState> {
} else if (sessionsRemaining > 0) {
uploadStatus = (
<div>
{_t("Backing up %(sessionsRemaining)s keys...", { sessionsRemaining })} <br />
{_t("Backing up %(sessionsRemaining)s keys", { sessionsRemaining })} <br />
</div>
);
} else {

View file

@ -35,11 +35,11 @@ function getStatusText(status: UpdateCheckStatus, errorDetail?: string): ReactNo
case UpdateCheckStatus.Error:
return _t("Error encountered (%(errorDetail)s).", { errorDetail });
case UpdateCheckStatus.Checking:
return _t("Checking for an update...");
return _t("Checking for an update");
case UpdateCheckStatus.NotAvailable:
return _t("No update available.");
case UpdateCheckStatus.Downloading:
return _t("Downloading update...");
return _t("Downloading update");
case UpdateCheckStatus.Ready:
return _t(
"New version available. <a>Update now.</a>",

View file

@ -345,7 +345,7 @@ export default class GeneralUserSettingsTab extends React.Component<IProps, ISta
threepidSection = <Spinner />;
}
let passwordChangeText = _t("Set a new account password...");
let passwordChangeText = _t("Set a new account password");
if (!this.state.canChangePassword) {
// Just don't show anything if you can't do anything.
passwordChangeText = null;

View file

@ -344,7 +344,7 @@ const SpaceCreateMenu: React.FC<{
/>
<AccessibleButton kind="primary" onClick={onSpaceCreateClick} disabled={busy}>
{busy ? _t("Creating...") : _t("Create")}
{busy ? _t("Creating") : _t("Create")}
</AccessibleButton>
</React.Fragment>
);

View file

@ -123,7 +123,7 @@ const SpaceSettingsGeneralTab: React.FC<IProps> = ({ matrixClient: cli, space, o
{_t("Cancel")}
</AccessibleButton>
<AccessibleButton onClick={onSave} disabled={busy} kind="primary">
{busy ? _t("Saving...") : _t("Save Changes")}
{busy ? _t("Saving") : _t("Save Changes")}
</AccessibleButton>
</div>