- Cambia
- 14 de octubre de 2026 a las 1:17 UTC
- Autor
- Kamo
- Comprometerse
- c26c442
- Nav herramienta 'cameras' (app + VIEW CAMERAS): diseños guardados, grupos (cada uno que se expande a sus cámaras), cámaras no agrupadas con un punto de estado, Visor abierto, Gestionar cámaras para cualquier administración derecha; vivir a través de useOrgChanges('cameras'); una carga fallida es una fila de retry, nunca 'no cámaras'; estado vacío explica que un administrador elige quién puede ver. hasAnySettingsRight += ¿Qué? cámaras de lanzamiento de aplicación fija - cámaras de confianza. - Ventana de herramientas 'cámaras' (max 6, 1000x690): muro WebRTC sobre señalización no traída de ida y vuelta; grids auto/1/2x2/3x3/4x4/1+5/1+7; sub stream in the grid, main for an expanded tile or the only azulejo de una ventana maximizada; sólo se escucha la ficha seleccionada (MUTED/UNMUTED/AUTO=focused); autoplay apagado con un retroceso de clic por sonido; reconexión exponencial capped; ninguna sesión para una minimizada, cubierta o larga ventana oculta, una baldosa cubierta, un sitio sin conexión o una cámara apagada; sitio web se reanudará en tiempo real; añadir/remove/drag-swap, Guardar el diseño (actualizar / guardar como nuevo) y borrar; las ventanas de grupo siguen a su grupo; las props son la vista (herramienta:patchProps) y el título sigue. - Máximas cámaras de navegación: CameraSwitcherColumn (capadas / grupos / cámaras, fila activa por sessionGuid, + abre un nuevo visor maximizado), roscado a través de la tienda de ancho, panel, tira de pestañas, Dock y pruebas. - Decisiones puras en app/lib/cameraViewer.ts con pruebas; ciclo de vida de secuencia probado bajo jsdom.
