mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-01 04:42:10 +03:00
feat(home): remove Providers Overview card; rename API Manager → API Key Manager
- HomePageClient: remove tier coverage card (free/oauth/apikey breakdown) - i18n: update apiManager label to "API Key Manager" in 13 locales (EN + placeholders)
This commit is contained in:
@@ -718,79 +718,6 @@ export default function HomePageClient({ machineId }: HomePageClientProps) {
|
||||
</div>
|
||||
</Card>
|
||||
|
||||
{/* Tier Coverage */}
|
||||
<Card>
|
||||
<div className="flex items-center justify-between mb-3">
|
||||
<div>
|
||||
<h2 className="text-base font-semibold">{t("providersOverview")}</h2>
|
||||
<p className="text-xs text-text-muted">
|
||||
{t("configuredOf", {
|
||||
configured: providerStats.filter((item) => item.total > 0).length,
|
||||
total: providerStats.length,
|
||||
})}
|
||||
</p>
|
||||
</div>
|
||||
<Link
|
||||
href="/dashboard/providers"
|
||||
className="inline-flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-medium border border-border text-text-muted hover:text-text-main hover:bg-bg-subtle transition-colors"
|
||||
>
|
||||
<span className="material-symbols-outlined text-[14px]">settings</span>
|
||||
{tc("manage")}
|
||||
</Link>
|
||||
</div>
|
||||
|
||||
<div className="grid grid-cols-3 gap-3">
|
||||
{(
|
||||
[
|
||||
{
|
||||
key: "free",
|
||||
label: tc("free"),
|
||||
icon: "lock_open",
|
||||
color: "text-green-500",
|
||||
bg: "bg-green-500/8",
|
||||
border: "border-green-500/20",
|
||||
},
|
||||
{
|
||||
key: "oauth",
|
||||
label: t("oauthLabel"),
|
||||
icon: "login",
|
||||
color: "text-blue-500",
|
||||
bg: "bg-blue-500/8",
|
||||
border: "border-blue-500/20",
|
||||
},
|
||||
{
|
||||
key: "apikey",
|
||||
label: t("apiKeyLabel"),
|
||||
icon: "vpn_key",
|
||||
color: "text-amber-500",
|
||||
bg: "bg-amber-500/8",
|
||||
border: "border-amber-500/20",
|
||||
},
|
||||
] as const
|
||||
).map(({ key, label, icon, color, bg, border }) => {
|
||||
const all = providerStats.filter((p) => p.authType === key);
|
||||
const configured = all.filter((p) => p.total > 0);
|
||||
const connected = configured.filter((p) => p.connected > 0);
|
||||
return (
|
||||
<div
|
||||
key={key}
|
||||
className={`rounded-lg border ${border} ${bg} px-4 py-3 flex flex-col gap-1`}
|
||||
>
|
||||
<div className="flex items-center gap-1.5 mb-1">
|
||||
<span className={`material-symbols-outlined text-[15px] ${color}`}>{icon}</span>
|
||||
<span className={`text-xs font-semibold ${color}`}>{label}</span>
|
||||
</div>
|
||||
<p className="text-xl font-bold text-text-main leading-none">
|
||||
{connected.length}
|
||||
<span className="text-sm font-normal text-text-muted">/{all.length}</span>
|
||||
</p>
|
||||
<p className="text-[11px] text-text-muted">connected</p>
|
||||
</div>
|
||||
);
|
||||
})}
|
||||
</div>
|
||||
</Card>
|
||||
|
||||
{/* Provider Topology */}
|
||||
<Card>
|
||||
<div className="flex items-center justify-between mb-3">
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Docs",
|
||||
"issues": "Issues",
|
||||
"endpoints": "Endpoints",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Logs",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Audit Log",
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Dokumenter",
|
||||
"issues": "Problemer",
|
||||
"endpoints": "Endpoints",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Logs",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Revisionslog",
|
||||
|
||||
@@ -677,7 +677,7 @@
|
||||
"docs": "Docs",
|
||||
"issues": "Issues",
|
||||
"endpoints": "Endpoints",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Logs",
|
||||
"webhooks": "Webhooks",
|
||||
"auditLog": "Audit Log",
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Docs",
|
||||
"issues": "Issues",
|
||||
"endpoints": "Endpoints",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Logs",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Audit Log",
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Asiakirjat",
|
||||
"issues": "Ongelmat",
|
||||
"endpoints": "Päätepisteet",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Lokit",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Tarkastusloki",
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Docs",
|
||||
"issues": "Issues",
|
||||
"endpoints": "Endpoints",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Logs",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Audit Log",
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Docs",
|
||||
"issues": "Issues",
|
||||
"endpoints": "Endpoints",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Logs",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Audit Log",
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Docs",
|
||||
"issues": "Issues",
|
||||
"endpoints": "Endpoints",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Logs",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Audit Log",
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Docs",
|
||||
"issues": "Problémy",
|
||||
"endpoints": "Koncové body",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Denníky",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Audit Log",
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Docs",
|
||||
"issues": "Issues",
|
||||
"endpoints": "Endpoints",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Logs",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Audit Log",
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Docs",
|
||||
"issues": "Issues",
|
||||
"endpoints": "Endpoints",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Logs",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Audit Log",
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Docs",
|
||||
"issues": "Issues",
|
||||
"endpoints": "Endpoints",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Logs",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Audit Log",
|
||||
|
||||
@@ -675,7 +675,7 @@
|
||||
"docs": "Docs",
|
||||
"issues": "Issues",
|
||||
"endpoints": "Endpoints",
|
||||
"apiManager": "API Manager",
|
||||
"apiManager": "API Key Manager",
|
||||
"logs": "Logs",
|
||||
"webhooks": "__MISSING__:Webhooks",
|
||||
"auditLog": "Audit Log",
|
||||
|
||||
Reference in New Issue
Block a user