diff --git a/src/app/[locale]/page.tsx b/src/app/[locale]/page.tsx index 5768478..60d5337 100644 --- a/src/app/[locale]/page.tsx +++ b/src/app/[locale]/page.tsx @@ -9,6 +9,7 @@ import { ConfigDialog } from "@/app/components/ConfigDialog"; import { ErrorLogBell } from "@/app/components/ErrorLogBell"; import { ImageModelsDialog } from "@/app/components/ImageModelsDialog"; import { LocaleSwitcher } from "@/app/components/LocaleSwitcher"; +import { RunningDot } from "@/app/components/RunningDot"; import { SystemConfigDialog } from "@/app/components/system-config/SystemConfigDialog"; import { Button } from "@/components/ui/button"; import { @@ -57,6 +58,7 @@ import { usePublicSystemConfig, } from "@/app/hooks/usePublicSystemConfig"; import type { MainChatReporter } from "@/lib/asyncAgents"; +import { useRunningThreadIds } from "@/app/hooks/useThreads"; import { localizedPath } from "@/lib/localePath"; import { cn } from "@/lib/utils"; @@ -71,6 +73,9 @@ function HomePageInner({ authEnabled, isAdmin }: HomePageInnerProps) { const t = useTranslations("header"); const publicConfig = usePublicSystemConfig(); const [threadId, setThreadId] = useQueryState("threadId"); + const runningThreadIds = useRunningThreadIds(); + const currentThreadRunning = + threadId !== null && runningThreadIds.has(threadId); const [sidebar, setSidebar] = useQueryState("sidebar"); const [view, setView] = useQueryState("view"); const [memoryTab, setMemoryTab] = useQueryState("memoryTab"); @@ -328,11 +333,12 @@ function HomePageInner({ authEnabled, isAdmin }: HomePageInnerProps) {

{publicConfig?.wordmark ?? DEFAULT_WORDMARK}

-
+
)} + {currentThreadRunning && }