diff --git a/diplomas/src/components/layout/Layout.jsx b/diplomas/src/components/layout/Layout.jsx index 50545d2..4965f33 100644 --- a/diplomas/src/components/layout/Layout.jsx +++ b/diplomas/src/components/layout/Layout.jsx @@ -1,7 +1,26 @@ "use client"; import { AppSidebar } from "@/components/app-sidebar"; -import { SidebarInset, SidebarProvider } from "@/components/ui/sidebar"; +import { + SidebarInset, + SidebarProvider, + SidebarTrigger, + useSidebar, +} from "@/components/ui/sidebar"; + +function MainContent({ children }) { + const { open } = useSidebar(); + + return ( +
+ {children} +
+ ); +} export default function Layout({ children }) { return ( @@ -9,7 +28,8 @@ export default function Layout({ children }) {
-
{children}
+ + {children}
diff --git a/diplomas/src/components/ui/sidebar.jsx b/diplomas/src/components/ui/sidebar.jsx index 4f40eeb..e88e3ae 100644 --- a/diplomas/src/components/ui/sidebar.jsx +++ b/diplomas/src/components/ui/sidebar.jsx @@ -238,7 +238,7 @@ function SidebarTrigger({ className, onClick, ...props }) { data-slot="sidebar-trigger" variant="ghost" size="icon" - className={cn("size-7", className)} + className={cn("size-10", className)} onClick={(event) => { onClick?.(event); toggleSidebar(); diff --git a/diplomas/src/pages/alumnosArchivo.jsx b/diplomas/src/pages/alumnosArchivo.jsx index da5df59..874f063 100644 --- a/diplomas/src/pages/alumnosArchivo.jsx +++ b/diplomas/src/pages/alumnosArchivo.jsx @@ -3,7 +3,15 @@ import Papa from "papaparse"; import * as XLSX from "xlsx"; import Layout from "@/components/layout/Layout"; import { Button } from "@/components/ui/button"; -import { Dialog, DialogTrigger, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogFooter } from "@/components/ui/dialog"; +import { + Dialog, + DialogTrigger, + DialogContent, + DialogHeader, + DialogTitle, + DialogDescription, + DialogFooter, +} from "@/components/ui/dialog"; import { CursosManualForm } from "./cursosManual"; // Importa el formulario sin Layout import { supabaseClient } from "@/utils/supabase"; @@ -26,11 +34,12 @@ export default function AlumnosArchivo() { for (const alumno of datos) { // 1. Verifica si el curso existe - const { data: cursosEncontrados, error: errorCurso } = await supabaseClient - .from("curso") - .select("id") - .eq("nombre", alumno.nombreCurso) - .maybeSingle(); + const { data: cursosEncontrados, error: errorCurso } = + await supabaseClient + .from("curso") + .select("id") + .eq("nombre", alumno.nombreCurso) + .maybeSingle(); if (errorCurso) { errores.push({ alumno, error: "Error al buscar el curso" }); @@ -41,7 +50,9 @@ export default function AlumnosArchivo() { // Si no existe el curso, muestra el dialog para registrar el curso setCursoFaltante(alumno.nombreCurso); setMostrarDialogCurso(true); - setMensajeDialogo(`El curso "${alumno.nombreCurso}" no existe. Por favor, regístralo primero.`); + setMensajeDialogo( + `El curso "${alumno.nombreCurso}" no existe. Por favor, regístralo primero.` + ); setDialogoAbierto(true); return; // Detiene el registro de alumnos } @@ -65,7 +76,9 @@ export default function AlumnosArchivo() { } if (errores.length > 0) { - setMensajeDialogo(`Se registraron algunos errores:\n${JSON.stringify(errores, null, 2)}`); + setMensajeDialogo( + `Se registraron algunos errores:\n${JSON.stringify(errores, null, 2)}` + ); } else { setMensajeDialogo("Todos los alumnos fueron registrados correctamente."); setArchivo(null); @@ -130,8 +143,8 @@ export default function AlumnosArchivo() { return ( -
-
+
+

Nuevo alumno

@@ -144,7 +157,9 @@ export default function AlumnosArchivo() { {archivo ? ( {archivo.name} ) : ( - Arrastra y suelta un archivo o haz clic para seleccionarlo + + Arrastra y suelta un archivo o haz clic para seleccionarlo + )} {Object.keys(datos[0]).map((columna, index) => ( - {columna} + + {columna} + ))} @@ -177,7 +194,9 @@ export default function AlumnosArchivo() { {datos.map((fila, index) => ( {Object.values(fila).map((valor, i) => ( - {valor} + + {valor} + ))} ))} @@ -196,7 +215,8 @@ export default function AlumnosArchivo() { Registrar curso faltante - El curso {cursoFaltante} no existe. Por favor, regístralo antes de continuar. + El curso {cursoFaltante} no existe. Por favor, regístralo + antes de continuar. @@ -217,4 +237,4 @@ export default function AlumnosArchivo() { ); -} \ No newline at end of file +} diff --git a/diplomas/src/pages/alumnosManual.jsx b/diplomas/src/pages/alumnosManual.jsx index 8bf0544..9bccdd0 100644 --- a/diplomas/src/pages/alumnosManual.jsx +++ b/diplomas/src/pages/alumnosManual.jsx @@ -84,80 +84,66 @@ export default function AlumnosManual() { return ( -
-
-

- Nuevo alumno -

-
-
- - {errors.nombre && ( -

- {errors.nombre.message} -

- )} -
-
- - {errors.correo && ( -

- {errors.correo.message} -

- )} -
-
- - {errors.telefono && ( -

- {errors.telefono.message} -

- )} -
-
- - {errors.cursoSeleccionado && ( -

- {errors.cursoSeleccionado.message} -

- )} -
- -
-
+
+

+ Nuevo alumno +

+
+ + {errors.nombre && ( +

{errors.nombre.message}

+ )} + + {errors.correo && ( +

{errors.correo.message}

+ )} + + {errors.telefono && ( +

+ {errors.telefono.message} +

+ )} + + {errors.cursoSeleccionado && ( +

+ {errors.cursoSeleccionado.message} +

+ )} + +
{/* Diálogo de confirmación */} diff --git a/diplomas/src/pages/alumnosVista.jsx b/diplomas/src/pages/alumnosVista.jsx index 4ee0e81..2951e9d 100644 --- a/diplomas/src/pages/alumnosVista.jsx +++ b/diplomas/src/pages/alumnosVista.jsx @@ -142,124 +142,126 @@ export default function AlumnosVista() { return ( -
-

+
+

Lista de Alumnos

- - - - - - - - - - - - - {alumnos.map((alumno) => - alumnoEditando === alumno.id ? ( - - - - - - - - - ) : ( - - - - - - - + + ) + )} + +
IDNombreCorreoTeléfonoCursoAcciones
- {alumno.id} - - - {errors.nombre && ( - - {errors.nombre.message} - - )} - - - {errors.correo && ( - - {errors.correo.message} - - )} - - - {errors.telefono && ( - - {errors.telefono.message} - - )} - - - {errors.cursoSeleccionado && ( - - {errors.cursoSeleccionado.message} - - )} - - - -
{alumno.id}{alumno.nombre}{alumno.correo}{alumno.telefono} - {alumno.curso?.nombre || "Sin curso"} - - +
+ + + + + + + + + + + + + {alumnos.map((alumno) => + alumnoEditando === alumno.id ? ( + + + + + + + + + ) : ( + + + + + + + - - ) - )} - -
IDNombreCorreoTeléfonoCursoAcciones
+ {alumno.id} + + + {errors.nombre && ( + + {errors.nombre.message} + + )} + + + {errors.correo && ( + + {errors.correo.message} + + )} + + + {errors.telefono && ( + + {errors.telefono.message} + + )} + + + {errors.cursoSeleccionado && ( + + {errors.cursoSeleccionado.message} + + )} + + + +
{alumno.id}{alumno.nombre}{alumno.correo}{alumno.telefono} + {alumno.curso?.nombre || "Sin curso"} + + - -
+ +
+

{/* Modal de confirmación */} diff --git a/diplomas/src/pages/cursosArchivo.jsx b/diplomas/src/pages/cursosArchivo.jsx index 409eaaf..c88c35a 100644 --- a/diplomas/src/pages/cursosArchivo.jsx +++ b/diplomas/src/pages/cursosArchivo.jsx @@ -3,7 +3,15 @@ import Papa from "papaparse"; import * as XLSX from "xlsx"; import Layout from "@/components/layout/Layout"; import { Button } from "@/components/ui/button"; -import { Dialog, DialogTrigger, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogFooter } from "@/components/ui/dialog"; +import { + Dialog, + DialogTrigger, + DialogContent, + DialogHeader, + DialogTitle, + DialogDescription, + DialogFooter, +} from "@/components/ui/dialog"; import { useRouter } from "next/router"; export default function cursosArchivo() { @@ -53,7 +61,7 @@ export default function cursosArchivo() { horas: curso.horas, descripcion: curso.descripcion, competencias: curso.competencias - ? curso.competencias.split(",").map(c => c.trim()) + ? curso.competencias.split(",").map((c) => c.trim()) : [], }), }); @@ -67,7 +75,9 @@ export default function cursosArchivo() { setDialogoCargando(false); // Ocultar dialogo de carga if (errores.length > 0) { - setMensajeDialogo(`Se registraron algunos errores:\n${JSON.stringify(errores, null, 2)}`); + setMensajeDialogo( + `Se registraron algunos errores:\n${JSON.stringify(errores, null, 2)}` + ); } else { setMensajeDialogo("Todos los cursos fueron registrados correctamente."); setArchivo(null); @@ -132,11 +142,9 @@ export default function cursosArchivo() { return ( -
-
-

- Nuevo curso -

+
+
+

Nuevo curso