import { Dispatch, SetStateAction, useContext, useEffect, useState } from 'react' import { Button } from "@/components/ui/button" import { Input } from "@/components/ui/input" import { Label } from "@/components/ui/label" import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select" import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogFooter } from "@/components/ui/dialog" import GlobalContext from '@/contexts/GlobalContext' export default function ApiSettingsPopup(props: { isOpen: boolean, setIsOpen: Dispatch> }) { const {isOpen, setIsOpen} = props const [mem0ApiKey, setMem0ApiKey] = useState('') const [providerApiKey, setProviderApiKey] = useState('') const [provider, setProvider] = useState('OpenAI') const { selectorHandler, selectedOpenAIKey, selectedMem0Key, selectedProvider } = useContext(GlobalContext); const handleSave = () => { // Here you would typically save the settings to your backend or local storage selectorHandler(mem0ApiKey, providerApiKey, provider); setIsOpen(false) } useEffect(() => { if (selectedOpenAIKey) { setProviderApiKey(selectedOpenAIKey); } if (selectedMem0Key) { setMem0ApiKey(selectedMem0Key); } if (selectedProvider) { setProvider(selectedProvider); } }, [selectedOpenAIKey, selectedMem0Key, selectedProvider]); return ( <> API Configuration Settings
setMem0ApiKey(e.target.value)} className="col-span-3 rounded-3xl" />
setProviderApiKey(e.target.value)} className="col-span-3 rounded-3xl" />
) }