27 lines
1.1 KiB
TypeScript
27 lines
1.1 KiB
TypeScript
import { Droplets, RefreshCw } from "lucide-react";
|
|
import { Button } from "@/shared/ui/button";
|
|
|
|
export function AuthStartupScreen({ error }: { error?: boolean }) {
|
|
return (
|
|
<main className="grid min-h-[100dvh] place-items-center bg-slate-100 px-5 text-slate-900">
|
|
<section className="surface-reading w-full max-w-md p-6 text-center shadow-xl shadow-slate-900/5">
|
|
<span className="mx-auto grid h-11 w-11 place-items-center rounded-xl bg-blue-600 text-white">
|
|
<Droplets size={22} aria-hidden="true" />
|
|
</span>
|
|
<h1 className="mt-4 text-lg font-semibold">
|
|
{error ? "统一身份认证连接失败" : "正在连接统一身份认证"}
|
|
</h1>
|
|
<p className="mt-2 text-sm leading-6 text-slate-500">
|
|
{error ? "请检查网络或 Keycloak 配置后重试。" : "正在检查登录状态,请稍候。"}
|
|
</p>
|
|
{error ? (
|
|
<Button className="mt-5" onClick={() => window.location.reload()}>
|
|
<RefreshCw size={15} aria-hidden="true" />
|
|
重新连接
|
|
</Button>
|
|
) : null}
|
|
</section>
|
|
</main>
|
|
);
|
|
}
|