From b37d36fe159629a4a1d90fd7355ab71c510f70b5 Mon Sep 17 00:00:00 2001 From: Guillermo Arrieta Medina Date: Mon, 13 Apr 2026 13:54:28 -0600 Subject: [PATCH] =?UTF-8?q?Resumen=20de=20cambios=20del=20commit=20y=20de?= =?UTF-8?q?=20los=20dos=20wips=20anteriores:=20=09=E2=80=A2=20Cambio=20del?= =?UTF-8?q?=20estilo=20visual=20del=20layout=20del=20detalle=20de=20asigna?= =?UTF-8?q?tura=20=09=E2=80=A2=20El=20nivel=20de=20un=20plan=20de=20estudi?= =?UTF-8?q?os=20se=20muestra=20como=20editable=20con=20un=20select=20=09?= =?UTF-8?q?=E2=80=A2=20se=20quit=C3=B3=20'disabled:pointer-events-none'=20?= =?UTF-8?q?del=20componente=20button=20para=20permitir=20que=20el=20cursor?= =?UTF-8?q?=20cambie=20a=20cursor-not-allowed=20sobre=20botones=20disabled?= =?UTF-8?q?=20=09=E2=80=A2=20todos=20los=20botones=20y=20elementos=20con?= =?UTF-8?q?=20role=20de=20button=20no=20deshabilitados=20tienen=20cursor-p?= =?UTF-8?q?ointer=20=09=E2=80=A2=20todos=20los=20botones=20y=20elementos?= =?UTF-8?q?=20con=20role=20de=20button=20deshabilitados=20tienen=20cursor-?= =?UTF-8?q?not-allowed=20cada=20cambio=20tanto=20en=20el=20historial=20de?= =?UTF-8?q?=20un=20plan=20como=20de=20una=20asignatura=20se=20puede=20abri?= =?UTF-8?q?r=20picandole=20en=20cualquier=20parte=20del=20cambio?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../asignaturas/detalle/HistorialTab.tsx | 23 +++++++++---------- src/components/auth/LoginCard.tsx | 12 ++++++---- src/components/ui/button.tsx | 2 +- .../planes/$planId/_detalle/historial.tsx | 21 ++++++++--------- .../asignaturas/$asignaturaId/route.tsx | 2 +- src/routes/planes/_lista.tsx | 4 +--- src/styles.css | 12 ++++++++++ 7 files changed, 43 insertions(+), 33 deletions(-) diff --git a/src/components/asignaturas/detalle/HistorialTab.tsx b/src/components/asignaturas/detalle/HistorialTab.tsx index 7c8bee7..f0dfa68 100644 --- a/src/components/asignaturas/detalle/HistorialTab.tsx +++ b/src/components/asignaturas/detalle/HistorialTab.tsx @@ -11,7 +11,6 @@ import { Filter, Calendar, Loader2, - Eye, } from 'lucide-react' import { useState, useMemo } from 'react' @@ -249,7 +248,16 @@ export function HistorialTab() { `bg-current ${config.color}`, )} /> - + openCompareModal(cambio)} + role="button" + tabIndex={0} + onKeyDown={(e) => { + if (e.key === 'Enter' || e.key === ' ') + openCompareModal(cambio) + }} + >
{cambio.descripcion}

- {/* BOTÓN PARA VER CAMBIOS */} - + {format(cambio.fecha, 'HH:mm')} diff --git a/src/components/auth/LoginCard.tsx b/src/components/auth/LoginCard.tsx index 0a02dd9..4912a27 100644 --- a/src/components/auth/LoginCard.tsx +++ b/src/components/auth/LoginCard.tsx @@ -9,11 +9,13 @@ export function LoginCard() { return (
- La Salle México +
+ La Salle México +

Iniciar sesión

diff --git a/src/components/ui/button.tsx b/src/components/ui/button.tsx index 6a64f8b..148a6ef 100644 --- a/src/components/ui/button.tsx +++ b/src/components/ui/button.tsx @@ -7,7 +7,7 @@ import type { VariantProps } from 'class-variance-authority' import { cn } from '@/lib/utils' const buttonVariants = cva( - "focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", + "focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:ring-[3px] disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", { variants: { variant: { diff --git a/src/routes/planes/$planId/_detalle/historial.tsx b/src/routes/planes/$planId/_detalle/historial.tsx index c172cff..af05e7c 100644 --- a/src/routes/planes/$planId/_detalle/historial.tsx +++ b/src/routes/planes/$planId/_detalle/historial.tsx @@ -9,7 +9,6 @@ import { User, Loader2, Clock, - Eye, History, Calendar, ChevronLeft, @@ -156,7 +155,16 @@ function RouteComponent() {
- + openCompareModal(event)} + role="button" + tabIndex={0} + onKeyDown={(e) => { + if (e.key === 'Enter' || e.key === ' ') + openCompareModal(event) + }} + >
{/* LÍNEA SUPERIOR: Título a la izquierda --- Usuario, Botón y Fecha a la derecha */} @@ -186,15 +194,6 @@ function RouteComponent() {
- {/* Botón Ver Cambios */} - - {/* Fecha exacta (Solo visible en desktop para no amontonar) */} {format(event.date, 'yyyy-MM-dd HH:mm')} diff --git a/src/routes/planes/$planId/asignaturas/$asignaturaId/route.tsx b/src/routes/planes/$planId/asignaturas/$asignaturaId/route.tsx index 4f34a7e..6b4dbc5 100644 --- a/src/routes/planes/$planId/asignaturas/$asignaturaId/route.tsx +++ b/src/routes/planes/$planId/asignaturas/$asignaturaId/route.tsx @@ -246,7 +246,7 @@ function AsignaturaLayout() { {/* Badge Estático del Tipo (Estilo oscuro sutil) */} {asignaturaApi.tipo} diff --git a/src/routes/planes/_lista.tsx b/src/routes/planes/_lista.tsx index d6d6c81..008314c 100644 --- a/src/routes/planes/_lista.tsx +++ b/src/routes/planes/_lista.tsx @@ -194,9 +194,7 @@ function RouteComponent() { variant="secondary" onClick={resetFilters} disabled={isClearDisabled} - className={`shadow-md ${ - isClearDisabled ? 'cursor-not-allowed opacity-50' : '' - }`} + className={`shadow-md`} > Limpiar diff --git a/src/styles.css b/src/styles.css index 7111ab4..83e2997 100644 --- a/src/styles.css +++ b/src/styles.css @@ -346,3 +346,15 @@ body { .login-bg { background-image: url('/fondo_login.png'); } + +@layer base { + button:not(:disabled), + [role='button']:not(:disabled) { + cursor: pointer; + } + + button:disabled, + [role='button']:disabled { + cursor: not-allowed !important; + } +}