fix(webui): complete temporary chat mode
This commit is contained in:
@@ -8,7 +8,6 @@ import {
|
||||
Archive,
|
||||
Brain,
|
||||
CalendarClock,
|
||||
MessageCircleDashed,
|
||||
Menu,
|
||||
Search,
|
||||
Settings,
|
||||
@@ -32,13 +31,13 @@ import { cn } from "@/lib/utils";
|
||||
|
||||
interface SidebarProps {
|
||||
sessions: ChatSummary[];
|
||||
temporarySessions?: ChatSummary[];
|
||||
activeKey: string | null;
|
||||
loading: boolean;
|
||||
newChatActive: boolean;
|
||||
temporaryChatActive: boolean;
|
||||
onNewChat: () => void;
|
||||
onOpenTemporaryChat: () => void;
|
||||
onSelect: (key: string) => void;
|
||||
onCloseTemporaryChat?: (key: string) => void;
|
||||
onRequestDelete: (key: string, label: string) => void;
|
||||
onTogglePin: (key: string) => void;
|
||||
onRequestRename: (key: string, label: string) => void;
|
||||
@@ -98,10 +97,8 @@ export function Sidebar(props: SidebarProps) {
|
||||
const toggleLabel = t("thread.header.toggleSidebar");
|
||||
const newChatShortcut = newChatShortcutLabel();
|
||||
const activeActionRef = useRef<HTMLButtonElement>(null);
|
||||
const activeActionId = props.temporaryChatActive
|
||||
? "temporary-chat"
|
||||
: props.newChatActive
|
||||
? "new-chat"
|
||||
const activeActionId = props.newChatActive
|
||||
? "new-chat"
|
||||
: props.activeUtility
|
||||
? `utility:${props.activeUtility}`
|
||||
: null;
|
||||
@@ -175,14 +172,6 @@ export function Sidebar(props: SidebarProps) {
|
||||
shortcut={newChatShortcut}
|
||||
ariaKeyShortcuts="Meta+Shift+O Control+Shift+O"
|
||||
/>
|
||||
<SidebarActionButton
|
||||
collapsed={collapsed}
|
||||
label={t("temporaryChat.title")}
|
||||
onClick={props.onOpenTemporaryChat}
|
||||
active={props.temporaryChatActive}
|
||||
selectionRef={activeActionRef}
|
||||
icon={<MessageCircleDashed className="h-4 w-4" />}
|
||||
/>
|
||||
<SidebarActionButton
|
||||
collapsed={collapsed}
|
||||
label={t("sidebar.searchAria")}
|
||||
@@ -234,10 +223,12 @@ export function Sidebar(props: SidebarProps) {
|
||||
{!collapsed && (
|
||||
<ChatList
|
||||
sessions={props.sessions}
|
||||
temporarySessions={props.temporarySessions}
|
||||
activeKey={props.activeKey}
|
||||
loading={props.loading}
|
||||
emptyLabel={t("chat.noSessions")}
|
||||
onSelect={props.onSelect}
|
||||
onCloseTemporaryChat={props.onCloseTemporaryChat}
|
||||
onRequestDelete={props.onRequestDelete}
|
||||
onTogglePin={props.onTogglePin}
|
||||
onRequestRename={props.onRequestRename}
|
||||
|
||||
Reference in New Issue
Block a user