Commit Graph

30 Commits

Author SHA1 Message Date
507e02db54 Fix #63: mostrar mensaje real de error de Edge Function en UI
- Mejorar invokeEdge para parsear el body JSON de errores HTTP de las Edge Functions y extraer un message humano (soporta { error: { message } }, { error: "..." } y { message: "..." }).
- EdgeFunctionError ahora incluye status y details; se manejan también FunctionsRelayError y FunctionsFetchError con mensajes más descriptivos.
- Ajustes en el front: WizardControls muestra el mensaje real del error (no el genérico "Edge Function returned a non-2xx status code"), y se corrige navegación/logging tras crear plan IA (uso de `plan` en vez de `data` y `navigate` a `/planes/{plan.id}`).
- Actualización de types/API: renombrados campos en AIGeneratePlanInput para alinear nombres (descripcionEnfoqueAcademico, instruccionesAdicionalesIA).
2026-02-05 12:04:20 -06:00
f3414f23f6 Refactor: unifica wizards con WizardLayout/WizardResponsiveHeader y convierte asignaturas en layout con Outlet
- Se introdujo un layout genérico de wizard (WizardLayout) con headerSlot/footerSlot y se migraron los modales de Nuevo Plan y Nueva Asignatura a esta estructura usando defineStepper.
- Se creó y reutilizó WizardResponsiveHeader para un encabezado responsivo consistente (progreso en móvil y navegación en escritorio) en ambos wizards.
- Se homologó WizardControls del wizard de asignaturas para alinearlo al patrón del wizard de planes (props onPrev/onNext, flags de disable, manejo de error/loading y creación).
- Se mejoró la captura de datos en el wizard de asignatura: créditos como flotante con 2 decimales, placeholders/estilos en inputs/selects y uso de catálogo real de estructuras vía useSubjectEstructuras con qk.estructurasAsignatura.
- Se reorganizó la sección de asignaturas del detalle del plan: el contenido del antiguo index se movió a asignaturas.tsx como layout y se agregó <Outlet />; navegación a “nueva asignatura” ajustada al path correcto.
2026-02-04 13:36:46 -06:00
1acb18711f Reintegración con main. Corrección de errores de fetch. Sincronización con la base de datos remota 2026-02-03 15:10:09 -06:00
12c572a442 Reorganización de archivos y enlace a wizard de creación de asignatura 2026-02-03 13:13:44 -06:00
d0b05256b0 refactor: rename Materia to Asignatura across the codebase
- Updated type definitions and interfaces to replace 'Materia' with 'Asignatura'.
- Refactored components and routes to reflect the new naming convention.
- Adjusted related types and constants for consistency.
- Removed the old Materia type definition and added Asignatura type definition.
- Ensured all references in UI components and logic are updated accordingly.

fix #50
2026-01-30 08:13:30 -06:00
35ea4caa39 Fallback elegante de vista no encontrada
close #44:
Se creó la NotFoundPage y se utiliza en __root con el notFoundComponent.
Se agregó la lógica del loader tanto de plan de estudios como de asignaturas.
Se agregó el NotFoundComponent para el detalle de plan de estudios y el de asignaturas
2026-01-28 12:58:50 -06:00
7c890a1aca Merge branch 'main' of https://github.lci.ulsa.mx/Guillermo.Arrieta/acad-ia-2 2026-01-27 14:43:41 -06:00
9584cd0c04 Se cierran incidencias #10, #21, #24, #25; se añade generación manual de planes
close #10:
Al crear un plan de manera manual o con IA y redirigirse a planes/{$planId}/datos, sale el confetti.

close #21:
Los archivos que se adjuntan en el wizard ya no se pueden subir mas que una vez.

close #24:
El input de número de ciclos ahora solo permite enteros positivos mayores a 0.

close #25:
Se quitó el botón de generar borrador.
Al adjuntar el primer archivo al wizard, se hace scroll hasta el dropzone.
Los archivos añadidos se listan desde el más reciente al más antiguo.
Se indica claramente el número de archivos adjuntos y el número máximo de archivos que se pueden adjuntar.
2026-01-27 12:01:05 -06:00
c15e2f941d Se corrigen incidencias 35, 36, 33, 32 2026-01-26 13:52:12 -06:00
35e96bf52c Implementa actualización de planes utilizando Supabase en lugar de la función Edge 2026-01-26 11:43:19 -06:00
695e069a9f Se corrigen incidencias 2026-01-23 10:57:54 -06:00
4950f7efbf Se generan los planes con IA de manera correcta 2026-01-22 12:39:52 -06:00
aa867e4612 Merge branch 'fix/merge' into feat/ai-generate-plan 2026-01-21 16:03:22 -06:00
0fddcfdc65 Se resuelve conflicto en plnas.api.ts 2026-01-21 14:16:38 -06:00
254f6383d7 generación de plan con invalidación de queries 2026-01-21 12:11:12 -06:00
ddb17ab351 Merge remote-tracking branch 'origin/feat/ai-generate-plan' into renderCarbone 2026-01-21 12:10:10 -06:00
18f2bed3ea primera versión funcional de creación de plan con IA 2026-01-20 17:04:39 -06:00
7d9512645c Se corrigen imports 2026-01-16 08:20:35 -06:00
09d8f80cf3 Merge remote-tracking branch 'origin/feat/wizard-plan-vista' into feature/IntegrarDetallePlan 2026-01-16 07:42:51 -06:00
4bf407ab7a Se agrega modal para visualizar historial, se quitan botones de guardado que no se utilizan y se arreglan detalles 2026-01-16 07:26:12 -06:00
9aad9aed00 Wizard listo para enviar información a ai-generate-plan 2026-01-15 15:54:36 -06:00
b4b5134cb2 Se hidrata de informacion las tabs de asignatura 2026-01-14 15:52:25 -06:00
b08d58e262 wip 2026-01-13 14:30:57 -06:00
55c37b83b4 listado de planes exitoso 2026-01-13 11:52:57 -06:00
268d83fb4b tipos de domain sin hardcode (falta revisar PlanDatosSep) 2026-01-12 12:03:17 -06:00
5a7672677d tipado desde supabase, primer listado de planes, ajustes en src/data 2026-01-12 12:03:17 -06:00
767e3b74d1 Merge branch 'feature/query-hooks' 2026-01-09 11:04:56 -06:00
5e3da99db3 feat: implement file and repository management hooks and APIs 2026-01-09 09:42:17 -06:00
65a73ca99f feat: add subjects and tasks API, hooks, and related types
- Implemented subjects API with functions for creating, updating, and retrieving subjects, including history and bibliography.
- Added tasks API for managing user tasks, including listing and marking tasks as completed.
- Created hooks for managing AI interactions, authentication, subjects, tasks, and metadata queries.
- Established query keys for caching and managing query states.
- Introduced Supabase client and environment variable management for better configuration.
- Defined types for database and domain models to ensure type safety across the application.
2026-01-09 09:00:33 -06:00
c02d75789e Se termina vista de asignaturas 2026-01-08 12:23:26 -06:00