Aggiunge il flag `timeout` nello stato e l'action `toggleTimeout`: dal
controller il pulsante Time Out commuta la modalità e il display copre il
tabellone con i video .mp4 della cartella `spot/` (non versionata).
- un solo video → loop; più video → sequenza alfabetica con ritorno al primo;
cartella vuota/assente → overlay "TIME OUT".
- `src/spot-utils.js` (listSpotVideos) elenca i .mp4; endpoint `/spot/list`
+ file statici `/spot/<file>.mp4` serviti sia in prod (server.js) sia in
dev (vite-plugin-websocket.js).
- il display avvia i video con audio e ripiega su muto se il browser blocca
l'autoplay con suono.
- il controller resta operativo ma evidenzia la modalità con banner e
pulsante arancione pulsante, in entrambi i layout (mobile ed esteso).
- Rimuove script preview e start (duplicati di serve)
- Rimuove dipendenza concurrently (mai usata)
- Aggiunge persistenza stato al plugin dev WebSocket
Unifica i due server Express (display :3000, controller :3001) in un
unico processo su PORT (default 3000). Le route /display e /controller
servono rispettivamente index.html e controller.html.
In sviluppo elimina il server proxy su :3001; il plugin Vite riscrive
/display → / e /controller → /controller.html internamente.
printServerInfo aggiornata alla firma a porta singola.
Usa fallback a 127.0.0.1 quando l'hostname è localhost/::1 nei client websocket display/controller.
Instrada il proxy del controller dev verso Vite tramite DEV_PROXY_HOST (default 127.0.0.1).
Mostra gli URL locali del server con 127.0.0.1 per una diagnostica coerente su Raspberry/Linux.
- Creati entry point separati per il Display (porta 5173) e il Controller (porta 3001).
- Aggiunti controller.html e src/controller-main.js per l'app di controllo remoto.
- Semplificato src/main.js per montare direttamente DisplayPage, rimuovendo vue-router.
- Implementato un server di sviluppo proxy per il controller in vite-plugin-websocket.js.
- Aggiornato server.js per gestire due istanze Express (display e controller) in produzione.
- Aggiornata la configurazione di Vite per il supporto alla build multi-pagina
Introduce script di sviluppo concorrenti (frontend + server) con concurrently.
Aggiorna dipendenze lockfile e rimuove dipendenze non più necessarie.
Aggiunge configurazione server/proxy Vite e include plugin WebSocket dedicato.