import React, { useState, useEffect } from 'react'; import { ChevronDown, Info } from 'lucide-react'; const MOCK_MEASUREMENTS = { 'Measurement_Section_1.png': { totalRoofArea: 87.87, ridges: 189.09, hips: 395.62, valleys: 284.06, rakes: 184.69, eaves: 600.90, stepFlashing: 112.00 }, 'Measurement_Section_2.png': { totalRoofArea: 33.91, ridges: 73.62, hips: 304.65, valleys: 140.44, rakes: 53.57, eaves: 275.52, stepFlashing: 39.48 }, 'Measurement_Section_3.png': { totalRoofArea: 81.79, ridges: 161.85, hips: 275.53, valleys: 172.23, rakes: 69.31, eaves: 459.65, stepFlashing: 6.49 } }; export default function MeasurementsModal({ isOpen, onCancel, onNext, selectedImageId }) { const [measurements, setMeasurements] = useState({ totalRoofArea: 0, ridges: 0, hips: 0, valleys: 0, rakes: 0, eaves: 0, stepFlashing: 0 }); useEffect(() => { if (selectedImageId && MOCK_MEASUREMENTS[selectedImageId]) { setMeasurements(MOCK_MEASUREMENTS[selectedImageId]); } }, [selectedImageId]); const handleChange = (field, value) => { setMeasurements(prev => ({ ...prev, [field]: parseFloat(value) || 0 })); }; if (!isOpen) return null; const fields = [ { label: 'Ridges', key: 'ridges', uom: 'LF' }, { label: 'Hips', key: 'hips', uom: 'LF' }, { label: 'Valleys', key: 'valleys', uom: 'LF' }, { label: 'Rakes', key: 'rakes', uom: 'LF' }, { label: 'Eaves', key: 'eaves', uom: 'LF' }, { label: 'Step Flashing', key: 'stepFlashing', uom: 'LF' }, ]; return (