mirror of
https://github.com/outline/outline.git
synced 2026-06-13 11:25:03 +03:00
04c3d81b1f
* shared * server * app * remove vestigial eslintrc files * update comment directives
143 lines
3.9 KiB
TypeScript
143 lines
3.9 KiB
TypeScript
/* oxlint-disable react/no-unescaped-entities */
|
||
import { WarningIcon } from "outline-icons";
|
||
import { Trans } from "react-i18next";
|
||
import Notice from "~/components/Notice";
|
||
import useQuery from "~/hooks/useQuery";
|
||
|
||
function Message({ notice }: { notice: string }) {
|
||
switch (notice) {
|
||
case "invalid-code":
|
||
return (
|
||
<Trans>Sorry, the code you entered is invalid or has expired.</Trans>
|
||
);
|
||
case "domain-not-allowed":
|
||
return (
|
||
<Trans>
|
||
The domain associated with your email address has not been allowed for
|
||
this workspace.
|
||
</Trans>
|
||
);
|
||
case "domain-required":
|
||
return (
|
||
<Trans>
|
||
Unable to sign-in. Please navigate to your workspace's custom URL,
|
||
then try to sign-in again.
|
||
<hr />
|
||
If you were invited to a workspace, you will find a link to it in the
|
||
invite email.
|
||
</Trans>
|
||
);
|
||
case "gmail-account-creation":
|
||
return (
|
||
<Trans>
|
||
Sorry, a new account cannot be created with a personal Gmail address.
|
||
<hr />
|
||
Please use a Google Workspaces account instead.
|
||
</Trans>
|
||
);
|
||
case "pending-deletion":
|
||
return (
|
||
<Trans>
|
||
The workspace associated with your user is scheduled for deletion and
|
||
cannot be accessed at this time.
|
||
</Trans>
|
||
);
|
||
case "maximum-reached":
|
||
return (
|
||
<Trans>
|
||
The workspace you authenticated with is not authorized on this
|
||
installation. Try another?
|
||
</Trans>
|
||
);
|
||
case "malformed-user-info":
|
||
return (
|
||
<Trans>
|
||
We could not read the user info supplied by your identity provider.
|
||
</Trans>
|
||
);
|
||
case "email-auth-required":
|
||
return (
|
||
<Trans>
|
||
Your account uses email sign-in, please sign-in with email to
|
||
continue.
|
||
</Trans>
|
||
);
|
||
case "email-auth-ratelimit":
|
||
return (
|
||
<Trans>
|
||
An email sign-in link was recently sent, please check your inbox or
|
||
try again in a few minutes.
|
||
</Trans>
|
||
);
|
||
case "auth-error":
|
||
case "state-mismatch":
|
||
return (
|
||
<Trans>
|
||
Authentication failed – we were unable to sign you in at this time.
|
||
Please try again.
|
||
</Trans>
|
||
);
|
||
case "invalid-authentication":
|
||
return (
|
||
<Trans>
|
||
Authentication failed – you do not have permission to access this
|
||
workspace.
|
||
</Trans>
|
||
);
|
||
case "expired-token":
|
||
return (
|
||
<Trans>
|
||
Sorry, it looks like that sign-in link is no longer valid, please try
|
||
requesting another.
|
||
</Trans>
|
||
);
|
||
case "user-suspended":
|
||
return (
|
||
<Trans>
|
||
Your account has been suspended. To re-activate your account, please
|
||
contact a workspace admin.
|
||
</Trans>
|
||
);
|
||
case "team-suspended":
|
||
return (
|
||
<Trans>
|
||
This workspace has been suspended. Please contact support to restore
|
||
access.
|
||
</Trans>
|
||
);
|
||
case "authentication-provider-disabled":
|
||
return (
|
||
<Trans>
|
||
Authentication failed – this login method was disabled by a workspace
|
||
admin.
|
||
</Trans>
|
||
);
|
||
case "invite-required":
|
||
return (
|
||
<Trans>
|
||
The workspace you are trying to join requires an invite before you can
|
||
create an account.
|
||
<hr />
|
||
Please request an invite from your workspace admin and try again.
|
||
</Trans>
|
||
);
|
||
default:
|
||
return <Trans>Sorry, an unknown error occurred.</Trans>;
|
||
}
|
||
}
|
||
|
||
export function Notices() {
|
||
const query = useQuery();
|
||
const notice = query.get("notice");
|
||
|
||
if (!notice) {
|
||
return null;
|
||
}
|
||
|
||
return (
|
||
<Notice icon={<WarningIcon color="currentcolor" />}>
|
||
<Message notice={notice} />
|
||
</Notice>
|
||
);
|
||
}
|