feat(admin): organize command center controls and diagnostics
This commit is contained in:
1 parent
667637f8da
commit
51d1284950
5 files changed
+252
-113
No files matched your search
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,20 @@
|
|||||||
|
"use client";
|
||||||
|
import { useRouter } from "next/navigation";
|
||||||
|
import { useTransition } from "react";
|
||||||
|
import { Button } from "@/components/ui/button";
|
||||||
|
export function RefreshStatus({ label }: { label: string }) {
|
||||||
|
const router = useRouter();
|
||||||
|
const [pending, startTransition] = useTransition();
|
||||||
|
return (
|
||||||
|
<Button
|
||||||
|
type="button"
|
||||||
|
variant="outline"
|
||||||
|
disabled={pending}
|
||||||
|
aria-busy={pending}
|
||||||
|
onClick={() => startTransition(() => router.refresh())}
|
||||||
|
>
|
||||||
|
{pending ? "… " : ""}
|
||||||
|
{label}
|
||||||
|
</Button>
|
||||||
|
);
|
||||||
|
}
|
||||||
+19
-1
@@ -2431,7 +2431,25 @@
|
|||||||
},
|
},
|
||||||
"messagePlaceholder": "Message (for alerts)…",
|
"messagePlaceholder": "Message (for alerts)…",
|
||||||
"amountPlaceholder": "Amount…",
|
"amountPlaceholder": "Amount…",
|
||||||
"badgePlaceholder": "Badge code…"
|
"badgePlaceholder": "Badge code…",
|
||||||
|
"commandCategories": "Command categories",
|
||||||
|
"groups": {
|
||||||
|
"hotel": "Hotel",
|
||||||
|
"players": "Players",
|
||||||
|
"rewards": "Currency and gifts",
|
||||||
|
"advanced": "Advanced"
|
||||||
|
},
|
||||||
|
"executing": "Executing command…",
|
||||||
|
"chooseCommand": "Choose an operation. Values entered are preserved when switching categories.",
|
||||||
|
"refreshStatus": "Refresh status",
|
||||||
|
"checkedAt": "Checked at {time}",
|
||||||
|
"serviceAttention": "Some services need attention",
|
||||||
|
"servicesHealthy": "Core services are responding",
|
||||||
|
"cmsErrors": "CMS error center",
|
||||||
|
"readFailed": "Data could not be loaded",
|
||||||
|
"emulatorConfig": "Emulator connection",
|
||||||
|
"emailConfig": "Email delivery",
|
||||||
|
"configured": "Configured"
|
||||||
},
|
},
|
||||||
"emulator": {
|
"emulator": {
|
||||||
"title": "Emulator Config",
|
"title": "Emulator Config",
|
||||||
|
|||||||
+19
-1
@@ -2313,7 +2313,25 @@
|
|||||||
},
|
},
|
||||||
"messagePlaceholder": "Messaggio (per avvisi)…",
|
"messagePlaceholder": "Messaggio (per avvisi)…",
|
||||||
"amountPlaceholder": "Importo…",
|
"amountPlaceholder": "Importo…",
|
||||||
"badgePlaceholder": "Codice distintivo…"
|
"badgePlaceholder": "Codice distintivo…",
|
||||||
|
"commandCategories": "Categorie comandi",
|
||||||
|
"groups": {
|
||||||
|
"hotel": "Hotel",
|
||||||
|
"players": "Giocatori",
|
||||||
|
"rewards": "Valute e regali",
|
||||||
|
"advanced": "Avanzati"
|
||||||
|
},
|
||||||
|
"executing": "Esecuzione comando…",
|
||||||
|
"chooseCommand": "Scegli un’operazione. I valori inseriti restano salvati cambiando categoria.",
|
||||||
|
"refreshStatus": "Aggiorna stato",
|
||||||
|
"checkedAt": "Verificato alle {time}",
|
||||||
|
"serviceAttention": "Alcuni servizi richiedono attenzione",
|
||||||
|
"servicesHealthy": "I servizi principali rispondono",
|
||||||
|
"cmsErrors": "Centro errori CMS",
|
||||||
|
"readFailed": "Impossibile caricare i dati",
|
||||||
|
"emulatorConfig": "Connessione emulatore",
|
||||||
|
"emailConfig": "Invio email",
|
||||||
|
"configured": "Configurato"
|
||||||
},
|
},
|
||||||
"emulator": {
|
"emulator": {
|
||||||
"title": "Configurazione emulatore",
|
"title": "Configurazione emulatore",
|
||||||
|
|||||||
Reference in new issue
Block a user