Structure LESS pour BoL
Ce dossier contient tous les fichiers LESS qui sont compilés en CSS pour le système BoL.
Structure des fichiers
styles/
├── bol.less # Fichier principal (importe tous les autres)
├── global/ # Styles globaux
│ ├── typography.less # Fonts et styles de texte
│ ├── foundry-overrides.less # Overrides Foundry VTT
│ ├── flex.less # Utilitaires Flexbox
│ ├── forms.less # Styles de formulaires
│ ├── item-list.less # Listes d'items
│ ├── colors.less # Couleurs pré-définies
│ └── chat.less # Messages de chat
└── components/ # Composants spécifiques
├── common.less # Styles communs aux sheets
├── actor.less # Feuilles d'acteurs
└── item.less # Feuilles d'items
Compilation
Commande unique
npm run css
Mode watch (recompile automatiquement)
gulp
ou
npm start
Modification des styles
- NE PAS modifier directement
css/bol.css - Modifier les fichiers
.lessappropriés dansstyles/ - Compiler avec
npm run css - Le fichier
css/bol.csssera régénéré automatiquement
Organisation
Global (styles/global/)
- typography.less : Définition des @font-face et styles de texte de base
- foundry-overrides.less : Overrides des styles Foundry (pause, scrollbar, etc.)
- flex.less : Classes utilitaires flexbox (.flexrow, .flexcol, etc.)
- forms.less : Tous les styles de formulaires (inputs, selects, labels, etc.)
- item-list.less : Styles des listes d'items (.items-list)
- colors.less : Classes de couleurs pré-définies (.red, .bg-red, etc.)
- chat.less : Styles des messages de chat et résultats de dés
Components (styles/components/)
-
common.less : Styles communs à toutes les sheets (.bol.sheet)
- Window header/content
- Sheet header avec banner
- Tabs
- Sheet body
-
actor.less : Styles spécifiques aux feuilles d'acteurs
- Dimensions et layout
- Images d'attributs (vigor, agility, etc.)
- Footer
- Stats, resources
- HUD et tooltips
-
item.less : Styles spécifiques aux feuilles d'items
- Dimensions
- Properties list
- Dialog
Avantages de LESS
- Variables : Réutilisables dans tout le code
- Nesting : Code plus lisible et maintenable
- Mixins : Réutilisation de blocs de styles
- Imports : Organisation modulaire
- Opérations : Calculs CSS (calc() amélioré)
Exemple d'utilisation
Avant (CSS)
.bol.sheet.actor .window-content form .sidebar .profile-img {
cursor: pointer;
border: none;
}
Après (LESS)
.bol.sheet.actor {
.window-content {
form {
.sidebar {
.profile-img {
cursor: pointer;
border: none;
}
}
}
}
}
Notes importantes
- La compilation LESS → CSS se fait automatiquement avec gulp
- Le fichier
css/bol.cssest généré et ne doit pas être modifié manuellement - Tous les imports sont dans
styles/bol.less - Les chemins des images/fonts sont relatifs au fichier CSS final dans
css/