"use client"; import { useState, useEffect } from "react"; import { Settings, Save, RotateCcw } from "lucide-react"; import { SystemPromptInfo } from "./SystemPromptInfo"; interface SystemPromptProps { onSystemPromptChange: (prompt: string) => void; } export function SystemPrompt({ onSystemPromptChange }: SystemPromptProps) { const [systemPrompt, setSystemPrompt] = useState(""); const [isEditing, setIsEditing] = useState(false); const [hasChanges, setHasChanges] = useState(false); // Load from localStorage on mount useEffect(() => { const saved = localStorage.getItem("ollahub-system-prompt"); if (saved) { setSystemPrompt(saved); onSystemPromptChange(saved); } }, [onSystemPromptChange]); const handleSave = () => { localStorage.setItem("ollahub-system-prompt", systemPrompt); onSystemPromptChange(systemPrompt); setIsEditing(false); setHasChanges(false); }; const handleReset = () => { const defaultPrompt = ""; setSystemPrompt(defaultPrompt); localStorage.removeItem("ollahub-system-prompt"); onSystemPromptChange(defaultPrompt); setIsEditing(false); setHasChanges(false); }; const handleChange = (value: string) => { setSystemPrompt(value); setHasChanges(true); setIsEditing(true); }; return (
{systemPrompt}
) : (No system prompt set
)}