# Composants Gmail — arborescence Point d’entrée publics (re-exports à la racine) : | Fichier racine | Module réel | |----------------|-------------| | `email-list.tsx` | `email-list/` | | `sidebar.tsx` | `sidebar/` | | `compose-modal.tsx` | `compose/` | | `compose-toolbar.tsx` | `compose/` | | `email-view.tsx` | `email-view/` + lecture | ## Dossiers par fonctionnalité ``` components/gmail/ ├── compose/ # Rédaction (fenêtre, manager, toolbar, destinataires) ├── email-list/ # Liste des messages │ ├── hooks/ # data, labels, selection, reading │ ├── attachments/ │ └── … ├── email-view/ # Lecture d’un message ├── mail-search/ # Recherche avancée (desktop + mobile) ├── sidebar/ # Navigation latérale ├── contacts/ # Carnet d’adresses ├── quick-settings/ # Réglages rapides └── *.tsx # Chrome global (header, search bar, swipe, …) ``` ## email-list/ - `email-list.tsx` — orchestration (hooks → layout) - `hooks/use-email-list-data.ts` — filtrage, pagination, pull-refresh - `hooks/use-email-list-labels.ts` — libellés / déplacer - `hooks/use-email-list-selection.ts` — sélection, actions bulk - `hooks/use-email-list-reading.ts` — vue message, navigation clavier - `email-list-layout.tsx` — structure split / toolbars - `email-list-body.tsx` — zone scroll + lignes - `email-list-toolbar.tsx` — barre d’outils - `email-list-row.tsx` — une ligne ## sidebar/ - `sidebar.tsx` — shell `