### Objet Analyse synthétique de `ihm_client` (iframe chargée par `lecoffre-front`). ### Stack et build - **Outil**: Vite - **Langage**: TypeScript + HTML templates - **Cible**: `index.html` + `src/main.ts` (SPA montée en iframe) - **Serveur dev**: `nginx.dev.conf` et script `start-dev.sh` ### Arborescence notable - `src/components`: header, modales (confirmation/creation/waiting), login-modal, qrcode-scanner - `src/pages`: home, chat, account, process, signature (+ variantes) - `src/services`: database, storage, token, modal, service générique - `src/utils`: documents, HTML helpers, notifications store, subscriptions utils - `src/websockets.ts`: temps-réel côté iframe ### Intégrations et communication - **Token/Session**: `src/services/token.ts` - **Stockage**: `src/services/storage.service.ts` - **Base de données**: `src/services/database.service.ts` (cache/worker) - **Workers**: `service-workers/` (cache/database) - **Échanges avec parent**: via postMessage (cf. utils/services) et WebSockets ### Points d’attention - Sécurité iframe (sandbox, `postMessage` sécurisé par origine) - Gestion des tokens (renouvellement, stockage, effacement) - Cohérence de version avec `lecoffre-front` (API bus/messages) ### Déploiement - **Dockerfile**: fourni - **Nginx**: `nginx.dev.conf` pour dev local