diff --git a/webui/src/App.tsx b/webui/src/App.tsx index 6c75ac0da..95e4c57ec 100644 --- a/webui/src/App.tsx +++ b/webui/src/App.tsx @@ -1,4 +1,11 @@ -import { useCallback, useEffect, useMemo, useRef, useState } from "react"; +import { + useCallback, + useEffect, + useMemo, + useRef, + useState, + type ReactNode, +} from "react"; import { Moon, PanelLeft, Sun } from "lucide-react"; import { useTranslation } from "react-i18next"; import { DeleteConfirm } from "@/components/DeleteConfirm"; @@ -282,17 +289,13 @@ function HostChrome({ onSidebarPreviewEnter, onSidebarPreviewLeave, sidebarOpen = true, - theme, - onToggleTheme, - showThemeButton = true, + rightAction, }: { onToggleSidebar?: () => void; onSidebarPreviewEnter?: () => void; onSidebarPreviewLeave?: () => void; sidebarOpen?: boolean; - theme: "light" | "dark"; - onToggleTheme: () => void; - showThemeButton?: boolean; + rightAction?: ReactNode; }) { const { t } = useTranslation(); @@ -315,24 +318,11 @@ function HostChrome({ ) : null} - {showThemeButton ? ( - - ) : ( - null - )} + {rightAction ? ( +
+ {rightAction} +
+ ) : null} ); } @@ -1369,8 +1359,24 @@ function Shell({ onSidebarPreviewEnter={openHostSidebarPreview} onSidebarPreviewLeave={scheduleHostSidebarPreviewClose} sidebarOpen={hostSidebarOpen} - theme={theme} - onToggleTheme={toggle} + rightAction={ + view === "chat" ? undefined : ( + + ) + } /> ) : null}