diff --git a/src/components/asignaturas/detalle/MateriaDetailPage.tsx b/src/components/asignaturas/detalle/MateriaDetailPage.tsx
index e0594dd..a3b3acc 100644
--- a/src/components/asignaturas/detalle/MateriaDetailPage.tsx
+++ b/src/components/asignaturas/detalle/MateriaDetailPage.tsx
@@ -1,6 +1,7 @@
import {
createFileRoute,
Link,
+ useNavigate,
useParams,
useRouterState,
} from '@tanstack/react-router'
@@ -59,13 +60,17 @@ function EditableHeaderField({
onSave: (val: string) => void
className?: string
}) {
+ const textValue = String(value)
+
return (
onSave(e.target.value)}
onBlur={(e) => onSave(e.target.value)}
- className={` w-[${String(value).length || 1}ch] max-w-[6ch] border-none bg-transparent text-center outline-none focus:ring-2 focus:ring-blue-400 ${className ?? ''} `}
+ className={`border-none bg-transparent outline-none focus:ring-2 focus:ring-blue-400 ${className ?? ''}`}
/>
)
}
@@ -91,6 +96,7 @@ export default function MateriaDetailPage() {
const [messages, setMessages] = useState>([])
const [datosGenerales, setDatosGenerales] = useState({})
const [campos, setCampos] = useState>([])
+ const [activeTab, setActiveTab] = useState('datos')
// Dentro de MateriaDetailPage
const [headerData, setHeaderData] = useState({
@@ -100,6 +106,13 @@ export default function MateriaDetailPage() {
ciclo: 0,
})
+ useEffect(() => {
+ // Si en el state de la ruta viene una pestaña específica, cámbiate a ella
+ if (state?.activeTab) {
+ setActiveTab(state.activeTab)
+ }
+ }, [state])
+
// Sincronizar cuando llegue la API
useEffect(() => {
if (asignaturasApi) {
@@ -208,11 +221,23 @@ export default function MateriaDetailPage() {
-
- {asignaturasApi?.planes_estudio?.datos?.nombre}
+
+ {/* Eliminamos el max-w y dejamos que el flex-wrap haga su trabajo */}
+ handleUpdateHeader('plan_nombre', val)}
+ className="min-w-[10ch] text-blue-100" // min-w para que sea clickeable si está vacío
+ />
-
- {asignaturasApi?.planes_estudio?.carreras?.facultades?.nombre}
+
+ handleUpdateHeader('facultad_nombre', val)}
+ className="min-w-[10ch] text-blue-100"
+ />
-
- Abrir en nueva pestaña
-
+ {pdfUrl && (
+ window.open(pdfUrl, '_blank')}
+ >
+ Abrir en nueva pestaña
+
+ )}
-
- {/* SIMULACIÓN DE HOJA DE PAPEL */}
-
- {/* Contenido del Plan */}
-
-
- Universidad Tecnológica
-
-
- Plan de Estudios 2024
-
-
- Ingeniería en Sistemas Computacionales
-
-
- Facultad de Ingeniería
-
+
+ {isLoading ? (
+
+
+
Generando vista previa del PDF...
-
-
-
-
1. Objetivo General
-
- Formar profesionales altamente capacitados en el desarrollo de
- soluciones tecnológicas innovadoras, con sólidos conocimientos
- en programación, bases de datos, redes y seguridad
- informática.
-
-
-
-
-
2. Perfil de Ingreso
-
- Egresados de educación media superior con conocimientos
- básicos de matemáticas, razonamiento lógico y habilidades de
- comunicación. Interés por la tecnología y la resolución de
- problemas.
-
-
-
-
-
3. Perfil de Egreso
-
- Profesional capaz de diseñar, desarrollar e implementar
- sistemas de software de calidad, administrar infraestructuras
- de red y liderar proyectos tecnológicos multidisciplinarios.
-
-
+ ) : pdfUrl ? (
+ /* 3. VISOR DE PDF REAL */
+
+ ) : (
+
+ No se pudo cargar la vista previa.
-
- {/* Marca de agua o decoración lateral (opcional) */}
-
-