From 6c9ad356b1bc91d06450e8f7e7da3a9d0f563262 Mon Sep 17 00:00:00 2001 From: josedario87 Date: Sun, 19 Oct 2025 01:01:55 -0600 Subject: [PATCH] Fix: Actualizar modal a sintaxis Nuxt UI v4 y aplicar estilos consistentes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Actualizar ModalAsignacionRapida a sintaxis correcta de Nuxt UI v4 - Usar v-model:open en lugar de v-model - Usar slots #body y #footer directamente - Eliminar UCard (deprecado) - Aplicar clases cata-* para mantener consistencia con el resto de la app - Usar cata-text para textos - Usar cata-button para botones - Usar cata-input para inputs - Usar cata-outline-box para bordes - Respetar colores personalizados del usuario mediante variables CSS - selected-category usa var(--cata-primary) - Soporte para modo oscuro con efectos de sombra - Eliminar icono de estrella/rayo del BotonNubeCaustica - Simplificar diseño dejando solo la nube con patrones cáusticos - Eliminar animación sparkle asociada - Integrar modal correctamente en FormularioMuestra - Mover botón dentro del slot por defecto del modal - Eliminar modal duplicado del template --- .../app/components/cata/BotonNubeCaustica.vue | 27 ---- .../app/components/cata/FormularioMuestra.vue | 17 +-- .../components/cata/ModalAsignacionRapida.vue | 138 ++++++++++-------- 3 files changed, 84 insertions(+), 98 deletions(-) diff --git a/nuxt4/app/components/cata/BotonNubeCaustica.vue b/nuxt4/app/components/cata/BotonNubeCaustica.vue index e422fb4..8fa7b52 100644 --- a/nuxt4/app/components/cata/BotonNubeCaustica.vue +++ b/nuxt4/app/components/cata/BotonNubeCaustica.vue @@ -112,16 +112,6 @@ fill="url(#caustic-pattern)" class="caustic-layer" /> - - - - - @@ -192,23 +182,6 @@ defineEmits<{ } } -/* Animación del icono */ -.icono-rayo { - animation: sparkle 2s ease-in-out infinite; - transform-origin: center; -} - -@keyframes sparkle { - 0%, 100% { - opacity: 0.8; - transform: scale(1) rotate(0deg); - } - 50% { - opacity: 1; - transform: scale(1.1) rotate(5deg); - } -} - .boton-texto { font-size: 0.625rem; font-weight: 600; diff --git a/nuxt4/app/components/cata/FormularioMuestra.vue b/nuxt4/app/components/cata/FormularioMuestra.vue index 3fe7f06..d2d5a42 100644 --- a/nuxt4/app/components/cata/FormularioMuestra.vue +++ b/nuxt4/app/components/cata/FormularioMuestra.vue @@ -70,9 +70,15 @@
- +
- + + +
@@ -806,13 +812,6 @@
- - - diff --git a/nuxt4/app/components/cata/ModalAsignacionRapida.vue b/nuxt4/app/components/cata/ModalAsignacionRapida.vue index ef76efe..a281017 100644 --- a/nuxt4/app/components/cata/ModalAsignacionRapida.vue +++ b/nuxt4/app/components/cata/ModalAsignacionRapida.vue @@ -1,40 +1,36 @@ @@ -134,13 +136,13 @@ const emit = defineEmits<{ // Categorías disponibles const categoriasDisponibles = [ - { key: 'fragancia', label: 'Fragancia', icon: 'i-lucide-wind', color: '#8B7AB8' }, - { key: 'aroma', label: 'Aroma', icon: 'i-lucide-nose', color: '#26A69A' }, - { key: 'sabor', label: 'Sabor', icon: 'i-lucide-ice-cream-cone', color: '#E53935' }, + { key: 'fragancia', label: 'Fragancia', icon: 'i-lucide-flower-2', color: '#8B7AB8' }, + { key: 'aroma', label: 'Aroma', icon: 'i-lucide-wind', color: '#26A69A' }, + { key: 'sabor', label: 'Sabor', icon: 'i-lucide-candy', color: '#E53935' }, { key: 'saborResidual', label: 'Sabor Residual', icon: 'i-lucide-timer', color: '#F57C00' }, - { key: 'acidez', label: 'Acidez', icon: 'i-lucide-zap', color: '#FDD835' }, - { key: 'dulzor', label: 'Dulzor', icon: 'i-lucide-candy', color: '#EC407A' }, - { key: 'sensacionBoca', label: 'Sensación en Boca', icon: 'i-lucide-smile', color: '#1E88E5' }, + { key: 'acidez', label: 'Acidez', icon: 'i-lucide-citrus', color: '#FDD835' }, + { key: 'dulzor', label: 'Dulzor', icon: 'i-lucide-cookie', color: '#EC407A' }, + { key: 'sensacionBoca', label: 'Sensación en Boca', icon: 'i-lucide-droplets', color: '#1E88E5' }, { key: 'impresionGlobal', label: 'Impresión Global', icon: 'i-lucide-star', color: '#00ACC1' }, ] @@ -245,3 +247,15 @@ const cerrar = () => { }, 300) } + +