Feat: generación IA de asignaturas, navegación con confetti y ajustes de API

closes #63:
- Añadido AIGenerateSubjectInput y nueva implementación ai_generate_subject que envía FormData (soporta archivosAdjuntos) al Edge Function.
- Creado hook useGenerateSubjectAI (mutation) y usado en WizardControls de asignaturas para generar la asignatura vía IA.
- WizardControls (asignaturas) construye el payload IA, invoca la mutación y navega al detalle de la asignatura creada pasando state.showConfetti para lanzar confetti.
- Ajustes en subjects.api.ts (nombres de endpoint, tipos y envío de datos) y sincronización de tipos en WizardControls (plan y campos básicos).
- Ruta de detalle de asignatura ($asignaturaId) ahora lee location.state.showConfetti y dispara lateralConfetti al entrar.
- Eliminado el prop onCreate del modal de nueva asignatura (la creación IA se gestiona internamente).
This commit is contained in:
2026-02-05 13:22:16 -06:00
parent 6d53e43a34
commit 268ac064b1
6 changed files with 117 additions and 30 deletions

View File

@@ -94,7 +94,10 @@ export function useCreateSubjectManual() {
}
export function useGenerateSubjectAI() {
return useMutation({ mutationFn: ai_generate_subject })
const qc = useQueryClient()
return useMutation({
mutationFn: ai_generate_subject,
})
}
export function usePersistSubjectFromAI() {