const fs = require('fs'); let code = fs.readFileSync('src/sections/HistoriaClinica.tsx', 'utf8'); // 1. Update imports code = code.replace("EstudioComplementario, Interconsulta, ATB, Indicacion, MovimientoIndicacion, Pendiente } from '@/types';", "EstudioComplementario, Interconsulta, ATB, Indicacion, MovimientoIndicacion, Pendiente, OtroLaboratorio } from '@/types';"); // 2. Destructure in component const destructureRegex = /const \{[\s\S]*?\} = useHospitalStore\(\);/; const destructuredMatch = code.match(destructureRegex); if (destructuredMatch) { let newDestructure = destructuredMatch[0].replace( "laboratorios,", "laboratorios, otrosLaboratorios, agregarOtroLaboratorio, actualizarOtroLaboratorio, eliminarOtroLaboratorio," ); code = code.replace(destructuredMatch[0], newDestructure); } // 3. Update SeccionLaboratorios props in main render code = code.replace( //, `` ); // 4. In `handleImportarLaboratorio` (we need to change how observations are saved) // Find the exact handleImportarLaboratorio function const handleImportarMatch = code.match(/const handleImportarLaboratorio = \(\) => \{[\s\S]*?setImportHora\(new Date\(\)\.toTimeString\(\)\.slice\(0, 5\)\);\s*\};/); if (handleImportarMatch) { const newImport = `const handleImportarLaboratorio = () => { if (!addAcidoBase) return; if (importResultados.length === 0 && !importObservaciones && !importAcidoBase) return; if (importAcidoBase) { addAcidoBase({ ...importAcidoBase, pacienteId: patientId, internacionId, fecha: importFecha, hora: importHora }); } if (importResultados.length > 0) { add({ pacienteId: patientId, internacionId, fecha: importFecha, hora: importHora, resultados: importResultados, }); } if (importObservaciones && importObservaciones.trim() !== '') { agregarOtroLaboratorio({ pacienteId: patientId, internacionId, fecha: importFecha, hora: importHora, observaciones: importObservaciones }); } setImportDialog(false); setImportTexto(''); setImportResultados([]); setImportObservaciones(''); setImportAcidoBase(null); setImportFecha(getLocalToday()); setImportHora(new Date().toTimeString().slice(0, 5)); };`; code = code.replace(handleImportarMatch[0], newImport); } fs.writeFileSync('src/sections/HistoriaClinica.tsx', code);