import { useEffect, useState } from 'react' import type { Unidad } from '../types' import { getUnidades } from '../services/api' interface UseUnidadesResult { unidades: Unidad[] cargando: boolean error: string | null /** true cuando el inventario viene del seed local (sin conexión al API) */ usandoSeed: boolean } /** Carga el inventario de unidades desde el API Gateway, con fallback al seed local */ export function useUnidades(): UseUnidadesResult { const [unidades, setUnidades] = useState([]) const [cargando, setCargando] = useState(true) const [error, setError] = useState(null) const [usandoSeed, setUsandoSeed] = useState(false) useEffect(() => { let activo = true getUnidades() .then(({ unidades, usandoSeed }) => { if (activo) { setUnidades(unidades) setUsandoSeed(usandoSeed) setCargando(false) } }) .catch(() => { if (activo) { setError('No se pudo cargar el inventario de unidades.') setCargando(false) } }) return () => { activo = false } }, []) return { unidades, cargando, error, usandoSeed } }