x
This commit is contained in:
@@ -7,13 +7,16 @@ const POLL_MS = 5_000
|
||||
export function useSiteStatus() {
|
||||
const [row, setRow] = useState<SiteStatusRow | null>(null)
|
||||
const [ready, setReady] = useState(false)
|
||||
const [error, setError] = useState<string | null>(null)
|
||||
|
||||
const load = useCallback(async () => {
|
||||
try {
|
||||
const rows = await getJson<SiteStatusRow[]>('/vw_site_status')
|
||||
setRow(Array.isArray(rows) && rows.length > 0 ? rows[0]! : null)
|
||||
setError(null)
|
||||
} catch {
|
||||
setRow(null)
|
||||
setError('Stav lokality se nepodařilo načíst')
|
||||
} finally {
|
||||
setReady(true)
|
||||
}
|
||||
@@ -35,6 +38,7 @@ export function useSiteStatus() {
|
||||
return {
|
||||
site: row,
|
||||
ready,
|
||||
error,
|
||||
/** Máme řádek lokality a alespoň jednu telemetrickou hodnotu (jinak skeleton). */
|
||||
hasLiveData: row != null && hasTelemetry,
|
||||
reload: load,
|
||||
|
||||
Reference in New Issue
Block a user