import { SidebarCreateItem } from "@/components/sidebar/items/all/sidebar-create-item" import { ChatSettingsForm } from "@/components/ui/chat-settings-form" import { Input } from "@/components/ui/input" import { Label } from "@/components/ui/label" import { ChatbotUIContext } from "@/context/context" import { PRESET_NAME_MAX } from "@/db/limits" import { TablesInsert } from "@/supabase/types" import { FC, useContext, useState } from "react" interface CreatePresetProps { isOpen: boolean onOpenChange: (isOpen: boolean) => void } export const CreatePreset: FC = ({ isOpen, onOpenChange }) => { const { profile, selectedWorkspace } = useContext(ChatbotUIContext) const [name, setName] = useState("") const [isTyping, setIsTyping] = useState(false) const [description, setDescription] = useState("") const [presetChatSettings, setPresetChatSettings] = useState({ model: selectedWorkspace?.default_model, prompt: selectedWorkspace?.default_prompt, temperature: selectedWorkspace?.default_temperature, contextLength: selectedWorkspace?.default_context_length, includeProfileContext: selectedWorkspace?.include_profile_context, includeWorkspaceInstructions: selectedWorkspace?.include_workspace_instructions, embeddingsProvider: selectedWorkspace?.embeddings_provider }) if (!profile) return null if (!selectedWorkspace) return null return ( } renderInputs={() => ( <>
setName(e.target.value)} maxLength={PRESET_NAME_MAX} />
)} /> ) }