import React, { useState, useRef, useEffect } from 'react'; import { Camera, Upload, MessageSquare, Fingerprint, Zap, Info, Settings, Menu } from 'lucide-react'; export default function EnergyDetectionSystem() { const [activeTab, setActiveTab] = useState('capture'); const [energyData, setEnergyData] = useState(null); const [messages, setMessages] = useState([]); const [isProcessing, setIsProcessing] = useState(false); const [userInput, setUserInput] = useState(''); const videoRef = useRef(null); const fileInputRef = useRef(null); const processEnergyData = async (data) => { setIsProcessing(true); try { const response = await fetch(`https://www.sitebrew.ai/api/EL6e2P/energy_readings`, { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ document: { timestamp: new Date().toISOString(), energySignature: data, type: 'fingerprint' } }) }); const result = await response.json(); setEnergyData(result.document); } catch (error) { console.error('Error processing energy data:', error); } setIsProcessing(false); }; const handleFileUpload = (event) => { const file = event.target.files[0]; if (file) { const reader = new FileReader(); reader.onload = (e) => { processEnergyData(e.target.result); }; reader.readAsDataURL(file); } }; const sendMessage = async () => { if (!userInput.trim()) return; const newMessage = { role: 'user', content: userInput }; setMessages([...messages, newMessage]); setUserInput(''); try { const response = await fetch('https://www.sitebrew.ai/api/genai', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ messages: [...messages, newMessage] }) }); const data = await response.json(); setMessages(prev => [...prev, data.message]); } catch (error) { console.error('Error sending message:', error); } }; return (
{activeTab === 'capture' ? (
) : (

Support for images and videos

)}
{energyData && (

Energy Analysis Results

Energy Signature

{energyData._id}

Type

{energyData.type}

Timestamp

{new Date(energyData.timestamp).toLocaleString()}

)}

AI Assistant

{messages.map((message, index) => (
{message.content}
))}
setUserInput(e.target.value)} onKeyPress={(e) => e.key === 'Enter' && sendMessage()} className="flex-1 bg-gray-700 border border-gray-600 rounded-lg px-4 py-2 focus:outline-none focus:border-blue-500" placeholder="Ask about energy readings..." />
); }