
## Définition des couleurs de l'UI

### Thèmes vuetify

> Voir ici: https://next.vuetifyjs.com/en/features/theme/

### Configuration et utilisation

Les couleurs du ou des thèmes sont enregistrées dans `plugins/vuetify.ts`

| Nom            | Usage                                                                                                                                         |
|----------------|-----------------------------------------------------------------------------------------------------------------------------------------------|
| background     | Fond par défaut des contenus                                                                                                                  |
| surface        | Fond des components                                                                                                                           |
| primary        | Couleur principale, utilisée pour le header, les boutons submit, les notifications, les liens de type actions dans les menus, les liens, etc. |
| primary-alt    | Une variante atténuée de la couleur principale, utilisée par exemple pour mettre en surbrillance des éléments au survol                       |
| secondary      | Couleur secondaire, utilisée pour le menu lateral, le bouton accès aide et pour le fond d'écran de la page de login                           |
| secondary-alt  | Variante de la couleur secondary, utilisée entre autres pour le fond des liens du menu lateral au survol                                      |
| neutral-strong | Couleur de fond de certains boutons comme les boutons Annuler, et fond de certains encarts                                                    |
| neutral        | Couleur de fond du subheader, des en-têtes des accordéons, du calendrier, des datatables, des boutons d'action                                |
| neutral-soft   | Couleur du fond des pages, fond des notifications non lues...                                                                                 |
| danger         | Fond des bandeaux et panneaux d'alerte signifiant un risque, couleur du texte de certains contenus décrivant un statut                        |
| success        | Fond des bandeaux et panneaux d'alerte signifiant un succès, couleur du texte de certains contenus décrivant un statut                        |
| warning        | Fond des bandeaux et panneaux d'alerte servant d'avertissement                                                                                |
| info           | Fond des bandeaux et panneaux informatifs                                                                                                     |

Pour chacune de ces couleurs, on définit une ou plusieurs couleurs complémentaires, comme les couleurs `on-[color]` (voir plus bas)

On trouvera aussi des couleurs en `x-[color]`: ce sont des couleurs particulières appliquées à un élément précis. Ces 
couleurs sont appelées à disparaitre à terme.

### Règles de nommage

On construit le nom d'une variable de couleur de la manière suivante :

`([prefix]-)[name](--[suffix])`

Si la partie 'name' comprend plusieurs mots, on les sépare, eux aussi, par des tirets `-`


##### Préfixe (optionnel)

Pour chaque couleur du thème, on définira des couleurs nommées `on-[color]` qui correspondent au "négatif" de la couleur,
et qui permet de rendre du contenu visible sur un fond de la couleur `color`.


##### Suffixe (optionnel)

Un éventuel suffixe pourra aussi permettre de définir des variantes applicable à certains éléments.

Par exemple, une couleur `on-color--clickable` sera une variante de la couleur `on-color` applicable aux éléments 
cliquables, comme les liens.


### Thèmes SCSS

Pour chaque couleur du thème, on a défini des classes css `theme-[color]` qui appliqueront les règles à la fois sur 
au fond de l'élément et à son contenu.

Ces classes sont définies dans le fichier `assets/css/theme.scss`

> Dans la majorité des cas, appliquer la classe vuetify `bg-[color]` aura le même effet que d'appliquer la classe 
`theme-[color]`. Mais il peut arriver que certains thèmes définis dans cette application implémentent des règles 
spéciales pour certains éléments, comme la couleur des liens d'un thème par exemple. 
C'est pourquoi il vaut mieux utiliser les classes `theme-[color]`.






