- Agrega botón "📤 Compartir" en el modal de QR
- Implementa navigator.share() con fallback a clipboard
- Incluye estilos con gradiente rosa para el botón
- Mejora la experiencia de usuario para compartir links
Corrige los proxies de /api y /ws para apuntar al servidor Colyseus
en puerto 2567 en lugar del puerto 3000. Esto resuelve el problema
de que las APIs del admin devolvían HTML en lugar de JSON.
Aplica el mismo patrón que funciona en UuidSelector: intenta
uuids-with-names con fallback a uuids, y mapea correctamente
los datos para extraer solo los UUIDs.
- Click derecho en UUIDs muestra menú contextual con opción de imprimir QR
- Modal de vista previa con diseño portrait optimizado para móviles
- Generación de QR codes que redirigen a la URL específica del UUID
- Funcionalidad de impresión directa con estilos embebidos
- Descarga como PNG de alta resolución con todos los estilos preservados
- Diseño de tarjeta con gradiente, información del jugador e instrucciones
- Librerías: qrcode para generación QR, html2canvas para captura PNG
- Dashboard: agregar opciones de 50 pestañas deterministas (lotes 1-4)
- Dashboard: botón para cerrar salas individuales y expulsar jugadores
- Dashboard: selector de variante G por sala individual en tabla
- Nuevo selector moderno de UUID en página principal
- Mostrar nombres de jugadores en selector de UUID
- Búsqueda por UUID o nombre de jugador
- Redireccionar /missing-uuid a selector principal
- Endpoints para obtener UUIDs con nombres y cerrar/cambiar variante de salas
- Agregados botones de control global: pausar, reanudar, reiniciar, cambiar variante, enviar al lobby
- Implementados endpoints API para operaciones masivas en todas las game rooms
- Agregado método executeAdminCommand en GameRoom para manejo unificado de comandos admin
- Mejorado manejo de desconexión automática al lobby cuando admin cierra rooms
- Interfaz responsiva con confirmaciones de usuario y estados de carga
- Sistema robusto de limpieza de rooms con fallback de forzado
- Agregado UUID persistente en base de datos local (LokiJS)
- Nombres únicos por UUID en lugar de sessionId
- Nombres persisten entre reconexiones mientras el servidor esté activo
- Migración automática de perfiles existentes
- Registrados handlers para evitar warnings de mensajes no encontrados
- Implementación de Server-Sent Events (SSE) para actualizaciones en tiempo real
- Nuevo componente RoomsTable para vista de águila con animaciones de tokens
- Componente RoomCard extraído para reutilización
- Modal para ver detalles de rooms
- SystemMessageDisplay usando AnimatedNumber creativamente
- Indicador de conexión SSE con fallback a polling
- Colores dinámicos de texto basados en brillo del fondo
- Backend: broadcast de actualizaciones del dashboard
- Backend: mensajes del sistema (excepto cambios de ronda) visibles en dashboard
- Configuración de Vite para acceso desde red local