25 lines
744 B
TypeScript
25 lines
744 B
TypeScript
"use client";
|
|||
|
|
|
||
|
|
import { create } from "zustand";
|
||
|
|
|
||
|
|
type AiAgentUiState = {
|
||
|
|
documentAgentAvailable: boolean;
|
||
|
|
documentAgentOpen: boolean;
|
||
|
|
setDocumentAgentAvailable: (available: boolean) => void;
|
||
|
|
setDocumentAgentOpen: (open: boolean) => void;
|
||
|
|
toggleDocumentAgentOpen: () => void;
|
||
|
|
};
|
||
|
|
|
||
|
|
export const useAiAgentUiStore = create<AiAgentUiState>((set, get) => ({
|
||
|
|
documentAgentAvailable: false,
|
||
|
|
documentAgentOpen: false,
|
||
|
|
setDocumentAgentAvailable: (available) => set({ documentAgentAvailable: available }),
|
||
|
|
setDocumentAgentOpen: (open) => set({ documentAgentOpen: open }),
|
||
|
|
toggleDocumentAgentOpen: () => {
|
||
|
|
const s = get();
|
||
|
|
if (!s.documentAgentAvailable) return;
|
||
|
|
set({ documentAgentOpen: !s.documentAgentOpen });
|
||
|
|
},
|
||
|
|
}));
|
||
|
|
|