feat: add admin state and diagnostics (TASK-WP6-05)
Dada P0-A isolated Windows CI / validate-and-package (push) Successful in 12m4s
Dada P0-A isolated Windows CI / validate-and-package (push) Successful in 12m4s
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import { useEffect, useMemo, useRef, useState } from "react";
|
||||
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
||||
|
||||
import "./admin-models.css";
|
||||
|
||||
@@ -64,7 +64,7 @@ export function AdminModelsPage() {
|
||||
const priorityRefs = useRef<Record<string, HTMLInputElement | null>>({});
|
||||
const defaultRefs = useRef<Record<string, HTMLInputElement | null>>({});
|
||||
|
||||
async function load() {
|
||||
const load = useCallback(async () => {
|
||||
setLoadingFailed(false);
|
||||
setConflicted(false);
|
||||
try {
|
||||
@@ -80,9 +80,16 @@ export function AdminModelsPage() {
|
||||
} catch {
|
||||
setLoadingFailed(true);
|
||||
}
|
||||
}
|
||||
}, []);
|
||||
|
||||
useEffect(() => { void load(); }, []);
|
||||
useEffect(() => { void load(); }, [load]);
|
||||
|
||||
useEffect(() => {
|
||||
if (typeof EventSource === "undefined") return undefined;
|
||||
const source = new EventSource("/api/v1/events");
|
||||
source.onmessage = () => { void load(); };
|
||||
return () => source.close();
|
||||
}, [load]);
|
||||
|
||||
const validation = useMemo(() => {
|
||||
if (!draft) return { valid: false, message: "" };
|
||||
|
||||
Reference in New Issue
Block a user