diff --git a/webui/src/features/cases/CasesPage.tsx b/webui/src/features/cases/CasesPage.tsx index 64fd897..63bd46f 100644 --- a/webui/src/features/cases/CasesPage.tsx +++ b/webui/src/features/cases/CasesPage.tsx @@ -1,7 +1,6 @@ import { Search } from "lucide-react"; import { useEffect, useMemo, useState, type FormEvent } from "react"; -import { ActionToolbar, - Button, +import { Button, DocumentationHelpLink, DismissibleAlert, FilterBar, @@ -14,6 +13,7 @@ import { ActionToolbar, StatusBadge, i18nMessage, useGuardedNavigate, + WorkspaceActionBar, WorkspaceFrame, type PlatformRouteContext } from "@govoplan/core-webui"; @@ -36,6 +36,7 @@ export default function CasesPage({ settings }: PlatformRouteContext) { const [total, setTotal] = useState(0); const [loading, setLoading] = useState(true); const [error, setError] = useState(""); + const [reloadKey, setReloadKey] = useState(0); useEffect(() => { const controller = new AbortController(); @@ -61,7 +62,7 @@ export default function CasesPage({ settings }: PlatformRouteContext) { }). finally(() => setLoading(false)); return () => controller.abort(); - }, [settings, status, submittedQuery]); + }, [reloadKey, settings, status, submittedQuery]); const statusLabels = useMemo( () => new Map(catalog.statuses.map((item) => [item.status_key, item])), @@ -80,8 +81,14 @@ export default function CasesPage({ settings }: PlatformRouteContext) { return (
- - + setReloadKey((value) => value + 1), loading }} + className="cases-toolbar" + contextActions={<> + - + - {i18nMessage("i18n:govoplan-cases.case_count", { value0: total })} - - + + {i18nMessage("i18n:govoplan-cases.case_count", { value0: total })} + } + helpAction={} + /> {error && setError("")}>